/* Avila Landscaping — cohesive green/cream/gold theme (logo green #172D13) */
:root{--site-nav-background:#172D13;--site-nav-color:#fff;--av-green:#172D13;--av-green-2:#1F3A1A;--av-gold:#C9A45C;--av-gold-2:#B98F45;--av-cream:#F6F3EC}
body{background:var(--av-cream);color:#1d2a1a}
h1,h2,h3{letter-spacing:-.01em}
/* nav + footer */
[data-site-nav]{border-bottom:1px solid rgba(201,164,92,.35)}
[data-site-nav] [data-nav-desktop] a{font-size:.95rem;font-weight:500;padding:.5rem .25rem;opacity:.92}
[data-site-nav] [data-nav-desktop] a[href^="tel"]{background:var(--av-gold);color:var(--av-green)!important;padding:.55rem 1.1rem;border-radius:.4rem;font-weight:700;opacity:1}
[data-site-nav] [data-nav-menu]{background:var(--av-green)!important}
[data-site-footer]{background:#0F2010!important;color:rgba(255,255,255,.82)!important;border-top:3px solid var(--av-gold)}
[data-site-footer] a,[data-site-footer] strong{color:#fff!important}
/* hero */
#hero[data-hero-video-layout]{min-height:88dvh}
#hero [data-hero-video-overlay]{background:linear-gradient(180deg,rgba(10,26,12,.55) 0%,rgba(10,26,12,.68) 55%,rgba(10,26,12,.88) 100%)!important}
#hero .lg\:col-span-5{display:none!important}
#hero .lg\:col-span-7{grid-column:1/-1!important;max-width:52rem}
#hero *{color:#fff}
#hero .font-mono{color:rgba(255,255,255,.88)!important;font-size:.8rem!important}
#hero h1{font-size:clamp(2.6rem,6vw,4.6rem)!important;line-height:1.08!important;text-shadow:0 2px 24px rgba(0,0,0,.35)}
#hero p{color:rgba(255,255,255,.92)!important;font-size:1.2rem!important}
#hero a.bg-accent{background:var(--av-gold)!important;color:var(--av-green)!important;font-weight:700}
#hero a.bg-accent svg{color:var(--av-green)!important}
#hero a.bg-accent:hover{background:var(--av-gold-2)!important}
#hero a.bg-transparent{border:1.5px solid rgba(255,255,255,.85)!important;color:#fff!important;background:rgba(255,255,255,.06)!important}
#hero a.bg-transparent:hover{background:rgba(255,255,255,.18)!important}
#hero .border-t{border-color:rgba(201,164,92,.7)!important}
#hero .w-8.h-px,#hero .bg-muted{background:var(--av-gold)!important}
/* sections */
#services-overview{background:var(--av-cream)!important}
#services-overview h2,.av-h{color:var(--av-green)}
#services-overview .canopy-shadow{background:#fff!important;border:1px solid #E3DED1!important;border-top:3px solid var(--av-gold)!important;box-shadow:0 6px 20px rgba(23,45,19,.06)}
#services-overview .canopy-shadow h3{color:var(--av-green)}
#services-overview .canopy-shadow .font-mono{color:var(--av-gold-2)!important;font-weight:500}
.terrace-frame{border:none!important;background:#fff!important;border-radius:.5rem!important;box-shadow:0 14px 40px rgba(23,45,19,.16)!important}
.terrace-frame img{border-radius:.35rem}
/* CTA bands */
#cta{background:linear-gradient(135deg,#172D13,#244A1D)!important;color:#fff!important}
#cta *{color:#fff}
#cta .font-mono{color:rgba(255,255,255,.8)!important}
#cta a{background:var(--av-gold)!important;color:var(--av-green)!important;font-weight:700}
#cta a *,#cta a svg{color:var(--av-green)!important}
/* inner-page video banners */
[data-av-banner]{position:relative;overflow:hidden;isolation:isolate;background:var(--av-green)!important}
[data-av-banner]>[data-av-bg]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
[data-av-banner]>[data-av-bg-overlay]{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,26,12,.62),rgba(10,26,12,.86))}
[data-av-banner]>div:not([data-av-bg-overlay]){z-index:1}
[data-av-banner]>div.absolute.inset-0{display:none}
#services-header{padding-block:6rem!important}
#services-header *,#brand-story h1,#brand-story p,#brand-story span,#brand-story a{color:#fff!important}
#services-header .border,#services-header .px-3{border-color:rgba(201,164,92,.7)!important;background:transparent!important}
#services-header .px-3,#services-header .px-3 *{display:none!important}
#services-header .bg-mutedSage\/40,#brand-story .bg-sage{background:var(--av-gold)!important}
#brand-story .font-mono,#services-header .font-mono{color:rgba(255,255,255,.9)!important}
#brand-story p{color:rgba(255,255,255,.92)!important}
#brand-story .terrace-frame,#brand-story [class*="border"]{border-color:rgba(255,255,255,.25)}
/* text links in about body */
#brand-story .rounded-full{border-color:var(--av-gold)!important}
/* ---- Garden&Grounds-inspired home layout ---- */
#hero .av-hero-inner{max-width:62rem;margin:0 auto;padding:7rem 1.5rem 5rem;text-align:center;display:flex;flex-direction:column;align-items:center}
#hero[data-hero-video-layout]{display:block;min-height:92dvh;display:flex;align-items:center;justify-content:center}
.av-eyebrow{display:flex;align-items:center;gap:1rem;font-family:'DM Mono',monospace;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.9)}
.av-eyebrow i{display:block;width:2.5rem;height:1px;background:var(--av-gold)}
#hero h1{font-weight:700;margin:1.5rem 0 1.5rem;max-width:56rem;font-size:clamp(2.8rem,6.6vw,5.4rem)!important;line-height:1.04!important}
#hero h1 em,.av-head h2 em,.av-story h2 em{font-style:italic;font-weight:400;color:var(--av-gold)}
.av-head h2 em,.av-story h2 em{color:#4F6B43}
.av-lede{max-width:40rem;margin:0 auto 2.2rem}
.av-btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}
.av-btn{font-family:'DM Mono',monospace;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;padding:1rem 1.7rem;border-radius:2px;text-decoration:none;transition:.2s;display:inline-block}
#hero a.av-btn-gold{background:var(--av-gold)!important;color:var(--av-green)!important;font-weight:600}
#hero a.av-btn-ghost{border:1px solid rgba(255,255,255,.7);color:#fff!important}
#hero a.av-btn-ghost:hover{background:rgba(255,255,255,.14)}
.av-chips{list-style:none;display:flex;gap:2rem;flex-wrap:wrap;justify-content:center;margin:3.2rem 0 0;padding:0;font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.av-chips li{display:flex;align-items:center;gap:.6rem}
.av-chips li:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--av-gold)}
.av-section{padding:6rem 1.5rem;background:var(--av-cream)}
.av-wrap{max-width:72rem;margin:0 auto}
.av-label{display:block;font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.22em;text-transform:uppercase;color:var(--av-gold-2);margin-bottom:.8rem}
.av-head h2,.av-story h2{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(2.2rem,4.5vw,3.4rem);line-height:1.1;color:var(--av-green);margin:0 0 1rem}
.av-head p,.av-story p{max-width:38rem;color:#4b5a47;font-size:1.05rem;line-height:1.7}
.av-link{display:inline-block;margin-top:1.4rem;padding:.8rem 1.3rem;border:1px solid rgba(23,45,19,.25);font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--av-green);text-decoration:none}
.av-link:hover{background:var(--av-green);color:#fff}
.av-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:3.5rem;border-top:1px solid #D8D4C8;border-left:1px solid #D8D4C8}
.av-cell{padding:2.2rem 2rem 2rem;border-right:1px solid #D8D4C8;border-bottom:1px solid #D8D4C8;background:transparent;transition:background .2s}
.av-cell:hover{background:#fff}
.av-ico{width:2rem;height:2rem;color:#4F6B43;margin-bottom:1.4rem}
.av-cell h3{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:700;color:var(--av-green);margin:0 0 .6rem}
.av-cell p{color:#5a6856;line-height:1.65;font-size:.97rem;margin:0 0 1.1rem}
.av-tag{display:inline-block;font-family:'DM Mono',monospace;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;background:#E6EBDF;color:var(--av-green);padding:.3rem .6rem;border-radius:2px}
.av-story{background:#EDE9DF}
.av-split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.av-photo{margin:0}.av-photo img{width:100%;height:30rem;object-fit:cover;border-radius:3px;box-shadow:0 18px 40px rgba(23,45,19,.18)}
.av-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.av-stats div{border-left:2px solid #7a9e7e;padding-left:1rem}
.av-stats b{display:block;font-family:'Playfair Display',serif;font-size:2.6rem;color:#3f5a35;line-height:1}
.av-stats span{font-family:'DM Mono',monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#6b7767}
@media(max-width:860px){.av-grid{grid-template-columns:1fr}.av-split{grid-template-columns:1fr;gap:2rem}.av-photo img{height:20rem}#hero .av-hero-inner{padding:5rem 1.25rem 3.5rem}.av-chips{gap:1rem}}
#hero h1{font-family:'Playfair Display',Georgia,serif!important;font-size:clamp(2.6rem,5.4vw,4.6rem)!important;max-width:58rem}
#hero h1 em{font-family:'Playfair Display',Georgia,serif}
.av-lede{font-size:1.15rem!important}
/* gallery + hours */
.av-work{background:var(--av-cream);padding-top:2rem}
.av-gallery{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:13rem;gap:.9rem;margin-top:2.5rem}
.av-g{margin:0;overflow:hidden;border-radius:3px;background:#dfe5d8}
.av-g img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.av-g:hover img{transform:scale(1.04)}
.av-g0{grid-column:span 2;grid-row:span 2}.av-g1{grid-column:span 2;grid-row:span 1}.av-g2{grid-column:span 2;grid-row:span 2}
.av-g3{grid-column:span 2}.av-g4{grid-column:span 2;grid-row:span 1}.av-g5{grid-column:span 2}
.av-hours{background:var(--av-green);color:#fff}
.av-hours h2{color:#fff!important}.av-hours h2 em{color:var(--av-gold)!important}
.av-hours p{color:rgba(255,255,255,.85)!important}
.av-hours .av-label{color:var(--av-gold)}
.av-btn-solid{background:var(--av-gold);color:var(--av-green)!important;font-weight:600;margin-top:1.6rem}
.av-hrs{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.2)}
.av-hrs li{display:flex;justify-content:space-between;padding:1rem .75rem;border-bottom:1px solid rgba(255,255,255,.2);font-family:'DM Mono',monospace;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase}
.av-hrs b{font-weight:500}.av-hrs .av-closed{color:rgba(255,255,255,.55)}
.av-hrs .av-today{background:rgba(201,164,92,.16);border-left:3px solid var(--av-gold)}
.av-hrs .av-today span:after{content:" · today";color:var(--av-gold)}
@media(max-width:860px){.av-gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:11rem}.av-g0,.av-g1,.av-g2,.av-g3,.av-g4,.av-g5{grid-column:span 1;grid-row:span 1}.av-g0{grid-column:span 2}}
.av-gallery{grid-template-columns:repeat(3,1fr)!important;grid-auto-rows:19rem!important}
.av-g0,.av-g1,.av-g2,.av-g3,.av-g4,.av-g5{grid-column:span 1!important;grid-row:span 1!important}
.av-hours h2{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(2.2rem,4.5vw,3.4rem);line-height:1.1;margin:0 0 1rem}
.av-hours p{max-width:30rem;line-height:1.7}
@media(max-width:860px){.av-gallery{grid-template-columns:repeat(2,1fr)!important;grid-auto-rows:12rem!important}}

/* ================= accents & micro-interactions ================= */
::selection{background:var(--av-gold);color:var(--av-green)}
html{scroll-behavior:smooth}
/* preloader */
#av-loader{position:fixed;inset:0;z-index:9999;background:var(--av-green);display:flex;align-items:center;justify-content:center;transition:opacity .6s ease,visibility .6s;animation:avLoaderOut .6s ease 3.6s forwards}
#av-loader img{width:min(180px,46vw);height:auto;animation:avPop 1s ease both}
#av-loader.out{opacity:0;visibility:hidden}
.av-seen #av-loader{display:none}
.av-ring{position:absolute;width:min(270px,70vw);aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(201,164,92,.25);border-top-color:var(--av-gold);animation:avSpin 1.2s linear infinite}
@keyframes avSpin{to{transform:rotate(360deg)}}
@keyframes avPop{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:none}}
@keyframes avLoaderOut{to{opacity:0;visibility:hidden}}
/* sticky glass nav */
[data-site-nav]{position:sticky!important;top:0;z-index:60;transition:padding .3s,background .3s,box-shadow .3s,backdrop-filter .3s}
[data-site-nav].av-scrolled{min-height:3.6rem!important;padding-block:.35rem!important;background:rgba(23,45,19,.88)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 26px rgba(0,0,0,.22)}
[data-site-nav] [data-site-brand] img{transition:transform .3s}
[data-site-nav] [data-site-brand]:hover img{transform:scale(1.04)}
[data-site-nav] [data-nav-desktop] a:not([href^="tel"]){position:relative}
[data-site-nav] [data-nav-desktop] a:not([href^="tel"])::after{content:"";position:absolute;left:.25rem;right:.25rem;bottom:.1rem;height:2px;background:var(--av-gold);transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
[data-site-nav] [data-nav-desktop] a:not([href^="tel"]):hover::after,[data-site-nav] [data-nav-desktop] a[aria-current]::after{transform:scaleX(1)}
[data-site-nav] [data-nav-desktop] a[href^="tel"]{position:relative;border-radius:999px!important}
[data-site-nav] [data-nav-desktop] a[href^="tel"]::before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 0 rgba(201,164,92,.55);animation:avPulse 2.6s ease-out infinite}
@keyframes avPulse{70%,100%{box-shadow:0 0 0 14px rgba(201,164,92,0)}}
/* hero motion */
#hero [data-hero-video]{animation:avZoom 26s ease-in-out infinite alternate}
@keyframes avZoom{from{transform:scale(1)}to{transform:scale(1.09)}}
.av-leafi{width:1.1rem;height:1.1rem;color:var(--av-gold);flex:none;animation:avSway 5s ease-in-out infinite;transform-origin:50% 100%}
@keyframes avSway{50%{transform:rotate(14deg)}}
.av-label{display:flex;align-items:center;gap:.55rem}
.av-label::before{content:"";width:1.05rem;height:1.05rem;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 4C10 4 4 9 4 15c0 2 1 4 3 5 1-6 5-9 10-10-4 2-7 5-8 10 8 1 11-5 11-16z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 4C10 4 4 9 4 15c0 2 1 4 3 5 1-6 5-9 10-10-4 2-7 5-8 10 8 1 11-5 11-16z'/%3E%3C/svg%3E") center/contain no-repeat}
.av-scroll{position:absolute;left:50%;bottom:4.6rem;width:1.5rem;height:2.4rem;border:1.5px solid rgba(255,255,255,.65);border-radius:999px;transform:translateX(-50%)}
.av-scroll i{position:absolute;left:50%;top:.45rem;width:3px;height:.5rem;margin-left:-1.5px;border-radius:3px;background:var(--av-gold);animation:avDrop 1.8s ease-in-out infinite}
@keyframes avDrop{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(.9rem)}}
@media(max-height:760px){.av-scroll{display:none}}
/* grass dividers */
.av-grass{position:absolute;left:0;width:100%;height:5.6rem;pointer-events:none;line-height:0;overflow:hidden}
.av-grass svg{width:100%;height:100%;display:block;transform-origin:50% 100%}
#hero .av-grass{bottom:-1px;z-index:2}
.av-grass-a svg{animation:avBlade 7s ease-in-out infinite alternate}
.av-grass-b{height:3.6rem;opacity:.55;z-index:1}
.av-grass-b svg{animation:avBlade 9s ease-in-out -3s infinite alternate}
@keyframes avBlade{from{transform:skewX(-1.6deg)}to{transform:skewX(1.6deg)}}
.av-hours{position:relative}
.av-grass-top{top:-5.5rem;transform:scaleY(1)}
.av-hours .av-wrap{position:relative;z-index:1}
/* pill buttons with arrow chip */
.av-btn{display:inline-flex!important;align-items:center;gap:1rem;border-radius:999px!important;padding:.5rem .5rem .5rem 1.6rem!important;transition:transform .3s,background .3s,box-shadow .3s}
.av-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.25)}
.av-chip{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;flex:none;transition:transform .35s cubic-bezier(.2,.7,.2,1),background .3s}
.av-chip svg{width:1.05rem;height:1.05rem;transform:rotate(-45deg);transition:transform .35s}
.av-btn:hover .av-chip svg{transform:rotate(0)}
.av-btn:hover .av-chip{transform:scale(1.08)}
.av-btn-gold .av-chip,.av-btn-solid .av-chip{background:var(--av-green);color:var(--av-gold)}
.av-btn-ghost .av-chip{background:var(--av-gold);color:var(--av-green)}
#hero a.av-btn-gold,#hero a.av-btn-ghost{padding-block:.5rem!important}
/* hero chips + live status */
.av-chips li.av-stat{border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:.4rem .9rem}
.av-chips li.av-stat:before{width:7px;height:7px;background:#9aa59a}
.av-chips li.av-stat.is-open:before{background:#6fd26f;animation:avBlink 2s infinite}
.av-chips li.av-stat.is-closed:before{background:var(--av-gold)}
@keyframes avBlink{50%{box-shadow:0 0 0 6px rgba(111,210,111,0)}0%{box-shadow:0 0 0 0 rgba(111,210,111,.6)}}
.av-status-wrap{margin:1.2rem 0 0!important}
.av-status{display:inline-flex;align-items:center;gap:.6rem;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.45rem 1rem;font-family:'DM Mono',monospace;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#fff}
.av-status i{width:8px;height:8px;border-radius:50%;background:#9aa59a}
.av-status.is-open i{background:#6fd26f;animation:avBlink 2s infinite}
.av-status.is-closed i{background:var(--av-gold)}
/* ghost watermark words */
[data-ghost]{position:relative}
[data-ghost]::before{content:attr(data-ghost);position:absolute;left:-.04em;top:-.55em;font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(5rem,13vw,10.5rem);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(23,45,19,.09);white-space:nowrap;pointer-events:none;z-index:0}
.av-hours [data-ghost]::before,.av-story [data-ghost]::before{-webkit-text-stroke-color:rgba(23,45,19,.08)}
.av-hours [data-ghost]::before{-webkit-text-stroke-color:rgba(255,255,255,.1)}
[data-ghost]>*{position:relative;z-index:1}
.av-section{overflow:hidden}
.av-hours{overflow:visible}
/* organic image masks */
.av-photo img{height:36rem!important;border-radius:999px 999px 8px 8px!important}
.av-g{border-radius:0}
.av-g img{border-radius:inherit}
.av-g0,.av-g5{border-radius:999px 999px 14px 14px!important}
.av-g2{border-radius:0 38% 0 38%!important}
.av-g3{border-radius:38% 0 38% 0!important}
.av-g1,.av-g4{border-radius:22px!important}
.av-g{position:relative}
.av-g figcaption{position:absolute;left:50%;bottom:1rem;transform:translate(-50%,14px);opacity:0;background:rgba(23,45,19,.88);color:#fff;font-family:'DM Mono',monospace;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;padding:.45rem .9rem;border-radius:999px;white-space:nowrap;transition:.35s}
.av-g:hover figcaption{opacity:1;transform:translate(-50%,0)}
/* service cell hover */
.av-cell{position:relative;overflow:hidden}
.av-cell::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--av-gold);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.av-cell:hover::after{transform:scaleX(1)}
.av-ico{transition:transform .45s cubic-bezier(.2,.7,.2,1),color .3s}
.av-cell:hover .av-ico{transform:translateY(-4px) rotate(-8deg) scale(1.1);color:var(--av-gold-2)}
.av-tag{transition:background .3s,transform .3s}
.av-cell:hover .av-tag{background:var(--av-green);color:#fff;transform:translateX(4px)}
/* hours rows */
.av-hrs li{transition:background .25s,padding-left .25s}
.av-hrs li:hover{background:rgba(255,255,255,.07);padding-left:1.1rem}
/* reveals (only when JS + motion allowed) */
.av-js .av-rv{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.av-js .av-rv.in{opacity:1;transform:none}
.av-js .av-g.av-rv{transform:translateY(26px) scale(.97)}.av-js .av-g.av-rv.in{transform:none}
.av-w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em}
.av-wi{display:inline-block;transform:translateY(110%);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.av-js [data-av-words]:not(.in) .av-wi{transform:translateY(110%)}
[data-av-words].in .av-wi{transform:none}
html.av-js:not(.av-ready) #hero .av-rv,html.av-js:not(.av-ready) #hero [data-av-words]{visibility:hidden}
/* floating call button (mobile) */
.av-fab{position:fixed;right:1rem;bottom:1rem;width:3.4rem;height:3.4rem;border-radius:50%;background:var(--av-gold);color:var(--av-green);display:none;place-items:center;z-index:70;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.av-fab svg{width:1.5rem;height:1.5rem}
@media(max-width:860px){.av-fab{display:grid}.av-photo img{height:26rem!important}.av-scroll{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}#av-loader{display:none}}

.av-eyebrow i{display:none}
/* 7 services: let the last cell span the row; keep hover captions inside small screens */
.av-grid .av-cell:last-child:nth-child(3n+1){grid-column:1/-1}
.av-g figcaption{max-width:calc(100% - 1.4rem);overflow:hidden;text-overflow:ellipsis}
.av-scroll{display:none!important}
/* brighter hero video: lighter overlay, text kept legible with shadow */
#hero [data-hero-video-overlay]{background:linear-gradient(180deg,rgba(10,26,12,.22) 0%,rgba(10,26,12,.30) 55%,rgba(10,26,12,.55) 100%)!important}
#hero h1,#hero .av-lede,#hero .av-eyebrow,#hero .av-chips{text-shadow:0 2px 18px rgba(0,0,0,.55),0 1px 3px rgba(0,0,0,.4)}
[data-av-banner]>[data-av-bg-overlay]{background:linear-gradient(180deg,rgba(10,26,12,.38),rgba(10,26,12,.68))}
/* audit additions: skip link, footer tap targets/credit, legal + 404 pages */
.av-skip{position:fixed;left:1rem;top:-4rem;z-index:10000;background:var(--av-gold);color:var(--av-green);padding:.8rem 1.2rem;border-radius:.4rem;font-weight:700;text-decoration:none;transition:top .2s}
.av-skip:focus{top:1rem;outline:3px solid #fff}
[data-site-footer] a{display:inline-block;padding:.55rem .3rem}
[data-site-footer] .av-credit{margin-top:.4rem;font-size:.85rem}
[data-site-footer] .av-credit a{padding:.3rem 0;text-decoration:underline;text-underline-offset:3px}
[data-site-footer]>div:last-child{line-height:1.5}
.av-legal{background:var(--av-cream);padding:6rem 1.5rem 7rem}
.av-legal-in{max-width:46rem;margin:0 auto;color:#2b3a28;line-height:1.75}
.av-legal h1{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,5vw,3.2rem);color:var(--av-green);margin:0 0 .6rem}
.av-legal h2{font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--av-green);margin:2rem 0 .4rem}
.av-legal a:not(.av-btn){color:#3f5a35;text-decoration:underline;text-underline-offset:3px;padding:.2rem 0}
.av-legal ul{padding-left:1.2rem;list-style:disc}
.av-404{text-align:center;min-height:55vh;display:grid;align-items:center}
.av-404 .av-code{font-family:'Playfair Display',serif;font-size:clamp(5rem,16vw,9rem);color:var(--av-gold);line-height:1;margin:0}
.av-404 .av-btn{display:inline-flex}
[data-site-footer] .av-credit a{padding:.9rem .5rem!important;margin:-.9rem -.5rem}
.av-404 a:not(.av-btn){display:inline-block;padding:.95rem .6rem}
