:root{--p:#2B3B4C;--s:#1A2430;--h:#1e2a3b;--b:#2563eb;--bl:#60a5fa;--t:#1e293b;--m:#475569}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font:16px/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--t);background:#f8fafc}
img,video{max-width:100%;height:auto;display:block}a{color:#1d4ed8}h1,h2,h3,h4{line-height:1.2;color:#0f172a;margin:0 0 .6em}h2{font-size:1.9rem;font-weight:800}h3{font-size:1.4rem}
.i{display:inline-block;vertical-align:-.15em;flex-shrink:0}.wrap{max-width:1280px;margin:0 auto;padding:0 1rem}.narrow{max-width:900px}.ctr{text-align:center}.mt{margin-top:2rem}.mx{max-width:42rem;margin-left:auto;margin-right:auto}
.top{background:var(--s);color:#fff;font-size:.875rem;border-bottom:1px solid #33415580}.top .wrap{display:flex;gap:1rem;padding:.5rem 2rem}.top .tp{margin-left:auto;color:#fff;font-weight:600;text-decoration:none}
.nav{background:var(--p);position:sticky;top:0;z-index:50;box-shadow:0 10px 15px -3px #0004}.navin{display:flex;align-items:center;justify-content:space-between;height:80px}
.logo img{height:64px;width:auto;border-radius:6px}.menu{display:flex;align-items:center;gap:2rem}.menu a{color:#cbd5e1;font-weight:600;text-decoration:none}.menu a:hover,.menu a.on{color:#fff}.menu a.on{border-bottom:2px solid var(--bl)}
.dd{position:relative;padding:1.5rem 0;display:flex;align-items:center;gap:.25rem;color:#94a3b8}.ddm{position:absolute;left:0;top:100%;margin-top:-.5rem;width:16rem;background:var(--s);border:1px solid #334155;border-radius:6px;box-shadow:0 25px 50px -12px #0008;opacity:0;visibility:hidden;transition:.3s;display:flex;flex-direction:column;padding:.5rem 0}
.dd:hover .ddm,.dd:focus-within .ddm{opacity:1;visibility:visible}.ddm a{padding:.75rem 1.25rem;font-size:.875rem;font-weight:500}.ddm a:hover{background:#1e293b}
.navr{display:flex;align-items:center;gap:1.5rem;border-left:1px solid #334155;padding-left:1.5rem}.ph{color:#fff!important;font-weight:700}.ph .i{color:var(--bl)}
.btnw,.btn,.btno,.btnb{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-weight:700;border-radius:6px;text-decoration:none;padding:.5rem 1.5rem;box-shadow:0 10px 15px -3px #0003;border:0;cursor:pointer;font-size:1rem}
.btnw{background:#fff;color:var(--p)!important}.btnw:hover{background:#f1f5f9}.btn{background:var(--p);color:#fff!important;padding:1rem 2rem;font-size:1.1rem}.btnb{background:var(--b);color:#fff!important;padding:.75rem 1.5rem}.btno{border:2px solid #fff;color:#fff!important;background:transparent}.lg{padding:1rem 2rem;font-size:1.125rem}.wide{width:100%}
.burger{display:none;color:#fff;cursor:pointer}
.hero{background:var(--h);padding:4rem 0;overflow:hidden;position:relative}.g2h{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.pill{display:inline-block;padding:.25rem .75rem;background:#1e3a8a80;border:1px solid #60a5fa4d;color:#bfdbfe;border-radius:99px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:1.5rem}
.hero h1{color:#fff;font-size:3.75rem;font-weight:700;line-height:1.15}.gs{background:linear-gradient(90deg,#e2e8f0,#94a3b8);-webkit-background-clip:text;background-clip:text;color:transparent}.gb{background:linear-gradient(90deg,#93c5fd,#dbeafe);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:1.2rem;color:#e2e8f0;max-width:36rem}.lead.dk{color:var(--m);max-width:none}.btns{display:flex;gap:1rem;flex-wrap:wrap;margin:2rem 0}
.promo{display:inline-flex;align-items:center;gap:.75rem;background:#2563eb33;border:1px solid #60a5fa66;border-radius:8px;padding:.75rem;color:#dbeafe;text-decoration:none;font-size:.875rem;max-width:28rem}.promo b{color:#fff;text-transform:uppercase;letter-spacing:.03em}.promo em{color:#facc15;font-style:normal;font-weight:800}.pi{background:#3b82f6;border-radius:6px;padding:.5rem;font-size:1.25rem}
.vid{border-radius:1rem;overflow:hidden;aspect-ratio:720/538;box-shadow:0 0 0 1px #47556980,0 25px 50px -12px #000a,0 0 30px #3b82f64d;background:var(--s)}.vid video{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.stats{background:var(--s);padding:1.25rem 0;border-bottom:1px solid #1e293b}.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.stats div{text-align:center;padding:1rem}.stats b{display:flex;justify-content:center;align-items:center;gap:.5rem;color:#fff;font-size:1.9rem;font-weight:800}.stats b .i{color:var(--bl)}.stats span{font-size:.75rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em}
.sec{padding:4rem 0}.sec.alt{background:#f1f5f9}.sec.white{background:#fff;border-top:1px solid #e2e8f0}.sec.white>.wrap>.i{color:#3b82f6;margin:0 auto 1rem}
.shot img{border-radius:.75rem;box-shadow:0 25px 50px -12px #0005;aspect-ratio:16/9;object-fit:cover;width:100%;border:1px solid #e2e8f0}
.feat{display:flex;gap:1rem;margin-top:1.5rem}.fic{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:6px;background:#dbeafe;color:#1e40af;flex-shrink:0}.feat h3{font-size:1.25rem;margin:0}.feat p{color:var(--m);margin:.5rem 0 0}
.lnk{color:#1d4ed8;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:.25rem}
.big5{font-size:1.5rem;font-weight:700;display:flex;justify-content:center;align-items:center;gap:.5rem;margin:0}.stars{color:#facc15;display:inline-flex}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.g2{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.card{background:#fff;border-radius:1rem;box-shadow:0 20px 25px -5px #0000001a;border:1px solid #f1f5f9;padding:2rem}.revs blockquote{margin:0}.revs p{font-style:italic;color:#334155}.revs footer{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.av{width:40px;height:40px;border-radius:50%;background:#dbeafe;color:#1e40af;font-weight:700;display:flex;align-items:center;justify-content:center}.revs small{color:#64748b;width:100%;padding-left:3rem;margin-top:-.75rem}
.pillbtn{display:inline-flex;align-items:center;gap:.4rem;background:#fff;padding:.75rem 1.5rem;border-radius:99px;box-shadow:0 4px 6px #0001;border:1px solid #e2e8f0;font-weight:700;text-decoration:none}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.chips.l{justify-content:flex-start}.chips li{padding:.6rem 1.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:99px;font-size:.875rem;font-weight:600;color:#334155;display:flex;gap:.5rem;align-items:center}.chips .i{color:#3b82f6}
.sv{text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:.3s;padding:0;overflow:hidden}.sv:hover{transform:translateY(-4px);box-shadow:0 25px 50px -12px #0003}.svs h3,.g4.svcs h3{padding:0}.g4.svcs .sv{padding:1.5rem}.svimg img{height:224px;width:100%;object-fit:cover;object-position:62% 60%}.svb{padding:2rem;display:flex;flex-direction:column;flex:1}.svb p{color:var(--m);font-size:1.1rem;flex:1}.svbig{margin-top:4rem}.svbig h2{font-size:1.5rem}
.pc img{aspect-ratio:4/3;object-fit:cover;width:100%}
.ph-head{position:relative;background:var(--p);padding:4rem 1rem;text-align:center;border-bottom:4px solid var(--bl);overflow:hidden}.ph-head .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.2;mix-blend-mode:screen}.ph-head picture{position:absolute;inset:0}.phc{position:relative}.ph-head h1{color:#fff;font-size:3rem;font-weight:800;text-shadow:0 4px 8px #0006}.ph-head p{color:#cbd5e1;font-size:1.25rem;max-width:42rem;margin:1rem auto 0}.ph-head.slim h1{font-size:2.4rem}.crumbs a{color:#cbd5e1}
.narrow.card,.wrap.narrow{margin-top:3rem}.prose{font-size:1.1rem;color:#334155}.prose h3{margin-top:2rem}.lead-img img{width:100%;height:384px;object-fit:cover;border-radius:.75rem;margin-bottom:2.5rem}
.q{background:#f8fafc;border-left:4px solid var(--b);padding:1.5rem;margin:2rem 0;border-radius:0 8px 8px 0;font-style:italic;font-weight:500;color:#1e293b}.q.b{border-color:var(--p);font-style:normal;font-weight:700}.q.l{border-color:var(--bl);font-style:normal}.q.l p{font-size:.9rem}
.big{font-size:1.25rem;font-weight:700;color:#0f172a;border-top:1px solid #e2e8f0;padding-top:2rem}
.checks{list-style:none;padding:0}.checks li{display:flex;gap:.75rem;align-items:center;margin:.75rem 0}.checks .i{color:var(--b)}
.dark{background:#1e293b;color:#cbd5e1;border-radius:.75rem;padding:1.5rem;font-size:.9rem}.dark h4{color:#93c5fd;font-size:1.25rem}.lite{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.75rem;padding:1.5rem;font-size:.9rem}.lite h4{font-size:1.25rem}
.back{display:inline-block;color:#2563eb;font-weight:700;text-decoration:none;margin-bottom:2rem}
.resto{margin-top:5rem;background:#0f172a;border-radius:1rem;overflow:hidden;display:grid;grid-template-columns:1fr 1fr}.resto>div:first-child{padding:4rem}.resto h2{color:#fff}.resto p,.resto li{color:#cbd5e1;font-size:1.1rem}.resto .i{color:var(--bl)}
.badge{display:flex;align-items:center;justify-content:center;min-height:400px;background:radial-gradient(circle,#2B3B4C,#0f172a)}.badge div{width:18rem;height:18rem;border-radius:50%;border:4px solid #94a3b880;background:#1A243099;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.badge b{color:#fff;font-size:1.5rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.badge i{width:3rem;height:4px;background:#3b82f6;margin:.5rem}.badge span{color:#e2e8f0;font-size:1.25rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.badge small{color:#94a3b8;font-family:monospace;letter-spacing:.2em;margin-top:1rem}.badge .i{color:var(--bl);margin-bottom:1rem}
.est{background:var(--p);padding:4rem 0;margin-top:3rem}.estbox{background:#fff;border-radius:1rem;overflow:hidden;display:grid;grid-template-columns:2fr 3fr;box-shadow:0 25px 50px -12px #0006}.estl{background:#26354393;background:var(--p);filter:brightness(.92);color:#fff;padding:3rem}.estl h2{color:#fff;font-size:1.9rem}.estl p{color:#e2e8f0;font-size:1.1rem}.estl li{color:#f1f5f9}.estl .checks .i{color:var(--bl)}.estr{background:#f8fafc;padding:3rem}
.vet{display:flex;gap:1rem;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:1.25rem;margin-top:1rem}.vet h4{color:#fff;font-size:.875rem;text-transform:uppercase;letter-spacing:.03em;margin:0 0 .25rem}.vet p{font-size:.875rem!important;color:#dbeafe!important;margin:0}.vet .i{color:#93c5fd}.vet.light{background:#eff6ff;border-color:#dbeafe;margin:0 0 2rem}.vet.light h4{color:#0f172a}.vet.light p{color:var(--m)!important}.vet.light .i{color:var(--b)}
.form label{display:block;font-size:.875rem;font-weight:500;color:#334155;margin-bottom:1.5rem}.form input,.form textarea{display:block;width:100%;margin-top:.5rem;padding:.75rem 1rem;border:1px solid #cbd5e1;border-radius:6px;font:inherit;background:#fff}.form textarea{resize:none}.form .g2{gap:1.5rem}.form .g2 label{margin-bottom:1.5rem}.fine{font-size:.75rem;text-align:center;color:#64748b}
.contact{margin-top:4rem}.ci{display:flex;gap:1rem;background:#fff;padding:1rem;border-radius:8px;border:1px solid #f1f5f9;margin-bottom:1.5rem;box-shadow:0 1px 2px #0001}.ci>.i{color:var(--b)}.ci h4{margin:0;font-size:1.1rem}.ci p{margin:.25rem 0 0;color:var(--m)}.xl{font-size:1.25rem}
.map{position:relative;height:16rem;border-radius:.75rem;overflow:hidden;border:1px solid #cbd5e1;background:#e2e8f0}.map iframe{width:100%;height:100%;border:0}.mapbtn{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);background:var(--p);color:#fff;padding:.5rem 1.5rem;border-radius:99px;font-weight:700;text-decoration:none;white-space:nowrap;display:flex;gap:.5rem;align-items:center}
.foot{background:var(--s);color:#fff;padding:3rem 0 2rem;margin-top:0}.foot p,.foot li{color:#94a3b8;font-size:.9rem}.fl{font-size:1.5rem!important;font-weight:700;letter-spacing:.05em;color:#fff!important}.fl span{font-weight:300}.foot h4{color:#fff;font-size:1.1rem;border-bottom:1px solid #334155;padding-bottom:.5rem}.foot ul{list-style:none;padding:0}.foot li{margin:.5rem 0}.foot a{color:#94a3b8;text-decoration:none}.foot a:hover{color:#fff}.fi li{display:flex;gap:.5rem}.fi .i{color:#cbd5e1;margin-top:.2rem}.copy{text-align:center;border-top:1px solid #334155;margin:2rem 1rem 0;padding-top:2rem;font-size:.875rem!important;color:#64748b!important}
.fab{display:none;position:fixed;bottom:1.5rem;right:1.5rem;z-index:60;background:var(--b);color:#fff;padding:1rem;border-radius:50%;box-shadow:0 8px 30px #0000004d}
.post h2{margin-top:2rem}.plist li{margin:.6rem 0}.gal{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.5rem 0}.gal figure{margin:0}.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#e2e8f0}.gal figcaption{font-size:.8rem;font-weight:700;text-transform:uppercase;color:#64748b;margin-top:.25rem}
.ctabox{background:var(--p);color:#fff;border-radius:1rem;padding:2rem;margin-top:2rem}.ctabox h2{color:#fff;margin-top:0}.ctabox a:not(.btn){color:#bfdbfe}.ctabox .btn{background:#fff;color:var(--p)!important}.related{margin-top:2rem}.related ul{display:flex;flex-wrap:wrap;gap:.75rem;list-style:none;padding:0}.related a{display:block;padding:.5rem 1rem;border:1px solid #cbd5e1;border-radius:99px;text-decoration:none;font-weight:600}
.gbadge{display:inline-flex;align-items:center;gap:.45rem;background:#fff;color:#0f172a;border-radius:99px;padding:.4rem .85rem;font-size:.85rem;font-weight:700;text-decoration:none;box-shadow:0 2px 6px #0003;margin:0 0 .9rem;max-width:100%;flex-wrap:wrap}.gbadge:hover{box-shadow:0 3px 10px #0005}.gbadge .stars{gap:1px}.glogo{flex:none}
.revs4 p{font-style:italic;color:#334155}.revs4 footer{display:flex;align-items:center;gap:.5rem}.revs4 .card{padding:1.5rem}.rvn{display:flex;flex-direction:column;line-height:1.3}.rvn time{font-size:.8rem;color:#64748b}#reviews{scroll-margin-top:90px}
.revs4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:2rem}.revs4 .rv{margin:0;display:flex;flex-direction:column}.revs4 .rv p{flex:1}.revcta{display:flex;justify-content:center;align-items:center;gap:1.25rem;flex-wrap:wrap}.big5 .glogo{width:24px;height:24px}
@media(max-width:1279px){.revs4{grid-template-columns:repeat(3,1fr)}.revs4 .rv:nth-child(4){display:none}}
@media(max-width:767px){.revs4{grid-template-columns:1fr}.gbadge{font-size:.8rem}}
@media(max-width:1023px){.g2h,.estbox,.resto{grid-template-columns:1fr}.ph{display:none!important}.g3{grid-template-columns:1fr 1fr}.revs .card:nth-child(3){display:none}.hero h1{font-size:2.6rem}.g4.svcs{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.top{display:none}.burger{display:block}.menu{display:none;position:absolute;top:80px;left:0;right:0;background:var(--p);flex-direction:column;align-items:stretch;gap:0;padding:.5rem;border-top:1px solid #334155}#mm:checked~.menu{display:flex}.menu>a,.dd>a{padding:.6rem .75rem}.dd{padding:0;flex-wrap:wrap}.car{display:none}.ddm{position:static;opacity:1;visibility:visible;width:100%;margin:0 0 0 1rem;border:0;background:#1e293b80}.navr{border:0;padding:.5rem 0;flex-direction:column}.navr .btnw{width:100%}
.g2,.g3,.g4.svcs,.form .g2,.gal{grid-template-columns:1fr}.g4{grid-template-columns:1fr 1fr}.revs .card:nth-child(3){display:block}.hero{padding:2rem 0}.hero h1{font-size:2.25rem}.ph-head h1{font-size:2.25rem}.card,.estl,.estr,.resto>div:first-child{padding:1.5rem}.lead-img img{height:256px}.fab{display:flex}.sec{padding:3rem 0}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.fh{color:#fff;font-size:1.1rem;border-bottom:1px solid #334155;padding-bottom:.5rem}.copy{color:#94a3b8!important}.vh{color:#fff!important;font-weight:700;font-size:.875rem!important;text-transform:uppercase;letter-spacing:.03em;margin:0 0 .25rem!important}.vet.light .vh{color:#0f172a!important}
.mapload{width:100%;height:100%;border:0;cursor:pointer;font:700 1.1rem system-ui;color:#2B3B4C;background:repeating-linear-gradient(45deg,#e2e8f0 0 20px,#f1f5f9 20px 40px)}.mapload small{font-weight:400;color:#475569}
.g2 picture img,.shot picture img,figure picture img{width:100%;height:auto;border-radius:8px}

.restoimg{min-height:400px;position:relative}.restoimg picture,.restoimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 60%}
@media(max-width:1023px){.restoimg{min-height:0;position:static;aspect-ratio:16/9}.restoimg picture,.restoimg img{position:static}}
.hero h1 .h1s{display:block;font-size:.62em;margin-top:.5rem;line-height:1.2}.qest{padding-top:2rem;margin-top:0}.qform textarea{min-height:0}
.mbar{display:none}@media(max-width:767px){.fab{display:none!important}.mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:70;gap:.5rem;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom));background:#0f172a;box-shadow:0 -4px 20px #0000004d}.mbar a{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.8rem .5rem;border-radius:8px;font-weight:700;text-decoration:none;font-size:.95rem;color:#fff}.mcall{background:var(--b)}.mest{background:#facc15;color:#0f172a!important}body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}

/* services strip (accent = chrome silver #CDCFD7 sampled from logo lettering; bg = logo navy) */
.sstrip{--acc:#CDCFD7;background:linear-gradient(135deg,#222739 0%,#2f384c 55%,#445368 100%);padding:2.5rem 0;border-top:3px solid var(--acc)}
.sstrip-h{color:var(--acc);font-size:.85rem;text-transform:uppercase;letter-spacing:.18em;font-weight:800;margin:0 0 1.25rem;text-align:center}
.sstrip-g{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.sstrip-g a{display:flex;flex-direction:column;gap:.5rem;height:100%;padding:1.25rem;border-radius:12px;background:#ffffff0f;border:1px solid #ffffff24;color:#fff;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s}
.sstrip-g a:hover,.sstrip-g a:focus-visible{transform:translateY(-4px);box-shadow:0 18px 30px -12px #000c;background:#ffffff1a;border-color:var(--acc)}
.sstrip-g a:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.ssi{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:10px;background:var(--acc);color:#222739}
.sstrip-g b{font-size:1.2rem;line-height:1.25;font-weight:800}.ssd{font-size:.9rem;color:#dbe1ea;line-height:1.45}
@media(max-width:1100px){.sstrip-g{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.sstrip{padding:2rem 0}.sstrip-g{grid-template-columns:1fr 1fr;gap:.75rem}.sstrip-g li:last-child{grid-column:1/-1}.sstrip-g a{padding:1rem}.sstrip-g b{font-size:1.05rem}.ssd{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.sstrip-g a{transition:background .2s,border-color .2s}.sstrip-g a:hover,.sstrip-g a:focus-visible{transform:none}}

/* about: surfboard + front office pair, columns sized by aspect (4:3 vs 3:4 -> 16fr:9fr) so both share height, uncropped */
@media(min-width:1024px){.about-pair{grid-template-columns:16fr 9fr;align-items:start}.about-pair picture img{width:100%;height:auto}}

/* restoration visual: dimmed image + gradient + vintage badge (from original React site) */
.restoimg{display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0f172a;padding:2rem}.restoimg img{opacity:.5;transition:opacity .7s}.restoimg:hover img{opacity:.7}
.resto-ov{position:absolute;inset:0;background:linear-gradient(to top,#1a2430cc,#1a243033);pointer-events:none}
.resto-badge{position:relative;z-index:1;width:18rem;height:18rem;border-radius:50%;border:4px solid #94a3b880;background:#1a243099;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem;transition:transform .5s}
.resto-badge:hover{transform:scale(1.05)}.resto-badge::before{content:"";position:absolute;inset:0;margin:.5rem;border:1px solid #fff3;border-radius:50%}
.resto-badge svg{color:#60a5fa;margin-bottom:1rem}.rb1{font-size:1.5rem;font-weight:900;color:#fff;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.25rem}.rb-bar{width:3rem;height:.25rem;background:#3b82f6;margin-bottom:.5rem}.rb2{font-size:1.25rem;font-weight:700;color:#e2e8f0;letter-spacing:.05em;text-transform:uppercase}.rb3{color:#94a3b8;font-size:.75rem;font-family:ui-monospace,monospace;letter-spacing:.1em;margin-top:1rem}
@media(max-width:1023px){.restoimg{position:relative;min-height:400px;aspect-ratio:auto}.restoimg picture,.restoimg img{position:absolute;inset:0;width:100%;height:100%}.resto-badge{width:15rem;height:15rem}}

/* homepage (promoted from preview 2026-10-21): hero side column, compact trust bar under hero, combined write-up + estimate section */
.stats{padding:.5rem 0}
.stats .g4>div{padding:.5rem}
.hero .hero-side{display:flex;flex-direction:column;gap:1.25rem;align-items:flex-start}
.hero .hero-side .vid{align-self:stretch;margin:0}
.hero .hero-side .gbadge,.hero .hero-side .promo{margin:0}
.hest{background:#f1f5f9;padding:4rem 0}
.hest-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,580px);gap:3rem;align-items:start}
.hest-txt h2{margin-top:0}
.hest-card{background:#fff;border-radius:1rem;padding:2rem;box-shadow:0 20px 40px -16px #0004;border-top:4px solid var(--b)}
.hest-card h3{margin:0 0 .25rem;font-size:1.5rem}
.hest-sub{color:var(--m);margin:0 0 1rem}@media(max-width:1023px){.hest-in{grid-template-columns:1fr;gap:2rem}
.hest-card{max-width:640px}}@media(max-width:767px){.hest{padding:2.5rem 0}
.hest-card{padding:1.5rem}}
/* footer social icons */
.social{display:flex;gap:.75rem;margin-top:1rem;padding:0;list-style:none}.social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#1e293b;color:#cbd5e1;transition:background .2s,color .2s}.social a:hover,.social a:focus-visible{background:var(--b);color:#fff}.social svg{width:20px;height:20px;fill:currentColor}

/* homepage services strip: projects link (light on navy) */
.sstrip-more{margin:1.5rem 0 0}.sstrip-more .lnk{color:var(--acc)}.sstrip-more .lnk:hover,.sstrip-more .lnk:focus-visible{color:#fff;text-decoration:underline}
/* FAQ */
.faq-toc ul{list-style:none;padding:0;margin:0 0 1.5rem;display:flex;flex-wrap:wrap;gap:.5rem}
.faq-toc a{display:inline-block;padding:.4rem .9rem;border-radius:999px;background:#f1f5f9;color:var(--p);font-size:.95rem;font-weight:600;text-decoration:none}
.faq-toc a:hover,.faq-toc a:focus-visible{background:var(--b);color:#fff}
.faq-sec{scroll-margin-top:6rem}.faq-sec h2{margin:2rem 0 .75rem}
.faq{border:1px solid #e2e8f0;border-radius:.75rem;margin:.6rem 0;background:#fff}
.faq summary{cursor:pointer;padding:1rem 2.5rem 1rem 1.1rem;font-weight:700;color:var(--h);list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:1.1rem;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--b)}
.faq[open] summary::after{content:"\2212"}
.faq summary:focus-visible{outline:3px solid var(--bl);outline-offset:2px;border-radius:.75rem}
.faq p{margin:0;padding:0 1.1rem 1.1rem}
.faqs .ctabox{margin-top:2rem}
.tl-steps{padding-left:1.4rem;margin:1rem 0}.tl-steps li{margin:.6rem 0;padding-left:.3rem}.tl-steps li::marker{color:var(--b);font-weight:800}

img.lead-logo{width:auto;height:80px!important;max-height:80px;object-fit:contain;border-radius:6px;margin-bottom:1.5rem}
