@font-face{font-family:Road;src:url('/assets/display.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Arial,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3,.display{font-family:Road,'Arial Narrow',Impact,sans-serif;line-height:1.03;font-weight:700}h1{font-size:clamp(48px,6.9vw,106px);letter-spacing:-.045em;max-width:1000px}h2{font-size:clamp(36px,4vw,64px);letter-spacing:-.035em}h3{font-size:28px}p{max-width:70ch}a{color:inherit}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}button{cursor:pointer}img{max-width:100%;display:block}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;position:relative;z-index:20;border-bottom:1px solid var(--line);background:var(--paper)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-size:14px;font-weight:900;letter-spacing:.03em;line-height:1.25}.brand img{width:45px;height:45px}.brand span{max-width:160px}nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:700}nav a{text-decoration:none}nav a:hover{text-decoration:underline;text-underline-offset:6px}.menu{display:none;border:1px solid var(--line);background:none;color:inherit;padding:8px 13px}.btn{display:inline-flex;gap:24px;align-items:center;justify-content:space-between;padding:18px 25px;background:var(--accent);color:#191c18;text-decoration:none;font-weight:800;font-size:14px;border:0;line-height:1.3;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-3px);box-shadow:5px 5px 0 var(--ink)}.btn.alt{background:transparent;color:inherit;border:1px solid currentColor}.eyebrow{font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:800;display:block;margin-bottom:24px}.hero{position:relative;min-height:660px;overflow:hidden;padding:70px 5vw 65px;display:flex;align-items:center}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,13,12,.87),rgba(7,13,12,.20));pointer-events:none}.hero-copy{position:relative;z-index:2;color:white;width:100%}.hero h1 span{display:block;color:var(--accent)}.hero p{font-size:19px;line-height:1.65;max-width:530px;margin:25px 0 30px}.actions{display:flex;gap:14px;flex-wrap:wrap}.hero-note{margin-top:28px!important;font-size:12px!important;letter-spacing:.02em}.stripe{display:flex;justify-content:space-between;gap:20px;padding:22px 5vw;background:var(--accent);color:#181b17;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.wrap{max-width:1400px;margin:auto;padding:100px 5vw}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-head p{max-width:360px;font-size:16px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.service{position:relative;padding:35px 28px 45px;min-height:245px;border:1px solid var(--line);text-decoration:none;transition:background .25s,transform .25s}.service:hover{background:var(--accent);color:#171b19;transform:translateY(-5px);z-index:2}.service small{display:block;font:12px monospace;margin-bottom:35px}.service h3{margin-bottom:18px}.service p{font-size:15px}.service b{position:absolute;right:24px;top:27px;font-size:23px}.story{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:7vw}.story img{width:100%;height:490px;object-fit:cover}.story h2{margin-bottom:28px}.story p+p{margin-top:18px}.story a{margin-top:30px}.label{padding:13px 20px;background:var(--accent);color:#171b19;font:12px monospace}.steps-band{background:var(--ink);color:var(--paper)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.step{border-top:1px solid #ffffff50;padding-top:25px}.step strong{font:60px Road,Impact,sans-serif;color:var(--accent);display:block;margin-bottom:35px}.step p{font-size:15px;margin-top:17px}.areas{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px;margin-top:35px}.areas a{padding:24px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;text-decoration:none;font-size:21px;font-weight:700}.areas a:hover{padding-left:12px;color:var(--accent)}.faq{max-width:950px}.faq h2{margin-bottom:35px}details{border-top:1px solid var(--line);padding:24px 0}summary{cursor:pointer;font-size:19px;font-weight:700;list-style:none;padding-right:36px;position:relative}summary:after{content:'+';position:absolute;right:0;font-size:28px;top:-6px}details[open] summary:after{content:'−'}details p{padding-top:20px;font-size:16px}.contact{background:var(--accent);color:#171b19}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:7vw}.contact h2{margin-bottom:20px}.contact .btn{background:#171b19;color:white;margin:24px 0}.contact-info{border-left:1px solid #171b1940;padding-left:40px;font-size:15px}.contact-info strong{display:block;margin:15px 0 5px}.contact-info a{overflow-wrap:anywhere}footer{padding:45px 5vw 95px;display:flex;flex-wrap:wrap;gap:25px;justify-content:space-between;font-size:12px;border-top:1px solid var(--line)}footer a{margin-right:18px}.mobile-cta{display:none}.crumb{padding:28px 5vw;font-size:12px}.inner-hero{padding:40px 5vw 65px;border-bottom:1px solid var(--line)}.inner-hero h1{font-size:clamp(45px,5.5vw,80px)}.inner-hero p{margin-top:24px;font-size:19px}.article{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:7vw}.article h2{font-size:38px;margin:45px 0 20px}.article h2:first-child{margin-top:0}.article h3{font-size:25px;margin:28px 0 12px}.article p{margin-bottom:20px}.article aside{align-self:start;position:sticky;top:35px;border-top:5px solid var(--accent);padding:27px 0}.article aside a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;text-decoration:none}.article aside .btn{padding:18px}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .65s,transform .65s}.js .reveal.visible{opacity:1;transform:none}.marquee{overflow:hidden;border-bottom:1px solid var(--line);padding:16px 0;font:18px Road,Impact,sans-serif;white-space:nowrap}.marquee span{display:inline-block;min-width:200%;animation:drive 38s linear infinite}.progress{position:fixed;top:0;left:0;height:4px;background:var(--accent);width:0;z-index:100}.hero-copy{animation:enter .8s both}.hero-image{animation:photo 1.6s both}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes photo{from{transform:scale(1.045)}to{transform:scale(1)}}@keyframes drive{to{transform:translateX(-50%)}}
/* Every art direction has its own composition, not only its palette. */
.editorial .hero{margin:25px 3vw 0;min-height:650px}.editorial header{height:105px}.editorial .hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(44px,5.5vw,79px)}.editorial h2{font-family:Georgia,serif;font-weight:400}.editorial .services{grid-template-columns:1fr 1fr}.editorial .service{border-left:0;border-right:0}.editorial .stripe{margin:0 3vw}.dock .hero{min-height:730px}.dock .hero-copy{padding-left:50px;border-left:7px solid var(--accent)}.dock .services{grid-template-columns:1fr 1fr}.dock .service{min-height:170px;display:grid;grid-template-columns:50px 1fr}.dock .service p{grid-column:2}.dock .story{grid-template-columns:1fr 1.2fr}.dock .stripe{transform:rotate(-1deg);margin-top:-10px;position:relative;z-index:3}.route .hero{padding-top:90px;min-height:700px}.route .hero h1{max-width:620px}.route .hero:after{background:linear-gradient(90deg,#101e22ed,transparent)}.route .services{grid-template-columns:repeat(3,1fr);gap:20px}.route .service{border:0;border-top:6px solid var(--accent);background:#e8e7dd}.route .areas{grid-template-columns:repeat(3,1fr)}.workshop .hero{min-height:640px;border-bottom:15px solid var(--accent)}.workshop .hero-copy{max-width:790px}.workshop h1,.workshop h2{text-transform:uppercase}.workshop .services{grid-template-columns:1fr}.workshop .service{display:grid;grid-template-columns:70px 1fr 1fr;align-items:center;gap:25px;min-height:130px;padding:25px}.workshop .service small,.workshop .service h3{margin:0}.workshop .service b{display:none}.sun .hero{text-align:center;min-height:720px}.sun .hero:after{background:#071a12aa}.sun h1{margin:auto;max-width:920px}.sun .hero p{margin:25px auto 30px}.sun .actions{justify-content:center}.sun .services{gap:25px}.sun .service{border:0;border-bottom:3px solid var(--accent)}.sun .story img{border-radius:50% 50% 0 0}.heritage .hero{margin:35px 5vw;min-height:570px;padding:50px}.heritage .hero h1{font-family:Georgia,serif;font-size:clamp(45px,5vw,78px);font-weight:400}.heritage h2{font-family:Georgia,serif;font-weight:400}.heritage .services{grid-template-columns:1fr 1fr;gap:35px}.heritage .service{border:0;border-top:1px solid var(--line);min-height:205px}.heritage .stripe{background:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink)}.coast .hero{min-height:700px;align-items:end}.coast .hero:after{background:linear-gradient(0deg,#091e21eb,transparent)}.coast .hero-copy{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.coast .hero-copy .eyebrow{grid-column:1/-1}.coast .hero-copy h1{grid-row:2/5}.coast .hero p{margin-top:0}.coast .hero-note{grid-column:1/-1}.coast .story{grid-template-columns:1fr 1fr}.coast .areas{grid-template-columns:repeat(3,1fr)}.racing .hero{min-height:680px}.racing h1{text-transform:uppercase;font-style:italic}.racing .stripe{background:repeating-linear-gradient(90deg,#191b19 0 18px,var(--accent) 18px 36px);padding:7px;font-size:0;min-height:14px}.racing .services{gap:12px;grid-template-columns:repeat(2,1fr)}.racing .service{background:#fff;border:none;border-left:5px solid var(--accent);transform:skew(-2deg)}.stone .hero{min-height:680px;align-items:center}.stone h1,.stone h2{font-family:Georgia,serif;font-weight:400}.stone .hero h1{font-size:clamp(44px,5.4vw,82px)}.stone .services{gap:35px;grid-template-columns:repeat(2,1fr)}.stone .service{border:0;padding:30px 0;border-top:2px solid var(--accent)}.stone .story img{aspect-ratio:1;height:auto;border-radius:48% 48% 0 0}.industrial h1,.industrial h2{text-transform:uppercase}.industrial .hero{min-height:730px}.industrial .hero:after{background:linear-gradient(90deg,#121616ed,transparent)}.industrial .hero h1{max-width:800px;font-size:clamp(52px,7.5vw,112px)}.industrial .services{gap:1px;background:var(--line)}.industrial .service{background:var(--paper);border:none}.industrial .service:hover{background:var(--accent)}.industrial .step strong{font-size:100px}.hill .hero{margin:0 4vw;min-height:690px;clip-path:polygon(0 0,100% 0,100% 90%,0 100%)}.hill .stripe{margin-top:0;background:none;color:var(--ink)}.hill .services{grid-template-columns:1fr 1fr;gap:20px}.hill .service{border:0;background:#e6e0d0}.hill .story{grid-template-columns:1fr 1.2fr}.signal .hero{min-height:720px}.signal .hero-copy{border-left:12px solid var(--accent);padding-left:35px}.signal .services{grid-template-columns:repeat(2,1fr);gap:25px}.signal .service{border:2px solid var(--line);border-radius:8px}.signal .areas a{background:var(--ink);color:var(--paper);padding:20px;margin-bottom:15px;border-radius:5px}.signal .stripe{font-size:15px}.signal .btn{border-radius:5px}
@media(min-width:1700px){.hero{min-height:760px}.hero-copy{max-width:1450px;margin:auto}}@media(max-width:900px){nav{gap:15px}nav .btn{display:none}.story{gap:30px}.services{grid-template-columns:1fr 1fr}.contact-grid{gap:30px}.coast .hero-copy{display:block}.coast .hero p{margin-top:24px}.article{gap:30px}.route .areas,.coast .areas{grid-template-columns:1fr 1fr}}@media(max-width:640px){body{font-size:16px}header{height:75px!important;padding:0 20px}.brand{font-size:12px}.brand img{width:38px;height:38px}.menu{display:block}nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--paper);padding:25px;box-shadow:0 15px 20px #0002}nav.open{display:flex;flex-direction:column;align-items:start}nav .btn{display:flex}.hero{min-height:650px!important;padding:48px 24px!important;margin:0!important;clip-path:none!important}.hero:after{background:linear-gradient(90deg,#08130ddc,#08130d60)!important}.hero h1{font-size:51px!important;letter-spacing:-.035em}.hero-copy{border:0!important;padding:0!important}.hero p{font-size:17px;max-width:95%}.hero .btn{padding:16px 20px}.hero-note{font-size:11px!important}.eyebrow{font-size:10px;margin-bottom:23px}.stripe{font-size:10px;letter-spacing:.04em;padding:17px 20px;margin:0!important;gap:12px}.stripe span:last-child{display:none}.wrap{padding:62px 23px}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:20px}.services,.editorial .services,.dock .services,.route .services,.workshop .services,.sun .services,.heritage .services,.coast .services,.racing .services,.stone .services,.industrial .services,.hill .services,.signal .services{grid-template-columns:1fr}.service{min-height:190px!important}.workshop .service{display:block}.workshop .service small{margin-bottom:18px}.workshop .service h3{margin-bottom:15px}.story{display:flex!important;flex-direction:column;align-items:stretch}.story img{height:340px;order:0}.story>div{order:1}.steps{grid-template-columns:1fr;gap:30px}.step{display:grid;grid-template-columns:55px 1fr;gap:0 20px}.step strong{font-size:48px!important;grid-row:1/3;margin:0}.step p{margin-top:12px;grid-column:2}.areas,.route .areas,.coast .areas{grid-template-columns:1fr}.areas a{font-size:19px;padding:18px 0}.contact-grid{grid-template-columns:1fr}.contact-info{padding:25px 0 0;border-left:0;border-top:1px solid #0003}.mobile-cta{display:flex;position:fixed;bottom:10px;left:12px;right:12px;z-index:50;background:var(--accent);color:#171b19;text-decoration:none;justify-content:space-between;align-items:center;padding:14px 18px;font-size:13px;font-weight:800;box-shadow:0 4px 25px #0003}.article{grid-template-columns:1fr}.article aside{position:static}.inner-hero{padding:25px 23px 40px}.inner-hero h1{font-size:44px}.article h2{font-size:33px}.crumb{padding:23px}.hero-copy .actions{gap:12px}.hero .actions .btn.alt{padding:15px}.hero .hero-note{max-width:100%}footer{padding-bottom:100px}.sun .hero{text-align:left}.sun .actions{justify-content:start}.sun .hero p{margin-left:0}h2{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}

/* Final layout and motion refinements */
main{overflow:clip}.hero-copy,.story>div,.article>*{min-width:0}.hero h1,.inner-hero h1{overflow-wrap:break-word}.service:nth-child(2n){transition-delay:35ms}.service:nth-child(3n){transition-delay:70ms}.btn span,.areas a span{transition:transform .25s}.btn:hover span,.areas a:hover span{transform:translate(3px,-3px)}.steps-band{position:relative;overflow:hidden}.steps-band:before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:repeating-linear-gradient(100deg,var(--accent) 0 24px,transparent 24px 45px);animation:roadmarks 3s linear infinite}@keyframes roadmarks{to{background-position:90px 0}}details[open] p{animation:enter .25s ease-out}.local-note{border-top:1px solid var(--line);margin-top:35px;padding-top:30px}.local-note h2{font-size:34px}.local-note p{margin-top:18px}.editorial .hero-copy h1 span{font-style:italic}.dock .hero h1{font-size:90px;text-transform:uppercase}.heritage .hero:before{content:'';position:absolute;inset:15px;border:1px solid #fff8;z-index:2;pointer-events:none}.racing .hero h1 span{display:inline-block;background:var(--accent);color:#191b19;padding:0 15px 8px;margin-top:10px}.signal .hero h1 span{letter-spacing:.02em}.industrial .hero-copy .eyebrow:before{content:'◆';margin-right:12px;color:var(--accent)}@media(max-width:640px){.editorial .hero h1,.heritage .hero h1,.stone .hero h1{font-size:43px!important}.heritage .hero:before{inset:10px}.dock .stripe{transform:none}.local-note h2{font-size:30px}}

/* Independent homepage silhouettes */
@media(min-width:901px){
.route .hero{min-height:850px;padding:0;align-items:flex-end}.route .hero-image{height:560px}.route .hero:after{height:560px;background:linear-gradient(0deg,#101e2280,transparent)}.route .hero-copy{background:var(--paper);color:var(--ink);padding:35px 5vw 30px;display:grid;grid-template-columns:1.15fr 1fr;gap:15px 50px;border-top:8px solid var(--accent)}.route .hero h1{font-size:64px;grid-row:1/5}.route .hero-copy .eyebrow{grid-column:2;margin:0}.route .hero p{margin:0}.route .hero .hero-note{margin:0!important}.route .hero h1 span{color:var(--ink)}
.workshop .hero{min-height:780px;padding:0;align-items:flex-start}.workshop .hero-image{inset:auto 0 0;height:480px}.workshop .hero:after{inset:auto 0 0;height:480px;background:linear-gradient(90deg,transparent,#1b1b1b20)}.workshop .hero-copy{max-width:none;padding:35px 5vw;background:var(--paper);color:var(--ink);display:grid;grid-template-columns:1.2fr 1fr;gap:10px 40px}.workshop .hero-copy .eyebrow{grid-column:1/-1;margin:0}.workshop .hero h1{font-size:75px;grid-row:2/5}.workshop .hero p{margin:0}.workshop .hero-note{margin:0!important}.workshop .hero h1 span{display:inline;color:var(--accent)}.workshop .hero h1 br{display:none}
.sun .hero{min-height:800px;align-items:center}.sun .hero h1{font-size:96px;max-width:1000px;line-height:.94}.sun .hero h1 br{display:none}.sun .hero h1 span{display:block;letter-spacing:.075em;font-size:120px;margin-top:15px}.sun .hero-copy .eyebrow{letter-spacing:.3em}
.heritage .hero-copy{width:60%}.heritage .hero:after{background:linear-gradient(90deg,#111f16ed,transparent)}
.coast .hero{min-height:750px;padding-bottom:55px}.coast .hero h1{font-size:86px}.coast .hero-copy{align-items:end}.coast .hero p{font-size:23px}
.racing .hero{min-height:760px}.racing .hero-copy{max-width:1450px}.racing .hero h1{font-size:110px}.racing .hero p{font-family:Road,Impact,sans-serif;font-size:32px;max-width:480px}.racing .hero-copy .eyebrow{background:var(--accent);color:#171b19;display:inline-block;padding:8px 14px}
.stone .hero{min-height:760px;align-items:end;padding-bottom:65px}.stone .hero:after{background:linear-gradient(0deg,#172320eb,transparent)}.stone .hero-copy{display:grid;grid-template-columns:1.4fr 1fr;gap:10px 35px;align-items:end}.stone .hero-copy .eyebrow{grid-column:1/-1;margin-bottom:5px}.stone .hero h1{grid-row:2/5;font-size:78px}.stone .hero p{margin:0}.stone .hero .hero-note{margin:0!important}
.hill .hero{min-height:730px}.hill .hero-copy{padding:0 0 35px 30px;border-left:4px solid var(--accent)}.hill .hero h1{font-size:95px}.hill .hero h1 span{color:#fff;display:inline-block;border-bottom:7px solid var(--accent);padding-bottom:8px}
.signal .hero{min-height:760px}.signal .hero-copy{max-width:1350px}.signal .hero h1{font-size:96px}.signal .hero-copy .eyebrow{color:var(--accent);font-size:15px}.signal .hero h1 span{display:inline-block;border:3px solid var(--accent);border-radius:8px;padding:6px 22px;margin-top:12px}
}
