:root{--accent:#3e634d;--soft:#edf2e8;--ink:#20332a;--paper:#fbfaf7;--line:color-mix(in srgb, var(--ink) 16%, transparent);--font:Georgia, serif;--display:Georgia, serif;}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);line-height:1.6}a{color:inherit}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.site-header{min-height:78px;display:flex;align-items:center;gap:26px;padding:16px clamp(18px,5vw,72px);border-bottom:1px solid var(--line);position:relative;background:color-mix(in srgb,var(--paper) 92%, transparent);z-index:2}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;margin-right:auto}.brand-mark{width:42px;height:42px;flex:none}.brand strong,.brand small{display:block}.brand strong{font-size:1.05rem;letter-spacing:-.02em}.brand small{font-size:.63rem;letter-spacing:.08em;text-transform:uppercase;opacity:.68}.primary-nav{display:flex;gap:21px;align-items:center}.nav-link{text-decoration:none;font-size:.8rem;font-weight:700;letter-spacing:.03em;position:relative}.nav-link::after{content:"";display:block;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .2s}.nav-link:hover::after,.nav-link.is-active::after{transform:scaleX(1)}.header-phone{border:1px solid var(--ink);padding:8px 13px;text-decoration:none;font-weight:700;font-size:.78rem;white-space:nowrap}.nav-toggle{display:none;background:transparent;border:1px solid var(--ink);padding:8px 11px}main{overflow:hidden}.hero,.page-hero,.section,.contact-band{max-width:1240px;margin:auto;padding-left:clamp(18px,5vw,72px);padding-right:clamp(18px,5vw,72px)}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(0,1.04fr) minmax(280px,.96fr);align-items:center;gap:clamp(36px,8vw,110px);padding-top:clamp(60px,10vw,130px);padding-bottom:clamp(60px,10vw,130px)}.hero-copy h1,.hero h1,.page-hero h1{font-family:var(--display);font-size:clamp(2.8rem,7vw,6.7rem);line-height:.95;letter-spacing:-.07em;margin:16px 0 26px;max-width:850px}.eyebrow{font-size:.72rem;font-weight:900;letter-spacing:.17em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}.lead{font-size:clamp(1.03rem,1.8vw,1.3rem);max-width:640px;opacity:.8}.hero-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin-top:32px}.button{background:var(--accent);border:1px solid var(--accent);color:#fff;display:inline-block;padding:13px 19px;text-decoration:none;font-weight:900;cursor:pointer;box-shadow:5px 5px 0 color-mix(in srgb,var(--accent) 42%,var(--ink));transition:transform .18s,box-shadow .18s}.button:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 color-mix(in srgb,var(--accent) 42%,var(--ink))}.button-small{padding:8px 12px;font-size:.8rem}.button-light{background:#fff;color:var(--ink);border-color:#fff;box-shadow:none}.text-link,.arrow-link{font-weight:800;text-underline-offset:4px;text-decoration-thickness:2px}.contact-inline{display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:43px;padding-top:15px;font-size:.75rem}.contact-inline span:first-child{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.hero-art{margin:0;position:relative}.hero-art svg{width:100%;max-height:500px;filter:drop-shadow(20px 20px 0 color-mix(in srgb,var(--accent) 20%,transparent))}figcaption{font-size:.72rem;opacity:.6;margin-top:10px}.section{padding-top:clamp(60px,9vw,120px);padding-bottom:clamp(60px,9vw,120px}.service-intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(30px,8vw,110px);border-top:1px solid var(--line)}.section-heading h2,.benefits-section h2,.contact-band h2,.info-callout h2,.split-section h2{font-size:clamp(2rem,4vw,4.1rem);line-height:1;letter-spacing:-.05em;margin:0 0 18px}.section-heading>p:last-child{opacity:.73;max-width:430px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{min-height:270px;border-top:4px solid var(--accent);background:var(--soft);padding:20px;display:flex;flex-direction:column;align-items:flex-start}.service-number,.detail-index,.note-number{color:var(--accent);font-size:.75rem;font-weight:900;letter-spacing:.1em}.service-card h3{font-size:1.35rem;line-height:1.05;margin:45px 0 12px}.service-card p{font-size:.9rem;margin:0 0 18px;opacity:.76}.service-card .arrow-link{margin-top:auto;font-size:.8rem}.benefits-section{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:var(--ink);color:#fff;max-width:none;padding-left:max(18px,calc((100% - 1096px)/2));padding-right:max(18px,calc((100% - 1096px)/2))}.benefit-list{margin:0;padding:0;list-style:none}.benefit-list li{border-bottom:1px solid #ffffff38;padding:15px 0;display:flex;gap:14px}.benefit-list li span{color:var(--accent);font-weight:900}.contact-band{background:var(--accent);color:#fff;max-width:none;display:flex;align-items:center;justify-content:space-between;gap:40px;padding-top:58px;padding-bottom:58px}.contact-band .eyebrow{color:#fff}.contact-band p{max-width:620px;opacity:.86}.page-hero{padding-top:clamp(70px,10vw,145px);padding-bottom:clamp(50px,7vw,100px);border-bottom:1px solid var(--line)}.page-hero h1{max-width:930px}.service-detail-list{max-width:1000px}.detail-row{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:34px 0;border-bottom:1px solid var(--line)}.detail-row h2{font-size:clamp(1.6rem,3vw,2.5rem);margin:0 0 8px;letter-spacing:-.04em}.detail-row p{margin:5px 0;max-width:680px}.muted{font-size:.82rem;opacity:.62}.info-callout{background:var(--soft);max-width:none;padding-left:max(18px,calc((100% - 1096px)/2));padding-right:max(18px,calc((100% - 1096px)/2))}.info-callout h2{max-width:600px}.split-section{display:grid;grid-template-columns:1fr .85fr;gap:clamp(30px,9vw,130px)}.quote-card{padding:35px;background:var(--ink);color:#fff;transform:rotate(1.5deg)}.quote-mark{font-size:4rem;line-height:.5;color:var(--accent)}.quote-card p{font-size:clamp(1.8rem,3vw,3.3rem);line-height:1.05;letter-spacing:-.05em}.quote-card small{opacity:.65}.note-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);padding-top:0;padding-bottom:0}.note-grid article{background:var(--paper);padding:40px 0 70px}.note-grid article+article{padding-left:40px}.note-grid h2{font-size:1.7rem;margin:32px 0 8px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,7vw,90px)}.contact-card{background:var(--ink);color:#fff;padding:34px;align-self:start;position:sticky;top:20px}.contact-card .eyebrow{color:var(--accent)}address{font-style:normal;font-size:1.22rem;margin:22px 0 35px}.big-phone{font-size:1.7rem;font-weight:900;color:#fff;text-decoration-thickness:2px}.contact-form{border:1px solid var(--line);padding:clamp(22px,4vw,48px);display:flex;flex-direction:column;gap:8px}.contact-form h2{font-size:2rem;line-height:1.05;margin:0 0 18px}.contact-form label{font-weight:800;font-size:.85rem;margin-top:10px}.contact-form label span{color:var(--accent)}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);background:var(--paper);padding:12px;margin-bottom:5px;color:var(--ink)}.contact-form textarea{resize:vertical}.checkline{display:flex;gap:10px;align-items:flex-start!important;font-size:.78rem!important;font-weight:400!important}.checkline input{width:auto;margin-top:5px}.form-status{min-height:1.5em;color:var(--accent);font-weight:800}.form-note{margin:0}.legal-copy,.settings-card{max-width:900px}.legal-copy h2{font-size:1.5rem;margin-top:34px}.settings-card{border:1px solid var(--line)}.setting-row{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;padding:24px 0;border-bottom:1px solid var(--line)}.setting-row h2{margin:0;font-size:1.2rem}.setting-row p{margin:4px 0 0;opacity:.7}.setting-row strong{white-space:nowrap;color:var(--accent);font-size:.8rem}.site-footer{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:30px;padding:42px clamp(18px,5vw,72px);border-top:1px solid var(--line);font-size:.8rem}.footer-label{font-weight:900;text-transform:uppercase;letter-spacing:.13em;color:var(--accent);font-size:.66rem}.site-footer p{margin:7px 0}.site-footer a{text-underline-offset:3px}.footer-note{display:flex;flex-direction:column;justify-content:space-between;gap:15px;opacity:.65}.footer-note small{font-size:.72rem}.cookie-panel{position:fixed;bottom:15px;left:15px;right:15px;z-index:5;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 20px;box-shadow:0 10px 30px #0003;font-size:.8rem}.cookie-panel p{margin:3px 0 0;opacity:.75}.cookie-actions{display:flex;align-items:center;gap:16px;white-space:nowrap}.cookie-panel .text-link{color:#fff}.layout-editorial .hero{grid-template-columns:1.2fr .8fr}.layout-editorial .hero-copy h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.08em}.layout-editorial .hero-art{order:-1}.layout-editorial .service-card{background:transparent;border-top:1px solid var(--ink);border-bottom:4px solid var(--accent)}.layout-poster .hero,.layout-performance .hero{display:block;position:relative;background:var(--ink);color:#fff;max-width:none;padding-left:max(18px,calc((100% - 1096px)/2));padding-right:max(18px,calc((100% - 1096px)/2))}.layout-poster .hero h1,.layout-performance .hero h1{max-width:760px}.layout-poster .hero-art,.layout-performance .hero-art{position:absolute;right:8%;bottom:13%;width:35%;max-width:470px}.layout-poster .contact-inline,.layout-performance .contact-inline{border-color:#ffffff36}.poster-index{position:absolute;right:6%;top:10%;font-size:4rem;font-weight:900;color:var(--accent);opacity:.55}.layout-dashboard .hero,.layout-electric .hero{grid-template-columns:1fr .78fr;background:var(--soft);max-width:none;padding-left:max(18px,calc((100% - 1096px)/2));padding-right:max(18px,calc((100% - 1096px)/2))}.status-chip{display:inline-flex;gap:8px;border:1px solid var(--accent);color:var(--accent);padding:6px 9px;font-size:.7rem;font-weight:800;margin-bottom:20px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);display:block;margin-top:5px}.layout-checklist .service-card{background:transparent;border:1px solid var(--line);border-top:6px solid var(--accent)}.layout-checklist .service-card h3{margin-top:25px}.layout-route .hero-art{filter:saturate(.7)}.layout-route .contact-band{background:var(--ink)}.layout-magazine .hero-copy h1{font-family:Georgia,serif;font-weight:400}.layout-magazine .hero-art{order:2}.layout-electric .hero-art svg{filter:drop-shadow(12px 12px 0 #3a9cff44)}@media (max-width:850px){.site-header{flex-wrap:wrap;gap:12px}.nav-toggle{display:block;order:2}.header-phone{order:3;margin-left:auto}.primary-nav{display:none;order:4;width:100%;flex-direction:column;align-items:flex-start;padding:15px 0 4px;border-top:1px solid var(--line)}.primary-nav.is-open{display:flex}.hero,.service-intro,.benefits-section,.split-section,.contact-layout{grid-template-columns:1fr}.hero{min-height:auto;padding-top:70px}.hero-art,.layout-editorial .hero-art,.layout-magazine .hero-art{order:0}.service-grid{grid-template-columns:1fr}.contact-band{display:block}.contact-band .button{margin-top:16px}.site-footer{grid-template-columns:1fr 1fr}.cookie-panel{display:block}.cookie-actions{margin-top:12px;flex-wrap:wrap}.layout-poster .hero-art,.layout-performance .hero-art{position:relative;right:auto;bottom:auto;width:100%;margin-top:50px}.poster-index{position:static;font-size:2rem;margin-bottom:25px}.contact-card{position:static}.note-grid{grid-template-columns:1fr}.note-grid article+article{padding-left:0}}@media (max-width:520px){.header-phone{font-size:.7rem;padding:6px 8px}.site-footer{grid-template-columns:1fr}.hero-copy h1,.hero h1,.page-hero h1{font-size:clamp(2.6rem,15vw,4rem)}.detail-row{grid-template-columns:42px 1fr}.setting-row{display:block}.setting-row strong{display:block;margin-top:10px}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
/* Explicit mobile navigation fallback for narrow viewport previews. */
@media screen and (max-width:850px){.nav-toggle{display:block!important}.primary-nav{display:none!important}.primary-nav.is-open{display:flex!important}.header-phone{margin-left:auto}}

@media screen and (max-width:600px){.site-header{align-items:center}.header-phone{order:5;flex:0 0 100%;width:max-content;margin-left:0;margin-right:auto;margin-top:4px}.brand{max-width:calc(100% - 76px)}.brand small{white-space:nowrap;font-size:.56rem}}
