/* Accent colors sampled from the logo rays */
:root{--bg:#0b0b0d;--bg2:#121216;--line:#26262c;--tx:#e9e6df;--mut:#9c978c;--ray1:#FDB940;--ray2:#F99D1C;--ray3:#DA2128;--gold:#FDB940;--gold2:#FEC966}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--tx);font:300 17px/1.7 Inter,system-ui,sans-serif}
a{color:inherit;text-decoration:none}.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;line-height:1.15}
h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1.2rem}h3{font-size:1.5rem;margin-bottom:.5rem}
.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;font-weight:500;margin-bottom:1rem}
.btn{display:inline-block;padding:15px 30px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#141008;font-weight:500;border-radius:2px;letter-spacing:.04em;transition:.3s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(253,185,64,.25)}.btn.ghost{background:none;color:var(--tx);border:1px solid #555}.btn.sm{padding:9px 20px}
.nav{position:fixed;inset:0 0 auto;z-index:10;background:rgba(11,11,13,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:74px}
.logo{display:flex;align-items:center}.logo img{height:48px;width:auto;display:block}
.links{display:flex;gap:30px;align-items:center;font-size:.9rem}.links a:not(.btn):hover{color:var(--gold)}
.burger{display:none;background:none;border:0;color:var(--tx);font-size:1.6rem;cursor:pointer}
.hero{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden;padding:130px 0 80px;background:linear-gradient(180deg,#0b0b0d,#14110b)}
.glow{position:absolute;width:900px;height:900px;right:-250px;top:-300px;border-radius:50%;background:radial-gradient(circle,rgba(253,185,64,.28),transparent 65%);pointer-events:none}
.hero-in{position:relative}.hero h1{font-size:clamp(2.6rem,6.5vw,5.4rem);max-width:900px;margin-bottom:1.5rem}.hero h1 span{color:var(--gold2);font-style:italic}
.lead{color:var(--mut);max-width:620px;font-size:1.12rem;margin-bottom:2.2rem}.cta{display:flex;gap:16px;flex-wrap:wrap}
.trust{border-block:1px solid var(--line);background:var(--bg2)}.trust-in{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-in div{padding:28px 20px;border-left:1px solid var(--line);text-align:center}.trust-in div:first-child{border-left:0}
.trust strong{display:block;font-family:"Cormorant Garamond",serif;font-size:1.7rem;color:var(--gold2);font-weight:500}.trust span{color:var(--mut);font-size:.85rem}
.sec{padding:110px 0;position:relative;overflow:hidden}.alt{background:var(--bg2)}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:2.5rem}
.card{padding:36px 28px;border:1px solid var(--line);background:linear-gradient(180deg,#141418,#0e0e11);transition:.35s}.card:hover{border-color:var(--gold);transform:translateY(-4px)}
.card p,.steps p,.checks li,.support li,.two p{color:var(--mut);font-size:.97rem}.ic{color:var(--gold);font-size:1.6rem;margin-bottom:1rem}
.support{margin-top:50px;padding:36px;border:1px solid var(--line)}.support ul{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:1rem}
.support b,.checks b{display:block;color:var(--tx);font-weight:500;margin-bottom:4px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.checks{list-style:none;display:grid;gap:22px}.checks li{padding-left:34px;position:relative}.checks li:before{content:"";position:absolute;left:0;top:6px;width:18px;height:16px;background:linear-gradient(var(--ray1),var(--ray1)) 0 0/4px 100% no-repeat,linear-gradient(var(--ray2),var(--ray2)) 7px 3px/4px 13px no-repeat,linear-gradient(var(--ray3),var(--ray3)) 14px 8px/4px 8px no-repeat;transform:skewX(-18deg)}
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:2.5rem}.steps li{border-top:2px solid;border-image:linear-gradient(90deg,var(--ray1),var(--ray2) 60%,var(--ray3)) 1;padding-top:22px}.steps span{color:var(--gold);font-size:.85rem;letter-spacing:.15em}
.note{color:var(--mut);font-size:.85rem;margin-top:-.6rem}
.gal{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:240px;gap:16px;margin-top:2rem}
.gal figure{position:relative;border:1px solid var(--line);overflow:hidden}.g1{grid-row:span 2}
.gal figcaption{position:absolute;left:20px;bottom:16px;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase}
.gal figcaption:after{content:" · placeholder";color:var(--mut);text-transform:none;letter-spacing:0}
.g1{background:radial-gradient(ellipse at 50% 30%,rgba(246,213,138,.35),transparent 55%),linear-gradient(180deg,#1b1610,#060606)}
.g2{background:linear-gradient(135deg,#2a2015,#0d0d10 70%)}.g3{background:radial-gradient(circle at 70% 20%,#e7b54a55,transparent 50%),linear-gradient(180deg,#0f2530,#081014)}
.g4{background:linear-gradient(160deg,#18181f,#2b2417)}.g5{background:linear-gradient(90deg,#0d0d10,#3a2c14 50%,#0d0d10)}
.center{text-align:center;position:relative}.center .lead{margin-inline:auto}.contact .glow{left:50%;transform:translateX(-50%);top:-450px;right:auto}
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:1rem}
.cc{padding:30px 20px;border:1px solid var(--line);background:rgba(18,18,22,.8);font-size:1.05rem;word-break:break-word;transition:.3s}.cc:hover{border-color:var(--gold)}
.cc small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;margin-bottom:8px}
.foot{border-top:1px solid var(--line);padding:30px 0;text-align:center;color:var(--mut);font-size:.82rem}
@media(max-width:1000px){.grid4,.steps{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr;gap:40px}.trust-in{grid-template-columns:1fr 1fr}.trust-in div:nth-child(3){border-left:0}.trust-in div:nth-child(n+3){border-top:1px solid var(--line)}}
@media(max-width:760px){.burger{display:block}.links{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;background:#0b0b0d;padding:24px;border-bottom:1px solid var(--line)}.links.open{display:flex}
.sec{padding:80px 0}.grid4,.steps,.support ul,.cgrid{grid-template-columns:1fr}.gal{grid-template-columns:1fr;grid-auto-rows:200px}.g1{grid-row:auto}.hero{min-height:auto}.logo img{height:40px}.wrap{padding:0 22px}.trust-in div{padding:22px 10px}.trust strong{font-size:1.35rem}}

/* ---- Three-rays motif ---- */
.rays-div{display:flex;align-items:flex-end;gap:6px;height:26px;margin:0 0 1.6rem}
.rays-div i{display:block;width:6px;transform:skewX(-22deg);transform-origin:bottom}
.rays-div i:nth-child(1){height:100%;background:var(--ray1)}.rays-div i:nth-child(2){height:72%;background:var(--ray2)}.rays-div i:nth-child(3){height:42%;background:var(--ray3)}
.rays-div.sm{height:16px;gap:5px;margin:-.4rem 0 1.4rem}.rays-div.sm i{width:4px}
.center .rays-div{justify-content:center}
.card{border-top:2px solid var(--line)}.card:hover{border-top-color:var(--ray2)}
.more{color:var(--gold);margin-left:8px}.center-btn{text-align:center;margin-top:36px}
/* ---- Hero tagline + sunshine-ray "shooting star" ---- */
.tagline{position:relative;display:inline-block;font-size:clamp(2.6rem,7vw,5.8rem);margin-bottom:1.2rem;padding:.1em .15em .15em 0}
.tl-text{display:block;background:linear-gradient(100deg,#fff 0%,var(--gold2) 45%,var(--ray1) 70%,var(--ray2));-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}
.streak{position:absolute;left:0;top:50%;width:100%;height:30px;margin-top:-15px;pointer-events:none;opacity:0;display:flex;flex-direction:column;justify-content:center;gap:4px}
.streak i{display:block;height:5px;margin-left:auto;border-radius:0 3px 3px 0;transform:skewX(-35deg)}
.streak i:nth-child(1){width:100%;background:linear-gradient(90deg,transparent,var(--ray1))}
.streak i:nth-child(2){width:88%;background:linear-gradient(90deg,transparent,var(--ray2))}
.streak i:nth-child(3){width:74%;background:linear-gradient(90deg,transparent,var(--ray3))}
.streak b{position:absolute;right:-14px;top:50%;width:28px;height:28px;margin-top:-14px;background:radial-gradient(circle,#fff 0 18%,rgba(254,201,102,.9) 30%,rgba(253,185,64,0) 70%);border-radius:50%;box-shadow:0 0 30px 8px rgba(253,185,64,.45)}
.streak b:before,.streak b:after{content:"";position:absolute;left:50%;top:50%;width:56px;height:2px;margin:-1px 0 0 -28px;background:linear-gradient(90deg,transparent,#fff,transparent)}.streak b:after{transform:rotate(90deg)}
.hero .eyebrow,.hero-lead,.hero .cta{animation:fadeUp .9s ease both}.hero-lead{animation-delay:2.3s}.hero .cta{animation-delay:2.5s}.hero > .wrap > .rays-div{animation:fadeUp .9s 2.1s ease both}
@media (prefers-reduced-motion:no-preference){
 .tl-text{animation:reveal 1.6s .5s cubic-bezier(.55,.1,.35,1) both}
 .streak{animation:fly 1.6s .5s cubic-bezier(.55,.1,.35,1) both,fadeout .7s 2.1s ease forwards}
}
@keyframes reveal{from{clip-path:inset(-20% 100% -20% 0)}to{clip-path:inset(-20% 0 -20% 0)}}
@keyframes fly{0%{opacity:0;clip-path:inset(0 0 0 100%);transform:translateX(-100%)}10%{opacity:1}100%{opacity:1;clip-path:inset(0 0 0 0);transform:translateX(0)}}
@keyframes fadeout{from{opacity:1}to{opacity:0;transform:translateX(6%)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.hero .eyebrow,.hero-lead,.hero .cta,.hero > .wrap > .rays-div{animation:none}.streak{display:none}html{scroll-behavior:auto}}
/* ---- Projects page ---- */
.page-hero{position:relative;overflow:hidden;padding:170px 0 70px;background:linear-gradient(180deg,#0b0b0d,#14110b)}
.page-hero h1{font-size:clamp(2.6rem,6vw,4.6rem);margin-bottom:1rem}.page-hero .wrap{position:relative}
.projects{padding-top:30px;padding-bottom:40px}
.project{padding:60px 0;border-bottom:1px solid var(--line)}.project:last-child{border-bottom:0}
.p-head{display:flex;gap:26px;align-items:flex-start;margin-bottom:28px}
.p-num{font-family:"Cormorant Garamond",serif;font-size:3.2rem;line-height:1;color:var(--ray2)}
.p-head h2{margin-bottom:.3rem}.p-desc{color:var(--mut)}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pgrid a{display:block;overflow:hidden;border:1px solid var(--line);aspect-ratio:3/2}
.pgrid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.pgrid a:hover img{transform:scale(1.04)}.pgrid a:hover{border-color:var(--gold)}
.lb{position:fixed;inset:0;z-index:50;background:rgba(5,5,7,.94);display:none;align-items:center;justify-content:center;padding:60px 70px}.lb.on{display:flex}
.lb figure{max-width:100%;max-height:100%;text-align:center}.lb img{max-width:100%;max-height:calc(100vh - 160px);display:block;margin:auto;border:1px solid var(--line)}
.lb figcaption{color:var(--mut);font-size:.85rem;margin-top:14px;letter-spacing:.06em}
.lb button{position:absolute;background:none;border:0;color:var(--tx);font-size:2.6rem;cursor:pointer;padding:10px 16px;line-height:1}.lb button:hover{color:var(--gold)}
.lb-x{top:14px;right:18px}.lb-p{left:10px;top:50%;transform:translateY(-50%)}.lb-n{right:10px;top:50%;transform:translateY(-50%)}
@media(max-width:760px){.pgrid{grid-template-columns:1fr 1fr;gap:10px}.p-head{gap:16px}.p-num{font-size:2.4rem}.lb{padding:50px 10px}.lb-p,.lb-n{top:auto;bottom:10px;transform:none}.page-hero{padding:130px 0 50px}}
/* review fixes */
.hero h1.tagline{max-width:none}
@media(min-width:900px){.tl-text{white-space:nowrap}.tagline{font-size:clamp(3rem,6.2vw,5.6rem)}}
.nav-in{height:84px}.logo img{height:58px}
@media(max-width:760px){.nav-in{height:74px}.logo img{height:46px}.links{top:74px}}
/* real photos */
.gal a{position:relative;display:block;overflow:hidden;border:1px solid var(--line)}
.gal a img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.gal a:hover img{transform:scale(1.04)}.gal a:hover{border-color:var(--gold)}
.gal a:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.75))}
.gal figcaption{z-index:1}.gal figcaption:after{content:none}
.pgrid a{aspect-ratio:4/3}
.pgrid.feat a:first-child{grid-column:span 2;aspect-ratio:auto}
.pgrid.small{grid-template-columns:repeat(3,1fr);max-width:900px}
.banner{display:block;margin-bottom:14px;border:1px solid var(--line);overflow:hidden}.banner img{width:100%;height:auto;display:block}
@media(max-width:760px){.pgrid.feat a:first-child{grid-row:auto;aspect-ratio:4/3}.banner{overflow-x:hidden}}
.pgrid.feat{grid-auto-rows:min(calc((100vw - 84px) / 4),279px)}.pgrid.feat a{aspect-ratio:auto}
@media(max-width:760px){.pgrid.feat{grid-auto-rows:auto}.pgrid.feat a{aspect-ratio:4/3}}
/* ---- Vendors ---- */
.vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.vendor{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:34px 20px 20px;border:1px solid var(--line);background:linear-gradient(180deg,#141418,#0e0e11);transition:background .35s,border-color .35s,transform .35s}
.v-logo{height:64px;width:100%;display:flex;align-items:center;justify-content:center}
.v-logo img{max-height:44px;max-width:180px;width:auto;height:auto;filter:brightness(0) invert(1);opacity:.82;transition:filter .35s,opacity .35s}
.vendor.badge .v-logo img{max-height:60px;filter:grayscale(1) brightness(1.15);opacity:.9}
.v-name{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);transition:color .35s}
/* hover/focus: original colors on a light panel */
.vendor:hover,.vendor:focus-visible{background:#f4f2ed;border-color:var(--gold);transform:translateY(-3px)}
.vendor:hover img,.vendor:focus-visible img{filter:none;opacity:1}
.vendor.white:hover img,.vendor.white:focus-visible img{filter:brightness(0)}  /* white-only logos: shown dark on the light panel */
.vendor:hover .v-name,.vendor:focus-visible .v-name{color:#555}
.v-note{margin-top:28px;text-align:center}
.brand-strip{padding:50px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}
.strip-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:26px 44px}
.strip-logos img{height:26px;width:auto;max-width:130px;object-fit:contain;filter:brightness(0) invert(1);opacity:.55;transition:opacity .3s}
.strip-logos img.badge{height:34px;filter:grayscale(1)}.strip-logos:hover img{opacity:.9}
.foot-links{display:flex;justify-content:center;gap:26px;margin-bottom:12px;font-size:.85rem}.foot-links a:hover{color:var(--gold)}
@media(max-width:1000px){.vgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.vgrid{grid-template-columns:1fr 1fr;gap:12px}.v-logo img{max-width:130px;max-height:36px}.vendor{padding:26px 12px 16px}.strip-logos{gap:20px 28px}.strip-logos img{height:20px}}
.vendor.badge:hover .v-logo img,.vendor.badge:focus-visible .v-logo img{filter:none;opacity:1}
.vendor.badge .v-logo img{filter:grayscale(1) brightness(1.45)}
/* ---- Personal relationship ---- */
.personal{background:linear-gradient(180deg,#0e0d0b,#0b0b0d)}.personal .glow{left:-300px;right:auto;top:-200px;opacity:.6}
.personal .wrap{position:relative}.p-intro{max-width:760px}.p-intro .lead{max-width:none;color:#bdb7aa}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:2.6rem}
.pillar{padding:38px 32px;border:1px solid var(--line);background:rgba(18,18,22,.7)}
.pillar p{color:var(--mut);font-size:.97rem}.pillar h3{font-size:1.65rem}
.p-ray{display:flex;align-items:flex-end;gap:5px;height:22px;margin-bottom:18px}.p-ray i{width:5px;transform:skewX(-22deg)}
.p-ray i:nth-child(1){height:100%;background:var(--ray1)}.p-ray i:nth-child(2){height:72%;background:var(--ray2)}.p-ray i:nth-child(3){height:42%;background:var(--ray3)}
.sig{margin-top:2.4rem;font-family:"Cormorant Garamond",serif;font-style:italic;font-size:2rem;color:var(--gold2)}
.sig span{display:block;font-family:Inter,sans-serif;font-style:normal;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.steps.five{grid-template-columns:repeat(5,1fr);gap:24px}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:1rem;text-align:left}
.quote{padding:32px;border:1px solid var(--line)}.quote blockquote{font-family:"Cormorant Garamond",serif;font-size:1.35rem;font-style:italic}.quote figcaption{margin-top:14px;color:var(--gold);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase}
@media(max-width:1000px){.pillars,.quotes{grid-template-columns:1fr}.steps.five{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.steps.five{grid-template-columns:1fr}}
/* ==== Orange splashes from the logo (gold/black stays dominant) ==== */
:root{--orange:#F99D1C;--ember:#DA2128;--rays:linear-gradient(90deg,var(--ray1),var(--ray2) 55%,var(--ray3))}
/* thin three-ray rule under the fixed nav and above the footer */
.nav{border-bottom:0}.nav:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--rays);opacity:.9}
.foot{position:relative;border-top:0}.foot:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--rays)}
/* links, nav, focus */
.links a:not(.btn){position:relative}.links a:not(.btn):hover,.links a:not(.btn):focus-visible{color:var(--orange)}
.links a:not(.btn):after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--rays);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.links a:not(.btn):hover:after,.links a:not(.btn):focus-visible:after{transform:scaleX(1)}
a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.foot-links a:hover,.foot-links a:focus-visible{color:var(--orange)}
.more{color:var(--orange)}.more:hover{text-decoration:underline;text-underline-offset:4px}
.eyebrow{color:var(--orange)}
.eyebrow:before{content:"";display:inline-block;width:28px;height:2px;margin-right:12px;vertical-align:middle;background:var(--rays)}
.center .eyebrow:before{display:none}
/* buttons: gold primary that warms to orange; orange glow */
.btn{background:linear-gradient(120deg,var(--gold2),var(--gold) 45%,var(--orange));background-size:180% 100%;background-position:0 0;transition:transform .3s,box-shadow .3s,background-position .4s,border-color .3s,color .3s}
.btn:hover,.btn:focus-visible{background-position:100% 0;box-shadow:0 10px 30px rgba(249,157,28,.35),0 0 0 1px rgba(218,33,40,.25)}
.btn.ghost{background:none;border-color:#555}.btn.ghost:hover,.btn.ghost:focus-visible{border-color:var(--orange);color:var(--orange);box-shadow:0 10px 30px rgba(249,157,28,.15)}
/* hero: warm orange/ember glow and a fading three-ray horizon line */
.hero:before{content:"";position:absolute;width:760px;height:760px;left:-260px;bottom:-420px;border-radius:50%;background:radial-gradient(circle,rgba(249,157,28,.22),rgba(218,33,40,.08) 45%,transparent 68%);pointer-events:none}
.hero .glow{background:radial-gradient(circle,rgba(253,185,64,.30),rgba(249,157,28,.14) 40%,transparent 65%)}
.hero:after,.page-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--ray1) 25%,var(--ray2) 55%,var(--ray3) 80%,transparent);opacity:.75}
.page-hero .glow{background:radial-gradient(circle,rgba(253,185,64,.26),rgba(249,157,28,.14) 40%,transparent 65%)}
.contact .glow{background:radial-gradient(circle,rgba(253,185,64,.24),rgba(249,157,28,.12) 40%,transparent 65%)}
/* trust strip: orange hairline on top */
.trust{position:relative;border-top:0}.trust:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--orange) 30%,var(--ray3) 70%,transparent);opacity:.6}
/* service cards */
.ic{color:var(--orange)}
.card{position:relative}.card:after{content:"";position:absolute;left:-1px;right:-1px;top:-2px;height:2px;background:var(--rays);transform:scaleX(0);transform-origin:left;transition:transform .45s}
.card:hover{border-color:rgba(249,157,28,.55)}.card:hover:after{transform:scaleX(1)}
.support{border-left:2px solid var(--orange)}
.pillar{transition:border-color .35s}.pillar:hover{border-color:rgba(249,157,28,.5)}
/* 5-step process: orange numerals */
.steps span{display:block;font-family:"Cormorant Garamond",serif;font-size:2.1rem;line-height:1;letter-spacing:.02em;color:var(--orange);margin-bottom:.6rem}
/* gallery + contact cards */
.gal figcaption{padding-left:20px}.gal figcaption:before{content:"";position:absolute;left:0;top:50%;width:12px;height:2px;background:var(--orange)}
.gal a:hover{border-color:var(--orange)}
.cc small{color:var(--orange)}.cc:hover,.cc:focus-visible{border-color:var(--orange);box-shadow:0 8px 28px rgba(249,157,28,.12)}
/* projects page */
.p-head h2{position:relative;padding-bottom:.55rem}.p-head h2:after{content:"";position:absolute;left:0;bottom:0;width:64px;height:2px;background:var(--rays)}
.p-desc{margin-top:.5rem}
.pgrid a:hover,.pgrid a:focus-visible,.banner:hover{border-color:var(--orange)}
.lb button:hover{color:var(--orange)}
/* vendors page */
.vendor{position:relative;overflow:hidden}.vendor:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--rays);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.vendor:hover,.vendor:focus-visible{border-color:var(--orange)}.vendor:hover:before,.vendor:focus-visible:before{transform:scaleX(1)}
.brand-strip{border-top:0;position:relative}.brand-strip:before{content:"";position:absolute;left:50%;top:0;width:min(420px,70%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--orange),transparent);opacity:.7}
.foot-fb{color:var(--orange)}
@media(max-width:760px){.links a:not(.btn):after{display:none}.hero:before{width:520px;height:520px;left:-220px;bottom:-300px}.steps span{font-size:1.8rem}}
.foot-contact{margin-top:6px}.foot-contact a{color:var(--tx)}.foot-contact a:hover,.foot-contact a:focus-visible{color:var(--orange)}
/* stronger first-glance warmth */
.btn{background:linear-gradient(120deg,var(--gold2) 0%,var(--gold) 40%,var(--orange) 100%)}
.btn:hover,.btn:focus-visible{background:linear-gradient(120deg,var(--gold) 0%,var(--orange) 55%,#EE7A1E 100%)}
.btn.ghost,.btn.ghost:hover,.btn.ghost:focus-visible{background:none}
.tl-text{background-image:linear-gradient(100deg,#fff 0%,var(--gold2) 30%,var(--ray1) 55%,var(--orange) 85%,#F58A1F)}
.hero .glow{background:radial-gradient(circle,rgba(253,185,64,.32),rgba(249,157,28,.2) 38%,rgba(218,33,40,.06) 55%,transparent 66%)}
.hero:before{background:radial-gradient(circle,rgba(249,157,28,.3),rgba(218,33,40,.12) 42%,transparent 68%)}
.hero > .wrap > .rays-div{height:34px;gap:8px}.hero > .wrap > .rays-div i{width:8px}
.brand-strip .eyebrow:before{display:none}
.foot-links{flex-wrap:wrap;row-gap:8px}@media(max-width:760px){.foot-links{gap:8px 18px}}

/* Latest from Facebook section */
.fb-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:70px;align-items:center;justify-content:center;max-width:1120px;margin-inline:auto}
.fb-copy .lead{margin-bottom:2rem}
.fb-frame{position:relative;width:100%;max-width:500px;margin-inline:auto;min-height:600px;background:#0b0b0d;border:1px solid var(--line);border-radius:4px;padding:10px;box-shadow:0 20px 60px rgba(0,0,0,.45),0 0 0 1px rgba(249,157,28,.08);overflow:hidden}
.fb-frame:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--rays)}
.fb-frame .fb-page,.fb-frame .fb-page span,.fb-frame .fb-page iframe{width:100%!important;max-width:100%}
.fb-frame blockquote{margin:0;padding:24px;text-align:center}.fb-frame blockquote a{color:var(--orange)}
@media(max-width:1000px){.fb-in{grid-template-columns:1fr;gap:40px;text-align:center}.fb-copy .lead{margin-inline:auto}.fb-copy .rays-div{justify-content:center}.fb-copy .eyebrow:before{display:none}}
@media(max-width:760px){.fb-frame{padding:6px;min-height:560px}}
/* ---- Projects: album cards + gallery view ---- */
.pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:30px 0 70px}
.pcard{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);background:linear-gradient(180deg,#141418,#0e0e11);transition:border-color .35s,transform .35s,box-shadow .35s}
.pcard:hover,.pcard:focus-visible{border-color:var(--gold);transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.45),0 0 0 1px rgba(253,185,64,.15)}
.pc-img{display:block;aspect-ratio:4/3;overflow:hidden;position:relative;background:#0e0e11}
.pc-img:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(11,11,13,.55));pointer-events:none}
.pc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease}
.pcard:hover .pc-img img{transform:scale(1.05)}
.pc-body{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:14px;padding:18px 20px 20px;border-top:2px solid;border-image:linear-gradient(90deg,var(--ray1),var(--ray2) 60%,var(--ray3)) 1}
.pc-ray{grid-row:span 2;display:flex;align-items:flex-end;gap:4px;height:30px;align-self:center}
.pc-ray i{display:block;width:4px;transform:skewX(-22deg);transform-origin:bottom}
.pc-ray i:nth-child(1){height:100%;background:var(--ray1)}.pc-ray i:nth-child(2){height:72%;background:var(--ray2)}.pc-ray i:nth-child(3){height:42%;background:var(--ray3)}
.pc-name{font-family:"Cormorant Garamond",serif;font-size:1.5rem;line-height:1.15;color:var(--tx);font-weight:500}
.pcard:hover .pc-name{color:var(--gold2)}
.pc-count{color:var(--mut);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;margin-top:4px}
.pc-tag{font-family:Inter,sans-serif;font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ray2);border:1px solid rgba(249,157,28,.45);padding:2px 7px;margin-left:8px;vertical-align:middle;white-space:nowrap}
.galleries .project{scroll-margin-top:90px}
.p-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}
.p-head .eyebrow{margin-bottom:.4rem}
.p-close{color:var(--gold);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;border:1px solid #3a3a40;padding:10px 18px;white-space:nowrap;transition:.3s}
.p-close:hover{border-color:var(--gold);background:rgba(253,185,64,.08)}
.galleries .pgrid{grid-template-columns:repeat(4,1fr);gap:12px}
.galleries .pgrid a{aspect-ratio:4/3;background:#111114}
/* JS on: galleries open one at a time as a full-screen view */
.js .galleries .project{display:none}
.js .galleries .project.open{display:block;position:fixed;inset:0;z-index:40;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(1200px 500px at 15% -10%,rgba(253,185,64,.08),transparent 60%),var(--bg);padding:110px max(24px,calc((100vw - 1240px)/2)) 70px;border:0;animation:galIn .35s ease both}
.js body.gal-open{overflow:hidden}
.js body.gal-open .nav{z-index:45}
@keyframes galIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.lb{z-index:60}
.lb-count{color:var(--gold);margin-left:10px;letter-spacing:.12em}
@media(max-width:1000px){.pcards{grid-template-columns:1fr 1fr}.galleries .pgrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.pcards{grid-template-columns:1fr 1fr;gap:12px;padding:20px 0 50px}.pc-body{padding:12px 12px 14px;column-gap:10px}.pc-ray{height:22px;gap:3px}.pc-ray i{width:3px}.pc-name{font-size:1.12rem}.pc-count{font-size:.62rem;letter-spacing:.14em}.pc-tag{display:none}
.galleries .pgrid{grid-template-columns:1fr 1fr;gap:8px}.js .galleries .project.open{padding:92px 14px 50px}.p-head{flex-direction:column;align-items:flex-start;gap:14px}.p-close{padding:8px 14px;font-size:.72rem}}
@media (prefers-reduced-motion:reduce){.js .galleries .project.open{animation:none}}

/* ==== For the Trade page (trade.html) : blueprint aesthetic, scoped ==== */
.trade-page{--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--bpl:rgba(253,185,64,.075);--bpl2:rgba(253,185,64,.13)}
.bp-grid{background-color:#0c0c0e;background-image:linear-gradient(var(--bpl2) 1px,transparent 1px),linear-gradient(90deg,var(--bpl2) 1px,transparent 1px),linear-gradient(var(--bpl) 1px,transparent 1px),linear-gradient(90deg,var(--bpl) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;background-position:-1px -1px}
.bp-grid.fine{--bpl:rgba(255,255,255,.022);--bpl2:rgba(253,185,64,.06)}
.alt.bp-grid{background-color:var(--bg2)}
.t-head{max-width:780px}.t-head .lead{max-width:none;color:#bdb7aa}
/* hero */
.t-hero{padding:180px 0 90px;background-color:#0d0c0b}
.t-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,13,.92) 0%,rgba(11,11,13,.55) 55%,rgba(11,11,13,.2));pointer-events:none}
.t-hero-in{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:60px;align-items:end}
.t-hero h1{font-size:clamp(2.6rem,5.6vw,4.4rem);max-width:780px}.t-hero h1 span{color:var(--gold2);font-style:italic}
.t-hero .lead{max-width:640px;color:#bdb7aa}
.t-promise{font-family:var(--mono);font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:-.6rem 0 2.2rem;display:flex;flex-wrap:wrap;gap:6px 18px}
.t-promise span{position:relative;padding-left:16px}.t-promise span:before{content:"";position:absolute;left:0;top:50%;width:8px;height:1px;background:var(--orange)}
.t-stamp{font-family:var(--mono);border:1px solid rgba(253,185,64,.45);background:rgba(11,11,13,.78);position:relative;font-size:.74rem}
.t-stamp:before{content:"";position:absolute;inset:4px;border:1px solid rgba(253,185,64,.14);pointer-events:none}
.t-stamp div{display:grid;grid-template-columns:96px 1fr;border-top:1px solid rgba(253,185,64,.2)}.t-stamp div:first-child{border-top:0}
.t-stamp dt{padding:10px 12px;color:var(--mut);text-transform:uppercase;letter-spacing:.14em;font-size:.64rem;border-right:1px solid rgba(253,185,64,.2)}
.t-stamp dd{padding:10px 12px;color:var(--tx);letter-spacing:.04em}
.t-stamp div:first-child dd{color:var(--gold2);font-size:1rem;letter-spacing:.12em}
/* drawing sheet */
.t-sheet{margin-top:2.6rem;position:relative}
.t-sheet-scroll{border:1px solid rgba(253,185,64,.35);background:#09090b;box-shadow:0 30px 80px rgba(0,0,0,.5),0 0 0 6px rgba(253,185,64,.04);overflow:hidden}
.t-sheet-scroll:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.t-sheet figcaption{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-top:14px;text-align:right}
.t-swipe{display:none}
.fp{display:block;width:100%;height:auto}
.fp text{font-family:var(--mono);fill:#9c978c;font-size:8.5px;letter-spacing:.06em}
.fp .sheet{fill:#09090b}.fp .bd1{fill:none;stroke:rgba(253,185,64,.55);stroke-width:1}.fp .bd2{fill:none;stroke:rgba(253,185,64,.4);stroke-width:1.4}.fp .bd3{stroke:rgba(253,185,64,.28);stroke-width:.8}
.fp .tick{stroke:rgba(253,185,64,.45);stroke-width:.8}.fp .zn{fill:rgba(253,185,64,.7);font-size:8px}
.fp .terr{fill:rgba(253,185,64,.025);stroke:#6f6a60;stroke-width:.9;stroke-dasharray:6 4}
.fp .wall{stroke:#ece8df;stroke-width:7;stroke-linecap:square}
.fp .iwall{stroke:#cbc5b8;stroke-width:3.5;stroke-linecap:square}
.fp .wall2{stroke:#8d877c;stroke-width:1;stroke-dasharray:3 2}
.fp .win{fill:#09090b;stroke:#b3ad9f;stroke-width:.9}.fp .winl{stroke:#b3ad9f;stroke-width:.7}
.fp .door{fill:none;stroke:#a7a194;stroke-width:1}
.fp .rm{fill:#ece8df;font-size:10.5px;letter-spacing:.2em}.fp .rm2{fill:#cbc5b8;font-size:9px;letter-spacing:.2em}.fp .rmn{fill:var(--gold);font-size:8px;letter-spacing:.16em}
.fp .tiny{font-size:7.5px;fill:#a39d91}.fp .emb{fill:#ef5a4f}
.fp .sp{fill:rgba(249,157,28,.1);stroke:#F99D1C;stroke-width:1;stroke-dasharray:4 2.5}
.fp .kp{fill:#141210;stroke:#FDB940;stroke-width:1.2}.fp .kpl{stroke:#FDB940;stroke-width:.8}
.fp .spk{fill:#0e0d0b;stroke:#FDB940;stroke-width:1.1}.fp .spk2{fill:#FDB940}
.fp .wap{fill:none;stroke:#FEC966;stroke-width:1.2}.fp .wapa{fill:none;stroke:#FEC966;stroke-width:1}
.fp .cam{fill:#141210;stroke:#FDB940;stroke-width:1.1}
.fp .lt{fill:none;stroke:#77726a;stroke-width:.8}
.fp .align{fill:none;stroke:rgba(253,185,64,.35);stroke-width:.7;stroke-dasharray:2 3}
.fp .tv,.fp .tvx{fill:#FDB940;opacity:.85}.fp .screen{stroke:#FEC966;stroke-width:3}
.fp .rack{fill:rgba(253,185,64,.08);stroke:#FDB940;stroke-width:1.2}.fp .rackx{stroke:rgba(253,185,64,.5);stroke-width:.8}
.fp .lp{fill:rgba(249,157,28,.25);stroke:#F99D1C;stroke-width:1.2}
.fp .ups{fill:none;stroke:#cbc5b8;stroke-width:1}.fp .hvac{fill:none;stroke:#8d877c;stroke-width:.9}.fp .hvacl{stroke:#8d877c;stroke-width:.6}
.fp .ded{fill:none;stroke:#DA2128;stroke-width:1.2}.fp .dedx{stroke:#DA2128;stroke-width:1}
.fp .acou{fill:url(#fp-hatch);stroke:rgba(249,157,28,.6);stroke-width:.7}
.fp .riser{fill:rgba(253,185,64,.04);stroke:#8d877c;stroke-width:.8;stroke-dasharray:4 3}
.fp .seat{fill:#1a1814;stroke:#a7a194;stroke-width:.8}.fp .proj{fill:#141210;stroke:#FEC966;stroke-width:1}
.fp .cone{fill:none;stroke:rgba(254,201,102,.28);stroke-width:.7;stroke-dasharray:3 3}
.fp .hr{fill:none;stroke:#F99D1C;stroke-width:1.2;stroke-dasharray:7 4;opacity:.75}.fp .hr-main{opacity:1;stroke-width:1.6}
.fp .dl{fill:none;stroke:#77726a;stroke-width:.7}.fp .ext-l{stroke:#77726a;stroke-width:.5;stroke-dasharray:2 2}.fp .dt{fill:#bdb7aa;font-size:8px}
.fp .ld{fill:none;stroke:#F99D1C;stroke-width:.8}.fp .ldd{fill:#F99D1C}
.fp .co circle{fill:#0b0b0d;stroke:#F99D1C;stroke-width:1.4;transition:fill .25s}.fp .co text{fill:#FEC966;font-size:9.5px;font-weight:500;letter-spacing:0}
.fp .co:hover circle,.fp .co:focus-visible circle{fill:#F99D1C}.fp .co:hover text,.fp .co:focus-visible text{fill:#0b0b0d}
.fp .co:focus-visible{outline:none}
.fp .hd{fill:var(--gold);font-size:10px;letter-spacing:.24em;font-weight:500}.fp .lg{fill:#cbc5b8;font-size:8px}.fp .nt{fill:#a39d91;font-size:7.6px}
.fp .na{fill:none;stroke:#8d877c;stroke-width:.8}.fp .nap{fill:#FDB940}
.fp .sb1{fill:#cbc5b8}.fp .sb2{fill:none;stroke:#cbc5b8;stroke-width:.8}
.fp .tb{fill:rgba(253,185,64,.035);stroke:rgba(253,185,64,.5);stroke-width:1}
.fp .tb1{fill:#ece8df;font-size:9.5px;letter-spacing:.14em;font-weight:500}.fp .tbl{fill:#8d877c;font-size:7px;letter-spacing:.18em}
.fp .tbv{fill:#ece8df;font-size:8.6px;letter-spacing:.1em}.fp .tbn{fill:var(--gold2);font-size:17px;letter-spacing:.14em;font-weight:500}
/* line-draw on scroll (armed by script.js only when motion is allowed) */
.bp-armed .walls line:not(.wall2),.bp-armed .walls path,.bp-armed .walls rect,.bp-armed .dim line{transition:stroke-dashoffset 2.4s cubic-bezier(.55,.1,.3,1)}
.bp-armed .walls .iwall{transition-delay:.35s}.bp-armed .walls .door,.bp-armed .walls .win,.bp-armed .walls .winl{transition-delay:.8s}
.bp-in .walls line:not(.wall2),.bp-in .walls path,.bp-in .walls rect,.bp-in .dim line{stroke-dashoffset:0!important}
.bp-armed .sym,.bp-armed .labels,.bp-armed .hrs,.bp-armed .callouts,.bp-armed .ext,.bp-armed .dim text,.bp-armed .dim path{opacity:0;transition:opacity .9s ease}
.bp-in .labels{opacity:1;transition-delay:1.1s}.bp-in .ext{opacity:1;transition-delay:1.2s}.bp-in .sym{opacity:1;transition-delay:1.5s}.bp-in .dim text,.bp-in .dim path{opacity:1;transition-delay:1.8s}
.bp-in .hrs{opacity:1;transition-delay:2s}.bp-in .callouts{opacity:1;transition-delay:2.4s}
.bp-in .hrs .hr{animation:hrflow 1.6s 2s linear 2}
@keyframes hrflow{to{stroke-dashoffset:-22}}
/* spec cards (callouts) */
.specs{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:2.6rem;counter-reset:none}
.spec{position:relative;padding:30px 30px 26px;border:1px solid var(--line);background:linear-gradient(180deg,#141418,#0e0e11);scroll-margin-top:110px;transition:border-color .35s}
.spec:before,.spec:after{content:"";position:absolute;width:12px;height:12px;border-color:rgba(253,185,64,.6);border-style:solid;pointer-events:none}
.spec:before{left:-1px;top:-1px;border-width:1px 0 0 1px}.spec:after{right:-1px;bottom:-1px;border-width:0 1px 1px 0}
.spec:hover,.spec:target{border-color:rgba(249,157,28,.55)}.spec:target{box-shadow:0 0 0 1px rgba(249,157,28,.35),0 20px 50px rgba(0,0,0,.4)}
.spec header{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.spec .sn,.sched .sn{display:inline-grid;place-items:center;width:34px;height:34px;border:1.4px solid var(--orange);border-radius:50%;font-family:var(--mono);font-size:.78rem;color:var(--gold2);flex:none}
.spec .sc{font-family:var(--mono);font-size:.68rem;letter-spacing:.22em;color:var(--mut);padding:3px 8px;border:1px dashed #3a3a40}
.spec h3{font-size:1.6rem}.spec p{color:var(--mut);font-size:.96rem}
.spec .sx{margin-top:14px;padding-top:12px;border-top:1px dashed #2f2f36;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#77726a}
.spec .sx b{font-weight:400;color:#bdb7aa}
/* schedule */
.sched{margin-top:2.6rem;border:1px solid rgba(253,185,64,.3);background:rgba(11,11,13,.7)}
.sched-hd,.sched-row{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.4fr)}
.sched-hd{border-bottom:1px solid rgba(253,185,64,.3);font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.sched-hd>.sched-ph{padding:12px 22px;border-right:1px solid rgba(253,185,64,.3)}
.sched-cols{display:grid;grid-template-columns:repeat(7,1fr)}.sched-cols span{padding:12px 6px;text-align:center;border-left:1px solid #222228}.sched-cols span:first-child{border-left:0}
.sched-row{border-top:1px solid #1f1f25}.sched-hd+.sched-row{border-top:0}
.sched-row .sched-ph{display:grid;grid-template-columns:auto 1fr;column-gap:16px;padding:22px 22px;border-right:1px solid rgba(253,185,64,.3)}
.sched-row .sched-ph .sn{grid-row:span 2}.sched-row h3{font-size:1.35rem;margin:4px 0 .3rem}.sched-row p{color:var(--mut);font-size:.9rem}
.sched-track{position:relative;background-image:linear-gradient(90deg,#222228 1px,transparent 1px);background-size:calc(100% / 7) 100%}
.sched-track i{position:absolute;top:50%;height:14px;margin-top:-7px;left:calc((var(--s) - 1) / 7 * 100% + 6px);width:calc((var(--e) - var(--s)) / 7 * 100% - 12px);background:linear-gradient(90deg,var(--gold2),var(--gold) 50%,var(--orange));box-shadow:0 0 18px rgba(249,157,28,.25)}
.sched-track i:before,.sched-track i:after{content:"";position:absolute;top:-6px;bottom:-6px;width:1px;background:rgba(253,185,64,.6)}.sched-track i:before{left:0}.sched-track i:after{right:0}
.sched-track.open i{background:linear-gradient(90deg,var(--orange),rgba(249,157,28,.15));box-shadow:none}.sched-track.open i:after{display:none}
.sched-row.hold{background:rgba(218,33,40,.04)}.hold .sn{border-color:var(--ray3);color:var(--ray3);font-size:.9rem}
.sched-track b{position:absolute;top:0;bottom:0;left:calc((var(--s) - .5) / 7 * 100%);width:0;border-left:1.5px dashed var(--ray3)}
.sched-track b:after{content:"";position:absolute;left:-8px;top:50%;width:13px;height:13px;margin-top:-7px;background:var(--ray3);transform:rotate(45deg)}
.t-pillars{margin-top:2.4rem}
/* RFI log */
.rfi{list-style:none;display:grid;grid-template-columns:1fr 1fr;column-gap:40px;margin-top:2.4rem;border-top:1px solid rgba(253,185,64,.3)}
.rfi li{display:grid;grid-template-columns:78px 1fr;gap:14px;padding:16px 4px;border-bottom:1px dashed #2f2f36;color:#cfc9bd;font-size:.98rem;line-height:1.55}
.rfi span{font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;color:var(--orange);padding-top:4px}
/* roles */
.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:2.4rem}
.role{position:relative;padding:34px 30px;border:1px solid var(--line);background:linear-gradient(180deg,#141418,#0e0e11);transition:border-color .35s}.role:before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:2px;background:var(--rays)}.role:hover{border-color:rgba(249,157,28,.5)}
.role-tag{display:block;font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-bottom:14px}
.role h3{font-size:1.7rem}.role p{color:var(--mut);font-size:.96rem}
.t-cta .sig{margin-top:2.6rem}
.links a[aria-current="page"]{color:var(--gold)}
.links a{white-space:nowrap}
@media(max-width:1100px) and (min-width:761px){.links{gap:20px;font-size:.86rem}}
@media(max-width:1000px){.t-hero-in{grid-template-columns:1fr;gap:40px}.t-stamp{max-width:420px}.specs{grid-template-columns:1fr}.roles{grid-template-columns:1fr}
.sched-hd,.sched-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sched-cols span{font-size:.55rem;letter-spacing:.06em;padding:12px 2px}}
@media(max-width:760px){.t-hero{padding:130px 0 60px}.t-promise{font-size:.7rem}
.t-swipe{display:block;font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.t-sheet-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.t-sheet-scroll .fp{width:1040px;max-width:none}
.t-sheet figcaption{text-align:left}
.spec{padding:24px 22px 22px}.spec h3{font-size:1.45rem}
.sched-hd{display:none}.sched-row{grid-template-columns:1fr}.sched-row .sched-ph{border-right:0;padding:20px 18px 12px}
.sched-track{height:30px;margin:0 18px 18px;border:1px solid #222228}
.rfi{grid-template-columns:1fr}.rfi li{grid-template-columns:64px 1fr;gap:10px}}
@media (prefers-reduced-motion:reduce){.bp-in .hrs .hr{animation:none}}
/* FL license (header + footer) and service area line */
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px;line-height:1}
.lic{font-size:.62rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);white-space:nowrap;line-height:1}
.foot-lic{margin-top:6px;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase}
.foot-area{margin:6px auto 0;max-width:760px}
@media(min-width:900px){.brand .logo img{height:52px}.lic{font-size:.64rem}}
@media(max-width:760px){.brand{gap:2px}.lic{font-size:.56rem;letter-spacing:.16em}.logo img{height:42px}}
/* Homeowner inquiry page */
.links a.btn[aria-current="page"]{color:#141008}
.inq-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
.inq-form{display:grid;gap:30px}
.inq-group{border:0;display:grid;gap:16px;min-width:0}
.inq-group legend{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.5rem;font-weight:500;line-height:1.2;margin-bottom:14px;padding:0}
.inq-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.inq-field{display:grid;gap:7px;min-width:0}
.inq-field label{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);font-weight:500}
.hint{font-family:Inter,system-ui,sans-serif;font-size:.78rem;letter-spacing:.02em;text-transform:none;color:var(--mut);font-weight:300;margin-left:6px}
.req{color:var(--orange)}
.inq-form input[type=text],.inq-form input[type=email],.inq-form input[type=tel],.inq-form select,.inq-form textarea{width:100%;background:rgba(18,18,22,.8);border:1px solid #3a3a42;color:var(--tx);font:300 1rem/1.5 Inter,system-ui,sans-serif;padding:13px 14px;border-radius:2px;transition:border-color .2s}
.inq-form select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--orange) 50%),linear-gradient(135deg,var(--orange) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.inq-form select option{background:#121216;color:var(--tx)}
.inq-form textarea{resize:vertical;min-height:130px}
.inq-form input:focus,.inq-form select:focus,.inq-form textarea:focus{outline:0;border-color:var(--orange);box-shadow:0 0 0 3px rgba(249,157,28,.15)}
.inq-form ::placeholder{color:#6f6b63}
.inq-choices{display:flex;flex-wrap:wrap;gap:10px}
.choice{position:relative;cursor:pointer}
.choice input{position:absolute;opacity:0;width:1px;height:1px}
.choice span{display:inline-block;padding:11px 18px;border:1px solid #3a3a42;background:rgba(18,18,22,.8);font-size:.92rem;transition:.2s;border-radius:2px}
.choice:hover span{border-color:#666}
.choice input:checked+span{border-color:var(--orange);color:var(--gold2);background:rgba(249,157,28,.1)}
.choice input:focus-visible+span{box-shadow:0 0 0 3px rgba(249,157,28,.3)}
.inq-err{color:#f08a7a;font-size:.88rem}
.inq-note{color:var(--mut);font-size:.85rem}
.inq-form .btn{justify-self:start;border:0;cursor:pointer;font:500 1rem/1.2 Inter,system-ui,sans-serif}
.inq-form .btn:disabled{opacity:.6;cursor:default;transform:none}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.inq-side{display:grid;gap:18px}
.inq-side .cc{text-align:left;font-size:.98rem;line-height:1.8}
.inq-side .cc a:hover{color:var(--orange)}
.inq-cta{margin:0 0 1.6rem}
.thanks-hero{padding-bottom:110px}.thanks-hero .lead a{color:var(--gold2);white-space:nowrap}.thanks-hero .cta{margin-top:2rem}
.inq-errors{list-style:none;display:grid;gap:8px;margin:1.4rem 0 2rem}.inq-errors li:before{content:"\2014\00a0";color:var(--orange)}
@media(max-width:900px){.inq-wrap{grid-template-columns:1fr;gap:36px}}
@media(max-width:600px){.inq-row{grid-template-columns:1fr}.choice{flex:1 1 calc(50% - 10px)}.choice span{display:block;text-align:center;padding:11px 10px}.inq-form .btn{justify-self:stretch;text-align:center}}
