/* Homeowner and contractor presentation. Scoped away from Ignite and Manage. */
:where(.client-site,.contractor-site){--site-accent:#8b6243;--site-deep:#183c33;--site-surface:#f8f7f3;--site-text:#233a33;--site-muted:#586760;color:var(--site-text);background:var(--site-surface);font-size:1rem;line-height:1.65}
:where(.client-site,.contractor-site) :is(p,li){font-size:1rem}
:where(.client-site,.contractor-site) :is(h1,h2,h3){font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em;line-height:1.12}
:where(.client-site,.contractor-site) :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--site-accent);outline-offset:4px}
:where(.client-site,.contractor-site) .topbar{min-height:100px;height:auto;padding:20px clamp(24px,5vw,80px);gap:24px;background:var(--site-surface);flex-wrap:nowrap;border-bottom:1px solid #dce1d9}
:where(.client-site,.contractor-site) .brand{gap:12px;flex-shrink:0}.client-site .brand-icon,.contractor-site .brand-icon{width:46px;height:46px}
:where(.client-site,.contractor-site) .brand-name{font-size:14px;letter-spacing:.13em}
:where(.client-site,.contractor-site) .brand-name small{font-size:8px;letter-spacing:.12em;line-height:1.4;max-width:190px;color:var(--site-muted)}
:where(.client-site,.contractor-site) .topbar nav{gap:24px;font-size:.875rem;flex-wrap:nowrap}
:where(.client-site,.contractor-site) .topbar nav>a{min-height:46px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
:where(.client-site,.contractor-site) .topbar nav>a[aria-current=page]:not(.nav-cta){text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--site-accent)}
:where(.client-site,.contractor-site) .topbar .nav-cta{border-radius:6px;padding:12px 19px;background:var(--site-deep);color:white;gap:12px}
:where(.client-site,.contractor-site) .client-login{border:1px solid #adbab0;border-radius:6px;padding:10px 17px}
:where(.client-site,.contractor-site) .menu-button{min-height:46px;border-radius:5px;font-size:.875rem}
.site-wrap{width:min(1260px,calc(100% - 96px));margin-inline:auto}
.client-hero{display:grid;grid-template-columns:1.06fr 1fr;gap:5%;align-items:center;padding-block:74px 66px}
.client-kicker{font-size:.7rem!important;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--site-accent);margin:0 0 22px}
.client-hero h1{font-size:clamp(42px,4.8vw,72px);margin:0 0 24px;max-width:650px;font-weight:700;line-height:1.06}
.client-hero h1 em{font-style:normal;color:var(--site-accent)}
.client-hero .client-lead{font-size:1.12rem;max-width:510px;color:var(--site-muted);margin:0 0 26px;line-height:1.75}
.client-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-block:26px 22px}
.client-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--site-deep);color:white;min-height:52px;padding:12px 22px;border:1px solid var(--site-deep);border-radius:6px;font-size:.875rem;font-weight:700}
.client-button.secondary{color:var(--site-text);background:transparent;border-color:#a4b4a7}
.client-button:hover{background:#2e5146;color:white}.client-button.secondary:hover{background:#e9eee5;color:var(--site-text)}
.client-location{font-size:.8rem!important;color:var(--site-muted);margin-top:24px}
.project-figure{margin:0;position:relative;min-width:0}.project-figure img{display:block;width:100%;height:auto}.project-figure figcaption{font-size:.7rem;text-align:end;color:var(--site-muted);margin-top:9px}
.project-stamp{position:absolute;inset:20px auto auto 22px;font-size:.65rem;letter-spacing:.14em;color:#405c50;font-weight:700}
.client-benefits{border-block:1px solid #d9dfd5;display:grid;grid-template-columns:repeat(3,1fr);padding-block:24px;gap:28px}
.client-benefits div{display:flex;gap:14px;align-items:center}.client-benefits span{color:var(--site-accent);font-size:.75rem;font-weight:700}.client-benefits p{margin:0;font-size:.875rem}.client-benefits small{display:block;color:var(--site-muted);font-size:.8rem}
.client-section{padding-block:88px}.client-section h2{font-size:clamp(30px,3.4vw,46px);margin:0 0 20px;max-width:740px}.client-section .section-copy{max-width:650px;color:var(--site-muted);margin-bottom:36px}
.client-section{scroll-margin-top:120px}
.client-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:start}.client-split p{color:var(--site-muted)}
.project-documents{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}
.project-document{background:white;border:1px solid #d9dfd5;border-radius:8px;padding:26px;min-width:0}.project-document h3{font-size:1.25rem;margin:26px 0 12px}.project-document p{font-size:.95rem;color:var(--site-muted);margin-bottom:0}.document-drawing{height:144px;background:#eef1eb;padding:22px;border-radius:4px;overflow:hidden;position:relative}
.document-drawing svg{height:100%;width:100%;stroke:#456757;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.doc-number{font-size:.7rem;font-weight:700;color:var(--site-accent);letter-spacing:.14em;margin-top:22px;display:block}
.client-story{background:#e9ede5}.client-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.client-photo{width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:8px;display:block}.client-list{padding:0;list-style:none}.client-list li{padding:16px 0;border-bottom:1px solid #cbd4c8;display:flex;gap:14px}.client-list b{color:var(--site-accent);font-size:.75rem;padding-top:3px}.client-list span{display:block}.client-list small{display:block;color:var(--site-muted);font-size:.9rem;margin-top:4px}
.client-process{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px}.client-process article{padding-top:22px;border-top:2px solid #b8c6b5}.client-process .step{color:var(--site-accent);font-size:.8rem}.client-process h3{font-size:1.2rem;margin:20px 0 12px}.client-process p{font-size:.95rem;color:var(--site-muted)}
.client-banner{padding:46px 50px;background:var(--site-deep);color:white;border-radius:10px;display:flex;justify-content:space-between;gap:35px;align-items:center;margin-block:0 80px}.client-banner h2{font-size:clamp(28px,3vw,40px);margin:0 0 12px}.client-banner p{margin:0;color:#d2dfd2;max-width:700px}.client-banner .client-button{background:#f6f3eb;color:var(--site-deep);flex-shrink:0}
:where(.client-site,.contractor-site) footer{background:#e9ede5;color:var(--site-text);padding:46px clamp(24px,5vw,80px);align-items:start;gap:30px;border-top:1px solid #d6dfd2}
:where(.client-site,.contractor-site) footer p{font-size:.8rem;color:var(--site-muted);max-width:400px;margin:10px 0}
:where(.client-site,.contractor-site) footer .footer-links{display:flex;gap:24px;flex-wrap:wrap;max-width:540px}
:where(.client-site,.contractor-site) footer .footer-links a{font-size:.85rem;min-height:40px;display:flex;align-items:center;color:var(--site-text)}
:where(.client-site,.contractor-site) footer .footer-admin{flex-basis:100%;border-top:1px solid #cbd4c8;padding-top:16px;display:flex;gap:18px;flex-wrap:wrap}
:where(.client-site,.contractor-site) footer .footer-admin a{font-size:.75rem;color:var(--site-muted);padding:6px 0}
:where(.client-site,.contractor-site) :is(.inner-hero,.page-section,.contact-layout){scroll-margin-top:115px}
.client-site .inner-hero{background:#e7ece3;color:var(--site-text);min-height:340px}.client-site .inner-hero h1{font-size:clamp(38px,5vw,64px);line-height:1.08}.client-site .inner-hero h1 em{color:var(--site-accent)}.client-site .inner-hero>p:not(.eyebrow){color:var(--site-muted);font-size:1.05rem}.client-site .inner-hero .eyebrow{color:var(--site-accent)}
.client-site .button-orange,.contractor-site .button-orange{background:var(--site-deep);color:white;border-radius:5px;font-size:.9rem;min-height:50px}
.client-site :is(.page-section,.page-cta,.inner-page) p{font-size:1rem;line-height:1.8}.client-site :is(.page-section,.page-cta) li{font-size:.95rem;line-height:1.8}.client-site :is(.service-grid,.service-detail) h3{font-size:1.3rem}.client-site :is(.service-grid,.service-detail) a{font-size:.9rem}.client-site .page-cta{background:var(--site-deep)}
:where(.client-site,.contractor-site) .enquiry-form label{font-size:.95rem}.client-site .contact-intro p,.contractor-site .contact-intro p{font-size:1rem;line-height:1.8}.enquiry-form :is(input,select,textarea){font-size:1rem;min-height:48px}.client-site .assistant-messages p,.contractor-site .assistant-messages p{font-size:.9rem}.client-site .assistant-note,.contractor-site .assistant-note{font-size:.8rem}
.contractor-site{--site-accent:#9a663c;--site-deep:#233944}.trade-hero{display:grid;grid-template-columns:1fr 1fr;min-height:600px;background:#e8e9e4}.trade-copy{padding:80px clamp(24px,6vw,90px);align-self:center}.trade-copy h1{font-size:clamp(42px,5vw,68px);margin:0 0 28px}.trade-copy p{max-width:560px;color:var(--site-muted)}.trade-photo{width:100%;height:100%;object-fit:cover;min-height:500px}.trade-flow{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #d5dbd1;border-radius:8px;overflow:hidden;margin-top:35px}.trade-flow div{padding:28px;background:#f0f1eb}.trade-flow div:not(:last-child){border-inline-end:1px solid #d5dbd1}.trade-flow span{display:block;color:var(--site-accent);font-size:.8rem}.trade-flow strong{display:block;margin-top:16px}.trade-flow small{display:block;margin-top:8px;color:var(--site-muted)}
@media(max-width:1180px){:where(.client-site,.contractor-site) .topbar nav{gap:14px;font-size:.8rem}:where(.client-site,.contractor-site) .topbar{padding-inline:28px;gap:14px}.site-wrap{width:calc(100% - 64px)}}
@media(min-width:921px){:where(.client-site,.contractor-site) .menu-button{display:none}}
@media(max-width:920px){:where(.client-site,.contractor-site) .topbar{min-height:86px;padding:17px 24px;flex-wrap:wrap}:where(.client-site,.contractor-site) .menu-button{display:block;margin-inline-start:auto}:where(.client-site,.contractor-site) .topbar nav{display:none;position:static;width:100%;padding:10px 0 0;background:var(--site-surface);border:0;flex-direction:column;align-items:stretch;font-size:.95rem}:where(.client-site,.contractor-site) .topbar nav.open{display:flex}.client-hero{grid-template-columns:1fr 1fr;gap:25px}.client-hero h1{font-size:44px}.project-documents{gap:14px}.project-document{padding:20px}.client-process{grid-template-columns:1fr 1fr}.trade-copy{padding:50px 28px}}
@media(max-width:700px){.site-wrap{width:calc(100% - 40px)}.client-hero{grid-template-columns:1fr;padding-block:42px 34px;gap:32px}.client-hero h1{font-size:clamp(40px,10vw,58px)}.client-hero .client-lead{font-size:1.05rem}.client-kicker{font-size:.65rem!important}.client-benefits{grid-template-columns:1fr;gap:18px;padding-block:22px}.client-section{padding-block:56px}.client-split,.client-story-grid{grid-template-columns:1fr;gap:30px}.project-documents{grid-template-columns:1fr;margin-top:28px}.project-document{display:grid;grid-template-columns:110px 1fr;column-gap:20px}.document-drawing{grid-row:1/4;height:135px;padding:15px}.doc-number{margin-top:0}.project-document h3{margin:8px 0 0}.project-document p{grid-column:1/-1;margin-top:16px}.client-banner{flex-direction:column;align-items:start;padding:30px 26px;margin-bottom:50px}.client-list li{padding-block:14px}.client-photo{aspect-ratio:1.4}.client-process{gap:20px}.client-process h3{font-size:1.1rem}.client-process p{font-size:.875rem}.trade-hero{grid-template-columns:1fr}.trade-photo{min-height:280px;max-height:360px}.trade-copy{padding:48px 24px}.trade-flow{grid-template-columns:1fr 1fr}.trade-flow div{padding:20px}.trade-flow div:nth-child(2){border-inline-end:0}.trade-flow div:nth-child(-n+2){border-bottom:1px solid #d5dbd1}.project-stamp{font-size:.55rem;inset-block-start:14px;inset-inline-start:15px}}
@media(prefers-reduced-motion:reduce){:where(.client-site,.contractor-site){scroll-behavior:auto}:where(.client-site,.contractor-site) a{transition:none}}
@media(max-width:920px){html:not(.site-enhanced) :is(.client-site,.contractor-site) .topbar nav{display:flex}html:not(.site-enhanced) :is(.client-site,.contractor-site) .menu-button{display:none}}
