/* v2 inside pages (About, Gallery, Contact, Our Approach, Testimonials, Service Areas):
   hover photos, count-up stats, "why ODC" cards, review wall, area finder, contact form. */
.pg-section{max-width:1240px;margin:0 auto;padding:clamp(56px,7vw,96px) 6%}
.pg-head{max-width:760px;margin:0 0 30px}
.pg-head h2{font-size:clamp(30px,3.4vw,46px);line-height:1.06;margin:0 0 14px}
.pg-head p{color:var(--muted);line-height:1.75;margin:0}
.pg-center{text-align:center;margin-inline:auto}

/* ---------- hoverable photos (existing images across the inside pages) ---------- */
body.theme-v2 :is(.team-card,.craftsmen,.areas-layout,.featured-project .project-photo){--hover-lift:-4px}
body.theme-v2 .team-card{border-radius:14px;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}
body.theme-v2 .team-card img{transition:transform .7s ease,filter .5s ease;filter:saturate(.92)}
body.theme-v2 .team-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px rgb(0 0 0 / 38%)}
body.theme-v2 .team-card:hover img{transform:scale(1.05);filter:saturate(1.05)}
body.theme-v2 .team-card img{display:block}
body.theme-v2 .team-card .profile-copy .eyebrow{font-size:18px}
body.theme-v2 .team-card summary{font-size:15px;color:#a6e0c6;cursor:pointer}
body.theme-v2 .craftsmen img,body.theme-v2 .areas-photo{border-radius:14px;box-shadow:0 18px 40px rgb(0 0 0 / 35%);transition:transform .6s ease,box-shadow .4s ease,filter .5s ease}
body.theme-v2 .craftsmen img:hover,body.theme-v2 .areas-photo:hover{transform:scale(1.025) rotate(-.4deg);box-shadow:0 26px 54px rgb(0 0 0 / 45%)}
body.theme-v2 .featured-project .project-photo{overflow:hidden;border-radius:12px}
body.theme-v2 .featured-project .project-photo img{transition:transform .7s ease}
body.theme-v2 .featured-project:hover .project-photo img{transform:scale(1.06)}
.project-draft-note{display:none!important}

/* ---------- count-up stats ---------- */
.pg-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;max-width:1240px;margin:0 auto;padding:0 6% clamp(40px,5vw,70px)}
.pg-stat{position:relative;overflow:hidden;padding:26px 24px;border:1px solid #33413b;border-radius:14px;background:linear-gradient(160deg,#20302b,#18221f);transition:transform .3s,border-color .3s}
.pg-stat:hover{transform:translateY(-3px);border-color:#4f8374}
.pg-stat strong{display:block;font:900 clamp(38px,4vw,54px)/1 var(--font-main);color:#fffde6;letter-spacing:-.5px}
.pg-stat span{display:block;margin-top:10px;color:var(--muted);font-size:14.5px;line-height:1.5}
.pg-stat::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgb(166 224 198 / 16%),transparent 70%)}
/* existing Our Approach stats row, upgraded */
body.theme-v2 .stats>div{transition:transform .3s}
body.theme-v2 .stats>div:hover{transform:translateY(-3px)}
body.theme-v2 .stats strong{font-family:var(--font-main);font-weight:900}

/* ---------- "why ODC" photo cards ---------- */
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.why-card{position:relative;min-height:360px;border-radius:14px;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;color:#fffde6;box-shadow:0 14px 34px rgb(0 0 0 / 32%);outline:none}
.why-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s ease}
.why-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgb(8 20 17 / 5%) 20%,rgb(8 20 17 / 88%) 72%);transition:background .45s}
.why-card h3{font-size:22px;line-height:1.15;margin:0}
.why-card .why-kicker{font-family:var(--font-pencil);color:#a6e0c6;font-size:18px;margin:0 0 6px}
.why-card .why-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease,opacity .45s;opacity:0}
.why-card .why-body>div{overflow:hidden}
.why-card .why-body p{margin:12px 0 0;color:#e3e8e3;font-size:14.5px;line-height:1.65}
.why-card .why-body a{display:inline-block;margin-top:12px;color:#a6e0c6;font-weight:700;font-size:14px}
.why-card:is(:hover,:focus-within,.is-open) img{transform:scale(1.08)}
.why-card:is(:hover,:focus-within,.is-open)::before{background:linear-gradient(180deg,rgb(8 20 17 / 35%),rgb(8 20 17 / 94%) 60%)}
.why-card:is(:hover,:focus-within,.is-open) .why-body{grid-template-rows:1fr;opacity:1}
.why-card .why-hint{margin-top:10px;font-size:12.5px;color:#cfd8d2;letter-spacing:.3px}
.why-card:is(:hover,:focus-within,.is-open) .why-hint{display:none}
@media(hover:none){.why-card .why-hint::before{content:"Tap to read more"}}
@media(hover:hover){.why-card .why-hint::before{content:"Hover to read more"}}

/* ---------- gallery tools ---------- */
.pg-gallery-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 24px}
.pg-gallery-tools .svc-filters{margin:0}
.pg-surprise{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1px dashed #a6e0c6;background:transparent;color:#a6e0c6;font:700 13px var(--font-main);cursor:pointer;transition:background .2s,transform .2s}
.pg-surprise:hover{background:rgb(40 103 91 / 30%);transform:rotate(-2deg) scale(1.03)}
.pg-count{color:var(--muted);font-size:13px;margin:0 0 14px}

/* ---------- review wall ---------- */
.review-wall{columns:3 300px;column-gap:16px}
.rw-card,.rw-photo{break-inside:avoid;margin:0 0 16px;border-radius:14px}
.rw-card{position:relative;padding:28px 24px 22px;border:1px solid #33413b;background:linear-gradient(160deg,#20302b,#18221f);transition:transform .3s,border-color .3s,box-shadow .3s}
.rw-card::before{content:"“";position:absolute;top:-6px;left:16px;font:900 70px/1 Georgia,serif;color:#3d8a79;opacity:.55;transition:transform .4s,opacity .3s}
.rw-card:hover{transform:translateY(-4px) rotate(-.3deg);border-color:#a6e0c6;box-shadow:0 18px 38px rgb(0 0 0 / 35%)}
.rw-card:hover::before{transform:translateY(-4px) scale(1.12);opacity:.9}
.rw-card blockquote{margin:14px 0 16px;color:#f1f3ee;font-size:16.5px;line-height:1.65}
.rw-card figcaption{font-weight:800;color:#fffde6;font-size:14.5px}
.rw-card figcaption span{display:block;margin-top:3px;font-weight:500;color:var(--muted);font-size:13px}
.rw-card .review-source{display:inline-block;margin-top:10px;color:#a6e0c6;font-size:13px;font-weight:700}
.rw-card.rw-feature{background:linear-gradient(160deg,#28675b,#1b4038);border-color:#3d8a79}
.rw-card.rw-feature blockquote{font-size:19px}
.rw-photo{display:block;width:100%;padding:0;border:0;overflow:hidden;cursor:zoom-in;background:#122e29;box-shadow:0 12px 28px rgb(0 0 0 / 30%)}
.rw-photo img{display:block;width:100%;height:auto;transition:transform .7s ease}
.rw-photo:hover img{transform:scale(1.06)}

/* ---------- service-area finder ---------- */
.area-finder{display:grid;gap:18px}
.area-finder-search{display:flex;align-items:center;gap:10px;max-width:460px;padding:4px 6px 4px 16px;border:1px solid #3c4942;border-radius:999px;background:#1a2421}
.area-finder-search input{flex:1;min-width:0;padding:11px 0;border:0;background:transparent;color:var(--ink);font:500 15px var(--font-main);outline:none}
.area-finder-search:focus-within{border-color:#a6e0c6}
.area-finder-result{min-height:1.6em;color:#a6e0c6;font-size:14.5px;margin:0}
body.theme-v2 .area-grid a{position:relative;transition:background .2s,border-color .2s,color .2s,transform .2s,opacity .3s}
body.theme-v2 .area-grid a:hover{transform:translateY(-2px)}
body.theme-v2 .area-grid a.is-dim{opacity:.28}
body.theme-v2 .area-grid a.is-match{border-color:#a6e0c6;color:#a6e0c6;background:rgb(40 103 91 / 30%)}

/* numbers removed from region / FAQ accordions */
.no-num details>div{padding-left:0}
.no-num summary{gap:0}

/* ---------- Our Approach: timeline with scroll progress ---------- */
.journey.pg-timeline{position:relative}
.pg-timeline .pg-rail{position:absolute;left:calc(6% + 14px);top:150px;bottom:70px;width:2px;background:#2c3833;border-radius:2px}
.pg-timeline .pg-rail i{position:absolute;inset:0 0 auto;height:var(--p,0%);background:linear-gradient(#a6e0c6,#3d8a79);border-radius:2px;box-shadow:0 0 12px rgb(166 224 198 / 50%)}
.pg-timeline details{position:relative;padding-left:52px;transition:background .3s}
.pg-timeline details::before{content:"";position:absolute;left:8px;top:34px;width:14px;height:14px;border-radius:50%;background:#1c2220;border:2px solid #4c675c;transition:background .3s,border-color .3s,box-shadow .3s}
.pg-timeline details.is-passed::before{background:#a6e0c6;border-color:#a6e0c6;box-shadow:0 0 0 5px rgb(166 224 198 / 15%)}
.pg-timeline details:hover summary{color:#a6e0c6}
.pg-timeline-tools{display:flex;gap:10px;margin:-18px 0 26px}
.pg-timeline-tools button{padding:8px 15px;border-radius:999px;border:1px solid #3c4942;background:transparent;color:var(--ink);font:600 13px var(--font-main);cursor:pointer}
.pg-timeline-tools button:hover{border-color:#a6e0c6;color:#a6e0c6}
@media(max-width:760px){.pg-timeline .pg-rail{left:calc(6% + 6px)}.pg-timeline details{padding-left:34px}.pg-timeline details::before{left:0;top:28px}}

/* ---------- contact page ---------- */
body.theme-v2 .contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,4vw,60px);align-items:start}
.contact-cards{display:grid;gap:12px;margin:24px 0 30px}
.contact-card{display:flex;align-items:center;gap:16px;padding:16px 18px;border:1px solid #33413b;border-radius:14px;background:linear-gradient(160deg,#20302b,#18221f);color:var(--ink);text-decoration:none;transition:transform .25s,border-color .25s,box-shadow .25s}
a.contact-card:hover{transform:translateX(4px);border-color:#a6e0c6;box-shadow:0 12px 26px rgb(0 0 0 / 30%)}
.contact-card .cc-icon{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#28675b;color:#fffde6;font-size:20px;transition:transform .35s}
a.contact-card:hover .cc-icon{transform:rotate(-12deg) scale(1.08)}
.contact-card strong{display:block;color:#fffde6;font-size:16px}
.contact-card span{display:block;color:var(--muted);font-size:13.5px;margin-top:2px}
.next-steps{list-style:none;margin:0;padding:0;display:grid;gap:4px;counter-reset:ns}
.next-steps li{position:relative;padding:14px 0 14px 50px;border-top:1px solid #2c3833;counter-increment:ns}
.next-steps li::before{content:counter(ns);position:absolute;left:0;top:12px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #4c675c;font-family:var(--font-pencil);color:#a6e0c6;font-size:18px;transition:background .3s,color .3s}
.next-steps li:hover::before{background:#a6e0c6;color:#122e29}
.next-steps strong{display:block;color:#fffde6;font-size:16px;margin-bottom:3px}
.next-steps span{color:var(--muted);font-size:14px;line-height:1.55}

.odc-form{padding:clamp(24px,3.5vw,40px);border:1px solid #33413b;border-radius:18px;background:linear-gradient(160deg,#1f2d29,#161f1c);box-shadow:0 24px 60px rgb(0 0 0 / 30%)}
.odc-form h2{font-size:clamp(28px,3vw,40px);margin:0 0 10px}
.odc-form .form-note{color:var(--muted);margin:0 0 20px;line-height:1.6}
.odc-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 16px}
.odc-form .form-wide{grid-column:1/-1}
.odc-form label.field{display:flex;flex-direction:column;gap:7px;color:#e6ebe6;font-size:14px;font-weight:600}
.odc-form input[type=text],.odc-form input[type=tel],.odc-form textarea{width:100%;padding:13px 14px;border-radius:10px;border:1px solid #3c4942;background:#121a18;color:#fffde6;font:500 15px var(--font-main);transition:border-color .2s,box-shadow .2s,background .2s}
.odc-form textarea{resize:vertical;min-height:130px;line-height:1.55}
.odc-form input::placeholder,.odc-form textarea::placeholder{color:#7d8a84}
.odc-form :is(input,textarea):focus{outline:none;border-color:#a6e0c6;box-shadow:0 0 0 4px rgb(166 224 198 / 14%);background:#15201d}
.odc-form :is(input,textarea)[aria-invalid=true]{border-color:#e39a86}
.odc-form .form-error{margin:0;min-height:0;color:#f0b3a3;font-size:12.5px;font-weight:600}
.odc-form .form-error:empty{display:none}
.odc-form fieldset{border:0;margin:0;padding:0}
.odc-form legend{color:#e6ebe6;font-size:14px;font-weight:600;margin-bottom:10px}
.svc-pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px}
.svc-pick{position:relative;display:block;aspect-ratio:1/1;border-radius:12px;overflow:hidden;cursor:pointer;background:#1a2421;border:2px solid #33413b;transition:transform .25s,border-color .25s,box-shadow .25s}
.svc-pick input{position:absolute;opacity:0;pointer-events:none}
.svc-pick img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s,filter .3s;filter:saturate(.8) brightness(.85)}
.svc-pick span{position:absolute;inset:auto 0 0;padding:26px 10px 10px;background:linear-gradient(180deg,transparent,rgb(8 20 17 / 92%));color:#fffde6;font-size:13px;font-weight:700;line-height:1.25}
.svc-pick.svc-pick-other{display:grid;place-items:center;background:repeating-linear-gradient(135deg,#1a2421 0 10px,#1d2926 10px 20px)}
.svc-pick.svc-pick-other::before{content:"+";font:300 44px/1 var(--font-main);color:#a6e0c6;margin-bottom:24px}
.svc-pick::after{content:"✓";position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#a6e0c6;color:#122e29;font-weight:900;font-size:14px;transform:scale(0);transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.svc-pick:hover{transform:translateY(-3px);border-color:#4f8374}
.svc-pick:hover img{transform:scale(1.08);filter:saturate(1) brightness(.95)}
.svc-pick:has(input:checked){border-color:#a6e0c6;box-shadow:0 0 0 4px rgb(166 224 198 / 18%)}
.svc-pick:has(input:checked) img{filter:saturate(1.05) brightness(1)}
.svc-pick:has(input:checked)::after{transform:scale(1)}
.svc-pick:has(input:focus-visible){outline:3px solid #a6e0c6;outline-offset:2px}
.form-photos{margin:0;padding:12px 14px;border-radius:10px;border:1px dashed #3c4942;color:var(--muted);font-size:13.5px;line-height:1.55}
.form-photos a{color:#a6e0c6}
.form-meter{display:flex;align-items:center;gap:12px;margin:22px 0 16px}
.form-meter-bar{flex:1;height:6px;border-radius:6px;background:#26312d;overflow:hidden}
.form-meter-bar i{display:block;height:100%;width:var(--p,0%);background:linear-gradient(90deg,#3d8a79,#a6e0c6);transition:width .4s ease}
.form-meter p{margin:0;min-width:128px;text-align:right;font-family:var(--font-pencil);color:#a6e0c6;font-size:16px}
.odc-form button[type=submit]{width:100%;justify-content:center;font-size:16px;padding:16px 22px}
.odc-form button[type=submit][disabled]{opacity:.6;cursor:progress}
#wix-form-status{margin:14px 0 0;color:#e6ebe6;font-size:14.5px;line-height:1.6}
.form-success{padding:30px 10px;text-align:center}
.form-success .fs-mark{width:74px;height:74px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#28675b;color:#fffde6;font-size:34px;animation:fs-pop .55s cubic-bezier(.3,1.6,.5,1)}
.form-success h3{font-size:26px;margin:0 0 10px;color:#fffde6}
.form-success p{color:var(--muted);line-height:1.7;margin:0 auto;max-width:440px}
@keyframes fs-pop{from{transform:scale(.3);opacity:0}to{transform:none;opacity:1}}

@media(max-width:900px){body.theme-v2 .contact-layout{grid-template-columns:1fr}}
@media(max-width:560px){.odc-form .form-grid{grid-template-columns:1fr}.svc-pick-grid{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){.why-card img,.why-card .why-body,.rw-card,.rw-photo img,.svc-pick,.svc-pick img,.pg-stat,body.theme-v2 .team-card,body.theme-v2 .team-card img{transition:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.svc-gallery.is-limited .svc-shot.is-extra{display:none}
.pg-more{display:flex;justify-content:center;margin-top:28px}
.svc-gallery:not(.is-limited)+.pg-more{display:none}
body.theme-v2 .portfolio-grid.svc-gallery{columns:auto;display:grid}
body.theme-v2 .portfolio-grid.svc-gallery .svc-shot img{height:100%;aspect-ratio:auto}
.next-title{font-size:21px;margin:34px 0 8px;color:#fffde6}
body.theme-v2 .contact-layout form.odc-form{padding:clamp(24px,3.5vw,40px);border:1px solid #33413b;background:linear-gradient(160deg,#1f2d29,#161f1c)}
body.theme-v2 .contact-layout>div:first-child{position:sticky;top:120px}
@media(max-width:900px){body.theme-v2 .contact-layout>div:first-child{position:static}}
/* service-area list as compact pills */
body.theme-v2 .area-finder .area-grid{display:flex;flex-wrap:wrap;gap:8px;margin:0}
body.theme-v2 .area-finder .area-grid a{display:inline-block;padding:8px 14px;border:1px solid #3c4942;border-radius:999px;font-size:14px;color:var(--ink);text-decoration:none;background:transparent}
body.theme-v2 .area-finder .area-grid a:hover{border-color:#a6e0c6;color:#a6e0c6;background:rgb(40 103 91 / 28%)}
body.theme-v2 .areas-layout .areas-photo{height:520px;top:120px}
@media(max-width:900px){body.theme-v2 .areas-layout .areas-photo{height:290px}}
.pg-stats{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.pg-stats{grid-template-columns:1fr 1fr}}
/* phones: keep long words and the email address inside the screen */
@media(max-width:900px){body.theme-v2 .contact-layout{grid-template-columns:minmax(0,1fr)}}
.contact-card strong{overflow-wrap:break-word}
body.theme-v2 .stories-intro h2{font-size:clamp(30px,6.4vw,56px);line-height:1.08}
body.theme-v2 .stories-intro h2{font-family:var(--font-main);font-style:normal;font-weight:900;color:#fffde6}
/* gallery: every photo shown; better photos get bigger tiles */
#gallery-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-auto-rows:210px;grid-auto-flow:dense}
#gallery-grid .svc-shot,#gallery-grid .svc-shot:first-child{grid-column:auto;grid-row:auto} /* cancels the old every-5th full-width rule */
#gallery-grid .svc-shot.g-big{grid-column:span 2;grid-row:span 2}
#gallery-grid .svc-shot.g-wide{grid-column:span 2}
#gallery-grid .svc-shot.g-tall{grid-row:span 2}
@media(max-width:760px){#gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:150px}}

/* ---------- Contact page: info + square slideshow on top, form below ---------- */
.contact-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center;max-width:1200px;margin:0 auto;padding:clamp(56px,7vw,96px) 6% clamp(40px,5vw,64px)}
.contact-top h2{font-size:clamp(30px,3.4vw,46px);line-height:1.06;margin:0 0 14px}
.contact-top .contact-cards{margin:24px 0 0}
.contact-slides{position:relative;aspect-ratio:1/1;border-radius:18px;overflow:hidden;background:#122e29;box-shadow:0 24px 60px rgb(0 0 0 / 40%)}
.contact-slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity 1.2s ease,transform 6s ease}
.contact-slides img.is-active{opacity:1;transform:scale(1)}
.contact-form-section{max-width:880px;margin:0 auto;padding:clamp(24px,3vw,40px) 6% clamp(56px,7vw,90px)}
.contact-form-section .odc-form{padding:clamp(26px,4vw,48px)}
.odc-form .form-title{display:flex;align-items:center;gap:.35em;flex-wrap:wrap}
.next-section{max-width:1200px;margin:0 auto;padding:0 6% clamp(56px,7vw,96px)}
.next-section .next-title{text-align:center;margin:0 0 26px;font-size:clamp(26px,2.8vw,36px)}
.next-section .next-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.next-section .next-steps li{border:1px solid #33413b;border-radius:14px;padding:58px 22px 22px;background:linear-gradient(160deg,#20302b,#18221f)}
.next-section .next-steps li::before{left:22px;top:18px}
@media(max-width:900px){.contact-top{grid-template-columns:1fr}.contact-slides{max-width:560px;width:100%;margin:0 auto}.next-section .next-steps{grid-template-columns:1fr}}

/* three-leaf mark with each leaf lighting up in its own color (same as the homepage headline) */
.odc-leaves{position:relative;display:inline-block;flex:none;height:.86em;aspect-ratio:242/100;background:url('/_c/images/odc-leaves.png') center/contain no-repeat}
.odc-leaves::after{content:"";position:absolute;inset:0;pointer-events:none;mix-blend-mode:overlay;opacity:.75;
  background:linear-gradient(90deg,#8cc4ff 0 33%,#7ff0bd 33% 66%,#ffb88c 66% 100%);
  -webkit-mask:url('/_c/images/odc-leaves.png') center/contain no-repeat,linear-gradient(100deg,transparent 42%,#000 48%,#000 52%,transparent 58%) 100% 0/250% 100% no-repeat;
  -webkit-mask-composite:source-in;
  mask:url('/_c/images/odc-leaves.png') center/contain no-repeat,linear-gradient(100deg,transparent 42%,#000 48%,#000 52%,transparent 58%) 100% 0/250% 100% no-repeat;
  mask-composite:intersect;animation:odc-leaf-shine 3.2s linear infinite}
@keyframes odc-leaf-shine{from{-webkit-mask-position:center,100% 0;mask-position:center,100% 0}to{-webkit-mask-position:center,0 0;mask-position:center,0 0}}
@media(prefers-reduced-motion:reduce){.odc-leaves::after{animation:none;content:none}.contact-slides img{transition:none}}
.contact-card svg{display:block}
/* desktop: slideshow lines up with the heading and stays in view while scrolling the contact details */
@media(min-width:901px){.contact-top{align-items:start}.contact-slides{position:sticky;top:120px;margin-top:44px}}
/* divider between the contact details and the form (same style as the homepage section rule) */
.contact-divider{position:relative;height:1px;width:min(1100px,88%);margin:clamp(12px,2vw,24px) auto clamp(28px,3vw,40px);background:linear-gradient(90deg,transparent,rgb(166 224 198 / 45%) 22%,rgb(166 224 198 / 45%) 78%,transparent)}
.contact-divider span{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:#a6e0c6;transform:translate(-50%,-50%);box-shadow:0 0 0 6px #1c2220,0 0 14px rgb(166 224 198 / 55%)}

/* "What happens next" cards: tilt + cursor light on desktop, glide with the scroll on phones */
.next-section .next-steps li{position:relative;overflow:hidden;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translate3d(0,var(--ty,0px),0) rotate(var(--rz,0deg));transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s,opacity .6s;will-change:transform}
.next-section .next-steps li::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(360px circle at var(--gx,50%) var(--gy,50%),rgb(166 224 198 / 16%),transparent 60%)}
.next-section .next-steps li.is-tilting{transition:transform .1s ease-out,border-color .3s,box-shadow .3s;border-color:#a6e0c6;box-shadow:0 26px 50px rgb(0 0 0 / 42%);--ty:-6px}
.next-section .next-steps li.is-tilting::after{opacity:1}
.next-section .next-steps li.is-tilting::before{background:#a6e0c6;color:#122e29}
.next-section .next-steps li.is-waiting{opacity:0;--ty:46px;--rz:-2deg}
.next-section .next-steps.is-scrolly li{transition:transform .12s linear,opacity .6s,border-color .3s}
@media(prefers-reduced-motion:reduce){.next-section .next-steps li{transform:none!important;transition:none;opacity:1!important}}
@media(max-width:900px){.next-section .next-steps{gap:24px}}
.odc-form .svc-pick-hint{margin:-4px 0 12px;color:var(--muted);font-size:13.5px}
.rw-card .review-source.review-google{color:#3c4043;margin-top:12px}
