:root{--green:#064B35;--black:#080B09;--char:#151A17;--gold:#D99A26;--champ:#E8B85C;--ivory:#FFF9EA;--white:#fff;--sage:#A6B9AA;--ease:cubic-bezier(.2,.7,.2,1);--hh:112px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--hh)}
body{margin:0;font:400 1.0625rem/1.65 var(--sans);color:var(--ivory);background:var(--black);overflow-x:hidden}
img,video{max-width:100%;height:auto;display:block}a{color:var(--champ)}h1,h2,h3{font-family:var(--serif);line-height:1.08;margin:0 0 .5em;font-weight:700}
h1{font-size:clamp(2.8rem,8vw,6.5rem)}h2{font-size:clamp(2rem,4.5vw,3.4rem)}h3{font-size:1.4rem}em{color:var(--gold);font-style:italic}
.wrap{width:min(1180px,100% - 2.5rem);margin:0 auto}.sr,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip:focus{position:fixed;z-index:99;top:8px;left:8px;background:var(--gold);color:#000;padding:.6rem 1rem}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.8rem;color:var(--gold);margin:0 0 1rem}
.eyebrow:before{content:"";display:inline-block;width:2.5rem;height:1px;background:var(--gold);vertical-align:middle;margin-right:.8rem}
/* header: logo shown unaltered on its own ivory ground */
.site-header{position:sticky;top:0;z-index:50;background:var(--ivory);border-bottom:2px solid var(--gold);transition:box-shadow .3s}
.site-header.solid{box-shadow:0 8px 30px #0006}.bar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.4rem 0}
.brand img{height:clamp(84px,11vw,112px);width:auto}
nav ul{display:flex;gap:1.4rem;list-style:none;margin:0;padding:0}#menu{display:flex;align-items:center;gap:1.4rem}
#menu a:not(.btn){color:var(--green);text-decoration:none;font-weight:600;font-size:.95rem;position:relative;padding:.3rem 0}
#menu li a:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
#menu li a:hover:after,#menu a[aria-current]:after{transform:scaleX(1)}.tel{white-space:nowrap}
.burger{display:none;background:var(--green);border:0;border-radius:4px;width:48px;height:48px;padding:12px;cursor:pointer}.burger i{display:block;height:2px;background:var(--ivory);margin:6px 0;transition:.3s}
.btn{display:inline-block;padding:.9rem 1.6rem;border:1px solid var(--gold);text-decoration:none;font-weight:700;letter-spacing:.04em;cursor:pointer;font-size:1rem;transition:transform .3s var(--ease),background .3s,color .3s;font-family:inherit}
.btn:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:#1a1200}.gold:hover{background:var(--champ)}.ghost{background:transparent;color:var(--ivory)}.ghost:hover{background:var(--gold);color:#000}
.green{background:var(--green);color:var(--ivory);border-color:var(--green)}.ghost.dk{color:var(--green);border-color:var(--green)}
section{padding:clamp(3.5rem,9vw,7rem) 0;position:relative}
.dark{background:radial-gradient(1200px 600px at 85% -10%,#0a6a4b55,transparent),linear-gradient(180deg,var(--green) -40%,var(--black) 60%);border-top:1px solid #D99A2655}
.dark:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' fill='none' stroke='%23D99A26' stroke-width='1.2'%3E%3Cpath d='M60 20 71 49 100 60 71 71 60 100 49 71 20 60 49 49Z'/%3E%3Ccircle cx='60' cy='60' r='54'/%3E%3C/svg%3E")}
.dark>*{position:relative}.ivory{background:var(--ivory);color:#16201a}.ivory h2,.ivory h3{color:var(--green)}.ivory a{color:var(--green)}.ivory .btn.green{color:var(--ivory)}.ivory em{color:#9a6a0d}
.hero{padding-top:3rem;min-height:calc(100svh - var(--hh));display:grid;align-items:center}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:center}
.hero-logo{background:var(--ivory);border:2px solid var(--gold);padding:1rem;box-shadow:14px 14px 0 #D99A2655,0 30px 80px #000a;transform:rotate(1.2deg)}.hero-logo img{width:100%}
.kicker{color:var(--champ);letter-spacing:.2em;text-transform:uppercase;font-size:.9rem}.lead{font-size:1.25rem;max-width:36em;color:#e9e4d2}.cta-row{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}
.tags{display:flex;gap:.6rem;flex-wrap:wrap;list-style:none;padding:0}.tags li{border:1px solid #D99A2688;padding:.25rem .9rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--champ)}
.scroll{position:absolute;bottom:1.2rem;left:50%;width:26px;height:42px;border:2px solid var(--gold);border-radius:14px}.scroll span{position:absolute;left:10px;top:7px;width:2px;height:8px;background:var(--gold);animation:dot 1.8s infinite}
@keyframes dot{60%{transform:translateY(14px);opacity:0}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}.two{display:grid;grid-template-columns:1fr 1fr;gap:0 3rem}
.check{list-style:none;padding:0}.check li{padding:.45rem 0 .45rem 2rem;position:relative}.check li:before{content:"";position:absolute;left:0;top:.95rem;width:12px;height:12px;background:var(--gold);transform:rotate(45deg) scale(.8)}
.frame{margin:0;border:1px solid var(--gold);padding:.6rem;position:relative}.frame:after{content:"";position:absolute;inset:-14px -14px 14px 14px;border:1px solid #D99A2666;z-index:-1}.frame img{width:100%;object-fit:cover}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.card{display:block;background:var(--green);color:var(--ivory)!important;padding:2.5rem;text-decoration:none;border-bottom:4px solid var(--gold);transition:transform .4s var(--ease)}.card:hover{transform:translateY(-6px)}
.card h3{color:var(--ivory)!important;font-size:2rem}.num{font:italic 4rem var(--serif);color:var(--gold);display:block}.card b{color:var(--champ)}
.prices{list-style:none;padding:0;margin:0 0 1.5rem}.prices li{display:flex;gap:1rem;align-items:baseline;justify-content:space-between;padding:.85rem 0;border-bottom:1px solid #D99A2655}.prices b{color:var(--champ);font:700 1.3rem var(--serif);white-space:nowrap}
.prices.lt b{color:var(--green)}.prices.lt li{border-color:#064B3544}.hp li{display:grid;grid-template-columns:1fr auto auto auto;font-size:.95rem}.hp i{opacity:.75;font-style:normal}.mini{font-size:.8rem;border:1px solid var(--gold);padding:.15rem .6rem;text-decoration:none}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:2.5rem}
.steps{counter-reset:s;list-style:none;padding:0;border-left:1px solid var(--gold);margin-left:1rem}.steps li{counter-increment:s;padding:0 0 1.8rem 2.5rem;position:relative}.steps li:before{content:"0" counter(s);position:absolute;left:-1.1rem;top:-.2rem;background:var(--ivory);color:#9a6a0d;font:italic 1.6rem var(--serif);padding:.1rem}.steps b{display:block;color:var(--green);font:700 1.3rem var(--serif)}
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.strip img{aspect-ratio:1;object-fit:cover;border:1px solid #D99A2688}
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}blockquote{margin:0;padding:1.5rem 0 0;border-top:2px solid var(--gold)}blockquote p{font:italic 1.25rem/1.5 var(--serif)}.big blockquote p{font-size:1.45rem}footer cite,blockquote footer{font-weight:700;color:var(--green)}
.phero{padding-top:clamp(3rem,7vw,5rem)}.phero h1{font-size:clamp(2.6rem,7vw,5.5rem)}.crumbs{font-size:.85rem;margin-bottom:2rem;color:var(--sage)}.crumbs a{color:var(--sage)}
.narrow{max-width:820px}.note,.note2{font-size:.95rem;opacity:.85;margin-top:1.5rem}
.regions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.region{padding:0;border-top:3px solid var(--gold)}.region h2{font-size:1.9rem;margin-top:1rem}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.chips li{border:1px solid var(--green);padding:.3rem .9rem;color:var(--green)}.soon{font:italic 1.3rem var(--serif);color:#9a6a0d}
.masonry{list-style:none;padding:0;columns:3 260px;column-gap:1rem}.masonry li{break-inside:avoid;margin-bottom:1rem}.lb{all:unset;cursor:zoom-in;display:block;position:relative;overflow:hidden;width:100%}.lb img{width:100%;transition:transform .6s var(--ease)}.lb:hover img{transform:scale(1.05)}
.lb span{position:absolute;left:0;bottom:0;right:0;background:linear-gradient(transparent,#000c);color:#fff;padding:1.5rem .8rem .6rem}.lb:focus-visible{outline:3px solid var(--gold)}
dialog{border:0;background:#000e;color:#fff;max-width:100vw;max-height:100vh;width:100%;height:100%;padding:1rem}dialog[open]{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}dialog::backdrop{background:#000}
dialog figure{margin:0;text-align:center}dialog img{max-height:80vh;margin:auto}dialog button{background:none;border:1px solid var(--gold);color:var(--gold);font-size:2rem;width:52px;height:52px;cursor:pointer}dialog .x{position:absolute;top:1rem;right:1rem}
.vids{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.vids video{width:100%;background:#000}.vids figure{margin:0}
form label{display:block;margin-bottom:1.1rem;font-weight:600}input,select,textarea{display:block;width:100%;margin-top:.3rem;padding:.8rem;font:inherit;border:1px solid #064B3588;background:#fff;color:#111;min-height:48px}
input[type=radio],input[type=checkbox]{display:inline-block;width:auto;min-height:0;margin-right:.4rem;accent-color:var(--gold);transform:scale(1.3)}.chk{font-weight:400}
.signoff fieldset{border:1px solid var(--gold);padding:1.5rem}.signoff legend{font:700 1.4rem var(--serif);color:var(--gold)}.q{margin-bottom:1.2rem}.signoff .q label{display:inline;margin-right:1.5rem;font-weight:400}.warn{color:var(--champ)}
.err{color:#b3261e;font-size:.9rem;display:block;font-weight:600}.dark .err{color:#ffb4a8}.status{font-weight:700}
.legal{font-size:.85rem;opacity:.7;padding-top:2rem}.foot{padding-bottom:5rem}.grid4{display:grid;grid-template-columns:1.2fr 1.2fr 1fr 1fr;gap:2rem}.flogo{width:min(260px,100%);background:var(--ivory);padding:.4rem;border:1px solid var(--gold)}.plain{list-style:none;padding:0}address{font-style:normal}.hours dt{font-weight:700;color:var(--champ)}.hours dd{margin:0 0 .6rem}.foot h2{font-size:1.2rem}
.cta{text-align:center;background:linear-gradient(135deg,var(--green),var(--black))}.cta h2{font-size:clamp(2.4rem,7vw,5rem)}
.callbar{display:none}
[data-r]{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform .9s var(--ease)}[data-r].in{opacity:1;transform:none}
@media(max-width:960px){:root{--hh:96px}.burger{display:block}#menu{position:fixed;inset:0 0 0 auto;width:min(86vw,360px);background:var(--green);flex-direction:column;align-items:flex-start;padding:7rem 2rem 2rem;transform:translateX(105%);transition:transform .45s var(--ease);visibility:hidden}
#menu.open{transform:none;visibility:visible}#menu ul{flex-direction:column;gap:.4rem}#menu a:not(.btn){color:var(--ivory);font-size:1.3rem}.burger{position:relative;z-index:60}
.hero-grid,.split,.cards,.two,.grid4{grid-template-columns:1fr}.hero-logo{order:-1;transform:none}.strip{grid-template-columns:repeat(2,1fr)}.hp li{grid-template-columns:1fr auto auto}.hp .mini{grid-column:1/-1;justify-self:start}
.callbar{display:block;position:fixed;z-index:40;left:0;right:0;bottom:0;background:var(--gold);color:#1a1200;text-align:center;font-weight:700;padding:.9rem;text-decoration:none}.scroll{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-r]{opacity:1;transform:none}}
/* ===== v2: refined layer ===== */
:root{--serif:"Playfair Display",Georgia,"Times New Roman",serif;--sans:Inter,"Helvetica Neue",Arial,sans-serif;--hh:132px;--gold-ink:#8a5d00}
body{font-family:var(--sans)}h1,h2,h3{text-wrap:balance;letter-spacing:-.01em}
section{padding:clamp(3rem,7vw,6rem) 0}.brand img{height:clamp(92px,12vw,128px)}
.ivory .eyebrow{color:var(--gold-ink)}.ivory .eyebrow:before{background:var(--gold-ink)}.ivory .btn.gold{color:#1a1200}.ivory .btn.green{color:var(--ivory)}.ivory .note,.ivory .note2{color:#2b3a31;opacity:1}
.dark,.dark p,.dark li{color:var(--ivory)}.dark a:not(.btn){color:var(--champ)}.dark .btn.ghost{color:var(--ivory)}.dark .btn.ghost:hover{color:#000}.dark .btn.gold{color:#1a1200}
.dark .chips li{color:var(--ivory);border-color:#D99A2699}.dark .soon{color:var(--champ)}.dark .region{border-color:#D99A26}.dark .num{color:var(--champ)}
.ivory .chips li{color:var(--green)}.ivory .soon{color:var(--gold-ink)}.ivory .num{color:var(--gold-ink)}
#introov{display:none;position:fixed;inset:0;z-index:200;background:radial-gradient(700px 400px at 50% 55%,#0a6a4b66,var(--black) 70%);place-items:center;align-content:center;gap:1.2rem;text-align:center}
.intro #introov{display:grid}#introov p{font:700 clamp(1.1rem,4vw,2rem)/1 var(--serif);letter-spacing:.35em;color:var(--ivory);margin:0}
#wipe{position:fixed;inset:0;z-index:190;background:linear-gradient(180deg,var(--green),var(--black));border-top:3px solid var(--gold);transform:scaleY(0);transform-origin:bottom;pointer-events:none}
.wrap{position:relative;z-index:2}
/* hero */
.hero{display:grid;align-items:center;min-height:min(86svh,820px);padding:clamp(2.5rem,6vw,5rem) 0;overflow:hidden}
.hero-bg{position:absolute;inset:-6% 0;opacity:.3}.hero-bg img{width:100%;height:100%;object-fit:cover}.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--black),#064B35aa 60%,var(--black))}
.glow{position:absolute;left:50%;top:5%;width:60vw;height:60vw;margin-left:-30vw;background:radial-gradient(closest-side,#D99A2628,transparent);pointer-events:none}
.hero-grid{grid-template-columns:1.05fr 1fr;gap:clamp(2rem,5vw,4rem)}.hero h1{font-size:clamp(2.6rem,6.2vw,5.4rem)}.hero-logo{transform:none;padding:.8rem}
/* cleaning transformation: scroll-scrubbed, not pinned */
.clean{padding:0;position:relative;display:grid;align-items:end;min-height:clamp(440px,78vh,760px);overflow:hidden;background:#0b1410;border-top:2px solid var(--gold);border-bottom:2px solid var(--gold);color:var(--ivory)}
.clean>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dirty{filter:sepia(1) brightness(.38) contrast(1.5) saturate(1.8) hue-rotate(-12deg);clip-path:inset(0 0 0 100%)}
.sweep{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent calc(100% - 140px),#E8B85C44 calc(100% - 3px),#E8B85C);opacity:0;mix-blend-mode:screen}
.shade{position:absolute;inset:0;background:linear-gradient(0deg,#080B09f2 8%,#080B0970 50%,transparent)}
.clean-copy{padding:4rem 0 clamp(2rem,5vw,3.5rem)}.clean-copy h2{font-size:clamp(2.4rem,7vw,5.5rem)}.clean .lead{max-width:34em}
/* services panels */
.panels{display:grid;gap:clamp(2rem,5vw,3.5rem);margin-top:2.5rem;padding:0 clamp(1rem,4vw,4rem)}
.panel{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:clamp(1.2rem,3vw,2.5rem);text-decoration:none;color:#16201a!important}.panel:nth-child(even){grid-template-columns:1fr 1.4fr}.panel:nth-child(even) .pimg{order:2}
.pimg{overflow:hidden;aspect-ratio:16/9;background:var(--green)}.pimg img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.panel:hover img{transform:scale(1.05)}.bbq{height:100%;display:grid;place-items:center}.bbq svg{width:28%}
.ptxt h3{font-size:clamp(1.7rem,3.6vw,2.8rem);margin-bottom:.3em}.ptxt .num{font:italic 700 2.6rem/1 var(--serif);display:block;margin-bottom:.4rem}.ptxt p{margin:.2rem 0 1rem}.ptxt b{color:var(--green);border-bottom:2px solid var(--gold)}
/* line drawing */
.rule{display:block;width:min(240px,60%);height:12px;margin:.2rem 0 1.6rem;overflow:visible}.rule path{stroke:var(--gold);stroke-width:1.5;fill:none}.ivory .rule path{stroke:var(--gold-ink)}
.ld{vector-effect:non-scaling-stroke}.lineart{position:absolute;right:5vw;top:50%;width:min(26vw,320px);transform:translateY(-50%);opacity:.55;pointer-events:none}.dark>.lineart{position:absolute}
.steps{position:relative}.rail{position:absolute;left:-1px;top:0;bottom:0;width:3px;background:var(--gold-ink);transform-origin:top}
.steps li:before{color:var(--gold-ink)}
.art{position:absolute;right:6vw;bottom:2rem;width:min(36vw,380px);opacity:.7}.art path,.art circle{vector-effect:non-scaling-stroke}.qm{position:absolute;right:6vw;top:-1rem;font:700 20rem/1 var(--serif);color:#D99A2622;pointer-events:none}
/* before/after */
.cmp{position:relative;width:100%;max-width:760px;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--gold);margin:1rem 0;background:#0b1410;touch-action:pan-y;user-select:none}
.cmp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.cmp-d{filter:sepia(1) brightness(.38) contrast(1.5) saturate(1.8) hue-rotate(-12deg);clip-path:inset(0 0 0 50%)}
.cmp-h{position:absolute;top:0;bottom:0;left:50%;width:3px;margin-left:-1.5px;background:var(--gold);pointer-events:none}.cmp-h:after{content:"↔";position:absolute;top:50%;left:50%;width:48px;height:48px;margin:-24px;border-radius:50%;background:var(--gold);color:#000;display:grid;place-items:center;font-size:1.3rem}
.cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;min-height:0;touch-action:pan-y}.cmp:focus-within{outline:3px solid var(--gold);outline-offset:3px}
/* inner heroes & CTA */
.pbg{position:absolute;inset:0 0 0 45%;opacity:.55}.pbg img{width:100%;height:100%;object-fit:cover}.pbg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--black),transparent 60%)}.phero{overflow:hidden;padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,7vw,5.5rem)}.phero .crumbs{margin-bottom:1.2rem}
.cta{overflow:hidden;background:linear-gradient(135deg,var(--green),var(--black))}.cta.fin{text-align:left}.cta.fin .wrap{max-width:1180px}.cta h2{font-size:clamp(2.4rem,7vw,5rem)}.cta .wrap>*{max-width:34em}
.regions .region>h2{margin-top:1rem}.region{padding:0}.foot{padding-bottom:5rem}
@media(max-width:960px){:root{--hh:100px}
 .hero{min-height:0;padding:2rem 0 3.5rem}.hero-grid{grid-template-columns:1fr;gap:2rem}.hero-logo{order:-1;max-width:420px}
 .panel,.panel:nth-child(even){grid-template-columns:1fr}.panel:nth-child(even) .pimg{order:0}.clean{min-height:420px}.pbg{inset:0;opacity:.22}
 .lineart{width:42vw;right:-6vw;opacity:.16}.qm{font-size:11rem}.art{opacity:.4}.steps{margin-left:.6rem}.cmp{aspect-ratio:1}
 h1{font-size:clamp(2.3rem,10vw,3.4rem)}h2{font-size:clamp(1.8rem,7.5vw,2.6rem)}.lead{font-size:1.1rem}.foot{padding-bottom:5.5rem}}
@media(prefers-reduced-motion:reduce){.sweep{display:none}}
.ivory .hours dt{color:var(--green)}.lb{background:#0b1410}.cols{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}.regions{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.quotes{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.vids{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.masonry{columns:3 min(100%,260px)}
.grid4>*,.split>*,.hero-grid>*{min-width:0}.foot,.split address,.split p,.ptxt,.signoff{overflow-wrap:anywhere}
/* ===== v3: system, hero, nav, footer, slider ===== */
:root{--gut:clamp(1.25rem,4vw,2.5rem);--sec:clamp(3.5rem,8vw,6.5rem)}
.wrap{width:min(1180px,100% - 2 * var(--gut))}section{padding:var(--sec) 0}.clean{padding:0}.region{padding:0}
.img-failed{visibility:hidden}html.menu-open{overflow:hidden}
.hero{display:block;min-height:0;padding:0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2rem,5vw,4rem);padding:clamp(2.5rem,6vw,5rem) 0 clamp(2.5rem,5vw,4rem)}
.hero h1{font-size:clamp(2.7rem,6vw,5.4rem);line-height:1.02;margin-bottom:.3em}.hero-logo{justify-self:end;width:min(100%,500px);padding:.8rem;transform:none;box-shadow:12px 12px 0 #D99A2655,0 30px 80px #000a}
.hero-tel{margin:0;font-size:.95rem;color:var(--sage)}.hero .cta-row{margin:1.8rem 0 1rem}
.creds{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #D99A2666}
.creds li{padding:1.15rem 1rem;font-size:.78rem;line-height:1.4;letter-spacing:.1em;text-transform:uppercase;color:var(--champ);border-left:1px solid #D99A2644;display:flex;align-items:center}.creds li:first-child{border-left:0;padding-left:0}
@media(max-width:1260px){:root{--hh:100px}.burger{display:block;position:relative;z-index:60}
 #menu{position:fixed;inset:0 0 0 auto;width:min(86vw,380px);background:var(--green);flex-direction:column;align-items:flex-start;padding:7rem 2rem 2rem;transform:translateX(105%);visibility:hidden;overflow-y:auto;transition:transform .45s var(--ease),visibility 0s .45s}
 #menu.open{transform:none;visibility:visible;transition:transform .45s var(--ease),visibility 0s}#menu ul{flex-direction:column;gap:.4rem}#menu a:not(.btn){color:var(--ivory);font-size:1.25rem}}
@media(max-width:960px){.hero-grid{grid-template-columns:1fr;gap:2rem;padding:2rem 0 2.5rem}.hero-logo{order:-1;justify-self:center;width:min(100%,400px)}.creds{grid-template-columns:repeat(2,1fr)}
 .creds li{border-left:0;border-bottom:1px solid #D99A2633;padding:.9rem .5rem}.creds li:last-child{grid-column:1/-1;border-bottom:0}}
/* footer */
.foot{padding:clamp(3rem,6vw,5rem) 0 2rem;border-top:3px solid var(--gold);overflow-wrap:normal}.foot-grid{display:grid;grid-template-columns:minmax(220px,300px) repeat(3,minmax(0,1fr));gap:clamp(2rem,4vw,3.5rem);align-items:start}
.flogo{display:block;width:100%;max-width:300px;padding:.4rem}.foot h2{font:700 .9rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--champ);margin:0 0 1rem}
.foot address{font-style:normal;line-height:1.6}.al{display:block;margin-bottom:.35rem}.foot p{margin:0 0 1rem}.foot li{margin-bottom:.4rem}.foot a[href^=mailto]{overflow-wrap:anywhere}.foot .hours{margin:0}.legal{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #D99A2633}
.grid4>*,.split>*,.hero-grid>*{min-width:0}.foot,.split address,.split p,.ptxt,.signoff{overflow-wrap:normal}.split a[href^=mailto]{overflow-wrap:anywhere}
@media(max-width:1100px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-brand{grid-column:1/-1}}
@media(max-width:640px){.foot-grid{grid-template-columns:1fr}.foot{padding-bottom:6.5rem}}
/* before/after: pointer-driven, so handle and pointer always agree */
.cmp{cursor:ew-resize;touch-action:pan-y;-webkit-tap-highlight-color:transparent;aspect-ratio:4/3}.cmp-d{clip-path:inset(0 50% 0 0)}.cmp:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.cmp-l{position:absolute;bottom:.8rem;z-index:2;padding:.25rem .7rem;background:#080B09cc;color:var(--ivory);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;pointer-events:none}.cmp-l.b{left:.8rem}.cmp-l.a{right:.8rem}.cmp-h{z-index:3}
.gimg{width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:1.1rem;border:1px solid #D99A2666;background:#0b1410}.vids video{aspect-ratio:16/9;background:#000}
@media(max-width:960px){.cmp{aspect-ratio:1}}
.note2{opacity:1!important}

.bar{width:min(1320px,100% - 2 * var(--gut))}#menu{gap:1.1rem}nav ul{gap:1.1rem}#menu a:not(.btn),.tel,.btn{white-space:nowrap}#menu a:not(.btn){font-size:.9rem}#menu .btn{padding:.75rem 1.2rem}
@media(max-width:1260px){#menu a:not(.btn){font-size:1.25rem}}
html{scroll-behavior:auto}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.foot-grid{grid-template-columns:minmax(220px,280px) 1.5fr 1fr 1fr}.foot p.wrap{margin-left:auto;margin-right:auto}
@media(max-width:1100px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.foot{padding-bottom:6.5rem}}@media(max-width:640px){.foot-grid{grid-template-columns:1fr}}
