:root{--acds-coral:#f36150;--acds-black:#080808;--acds-ink:#141414;--acds-muted:#686868;--acds-line:#dedede;--acds-soft:#f6f6f7;--acds-soft-2:#f0f0f2;--acds-shell:min(100% - 72px,1480px);--acds-radius:32px;--acds-shadow:0 30px 80px rgba(18,18,18,.09)}
.acds-homepage{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;overflow:hidden;background:#fff;color:var(--acds-ink);font-family:"Roboto Flex",Arial,sans-serif;-webkit-font-smoothing:antialiased}.acds-homepage *{box-sizing:border-box}.acds-shell{width:var(--acds-shell);margin-inline:auto}.acds-section{padding:clamp(88px,8vw,144px) 0}.acds-homepage h1,.acds-homepage h2,.acds-homepage h3{font-family:Helvetica,Arial,sans-serif!important;font-weight:700!important;letter-spacing:-.052em!important;margin:0!important;color:inherit!important}.acds-homepage h1{font-size:clamp(58px,7vw,116px)!important;line-height:.91!important;max-width:11ch}.acds-homepage h2{font-size:clamp(44px,4.7vw,78px)!important;line-height:.96!important}.acds-homepage h3{font-size:clamp(27px,2.05vw,39px)!important;line-height:1.04!important}.acds-homepage p{font-size:18px;line-height:1.56}.acds-eyebrow{margin:0 0 26px!important;color:#fff;font:700 12px/1 Helvetica,Arial,sans-serif!important;letter-spacing:.24em!important}.acds-eyebrow:before{content:"";display:inline-block;width:46px;height:2px;margin-right:18px;vertical-align:middle;background:var(--acds-coral)}.acds-eyebrow.is-dark{color:#555}.acds-button{display:inline-flex!important;align-items:center;justify-content:space-between;gap:36px;min-width:280px;padding:21px 26px!important;border:1px solid transparent!important;border-radius:999px!important;font:700 14px/1 Helvetica,Arial,sans-serif!important;text-transform:uppercase;letter-spacing:.04em;text-decoration:none!important;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}.acds-button span,.acds-inline-link span,.acds-route-card a span{transition:transform .3s ease}.acds-button:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(0,0,0,.14)}.acds-button:hover span,.acds-inline-link:hover span,.acds-route-card a:hover span{transform:translateX(5px)}.acds-button.is-coral{background:var(--acds-coral)!important;color:#fff!important}.acds-button.is-light{background:#fff!important;color:#111!important}.acds-inline-link{display:inline-flex;align-items:center;gap:16px;color:#111!important;font-weight:700;text-decoration:none!important}
/* Hero */
.acds-hero{position:relative;min-height:max(760px,100svh);color:#fff;background:#111}.acds-hero-media{position:absolute;inset:-3%;background-image:var(--acds-hero);background-size:cover;background-position:center;transform:scale(1.04);will-change:transform}.acds-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,2,2,.92) 0%,rgba(2,2,2,.68) 35%,rgba(2,2,2,.17) 68%,rgba(2,2,2,.05) 100%)}.acds-hero-layout{position:relative;z-index:2;min-height:max(760px,100svh);display:flex;flex-direction:column;justify-content:flex-end;padding:150px 0 52px}.acds-hero-copy{max-width:790px}.acds-hero-copy h1{color:#fff!important}.acds-lead{max-width:660px;margin:32px 0 38px!important;color:#e6e6e6;font-size:clamp(20px,1.65vw,28px)!important}.acds-proof{display:flex;gap:34px;margin-top:70px;padding-top:24px;border-top:1px solid rgba(255,255,255,.28)}.acds-proof>div{min-width:155px;padding-right:34px;border-right:1px solid rgba(255,255,255,.28)}.acds-proof>div:last-child{border:0}.acds-proof strong,.acds-proof span{display:block}.acds-proof strong{font:700 24px/1 Helvetica,Arial,sans-serif}.acds-proof span{margin-top:7px;color:#d3d3d3;font-size:13px}
/* shared headings */
.acds-heading{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.65fr);gap:70px;align-items:end;margin-bottom:64px}.acds-heading>p{max-width:520px;margin:0 0 7px;color:var(--acds-muted);font-size:20px}.acds-heading.is-compact{grid-template-columns:minmax(0,1fr) auto}.acds-heading h2{max-width:900px}.acds-section-note{max-width:720px!important;margin:20px 0 0!important;color:var(--acds-muted);font-size:17px!important}
/* routes — separate curved cards, no boxed table */
.acds-routes{background:#fff}.acds-route-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.acds-route-card{position:relative;min-height:440px;padding:38px 34px 30px;border:1px solid var(--acds-line);border-radius:var(--acds-radius);background:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .4s cubic-bezier(.2,.75,.25,1),box-shadow .4s ease,border-color .35s ease}.acds-route-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:var(--acds-coral);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.acds-route-card:hover{transform:translateY(-9px);box-shadow:var(--acds-shadow);border-color:#cfcfcf}.acds-route-card:hover:before{transform:scaleX(1)}.acds-index{margin:0 0 34px!important;color:var(--acds-line)!important;font:300 96px/1 Helvetica,Arial,sans-serif!important;letter-spacing:-.02em}
.acds-route-card:hover .acds-index{color:var(--acds-coral)!important;transition:color .35s ease}
.acds-route-card:after{content:"";position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 46px 46px 0;border-color:transparent var(--acds-line) transparent transparent;transition:border-color .35s ease}
.acds-route-card:hover:after{border-color:transparent var(--acds-coral) transparent transparent}
.acds-route-card-copy:after{content:"Explore \2192";display:inline-block;margin-top:26px;color:var(--acds-coral);font:700 13px/1 Helvetica,Arial,sans-serif;letter-spacing:.04em;opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s ease}
.acds-route-card:hover .acds-route-card-copy:after{opacity:1;transform:translateY(0)}.acds-route-card h3{max-width:14ch;font-size:22px!important;font-weight:700!important}.acds-route-card div>p{max-width:30ch;margin:24px 0 0;color:var(--acds-muted)}.acds-route-card>a{display:flex;justify-content:space-between;gap:24px;padding-top:25px;border-top:1px solid var(--acds-line);color:#111!important;font:700 14px/1.25 Helvetica,Arial,sans-serif!important;text-decoration:none!important}
/* checker — editorial curved composition, larger image */
.acds-checker{background:#fff;padding-top:0}.acds-checker-frame{display:grid;grid-template-columns:minmax(0,58%) minmax(0,42%);min-height:760px;border:1px solid var(--acds-line);border-radius:44px;overflow:hidden;background:#fff;box-shadow:0 20px 70px rgba(0,0,0,.06)}.acds-checker-media{position:relative;min-height:760px;overflow:hidden;background:#ececef}.acds-checker-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.12))}.acds-checker-media img{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;object-position:center;will-change:transform}.acds-checker-badge{position:absolute;z-index:2;left:34px;bottom:34px;padding:15px 18px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);box-shadow:0 12px 32px rgba(0,0,0,.14)}.acds-checker-badge span,.acds-checker-badge strong{display:block}.acds-checker-badge span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#777}.acds-checker-badge strong{margin-top:3px;font:700 14px/1.1 Helvetica,Arial,sans-serif}.acds-checker-content{display:flex;flex-direction:column;justify-content:center;padding:clamp(56px,6vw,104px);min-width:0}.acds-checker-content h2{font-size:clamp(46px,4vw,70px)!important;line-height:.96!important;max-width:12ch;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}.acds-checker-content>div>p:not(.acds-eyebrow){max-width:580px;color:var(--acds-muted);font-size:19px}.acds-checker-form{display:grid;grid-template-columns:minmax(190px,1fr) auto;gap:12px;margin-top:34px}.acds-checker-form input{min-width:0;height:66px;padding:0 22px;border:1px solid #d4d4d4;border-radius:999px;background:#fff;font:400 17px/1 "Roboto Flex",Arial,sans-serif}.acds-checker-form button{min-width:240px;height:66px}.acds-checker-foot{display:flex;justify-content:space-between;gap:20px;margin-top:18px;color:#777}.acds-checker-foot p{margin:0!important;font-size:13px!important}.acds-checker-foot>span{white-space:nowrap;font-size:13px}.acds-checker-status{margin-top:14px;font-weight:700}.acds-checker-status.is-error{color:#a21b1b}.acds-checker-status.is-success{color:#16733a}
/* reviews — 3 visible cards, smooth carousel */
.acds-reviews{background:var(--acds-soft)}.acds-review-controls{display:flex;gap:10px}.acds-review-controls button{width:58px;height:58px;border:1px solid #d3d3d3;border-radius:50%;background:#fff;font-size:23px;cursor:pointer;transition:background .25s ease,color .25s ease,transform .25s ease}.acds-review-controls button:hover{background:#111;color:#fff;transform:translateY(-2px)}.acds-review-viewport{overflow:hidden}.acds-review-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 34px;scrollbar-width:none;cursor:grab}.acds-review-track::-webkit-scrollbar{display:none}.acds-review-track.is-dragging{cursor:grabbing;scroll-behavior:auto}.acds-review-card{flex:0 0 calc((100% - 36px)/3);min-width:0;min-height:440px;padding:34px 32px 30px;border:1px solid #dadadd;border-radius:32px;background:#fff;scroll-snap-align:start;display:flex;flex-direction:column;box-shadow:0 12px 45px rgba(0,0,0,.035);transition:transform .35s ease,box-shadow .35s ease}.acds-review-card:hover{transform:translateY(-7px);box-shadow:0 24px 65px rgba(0,0,0,.10)}.acds-review-card-head{display:flex;align-items:center;gap:10px;padding-bottom:24px;border-bottom:1px solid #e3e3e3}.acds-review-score{font:700 16px/1 Helvetica,Arial,sans-serif}.acds-stars{color:var(--acds-coral);font-size:16px;letter-spacing:.05em}.acds-review-source{margin-left:auto;color:#777;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.acds-review-quote,.acds-review-quote p,.acds-review-quote blockquote{margin:28px 0 0!important;padding:0!important;border:0!important;background:none!important;color:#111!important;font:700 clamp(25px,2vw,34px)/1.13 Helvetica,Arial,sans-serif!important;letter-spacing:-.035em!important;quotes:none!important}.acds-review-quote:before,.acds-review-quote:after,.acds-review-quote *:before,.acds-review-quote *:after{display:none!important;content:none!important}.acds-review-card footer{display:flex;align-items:center;gap:13px;margin-top:auto;padding-top:30px}.acds-review-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#111;color:#fff;font:700 16px/1 Helvetica,Arial,sans-serif}.acds-review-card footer strong,.acds-review-card footer span{display:block}.acds-review-card footer strong{font:700 15px/1.15 Helvetica,Arial,sans-serif}.acds-review-card footer span{margin-top:6px;color:#777;font-size:13px}
/* portfolio — cinematic horizontal rail, lead card wider */
.acds-work{background:#fff}.acds-project-rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:3px 2px 34px;scrollbar-width:none;cursor:grab}.acds-project-rail::-webkit-scrollbar{display:none}.acds-project-rail.is-dragging{cursor:grabbing;scroll-behavior:auto}.acds-project-card{position:relative;flex:0 0 min(38vw,560px);scroll-snap-align:start;border-radius:34px;overflow:hidden;background:#111;color:#fff;min-height:650px;isolation:isolate;box-shadow:0 20px 55px rgba(0,0,0,.10)}.acds-project-card.is-lead{flex-basis:min(58vw,850px)}.acds-project-media{position:absolute;inset:0;display:block;overflow:hidden;background:linear-gradient(135deg,#ececec,#cacaca)}.acds-project-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03) 32%,rgba(0,0,0,.85) 100%)}.acds-project-media img,.acds-project-placeholder .acds-project-media>span:first-child{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.75,.25,1)}.acds-project-placeholder .acds-project-media>span:first-child{background:linear-gradient(140deg,#dcdcdc,#9d9d9d)}.acds-project-card:hover .acds-project-media img{transform:scale(1.055)}.acds-project-number,.acds-project-open{position:absolute;z-index:2;top:25px}.acds-project-number{left:26px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(15px);color:#111;font:700 12px/1 Helvetica,Arial,sans-serif}.acds-project-open{right:26px;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#fff;color:#111;font-size:20px;transition:transform .3s ease}.acds-project-card:hover .acds-project-open{transform:rotate(45deg)}.acds-project-info{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:34px 34px 38px}.acds-project-kicker{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.acds-project-kicker span{padding:8px 11px;border:1px solid rgba(255,255,255,.38);border-radius:999px;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.acds-project-info h3{max-width:14ch;color:#fff!important}.acds-project-info h3 a{color:#fff!important;text-decoration:none!important}.acds-project-info p{margin:15px 0 0!important;color:#e1e1e1;font-size:16px}
/* map */
.acds-map-section{padding-bottom:0;background:#fff}.acds-map-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:60px;align-items:end;margin-bottom:34px}.acds-map-heading>div>p:not(.acds-eyebrow){max-width:670px;color:var(--acds-muted)}.acds-map-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.acds-map-filters button{padding:12px 16px;border:1px solid var(--acds-line);border-radius:999px;background:#fff;color:#222;font:600 13px/1 Helvetica,Arial,sans-serif;cursor:pointer}.acds-map-filters button.is-active{background:#111;color:#fff;border-color:#111}.acds-map-wrap{position:relative;width:calc(100% - 40px);margin:0 auto 20px;height:min(76vh,780px);overflow:hidden;border:1px solid var(--acds-line);border-radius:38px;background:#eceeed}.acds-map{width:100%;height:100%;filter:grayscale(1) contrast(.92)}.acds-map .leaflet-tile-pane{opacity:.78}.acds-map-marker{display:block;width:18px;height:18px;border:4px solid #fff;border-radius:50%;background:var(--acds-coral);box-shadow:0 4px 16px rgba(0,0,0,.32)}.acds-map-popup strong{display:block;font:700 17px/1.2 Helvetica,Arial,sans-serif}.acds-map-popup span{display:block;margin:7px 0 12px;color:#666}.acds-map-popup a{color:var(--acds-coral);font-weight:700;text-decoration:none}.acds-map-empty{position:absolute;inset:0;display:grid;place-items:center;background:#f1f2f2;color:#555;text-align:center}
/* faq */
.acds-faqs{background:#fff}.acds-faq-layout{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:100px}.acds-faq-intro{position:sticky;top:120px;align-self:start}.acds-faq-intro>p:not(.acds-eyebrow){max-width:480px;color:var(--acds-muted)}.acds-faq-list{border:1px solid var(--acds-line);border-radius:32px;overflow:hidden}.acds-faq-item{border-bottom:1px solid var(--acds-line);padding:0 30px}.acds-faq-item:last-child{border-bottom:0}.acds-faq-item button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0;border:0;background:transparent;color:#111;text-align:left;font:700 clamp(21px,1.8vw,30px)/1.15 Helvetica,Arial,sans-serif;cursor:pointer}.acds-faq-item button i{font-style:normal;font-size:30px;font-weight:400;transition:transform .25s ease}.acds-faq-item button[aria-expanded="true"] i{transform:rotate(45deg)}.acds-faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}.acds-faq-answer>div{overflow:hidden}.acds-faq-answer p{max-width:760px;margin:0 0 28px;color:var(--acds-muted)}.acds-faq-item.is-open .acds-faq-answer{grid-template-rows:1fr}
/* booking */
.acds-booking{background:var(--acds-soft)}.acds-date-rail{display:grid;grid-template-columns:repeat(3,1fr) 1.08fr;gap:16px}.acds-date-rail>a{min-height:250px;padding:30px;border:1px solid var(--acds-line);border-radius:30px;background:#fff;color:#111!important;text-decoration:none!important;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}.acds-date-rail>a:hover{transform:translateY(-7px);box-shadow:0 22px 55px rgba(0,0,0,.10)}.acds-date-rail span{font:700 16px/1 Helvetica,Arial,sans-serif}.acds-date-rail strong{margin-top:20px;font:700 72px/.85 Helvetica,Arial,sans-serif;letter-spacing:-.06em}.acds-date-rail small{margin-top:10px;color:#777;font-size:17px}.acds-date-rail i{margin-top:auto;font-style:normal;font-weight:700}.acds-date-contact{background:var(--acds-coral)!important;color:#fff!important}.acds-date-contact strong{font-size:42px;line-height:.95}.acds-booking-embed{padding:42px;background:#fff;border:1px solid var(--acds-line);border-radius:32px}.acds-booking-embed input,.acds-booking-embed select,.acds-booking-embed textarea{border:1px solid #d5d5d5!important;border-radius:14px!important}
/* final */
.acds-final{padding:100px 0;background:#090909;color:#fff}.acds-final-inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.acds-final h2{max-width:950px;color:#fff!important}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.acds-reveal{opacity:1;transform:none}.acds-js .acds-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}.acds-js .acds-reveal.is-visible{opacity:1;transform:none}
@media(max-width:1150px){:root{--acds-shell:min(100% - 42px,1020px)}.acds-route-grid{grid-template-columns:repeat(2,1fr)}.acds-checker-frame{grid-template-columns:1fr}.acds-checker-media{min-height:620px}.acds-checker-content{padding:72px}.acds-review-card{flex-basis:calc((100% - 18px)/2)}.acds-project-card{flex-basis:min(68vw,610px)}.acds-project-card.is-lead{flex-basis:min(82vw,780px)}.acds-faq-layout{gap:60px}.acds-date-rail{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){:root{--acds-shell:calc(100% - 28px);--acds-radius:24px}.acds-section{padding:76px 0}.acds-hero{min-height:820px}.acds-hero-shade{background:linear-gradient(180deg,rgba(2,2,2,.28),rgba(2,2,2,.94) 58%)}.acds-hero-layout{padding:155px 0 36px}.acds-hero-copy h1{font-size:clamp(54px,16vw,78px)!important}.acds-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.acds-proof>div{min-width:0;padding-right:10px}.acds-proof strong{font-size:18px}.acds-heading,.acds-map-heading{grid-template-columns:1fr;gap:25px}.acds-route-grid{grid-template-columns:1fr}.acds-route-card{min-height:350px}.acds-checker-frame{border-radius:26px}.acds-checker-media{min-height:420px}.acds-checker-content{padding:52px 22px}.acds-checker-content h2{max-width:100%;font-size:46px!important}.acds-checker-form{grid-template-columns:1fr}.acds-checker-form button{width:100%}.acds-checker-foot{display:block}.acds-checker-foot>span{display:block;margin-top:8px}.acds-review-card{flex-basis:88%;min-height:410px}.acds-review-quote,.acds-review-quote p,.acds-review-quote blockquote{font-size:27px!important}.acds-project-card,.acds-project-card.is-lead{flex-basis:88%;min-height:540px}.acds-project-info{padding:26px}.acds-map-wrap{width:calc(100% - 20px);height:620px;border-radius:26px}.acds-faq-layout{grid-template-columns:1fr;gap:50px}.acds-faq-intro{position:static}.acds-faq-item{padding:0 20px}.acds-date-rail{grid-template-columns:1fr}.acds-date-rail>a{min-height:210px}.acds-final-inner{flex-direction:column;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.acds-homepage *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.acds-js .acds-reveal{opacity:1;transform:none}}

/* =========================================================
   v1.6.0 — trust, scroll-story and project visibility overhaul
   ========================================================= */
:root{--acds-radius:24px;--acds-button-radius:6px}
.acds-button{border-radius:var(--acds-button-radius)!important;min-width:250px;padding:20px 24px!important;box-shadow:none!important}
.acds-button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.13)!important}
.acds-checker-form input{border-radius:6px!important}
.acds-checker-frame{grid-template-columns:minmax(0,56%) minmax(0,44%);min-height:720px;border-radius:22px;box-shadow:0 24px 60px rgba(10,10,10,.055)}
.acds-checker-media{min-height:720px}
.acds-checker-content{padding:clamp(58px,5.5vw,92px)}
.acds-checker-content h2{font-size:clamp(44px,3.45vw,64px)!important;line-height:.97!important;max-width:13.5ch}
.acds-checker-badge{display:none!important}
.acds-checker-foot{justify-content:flex-start;max-width:590px}

/* Prominent, recognisable trust signals */
.acds-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;max-width:900px}
.acds-proof>div{min-width:0;padding:0 24px;border-right:1px solid rgba(255,255,255,.26)}
.acds-proof>div:first-child{padding-left:0}
.acds-proof strong{font-size:21px}
.acds-proof .is-google strong:before{content:"G";display:inline-grid;place-items:center;width:29px;height:29px;margin-right:9px;border-radius:50%;background:#fff;color:#4285f4;font:800 17px/1 Arial,sans-serif;vertical-align:middle}
.acds-proof .is-trustpilot strong:before{content:"★";margin-right:8px;color:#00b67a;font-size:23px;vertical-align:-1px}
.acds-trust-summary{display:grid;grid-template-columns:auto auto minmax(260px,1fr);gap:18px;align-items:stretch;margin-bottom:64px}
.acds-trust-brand{display:flex;align-items:center;gap:15px;min-width:260px;padding:22px 24px;border:1px solid #d9d9db;border-radius:16px;background:#fff}
.acds-trust-logo{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;font:800 23px/1 Arial,sans-serif}
.acds-trust-brand.is-google .acds-trust-logo{background:#f3f6ff;color:#4285f4}
.acds-trust-brand.is-trustpilot .acds-trust-logo{background:#eafaf5;color:#00b67a}
.acds-trust-brand strong,.acds-trust-brand span{display:block}
.acds-trust-brand strong{font:700 23px/1 Helvetica,Arial,sans-serif}
.acds-trust-brand div>span{margin-top:7px;color:#696969;font-size:13px}
.acds-trust-summary>p{display:flex;align-items:center;margin:0!important;padding:20px 28px;border-left:1px solid #d9d9db;color:#656565;font-size:16px}

/* Review typography should support — not compete with — section headings */
.acds-reviews{background:#f6f6f7}
.acds-reviews .acds-heading{margin-bottom:40px}
.acds-reviews .acds-heading h2{max-width:820px;font-size:clamp(39px,3.6vw,62px)!important;line-height:1!important}
.acds-review-card{flex-basis:calc((100% - 36px)/3);min-height:360px;padding:28px 28px 26px;border-radius:20px;box-shadow:none}
.acds-review-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(0,0,0,.075)}
.acds-review-card-head{padding-bottom:19px}
.acds-review-quote,.acds-review-quote p,.acds-review-quote blockquote{font:600 clamp(19px,1.35vw,24px)/1.34 Helvetica,Arial,sans-serif!important;letter-spacing:-.022em!important}
.acds-review-card footer{padding-top:24px}
.acds-review-avatar{width:42px;height:42px;font-size:14px}
.acds-review-controls button{border-radius:10px;width:52px;height:52px}

/* Editable scroll-story: mouse/trackpad naturally moves to the next content panel */
.acds-story-section{background:#fff;padding-top:40px}
.acds-story-heading{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:70px;align-items:end;margin-bottom:70px}
.acds-story-heading h2{max-width:980px;font-size:clamp(43px,4.25vw,72px)!important}
.acds-story{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);gap:clamp(48px,7vw,120px);align-items:start}
.acds-story-media{position:sticky;top:32px;height:calc(100vh - 64px);min-height:620px;overflow:hidden;border-radius:22px;background:#ececee}
.acds-story-media figure{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.045);transition:opacity .65s ease,transform 1s cubic-bezier(.2,.75,.25,1)}
.acds-story-media figure.is-active{opacity:1;transform:scale(1)}
.acds-story-media img{width:100%;height:100%;object-fit:cover;display:block}
.acds-story-media figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.2))}
.acds-story-copy{scroll-snap-type:y proximity}
.acds-story-panel{min-height:82vh;display:flex;flex-direction:column;justify-content:center;padding:70px 0;scroll-snap-align:center;border-bottom:1px solid #e2e2e2;opacity:.45;transition:opacity .4s ease}
.acds-story-panel.is-active{opacity:1}
.acds-story-panel:last-child{border-bottom:0}
.acds-story-panel h2{font-size:clamp(42px,4vw,68px)!important;line-height:.98!important;max-width:11ch}
.acds-story-body{max-width:540px;color:#666}
.acds-story-body p{font-size:19px}
.acds-story-panel .acds-inline-link{margin-top:18px}

/* Portfolio: always show an image; make the rail feel alive rather than static */
.acds-work{background:#0b0b0b;color:#fff;padding-bottom:clamp(90px,8vw,145px)}
.acds-work .acds-heading h2,.acds-work .acds-heading p,.acds-work .acds-inline-link{color:#fff!important}
.acds-work .acds-eyebrow.is-dark{color:#cfcfcf}
.acds-work .acds-section-note{color:#bcbcbc!important}
.acds-project-rail{gap:18px;padding-bottom:20px;overscroll-behavior-inline:contain}
.acds-project-card{flex:0 0 min(44vw,650px);min-height:660px;border-radius:22px;box-shadow:none;background:#1a1a1a}
.acds-project-card.is-lead{flex-basis:min(66vw,940px)}
.acds-project-media{background:#282828}
.acds-project-media img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;opacity:1!important;visibility:visible!important;filter:none!important;transform:scale(1.01);transition:transform .9s cubic-bezier(.2,.75,.25,1),filter .5s ease}
.acds-project-card:hover .acds-project-media img{transform:scale(1.075);filter:saturate(1.05)}
.acds-project-media:after{background:linear-gradient(180deg,rgba(0,0,0,.02) 30%,rgba(0,0,0,.88) 100%)}
.acds-project-fallback{position:absolute;inset:0;background:linear-gradient(135deg,#777,#222)}
.acds-project-number{border-radius:9px}
.acds-project-open{border-radius:12px}
.acds-project-kicker span{border-radius:7px}
.acds-project-info h3{font-size:clamp(31px,2.6vw,47px)!important}
.acds-project-info p{font-size:17px}

/* Slightly less boxy elsewhere */
.acds-route-card{border-radius:18px}
.acds-map-wrap{border-radius:22px}
.acds-faq-list{border-radius:18px}
.acds-date-rail>a{border-radius:16px}
.acds-booking-embed{border-radius:18px}
.acds-map-filters button{border-radius:7px}

@media(max-width:1150px){
  .acds-trust-summary{grid-template-columns:1fr 1fr}.acds-trust-summary>p{grid-column:1/-1;border-left:0;border-top:1px solid #d9d9db}
  .acds-story{grid-template-columns:1fr;gap:20px}.acds-story-media{position:sticky;top:20px;height:55vh;min-height:440px;z-index:2}.acds-story-panel{min-height:60vh;background:rgba(255,255,255,.96);padding:65px 12px}
  .acds-project-card{flex-basis:min(72vw,650px)}.acds-project-card.is-lead{flex-basis:min(86vw,850px)}
}
@media(max-width:760px){
  .acds-button{min-width:0;width:100%}
  .acds-proof{grid-template-columns:1fr 1fr;row-gap:20px}.acds-proof>div{padding:0 14px}.acds-proof>div:nth-child(2){border-right:0}.acds-proof>div:nth-child(3){padding-left:0}
  .acds-checker-frame{border-radius:14px}.acds-checker-content h2{font-size:43px!important}.acds-checker-form input{border-radius:5px!important}
  .acds-trust-summary{grid-template-columns:1fr}.acds-trust-summary>p{grid-column:auto}.acds-trust-brand{min-width:0}
  .acds-reviews .acds-heading h2{font-size:40px!important}.acds-review-card{flex-basis:86%;min-height:340px}.acds-review-quote,.acds-review-quote p{font-size:20px!important}
  .acds-story-heading{grid-template-columns:1fr;gap:20px}.acds-story-media{height:45vh;min-height:360px;border-radius:14px}.acds-story-panel{min-height:68vh;padding:60px 0}.acds-story-panel h2{font-size:43px!important}
  .acds-project-card,.acds-project-card.is-lead{flex-basis:91%;min-height:560px;border-radius:16px}
}

/* =========================================================
   v1.7.0 — section order, real trust assets and 60/40 story
   ========================================================= */
.acds-proof .is-google strong:before,
.acds-proof .is-trustpilot strong:before{content:none!important;display:none!important}
.acds-proof-brand{display:flex!important;align-items:center;gap:10px;margin-bottom:2px}
.acds-proof-brand img{width:30px;height:30px;object-fit:contain;display:block}
.acds-proof-brand .acds-trustpilot-star{color:#00b67a;font-size:25px;line-height:1}

/* Professional credentials and prominent review sources */
.acds-credentials{background:#f7f7f8}
.acds-credentials .acds-heading{margin-bottom:46px}
.acds-credentials .acds-heading h2{max-width:970px;font-size:clamp(42px,4.1vw,70px)!important}
.acds-trust-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}
.acds-trust-card{position:relative;display:flex;align-items:center;gap:20px;min-height:126px;padding:26px 30px;border:1px solid #d9d9dc;border-radius:20px;background:#fff;color:#111!important;text-decoration:none!important;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.acds-trust-card:hover{transform:translateY(-4px);box-shadow:0 20px 52px rgba(0,0,0,.08);border-color:#c9c9cc}
.acds-trust-card img{width:52px;height:52px;object-fit:contain;display:block;flex:0 0 auto}
.acds-trust-card>b{display:grid;place-items:center;width:52px;height:52px;color:#00b67a;font-size:42px;line-height:1}
.acds-trust-card div{min-width:0}
.acds-trust-card strong,.acds-trust-card span{display:block}
.acds-trust-card strong{font:700 26px/1 Helvetica,Arial,sans-serif}
.acds-trust-card span{margin-top:7px;color:#666;font-size:14px}
.acds-trust-card i,.acds-trust-card em{margin-left:auto;font-style:normal}
.acds-trust-card i{color:var(--acds-coral);letter-spacing:.08em;font-size:16px}
.acds-trust-card em{font:700 18px/1 Helvetica,Arial,sans-serif;color:#00b67a}
.acds-credential-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.acds-credential-card{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:22px;align-items:center;min-height:190px;padding:28px;border:1px solid #d9d9dc;border-radius:20px;background:#fff;color:#111!important;text-decoration:none!important;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.acds-credential-card:hover{transform:translateY(-4px);box-shadow:0 20px 52px rgba(0,0,0,.07);border-color:#c9c9cc}
.acds-credential-mark{display:grid;place-items:center;width:96px;height:96px;border-radius:18px;background:#111;color:#fff;overflow:hidden}
.acds-credential-mark strong{font:700 25px/1 Helvetica,Arial,sans-serif;letter-spacing:-.03em}
.acds-credential-mark img{width:76%;height:76%;object-fit:contain;display:block}
.acds-credential-card h3{font-size:clamp(22px,1.55vw,30px)!important;line-height:1.08!important;letter-spacing:-.035em!important}
.acds-credential-card p{margin:10px 0 0!important;color:#6a6a6a;font-size:15px!important;line-height:1.45!important}
.acds-credential-arrow{align-self:start;font-size:24px}

/* Scroll-led content: text takes 60%, image takes 40%. */
.acds-story{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:clamp(42px,5vw,84px)}
.acds-story-copy{order:1;min-width:0}
.acds-story-media{order:2;top:72px;height:min(68vh,680px);min-height:500px;border-radius:20px}
.acds-story-panel{min-height:65vh;padding:54px 0;opacity:.38}
.acds-story-panel h2{font-size:clamp(40px,3.4vw,60px)!important;line-height:1!important;max-width:13ch}
.acds-story-body{max-width:700px}
.acds-story-body p{font-size:18px}
.acds-story-media figure:after{background:linear-gradient(180deg,transparent 72%,rgba(0,0,0,.12))}

/* Checker now follows FAQs and uses its own editable image. */
.acds-checker{padding-top:clamp(88px,8vw,144px)}
.acds-checker-frame{grid-template-columns:minmax(0,52%) minmax(0,48%);min-height:650px;border-radius:20px}
.acds-checker-media{min-height:650px}
.acds-checker-content{padding:clamp(52px,5vw,84px)}
.acds-checker-content h2{font-size:clamp(42px,3.4vw,61px)!important;max-width:14ch}
.acds-checker-form{grid-template-columns:minmax(190px,1fr) minmax(215px,auto)}

/* Review heading stays secondary to the page hierarchy. */
.acds-reviews .acds-heading h2{font-size:clamp(38px,3.25vw,56px)!important;max-width:760px}
.acds-review-card{min-height:340px}
.acds-review-quote,.acds-review-quote p,.acds-review-quote blockquote{font-size:clamp(18px,1.25vw,23px)!important;line-height:1.38!important}

@media(max-width:1150px){
  .acds-trust-panel,.acds-credential-grid{grid-template-columns:1fr}
  .acds-story{grid-template-columns:1fr;gap:28px}
  .acds-story-media{order:1;position:sticky;top:18px;height:52vh;min-height:400px;z-index:2}
  .acds-story-copy{order:2}
  .acds-story-panel{min-height:58vh;padding:58px 8px;background:rgba(255,255,255,.97)}
  .acds-checker-frame{grid-template-columns:1fr}
  .acds-checker-media{min-height:520px}
}
@media(max-width:760px){
  .acds-trust-panel{gap:12px}
  .acds-trust-card{min-height:108px;padding:20px;gap:15px;border-radius:14px}
  .acds-trust-card img,.acds-trust-card>b{width:44px;height:44px}
  .acds-trust-card strong{font-size:22px}
  .acds-trust-card i,.acds-trust-card em{display:none}
  .acds-credential-card{grid-template-columns:72px 1fr;min-height:150px;padding:20px;border-radius:14px}
  .acds-credential-mark{width:72px;height:72px;border-radius:13px}
  .acds-credential-arrow{display:none}
  .acds-story-media{height:42vh;min-height:330px;border-radius:14px}
  .acds-story-panel{min-height:60vh;padding:50px 0}
  .acds-story-panel h2{font-size:40px!important}
  .acds-checker-frame{border-radius:14px}
  .acds-checker-media{min-height:400px}
  .acds-checker-content h2{font-size:41px!important}
  .acds-checker-form{grid-template-columns:1fr}
}


/* =========================================================
   v1.7.1 — compact story typography + credentials in hero
   ========================================================= */
/* Qualifications now live where users see them immediately: the hero proof rail. */
.acds-proof{
  width:100%;
  max-width:none;
  grid-template-columns:minmax(175px,1.25fr) minmax(175px,1.25fr) minmax(130px,.8fr) repeat(3,minmax(120px,.75fr));
}
.acds-proof>div{display:flex;flex-direction:column;justify-content:center;min-height:64px;padding:0 22px}
.acds-proof .is-qualification strong{font-size:20px;letter-spacing:-.02em}
.acds-proof .is-qualification span{max-width:145px;line-height:1.25}

/* The separate qualifications block is no longer rendered. Keep these hidden for cached markup. */
.acds-credentials{display:none!important}

/* Story headings use the full text column instead of a narrow 11–13 character measure. */
.acds-story-section{padding-top:clamp(72px,6vw,108px)}
.acds-story-heading{grid-template-columns:minmax(180px,.42fr) minmax(0,1.58fr);gap:clamp(28px,4vw,66px);margin-bottom:clamp(36px,4vw,62px)}
.acds-story-heading h2{font-size:clamp(38px,3.15vw,56px)!important;line-height:1.02!important;max-width:1100px}
.acds-story{grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr);gap:clamp(38px,4.5vw,76px)}
.acds-story-panel{min-height:52vh;padding:42px 0}
.acds-story-panel h2{font-size:clamp(36px,2.65vw,52px)!important;line-height:1.04!important;max-width:none!important;width:100%}
.acds-story-body{max-width:none;width:100%}
.acds-story-body p{max-width:820px;font-size:18px!important;line-height:1.55!important}
.acds-story-media{height:min(62vh,620px);min-height:450px}

@media(max-width:1180px){
  .acds-proof{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}
  .acds-proof>div:nth-child(3){border-right:0}
  .acds-proof>div:nth-child(4){padding-left:0}
  .acds-story-heading{grid-template-columns:1fr;gap:18px}
  .acds-story{grid-template-columns:1fr}
  .acds-story-media{height:48vh;min-height:380px}
  .acds-story-panel{min-height:auto;padding:56px 0}
}
@media(max-width:760px){
  .acds-proof{display:flex;overflow-x:auto;gap:0;padding-bottom:8px;scroll-snap-type:x proximity}
  .acds-proof>div{flex:0 0 170px;scroll-snap-align:start;border-right:1px solid rgba(255,255,255,.26)!important;padding:0 16px!important}
  .acds-proof>div:first-child{padding-left:0!important}
  .acds-story-heading h2{font-size:36px!important}
  .acds-story-panel h2{font-size:36px!important;max-width:none!important}
  .acds-story-panel{padding:46px 0}
}

/* v1.7.2 — minimal route-card interaction patch */
.acds-route-card{
  position:relative;
  min-height:410px;
  display:grid!important;
  grid-template-rows:auto 1fr;
  align-content:stretch;
  padding:38px 34px 32px;
  border:1px solid var(--acds-line);
  border-radius:18px;
  background:#fff;
  color:var(--acds-ink)!important;
  text-decoration:none!important;
  overflow:hidden;
  cursor:pointer;
  transition:background-color .32s ease,color .32s ease,border-color .32s ease,transform .38s cubic-bezier(.2,.75,.25,1),box-shadow .38s ease;
}
.acds-route-card:before{display:none!important}
.acds-route-card-copy{align-self:end;min-width:0}
.acds-route-card .acds-index{margin:0!important;color:var(--acds-coral)!important;transition:color .32s ease,opacity .32s ease}
.acds-route-card h3{color:inherit!important;transition:color .32s ease}
.acds-route-card .acds-route-card-copy>p{max-width:30ch;margin:24px 0 0!important;color:var(--acds-muted)!important;transition:color .32s ease}
.acds-route-card-arrow{position:absolute;right:28px;top:27px;display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(17,17,17,.18);border-radius:50%;font:400 19px/1 Helvetica,Arial,sans-serif;color:#111;opacity:.72;transition:transform .32s ease,color .32s ease,border-color .32s ease,background-color .32s ease}
.acds-route-card>a{display:none!important}
@media (hover:hover){
  .acds-route-card:hover{background:var(--acds-coral);border-color:var(--acds-coral);color:#fff!important;transform:translateY(-7px);box-shadow:0 24px 58px rgba(243,97,80,.22)}
  .acds-route-card:hover .acds-index,.acds-route-card:hover .acds-route-card-copy>p{color:#fff!important}
  .acds-route-card:hover .acds-index{opacity:.78}
  .acds-route-card:hover .acds-route-card-arrow{color:#fff;border-color:rgba(255,255,255,.62);background:rgba(255,255,255,.08);transform:translate(3px,-3px)}
}
.acds-route-card:focus-visible{outline:3px solid rgba(243,97,80,.32);outline-offset:5px;background:var(--acds-coral);border-color:var(--acds-coral);color:#fff!important;box-shadow:0 24px 58px rgba(243,97,80,.2)}
.acds-route-card:focus-visible .acds-index,.acds-route-card:focus-visible .acds-route-card-copy>p{color:#fff!important}
.acds-route-card:focus-visible .acds-route-card-arrow{color:#fff;border-color:rgba(255,255,255,.62)}
@media(max-width:760px){.acds-route-card{min-height:330px;padding:30px 26px}.acds-route-card-arrow{right:22px;top:22px}}

/* =========================================================
   v1.7.3 — aligned route cards + native contact form
   ========================================================= */
.acds-route-card{
  display:grid!important;
  grid-template-rows:auto 1fr!important;
  align-content:start!important;
  justify-content:initial!important;
  min-height:430px!important;
  padding:36px 34px 34px!important;
  color:#111!important;
  cursor:pointer;
  transform:none!important;
}
.acds-route-card .acds-index{margin:0!important}
.acds-route-card-copy{
  align-self:start!important;
  margin-top:118px!important;
  display:grid!important;
  grid-template-rows:88px auto!important;
  min-width:0;
}
.acds-route-card h3{
  min-height:88px!important;
  max-width:12ch!important;
  display:flex!important;
  align-items:flex-start!important;
}
.acds-route-card .acds-route-card-copy>p{
  margin:20px 0 0!important;
  color:var(--acds-muted)!important;
  transition:color .28s ease!important;
}
.acds-route-card-arrow{display:none!important}
@media(hover:hover){
  .acds-route-card:hover{
    background:var(--acds-coral)!important;
    border-color:var(--acds-coral)!important;
    color:#fff!important;
    box-shadow:0 20px 48px rgba(243,97,80,.18)!important;
    transform:none!important;
  }
  .acds-route-card:hover .acds-index,
  .acds-route-card:hover .acds-route-card-copy>p{color:#fff!important}
}
.acds-route-card:focus-visible{
  outline:3px solid rgba(243,97,80,.28)!important;
  outline-offset:4px!important;
  background:var(--acds-coral)!important;
  border-color:var(--acds-coral)!important;
  color:#fff!important;
  transform:none!important;
}
.acds-route-card:focus-visible .acds-index,
.acds-route-card:focus-visible .acds-route-card-copy>p{color:#fff!important}

.acds-contact{background:#f4f4f5;color:#111}
.acds-contact-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(55px,7vw,120px);align-items:start}
.acds-contact-intro{position:sticky;top:56px}
.acds-contact-intro h2{max-width:8ch!important}
.acds-contact-intro>p:not(.acds-eyebrow){max-width:520px;margin:30px 0 0!important;color:#646464;font-size:20px!important}
.acds-contact-phone{display:inline-block;margin-top:36px;color:#111!important;font:700 clamp(25px,2.2vw,38px)/1 Helvetica,Arial,sans-serif!important;text-decoration:none!important;letter-spacing:-.035em}
.acds-contact-response{display:block;margin-top:13px;color:#777;font-size:14px}
.acds-contact-form{position:relative;padding:clamp(30px,4.2vw,62px);border:1px solid #d7d7d9;border-radius:12px;background:#fff;box-shadow:0 18px 60px rgba(0,0,0,.055)}
.acds-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
.acds-contact-fields label{display:block;min-width:0}
.acds-contact-fields label.is-wide{grid-column:1/-1}
.acds-contact-fields label>span{display:block;margin-bottom:9px;color:#222;font:700 13px/1.2 Helvetica,Arial,sans-serif!important;letter-spacing:.01em}
.acds-contact-fields input,
.acds-contact-fields select,
.acds-contact-fields textarea{
  width:100%!important;
  margin:0!important;
  padding:15px 16px!important;
  border:1px solid #ceced1!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#111!important;
  font:400 16px/1.45 "Roboto Flex",Arial,sans-serif!important;
  box-shadow:none!important;
  outline:none!important;
  transition:border-color .2s ease,box-shadow .2s ease
}
.acds-contact-fields input,.acds-contact-fields select{height:56px!important}
.acds-contact-fields textarea{min-height:160px;resize:vertical}
.acds-contact-fields input:focus,
.acds-contact-fields select:focus,
.acds-contact-fields textarea:focus{border-color:var(--acds-coral)!important;box-shadow:0 0 0 3px rgba(243,97,80,.12)!important}
.acds-file-field input[type=file]{height:auto!important;padding:13px!important;background:#fafafa!important}
.acds-file-field small{display:block;margin-top:8px;color:#777;font-size:12px}
.acds-consent{display:flex;align-items:flex-start;gap:11px;margin:24px 0 0;color:#606060;font-size:13px;line-height:1.45}
.acds-consent input{width:18px;height:18px;margin-top:1px;accent-color:var(--acds-coral);flex:0 0 auto}
.acds-contact-submit{display:inline-flex;align-items:center;justify-content:center;min-width:250px;min-height:58px;margin-top:28px;padding:18px 24px;border:1px solid var(--acds-coral);border-radius:5px;background:var(--acds-coral);color:#fff;font:700 14px/1 Helvetica,Arial,sans-serif;text-transform:uppercase;letter-spacing:.045em;cursor:pointer;transition:background .22s ease,border-color .22s ease,color .22s ease}
.acds-contact-submit:hover{background:#111;border-color:#111}
.acds-contact-submit:disabled{opacity:.58;cursor:wait}
.acds-contact-status{min-height:24px;margin-top:16px;font-weight:700;font-size:14px}
.acds-contact-status.is-success{color:#16733a}.acds-contact-status.is-error{color:#a21b1b}
.acds-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

@media(max-width:1150px){
  .acds-route-card-copy{margin-top:92px!important}
  .acds-contact-layout{grid-template-columns:1fr;gap:44px}
  .acds-contact-intro{position:static}
  .acds-contact-intro h2{max-width:12ch!important}
}
@media(max-width:760px){
  .acds-route-card{min-height:340px!important;padding:28px 25px!important}
  .acds-route-card-copy{margin-top:62px!important;grid-template-rows:auto auto!important}
  .acds-route-card h3{min-height:0!important}
  .acds-contact-fields{grid-template-columns:1fr}
  .acds-contact-fields label.is-wide{grid-column:auto}
  .acds-contact-form{padding:26px 20px;border-radius:8px}
  .acds-contact-submit{width:100%;min-width:0}
}

/* v1.7.4 — exact v1.7.3 design with WPForms + postcode map locations */
.acds-contact{background:#080808!important;color:#fff!important}
.acds-contact .acds-contact-intro .acds-eyebrow{color:var(--acds-coral)!important}
.acds-contact .acds-contact-intro .acds-eyebrow::before{background:var(--acds-coral)!important}
.acds-contact .acds-contact-intro h2{color:#fff!important}
.acds-contact .acds-contact-intro>p:not(.acds-eyebrow){color:rgba(255,255,255,.74)!important}
.acds-contact .acds-contact-phone{color:#fff!important}
.acds-contact .acds-contact-response{color:rgba(255,255,255,.58)!important}
.acds-wpforms-shell{min-width:0}
.acds-wpforms-shell .wpforms-container,.acds-wpforms-shell div.wpforms-container-full{margin:0!important;padding:clamp(26px,3.2vw,42px)!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:22px!important;background:#111!important;box-shadow:0 20px 50px rgba(0,0,0,.24)!important}
.acds-wpforms-shell .wpforms-container .wpforms-form{margin:0!important}
.acds-wpforms-shell .wpforms-container label,.acds-wpforms-shell .wpforms-container .wpforms-field-label,.acds-wpforms-shell .wpforms-container .wpforms-field-sublabel,.acds-wpforms-shell .wpforms-container .wpforms-field-description{color:#fff!important;font-family:"Roboto Flex",Arial,sans-serif!important}
.acds-wpforms-shell .wpforms-container .wpforms-field-label{margin-bottom:8px!important;font-size:13px!important;font-weight:750!important;line-height:1.25!important}
.acds-wpforms-shell .wpforms-container .wpforms-field{padding:0 0 20px!important}
.acds-wpforms-shell .wpforms-container input[type=text],.acds-wpforms-shell .wpforms-container input[type=email],.acds-wpforms-shell .wpforms-container input[type=tel],.acds-wpforms-shell .wpforms-container input[type=url],.acds-wpforms-shell .wpforms-container input[type=number],.acds-wpforms-shell .wpforms-container input[type=file],.acds-wpforms-shell .wpforms-container textarea,.acds-wpforms-shell .wpforms-container select{width:100%!important;min-height:52px!important;padding:13px 14px!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:10px!important;background:#161616!important;color:#fff!important;box-shadow:none!important;font-family:"Roboto Flex",Arial,sans-serif!important;font-size:15px!important;line-height:1.35!important}
.acds-wpforms-shell .wpforms-container textarea{min-height:150px!important;resize:vertical!important}
.acds-wpforms-shell .wpforms-container input::placeholder,.acds-wpforms-shell .wpforms-container textarea::placeholder{color:rgba(255,255,255,.52)!important;opacity:1!important}
.acds-wpforms-shell .wpforms-container input:focus,.acds-wpforms-shell .wpforms-container textarea:focus,.acds-wpforms-shell .wpforms-container select:focus{border-color:var(--acds-coral)!important;box-shadow:0 0 0 2px rgba(243,97,80,.18)!important;outline:none!important}
.acds-wpforms-shell .wpforms-container button[type=submit],.acds-wpforms-shell .wpforms-container .wpforms-submit{width:100%!important;min-height:54px!important;margin-top:8px!important;padding:15px 24px!important;border:0!important;border-radius:10px!important;background:var(--acds-coral)!important;color:#fff!important;box-shadow:none!important;font-family:Helvetica,Arial,sans-serif!important;font-size:15px!important;font-weight:800!important;line-height:1.1!important;text-transform:none!important;transition:background .18s ease,transform .18s ease!important}
.acds-wpforms-shell .wpforms-container button[type=submit]:hover,.acds-wpforms-shell .wpforms-container .wpforms-submit:hover{background:#fff!important;color:#080808!important;transform:translateY(-2px)!important}
.acds-wpforms-shell .wpforms-container .wpforms-error{color:#ffb8af!important}
.acds-wpforms-shell .wpforms-confirmation-container-full{margin:0!important;padding:26px!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:14px!important;background:#111!important;color:#fff!important}
.acds-form-missing{margin:0!important;padding:30px!important;border:1px solid rgba(255,255,255,.14)!important;color:#fff!important;background:#111!important}
.acds-map-popup p{margin:8px 0 0!important;color:#555!important;font-size:13px!important;line-height:1.5!important}
@media(max-width:767px){.acds-wpforms-shell .wpforms-container,.acds-wpforms-shell div.wpforms-container-full{padding:24px 18px!important;border-radius:18px!important}}

/* v1.7.5 — pinned story sequence: one discipline visible per scroll step */
@media (min-width:981px){
  .acds-story-section{overflow:visible!important}
  .acds-story{
    --acds-story-sticky-top:96px;
    display:block!important;
    position:relative;
    min-height:calc((var(--acds-story-count,3) * 78svh) + 22svh);
  }
  .acds-story-stage{
    position:sticky;
    top:var(--acds-story-sticky-top);
    height:calc(100svh - var(--acds-story-sticky-top) - 24px);
    min-height:590px;
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(360px,1fr);
    gap:clamp(42px,5vw,88px);
    align-items:stretch;
    overflow:hidden;
  }
  .admin-bar .acds-story-stage{
    top:calc(var(--acds-story-sticky-top) + 32px);
    height:calc(100svh - var(--acds-story-sticky-top) - 56px);
  }
  .acds-story-media{
    position:relative!important;
    top:auto!important;
    order:2!important;
    width:100%;
    height:100%!important;
    min-height:0!important;
    align-self:stretch;
    border-radius:22px;
    overflow:hidden;
  }
  .acds-story-copy{
    position:relative;
    order:1!important;
    min-width:0;
    height:100%;
    overflow:hidden;
    scroll-snap-type:none!important;
  }
  .acds-story-panel{
    position:absolute;
    inset:0;
    min-height:0!important;
    margin:0;
    padding:clamp(48px,6vh,84px) 0!important;
    border:0!important;
    display:flex;
    flex-direction:column;
    justify-content:center;
    opacity:0!important;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(0,34px,0);
    transition:opacity .38s ease,transform .55s cubic-bezier(.22,.75,.22,1),visibility 0s linear .55s!important;
  }
  .acds-story-panel.is-active{
    opacity:1!important;
    visibility:visible;
    pointer-events:auto;
    transform:translate3d(0,0,0);
    transition-delay:0s!important;
  }
  .acds-story-panel h2{
    max-width:13.5ch!important;
    font-size:clamp(46px,4.2vw,76px)!important;
    line-height:.98!important;
    text-wrap:balance;
  }
  .acds-story-body{max-width:760px!important}
  .acds-story-progress{
    position:absolute;
    left:0;
    bottom:clamp(28px,4vh,52px);
    display:flex;
    gap:9px;
    z-index:4;
  }
  .acds-story-progress span{
    width:34px;
    height:3px;
    background:#dedede;
    transition:width .35s ease,background .35s ease;
  }
  .acds-story-progress span.is-active{width:66px;background:#f36150}
}

@media (max-width:980px){
  .acds-story-stage{display:contents}
  .acds-story-progress{display:none}
}

/* v1.7.6 — guaranteed single-panel sticky story, restored booking, project/map reliability */
.acds-story-panel[hidden],.acds-story-media figure[hidden]{display:none!important}
.acds-booking-return{background:#f6f6f7}
.acds-booking-return-layout{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:clamp(44px,7vw,110px);align-items:start}
.acds-booking-return-copy{position:sticky;top:120px}
.acds-booking-return-copy h2{max-width:11ch}
.acds-booking-return-copy>p:not(.acds-eyebrow){max-width:560px;color:#666}
.acds-booking-return-embed{min-width:0;padding:clamp(24px,3vw,48px);border:1px solid #dedede;border-radius:22px;background:#fff}
.acds-project-empty{width:100%;padding:34px;border:1px solid #ddd;border-radius:18px;background:#f7f7f7;color:#555}
@media(max-width:980px){.acds-booking-return-layout{grid-template-columns:1fr}.acds-booking-return-copy{position:static}}

/* v1.7.7 — reliable Resi-style pinned story and exact restored booking layout */
@media (min-width:981px){
  .acds-story-section{overflow:visible!important}
  .acds-story{
    --acds-story-sticky-top:96px;
    position:relative!important;
    display:block!important;
    width:100%;
    height:var(--acds-story-track,300svh)!important;
    min-height:var(--acds-story-track,300svh)!important;
  }
  .acds-story-stage{
    position:sticky!important;
    top:var(--acds-story-sticky-top)!important;
    z-index:2;
    width:100%;
    height:calc(100svh - var(--acds-story-sticky-top) - 24px)!important;
    min-height:590px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr)!important;
    gap:clamp(42px,5vw,88px)!important;
    align-items:stretch!important;
    overflow:hidden!important;
    background:#fff;
  }
  .admin-bar .acds-story-stage{
    top:calc(var(--acds-story-sticky-top) + 32px)!important;
    height:calc(100svh - var(--acds-story-sticky-top) - 56px)!important;
  }
  .acds-story-copy{
    position:relative!important;
    order:1!important;
    width:100%;
    height:100%!important;
    min-width:0;
    overflow:hidden!important;
  }
  .acds-story-panel{
    position:absolute!important;
    inset:0!important;
    display:flex!important;
    flex-direction:column;
    justify-content:center;
    width:100%;
    min-height:0!important;
    margin:0!important;
    padding:clamp(50px,7vh,92px) 0!important;
    border:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(0,34px,0)!important;
    transition:opacity .34s ease,transform .5s cubic-bezier(.22,.75,.22,1),visibility 0s linear .5s!important;
  }
  .acds-story-panel.is-active{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition-delay:0s!important;
  }
  .acds-story-panel h2{
    width:100%!important;
    max-width:14ch!important;
    font-size:clamp(46px,4vw,72px)!important;
    line-height:.99!important;
    text-wrap:balance;
  }
  .acds-story-body{width:100%!important;max-width:760px!important}
  .acds-story-media{
    position:relative!important;
    top:auto!important;
    order:2!important;
    width:100%;
    height:100%!important;
    min-height:0!important;
    align-self:stretch!important;
    overflow:hidden!important;
    border-radius:22px!important;
    background:#ececee;
  }
  .acds-story-media figure{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    margin:0!important;
    opacity:0!important;
    visibility:hidden!important;
    transform:scale(1.035)!important;
    transition:opacity .42s ease,transform .8s cubic-bezier(.2,.75,.25,1),visibility 0s linear .8s!important;
  }
  .acds-story-media figure.is-active{
    opacity:1!important;
    visibility:visible!important;
    transform:scale(1)!important;
    transition-delay:0s!important;
  }
  .acds-story-progress{
    position:absolute!important;
    left:0!important;
    bottom:clamp(26px,4vh,52px)!important;
    z-index:4;
    display:flex!important;
    gap:9px!important;
  }
  .acds-story-progress span{width:34px;height:3px;background:#dedede;transition:width .3s ease,background .3s ease}
  .acds-story-progress span.is-active{width:66px;background:var(--acds-coral)}
}

@media (max-width:980px){
  .acds-story{height:auto!important;min-height:0!important}
  .acds-story-stage{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;display:block!important;overflow:visible!important}
  .acds-story-media{position:relative!important;top:auto!important;width:100%;height:52vh!important;min-height:380px!important;margin-bottom:26px}
  .acds-story-media figure{display:none!important}
  .acds-story-media figure:first-child{display:block!important;opacity:1!important;visibility:visible!important;transform:none!important}
  .acds-story-copy{height:auto!important;overflow:visible!important}
  .acds-story-panel{position:relative!important;inset:auto!important;display:block!important;min-height:0!important;padding:54px 0!important;border-bottom:1px solid #e2e2e2!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
  .acds-story-panel:last-of-type{border-bottom:0!important}
  .acds-story-progress{display:none!important}
}

/* Restore the booking section that appeared before v1.7.6. */
.acds-booking{background:var(--acds-soft)!important}
.acds-booking .acds-heading{margin-bottom:clamp(34px,4vw,58px)}
.acds-booking-embed{padding:42px!important;background:#fff!important;border:1px solid var(--acds-line)!important;border-radius:18px!important;overflow:hidden}
.acds-booking-embed>*:first-child{margin-top:0!important}
.acds-booking-embed>*:last-child{margin-bottom:0!important}
@media(max-width:760px){.acds-booking-embed{padding:22px!important}}


/* =========================================================
   v1.7.8 — production fixes: pinned story, booking, map, FAQ
   ========================================================= */

/* Remove Divi module/row whitespace around the homepage shortcode. */
.acds-homepage-host{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
}
.acds-homepage-host.et_pb_row,
.acds-homepage-host.et_pb_section,
.acds-homepage-host.et_pb_module,
.acds-homepage-host.et_pb_column{
  width:100%!important;
  max-width:none!important;
}
.acds-homepage{
  margin-top:0!important;
  overflow-x:clip!important;
  overflow-y:visible!important;
}

/* FAQ questions are genuine H3 headings, not oversized body spans. */
.acds-faq-item button h3{
  margin:0!important;
  padding:0!important;
  color:#111!important;
  font-family:Helvetica,Arial,sans-serif!important;
  font-size:clamp(20px,1.45vw,27px)!important;
  font-weight:700!important;
  line-height:1.16!important;
  letter-spacing:-.035em!important;
  text-align:left!important;
}
.acds-faq-item button{
  align-items:center!important;
}
.acds-faq-item button i{
  flex:0 0 auto;
}

/* True pinned scrollytelling. The viewport never becomes an empty track. */
@media(min-width:981px){
  .acds-story-section{
    position:relative!important;
    overflow:visible!important;
  }
  .acds-story{
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-height:230vh;
    margin:0!important;
    overflow:visible!important;
  }
  .acds-story-stage{
    position:absolute!important;
    top:0;
    left:0;
    z-index:20;
    display:grid!important;
    grid-template-columns:minmax(0,3fr) minmax(360px,2fr)!important;
    gap:clamp(46px,5vw,86px)!important;
    align-items:stretch!important;
    width:100%;
    min-height:520px;
    padding:0!important;
    background:#fff;
    overflow:hidden!important;
  }
  .acds-story-stage.is-fixed{
    position:fixed!important;
    z-index:700!important;
    margin:0!important;
    box-shadow:0 20px 55px rgba(0,0,0,.045);
  }
  .acds-story-stage.is-after{
    position:absolute!important;
    top:auto!important;
    bottom:0!important;
  }
  .acds-story-copy{
    position:relative!important;
    order:1!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .acds-story-panel{
    position:absolute!important;
    inset:0!important;
    display:none!important;
    flex-direction:column!important;
    justify-content:center!important;
    width:100%!important;
    min-height:0!important;
    height:100%!important;
    padding:clamp(38px,5vw,74px) 0!important;
    border:0!important;
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(22px)!important;
    pointer-events:none!important;
    transition:opacity .42s ease,transform .42s ease,visibility .42s ease!important;
  }
  .acds-story-panel.is-active{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    pointer-events:auto!important;
  }
  .acds-story-panel h2{
    width:100%!important;
    max-width:920px!important;
    font-size:clamp(42px,3.6vw,66px)!important;
    line-height:.98!important;
  }
  .acds-story-body{
    width:100%!important;
    max-width:820px!important;
  }
  .acds-story-media{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    order:2!important;
    width:100%!important;
    height:100%!important;
    min-height:520px!important;
    margin:0!important;
    border-radius:24px!important;
    overflow:hidden!important;
    background:#ececee!important;
  }
  .acds-story-media figure{
    position:absolute!important;
    inset:0!important;
    display:none!important;
    margin:0!important;
    opacity:0!important;
    visibility:hidden!important;
    transform:scale(1.025)!important;
  }
  .acds-story-media figure.is-active{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    transform:scale(1)!important;
  }
  .acds-story-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .acds-story-progress{
    position:absolute!important;
    left:0!important;
    bottom:clamp(28px,4vw,50px)!important;
    z-index:4!important;
    display:flex!important;
    gap:9px!important;
  }
  .acds-story-progress span{
    width:34px!important;
    height:3px!important;
    background:#dedede!important;
  }
  .acds-story-progress span.is-active{
    width:66px!important;
    background:var(--acds-coral)!important;
  }
}

/* Booking restored as the visual date-card system, with critical styles
   strong enough to survive Divi's global anchor and module rules. */
.acds-booking{
  background:#f6f6f7!important;
}
.acds-booking-heading{
  display:grid!important;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr)!important;
  gap:clamp(42px,6vw,100px)!important;
  align-items:end!important;
  margin-bottom:clamp(44px,5vw,74px)!important;
}
.acds-booking-heading>p{
  max-width:550px!important;
  margin:0 0 8px!important;
  color:#666!important;
  font-size:20px!important;
  line-height:1.55!important;
}
.acds-booking-heading h2{
  max-width:820px!important;
  font-size:clamp(46px,4.5vw,74px)!important;
}
.acds-booking-layout{
  display:grid!important;
  grid-template-columns:minmax(220px,.38fr) minmax(0,1.62fr)!important;
  gap:clamp(28px,4vw,64px)!important;
  align-items:stretch!important;
}
.acds-calendar-visual{
  position:relative;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:330px!important;
  padding:64px 32px 38px!important;
  border:1px solid #dcdcdf!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,var(--acds-coral) 0 25%,#fff 25% 100%)!important;
  box-shadow:0 24px 60px rgba(0,0,0,.08)!important;
  color:#111!important;
}
.acds-calendar-visual:before,
.acds-calendar-visual:after{
  content:"";
  position:absolute;
  top:-15px;
  width:22px;
  height:54px;
  border:6px solid #777;
  border-bottom-color:#aaa;
  border-radius:14px;
  background:transparent;
}
.acds-calendar-visual:before{left:28%}
.acds-calendar-visual:after{right:28%}
.acds-calendar-visual span{
  margin-top:16px!important;
  font:700 18px/1 Helvetica,Arial,sans-serif!important;
}
.acds-calendar-visual strong{
  margin-top:10px!important;
  font:700 102px/.82 Helvetica,Arial,sans-serif!important;
  letter-spacing:-.075em!important;
}
.acds-calendar-visual small{
  margin-top:15px!important;
  font-size:22px!important;
  color:#555!important;
}
.acds-booking .acds-date-rail{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.acds-booking .acds-date-rail>a.acds-date-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:158px!important;
  height:auto!important;
  margin:0!important;
  padding:24px 26px!important;
  border:1px solid #dcdcdf!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#111!important;
  text-decoration:none!important;
  box-shadow:none!important;
  opacity:1!important;
  transform:none!important;
  overflow:hidden!important;
  transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease!important;
}
.acds-booking .acds-date-rail>a.acds-date-card:hover{
  border-color:#bcbcc0!important;
  box-shadow:0 18px 42px rgba(0,0,0,.075)!important;
  transform:translateY(-3px)!important;
}
.acds-booking .acds-date-card>span{
  display:block!important;
  font:700 15px/1 Helvetica,Arial,sans-serif!important;
}
.acds-booking .acds-date-card>strong{
  display:block!important;
  margin-top:13px!important;
  font:700 58px/.82 Helvetica,Arial,sans-serif!important;
  letter-spacing:-.06em!important;
}
.acds-booking .acds-date-card>small{
  display:block!important;
  margin-top:9px!important;
  color:#747474!important;
  font-size:16px!important;
}
.acds-booking .acds-date-card>i{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:18px!important;
  margin-top:auto!important;
  padding-top:22px!important;
  color:#111!important;
  font:700 13px/1 Helvetica,Arial,sans-serif!important;
  font-style:normal!important;
}
.acds-booking .acds-date-card>i b{
  font-size:19px!important;
  font-weight:400!important;
}
.acds-booking .acds-date-contact{
  background:#111!important;
  color:#fff!important;
}
.acds-booking .acds-date-contact>strong{
  max-width:8ch!important;
  color:#fff!important;
  font-size:36px!important;
  line-height:.96!important;
}
.acds-booking .acds-date-contact>span,
.acds-booking .acds-date-contact>small,
.acds-booking .acds-date-contact>i{
  color:#fff!important;
}
.acds-booking-embed{
  display:block!important;
  width:100%!important;
  padding:clamp(24px,3vw,46px)!important;
  border:1px solid #dedede!important;
  border-radius:18px!important;
  background:#fff!important;
}

/* Quick, dependency-free UK map. */
.acds-map-wrap{
  height:min(76vh,760px)!important;
  min-height:580px!important;
  border-radius:24px!important;
  background:#f2f3f3!important;
}
.acds-map{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  padding:24px!important;
  filter:none!important;
  overflow:hidden!important;
}
.acds-uk-map-canvas{
  position:relative;
  width:100%;
  height:100%;
  border-radius:18px;
  background:
    radial-gradient(circle at 74% 24%,rgba(243,97,80,.10),transparent 27%),
    linear-gradient(145deg,#f9f9f9,#eceeee);
  overflow:hidden;
}
.acds-uk-map-outline{
  position:absolute;
  left:50%;
  top:50%;
  width:min(43%,480px);
  height:88%;
  object-fit:contain;
  transform:translate(-50%,-50%);
  opacity:.95;
  pointer-events:none;
}
.acds-map-pin{
  position:absolute;
  z-index:5;
  width:30px;
  height:30px;
  padding:0!important;
  border:7px solid rgba(255,255,255,.92)!important;
  border-radius:50%!important;
  background:var(--acds-coral)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.22)!important;
  transform:translate(-50%,-50%) scale(.86);
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease!important;
}
.acds-map-pin:hover,
.acds-map-pin.is-active{
  transform:translate(-50%,-50%) scale(1.08);
  box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
}
.acds-map-detail{
  position:absolute;
  left:28px;
  bottom:28px;
  z-index:8;
  width:min(390px,calc(100% - 56px));
  padding:24px 26px;
  border:1px solid rgba(255,255,255,.65);
  border-radius:16px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(16px);
  box-shadow:0 18px 54px rgba(0,0,0,.12);
  opacity:0;
  transform:translateY(12px);
  pointer-events:none;
  transition:opacity .25s ease,transform .25s ease;
}
.acds-map-detail.is-visible{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.acds-map-detail small{
  color:var(--acds-coral);
  font:700 11px/1 Helvetica,Arial,sans-serif;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.acds-map-detail strong,
.acds-map-detail span{
  display:block;
}
.acds-map-detail strong{
  margin-top:9px;
  font:700 25px/1.02 Helvetica,Arial,sans-serif;
  letter-spacing:-.035em;
}
.acds-map-detail span{
  margin-top:7px;
  color:#666;
}
.acds-map-detail p{
  margin:13px 0 0!important;
  color:#555!important;
  font-size:14px!important;
  line-height:1.48!important;
}
.acds-map-detail a{
  display:inline-flex;
  margin-top:15px;
  color:#111!important;
  font-weight:700;
  text-decoration:none!important;
}
.acds-map-empty{
  z-index:20!important;
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  background:#f2f3f3!important;
}
.acds-map-empty[hidden]{
  display:none!important;
}
.acds-map-empty strong{
  font:700 22px/1.1 Helvetica,Arial,sans-serif;
}
.acds-map-empty span{
  color:#666;
}

/* The project gallery remains draggable horizontally, but the mouse wheel
   always scrolls the page vertically. */
.acds-project-rail{
  overscroll-behavior-x:contain;
  touch-action:pan-y pinch-zoom!important;
}

@media(max-width:980px){
  .acds-story{
    height:auto!important;
    min-height:0!important;
  }
  .acds-story-stage,
  .acds-story-stage.is-fixed,
  .acds-story-stage.is-after{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
    box-shadow:none!important;
  }
  .acds-story-panel{
    position:relative!important;
    display:block!important;
    min-height:0!important;
    height:auto!important;
    padding:52px 0!important;
    border-bottom:1px solid #e2e2e2!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    pointer-events:auto!important;
  }
  .acds-story-panel[hidden]{
    display:block!important;
  }
  .acds-story-media{
    position:relative!important;
    width:100%!important;
    height:50vh!important;
    min-height:380px!important;
    margin-bottom:30px!important;
  }
  .acds-booking-heading{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .acds-booking-layout{
    grid-template-columns:1fr!important;
  }
  .acds-calendar-visual{
    display:none!important;
  }
}
@media(max-width:720px){
  .acds-booking .acds-date-rail{
    grid-template-columns:1fr!important;
  }
  .acds-map-wrap{
    min-height:560px!important;
  }
  .acds-uk-map-outline{
    width:72%;
    height:80%;
  }
  .acds-map-detail{
    left:14px;
    bottom:14px;
    width:calc(100% - 28px);
  }
}

/* v1.7.8 map alignment and booking contact-card correction. */
.acds-uk-map-plot{
  position:absolute;
  left:50%;
  top:50%;
  width:min(43%,480px);
  height:88%;
  transform:translate(-50%,-50%);
}
.acds-uk-map-plot .acds-uk-map-outline{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  transform:none!important;
}
.acds-booking .acds-date-rail>a.acds-date-card.acds-date-contact{
  background:var(--acds-coral)!important;
  border-color:var(--acds-coral)!important;
  color:#fff!important;
}
@media(max-width:720px){
  .acds-uk-map-plot{width:72%;height:80%}
}

/* ================================================================
   v1.7.9 — proper interactive map + accessible portfolio navigation
   ================================================================ */
.acds-work .acds-heading.is-compact{
  align-items:flex-end!important;
}
.acds-work-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:22px!important;
  flex-wrap:wrap!important;
}
.acds-project-controls{
  display:flex!important;
  gap:8px!important;
}
.acds-project-controls button{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #d8d8d8!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#111!important;
  font:400 21px/1 Helvetica,Arial,sans-serif!important;
  cursor:pointer!important;
  transition:background-color .2s ease,color .2s ease,border-color .2s ease!important;
}
.acds-project-controls button:hover:not(:disabled),
.acds-project-controls button:focus-visible{
  border-color:#111!important;
  background:#111!important;
  color:#fff!important;
}
.acds-project-controls button:disabled{
  opacity:.28!important;
  cursor:default!important;
}
.acds-project-gallery{
  position:relative!important;
  width:calc(100vw - max(20px,((100vw - var(--acds-shell))/2)))!important;
  max-width:none!important;
  overflow:visible!important;
}
.acds-project-rail{
  position:relative!important;
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  gap:20px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px max(44px,calc((100vw - var(--acds-shell))/2)) 30px 0!important;
  scroll-snap-type:x proximity!important;
  scroll-padding-inline:0 80px!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-x:contain!important;
  touch-action:pan-y pinch-zoom!important;
  cursor:grab!important;
  user-select:none!important;
  outline:none!important;
}
.acds-project-rail:focus-visible{
  outline:2px solid var(--acds-coral)!important;
  outline-offset:8px!important;
}
.acds-project-rail.is-dragging{
  cursor:grabbing!important;
  scroll-snap-type:none!important;
}
.acds-project-card{
  flex:0 0 clamp(410px,38vw,620px)!important;
  min-height:clamp(590px,64vh,720px)!important;
  border-radius:24px!important;
  scroll-snap-align:start!important;
}
.acds-project-card.is-lead{
  flex-basis:clamp(650px,62vw,980px)!important;
}
.acds-project-progress{
  position:relative!important;
  width:min(420px,42vw)!important;
  height:3px!important;
  margin-top:4px!important;
  overflow:hidden!important;
  background:#dedede!important;
}
.acds-project-progress span{
  position:absolute!important;
  inset:0!important;
  transform:scaleX(.08);
  transform-origin:left center!important;
  background:var(--acds-coral)!important;
  transition:transform .12s linear!important;
}

/* Real detailed map canvas. Uses the shared ACDS Google API key. */
.acds-map-wrap{
  position:relative!important;
  width:calc(100% - 48px)!important;
  max-width:1880px!important;
  height:min(78vh,820px)!important;
  min-height:620px!important;
  margin:0 auto 28px!important;
  border:1px solid #dedede!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#eeedea!important;
  box-shadow:0 28px 80px rgba(0,0,0,.08)!important;
}
.acds-map{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  overflow:hidden!important;
  background:#eeedea!important;
  filter:none!important;
}
.acds-google-map-canvas,
.acds-map-fallback-frame{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
}
.acds-google-map-pin{
  position:absolute!important;
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  height:30px!important;
  margin:0!important;
  padding:0!important;
  border:5px solid rgba(255,255,255,.96)!important;
  border-radius:50%!important;
  background:var(--acds-coral)!important;
  box-shadow:0 7px 20px rgba(0,0,0,.28)!important;
  transform:translate(-50%,-50%) scale(.9)!important;
  cursor:pointer!important;
  transition:transform .2s ease,box-shadow .2s ease!important;
}
.acds-google-map-pin:before{
  content:""!important;
  position:absolute!important;
  inset:-10px!important;
  border:1px solid rgba(243,97,80,.45)!important;
  border-radius:50%!important;
  opacity:0!important;
  transform:scale(.6)!important;
  transition:opacity .2s ease,transform .2s ease!important;
}
.acds-google-map-pin:hover,
.acds-google-map-pin.is-active{
  z-index:4!important;
  transform:translate(-50%,-50%) scale(1.12)!important;
  box-shadow:0 11px 30px rgba(0,0,0,.34)!important;
}
.acds-google-map-pin:hover:before,
.acds-google-map-pin.is-active:before{
  opacity:1!important;
  transform:scale(1)!important;
}
.acds-map-detail-google{
  left:clamp(18px,3vw,44px)!important;
  bottom:clamp(18px,3vw,44px)!important;
  width:min(410px,calc(100% - 36px))!important;
  padding:28px 30px!important;
  border:1px solid rgba(255,255,255,.76)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 28px 65px rgba(0,0,0,.17)!important;
  backdrop-filter:blur(20px)!important;
}
.acds-map-detail-google small{
  color:var(--acds-coral)!important;
}
.acds-map-detail-google a{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
}
.acds-map-detail-google a b{
  font-size:18px!important;
  font-weight:400!important;
}
.acds-map-detail-image{
  display:block!important;
  width:calc(100% + 60px)!important;
  max-width:none!important;
  margin:-28px -30px 16px!important;
  height:160px!important;
  object-fit:cover!important;
  border-radius:16px 16px 0 0!important;
}
.acds-map-search{
  position:absolute!important;
  top:22px!important;
  left:22px!important;
  z-index:9!important;
  width:min(360px,calc(100% - 44px))!important;
  font-family:Helvetica,Arial,sans-serif!important;
}
.acds-map-search[hidden]{display:none!important}
.acds-map-search-box{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(14px)!important;
}
.acds-map-search-icon{width:18px!important;height:18px!important;color:#8a8a86!important;flex:none!important}
.acds-map-search-box input{
  flex:1!important;
  min-width:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  font-size:15px!important;
  color:#1a1a18!important;
}
.acds-map-search-box input::placeholder{color:#9a9a95!important}
.acds-map-search-locate,
.acds-map-search-clear{
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  height:30px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  color:#55554f!important;
  font-size:0!important;
  line-height:0!important;
  cursor:pointer!important;
  flex:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
}
.acds-map-search-locate[hidden]{display:none!important}
.acds-map-search-locate:hover,
.acds-map-search-clear:hover{background:#f1f0ed!important;color:#1a1a18!important}
.acds-map-search-locate svg{width:20px!important;height:20px!important;display:block!important}
.acds-map-search-clear{font-size:20px!important;line-height:1!important}
.acds-map-search-clear[hidden]{display:none!important}
.acds-map-search-results{
  margin-top:10px!important;
  max-height:min(52vh,420px)!important;
  overflow-y:auto!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(14px)!important;
}
.acds-map-search-results[hidden]{display:none!important}
.acds-map-search-results-head{
  padding:16px 18px 10px!important;
  position:sticky!important;
  top:0!important;
  background:inherit!important;
  border-bottom:1px solid #edece8!important;
}
.acds-map-search-results-head strong{
  display:block!important;
  font-size:19px!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
  color:#111!important;
}
.acds-map-search-results-head span{
  display:block!important;
  margin-top:3px!important;
  font-size:12.5px!important;
  color:#8a8a85!important;
}
.acds-map-search-list{
  list-style:none!important;
  margin:0!important;
  padding:6px 0!important;
}
.acds-map-search-item{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:10px 18px!important;
  cursor:pointer!important;
  border-bottom:1px solid #f2f1ee!important;
}
.acds-map-search-item:last-child{border-bottom:0!important}
.acds-map-search-item:hover{background:#f7f6f3!important}
.acds-map-search-thumb{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:42px!important;
  height:42px!important;
  border-radius:10px!important;
  overflow:hidden!important;
  flex:none!important;
  background:#f2f1ee!important;
}
.acds-map-search-thumb.is-empty{background:transparent!important}
.acds-map-search-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
.acds-map-search-pin{
  width:9px!important;
  height:9px!important;
  border-radius:50%!important;
  background:var(--acds-coral,#f36150)!important;
  flex:none!important;
}
.acds-map-search-item-copy strong{
  display:block!important;
  font-size:14px!important;
  font-weight:700!important;
  color:#181818!important;
}
.acds-map-search-item-copy span{
  display:block!important;
  margin-top:2px!important;
  font-size:13px!important;
  color:#78787a!important;
}
.pac-container{z-index:10000!important}
@media (max-width:640px){
  .acds-map-search{left:12px!important;right:12px!important;top:12px!important;width:auto!important}
  .acds-map-search-box{padding:10px 12px!important;gap:6px!important}
  .acds-map-search-box input{font-size:14px!important}
  .acds-map-search-icon{width:16px!important;height:16px!important}
  .acds-map-search-locate,
  .acds-map-search-clear{width:26px!important;height:26px!important}
  .acds-map-search-locate svg{width:17px!important;height:17px!important}
  .acds-map-search-results{max-height:min(46vh,320px)!important}
  .acds-map-search-results-head{padding:12px 14px 8px!important}
  .acds-map-search-results-head strong{font-size:16px!important}
  .acds-map-search-item{padding:8px 14px!important;gap:10px!important}
  .acds-map-search-thumb{width:34px!important;height:34px!important}
  .acds-map-search-item-copy strong{font-size:13px!important}
  .acds-map-search-item-copy span{font-size:12px!important}
}
.acds-map-empty{
  z-index:30!important;
  inset:auto 18px 18px auto!important;
  width:min(430px,calc(100% - 36px))!important;
  height:auto!important;
  min-height:0!important;
  padding:18px 21px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.12)!important;
  backdrop-filter:blur(14px)!important;
  text-align:left!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
}
.acds-map-empty[hidden]{display:none!important}
.acds-map-empty strong{font-size:16px!important}
.acds-map-empty span{font-size:13px!important;line-height:1.45!important}

@media(max-width:980px){
  .acds-work-actions{justify-content:flex-start!important}
  .acds-project-gallery{width:calc(100vw - max(14px,((100vw - var(--acds-shell))/2)))!important}
  .acds-project-card,
  .acds-project-card.is-lead{flex-basis:min(82vw,650px)!important;min-height:590px!important}
  .acds-project-progress{width:min(360px,70vw)!important}
  .acds-map-wrap{width:calc(100% - 28px)!important;min-height:600px!important;border-radius:20px!important}
}
@media(max-width:620px){
  .acds-project-controls button{width:44px!important;height:44px!important}
  .acds-project-card,
  .acds-project-card.is-lead{flex-basis:86vw!important;min-height:530px!important;border-radius:18px!important}
  .acds-map-wrap{width:calc(100% - 18px)!important;min-height:560px!important;height:72vh!important;height:72svh!important}
  .acds-map-detail-google{padding:21px 22px!important}
}

/* v1.7.11 — Resi-style sticky split story: media remains fixed, copy scrolls naturally. */
@media (min-width:981px){
  .acds-story-section{overflow:visible!important}
  .acds-story{
    display:block!important;
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }
  .acds-story-stage{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    left:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr)!important;
    gap:clamp(44px,5.2vw,92px)!important;
    align-items:start!important;
    overflow:visible!important;
  }
  .acds-story-copy{
    order:1!important;
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }
  .acds-story-media{
    order:2!important;
    position:sticky!important;
    top:var(--acds-story-top,110px)!important;
    align-self:start!important;
    width:100%!important;
    height:calc(100svh - var(--acds-story-top,110px) - 28px)!important;
    min-height:520px!important;
    max-height:760px!important;
    overflow:hidden!important;
    border-radius:20px!important;
    background:#ececee!important;
  }
  .acds-story-media figure{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    margin:0!important;
    opacity:0!important;
    visibility:visible!important;
    transform:scale(1.035)!important;
    transition:opacity .72s cubic-bezier(.22,.75,.25,1),transform 1.1s cubic-bezier(.22,.75,.25,1)!important;
  }
  .acds-story-media figure.is-active{
    opacity:1!important;
    transform:scale(1)!important;
    z-index:2!important;
  }
  .acds-story-panel,
  .acds-story-panel[hidden]{
    display:flex!important;
    position:relative!important;
    inset:auto!important;
    min-height:calc(100svh - var(--acds-story-top,110px) - 18px)!important;
    margin:0!important;
    padding:clamp(64px,8vh,112px) 0!important;
    border:0!important;
    border-bottom:1px solid #e4e4e4!important;
    flex-direction:column!important;
    justify-content:center!important;
    opacity:.28!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    transition:opacity .45s ease!important;
  }
  .acds-story-panel:last-of-type{border-bottom:0!important}
  .acds-story-panel.is-active{opacity:1!important}
  .acds-story-panel h2{
    width:100%!important;
    max-width:15ch!important;
    font-size:clamp(44px,3.7vw,68px)!important;
    line-height:.99!important;
    text-wrap:balance!important;
  }
  .acds-story-body{width:100%!important;max-width:760px!important}
  .acds-story-progress{
    position:sticky!important;
    left:0!important;
    bottom:24px!important;
    display:flex!important;
    gap:8px!important;
    width:max-content!important;
    z-index:4!important;
  }
  .acds-story-progress span{width:34px!important;height:3px!important;background:#dedede!important;transition:width .35s ease,background .35s ease!important}
  .acds-story-progress span.is-active{width:64px!important;background:var(--acds-coral)!important}
}

/* Premium consultation layout used by the restored booking markup. */
.acds-booking{background:#f4f4f5!important}
.acds-booking-premium{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:clamp(46px,7vw,112px);align-items:start}
.acds-booking-copy{position:sticky;top:120px}
.acds-booking-copy h2{max-width:10ch!important;font-size:clamp(46px,4.3vw,76px)!important;line-height:.96!important}
.acds-booking-copy>p:not(.acds-eyebrow){max-width:530px;color:#666;font-size:18px!important}
.acds-booking-proof{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 24px}
.acds-booking-proof span{padding:9px 12px;border:1px solid #d8d8d8;background:#fff;font-size:12px;font-weight:750;letter-spacing:.02em}
.acds-booking-panel{min-width:0;padding:clamp(24px,3vw,42px);border:1px solid #dedede;background:#fff;box-shadow:0 18px 52px rgba(0,0,0,.07)}
.acds-booking-panel-head{display:flex;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid #e5e5e5}
.acds-booking-panel-head strong{font:800 20px/1.1 Helvetica,Arial,sans-serif}.acds-booking-panel-head span{color:#777;font-size:13px}
.acds-booking-options{display:grid;gap:0}
.acds-booking-option{display:grid;grid-template-columns:88px 1fr auto;gap:18px;align-items:center;padding:24px 0;border-bottom:1px solid #e7e7e7;color:#111!important;text-decoration:none!important;transition:color .2s ease,padding .2s ease}
.acds-booking-option:hover{color:var(--acds-coral)!important;padding-left:8px}
.acds-booking-option-date{display:flex;align-items:baseline;gap:7px}.acds-booking-option-date b{font:800 42px/.9 Helvetica,Arial,sans-serif}.acds-booking-option-date i{font-style:normal;color:#777}
.acds-booking-option-copy{display:flex;flex-direction:column;gap:4px}.acds-booking-option-copy strong{font-size:15px}.acds-booking-option-copy small{color:#777;font-size:13px}.acds-booking-option-arrow{font-size:22px}
.acds-booking-other{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:21px 22px;background:var(--acds-coral);color:#fff!important;text-decoration:none!important}
.acds-booking-other span{display:flex;flex-direction:column;gap:4px}.acds-booking-other strong{font-size:17px}.acds-booking-other small{color:rgba(255,255,255,.82)}.acds-booking-other b{font-size:22px}
@media(max-width:980px){
  .acds-booking-premium{grid-template-columns:1fr;gap:32px}.acds-booking-copy{position:static}.acds-booking-copy h2{max-width:14ch!important}
}
@media(max-width:620px){
  .acds-booking-panel{padding:20px 18px}.acds-booking-option{grid-template-columns:70px 1fr auto;gap:12px;padding:20px 0}.acds-booking-option-date b{font-size:34px}
}

/* v1.7.13 — fail-safe detailed UK map. The street tiles and server-rendered
   project pins remain visible even if Google Maps JavaScript is unavailable. */
.acds-map-static{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  background:#e8e7e3!important;
}
.acds-map-tile-grid{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  grid-template-columns:repeat(8,1fr)!important;
  grid-template-rows:repeat(4,1fr)!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  background:#e8e7e3!important;
}
.acds-map-tile-grid img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:fill!important;
  filter:grayscale(.62) saturate(.58) brightness(1.08) contrast(.88)!important;
  opacity:.92!important;
  user-select:none!important;
  pointer-events:none!important;
}
.acds-map-static:after{
  content:"";
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.15),transparent 28%,transparent 72%,rgba(255,255,255,.12)),
    linear-gradient(180deg,rgba(255,255,255,.05),transparent 70%,rgba(17,17,17,.04))!important;
}
.acds-map-pin-layer{
  position:absolute!important;
  inset:0!important;
  z-index:8!important;
}
.acds-static-map-pin{
  position:absolute!important;
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  margin:0!important;
  padding:0!important;
  border:5px solid rgba(255,255,255,.96)!important;
  border-radius:50%!important;
  background:var(--acds-coral)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.28)!important;
  transform:translate(-50%,-50%) scale(.9)!important;
  cursor:pointer!important;
  transition:transform .2s ease,box-shadow .2s ease!important;
}
.acds-static-map-pin:before{
  content:""!important;
  position:absolute!important;
  inset:-10px!important;
  border:1px solid rgba(243,97,80,.52)!important;
  border-radius:50%!important;
  opacity:0!important;
  transform:scale(.55)!important;
  transition:opacity .2s ease,transform .2s ease!important;
}
.acds-static-map-pin:hover,
.acds-static-map-pin:focus-visible,
.acds-static-map-pin.is-active{
  z-index:4!important;
  transform:translate(-50%,-50%) scale(1.14)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.34)!important;
  outline:none!important;
}
.acds-static-map-pin:hover:before,
.acds-static-map-pin:focus-visible:before,
.acds-static-map-pin.is-active:before{
  opacity:1!important;
  transform:scale(1)!important;
}
.acds-map-region-label{
  position:absolute!important;
  top:clamp(20px,3vw,42px)!important;
  left:clamp(20px,3vw,42px)!important;
  z-index:5!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  padding:13px 16px!important;
  border:1px solid rgba(255,255,255,.75)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.1)!important;
  backdrop-filter:blur(14px)!important;
}
.acds-map-region-label strong{
  font:700 12px/1 Helvetica,Arial,sans-serif!important;
  letter-spacing:.16em!important;
}
.acds-map-region-label span{
  color:#666!important;
  font:500 12px/1.2 "Roboto Flex",Arial,sans-serif!important;
}
.acds-map-attribution{
  position:absolute!important;
  right:8px!important;
  bottom:6px!important;
  z-index:12!important;
  padding:3px 6px!important;
  border-radius:4px!important;
  background:rgba(255,255,255,.82)!important;
  font:500 10px/1 Arial,sans-serif!important;
}
.acds-map-attribution a{color:#444!important;text-decoration:none!important}
.acds-map-detail-static{
  z-index:15!important;
  left:clamp(18px,3vw,44px)!important;
  bottom:clamp(18px,3vw,44px)!important;
  width:min(430px,calc(100% - 36px))!important;
  padding:27px 29px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.95)!important;
  box-shadow:0 28px 70px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(20px)!important;
}
.acds-map-detail-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:16px 22px!important;
  margin-top:15px!important;
}
.acds-map-detail-links a{
  margin:0!important;
  color:#111!important;
  font:700 13px/1.2 Helvetica,Arial,sans-serif!important;
}
.acds-map-empty{
  z-index:20!important;
}
@media(max-width:760px){
  .acds-map-tile-grid{width:160%!important;left:-30%!important}
  .acds-map-region-label{display:none!important}
  .acds-map-detail-static{padding:21px 22px!important}
  .acds-static-map-pin{width:25px!important;height:25px!important;border-width:4px!important}
}


/* v1.7.14 — real Google map camera and touch interaction. */
.acds-map.is-google-map{
  filter:none!important;
  touch-action:auto!important;
  background:#ecebe8!important;
}
.acds-map.is-google-map .acds-google-map-canvas{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
}
.acds-map.is-google-map .gm-style{
  font-family:Roboto,Arial,sans-serif!important;
}
.acds-map.is-google-map .gm-style-cc,
.acds-map.is-google-map .gm-fullscreen-control,
.acds-map.is-google-map .gm-bundled-control{
  opacity:.96!important;
}
.acds-map.is-google-map .gm-style-mtc button,
.acds-map.is-google-map .gm-control-active{
  border-radius:8px!important;
}
.acds-map-detail-google{
  position:absolute!important;
  z-index:8!important;
  display:block!important;
  opacity:0!important;
  transform:translateY(12px)!important;
  pointer-events:none!important;
  transition:opacity .22s ease,transform .22s ease!important;
}
.acds-map-detail-google.is-visible{
  opacity:1!important;
  transform:translateY(0)!important;
  pointer-events:auto!important;
}
.acds-map-detail-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px 20px!important;
  margin-top:16px!important;
}
.acds-map-detail-links a{
  color:#111!important;
  font-weight:700!important;
  text-decoration:none!important;
}
@media(max-width:760px){
  .acds-map-wrap{height:68vh!important;height:68svh!important;min-height:520px!important}
  .acds-map-detail-google{left:14px!important;right:14px!important;bottom:14px!important;width:auto!important}
}

/* =========================================================
   v1.7.23 — fix: reviews trustbar was never styled (raw
   256px Google logo), and the story section had several
   competing historical sticky-scroll implementations
   layered on top of each other with no single one winning
   cleanly. This block is deliberately last in the file so
   it wins the cascade over all earlier attempts.
   ========================================================= */
.acds-review-trustbar{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:14px 22px!important;
  margin-bottom:34px!important;
  padding:18px 22px!important;
  border:1px solid #e4e4e1!important;
  border-radius:16px!important;
  background:#fff!important;
}
.acds-review-trustbrand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex:none!important;
}
.acds-review-trustbrand img{
  width:34px!important;
  height:34px!important;
  object-fit:contain!important;
  display:block!important;
  flex:none!important;
}
.acds-review-trustbrand strong{
  display:block!important;
  font-size:19px!important;
  font-weight:700!important;
  color:#111!important;
}
.acds-review-trustbrand span{
  display:block!important;
  margin-top:1px!important;
  font-size:13px!important;
  color:var(--acds-muted)!important;
}
.acds-review-truststars{
  color:#f5b400!important;
  font-size:18px!important;
  letter-spacing:2px!important;
  flex:none!important;
}
.acds-review-trustbar a,
.acds-review-trustnote{
  font-size:14px!important;
  font-weight:700!important;
  color:#111!important;
  text-decoration:none!important;
}
.acds-review-trustnote{color:var(--acds-muted)!important;font-weight:400!important}

/* v1.7.24 — the story panels must stay in NORMAL DOCUMENT FLOW.
   The JS (chooseActivePanel) works out which panel is "active" by
   reading each panel's real getBoundingClientRect() as the page
   scrolls. Stacking panels with position:absolute (as every earlier
   attempt above did) gives every panel an identical bounding rect,
   so the JS can never tell them apart and the scroll effect stops
   working. Only the image column is sticky; the text scrolls normally. */
@media(min-width:981px){
  .acds-story{
    display:grid!important;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.8fr)!important;
    gap:clamp(48px,7vw,120px)!important;
    align-items:start!important;
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    overflow:visible!important;
  }
  .acds-story-stage{
    display:contents!important;
  }
  .acds-story-media{
    position:sticky!important;
    top:var(--acds-story-top,32px)!important;
    order:initial!important;
    width:100%!important;
    height:calc(100vh - var(--acds-story-top,32px) - 32px)!important;
    min-height:520px!important;
    align-self:start!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:#ececee!important;
  }
  .acds-story-copy{
    position:relative!important;
    order:initial!important;
    height:auto!important;
    min-width:0!important;
    overflow:visible!important;
    scroll-snap-type:y proximity!important;
  }
  .acds-story-panel{
    position:relative!important;
    inset:auto!important;
    min-height:82vh!important;
    margin:0!important;
    padding:70px 0!important;
    border:0!important;
    border-bottom:1px solid #e2e2e2!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    opacity:.45!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    transition:opacity .4s ease!important;
  }
  .acds-story-panel:last-child{border-bottom:0!important}
  .acds-story-panel.is-active{opacity:1!important}
  .acds-story-progress{display:none!important}
}
@media(max-width:980px){
  .acds-story{display:block!important;position:relative!important;height:auto!important;min-height:0!important;overflow:visible!important}
  .acds-story-stage{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;display:block!important;overflow:visible!important;background:transparent!important;box-shadow:none!important}
  .acds-story-media{position:relative!important;top:auto!important;width:100%!important;height:52vh!important;min-height:360px!important;margin-bottom:24px!important}
  .acds-story-media figure{display:none!important}
  .acds-story-media figure:first-child,
  .acds-story-media figure.is-active{display:block!important;opacity:1!important;visibility:visible!important;transform:none!important}
  .acds-story-copy{height:auto!important;overflow:visible!important}
  .acds-story-panel{position:relative!important;inset:auto!important;display:block!important;min-height:0!important;padding:46px 0!important;border-bottom:1px solid #e2e2e2!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
  .acds-story-panel:last-of-type{border-bottom:0!important}
  .acds-story-progress{display:none!important}
}


/* Scroll text-reveal for the Architecture/Structure/Party Wall story panels, inspired by findrealestate.com. Words start muted and ink to full colour as you scroll past them. */
.acds-reveal-word{color:#c7c7c7;transition:color .5s ease}
.acds-reveal-word.is-revealed{color:#171717}


/* Cross-fading hero photo rotation, inspired by berch.ch. Layers sit behind the existing .acds-hero-shade/.acds-hero-layout, same positioning as .acds-hero-media so nothing else needs to move. */
.acds-hero-photo{position:absolute;inset:-3%;background-size:cover;background-position:center;opacity:0;transition:opacity 1.8s ease;transform:scale(1.04);will-change:opacity}
.acds-hero-photo.is-visible{opacity:1}


/* KAAN-style staggered grid for Selected Work, replacing the horizontal-scroll rail. Bold eyebrow label + thin rule line. Two columns (not three) so three real projects fill the grid cleanly with no empty cells: lead card spans the full width on its own row, the other two sit side by side beneath it, one offset down for rhythm. The old carousel progress bar is hidden since there is nothing left to scroll. */
.acds-work .acds-heading .acds-eyebrow{display:block!important;font-size:clamp(32px,4.5vw,64px)!important;font-weight:800!important;letter-spacing:0!important;color:#111!important;line-height:1!important;margin-bottom:16px!important}
.acds-work .acds-heading{border-bottom:1px solid var(--acds-line,#dedede)!important;padding-bottom:24px!important;margin-bottom:48px!important}
.acds-work .acds-project-rail{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:24px!important;overflow:visible!important;scroll-snap-type:none!important;cursor:default!important}
.acds-work .acds-project-card{flex:none!important;min-height:420px!important}
.acds-work .acds-project-card.is-lead{grid-column:span 2!important;flex-basis:auto!important;min-height:560px!important}
.acds-work .acds-project-card.is-lead ~ .acds-project-card:nth-of-type(2){margin-top:40px!important}
.acds-work .acds-project-progress{display:none!important}
@media(max-width:820px){.acds-work .acds-project-rail{grid-template-columns:1fr!important}.acds-work .acds-project-card.is-lead{grid-column:span 1!important}.acds-work .acds-project-card.is-lead ~ .acds-project-card:nth-of-type(2){margin-top:0!important}}


/* The grid no longer scrolls, so the drag/swipe instruction note under Selected Work is stale -- hidden rather than deleted from the template. */
.acds-work .acds-section-note{display:none!important}
\n
/* Typography and whitespace pass */
.acds-section{padding:clamp(120px,10vw,200px) 0!important}
.acds-homepage h2{font-size:clamp(48px,5.4vw,92px)!important;letter-spacing:-0.045em!important}
.acds-heading{margin-bottom:88px!important}
.acds-homepage p{line-height:1.62!important}
.acds-eyebrow{margin-bottom:32px!important}

/* Editorial image treatment: desaturate to color on hover */
.acds-project-media img,.acds-route-card img,.acds-checker-media img{filter:grayscale(65%) contrast(1.02)!important;transition:filter .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)!important}
.acds-project-card:hover .acds-project-media img,.acds-route-card:hover img,.acds-checker-media:hover img{filter:grayscale(0%) contrast(1.05)!important;transform:scale(1.045)!important}
@media (prefers-reduced-motion: reduce){
.acds-project-media img,.acds-route-card img,.acds-checker-media img{transition:none;filter:none}
}

/* Routes cards: minimal line treatment instead of boxed cards */
.acds-route-card{background:transparent!important;border:none!important;border-top:2px solid var(--acds-ink,#141414)!important;border-radius:0!important;box-shadow:none!important;padding:32px 0 0!important}
.acds-route-card:before{display:none!important}
.acds-route-card:hover{transform:none!important;box-shadow:none!important;border-color:var(--acds-coral,#f36150)!important}
.acds-route-card .acds-index{font-size:15px!important;margin:0 0 8px!important}
.acds-route-card h3{font-size:clamp(24px,2.2vw,34px)!important;margin-top:28px!important}

/* Second full-bleed scene after the hero — mirrors findrealestate.com's scroll transition from the hero into a larger pinned photo with a zoom/blur settle and fade-in headline. Built by initHeroScene() in the JS file. */
.acds-hero-scene-pin{position:relative;height:200vh;background:#0c0c0c}
.acds-hero-scene-pin-inner{position:sticky;top:0;left:0;right:0;height:100vh;overflow:hidden}
.acds-scene-image{position:absolute;inset:-6%;background-size:cover;background-position:center;will-change:transform,filter}
.acds-scene-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,8,.15) 0%,rgba(8,8,8,.55) 60%,rgba(8,8,8,.75) 100%)}
.acds-scene-copy{position:relative;z-index:2;max-width:760px;margin:0 auto;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 24px;opacity:0}
.acds-scene-copy .acds-eyebrow{justify-content:center;color:var(--acds-coral,#f36150)!important}
.acds-scene-copy h2{color:#fff;font-size:clamp(32px,4.6vw,64px);font-weight:800;letter-spacing:-0.02em;line-height:1.05;margin:14px 0 20px}
.acds-scene-sub{color:rgba(255,255,255,.82);font-size:clamp(16px,1.3vw,20px);line-height:1.5;margin:0}
@media (prefers-reduced-motion:reduce){.acds-scene-copy{opacity:1!important;transform:none!important}}

/* Selected Work -- sticky split-column layout (KAAN-style) */
@media (min-width:901px){
  .acds-work .acds-shell{
    display:grid!important;
    grid-template-columns:300px 1fr!important;
    gap:64px!important;
    align-items:start!important;
  }
  .acds-work .acds-heading.is-compact{
    display:block!important;
    position:sticky!important;
    top:130px!important;
    margin-bottom:0!important;
    grid-column:1!important;
  }
  .acds-work .acds-heading.is-compact > div{
    max-width:none!important;
  }
  .acds-work .acds-work-actions{
    justify-content:flex-start!important;
    margin-top:28px!important;
  }
  .acds-work .acds-project-controls{
    display:none!important;
  }
  .acds-work .acds-project-gallery{
    grid-column:2!important;
    width:100%!important;
    max-width:100%!important;
  }
  .acds-work .acds-project-rail{
    display:flex!important;
    flex-direction:column!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    cursor:default!important;
    gap:110px!important;
    padding:0!important;
  }
  .acds-work .acds-project-card{
    flex:none!important;
    width:100%!important;
    min-height:82vh!important;
  }
  .acds-work .acds-project-card.is-lead{
    flex-basis:auto!important;
  }
  .acds-work .acds-project-progress{
    display:none!important;
  }
}
@media (max-width:900px){
  .acds-work .acds-project-controls{
    display:none!important;
  }
  .acds-work .acds-project-progress{
    display:none!important;
  }
  .acds-work .acds-project-rail{
    display:flex!important;
    flex-direction:column!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    gap:44px!important;
    padding:0!important;
  }
  .acds-work .acds-project-card{
    width:100%!important;
    flex:none!important;
    min-height:60vh!important;
  }
}


/* Reviews -- continuous auto-scrolling marquee reel */
.acds-review-controls{
  display:none!important;
}
.acds-review-viewport{
  overflow:hidden!important;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.acds-review-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:22px!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
  cursor:default!important;
  padding:4px 2px 34px!important;
  width:max-content!important;
  animation:acds-review-marquee 55s linear infinite;
}
.acds-review-track:hover{
  animation-play-state:paused;
}
.acds-review-card{
  flex:0 0 400px!important;
  min-height:380px!important;
}
@keyframes acds-review-marquee{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); }
}
@media (prefers-reduced-motion:reduce){
  .acds-review-track{
    animation:none!important;
    overflow-x:auto!important;
    width:auto!important;
  }
}
@media (max-width:780px){
  .acds-review-card{
    flex-basis:82vw!important;
  }
}


/* Map -- sticky split-column layout, consistent with Selected Work */
@media (min-width:901px){
  .acds-map-section{
    display:grid!important;
    grid-template-columns:300px 1fr!important;
    gap:64px!important;
    align-items:start!important;
    padding-left:max(20px,((100vw - var(--acds-shell))/2))!important;
    padding-right:max(20px,((100vw - var(--acds-shell))/2))!important;
    box-sizing:border-box!important;
  }
  .acds-map-section .acds-shell{
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    grid-column:1!important;
  }
  .acds-map-section .acds-map-heading{
    display:block!important;
    grid-template-columns:none!important;
    margin-bottom:0!important;
    position:sticky!important;
    top:130px!important;
  }
  .acds-map-section .acds-map-heading > div > p:not(.acds-eyebrow){
    max-width:none!important;
  }
  .acds-map-section .acds-map-filters{
    justify-content:flex-start!important;
    flex-direction:column!important;
    align-items:stretch!important;
    margin-top:24px!important;
  }
  .acds-map-section .acds-map-filters button{
    text-align:left!important;
  }
  .acds-map-section .acds-map-wrap{
    grid-column:2!important;
    width:100%!important;
    margin:0!important;
    height:min(86vh,900px)!important;
  }
}
@media (max-width:900px){
  .acds-map-section .acds-map-filters{
    justify-content:flex-start!important;
  }
}


/* Scroll-driven motion, throughout: per-word reveal on lead copy + blur-in on reveal */
.acds-js .acds-reveal{
  filter:blur(6px);
}
.acds-js .acds-reveal{
  transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1),filter .8s ease;
}
.acds-js .acds-reveal.is-visible{
  filter:blur(0);
}
.acds-reveal-word{
  display:inline;
  transition:opacity .15s linear;
}
@media (prefers-reduced-motion:reduce){
  .acds-js .acds-reveal{
    filter:none;
  }
  .acds-reveal-word{
    opacity:1!important;
  }
}


/* UI redesign -- restrained black/white palette with coral as accent only, matching FIND Real Estate's editorial pill-button language */
.acds-homepage .acds-button.is-coral{
  background:#111!important;
  color:#fff!important;
  border-color:#111!important;
}
.acds-homepage .acds-button.is-coral:hover{
  background:var(--acds-coral)!important;
  border-color:var(--acds-coral)!important;
  color:#fff!important;
}
.acds-homepage .acds-button{
  min-width:0!important;
  padding:19px 28px!important;
  gap:22px!important;
}

/* Bottom quote bar -- black instead of dominant coral, coral kept only as a small accent */

.acds-bottom-banner .acds-phone{
  color:#fff!important;
}
.acds-bottom-banner .et_pb_button{
  background:#fff!important;
  color:#111!important;
  border-color:#fff!important;
  transition:background .25s ease,color .25s ease;
}
.acds-bottom-banner .et_pb_button:hover{
  background:#111!important;
  color:#fff!important;
  border-color:#111!important;
}


/* Nav header — FIND-style minimal glass bar */
.et-l--header{
  background:rgba(255,255,255,0.92)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(17,17,17,0.08)!important;
}
.dd-modal .dd-icon-content,
.dd-toggle .dd-icon-content{
  color:#111!important;
  transition:color .25s ease;
}
.dd-modal .dd-item-inner,
.dd-toggle .dd-item-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  height:44px!important;
  border-radius:999px!important;
  transition:background-color .25s ease;
}
.dd-modal:hover .dd-item-inner,
.dd-toggle:hover .dd-item-inner{
  background-color:rgba(17,17,17,0.06)!important;
}
.dd-modal:hover .dd-icon-content,
.dd-toggle:hover .dd-icon-content{
  color:var(--acds-coral,#f36150)!important;
}


/* ===== Hero rebuild v4 — pinned zoom-through transition matching findrealestate.com: the hero's OWN photo grows larger as you scroll (not a static emerging card), the headline fades out as it does, then it hands off directly into the second full-bleed scene pin — one continuous zoom, not a hard cut between two unrelated blocks. Built by initHeroZoomPin() in the JS file, which wraps the hero's existing content in a sticky inner box and makes the outer .acds-hero tall (230vh) to create the scroll-pin distance. ===== */
.acds-hero{
  background:linear-gradient(120deg,#ffe8d2 0%,#fbeee0 22%,#e9f2fb 55%,#eaf3fb 100%)!important;
  color:#111!important;
  min-height:0!important;
  height:230vh!important;
  position:relative!important;
}
.acds-hero-pin-inner{
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:100vh!important;
  overflow:hidden!important;
}
.acds-hero-shade{
  display:none!important;
}
.acds-hero-media{
  display:none!important;
}
.acds-hero-photo{
  inset:auto!important;
  left:50%!important;
  bottom:0!important;
  top:auto!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  transform-origin:50% 100%!important;
  width:min(1500px,98vw)!important;
  height:460px!important;
  border-radius:0!important;
  box-shadow:none!important;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.35) 8%,#000 22%)!important;
  mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.35) 8%,#000 22%)!important;
  will-change:transform,filter;
}
.acds-hero-layout{
  min-height:0!important;
  height:100%!important;
  justify-content:flex-start!important;
  padding:140px 0 460px!important;
}
.acds-hero-copy{
  max-width:980px!important;
  margin:0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
  will-change:opacity,transform;
}
.acds-hero-copy .acds-eyebrow{
  color:var(--acds-coral,#f36150)!important;
  justify-content:center!important;
  margin-bottom:18px!important;
}
.acds-hero-copy h1{
  color:#111!important;
  font-size:clamp(34px,5.4vw,80px)!important;
  font-weight:800!important;
  letter-spacing:-0.02em!important;
  line-height:1.04!important;
  margin:0!important;
}
.acds-hero-copy .acds-lead{
  color:#5b5b5b!important;
  text-align:center!important;
  margin:20px auto 28px!important;
  font-size:clamp(16px,1.3vw,20px)!important;
}
.acds-hero-copy .acds-button{
  margin:0 auto!important;
}
.acds-proof{
  border-top-color:rgba(17,17,17,.12)!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  color:#111!important;
  margin-top:40px!important;
  will-change:opacity;
}
.acds-proof>div{
  border-right-color:rgba(17,17,17,.12)!important;
}
@media (prefers-reduced-motion:reduce){
  .acds-hero{height:auto!important}
  .acds-hero-pin-inner{position:relative!important;height:auto!important}
}
@media (max-width:640px){
  .acds-hero-copy h1{font-size:clamp(30px,8vw,44px)!important}
  .acds-hero-photo{height:260px!important}
  .acds-hero-layout{padding:120px 0 300px!important}
}

/* Force raw scroll position for pinned scroll math (Divi's smooth-scroll animates native scrollTo, throwing off rAF-driven progress calc) */
html{scroll-behavior:auto!important}

/* Scroll-linked pin elements must snap instantly to scroll position - kill any entrance-reveal transition once pinned */
.acds-hero-pin-inner .acds-hero-copy,
.acds-hero-pin-inner .acds-proof,
.acds-hero-pin-inner .acds-hero-photo{transition:none!important}

/* ===== Hero rebuild v5 - Okopod-style autoplay carousel (replaces scroll-zoom pin) ===== */
.acds-hero{height:auto!important;overflow:visible!important;background:#0c0c0c}
.acds-hero-pin-inner{position:static!important;height:auto!important;overflow:visible!important;display:block!important}
.acds-hero-media,.acds-hero-shade{display:none!important}

.acds-hero-carousel{position:relative;padding:104px 24px 56px;max-width:1560px;margin:0 auto}
.acds-hero-carousel-stage{position:relative;height:min(76vh,740px);min-height:460px;border-radius:28px;overflow:hidden;background:#111;box-shadow:0 30px 80px -30px rgba(0,0,0,.5)}
.acds-hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;background-size:cover;background-position:center;transform:scale(1.02)}
.acds-hero-slide.is-active{opacity:1;z-index:2}
.acds-hero-slide-shade{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.65) 0%,rgba(0,0,0,.22) 38%,rgba(0,0,0,0) 60%)}

.acds-hero-carousel .acds-hero-copy{position:absolute!important;left:0!important;right:0!important;top:auto!important;bottom:0!important;z-index:4;display:block!important;flex-direction:unset!important;align-items:unset!important;justify-content:unset!important;padding:0 200px 52px 44px!important;color:#fff!important;max-width:900px!important;width:auto!important;height:auto!important;text-align:left!important}
.acds-hero-carousel .acds-hero-copy .acds-eyebrow{color:rgba(255,255,255,.78)!important}
.acds-hero-carousel .acds-hero-copy h1{color:#fff!important;font-size:clamp(30px,4.4vw,58px)!important;line-height:1.08!important;margin:12px 0 16px!important;transition:opacity .5s ease}
.acds-hero-carousel .acds-hero-copy .acds-lead{color:rgba(255,255,255,.85)!important;font-size:17px!important;max-width:560px!important;transition:opacity .5s ease}
.acds-hero-carousel .acds-hero-copy .acds-button{margin-top:18px!important}

.acds-hero-dots{position:absolute;left:44px;bottom:20px;z-index:5;display:flex;gap:8px}
.acds-hero-dot{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.4);border:0;padding:0;cursor:pointer;transition:width .3s ease,background .3s ease}
.acds-hero-dot.is-active{width:24px;background:#fff}

.acds-hero-stat-card{position:absolute;right:28px;bottom:-28px;z-index:6;background:#fff;border-radius:16px;padding:16px 20px;width:230px;box-shadow:0 20px 40px -18px rgba(0,0,0,.35);transition:opacity .45s ease,transform .45s ease}
.acds-hero-stat-card .acds-stat-label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#e8563f;font-weight:700;margin-bottom:6px}
.acds-hero-stat-card .acds-stat-value{display:block;font-size:16px;line-height:1.3;color:#111;font-weight:600}

@media(max-width:900px){
  .acds-hero-carousel{padding:88px 16px 90px}
  .acds-hero-carousel-stage{height:64vh;min-height:420px;border-radius:20px}
  .acds-hero-carousel .acds-hero-copy{padding:0 24px 40px}
  .acds-hero-stat-card{left:24px;right:24px;bottom:-60px;width:auto}
  .acds-hero-dots{bottom:100px}
}
@media(prefers-reduced-motion:reduce){
  .acds-hero-slide{transition:none}
}

/* Reclaim the old pinned-hero padding now that copy lives inside the carousel stage; .acds-proof (trust badges) sits below as a normal row. Note: initHeroZoomPin is disabled so .acds-hero-pin-inner is never created - .acds-hero-layout is a direct child of .acds-hero now. */
.acds-hero > .acds-hero-layout,
.acds-hero > .acds-shell.acds-hero-layout{padding:24px 24px 48px!important;min-height:0!important;height:auto!important;max-width:1560px!important;margin:0 auto!important;display:block!important}
.acds-hero .acds-proof{padding-top:0!important}

/* Remove the second full-bleed scene section below the hero - not part of the Okopod-carousel design */
.acds-hero-scene-pin{display:none!important}

/* Give the proof/trust-badge row its own solid band so nothing can ever show through behind it */
.acds-hero{background:linear-gradient(135deg,#fdeee4,#e9f1fb)!important}
.acds-hero .acds-proof{position:relative;z-index:5;background:transparent}

/* Proof row sits on a light background now (not the old dark hero) - force legible dark text throughout */
.acds-hero .acds-proof strong{color:#111!important}
.acds-hero .acds-proof span{color:#555!important}
.acds-hero .acds-proof>div{border-right-color:rgba(17,17,17,.12)!important}

/* Match Okopod more closely: plain white page bg (drop the pastel gradient), near-full-bleed card, richer floating card */
.acds-hero{background:#fff!important}
.acds-hero-carousel{padding:24px 20px 56px!important;max-width:1720px!important}
.acds-hero-carousel-stage{height:min(80vh,780px)!important}

.acds-hero-stat-card{display:flex!important;align-items:center;gap:12px;width:270px!important;padding:12px!important}
.acds-hero-stat-card .acds-stat-thumb{width:52px;height:52px;border-radius:10px;background-size:cover;background-position:center;flex:0 0 52px}
.acds-hero-stat-card .acds-stat-text{display:flex;flex-direction:column;min-width:0}
.acds-hero-stat-card .acds-stat-label{margin-bottom:4px!important}

/* CRITICAL FIX: there are multiple leftover duplicate .acds-hero-photo elements from earlier hero versions - the carousel JS only hides the first one it finds. Force-hide ALL of them, unconditionally, so they can never bleed into the page below the carousel card again. */
.acds-hero .acds-hero-photo{display:none!important;visibility:hidden!important;opacity:0!important;height:0!important;width:0!important}

/* ===== Hero rebuild v6 - split-screen (dark panel + photo), architecture-studio pattern. Retires the full-bleed carousel entirely. ===== */
.acds-hero-carousel{display:none!important}
.acds-hero-stat-card,.acds-hero-slide-shade{display:none!important}
.acds-hero>.acds-hero-layout,.acds-hero>.acds-shell.acds-hero-layout{display:none!important}
.acds-hero{background:#111!important}

.acds-hero-split{display:flex;align-items:stretch;min-height:82vh}
.acds-hero-panel{flex:0 0 clamp(380px,38vw,560px);display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;padding:64px 48px;background:#111;color:#fff;box-sizing:border-box}
.acds-hero-panel .acds-hero-copy{position:static!important;display:block!important;padding:0!important;margin:0!important;max-width:none!important;width:auto!important;height:auto!important;text-align:left!important;color:inherit}
.acds-hero-panel .acds-eyebrow{color:#ff6b52!important}
.acds-hero-panel h1{color:#fff!important;font-size:clamp(32px,3.2vw,50px)!important;line-height:1.08!important;margin:16px 0 18px!important;font-weight:600!important;transition:opacity .5s ease}
.acds-hero-panel .acds-lead{color:rgba(255,255,255,.72)!important;font-size:17px!important;max-width:420px!important;transition:opacity .5s ease}
.acds-hero-panel .acds-button{margin-top:26px!important;align-self:flex-start!important;background:#ff6b52!important;color:#fff!important;border-color:#ff6b52!important}
.acds-hero-panel .acds-button:hover{background:#fff!important;color:#111!important;border-color:#fff!important}

.acds-hero-trust{display:flex;flex-wrap:wrap;gap:26px;margin-top:44px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14);width:100%}
.acds-hero-trust-item{min-width:80px}
.acds-hero-trust-item strong{display:block;font-size:18px;color:#fff;font-weight:700}
.acds-hero-trust-item span{display:block;font-size:12px;color:rgba(255,255,255,.5);margin-top:3px}

.acds-hero-panel-dots{display:flex;gap:8px;margin-top:30px}
.acds-hero-panel-dots button{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.28);border:0;padding:0;cursor:pointer;transition:width .3s ease,background .3s ease}
.acds-hero-panel-dots button.is-active{width:24px;background:#ff6b52}

.acds-hero-photo-col{flex:1;position:relative;overflow:hidden;min-width:0}
.acds-hero-photo-col .acds-hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;background-size:cover;background-position:center;transform:scale(1.02);will-change:opacity}
.acds-hero-photo-col .acds-hero-slide.is-active{opacity:1;z-index:2}

@media(max-width:960px){
  .acds-hero-split{flex-direction:column;min-height:0}
  .acds-hero-panel{flex:none;padding:48px 24px;width:100%}
  .acds-hero-panel h1{font-size:clamp(28px,7vw,40px)!important}
  .acds-hero-photo-col{height:48vh;min-height:320px}
}
@media(prefers-reduced-motion:reduce){.acds-hero-photo-col .acds-hero-slide{transition:none}}


/* Hero rebuild v7 - styling refinement pass on the split-screen hero. Fixes CTA button contrast bug and adds depth/polish. */
.acds-homepage .acds-hero-panel .acds-button.is-coral,.acds-hero-panel .acds-button{background:#ff6b52!important;border-color:#ff6b52!important;color:#fff!important}
.acds-homepage .acds-hero-panel .acds-button.is-coral:hover,.acds-hero-panel .acds-button:hover{background:#fff!important;color:#111!important;border-color:#fff!important}
.acds-hero-panel .acds-button span{display:inline-block;transition:transform .25s ease}
.acds-hero-panel .acds-button:hover span{transform:translateX(4px)}

.acds-hero{background:#0d0d0d!important}
.acds-hero-panel{background:radial-gradient(1100px 700px at -15% -10%,rgba(255,107,82,.14),transparent 55%),linear-gradient(165deg,#161616 0%,#0b0b0b 100%)!important}

.acds-hero-panel .acds-eyebrow{display:flex!important;align-items:center;gap:10px}
.acds-hero-panel .acds-eyebrow::before{content:'';width:26px;height:1px;background:#ff6b52;flex:none}
.acds-hero-panel h1{margin:18px 0 20px!important;letter-spacing:-.01em!important}
.acds-hero-panel .acds-lead{max-width:400px!important}
.acds-hero-panel .acds-button{margin-top:32px!important}

.acds-hero-trust{display:flex!important;flex-wrap:wrap!important;gap:0!important;margin-top:42px!important;padding-top:22px!important}
.acds-hero-trust-item{flex:0 0 33.333%;box-sizing:border-box;padding-right:16px;border-right:1px solid rgba(255,255,255,.1);margin-bottom:18px}
.acds-hero-trust-item:nth-child(3n){border-right:0;padding-right:0}
.acds-hero-trust-item strong{font-size:19px!important;letter-spacing:-.01em}
.acds-hero-trust-item span{font-size:11.5px!important;letter-spacing:.01em!important;text-transform:none!important;opacity:.75;white-space:nowrap}
.acds-hero-trust-item{padding-right:12px!important}
@media(max-width:480px){.acds-hero-trust-item{flex:0 0 50%!important}.acds-hero-trust-item:nth-child(3n){border-right:1px solid rgba(255,255,255,.1)!important;padding-right:16px!important}.acds-hero-trust-item:nth-child(2n){border-right:0!important;padding-right:0!important}}

.acds-hero-panel-dots{gap:18px!important;margin-top:34px!important;align-items:center}
.acds-hero-panel-dots button{width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;padding:0 0 6px!important;font-size:12px!important;font-weight:700!important;letter-spacing:.05em!important;color:rgba(255,255,255,.35)!important;border:0!important;border-bottom:2px solid transparent!important;transition:color .25s ease,border-color .25s ease}
.acds-hero-panel-dots button.is-active{width:auto!important;background:transparent!important;color:#ff6b52!important;border-bottom-color:#ff6b52!important}

.acds-hero-photo-col{position:relative}
.acds-hero-photo-col::before{content:'';position:absolute;inset:0 auto 0 0;width:90px;background:linear-gradient(90deg,#0d0d0d,rgba(13,13,13,0));z-index:3;pointer-events:none}
.acds-hero-photo-col::after{content:'';position:absolute;inset:auto 0 0 0;height:140px;background:linear-gradient(0deg,rgba(0,0,0,.28),transparent);z-index:3;pointer-events:none}
.acds-hero-photo-col .acds-hero-slide{filter:saturate(.94) contrast(1.04)}
@media(max-width:960px){.acds-hero-photo-col::before{display:none}}


/* Hero v7.1 - fix undersized h1 vs rest of site (92px section headers), remove ugly seam-fade smudge on photo */
.acds-hero-panel h1{font-size:clamp(38px,4.8vw,66px)!important;line-height:1.04!important}
.acds-hero-photo-col::before{display:none!important}


/* Hero v8 - unify panel+photo into ONE framed object instead of two bare rectangles. This is the fix for 'looks slapped on'. */
.acds-hero{background:#f5f3f0!important;padding:28px!important;box-sizing:border-box}
.acds-hero-split{border-radius:26px!important;overflow:hidden!important;box-shadow:0 40px 90px -20px rgba(0,0,0,.35),0 0 0 1px rgba(0,0,0,.04)!important;min-height:min(84vh,820px)!important}
.acds-hero-panel{background:radial-gradient(1100px 700px at -15% -10%,rgba(255,107,82,.14),transparent 55%),linear-gradient(165deg,#161616 0%,#0b0b0b 100%)!important;padding:56px 52px!important}

/* unify the mismatched real-estate photos with one consistent cinematic grade instead of raw snapshots */
.acds-hero-photo-col .acds-hero-slide{filter:saturate(.82) contrast(1.08) brightness(.95) !important;background-position:center 62%!important}
.acds-hero-photo-col::after{height:180px!important;background:linear-gradient(0deg,rgba(0,0,0,.35),transparent)!important}

/* soften the trust row so it reads as a quiet detail, not a bolted-on spec table */
.acds-hero-trust{border-top:1px solid rgba(255,255,255,.08)!important;margin-top:36px!important;padding-top:20px!important}
.acds-hero-trust-item strong{font-size:17px!important;font-weight:600!important}
.acds-hero-trust-item span{opacity:.55!important}

@media(max-width:960px){
  .acds-hero{padding:14px!important}
  .acds-hero-split{border-radius:20px!important;min-height:0!important}
  .acds-hero-panel{padding:44px 28px!important}
}


/* Hero v9 - reset v8's card/shadow/frame gimmick (looked worse per user). Grounded in real studio-site research: Okopod, House of Honey, ERA Residence, Kellerstockl, Van Praet all go full-bleed with sharp edges - none float the hero as a rounded shadow card on a mat background. Restraint over decoration. */
.acds-hero{background:#0b0b0b!important;padding:0!important}
.acds-hero-split{border-radius:0!important;box-shadow:none!important;min-height:min(86vh,840px)!important}
.acds-hero-panel{background:#0b0b0b!important;padding:64px 56px!important}

/* drop the heavy muddy grade from v8, keep photos reading true instead of filtered */
.acds-hero-photo-col .acds-hero-slide{filter:contrast(1.03) saturate(.97)!important;background-position:center 58%!important}
.acds-hero-photo-col::after{height:130px!important;background:linear-gradient(0deg,rgba(0,0,0,.24),transparent)!important}

/* trust row: one quiet editorial line instead of a stat-dashboard grid */
.acds-hero-trust{display:block!important;border-top:1px solid rgba(255,255,255,.14)!important;margin-top:38px!important;padding-top:18px!important;white-space:normal}
.acds-hero-trust-item{display:inline-flex!important;align-items:baseline;gap:6px;border-right:0!important;padding-right:0!important;margin-bottom:0!important;margin-right:22px}
.acds-hero-trust-item strong{font-size:14px!important;font-weight:700!important}
.acds-hero-trust-item span{font-size:12px!important;opacity:.5!important;letter-spacing:0!important}

/* sharper, more structural button corner - less bubbly */
.acds-hero-panel .acds-button{border-radius:3px!important}

@media(max-width:960px){
  .acds-hero-panel{padding:44px 24px!important}
  .acds-hero-split{min-height:0!important}
}


/* Hero v10 - drop the photo split entirely. Type-led editorial hero, no reliance on the weak source photography. Confident single centered statement on a clean paper background, like the boutique studios researched (House of Honey, Kellerstockl) that lead with type rather than mediocre imagery. */
.acds-hero-photo-col{display:none!important}
.acds-hero-split{display:block!important;min-height:0!important}
.acds-hero{background:#f6f4f0!important}
.acds-hero-panel{flex:0 0 100%!important;width:100%!important;max-width:100%!important;background:#f6f4f0!important;align-items:center!important;text-align:center!important;padding:120px 24px 90px!important;box-sizing:border-box}
.acds-hero-panel .acds-hero-copy{max-width:820px!important;margin:0 auto!important;text-align:center!important}
.acds-hero-panel .acds-eyebrow{justify-content:center!important;color:#c8502f!important}
.acds-hero-panel .acds-eyebrow::before{background:#c8502f!important}
.acds-hero-panel h1{color:#141414!important;font-size:clamp(42px,6.4vw,92px)!important;line-height:1.02!important}
.acds-hero-panel .acds-lead{color:#5a5650!important;max-width:520px!important;margin:0 auto!important}
.acds-hero-panel .acds-button{margin-left:auto!important;margin-right:auto!important}

.acds-hero-trust{max-width:640px!important;margin:44px auto 0!important;text-align:center!important;justify-content:center!important;display:flex!important;flex-wrap:wrap!important;border-top:1px solid rgba(20,20,20,.12)!important}
.acds-hero-trust-item{margin:0 14px 0!important}
.acds-hero-trust-item strong{color:#141414!important}
.acds-hero-trust-item span{color:#5a5650!important;opacity:.75!important}

.acds-hero-panel-dots{justify-content:center!important;margin:20px auto 0!important}
.acds-hero-panel-dots button{color:rgba(20,20,20,.3)!important}
.acds-hero-panel-dots button.is-active{color:#c8502f!important;border-bottom-color:#c8502f!important}

@media(max-width:960px){.acds-hero-panel{padding:90px 20px 60px!important}}


/* Hero v11 - photo is back. Researched actual UK residential-architecture peer sites (Architecture for London, Urbanist Architecture, Will Gamble, nimtim) instead of avant-garde agencies. Pattern that recurs: confident type statement first, then a real, unfiltered, full-width photo directly beneath it - not a split panel, not a colour-graded carousel. */
.acds-hero-photo-col{display:block!important;height:64vh!important;min-height:460px!important;max-height:640px!important;position:relative!important}
.acds-hero-panel{padding:96px 24px 56px!important}
.acds-hero-photo-col::after{display:none!important}
.acds-hero-photo-col .acds-hero-slide{filter:none!important;background-position:center 55%!important}

@media(max-width:960px){
  .acds-hero-photo-col{height:44vh!important;min-height:320px!important}
}


/* Hero v12 - photo is now THE hero, not a strip below it. Full-bleed photo fills the whole hero, text overlays directly on top, everything visible in one viewport with no scrolling required. */
.acds-hero{position:relative!important;overflow:hidden!important;min-height:92vh!important}
.acds-hero-split{position:relative!important;display:block!important;min-height:92vh!important}
.acds-hero-photo-col{position:absolute!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;max-height:none!important;z-index:1!important}
.acds-hero-photo-col::after{display:block!important;background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.15) 35%,rgba(0,0,0,.62) 78%,rgba(0,0,0,.78) 100%)!important;height:100%!important;inset:0!important;z-index:2!important}

.acds-hero-panel{position:relative!important;z-index:3!important;width:100%!important;min-height:92vh!important;background:transparent!important;justify-content:flex-end!important;padding:48px 24px 64px!important}
.acds-hero-panel .acds-eyebrow{color:#ff8a6e!important}
.acds-hero-panel .acds-eyebrow::before{background:#ff8a6e!important}
.acds-hero-panel h1{color:#fff!important}
.acds-hero-panel .acds-lead{color:rgba(255,255,255,.82)!important}

.acds-hero-trust{border-top-color:rgba(255,255,255,.22)!important}
.acds-hero-trust-item strong{color:#fff!important}
.acds-hero-trust-item span{color:rgba(255,255,255,.65)!important}

.acds-hero-panel-dots button{color:rgba(255,255,255,.4)!important}
.acds-hero-panel-dots button.is-active{color:#ff8a6e!important;border-bottom-color:#ff8a6e!important}

@media(max-width:960px){
  .acds-hero,.acds-hero-split,.acds-hero-panel{min-height:100vh!important}
  .acds-hero-panel{padding:40px 20px 48px!important}
}


/* Hero v13 - grounded in Urbanist Architecture (real UK residential practice): bold left-aligned text next to a staggered grid of real project photos, not one dominant/filtered hero image. Only 3 real photos exist site-wide so this is a 3-tile asymmetric grid (one tall + two stacked), same principle at our scale. */
.acds-hero{background:#fff!important;min-height:0!important;overflow:visible!important;padding:0!important}
.acds-hero-split{display:flex!important;align-items:stretch!important;min-height:0!important;flex-direction:row!important}
.acds-hero-panel{position:static!important;z-index:auto!important;flex:0 0 44%!important;width:44%!important;max-width:44%!important;background:#fff!important;padding:80px 40px 64px 56px!important;justify-content:center!important;align-items:flex-start!important;min-height:0!important;box-sizing:border-box}
.acds-hero-panel .acds-hero-copy{text-align:left!important;max-width:480px!important;margin:0!important}
.acds-hero-panel .acds-eyebrow{justify-content:flex-start!important;color:#c8502f!important}
.acds-hero-panel .acds-eyebrow::before{background:#c8502f!important}
.acds-hero-panel h1{color:#141414!important;font-size:clamp(32px,3.4vw,54px)!important;line-height:1.06!important;text-align:left!important}
.acds-hero-panel .acds-lead{color:#5a5650!important;text-align:left!important;margin:16px 0 0!important;max-width:420px!important}

.acds-hero-trust{justify-content:flex-start!important;text-align:left!important;margin:36px 0 0!important;max-width:none!important;display:flex!important;flex-wrap:wrap!important}
.acds-hero-trust-item{margin:0 20px 10px 0!important;text-align:left!important}
.acds-hero-trust-item strong{color:#141414!important}
.acds-hero-trust-item span{color:#5a5650!important}

.acds-hero-panel-dots{justify-content:flex-start!important;margin:26px 0 0!important}
.acds-hero-panel-dots button{color:rgba(20,20,20,.3)!important}
.acds-hero-panel-dots button.is-active{color:#c8502f!important;border-bottom-color:#c8502f!important}

.acds-hero-photo-col{position:static!important;flex:0 0 56%!important;width:56%!important;height:auto!important;min-height:0!important;max-height:none!important;display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:auto auto!important;gap:14px!important;padding:40px 40px 40px 0!important;box-sizing:border-box!important}
.acds-hero-photo-col::after,.acds-hero-photo-col::before{display:none!important}
.acds-hero-photo-col .acds-hero-slide{position:relative!important;inset:auto!important;opacity:1!important;transition:none!important;transform:none!important;border-radius:2px!important;filter:none!important;min-height:180px!important}
.acds-hero-photo-col .acds-hero-slide:nth-child(1){grid-column:1!important;grid-row:1/3!important}
.acds-hero-photo-col .acds-hero-slide:nth-child(2){grid-column:2!important;grid-row:1!important}
.acds-hero-photo-col .acds-hero-slide:nth-child(3){grid-column:2!important;grid-row:2!important;margin-top:36px!important}

@media(max-width:960px){
  .acds-hero-split{flex-direction:column!important}
  .acds-hero-panel,.acds-hero-photo-col{flex:0 0 100%!important;width:100%!important;max-width:100%!important}
  .acds-hero-panel{padding:56px 24px 32px!important}
  .acds-hero-photo-col{padding:8px 20px 32px!important}
  .acds-hero-photo-col .acds-hero-slide:nth-child(3){margin-top:0!important}
}


/* Hero v14 - trust stats were too small/cramped, bring back real size and presence */
.acds-hero-trust{gap:0!important;column-gap:32px!important;row-gap:16px!important;margin-top:40px!important;padding-top:24px!important;border-top:1px solid rgba(20,20,20,.14)!important}
.acds-hero-trust-item{margin:0!important;padding-right:0!important;border-right:0!important}
.acds-hero-trust-item strong{font-size:23px!important;font-weight:700!important;display:block!important;letter-spacing:-.01em!important}
.acds-hero-trust-item span{font-size:13px!important;display:block!important;margin-top:2px!important;white-space:normal!important;letter-spacing:0!important;opacity:.75!important}


/* ===== Hero v15 - Full editorial rebuild per client spec: single cinematic full-bleed image, huge centered typography, architectural palette, Ken Burns motion, glass detail chip, services statement, quiet ratings, copper CTA, transparent-over-hero nav. ===== */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap');

:root{--acds-warm-white:#F8F6F2;--acds-charcoal:#1D1D1B;--acds-stone:#CFC6BA;--acds-copper:#B56A42;--acds-green:#4F6654}

/* --- Layout reset: back to one full-bleed image, no split/grid --- */
.acds-hero{position:relative!important;overflow:hidden!important;min-height:100vh!important;background:var(--acds-charcoal)!important;padding:0!important;font-family:'Manrope',sans-serif!important}
.acds-hero-split{position:relative!important;display:block!important;min-height:100vh!important}
.acds-hero-photo-col{position:absolute!important;inset:0!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;max-height:none!important;display:block!important;padding:0!important;grid-template-columns:none!important;z-index:1!important}
.acds-hero-photo-col .acds-hero-slide{position:absolute!important;inset:0!important;margin:0!important;border-radius:0!important;opacity:0!important;transition:opacity 1.6s ease!important;filter:saturate(.96) contrast(1.02)!important;transform:scale(1);animation:acdsKenBurns 26s ease-out infinite alternate}
.acds-hero-photo-col .acds-hero-slide.is-active{opacity:1!important;z-index:2!important}
@keyframes acdsKenBurns{0%{transform:scale(1)}100%{transform:scale(1.09)}}
.acds-hero-photo-col::before{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(180deg,rgba(29,29,27,.55) 0%,rgba(29,29,27,.12) 22%,rgba(29,29,27,.18) 55%,rgba(29,29,27,.72) 100%)!important;display:block!important}
.acds-hero-photo-col::after{display:none!important}

/* --- Text panel: centred editorial statement over the image --- */
.acds-hero-panel{position:relative!important;z-index:4!important;width:100%!important;max-width:100%!important;flex:none!important;min-height:100vh!important;background:transparent!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:120px 24px 140px!important;text-align:center!important;box-sizing:border-box}
.acds-hero-panel .acds-hero-copy{text-align:center!important;max-width:920px!important;width:100%!important;margin:0 auto!important}

.acds-hero-detail-label{font-family:'Manrope',sans-serif;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--acds-warm-white);opacity:.85;display:inline-block;padding:9px 18px;border:1px solid rgba(248,246,242,.28);border-radius:999px;background:rgba(29,29,27,.28);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);margin-bottom:26px}

.acds-hero-panel .acds-eyebrow{display:none!important}
.acds-hero-panel h1{font-family:'Manrope',sans-serif!important;color:var(--acds-warm-white)!important;font-weight:700!important;font-size:clamp(30px,4.4vw,66px)!important;line-height:1.08!important;letter-spacing:-.01em!important;text-align:center!important;margin:0!important;max-width:none!important;width:100%!important;transition:opacity .6s ease}
.acds-hero-panel .acds-lead{font-family:'Manrope',sans-serif!important;color:rgba(248,246,242,.82)!important;font-weight:400!important;font-size:clamp(15px,1.15vw,18px)!important;line-height:1.5!important;max-width:560px!important;margin:16px auto 0!important;text-align:center!important;transition:opacity .6s ease}

.acds-hero-panel .acds-button{font-family:'Manrope',sans-serif!important;margin:26px auto 0!important;background:var(--acds-copper)!important;border-color:var(--acds-copper)!important;color:#fff!important;border-radius:999px!important;padding:16px 32px!important;font-size:13px!important;font-weight:600!important;letter-spacing:.04em!important}
.acds-hero-panel .acds-button:hover{background:var(--acds-warm-white)!important;color:var(--acds-charcoal)!important;border-color:var(--acds-warm-white)!important}
.acds-hero-panel .acds-button span{display:inline-block;transition:transform .25s ease}
.acds-hero-panel .acds-button:hover span{transform:translateX(4px)}

/* --- Services statement: the primary trust line, per spec --- */
.acds-hero-services{font-family:'Manrope',sans-serif;font-size:12px;font-weight:500;letter-spacing:.05em;color:var(--acds-stone);text-transform:uppercase;margin:26px auto 0;max-width:640px;line-height:1.6}

/* --- Ratings: quiet, secondary, below the statement --- */
.acds-hero-trust{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:14px 20px!important;margin:14px auto 0!important;padding-top:0!important;border-top:0!important;max-width:600px!important}
.acds-hero-trust-item{margin:0!important;text-align:center!important}
.acds-hero-trust-item strong{font-size:13px!important;font-weight:600!important;color:var(--acds-warm-white)!important;opacity:.7!important}
.acds-hero-trust-item span{font-size:11px!important;color:var(--acds-warm-white)!important;opacity:.45!important;margin-left:4px!important;display:inline!important}

.acds-hero-panel-dots{justify-content:center!important;margin:34px auto 0!important}
.acds-hero-panel-dots button{color:rgba(248,246,242,.4)!important}
.acds-hero-panel-dots button.is-active{color:var(--acds-copper)!important;border-bottom-color:var(--acds-copper)!important}

/* --- Nav: transparent over the hero, solid once scrolled past it (scoped to homepage via body class). Real fixed nav bar is .et_pb_section_0_tb_header, NOT header.et-l--header (that wrapper is ~0px tall). --- */
body.acds-nav-on-hero .et_pb_section_0_tb_header{background:transparent!important;box-shadow:none!important;transition:background .35s ease}
body.acds-nav-on-hero .et_pb_section_0_tb_header img{filter:drop-shadow(0 2px 10px rgba(0,0,0,.5))!important;transition:filter .35s ease}
body.acds-nav-on-hero .et_pb_section_0_tb_header .dd-logo{background:rgba(8,9,11,.4)!important;padding:8px 16px!important;border-radius:8px!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:background .35s ease}
.acds-hero-navlinks{display:flex!important;align-items:center!important;gap:34px!important;margin-left:auto!important;margin-right:34px!important}
.acds-hero-navlinks a{font-family:Helvetica,Arial,sans-serif!important;font-size:12px!important;font-weight:600!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#fff!important;text-decoration:none!important;opacity:.92;transition:opacity .2s ease;white-space:nowrap}
.acds-hero-navlinks a:hover{opacity:1!important}
.acds-hero-navlinks-divider{display:block;width:1px;height:22px;background:rgba(255,255,255,.3)}
@media(max-width:1150px){.acds-hero-navlinks{display:none!important}}
body.acds-nav-on-hero .et_pb_section_0_tb_header,body.acds-nav-on-hero .et_pb_section_0_tb_header a,body.acds-nav-on-hero .et_pb_section_0_tb_header *{color:#fff!important}
.et_pb_section_0_tb_header{transition:background .35s ease}
.et_pb_section_0_tb_header img{transition:filter .35s ease}

@media(max-width:960px){
  .acds-hero-panel{padding:100px 20px 150px!important}
  .acds-hero-services{font-size:10.5px!important;line-height:1.7!important}
  .acds-hero-panel h1{font-size:clamp(28px,7vw,44px)!important}
  .acds-hero-panel .acds-hero-copy{max-width:92%!important}
  .acds-hero-trust{gap:10px 16px!important}
}


/* ===== v15 specificity fix: an earlier is-coral rule (0,4,0) was beating the v15 button rule (0,2,0). Match/exceed specificity so copper actually applies. ===== */
.acds-homepage .acds-hero-panel .acds-button.is-coral{background:var(--acds-copper)!important;border-color:var(--acds-copper)!important;color:#fff!important}
.acds-homepage .acds-hero-panel .acds-button.is-coral:hover{background:var(--acds-warm-white)!important;color:var(--acds-charcoal)!important;border-color:var(--acds-warm-white)!important}


/* ===== Hero v16 - Left-aligned editorial layout per client mockup: Fraunces serif headline with accent period, small dash eyebrow, outline CTA, icon stats row, ratings/credentials moved to a separate light section below the photo, darker cinematic photo grade. ===== */
:root{--acds-ink:#14161a}
.acds-hero-panel{align-items:flex-start!important;justify-content:center!important;text-align:left!important;padding:100px 7vw 110px!important}
.acds-hero-panel .acds-hero-copy{text-align:left!important;width:auto!important;max-width:600px!important;margin:0!important}
.acds-hero-eyebrow-line{display:flex!important;align-items:center!important;gap:13px!important;margin:0 0 24px!important;padding:0!important;background:none!important;border:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-radius:0!important;font-family:Helvetica,Arial,sans-serif!important;font-size:11px!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:rgba(248,246,242,.82)!important;opacity:1!important}
.acds-hero-eyebrow-dash{display:inline-block;width:26px;height:1px;background:var(--acds-copper);flex:0 0 26px}
.acds-hero-panel h1{font-family:'Fraunces',serif!important;font-weight:500!important;font-style:normal!important;text-align:left!important;font-size:clamp(32px,4.6vw,72px)!important;line-height:1.06!important;letter-spacing:-.01em!important}
.acds-hero-accent{color:var(--acds-copper)!important;font-style:italic!important}
.acds-hero-panel .acds-lead{text-align:left!important;margin:18px 0 0!important;max-width:440px!important}
.acds-homepage .acds-hero-panel .acds-button.is-coral,.acds-hero-panel .acds-button{background:rgba(20,22,26,.25)!important;border:1.5px solid var(--acds-copper)!important;color:var(--acds-warm-white)!important;border-radius:5px!important;margin:30px 0 0!important;padding:15px 30px!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.acds-homepage .acds-hero-panel .acds-button.is-coral:hover,.acds-hero-panel .acds-button:hover{background:var(--acds-copper)!important;border-color:var(--acds-copper)!important;color:#fff!important}
.acds-hero-stats{display:flex!important;gap:26px!important;margin:36px 0 0!important;flex-wrap:wrap;max-width:560px}
.acds-hero-stat-item{display:flex!important;align-items:flex-start!important;gap:8px!important;text-align:left!important}
.acds-hero-stat-icon{width:17px;height:17px;flex:0 0 17px;color:var(--acds-copper);margin-top:2px}
.acds-hero-stat-icon svg{width:100%;height:100%;display:block}
.acds-hero-stat-text{display:flex;flex-direction:column;gap:2px}
.acds-hero-stat-text strong{font-family:Helvetica,Arial,sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.06em;color:var(--acds-warm-white)}
.acds-hero-stat-text em{font-family:Helvetica,Arial,sans-serif;font-style:normal;font-size:10.5px;color:rgba(248,246,242,.58);line-height:1.35;max-width:145px}
.acds-hero-panel-dots{display:none!important}
.acds-hero-photo-col .acds-hero-slide{filter:brightness(.66) contrast(1.14) saturate(.72)!important}
.acds-hero-photo-col::before{background:linear-gradient(100deg,rgba(10,12,16,.94) 0%,rgba(10,12,16,.78) 28%,rgba(10,12,16,.38) 52%,rgba(10,12,16,.1) 74%,rgba(10,12,16,0) 92%)!important}
.acds-hero-photo-col::after{content:"";position:absolute;top:0;left:0;right:0;height:170px;background:linear-gradient(180deg,rgba(4,5,7,.8) 0%,rgba(4,5,7,.4) 55%,rgba(4,5,7,0) 100%);pointer-events:none;z-index:3}
.acds-hero-trustbar{width:100%!important;background:var(--acds-warm-white)!important;position:relative;z-index:5}
.acds-hero-trustbar-inner{max-width:1400px;margin:0 auto;padding:56px 7vw;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:36px 72px;box-sizing:border-box}
.acds-hero-trustbar-item{display:flex!important;flex-direction:row!important;align-items:center!important;gap:18px!important}
.acds-trust-icon{flex:0 0 auto;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--acds-copper)}
.acds-trust-icon svg{width:100%;height:100%;display:block}
.acds-trust-icon-google svg{width:42px;height:42px}
.acds-trust-icon-trustpilot svg{width:38px;height:38px}
.acds-trust-icon img{width:100%;height:100%;object-fit:contain;display:block}
.acds-trust-icon-mciat,.acds-trust-icon-ipws{width:56px;height:56px}
.acds-hero-trustbar-text{display:flex;flex-direction:column;gap:2px}
.acds-hero-trustbar-item strong{font-family:Helvetica,Arial,sans-serif;font-size:26px;font-weight:700;color:var(--acds-charcoal);letter-spacing:-.01em}
.acds-hero-trustbar-item span{font-family:Helvetica,Arial,sans-serif;font-size:13px;color:#6f6b64;letter-spacing:.02em}
@media(max-width:960px){
  .acds-hero-panel{padding:90px 6vw 100px!important}
  .acds-hero-panel .acds-hero-copy{max-width:100%!important}
  .acds-hero-panel h1{font-size:clamp(30px,7.5vw,46px)!important}
  .acds-hero-panel .acds-lead{max-width:100%!important}
  .acds-hero-stats{gap:18px!important}
  .acds-hero-trustbar-inner{padding:28px 6vw;gap:16px 30px}
  .acds-hero-trustbar-item strong{font-size:16px}
}

/* --- Route card numeral fix (specificity override for legacy .acds-index rules) --- */
.acds-routes .acds-route-grid .acds-route-card .acds-index{
  margin:0 0 34px!important;
  color:var(--acds-line)!important;
  font-family:Helvetica,Arial,sans-serif!important;
  font-weight:300!important;
  font-size:96px!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
  opacity:1!important;
}
.acds-routes .acds-route-grid .acds-route-card:hover .acds-index{
  color:var(--acds-coral)!important;
}


/* --- Neutralize legacy full-fill hover state, restore Tocci-style hover (numeral + corner only) --- */
.acds-routes .acds-route-grid .acds-route-card:hover{
  background:#fff!important;
  border-color:#cfcfcf!important;
  color:inherit!important;
  box-shadow:var(--acds-shadow)!important;
}
.acds-routes .acds-route-grid .acds-route-card:hover .acds-index{
  color:var(--acds-coral)!important;
  opacity:1!important;
}
.acds-routes .acds-route-grid .acds-route-card:hover .acds-route-card-copy>p{
  color:var(--acds-muted)!important;
}
.acds-routes .acds-route-grid .acds-route-card:hover h3{
  color:inherit!important;
}
.acds-routes .acds-route-grid .acds-route-card:hover .acds-route-card-arrow{
  color:#111!important;
  border-color:rgba(17,17,17,.18)!important;
  background:transparent!important;
}


/* --- Permanent full-height hero tint, independent of whichever photo is loaded --- */
.acds-hero-photo-col::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(4,5,7,.72) 0%, rgba(4,5,7,.42) 26%, rgba(4,5,7,.34) 62%, rgba(4,5,7,.52) 100%);
}
.acds-hero-photo-col::after{
  height:100%!important;
  background:none!important;
}


/* --- FINAL hero tint override: strong left scrim + top band, wins over ALL legacy rules --- */
.acds-homepage .acds-hero .acds-hero-photo-col::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:5!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.6) 0%, rgba(0,0,0,.12) 20%, rgba(0,0,0,0) 32%),
    linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.56) 30%, rgba(0,0,0,.22) 58%, rgba(0,0,0,.06) 82%, rgba(0,0,0,0) 100%)
    !important;
}
.acds-homepage .acds-hero .acds-hero-photo-col::after{
  display:none!important;
}


/* --- TRUE final hero tint fix: explicit width/height to beat legacy width:90px rule --- */
.acds-homepage .acds-hero .acds-hero-photo-col::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  min-width:0!important;
  z-index:6!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.6) 0%, rgba(0,0,0,.12) 20%, rgba(0,0,0,0) 32%),
    linear-gradient(90deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.56) 30%, rgba(0,0,0,.22) 58%, rgba(0,0,0,.06) 82%, rgba(0,0,0,0) 100%)
    !important;
}


/* --- Match site-wide fonts: headline heading font, lead paragraph body font --- */
.acds-homepage .acds-hero h1,
.acds-homepage .acds-hero .acds-hero-copy h1{
  font-family:Helvetica,Arial,sans-serif!important;
}
.acds-homepage .acds-hero .acds-lead{
  font-family:"Roboto Flex",Arial,sans-serif!important;
}


/* --- Hero H1: match bold weight + tight tracking of rest-of-site headings (e.g. "What do you need help with?") --- */
.acds-homepage .acds-hero h1,
.acds-homepage .acds-hero .acds-hero-copy h1{
  font-weight:700!important;
  letter-spacing:-0.045em!important;
}


/* --- Bump up under-sized hero stat/eyebrow text to match rest-of-page caption sizing (13px, like trustbar) --- */
.acds-homepage .acds-hero .acds-hero-stat-text strong{
  font-size:15px!important;
}
.acds-homepage .acds-hero .acds-hero-stat-text em{
  font-size:13px!important;
}
.acds-homepage .acds-hero .acds-hero-eyebrow-line{
  font-size:13px!important;
}


/* --- Fix horizontal scrollbar caused by width:100vw not accounting for scrollbar width --- */
html{
  overflow-x:hidden!important;
}


/* --- Trustbar: fit all 6 items on one line at desktop widths (tighten padding/gap) --- */
/* --- Trustbar: shrink Google/Trustpilot icons, space items out more --- */
.acds-hero-trustbar-item .acds-trust-icon-google,
.acds-hero-trustbar-item .acds-trust-icon-trustpilot{
  width:34px!important;
  height:34px!important;
}
.acds-hero-trustbar-item .acds-trust-icon-google img,
.acds-hero-trustbar-item .acds-trust-icon-trustpilot svg{
  width:100%!important;
  height:100%!important;
}
@media (min-width:961px){
  .acds-hero-trustbar-inner{
    padding:56px 24px!important;
    gap:36px 52px!important;
    flex-wrap:nowrap!important;
  }
}


/* --- Trustbar: now 4 items (MCIAT/CABE removed via JS), space out more + add cream divider lines + clickable-link styling --- */
@media (min-width:961px){
  .acds-hero-trustbar-inner{
    max-width:none!important;
    width:100%!important;
    padding:56px 5vw!important;
    gap:36px 16px!important;
    flex-wrap:nowrap!important;
    justify-content:space-between!important;
  }
}
.acds-hero-trustbar-item{
  position:relative!important;
}
.acds-hero-trustbar-item:not(:first-child){
  border-left:1px solid #ded7ca!important;
  padding-left:32px!important;
}
a.acds-hero-trustbar-item{
  text-decoration:none!important;
  color:inherit!important;
  cursor:pointer!important;
  transition:opacity .2s ease!important;
}
a.acds-hero-trustbar-item:hover{
  opacity:.7!important;
}

/* Sticky-stack scroll effect for 01-04 "What do you need help with?" cards */
@media (min-width:961px){
  .acds-routes .acds-shell{
    display:grid!important;
    grid-template-columns:minmax(280px,420px) 1fr!important;
    gap:64px!important;
    align-items:start!important;
  }
  .acds-routes .acds-heading{
    display:block!important;
    position:sticky!important;
    top:140px!important;
    margin-bottom:0!important;
    grid-column:1!important;
    grid-row:1!important;
  }
  .acds-routes .acds-heading>p{
    margin-top:24px!important;
    max-width:100%!important;
  }
  .acds-routes .acds-route-grid{
    display:block!important;
    grid-column:2!important;
    grid-row:1!important;
  }
  .acds-routes .acds-route-card{
    width:100%!important;
    position:sticky!important;
    top:140px!important;
    min-height:400px!important;
    margin-bottom:40px!important;
    background:#fff!important;
    border-radius:28px!important;
    box-shadow:0 30px 60px rgba(18,18,18,.14)!important;
  }
  .acds-routes .acds-route-card:last-child{
    margin-bottom:0!important;
  }
}

/* 01-04 cards: photo backgrounds, remove ghost numerals, visible link cue, rebalance heading column */
@media (min-width:961px){
  .acds-routes .acds-shell{
    grid-template-columns:minmax(320px,460px) 1fr!important;
    gap:80px!important;
  }
  .acds-routes .acds-route-card{
    overflow:hidden!important;
    background-size:cover!important;
    background-position:center!important;
    border:none!important;
    color:#fff!important;
    justify-content:flex-end!important;
    padding:0 34px 34px!important;
  }
  .acds-routes .acds-route-card:before{ display:none!important; }
  .acds-routes .acds-route-card:after{ display:none!important; }
  .acds-routes .acds-index{ display:none!important; }
  .acds-routes .acds-route-card-copy{ position:relative!important; z-index:2!important; }
  .acds-routes .acds-route-card-copy h3{ color:#fff!important; font-size:26px!important; }
  .acds-routes .acds-route-card-copy p{ color:rgba(255,255,255,.85)!important; }
  .acds-routes .acds-route-card-copy:after{
    content:"View service \2192"!important;
    display:inline-block!important;
    margin-top:20px!important;
    font-family:Helvetica,Arial,sans-serif!important;
    font-weight:700!important;
    font-size:14px!important;
    letter-spacing:.02em!important;
    color:#fff!important;
    border-bottom:2px solid var(--acds-coral)!important;
    padding-bottom:3px!important;
  }
  .acds-routes .acds-route-card:nth-child(1){ background-image:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.12) 42%, rgba(0,0,0,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2023/05/House-conversion-to-four-flats-exterior-front.webp')!important; }
  .acds-routes .acds-route-card:nth-child(2){ background-image:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.12) 42%, rgba(0,0,0,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/05/LOFT-CONVERSION-DETAILED-DRAWINGS-.webp')!important; }
  .acds-routes .acds-route-card:nth-child(3){ background-image:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.12) 42%, rgba(0,0,0,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2025/09/steel-beam-structural-work-wembley-scaled.jpg')!important; }
  .acds-routes .acds-route-card:nth-child(4){ background-image:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.12) 42%, rgba(0,0,0,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/06/Who-Pays-for-a-party-wall-surveyor-terraced-house.webp')!important; }
}

/* Narrow cards, widen heading column, uniform charcoal tint on card photos (matches hero) */
@media (min-width:961px){
  .acds-routes .acds-shell{
    grid-template-columns:minmax(440px,620px) 1fr!important;
    gap:64px!important;
  }
  .acds-routes .acds-route-card:nth-child(1){ background-image:linear-gradient(180deg, rgba(2,2,2,.32) 0%, rgba(2,2,2,.18) 42%, rgba(2,2,2,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2023/05/House-conversion-to-four-flats-exterior-front.webp')!important; }
  .acds-routes .acds-route-card:nth-child(2){ background-image:linear-gradient(180deg, rgba(2,2,2,.32) 0%, rgba(2,2,2,.18) 42%, rgba(2,2,2,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/05/LOFT-CONVERSION-DETAILED-DRAWINGS-.webp')!important; }
  .acds-routes .acds-route-card:nth-child(3){ background-image:linear-gradient(180deg, rgba(2,2,2,.32) 0%, rgba(2,2,2,.18) 42%, rgba(2,2,2,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2025/09/steel-beam-structural-work-wembley-scaled.jpg')!important; }
  .acds-routes .acds-route-card:nth-child(4){ background-image:linear-gradient(180deg, rgba(2,2,2,.32) 0%, rgba(2,2,2,.18) 42%, rgba(2,2,2,.92) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/06/Who-Pays-for-a-party-wall-surveyor-terraced-house.webp')!important; }
}

@media (min-width:961px){
.acds-routes .acds-route-card{
  transition: box-shadow .35s ease!important;
}
.acds-routes .acds-route-card:hover{
  transform:none!important;
  border-color:transparent!important;
  box-shadow:0 30px 60px rgba(18,18,18,.22)!important;
}
.acds-routes .acds-route-card:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  border:none!important;
  background:rgba(2,2,2,.62)!important;
  opacity:0!important;
  transition:opacity .3s ease!important;
  z-index:1!important;
  pointer-events:none!important;
  transform:none!important;
}
.acds-routes .acds-route-card:hover:before{
  opacity:1!important;
}
.acds-routes .acds-route-card:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:0!important;left:0!important;right:auto!important;bottom:auto!important;
  width:100%!important;
  height:5px!important;
  border:none!important;
  background:var(--acds-coral)!important;
  transform:scaleX(0)!important;
  transform-origin:left!important;
  transition:transform .4s ease!important;
  z-index:3!important;
  pointer-events:none!important;
}
.acds-routes .acds-route-card:hover:after{
  transform:scaleX(1)!important;
}
}

@media (min-width:961px){
.acds-routes .acds-route-card:before{
  background:rgba(2,2,2,.8)!important;
}
.acds-routes .acds-route-card:hover .acds-route-card-copy p{
  color:rgba(255,255,255,1)!important;
}
.acds-routes .acds-route-card:hover .acds-route-card-copy h3{
  color:#fff!important;
}
}

@media (min-width:961px){
.acds-routes .acds-route-card{
  min-height:320px!important;
  padding:0 30px 28px!important;
}
.acds-routes .acds-route-card:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.72) 40%, rgba(0,0,0,.94) 100%)!important;
  opacity:1!important;
  z-index:1!important;
  pointer-events:none!important;
  transform:none!important;
  border:none!important;
  width:auto!important;
  height:auto!important;
}
.acds-routes .acds-route-card-copy{ position:relative!important; z-index:2!important; }
.acds-routes .acds-route-card-copy h3{
  color:#fff!important;
  font-size:34px!important;
  line-height:1.1!important;
  margin-bottom:12px!important;
}
.acds-routes .acds-route-card-copy p{
  color:rgba(255,255,255,.92)!important;
  font-size:16px!important;
}
.acds-routes .acds-route-card:hover{
  box-shadow:0 30px 60px rgba(18,18,18,.3)!important;
  transform:none!important;
  border-color:transparent!important;
}
.acds-routes .acds-route-card:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  top:0!important;left:0!important;right:auto!important;bottom:auto!important;
  width:100%!important;
  height:5px!important;
  border:none!important;
  background:var(--acds-coral)!important;
  z-index:3!important;
  pointer-events:none!important;
}
}

@media (min-width:961px){
.acds-routes .acds-route-card:before{
  background:linear-gradient(180deg, rgba(0,0,0,.32) 0%, rgba(0,0,0,.48) 40%, rgba(0,0,0,.78) 100%)!important;
}
.acds-routes .acds-route-card-copy h3{
  color:var(--acds-coral)!important;
  font-size:30px!important;
}
.acds-routes .acds-route-card-copy p{
  color:#fff!important;
}
.acds-routes .acds-route-card-copy:after{
  color:#fff!important;
  border-bottom:2px solid var(--acds-coral)!important;
}
}

@media (min-width:961px){
.acds-routes .acds-route-card{ max-width:560px!important; }
.acds-routes .acds-route-card-copy:after{ transition: color .3s ease, transform .3s ease!important; }
.acds-routes .acds-route-card:hover .acds-route-card-copy:after{ color:var(--acds-coral)!important; transform: translateX(6px)!important; }
}

@media (min-width:961px){
.acds-routes .acds-route-card{ max-width:none!important; }
.acds-routes .acds-route-card-copy h3{ color:#fff!important; }
.acds-routes .acds-route-card:before{ background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.28) 40%, rgba(0,0,0,.52) 100%)!important; }
.acds-routes .acds-route-card:nth-child(1),
.acds-routes .acds-route-card:nth-child(1):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.18) 0%, rgba(2,2,2,.10) 42%, rgba(2,2,2,.7) 100%), url('https://acdesignsolution.com/wp-content/uploads/2023/05/House-conversion-to-four-flats-exterior-front.webp')!important; }
.acds-routes .acds-route-card:nth-child(2),
.acds-routes .acds-route-card:nth-child(2):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.18) 0%, rgba(2,2,2,.10) 42%, rgba(2,2,2,.7) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/05/LOFT-CONVERSION-DETAILED-DRAWINGS-.webp')!important; }
.acds-routes .acds-route-card:nth-child(3),
.acds-routes .acds-route-card:nth-child(3):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.18) 0%, rgba(2,2,2,.10) 42%, rgba(2,2,2,.7) 100%), url('https://acdesignsolution.com/wp-content/uploads/2025/09/steel-beam-structural-work-wembley-scaled.jpg')!important; }
.acds-routes .acds-route-card:nth-child(4),
.acds-routes .acds-route-card:nth-child(4):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.18) 0%, rgba(2,2,2,.10) 42%, rgba(2,2,2,.7) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/06/Who-Pays-for-a-party-wall-surveyor-terraced-house.webp')!important; }
.acds-routes .acds-route-card:hover{ background-color:transparent!important; border-color:transparent!important; transform:none!important; box-shadow:0 30px 60px rgba(18,18,18,.3)!important; }
.acds-routes .acds-route-card:hover .acds-route-card-copy h3{ color:#fff!important; }
.acds-routes .acds-route-card:hover .acds-route-card-copy p{ color:rgba(255,255,255,.92)!important; }
}

@media (min-width:961px){
.acds-routes .acds-route-card:hover{ background-size:cover!important; background-position:center!important; }
.acds-routes .acds-route-grid .acds-route-card:hover .acds-route-card-copy>p{ color:rgba(255,255,255,.92)!important; }
}

@media (min-width:961px){
.acds-routes .acds-route-card:before{ background:linear-gradient(180deg, rgba(0,0,0,.36) 0%, rgba(0,0,0,.46) 40%, rgba(0,0,0,.70) 100%)!important; }
.acds-routes .acds-route-card:nth-child(1),
.acds-routes .acds-route-card:nth-child(1):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.36) 0%, rgba(2,2,2,.28) 42%, rgba(2,2,2,.88) 100%), url('https://acdesignsolution.com/wp-content/uploads/2023/05/House-conversion-to-four-flats-exterior-front.webp')!important; }
.acds-routes .acds-route-card:nth-child(2),
.acds-routes .acds-route-card:nth-child(2):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.36) 0%, rgba(2,2,2,.28) 42%, rgba(2,2,2,.88) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/05/LOFT-CONVERSION-DETAILED-DRAWINGS-.webp')!important; }
.acds-routes .acds-route-card:nth-child(3),
.acds-routes .acds-route-card:nth-child(3):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.36) 0%, rgba(2,2,2,.28) 42%, rgba(2,2,2,.88) 100%), url('https://acdesignsolution.com/wp-content/uploads/2025/09/steel-beam-structural-work-wembley-scaled.jpg')!important; }
.acds-routes .acds-route-card:nth-child(4),
.acds-routes .acds-route-card:nth-child(4):hover{ background-image:linear-gradient(180deg, rgba(2,2,2,.36) 0%, rgba(2,2,2,.28) 42%, rgba(2,2,2,.88) 100%), url('https://acdesignsolution.com/wp-content/uploads/2026/06/Who-Pays-for-a-party-wall-surveyor-terraced-house.webp')!important; }
}

/* ACDS Map section - resi.co.uk style card grid + sticky map (added by Claude) */
.acds-map-section{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:24px;align-items:start}
.acds-map-section>.acds-shell{grid-column:1 / -1}
.acds-map-cards{grid-column:1;height:min(76vh,780px);display:flex;flex-direction:column;min-height:0}
.acds-map-cards-inner{overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:14px;padding-right:6px;scrollbar-width:thin}
.acds-map-cards:not(.is-expanded) .acds-map-cards-inner{max-height:min(90vh,960px)}
.acds-map-cards.is-expanded{height:auto}
.acds-map-cards.is-expanded .acds-map-cards-inner{overflow-y:visible;max-height:none}
.acds-map-card{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--acds-line,#e5e5e5);border-radius:18px;padding:10px;background:#fff;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease}
.acds-map-card:hover{border-color:#111;box-shadow:0 4px 16px rgba(0,0,0,.08)}
.acds-map-card-photo{flex:0 0 96px;width:96px;height:96px;border-radius:12px;background-size:cover;background-position:center;background-color:#eceeed}
.acds-map-card-photo--empty{background-image:none}
.acds-map-card-meta{display:flex;flex-direction:column;gap:4px;min-width:0}
.acds-map-card-label{font:600 14px/1.3 Helvetica,Arial,sans-serif;color:#111;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acds-map-card-postcode{font:500 12px/1 Helvetica,Arial,sans-serif;color:var(--acds-muted,#777)}
.acds-map-card-desc{font:400 12px/1.4 Helvetica,Arial,sans-serif;color:var(--acds-muted,#777);margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.acds-map-cards-showall{margin-top:14px;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;border:1px solid #111;background:#111;color:#fff;font:600 13px/1 Helvetica,Arial,sans-serif;cursor:pointer}
.acds-map-cards-showall:hover{background:#000}
.acds-map-wrap{grid-column:2;position:sticky;top:0;width:100%;margin:0}
@media (max-width:900px){
  .acds-map-section{display:block}
  .acds-map-cards{display:none}
  .acds-map-wrap{position:relative;top:auto;width:calc(100% - 40px);margin:0 auto 20px}
}

/* ACDS Map section - 3-col override so cards sit between heading and map (added by Claude, fix 2) */
.acds-map-section{grid-template-columns:minmax(260px,300px) minmax(320px,420px) 1fr!important;gap:24px!important}
.acds-map-section .acds-shell{grid-column:1 / -1!important;width:100%!important}
.acds-map-section .acds-map-cards{grid-column:2!important;height:min(90vh,960px)!important;display:flex!important;flex-direction:column!important;min-height:0!important;margin:0!important;width:100%!important;overflow-y:auto!important}
.acds-map-section .acds-map-wrap{grid-column:3!important}
@media (max-width:1100px){
  .acds-map-section{grid-template-columns:1fr!important;display:block!important}
  .acds-map-section .acds-map-cards{display:none!important}
  .acds-map-section .acds-map-wrap{grid-column:auto!important}
}

/* ACDS Map section - restore heading row + filter row now that heading spans full width (added by Claude, fix 3) */
@media (min-width:901px){
  .acds-map-section .acds-map-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:60px!important;align-items:end!important;margin-bottom:34px!important;position:static!important;top:auto!important}
}
.acds-map-section .acds-map-filters{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:8px!important;width:auto!important}
.acds-map-section .acds-map-filters button{width:auto!important;min-width:0!important;flex:0 0 auto!important}

/* ACDS Map section - filters relocated into card column, compact row (added by Claude, fix 4) */
@media (min-width:901px){
  .acds-map-section .acds-map-heading{grid-template-columns:1fr!important}
}
.acds-map-cards>.acds-map-filters{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:6px!important;width:auto!important;margin:0 0 14px!important;order:-1}
.acds-map-cards>.acds-map-filters button{width:auto!important;min-width:0!important;flex:0 0 auto!important;padding:8px 14px!important;font-size:12px!important}
.acds-map-card{display:block}
.acds-map-card[style*="display: none"]{display:none!important}

/* ACDS Map section - kill legacy column-direction filter rule (added by Claude, fix 5) */
.acds-map-cards>.acds-map-filters{flex-direction:row!important;align-items:center!important;margin-top:0!important;margin-bottom:14px!important}
.acds-map-cards>.acds-map-filters button{flex:0 0 auto!important;align-self:auto!important}

/* ACDS map fix 6: remove dead empty heading column, shift cards left, expand map full width */
@media (min-width: 901px) {
  .acds-map-section {
    grid-template-columns: minmax(320px,420px) 1fr !important;
    padding-right: 0 !important;
    align-items: start !important;
  }
  .acds-map-section .acds-map-cards {
    grid-column: 1 !important;
  }
  .acds-map-section .acds-map-wrap {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: none !important;
    height: min(90vh, 960px) !important;
  }
  .acds-map-section .acds-map-heading {
    grid-column: 1 / -1 !important;
  }
}

/* ACDS map fix 7: widen cards column, lay project boxes out 2-up to use left-hand space (resi pattern) */
@media (min-width: 901px) {
  .acds-map-section {
    grid-template-columns: minmax(560px,640px) 1fr !important;
  }
  .acds-map-cards-inner {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
    align-content: start !important;
  }
  .acds-map-card {
    width: 100% !important;
  }
  .acds-map-cards > .acds-map-filters {
    max-width: 100% !important;
  }
}

/* ACDS map fix 8: stop 2-up card grid overflowing (nowrap label was forcing min-content width) */
@media (min-width: 901px) {
  .acds-map-cards-inner {
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  }
  .acds-map-card {
    min-width: 0 !important;
  }
  .acds-map-card-label {
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
  .acds-map-card-postcode {
    white-space: normal !important;
  }
}

/* ACDS map fix 9: kill remaining left gutter, go flush edge-to-edge to match right side */
@media (min-width: 901px) {
  .acds-map-section {
    padding-left: 24px !important;
  }
}

/* ACDS map fix 10: real resi pattern - big square photos filling card width, no Show all button */
@media (min-width: 901px) {
  .acds-map-card-photo {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
  }
  .acds-map-card {
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
  }
  .acds-map-card-meta {
    padding: 10px 2px 0 !important;
  }
  .acds-map-cards-showall {
    display: none !important;
  }
}

/* ACDS Map — Mapbox control/search polish (matches site pill/shadow language) */
.acds-map-wrap .mapboxgl-ctrl-group {
  border-radius: 10px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,.12) !important;
  overflow: hidden;
  border: none !important;
}
.acds-map-wrap .mapboxgl-ctrl-group button {
  width: 34px !important;
  height: 34px !important;
}
.acds-map-wrap input[type="text"],
.acds-map-wrap .acds-map-autocomplete-list ~ input {
  border-radius: 10px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,.12) !important;
  border: none !important;
  font-family: Helvetica, Arial, sans-serif !important;
  padding: 10px 14px !important;
}
.acds-map-wrap input[type="text"]:focus {
  outline: none !important;
  box-shadow: 0 0 0 2px #f36150, 0 2px 10px rgba(0,0,0,.12) !important;
}
.acds-map-autocomplete-list {
  border-radius: 10px !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.16) !important;
  border: none !important;
  overflow: hidden;
  font-family: Helvetica, Arial, sans-serif !important;
  background: #fff;
}
.acds-map-autocomplete-item {
  padding: 10px 14px !important;
  cursor: pointer;
  font-size: 14px;
}
.acds-map-autocomplete-item:hover {
  background: #F4F1EA;
}
.acds-map-wrap .mapboxgl-ctrl-attrib {
  border-radius: 6px 0 0 0 !important;
  font-family: Helvetica, Arial, sans-serif !important;
}
.acds-map-pin {
  transition: transform .15s ease;
}
.acds-map-pin:hover {
  transform: scale(1.15);
}

/* ACDS Map — cluster badges (resi-style numbered circles that split on zoom) */
.acds-map-cluster {
  background: #ffffff;
  border: 2px solid #1d1d20;
  border-radius: 50%;
  color: #080808;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-size: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 6px rgba(0,0,0,.25);
  cursor: pointer;
  user-select: none;
  transition: transform .15s ease;
}
.acds-map-cluster:hover {
  transform: scale(1.1);
}

/* ACDS Map — mobile touch-target improvements */
@media (max-width: 640px) {
  .acds-map-wrap .mapboxgl-ctrl-group button {
    width: 40px !important;
    height: 40px !important;
  }
  .acds-map-wrap input[type="text"] {
    padding: 12px 14px !important;
    font-size: 16px !important; /* prevents iOS auto-zoom on focus */
  }
  .acds-map-cluster {
    min-width: 34px;
    min-height: 34px;
  }
  .acds-map-autocomplete-item {
    padding: 12px 14px !important;
  }
  .acds-map-detail-google {
    max-width: calc(100% - 24px) !important;
    left: 12px !important;
    right: 12px !important;
  }
}



/* ACDS premium homepage refinement — 2026-08-09 */
.acds-homepage,
.acds-homepage button,
.acds-homepage input,
.acds-homepage textarea,
.acds-homepage select {
  font-family: "Roboto Flex", Arial, sans-serif !important;
}
.acds-homepage h1,
.acds-homepage h2,
.acds-homepage h3,
.acds-homepage h4,
.acds-homepage strong,
.acds-homepage .acds-inline-link {
  font-family: "Roboto Flex", Arial, sans-serif !important;
}
.acds-review-card footer span:empty,
.acds-review-card footer span.is-internal,
.acds-map-card-photo--empty,
.acds-map-card:has(.acds-map-card-photo--empty),
.acds-map-filters [data-map-filter="unassigned"] {
  display: none !important;
}
.acds-review-card {
  min-height: 420px !important;
}
.acds-review-quote {
  min-height: 0 !important;
}
.acds-project-rail {
  gap: clamp(54px, 5vw, 76px) !important;
}
.acds-project-card,
.acds-project-media {
  height: clamp(460px, 40vw, 520px) !important;
}
.acds-work .acds-heading {
  min-height: 0 !important;
}
.acds-map-card-meta {
  min-height: 54px;
}
.acds-map-card-label {
  white-space: normal !important;
  text-overflow: clip !important;
}
.acds-project-card a:focus-visible,
.acds-review-controls button:focus-visible,
.acds-map-filters button:focus-visible,
.acds-homepage button:focus-visible,
.acds-homepage input:focus-visible,
.acds-homepage a:focus-visible {
  outline: 3px solid var(--acds-coral, #f36150) !important;
  outline-offset: 4px !important;
}
@media (max-width: 900px) {
  .acds-homepage h1 { font-size: clamp(34px, 10vw, 44px) !important; line-height: 1.02 !important; }
  .acds-homepage h2 { font-size: clamp(36px, 11vw, 44px) !important; line-height: 1.02 !important; }
  .acds-homepage .acds-story-panel h2 { font-size: clamp(36px, 10.5vw, 44px) !important; }
  .acds-routes,
  .acds-story-section,
  .acds-work,
  .acds-map-section { padding-top: 72px !important; padding-bottom: 72px !important; }
  .acds-review-viewport {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }
  .acds-review-viewport::-webkit-scrollbar { display: none; }
  .acds-review-track {
    transform: none !important;
    width: max-content !important;
    gap: 16px !important;
    padding: 0 16px 10px !important;
  }
  .acds-review-card {
    flex: 0 0 calc(100vw - 48px) !important;
    width: calc(100vw - 48px) !important;
    max-width: 360px !important;
    min-height: 410px !important;
    scroll-snap-align: center;
  }
  .acds-review-card:first-child { margin-left: 0 !important; }
  .acds-review-card footer span { display: none !important; }
  .acds-review-controls { display: flex !important; position: static !important; height: auto !important; margin-top: 24px; }
  .acds-project-rail { gap: 40px !important; }
  .acds-project-card,
  .acds-project-media { height: auto !important; min-height: 0 !important; }
  .acds-project-media { aspect-ratio: 4 / 3; }
  .acds-map-cards {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    margin-top: 20px;
  }
  .acds-map-cards-inner {
    display: flex !important;
    gap: 14px;
    height: auto !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory;
    padding-bottom: 10px;
  }
  .acds-map-card:not(:has(.acds-map-card-photo--empty)) {
    display: block !important;
    flex: 0 0 78vw;
    max-width: 330px;
    scroll-snap-align: start;
  }
  .acds-map-card-photo {
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
  }
  .acds-bottom-banner {
    min-height: 64px !important;
    padding: 8px 12px !important;
  }
  .acds-bottom-banner .et_pb_row {
    min-height: 48px !important;
    padding: 0 !important;
  }
  .acds-bottom-banner h2,
  .acds-bottom-banner h3,
  .acds-bottom-banner p {
    font-size: 14px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
  }
  .acds-bottom-banner .et_pb_button {
    min-height: 42px !important;
    padding: 11px 16px !important;
    font-size: 13px !important;
  }
  .acds-homepage { padding-bottom: 70px !important; }
  .et_pb_scroll_top { bottom: 84px !important; }
  .grecaptcha-badge { bottom: 76px !important; }
}
@media (max-width: 480px) {
  .acds-review-trustbar { padding: 22px 20px !important; }
  .acds-review-trustnote { display: none !important; }
  .acds-map-heading .acds-section-note { font-size: 16px !important; }
  .acds-map-filters {
    overflow-x: auto;
    flex-wrap: nowrap !important;
    padding-bottom: 8px;
    scrollbar-width: none;
  }
  .acds-map-filters button { white-space: nowrap; }
}



/* ACDS premium motion system — 2026-08-09 */
@keyframes acdsRevealUp{from{opacity:0;transform:translate3d(0,56px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes acdsRevealLine{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes acdsImageReveal{from{opacity:.35;clip-path:inset(10% 0 10% 0);transform:scale(1.08)}to{opacity:1;clip-path:inset(0);transform:scale(1)}}
@keyframes acdsHeroEnter{from{opacity:0;transform:translate3d(0,30px,0)}to{opacity:1;transform:none}}

.acds-hero-copy>*{animation:acdsHeroEnter .9s cubic-bezier(.16,1,.3,1) both}
.acds-hero-copy>*:nth-child(1){animation-delay:.08s}
.acds-hero-copy>*:nth-child(2){animation-delay:.18s}
.acds-hero-copy>*:nth-child(3){animation-delay:.3s}
.acds-hero-copy>*:nth-child(4){animation-delay:.42s}
.acds-hero-media{transition:opacity 1.25s cubic-bezier(.22,1,.36,1),transform 7s cubic-bezier(.16,1,.3,1)!important}
.acds-button,.acds-inline-link,.acds-work-card a,.acds-faq-question{transition-timing-function:cubic-bezier(.16,1,.3,1)!important}
.acds-work-card,.acds-review-card,.acds-route-card{transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s cubic-bezier(.16,1,.3,1),border-color .35s ease!important}
.acds-work-card img,.acds-review-card img{transition:transform 1s cubic-bezier(.16,1,.3,1),filter .6s ease!important}
.acds-work-card:hover img{transform:scale(1.045)}
.acds-inline-link{position:relative}
.acds-inline-link:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.acds-inline-link:hover:after{transform:scaleX(1);transform-origin:left}

@supports (animation-timeline:view()){
 .acds-section:not(.acds-story-section) .acds-heading,
 .acds-section:not(.acds-story-section)>.acds-shell>.acds-eyebrow,
 .acds-section:not(.acds-story-section)>.acds-shell>h2{
   animation:acdsRevealUp 1s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 5% cover 30%;
 }
 .acds-route-card,.acds-review-card,.acds-work-card,.acds-faq-item{
   animation:acdsRevealUp .9s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 5% cover 27%;
 }
 .acds-route-card:nth-child(2),.acds-review-card:nth-child(2),.acds-work-card:nth-child(2){animation-range:entry 9% cover 31%}
 .acds-route-card:nth-child(3),.acds-review-card:nth-child(3),.acds-work-card:nth-child(3){animation-range:entry 13% cover 35%}
 .acds-route-card:nth-child(4),.acds-review-card:nth-child(4),.acds-work-card:nth-child(4){animation-range:entry 17% cover 39%}
 .acds-work-card img,.acds-checker-media img{
   animation:acdsImageReveal 1.2s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 0% cover 42%;
 }
 .acds-heading:after{
   animation:acdsRevealLine .9s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 12% cover 34%;
 }
}
/* Preserve map and sticky interaction layers */
.acds-map-section .mapboxgl-map,.acds-map-section .mapboxgl-canvas-container,.acds-map-section .mapboxgl-control-container,.acds-map-section [class*="map-"]{animation:none!important;transform:none;pointer-events:auto}
@media (prefers-reduced-motion:reduce){
 .acds-homepage *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}



/* ACDS premium motion system — 2026-08-09 */
@keyframes acdsRevealUp{from{opacity:0;transform:translate3d(0,56px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes acdsRevealLine{from{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes acdsImageReveal{from{opacity:.35;clip-path:inset(10% 0 10% 0);transform:scale(1.08)}to{opacity:1;clip-path:inset(0);transform:scale(1)}}
@keyframes acdsHeroEnter{from{opacity:0;transform:translate3d(0,30px,0)}to{opacity:1;transform:none}}

.acds-hero-copy>*{animation:acdsHeroEnter .9s cubic-bezier(.16,1,.3,1) both}
.acds-hero-copy>*:nth-child(1){animation-delay:.08s}
.acds-hero-copy>*:nth-child(2){animation-delay:.18s}
.acds-hero-copy>*:nth-child(3){animation-delay:.3s}
.acds-hero-copy>*:nth-child(4){animation-delay:.42s}
.acds-hero-media{transition:opacity 1.25s cubic-bezier(.22,1,.36,1),transform 7s cubic-bezier(.16,1,.3,1)!important}
.acds-button,.acds-inline-link,.acds-work-card a,.acds-faq-question{transition-timing-function:cubic-bezier(.16,1,.3,1)!important}
.acds-work-card,.acds-review-card,.acds-route-card{transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s cubic-bezier(.16,1,.3,1),border-color .35s ease!important}
.acds-work-card img,.acds-review-card img{transition:transform 1s cubic-bezier(.16,1,.3,1),filter .6s ease!important}
.acds-work-card:hover img{transform:scale(1.045)}
.acds-inline-link{position:relative}
.acds-inline-link:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.acds-inline-link:hover:after{transform:scaleX(1);transform-origin:left}

@supports (animation-timeline:view()){
 .acds-section:not(.acds-story-section) .acds-heading,
 .acds-section:not(.acds-story-section)>.acds-shell>.acds-eyebrow,
 .acds-section:not(.acds-story-section)>.acds-shell>h2{
   animation:acdsRevealUp 1s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 5% cover 30%;
 }
 .acds-route-card,.acds-review-card,.acds-work-card,.acds-faq-item{
   animation:acdsRevealUp .9s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 5% cover 27%;
 }
 .acds-route-card:nth-child(2),.acds-review-card:nth-child(2),.acds-work-card:nth-child(2){animation-range:entry 9% cover 31%}
 .acds-route-card:nth-child(3),.acds-review-card:nth-child(3),.acds-work-card:nth-child(3){animation-range:entry 13% cover 35%}
 .acds-route-card:nth-child(4),.acds-review-card:nth-child(4),.acds-work-card:nth-child(4){animation-range:entry 17% cover 39%}
 .acds-work-card img,.acds-checker-media img{
   animation:acdsImageReveal 1.2s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 0% cover 42%;
 }
 .acds-heading:after{
   animation:acdsRevealLine .9s cubic-bezier(.16,1,.3,1) both;
   animation-timeline:view();
   animation-range:entry 12% cover 34%;
 }
}
/* Preserve map and sticky interaction layers */
.acds-map-section .mapboxgl-map,.acds-map-section .mapboxgl-canvas-container,.acds-map-section .mapboxgl-control-container,.acds-map-section [class*="map-"]{animation:none!important;transform:none;pointer-events:auto}
@media (prefers-reduced-motion:reduce){
 .acds-homepage *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}


/* Hero visibility guard: rotation script may leave inline opacity at zero */
.acds-hero .acds-hero-media{opacity:1!important}


.acds-hero .acds-hero-media{visibility:visible!important;opacity:1!important}


html.acds-js body .acds-homepage .acds-hero.acds-hero-ready.acds-hero-premium .acds-hero-media{visibility:visible!important;opacity:1!important}



/* ACDS header alignment fix — 2026-08-10 */
.et-l--header,
.et_pb_section_0_tb_header{
  background:#070b0f!important;
}
.et_pb_section_0_tb_header{
  height:72px!important;
  min-height:72px!important;
  padding:0!important;
  overflow:visible!important;
}
.et_pb_row_0_tb_header{
  width:100%!important;
  max-width:none!important;
  height:72px!important;
  min-height:72px!important;
  margin:0!important;
  padding:0 22px!important;
  background:#070b0f!important;
}
.et_pb_column_0_tb_header{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  height:72px!important;
  min-height:72px!important;
  margin:0!important;
}
.et_pb_column_0_tb_header>a:first-of-type{
  flex:0 0 148px!important;
  width:148px!important;
  height:58px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
.et_pb_column_0_tb_header>a:first-of-type img{
  display:block!important;
  width:148px!important;
  height:auto!important;
  max-height:58px!important;
  object-fit:contain!important;
  object-position:left center!important;
  margin:0!important;
}
.et_pb_column_0_tb_header .acds-hero-navlinks{
  margin-left:auto!important;
  justify-content:flex-end!important;
  gap:30px!important;
  width:auto!important;
  flex:0 0 auto!important;
}
.et_pb_column_0_tb_header .dd-divimenu{
  width:auto!important;
  max-width:none!important;
  flex:0 0 auto!important;
  margin-left:28px!important;
  height:72px!important;
  align-items:center!important;
}
.et_pb_column_0_tb_header .dd-modal{height:72px!important}
.et_pb_column_0_tb_header .dd-show{margin-left:0!important}
@media(max-width:980px){
 .et_pb_section_0_tb_header,.et_pb_row_0_tb_header,.et_pb_column_0_tb_header{height:68px!important;min-height:68px!important}
 .et_pb_row_0_tb_header{padding:0 14px!important}
 .et_pb_column_0_tb_header>a:first-of-type{width:136px!important;flex-basis:136px!important;height:52px!important}
 .et_pb_column_0_tb_header>a:first-of-type img{width:136px!important;max-height:52px!important}
 .et_pb_column_0_tb_header .acds-hero-navlinks{display:none!important}
 .et_pb_column_0_tb_header .dd-divimenu{margin-left:auto!important;height:68px!important}
}



/* ACDS header alignment fix — 2026-08-10 */
.et-l--header,
.et_pb_section_0_tb_header{
  background:#070b0f!important;
}
.et_pb_section_0_tb_header{
  height:72px!important;
  min-height:72px!important;
  padding:0!important;
  overflow:visible!important;
}
.et_pb_row_0_tb_header{
  width:100%!important;
  max-width:none!important;
  height:72px!important;
  min-height:72px!important;
  margin:0!important;
  padding:0 22px!important;
  background:#070b0f!important;
}
.et_pb_column_0_tb_header{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  height:72px!important;
  min-height:72px!important;
  margin:0!important;
}
.et_pb_column_0_tb_header>a:first-of-type{
  flex:0 0 148px!important;
  width:148px!important;
  height:58px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
.et_pb_column_0_tb_header>a:first-of-type img{
  display:block!important;
  width:148px!important;
  height:auto!important;
  max-height:58px!important;
  object-fit:contain!important;
  object-position:left center!important;
  margin:0!important;
}
.et_pb_column_0_tb_header .acds-hero-navlinks{
  margin-left:auto!important;
  justify-content:flex-end!important;
  gap:30px!important;
  width:auto!important;
  flex:0 0 auto!important;
}
.et_pb_column_0_tb_header .dd-divimenu{
  width:auto!important;
  max-width:none!important;
  flex:0 0 auto!important;
  margin-left:28px!important;
  height:72px!important;
  align-items:center!important;
}
.et_pb_column_0_tb_header .dd-modal{height:72px!important}
.et_pb_column_0_tb_header .dd-show{margin-left:0!important}
@media(max-width:980px){
 .et_pb_section_0_tb_header,.et_pb_row_0_tb_header,.et_pb_column_0_tb_header{height:68px!important;min-height:68px!important}
 .et_pb_row_0_tb_header{padding:0 14px!important}
 .et_pb_column_0_tb_header>a:first-of-type{width:136px!important;flex-basis:136px!important;height:52px!important}
 .et_pb_column_0_tb_header>a:first-of-type img{width:136px!important;max-height:52px!important}
 .et_pb_column_0_tb_header .acds-hero-navlinks{display:none!important}
 .et_pb_column_0_tb_header .dd-divimenu{margin-left:auto!important;height:68px!important}
}



/* DiviMenus full-width header wrapper correction */
.et_pb_column_0_tb_header>.et_pb_divimenus_flex_0_tb_header,
.et_pb_divimenus_flex_0_tb_header>.et_pb_module_inner,
.et_pb_divimenus_flex_0_tb_header .dd-wrapper{
 width:100%!important;
 max-width:none!important;
 height:72px!important;
 min-height:72px!important;
 margin:0!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-wrapper{
 display:flex!important;
 align-items:center!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-logo{
 flex:0 0 148px!important;
 width:148px!important;
 height:58px!important;
 display:flex!important;
 align-items:center!important;
 overflow:hidden!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-logo a{
 width:148px!important;
 height:58px!important;
 display:flex!important;
 align-items:center!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-logo img{
 width:148px!important;
 height:auto!important;
 max-height:58px!important;
 object-fit:contain!important;
 object-position:left center!important;
 margin:0!important;
}
@media(max-width:980px){
 .et_pb_column_0_tb_header>.et_pb_divimenus_flex_0_tb_header,
 .et_pb_divimenus_flex_0_tb_header>.et_pb_module_inner,
 .et_pb_divimenus_flex_0_tb_header .dd-wrapper{height:68px!important;min-height:68px!important}
 .et_pb_divimenus_flex_0_tb_header .dd-logo,
 .et_pb_divimenus_flex_0_tb_header .dd-logo a{width:136px!important;flex-basis:136px!important;height:52px!important}
 .et_pb_divimenus_flex_0_tb_header .dd-logo img{width:136px!important;max-height:52px!important}
}



/* Premium white sticky header correction — 2026-08-10 */
.et_pb_section_0_tb_header{
 position:fixed!important;
 top:0!important;
 left:0!important;
 right:0!important;
 width:100%!important;
 z-index:2147483000!important;
 transform:none!important;
 translate:none!important;
 opacity:1!important;
 visibility:visible!important;
 display:block!important;
 background:rgba(7,11,15,.92)!important;
 backdrop-filter:blur(16px) saturate(120%)!important;
 -webkit-backdrop-filter:blur(16px) saturate(120%)!important;
 transition:background-color .35s ease,box-shadow .35s ease!important;
}
body.admin-bar .et_pb_section_0_tb_header{top:32px!important}
.et_pb_section_0_tb_header.et_pb_sticky,
.et_pb_section_0_tb_header.et_pb_sticky--top,
.et_pb_section_0_tb_header[class*="scroll"],
.et_pb_section_0_tb_header[class*="hide"]{
 transform:none!important;
 translate:none!important;
 opacity:1!important;
 visibility:visible!important;
 top:0!important;
}
body.admin-bar .et_pb_section_0_tb_header.et_pb_sticky,
body.admin-bar .et_pb_section_0_tb_header.et_pb_sticky--top,
body.admin-bar .et_pb_section_0_tb_header[class*="scroll"],
body.admin-bar .et_pb_section_0_tb_header[class*="hide"]{top:32px!important}

.et_pb_divimenus_flex_0_tb_header .dd-wrapper{
 display:grid!important;
 grid-template-columns:148px minmax(0,1fr) 134px!important;
 align-items:center!important;
 column-gap:0!important;
 width:100%!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo{
 grid-column:1!important;
 width:148px!important;
 height:58px!important;
 background:transparent!important;
 background-color:transparent!important;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
 overflow:visible!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-logo a{
 background:transparent!important;
 border:0!important;
 box-shadow:none!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-logo img{
 filter:brightness(0) invert(1)!important;
 opacity:1!important;
 mix-blend-mode:normal!important;
 background:transparent!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-wrapper>.acds-hero-navlinks{
 grid-column:2!important;
 justify-self:end!important;
 margin:0 36px 0 0!important;
 width:auto!important;
 gap:34px!important;
}
.et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-divimenu{
 grid-column:3!important;
 justify-self:end!important;
 flex:none!important;
 width:134px!important;
 min-width:134px!important;
 max-width:134px!important;
 margin:0!important;
 transform:none!important;
 opacity:1!important;
 visibility:visible!important;
}
@media(max-width:980px){
 body.admin-bar .et_pb_section_0_tb_header{top:46px!important}
 .et_pb_divimenus_flex_0_tb_header .dd-wrapper{grid-template-columns:136px minmax(0,1fr) 60px!important}
 .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.acds-hero-navlinks{display:none!important}
 .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-divimenu{grid-column:3!important;width:60px!important;min-width:60px!important;max-width:60px!important}
 .et_pb_divimenus_flex_0_tb_header .dd-modal{display:none!important}
}



/* Remove DiviMenus logo tint and force a clean white mark */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo,
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a{
 background:transparent!important;
 background-color:transparent!important;
 background-image:none!important;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
 filter:none!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo:before,
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo:after{
 display:none!important;
 content:none!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{
 filter:brightness(0) invert(1)!important;
 -webkit-filter:brightness(0) invert(1)!important;
 opacity:1!important;
 mix-blend-mode:normal!important;
 box-shadow:none!important;
}



/* Transparent glass header over hero — keep white mark and sticky behaviour */
html body .et-l--header{
 background:transparent!important;
 box-shadow:none!important;
}
html body .et-l--header .et_pb_section_0_tb_header{
 background:linear-gradient(180deg,rgba(5,8,12,.34) 0%,rgba(5,8,12,.16) 100%)!important;
 background-color:rgba(5,8,12,.22)!important;
 border-bottom:1px solid rgba(255,255,255,.12)!important;
 box-shadow:0 8px 30px rgba(0,0,0,.08)!important;
 backdrop-filter:blur(10px) saturate(112%)!important;
 -webkit-backdrop-filter:blur(10px) saturate(112%)!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_row_0_tb_header,
html body .et-l--header .et_pb_section_0_tb_header .et_pb_column_0_tb_header,
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header,
html body .et-l--header .et_pb_section_0_tb_header .et_pb_module_inner,
html body .et-l--header .et_pb_section_0_tb_header .dd-wrapper{
 background:transparent!important;
 background-color:transparent!important;
 background-image:none!important;
 box-shadow:none!important;
}



/* Use the approved orange-mark / white-lettering logo asset */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-logo img{
 content:url("https://acdesignsolution.com/wp-content/uploads/2025/10/AC-DESIGN-SOLUTION-LOGO-WHITE-1.webp")!important;
 filter:none!important;
 -webkit-filter:none!important;
}



html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{
 content:url("https://acdesignsolution.com/wp-content/uploads/2025/10/AC-DESIGN-SOLUTION-LOGO-WHITE-1.webp")!important;
 filter:none!important;
 -webkit-filter:none!important;
}



/* Restore the original approved logo artwork exactly — no substitution or recolouring */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{
 content:normal!important;
 filter:none!important;
 -webkit-filter:none!important;
 opacity:1!important;
 mix-blend-mode:normal!important;
}



/* Approved two-colour header logo: original orange symbol + white ACDS lettering */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a{
 position:relative!important;
 isolation:isolate!important;
 overflow:visible!important;
 padding:0!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{
 content:url("https://acdesignsolution.com/wp-content/uploads/2025/10/AC-DESIGN-SOLUTION-LOGO-WHITE-1.webp")!important;
 display:block!important;
 width:100%!important;
 height:100%!important;
 max-width:none!important;
 max-height:none!important;
 padding:0!important;
 object-fit:contain!important;
 filter:none!important;
 -webkit-filter:none!important;
 position:relative!important;
 z-index:1!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a:after{
 content:""!important;
 display:block!important;
 position:absolute!important;
 inset:0!important;
 z-index:2!important;
 pointer-events:none!important;
 background:url("https://acdesignsolution.com/wp-content/uploads/2025/10/AC-DESIGN-SOLUTION-LOGO_.webp") left center/100% 100% no-repeat!important;
 clip-path:inset(0 69% 0 0)!important;
}



/* Original logo: preserve orange pixels, convert black ACDS artwork to white */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{
 content:normal!important;
 opacity:1!important;
 filter:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='acdsBrand'%3E%3CfeColorMatrix type='matrix' values='-0.0526 0 0 0 1 -0.663 0 0 0 1 -0.726 0 0 0 1 0 0 0 1 0'/%3E%3C/filter%3E%3C/svg%3E%23acdsBrand")!important;
 -webkit-filter:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='acdsBrand'%3E%3CfeColorMatrix type='matrix' values='-0.0526 0 0 0 1 -0.663 0 0 0 1 -0.726 0 0 0 1 0 0 0 1 0'/%3E%3C/filter%3E%3C/svg%3E%23acdsBrand")!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a:after{
 display:none!important;
 content:none!important;
}



/* Deterministic orange symbol + white wordmark */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{
 content:normal!important;
 filter:none!important;
 -webkit-filter:none!important;
 opacity:1!important;
 clip-path:inset(0 68% 0 0)!important;
 object-fit:contain!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a:before{
 content:"ACDS"!important;
 display:block!important;
 position:absolute!important;
 left:31%!important;
 top:9px!important;
 z-index:3!important;
 color:#fff!important;
 font:800 27px/.92 Helvetica,Arial,sans-serif!important;
 letter-spacing:-1.6px!important;
 white-space:nowrap!important;
 text-shadow:none!important;
}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a:after{
 content:"ARCHITECTURE & DESIGN"!important;
 display:block!important;
 position:absolute!important;
 left:32%!important;
 top:37px!important;
 z-index:3!important;
 color:rgba(255,255,255,.78)!important;
 font:600 5.2px/1 Helvetica,Arial,sans-serif!important;
 letter-spacing:.18px!important;
 white-space:nowrap!important;
 background:none!important;
 clip-path:none!important;
 pointer-events:none!important;
}


/* Exact supplied brand logo — preserve original colours; no filters or generated artwork */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a{position:relative!important;overflow:visible!important}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{content:url("https://acdesignsolution.com/wp-content/uploads/2025/10/AC-DESIGN-SOLUTION-LOGO_.webp")!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;clip-path:none!important;filter:none!important;-webkit-filter:none!important;opacity:1!important;mix-blend-mode:normal!important;position:relative!important;z-index:1!important}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a:before,html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a:after{content:none!important;display:none!important;background:none!important;filter:none!important;clip-path:none!important}


/* Original-colour logo contrast plaque — header remains transparent */
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo{width:205px!important;height:72px!important;min-width:205px!important;padding:10px 14px!important;box-sizing:border-box!important;background:rgba(255,255,255,.94)!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:2px!important;box-shadow:0 10px 28px rgba(0,0,0,.14)!important;backdrop-filter:blur(12px) saturate(105%)!important;-webkit-backdrop-filter:blur(12px) saturate(105%)!important;overflow:hidden!important}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo>a{display:flex!important;width:100%!important;height:100%!important;align-items:center!important;justify-content:center!important}
html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo img{width:100%!important;height:100%!important;object-fit:contain!important;filter:none!important;-webkit-filter:none!important}
@media(max-width:980px){html body .et-l--header .et_pb_section_0_tb_header .et_pb_divimenus_flex_0_tb_header .dd-wrapper>.dd-logo{width:132px!important;height:52px!important;min-width:132px!important;padding:7px 9px!important}}
