/* Shared heritage accents and multi-page layouts over the existing design. */
:root{--red:#ba2028;--lime:#ba2028;--gold:#b3934b;--gold-light:#e0c888;--paper:#faf9f6;--ink:#232320;--muted:#66645e;--line:#e3dfd5}
body{background:var(--paper)}
.header{position:relative;height:112px;color:var(--ink);width:min(1320px,calc(100% - 64px));gap:25px}
.brand-logo{width:242px;height:auto;object-fit:contain}.brand{flex-shrink:0}.header nav{gap:25px;font-size:13px}.header nav a:hover,.footer-links a:hover{color:#87691f}.header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--gold)}
.header-call{background:var(--red);color:#fff;border-radius:5px;font-size:13px;padding:14px 18px;white-space:nowrap}.menu-toggle{display:none}
.hero{padding:75px 0;min-height:850px}.hero-inner{gap:64px}.hero:after{background:linear-gradient(90deg,#111814d9,#14191394 62%,#14191387)}
.eyebrow,.about .eyebrow{color:#846623;letter-spacing:.13em;font-size:11px;font-weight:700}.eyebrow:before{content:'';display:inline-block;width:26px;height:2px;background:var(--gold);vertical-align:middle;margin-right:10px}.hero .eyebrow,.quote-section .eyebrow{color:var(--gold-light)}
.button{border-radius:5px}.header-call:hover,.lime:hover,.dark:hover{background:#921921}.trust-strip>span:before,.steps li>span{color:#927125}.experience-badge{background:#252822;border:1px solid var(--gold)}.experience-badge strong{color:var(--gold-light)}
.quote-form{border-radius:8px}.quote-form h2{font-size:30px;line-height:1.2;text-align:center;margin-bottom:12px}.budget-help{font-size:11px;line-height:1.5;color:#eee;margin:-5px 0 17px}.hero .quote-form{background:#1e2521bf;backdrop-filter:blur(16px)}
.card-photo{display:block}.card-photo>span{color:#624b16}.card-body a:hover{color:#87691f}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card-body h3{font-size:24px}.card-photo{height:275px}.card-body{padding:25px}.card-body p{font-size:15px}.card-body a{font-size:13px}.service-card{border-radius:6px;background:#fff}
.more-services{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.more-services a{display:flex;justify-content:space-between;border-block:1px solid var(--line);padding:25px 0;font:600 22px 'Manrope',sans-serif}.more-services a>span:last-child{color:#927125}.more-services a:hover{color:var(--red)}
.about{background:#f0eee7}.about-photo img,.contact-photo img{border-radius:6px}.quote-section{background:#252822}.quote-copy h2 em{color:var(--gold-light)}.steps li{border-top-color:var(--gold)}
.page-hero{padding-block:58px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;border-top:1px solid var(--line)}.page-hero h1{font-size:clamp(42px,4.7vw,65px)}.page-hero .intro{color:var(--muted);font-size:17px;line-height:1.8;margin-bottom:0}.page-hero>img{height:450px;object-fit:cover;border-radius:6px}
.breadcrumbs{font-size:13px;color:var(--muted);padding-block:15px;border-block:1px solid var(--line)}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.detail-grid h2{font-size:27px;line-height:1.3;margin-block:18px}.detail-grid p{font-size:16px;color:var(--muted)}.section-number{color:#846623;font-size:12px;letter-spacing:.1em}
.faq-section{padding-bottom:80px;max-width:850px}.faq-section h2{margin-bottom:30px}.faq-section details{border-top:1px solid var(--line);padding:22px 0}.faq-section summary{font-weight:600;cursor:pointer}.faq-section details p{color:var(--muted);margin:15px 0 0}.faq-section .text-link{display:inline-block;margin-top:20px}
.cta-row{display:flex;align-items:center;justify-content:space-between;gap:40px}.footer-links{display:flex;flex-wrap:wrap;gap:20px;font-size:13px}footer{padding-block:40px 110px}footer .brand-logo{width:210px}.privacy{padding-block:25px}.contact-page{border-top:1px solid var(--line)}
.contact-page .quote-form{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 15px 50px #2528220a;backdrop-filter:none}.contact-page .quote-form :is(.form-intro,.consent,.form-note,.budget-help){color:var(--muted)}.contact-page .form-note a{color:#8e1820}.contact-page .quote-copy>p:not(.eyebrow){color:var(--muted)}.contact-page .contact-detail small{color:var(--muted)}.contact-page .quote-copy h1{font-size:clamp(48px,5vw,70px)}.contact-page .contact-detail a{overflow-wrap:anywhere}
.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.area-grid article{border-top:1px solid var(--gold);padding-top:20px}.area-grid h2{font-size:34px;margin-block:16px}.area-grid p{color:var(--muted);max-width:460px}.area-note{margin-top:50px;padding:25px;background:#f0eee7;color:var(--muted)}
.journal-feature{display:block;background:#f0eee7;border-left:3px solid var(--gold);padding:48px}.journal-feature>span{font-size:11px;letter-spacing:.1em;color:#735921}.journal-feature h2,.journal-feature h3{font-size:clamp(28px,3vw,42px);line-height:1.3;margin:20px 0}.journal-feature p{color:var(--muted)}.journal-feature:hover{background:#eae6db}
.article-page{max-width:850px;padding-block:70px}.article-page h1{font-size:clamp(46px,5vw,70px)}.article-lead{font-size:21px;color:var(--muted)}.article-page>img{height:410px;border-radius:6px;margin-block:35px}.article-page h2{font-size:30px;margin:40px 0 20px}.article-page p,.article-page li{line-height:1.85}.article-page p a{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}.back-link{margin-top:28px}.error-page{min-height:60vh}.error-page p{max-width:600px}.floating-contact a{border-radius:5px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #bb9540;outline-offset:4px}
@media(max-width:1100px){.header nav{gap:16px;font-size:12px}.brand-logo{width:205px}.header{gap:18px;width:calc(100% - 40px)}.hero-inner{gap:35px}.page-hero{gap:35px}.card-body{padding:22px}.service-grid{grid-template-columns:1fr 1fr}.detail-grid{gap:25px}.page-hero>img{height:420px}}
@media(max-width:900px){.header nav{gap:13px}.header-call{font-size:12px;padding:12px}.brand-logo{width:180px}.header nav{font-size:11px}}
@media(max-width:760px){.header{height:90px;flex-wrap:wrap;gap:12px}.brand-logo{width:180px}.header-call{margin-left:auto;padding:11px 13px;font-size:11px}.menu-toggle{display:flex;align-items:center;gap:8px;order:3;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:4px;padding:8px 10px;font-size:12px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);box-shadow:0 12px 18px #0002;border-top:2px solid var(--gold);padding:20px;z-index:20;font-size:15px}.header nav.is-open{display:flex;flex-direction:column;gap:0}.header nav a{padding:12px 0}.hero{padding:45px 0;min-height:0}.hero-inner{gap:35px}.hero .eyebrow{line-height:1.8}.hero:after{background:#142018b8}.hero-form{scroll-margin-top:18px}.service-grid,.more-services,.area-grid{grid-template-columns:1fr}.card-photo{height:290px}.more-services{gap:0}.more-services a{font-size:22px}.page-hero{grid-template-columns:1fr;padding-block:35px;gap:28px}.page-hero h1{font-size:45px}.page-hero>img{height:290px}.page-hero .intro{font-size:16px}.detail-grid{grid-template-columns:1fr;gap:30px}.detail-grid article{border-bottom:1px solid var(--line);padding-bottom:20px}.detail-grid h2{font-size:28px;margin-block:12px}.faq-section{padding-bottom:50px}.cta-row{align-items:flex-start;flex-direction:column;gap:30px}.contact-page{padding-top:35px}.quote-form h2{font-size:29px}.budget-help{font-size:12px}.journal-feature{padding:28px}.article-page{padding-block:40px}.article-page>img{height:270px}.article-lead{font-size:18px}.article-page h2{font-size:27px}.footer-links{gap:15px}footer .brand-logo{width:205px}.floating-contact a{min-height:44px}}
@media(max-width:450px){.header{height:120px;padding-block:16px;align-content:center;justify-content:space-between}.brand-logo{width:184px}.menu-toggle{order:0}.header-call{width:100%;padding:8px 12px;text-align:center}.page-hero h1{font-size:39px}.hero h1{font-size:46px}.hero .eyebrow{font-size:9px}.form-row{grid-template-columns:1fr;gap:0}.hero .quote-form{padding:24px 18px}.contact-detail a{font-size:18px}}
