/* WeManage Rentals — refined design layer. Preserves content and section order. */
:root{--ink:#1c2024;--mut:#596169;--bg:#fff;--soft:#f5f5f2;--line:#e3e5e1;--acc:#176337;--acc2:#248a4a;--ok:#176337;--shadow:0 16px 46px rgba(20,35,27,.055);--shadow-hover:0 24px 58px rgba(20,35,27,.105)}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{font-size:17px;line-height:1.75;letter-spacing:-.005em;text-rendering:optimizeLegibility}
.w{max-width:1420px;padding-inline:clamp(20px,3.15vw,52px)}
.s{padding-block:clamp(76px,7.2vw,110px)}
.g2{gap:clamp(32px,5vw,80px)}.g3{gap:24px}.g4{gap:22px}
h1,h2,h3{color:inherit;letter-spacing:-.035em;text-wrap:balance}
h1{font-size:clamp(2.5rem,4.25vw,4.25rem);line-height:1.095;font-weight:750}
h2{font-size:clamp(2rem,3.15vw,3.25rem);line-height:1.16;margin-bottom:1.2rem;font-weight:730}
h3{font-size:clamp(1.12rem,1.3vw,1.37rem);line-height:1.35;margin-bottom:.6rem;font-weight:720}
p{max-width:68ch;line-height:1.78;margin-bottom:1rem}
.fine{font-size:.9rem;line-height:1.65}.k{font-size:.78rem;letter-spacing:.16em;font-weight:750;margin-bottom:1.2rem;line-height:1.5}
.k::before{content:"";display:inline-block;width:22px;height:2px;margin-right:11px;vertical-align:middle;background:currentColor;opacity:.7}
a{text-underline-offset:3px}
.bar{padding:10px 14px;font-size:.82rem;letter-spacing:.015em;background:#16231d}.bar a{color:#9ae2b3;font-weight:700;text-underline-offset:4px}
header{background:rgba(255,255,255,.975);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:rgba(24,38,29,.08);transition:box-shadow .25s ease}
header.is-scrolled{box-shadow:0 10px 35px rgba(20,35,27,.09)}
header .w{min-height:92px;gap:clamp(14px,1.8vw,28px);flex-wrap:nowrap}
.logo img{height:53px;max-width:232px;transition:transform .3s ease}.logo:hover img{transform:scale(1.025)}
nav{gap:clamp(12px,1.6vw,27px);font-size:.91rem;white-space:nowrap}
nav a{position:relative;font-weight:650;color:#38413f;padding:10px 0}
nav>a::after,.dd>a::after{content:"";position:absolute;bottom:3px;left:0;width:0;height:2px;background:var(--ok);transition:width .24s ease}
nav>a:hover::after,nav>a.on::after,.dd>a:hover::after{width:100%}
.dd>div{padding:12px;min-width:290px;left:-18px;top:calc(100% + 1px);border:1px solid var(--line);border-radius:12px;box-shadow:0 22px 48px rgba(20,35,27,.13)}
.dd>div a{border-radius:6px;padding:10px 13px;white-space:normal;font-weight:550}.dd>div a:hover{color:var(--ok);background:#f2f7f3}
.tel{font-size:.76rem;white-space:nowrap}.tel b{font-size:.97rem;letter-spacing:.01em;margin-top:3px}
.btn{border-radius:7px;font-size:.92rem;font-weight:700;min-height:48px;padding:13px 23px;box-shadow:0 3px 8px rgba(45,38,31,.06);transition:background .24s ease,color .24s ease,border .24s ease,transform .24s ease,box-shadow .24s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,99,55,.2)}.btn:active{transform:translateY(0)}
.btn.o{border-color:#a4a9a6;box-shadow:none;background:transparent}.btn.o:hover{border-color:var(--ink);box-shadow:0 10px 24px rgba(20,30,25,.1)}
.btn.sm{padding:11px 16px;font-size:.85rem;white-space:nowrap}
.hero{padding:clamp(72px,7.6vw,112px) 0 clamp(132px,11vw,172px);background-size:100% 118px,auto;background-color:#fafbf8;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath fill='%23dfdfd8' d='M0 120V92h60V74h40v18h50V64h30v28h70V78h40v14h80V54l20-22 20 22v38h40V82h60V62l10-32 10 32v20h50V88h90V72h40v20h70V44h20V22h10v22h20v48h60V82h60v10h80V80h40v12h70V86h60v34z'/%3E%3C/svg%3E"),radial-gradient(ellipse at 88% 5%,rgba(35,133,75,.075),transparent 35%),linear-gradient(175deg,#f3f5f0 0%,#fbfbf9 65%,#fff 100%)}
.hero .g2{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(30px,5.2vw,90px)}.hero p.l{font-size:clamp(1.07rem,1.45vw,1.24rem);line-height:1.8;color:#4d5555;max-width:65ch}
.hero h1{max-width:22ch}.hero .ph{margin-top:35px!important}
.card{border-radius:14px;border:1px solid #e2e5e0;box-shadow:var(--shadow);padding:clamp(23px,2.3vw,34px);transition:box-shadow .32s ease,transform .32s ease,border-color .32s ease,background-color .32s ease}
.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px);border-color:#cfdbd0}
.card p:last-child{margin-bottom:0}.card .fine{font-size:.9rem}
.alt{background:#f5f6f3}.dark{background:#1b2623}.dark .card{background:#24312e;border:1px solid #394743;box-shadow:none}.dark .card:hover{background:#2b3935;box-shadow:0 14px 30px #0002;border-color:#5e736a}
.form{padding:clamp(25px,3vw,42px);border-radius:16px;border-color:#e2e6e0;box-shadow:0 28px 85px rgba(28,47,36,.13);position:relative}
.form h2{font-size:clamp(1.4rem,1.8vw,1.7rem)!important;line-height:1.35}
.form label{font-size:.85rem;margin:16px 0 7px;color:#343b38;font-weight:700;letter-spacing:.01em}
input,select,textarea{min-height:48px;border-radius:7px;border:1px solid #cfd5d0;padding:12px 14px;color:#242b27;font-size:.96rem;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;transition:box-shadow .2s,border-color .2s,background-color .2s}
input:hover,select:hover{border-color:#a4b6a7}input:focus,select:focus{border-color:#23854b;box-shadow:0 0 0 4px rgba(35,133,75,.12);outline:0}
.form .btn{margin-top:21px}.stp{gap:9px;margin-bottom:13px}.stp i{height:5px;border-radius:99px}.stp i.a{background:var(--ok)}
.ph{border:1px dashed #c5cec4;border-radius:14px;background:repeating-linear-gradient(135deg,#f2f4ef,#f2f4ef 14px,#ecf0eb 14px,#ecf0eb 28px);color:#6d7971;font-size:.87rem;line-height:1.65;padding:clamp(22px,2.5vw,38px);transition:border-color .3s,background-color .3s}
.ph .icon{color:#3d8957;font-size:38px}.ph:hover{border-color:#82ad8e}
.ev{background:#fff;border-color:var(--line);padding:25px 0}.ev .w{font-size:.88rem;gap:18px 32px;align-items:center}.ev .w span{display:inline-flex;align-items:center;gap:4px}.ev b{font-weight:750;color:#233d2f}
.tick li{padding-left:33px;margin:.75rem 0}.tick li:before{font-size:21px;color:var(--ok)}
.pk{padding-block:36px}.pk.pop{border-color:var(--ok)}.pk.top{transform:translateY(-7px);background:#1d3028;border-color:#308952;box-shadow:0 22px 60px rgba(29,56,40,.17)}.pk.top:hover{transform:translateY(-11px)}
.pk .tag{background:var(--ok);letter-spacing:.1em;padding:7px 13px}.pk.top .tag{background:#c6ecd3;color:#212820}
.pk .pr{font-size:2.45rem;letter-spacing:-.05em}.pk .pr small{letter-spacing:0}.pk ul{padding-left:22px;line-height:1.75;margin:17px 0 24px}.pk ul li{padding-bottom:5px}.pk .btn{align-self:stretch}
table{font-size:.93rem;line-height:1.55}th,td{padding:16px 19px}th{background:#edf2ec;font-weight:750;color:#28362c}tbody tr:hover td{background:#f7faf7}.cmp td:nth-child(3),.cmp th:nth-child(3){background:#eff5ef}
.st .card:before{background:#347a50;width:40px;height:40px;font-size:1rem;margin-bottom:19px}
details{padding:21px 0;border-color:#dde4db}details[open]{padding-bottom:24px}summary{align-items:center;gap:24px;font-size:1.03rem;line-height:1.5}summary::after{color:var(--ok);flex-shrink:0}details p{margin-top:13px;max-width:72ch;color:#58615d}
.rev{border-left:3px solid var(--ok)}.note{border-radius:9px;padding:13px 16px;line-height:1.6}
footer{padding:80px 0 45px;background:#14221c;color:#cbd5cf;font-size:.9rem;line-height:1.8}footer .g4{gap:clamp(24px,3vw,56px);grid-template-columns:1.5fr .8fr .9fr 1.25fr}footer h4{font-size:1rem;margin:5px 0 18px;color:#fff}footer a{width:fit-content;margin:7px 0;transition:color .2s,transform .2s}footer a:hover{color:#fff;transform:translateX(3px)}footer .footer-logo{height:48px;max-width:235px}footer p{line-height:1.8;color:#b7c6bd}.legal{margin-top:46px;padding-top:25px;border-color:#3a4b41;line-height:1.8;color:#b7c6bd}
.mob{border-color:#d7e0da;box-shadow:0 -8px 30px rgba(19,38,26,.1)}
/* Staggered in-view entrance, only enabled if the browser supports IntersectionObserver. */
.motion-ready .s .w>.g2,.motion-ready .s .w>.g3,.motion-ready .s .w>.g4,.motion-ready .s .w>.card,.motion-ready .s .w>h2,.motion-ready .s .w>.k,.motion-ready .hero .w>div,.motion-ready .hero .g2>div,.motion-ready .hero .g2>form{opacity:0;transform:translateY(19px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.25,1)}
.motion-ready .s .w>.is-visible,.motion-ready .hero .w>.is-visible,.motion-ready .hero .g2>.is-visible{opacity:1;transform:translateY(0)}
@media(min-width:861px) and (max-width:1250px){header .w{gap:13px}.logo img{height:46px;max-width:202px}nav{gap:12px;font-size:.82rem}.tel{display:none}header .w>.btn{padding-inline:13px}}
@media(max-width:1020px){header .w{min-height:78px}.logo img{height:47px}nav{display:none}nav.open{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:100%;left:0;right:0;background:#fff;padding:18px max(22px,4vw) 26px;border-bottom:1px solid var(--line);gap:4px;z-index:25;max-height:calc(100dvh - 80px);overflow:auto;box-shadow:0 20px 35px rgba(20,35,27,.12)}nav a{padding:11px 3px;font-size:.95rem}nav .dd{width:100%}nav .dd>div{display:block;position:static;min-width:0;border:0;box-shadow:none;padding:3px 0 4px 17px}nav .dd>div a{padding:7px}.mobile-menu-button{display:inline-flex;margin-left:auto;width:46px;height:46px;border-radius:9px;align-items:center;justify-content:center}.tel{display:none}header .w>.btn{display:inline-flex}.hero .g2{gap:35px}}
@media(max-width:860px){.s{padding-block:65px}.hero{padding:58px 0 110px}.g2,.hero .g2,.g3,.g4,footer .g4{grid-template-columns:1fr;gap:24px}.hero h1{max-width:24ch}.hero .g2{gap:38px}.pk.top,.pk.top:hover{transform:none}.pk{padding:28px}.card:hover{transform:none}footer{padding-bottom:115px}.mob{display:flex;padding:11px 16px;gap:9px}.mob a{flex:1}.mob .btn{box-shadow:none}}
@media(max-width:600px){body{font-size:16px}.w{padding-inline:20px}h1{font-size:clamp(2.25rem,9vw,3.15rem)}h2{font-size:clamp(1.75rem,7vw,2.45rem)}.s{padding-block:55px}.hero{padding:46px 0 94px}.hero h1{font-size:clamp(2.25rem,9vw,3.15rem)}.hero .ph{margin-top:26px!important}.logo img{height:38px;max-width:165px}header .w{min-height:72px}.bar{font-size:.74rem;line-height:1.55}.card{padding:24px}.form{padding:23px}.btn{min-height:47px}.hero p:has(>.btn){display:flex;flex-wrap:wrap;gap:10px}.hero p:has(>.btn) .btn{margin:0}.ev .w{grid-template-columns:1fr 1fr;gap:14px}.ev .w span{font-size:.8rem}.pk .tag{font-size:.61rem}.table-scroll, .card:has(>table){overflow-x:auto}.card table{min-width:570px}footer .g4{gap:30px}.legal{margin-top:32px}.mob .btn{padding:9px 5px;font-size:.77rem;min-height:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.motion-ready .s .w>*,.motion-ready .hero .w>*{opacity:1!important;transform:none!important;transition:none!important}.btn,.card{transition:none!important}.btn:hover,.card:hover{transform:none!important}}

/* Mobile navigation refinement: preserves every existing page font size. */
.submenu-toggle{display:none}
.nav-parent{display:flex;align-items:center}
.nav-parent>a{flex:1}
@media(min-width:1021px){.nav-parent>a::after{content:"";position:absolute;bottom:3px;left:0;width:0;height:2px;background:var(--ok);transition:width .24s}.dd:hover .nav-parent>a::after{width:100%}.nav-parent::after{content:"";width:18px;height:18px;display:inline-block;margin-left:4px;background:currentColor;opacity:.6;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 10 5 5 5-5' fill='none' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat}.dd:hover>.submenu,.dd:focus-within>.submenu{display:block}}
@media(max-width:1020px){
 header{z-index:70}header .w{position:relative}header .w>.btn{display:none}
 .mobile-menu-button{display:inline-flex!important;flex:0 0 46px;margin-left:auto;background:#f4f7f4;border:1px solid #d9e5db;color:#20372b;transition:background .2s,border-color .2s,transform .2s}
 .mobile-menu-button[aria-expanded=true]{background:#e8f2e9;border-color:#a7c5ae;color:#176638}
 .mobile-menu-button:focus-visible,.submenu-toggle:focus-visible,nav a:focus-visible{outline:3px solid #80b993;outline-offset:2px}
 #primary-nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;max-height:min(76dvh,690px);overflow-y:auto;overscroll-behavior:contain;background:#fff;box-shadow:0 22px 48px rgba(13,32,22,.17);border:1px solid #e0e8e1;border-top:0;border-radius:0 0 18px 18px;padding:15px clamp(18px,4vw,36px) 24px;gap:4px;white-space:normal;align-items:stretch;flex-direction:column;animation:nav-appear .2s ease-out}
 #primary-nav.open{display:flex}
 #primary-nav>a,#primary-nav .nav-parent{min-height:50px;border-radius:9px;transition:background .18s ease;color:#26382c}
 #primary-nav>a{display:flex;align-items:center;padding:12px 15px}
 #primary-nav>a:hover,#primary-nav>a.on,#primary-nav .nav-parent:hover{background:#f1f6f1;color:#176b39}
 #primary-nav a::after{display:none}
 #primary-nav .nav-parent>a{display:flex;align-items:center;min-height:50px;padding:12px 15px;color:inherit;text-decoration:none;font-weight:650}
 #primary-nav .submenu-toggle{display:grid;place-items:center;align-self:stretch;width:52px;flex:0 0 52px;border:0;border-left:1px solid #e1e9e2;background:transparent;border-radius:0 9px 9px 0;color:#2b6a40;cursor:pointer}
 #primary-nav .submenu-toggle .icon{transition:transform .25s ease;font-size:23px}
 #primary-nav .submenu-toggle[aria-expanded=true] .icon{transform:rotate(180deg)}
 #primary-nav .dd{width:100%}
 #primary-nav .dd>.submenu{display:none;position:static;min-width:0;width:100%;padding:7px 8px 9px 12px;margin:4px 0 9px 0;border:0;border-left:2px solid #b5d6bc;box-shadow:none;background:#f6f9f6;border-radius:0 10px 10px 0}
 #primary-nav .dd.submenu-open>.submenu{display:block;animation:nav-appear .2s ease-out}
 #primary-nav .dd>.submenu a{display:flex;align-items:center;min-height:43px;padding:10px 13px;margin:2px 0;border-radius:7px;color:#44534a;line-height:1.45;white-space:normal;font-weight:550}
 #primary-nav .dd>.submenu a:hover,#primary-nav .dd>.submenu a.on{background:#e8f2e9;color:#176b39}
 #primary-nav .dd>.submenu a::before{content:"";height:5px;width:5px;flex:0 0 5px;background:#72a47c;border-radius:50%;margin-right:10px}
}
@media(max-width:600px){#primary-nav{padding:12px 16px 20px;max-height:calc(100dvh - 145px)}.mobile-menu-button{width:44px;flex-basis:44px;height:44px}#primary-nav .nav-parent>a,#primary-nav>a{padding-left:13px}#primary-nav .dd>.submenu{padding-left:9px}}
@keyframes nav-appear{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#primary-nav,#primary-nav .dd>.submenu{animation:none!important}}

/* BRAND FIDELITY — exact original HTML palette and section backgrounds. */
:root{--ink:#1c2024;--mut:#5d646c;--bg:#fff;--soft:#eeeeec;--line:#d9d9d6;--acc:#176337;--acc2:#248a4a;--ok:#176337}
body{background:var(--bg);color:var(--ink)}
.bar{background:var(--ink);color:#fff}.bar a{color:#9ae2b3}
header{background:#fff;border-color:var(--line)}
.alt{background:var(--soft)}.dark{background:var(--ink)}.dark .card{background:#262b30;border-color:#3a4047}
.hero{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath fill='%23e3dfd6' d='M0 120V92h60V74h40v18h50V64h30v28h70V78h40v14h80V54l20-22 20 22v38h40V82h60V62l10-32 10 32v20h50V88h90V72h40v20h70V44h20V22h10v22h20v48h60V82h60v10h80V80h40v12h70V86h60v34z'/%3E%3C/svg%3E") bottom center/100% 110px no-repeat,linear-gradient(180deg,var(--soft),#fff)}
.hero p.l{color:#333}.ev{background:#fff;border-color:var(--line)}.ev b{color:var(--ink)}
.pk.pop,.pk.top{border-color:var(--acc)}.pk.top{background:var(--ink);box-shadow:0 18px 40px #0003}.pk .tag{background:var(--acc)}.pk.top .tag{background:#9ae2b3;color:var(--ink)}
.st .card:before{background:var(--ink)}.cmp td:nth-child(3),.cmp th:nth-child(3){background:#eaf7ef}
th{background:var(--soft);color:var(--ink)}tbody tr:hover td{background:#f8f8f6}
.form input:focus,.form select:focus,input:focus,select:focus{border-color:var(--acc);box-shadow:0 0 0 4px rgba(23,99,55,.13)}
.stp i.a{background:var(--acc)}.rev{border-color:var(--acc)}summary::after{color:var(--acc)}
.ph{background:repeating-linear-gradient(45deg,#e4e3df,#e4e3df 12px,#ebeae6 12px,#ebeae6 24px);border:1px dashed #a9a79f;color:#6a675f}
footer{background:#14171a;color:#c9ced3}footer p{color:#c9ced3}.legal{color:#98a0a8;border-color:#333a40}
/* Social brand symbols are self-contained SVG: crisp icons even without icon fonts. */
.brand-icon{width:20px;height:20px;display:inline-block;flex:none;fill:none;stroke:currentColor;vertical-align:middle}
.footer-contact .contact-link{display:flex;align-items:flex-start;gap:11px;width:100%;overflow-wrap:anywhere;line-height:1.55;margin:11px 0}
.footer-contact .contact-link .brand-icon{width:18px;height:18px;margin-top:2px;color:#9ae2b3}
.footer-contact p{margin-top:18px}
.footer-socials{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin-top:20px}
.footer-socials a{display:inline-grid;place-items:center;width:44px;height:44px;margin:0;border:1px solid #41464b;border-radius:9px;color:#fff;background:#202428;transition:transform .2s,border-color .2s,background .2s}
.footer-socials a .brand-icon{width:22px;height:22px}
.footer-socials a:hover{transform:translateY(-3px);border-color:#9ae2b3;background:#20382a}
.footer-socials a:focus-visible,.footer-contact a:focus-visible,.mob a:focus-visible{outline:2px solid #9ae2b3;outline-offset:3px}
footer .g4{align-items:start}
footer .footer-logo{height:auto;max-width:225px;width:100%;object-fit:contain;object-position:left}
/* Mobile nav CTA appears only when menu is expanded, never alongside logo. */
.mobile-nav-cta{display:none!important}
@media(max-width:1020px){
 header .w>.btn{display:none!important}
 #primary-nav .mobile-nav-cta{display:flex!important;align-items:center;justify-content:center;gap:10px;text-align:center;margin-top:15px;padding:14px 19px;min-height:52px;color:#fff;background:var(--acc);border:1px solid var(--acc);border-radius:7px}
 #primary-nav .mobile-nav-cta .icon{font-size:21px;color:inherit}
 #primary-nav .mobile-nav-cta:hover{background:var(--acc2);color:#fff}
 .mobile-menu-button,.mobile-menu-button[aria-expanded=true]{background:#fff;border-color:var(--line);color:var(--ink)}
 #primary-nav{border-color:var(--line)}
 #primary-nav>a:hover,#primary-nav>a.on,#primary-nav .nav-parent:hover{background:#f1faf4;color:var(--acc2)}
 #primary-nav .submenu-toggle{color:var(--acc)}
 #primary-nav .dd>.submenu{border-left-color:#bfe5cc;background:#f5faf7}
 #primary-nav .dd>.submenu a:hover,#primary-nav .dd>.submenu a.on{background:#eaf7ef;color:var(--acc2)}
 #primary-nav .dd>.submenu a::before{background:var(--acc)}
}
@media(max-width:860px){
 footer{padding:56px 0 110px}
 footer .g4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 28px}
 footer .g4>div:first-child{grid-column:1/-1;max-width:580px}
 .mob{background:#fff;border-color:var(--line);box-shadow:0 -6px 22px rgba(28,32,36,.12)}
 .mob a{display:flex;align-items:center;justify-content:center;gap:9px}
 .mob .btn{background:var(--acc);color:#fff;border-color:var(--acc)}
 .mob .btn.o{background:#fff;color:var(--ink);border-color:var(--line)}
}
@media(max-width:600px){
 footer .g4{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}
 footer .g4>div:first-child,footer .g4>div:last-child{grid-column:1/-1}
 footer .footer-logo{max-width:205px}
 footer h4{margin-bottom:10px}
 footer .footer-socials{gap:13px}
 .footer-socials a{height:46px;width:46px}
 .mob{padding:10px 15px calc(10px + env(safe-area-inset-bottom));gap:12px}
 .mob a{min-height:45px;font-size:.86rem}
 .mob .brand-icon{width:19px;height:19px}
}


/* 2026 navigation repair: the parent row is NOT the dropdown panel. */
.mobile-nav-heading{display:none}
@media(min-width:1021px){
  #primary-nav{overflow:visible;align-items:center}
  #primary-nav .dd{position:relative;display:flex;align-items:center;align-self:stretch}
  #primary-nav .dd>.nav-parent{position:static;display:flex;align-items:center;min-width:0;padding:0;border:0;box-shadow:none;background:transparent;border-radius:0;gap:4px}
  #primary-nav .dd>.nav-parent>a{display:inline-flex;align-items:center;text-decoration:none;color:#38413f;padding:10px 0;font-weight:650}
  #primary-nav .dd>.nav-parent::after{margin-left:0;opacity:.75}
  #primary-nav .dd>.submenu{display:none;position:absolute;top:calc(100% - 9px);left:-18px;min-width:300px;width:max-content;max-width:350px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 42px rgba(28,32,36,.14);z-index:110}
  #primary-nav .dd:hover>.submenu,#primary-nav .dd:focus-within>.submenu{display:block;animation:nav-appear .18s ease-out}
  #primary-nav .dd>.submenu a{display:block;padding:11px 13px;line-height:1.45;color:var(--ink);font-size:.88rem;white-space:normal;text-decoration:none;border-radius:7px}
  #primary-nav .dd>.submenu a:hover,#primary-nav .dd>.submenu a:focus-visible{background:#edf8f1;color:var(--acc2)}
}
/* Brand-authentic Google presentation, with intentionally unverified numbers. */
.ev .w .google-rating{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid #e5e5e5;border-radius:10px;padding:7px 11px;box-shadow:0 2px 9px rgba(28,32,36,.045);font-family:Arial,'Segoe UI',sans-serif;color:#3c4043}
.google-g{font-family:Arial,sans-serif;font-size:29px;line-height:1;font-weight:800;letter-spacing:-.09em;background:conic-gradient(#4285f4 0 28%,#34a853 28% 47%,#fbbc05 47% 63%,#ea4335 63% 81%,#4285f4 81%);background-clip:text;-webkit-background-clip:text;color:transparent;padding-right:3px}
.google-review-text{display:flex;flex-direction:column;gap:0;line-height:1.16}
.google-review-text strong{font-size:.82rem;font-weight:700;color:#3c4043}
.google-review-text strong small{font-size:.76rem;font-weight:500;color:#5f6368}
.google-rating-row{display:flex;gap:6px;align-items:center}
.google-rating-number{font-weight:800;font-size:.89rem;color:#202124}
.google-stars{color:#fbbc04;font-size:.95rem;letter-spacing:1px;line-height:1}
.rating-unverified{font-size:.65rem;color:#747b80;line-height:1.3;max-width:58px}
@media(max-width:1020px){
  header{isolation:isolate}
  header .w{position:relative}
  #primary-nav{display:none!important}
  #primary-nav.open{display:flex!important;position:absolute;top:calc(100% + 8px);right:clamp(12px,3vw,32px);left:auto;width:min(420px,calc(100vw - 24px));max-height:min(77dvh,710px);padding:0 16px 20px;background:#fff;border:1px solid #dce7df;border-radius:16px;box-shadow:0 22px 65px rgba(28,32,36,.22);overflow-y:auto;flex-direction:column;gap:5px;align-items:stretch;z-index:150;animation:nav-appear .22s ease-out}
  .mobile-nav-heading{display:flex;align-items:center;justify-content:space-between;margin:0 -16px 8px;padding:17px 18px 14px;border-bottom:1px solid #e4efe7;color:var(--ink);font:750 .96rem/1.2 -apple-system,'Segoe UI',sans-serif;letter-spacing:-.015em}
  .mobile-nav-close{width:36px;height:36px;display:grid;place-items:center;cursor:pointer;color:var(--ink);background:#f6faf7;border:1px solid #e1ebe4;border-radius:9px}
  #primary-nav>a:not(.mobile-nav-cta),#primary-nav .nav-parent{border:1px solid transparent;min-height:52px;border-radius:10px;background:#fff}
  #primary-nav>a:not(.mobile-nav-cta){display:flex;align-items:center;padding:12px 15px;font-weight:650;color:var(--ink)}
  #primary-nav>a:not(.mobile-nav-cta):hover,#primary-nav>a.on,#primary-nav .nav-parent:hover{background:#f6faf7;border-color:#e7f4eb;color:var(--acc2)}
  #primary-nav .dd{width:100%}
  #primary-nav .dd>.nav-parent{display:flex;align-items:stretch;padding:0;box-shadow:none;position:static}
  #primary-nav .dd>.nav-parent>a{display:flex;flex:1;align-items:center;min-width:0;padding:12px 15px;text-decoration:none;font-weight:650}
  #primary-nav .submenu-toggle{display:grid;place-items:center;flex:0 0 48px;border:0;border-left:1px solid #e7f4eb;border-radius:0 10px 10px 0;cursor:pointer;background:transparent;color:var(--acc)}
  #primary-nav .submenu-toggle[aria-expanded=true]{background:#e7f4eb}
  #primary-nav .dd>.submenu{display:none;position:static;width:100%;min-width:0;margin:3px 0 10px;padding:7px 8px;background:#f6faf7;border:1px solid #dcefe3;border-radius:11px;box-shadow:none}
  #primary-nav .dd.submenu-open>.submenu{display:block}
  #primary-nav .dd>.submenu a{display:flex;align-items:center;min-height:43px;font-size:.88rem;line-height:1.45;padding:10px 12px;white-space:normal;border-radius:8px;color:#414447}
  #primary-nav .dd>.submenu a::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--acc);margin-right:11px;flex:none}
  #primary-nav .mobile-nav-cta{display:flex!important;margin-top:9px;min-height:53px;justify-content:center;align-items:center;gap:8px;background:var(--acc);border:1px solid var(--acc);color:#fff!important;border-radius:9px;font-weight:750}
  #primary-nav .mobile-nav-cta::after{display:none}
}
@media(max-width:860px){.mob{display:grid;grid-template-columns:.86fr 1.6fr 1.13fr;gap:7px;align-items:stretch;padding:9px 12px calc(9px + env(safe-area-inset-bottom))}.mob>a{min-width:0;display:flex;align-items:center;justify-content:center;gap:5px;padding:10px 6px!important;min-height:49px!important;white-space:nowrap;font-size:.77rem!important;line-height:1.15;border-radius:8px}.mob>.mobile-bar-property{background:var(--acc);border-color:var(--acc);color:white}.mob>.mobile-bar-property .icon{font-size:17px}}
@media(max-width:380px){.mob{gap:5px;padding-inline:6px}.mob>a{font-size:.69rem!important;padding-inline:3px!important}.mob .brand-icon{width:15px;height:15px}.mob .icon{font-size:15px}}
@media(prefers-reduced-motion:reduce){#primary-nav.open,#primary-nav .dd.submenu-open>.submenu{animation:none!important}}

/* Consistent icon-and-label alignment across all viewport sizes. */
.icon,.brand-icon{vertical-align:middle;flex-shrink:0}
.icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;font-style:normal;font-variant:normal}
.brand-icon{display:block;object-fit:contain}
.btn:has(>.icon),.btn:has(>.brand-icon),a:has(>.brand-icon):not(.footer-socials a),.mobile-nav-close,.mobile-menu-button,.submenu-toggle{
  align-items:center;
}
.btn:has(>.icon),.btn:has(>.brand-icon){display:inline-flex;justify-content:center;gap:8px}
.btn>.icon,.btn>.brand-icon{width:20px;height:20px;font-size:20px}
.btn>span:not(.icon):not(.brand-icon){line-height:inherit}
.footer-contact .contact-link{display:flex;align-items:center;gap:12px;min-height:27px;line-height:1.5}
.footer-contact .contact-link .brand-icon{width:19px;height:19px;margin-top:0;align-self:center}
.footer-contact .contact-link>span{display:block;min-width:0;line-height:1.5}
.footer-socials a{display:inline-flex;align-items:center;justify-content:center;line-height:0}
.footer-socials a .brand-icon{display:block;width:22px;height:22px;margin:0}
#primary-nav .mobile-nav-cta{display:none}
#primary-nav .nav-parent>a{align-items:center}
#primary-nav .submenu-toggle .icon,.mobile-menu-button .icon,.mobile-nav-close .icon{width:24px;height:24px;margin:0;line-height:1}
.google-rating,.google-rating-row{align-items:center}
.google-rating .google-g{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.google-rating .google-stars{display:inline-flex;align-items:center;line-height:1}
.contact-inline-icon{display:inline-flex;align-items:center;gap:6px;vertical-align:middle;white-space:nowrap}
.contact-inline-icon>.brand-icon{width:18px;height:18px;margin:0}
@media(max-width:1020px){#primary-nav .mobile-nav-cta{display:flex!important;align-items:center;justify-content:center;gap:9px}#primary-nav .submenu-toggle{display:flex;align-items:center;justify-content:center}}
@media(max-width:860px){.mob>a{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center}.mob>a>.icon,.mob>a>.brand-icon{display:block;flex:none;width:18px;height:18px;font-size:18px;line-height:1}.mob>a>span:not(.icon){display:block;line-height:1.2}.mob .mobile-bar-property{gap:6px}}
@media(max-width:380px){.mob>a{gap:4px}.mob>a>.icon,.mob>a>.brand-icon{width:15px;height:15px;font-size:15px}}

/* Typography refinement — consistent, smaller headings across all pages.
   Added after existing breakpoints to supersede prior heading sizes. */
h1{font-size:clamp(2.05rem,3.15vw,3.15rem);line-height:1.16;letter-spacing:-.027em}
h2{font-size:clamp(1.62rem,2.35vw,2.45rem);line-height:1.24;letter-spacing:-.022em}
h3{font-size:clamp(1.05rem,1.15vw,1.22rem);line-height:1.38;letter-spacing:-.012em}
.hero h1{font-size:clamp(2.15rem,3.25vw,3.25rem);line-height:1.16;max-width:26ch}
@media(max-width:860px){
  h1{font-size:clamp(1.95rem,4.6vw,2.65rem)}
  h2{font-size:clamp(1.55rem,3.85vw,2.13rem)}
  .hero h1{font-size:clamp(2rem,4.9vw,2.75rem);max-width:26ch}
}
@media(max-width:600px){
  h1{font-size:clamp(1.85rem,6.4vw,2.2rem)}
  h2{font-size:clamp(1.48rem,5.5vw,1.9rem)}
  h3{font-size:1.08rem}
  .hero h1{font-size:clamp(1.95rem,6.7vw,2.35rem);line-height:1.2}
}

/* User-requested refinement fixes */
.pk .tag{
  left:50%;
  transform:translateX(-50%);
  text-align:center;
  width:max-content;
  max-width:calc(100% - 36px);
}
.pk.top .tag{top:-14px}
.inline-legal-link{white-space:nowrap;display:inline-flex;align-items:center}

.reviews-showcase{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(290px,.95fr);gap:22px;align-items:stretch;margin-top:20px}
.reviews-slider{position:relative;overflow:hidden;min-width:0;border-radius:14px}
.reviews-slider::before,.reviews-slider::after{content:'';position:absolute;top:0;bottom:0;width:36px;z-index:2;pointer-events:none}
.reviews-slider::before{left:0;background:linear-gradient(90deg,var(--bg) 0%,rgba(255,255,255,0) 100%)}
.reviews-slider::after{right:0;background:linear-gradient(270deg,var(--bg) 0%,rgba(255,255,255,0) 100%)}
.reviews-track{display:flex;align-items:stretch;gap:18px;width:max-content;animation:reviewsMarquee 24s linear infinite}
.review-slide{width:min(390px,78vw);min-height:186px;display:flex;flex-direction:column;justify-content:center;padding:28px 22px}
.review-slide p:first-child{font-size:1.12rem;line-height:1.65;margin-bottom:16px}
.review-embed{min-height:186px;height:100%;padding:26px;display:flex;flex-direction:column;justify-content:center}
.review-embed .icon{font-size:28px;margin-bottom:10px}
@keyframes reviewsMarquee{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}

/* Improve visibility/capture of section content */
main, section, .w, .g2, .g3, .g4{overflow:visible}
section .ph{min-width:0}

@media (max-width:1020px){
  .logo img{height:54px;max-width:220px}
  .reviews-showcase{grid-template-columns:1fr;gap:18px}
  .review-slide{width:360px;max-width:82vw}
}
@media (max-width:600px){
  .logo img{height:50px;max-width:210px}
  header .w{min-height:74px}
  .reviews-slider::before,.reviews-slider::after{width:24px}
  .review-slide{width:320px;max-width:83vw;min-height:174px;padding:24px 18px}
  .review-slide p:first-child{font-size:1.02rem}
  .review-embed{min-height:170px;padding:24px}
}

/* Review marquee: JS controls the offset so pause and dragging resume seamlessly. */
.reviews-slider{touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.reviews-slider.is-dragging{cursor:grabbing}
.reviews-track{animation:none!important;will-change:transform;transform:translate3d(0,0,0)}
.reviews-slider a{user-select:none;-webkit-user-drag:none}
@media(prefers-reduced-motion:reduce){.reviews-track{animation:none!important;will-change:auto}}

/* Uniform icon/text baseline for checklists site-wide, including wrapped rows. */
.tick li{position:relative;padding-left:32px;line-height:1.6;margin:.7rem 0}
.tick li::before{position:absolute;left:0;top:.24em;display:flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:20px;line-height:1;font-weight:400;vertical-align:top}
@media(max-width:600px){.tick li{padding-left:30px}.tick li::before{font-size:19px;width:20px;height:20px;top:.26em}}

/* Reviews: quiet, stable hover treatment — no lifting, colour shift or shadows. */
.reviews-slider .review-slide,
.reviews-slider .review-slide:hover,
.reviews-slider .review-slide:focus-within {
  transform: none !important;
  box-shadow: none !important;
  border-color: var(--line) !important;
  transition: none !important;
}
.reviews-slider .review-slide {
  border-left: 3px solid var(--acc) !important;
}
/* Keep the entire visible part of every card sharp rather than fading its text. */
.reviews-slider::before,
.reviews-slider::after { display: none !important; }
.reviews-slider { background: #fff; }


/* Proper mobile drawer: detached from sticky/backdrop-filter header by JS. */
.mobile-nav-backdrop,.drawer-contact{display:none}
@media (max-width:1020px) {
  body.menu-is-open{overflow:hidden;overscroll-behavior:none}
  .mobile-nav-backdrop{
    display:block!important;position:fixed!important;inset:0!important;
    width:100vw!important;height:100dvh!important;
    z-index:2000!important;background:rgba(16,20,23,.56);
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .3s ease,visibility .3s ease;
  }
  body.menu-is-open .mobile-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}
  #primary-nav,#primary-nav.open{
    display:flex!important;position:fixed!important;
    inset:0 0 0 auto!important;top:0!important;right:0!important;left:auto!important;bottom:0!important;
    width:min(392px,calc(100vw - 24px))!important;max-width:100vw!important;
    height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    z-index:2001!important;box-sizing:border-box!important;
    margin:0!important;padding:0 22px 25px!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;
    background:#fff!important;color:var(--ink)!important;
    border:0!important;border-radius:18px 0 0 18px!important;
    box-shadow:-16px 0 48px rgba(0,0,0,.16)!important;
    flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    gap:3px!important;white-space:normal!important;
    transform:translate3d(102%,0,0)!important;
    visibility:hidden!important;pointer-events:none!important;
    opacity:1!important;animation:none!important;
    transition:transform .34s cubic-bezier(.22,.72,.2,1),visibility .34s ease!important;
  }
  #primary-nav.open{transform:translate3d(0,0,0)!important;visibility:visible!important;pointer-events:auto!important}
  #primary-nav .mobile-nav-heading{
    display:flex!important;flex-shrink:0;justify-content:space-between;align-items:center;
    margin:0 -22px 14px!important;padding:27px 22px 21px!important;
    min-height:104px!important;max-height:none!important;
    border-bottom:1px solid #e0ebe3!important;border-radius:18px 0 0 0;
    background:#f9fcfa!important;
  }
  .drawer-title{display:flex;flex-direction:column;gap:7px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
  .drawer-kicker{color:var(--acc);font-size:.65rem;font-weight:800;letter-spacing:.18em;line-height:1}
  .drawer-title strong{font-size:1.08rem;letter-spacing:-.02em;color:var(--ink);line-height:1.25}
  #primary-nav .mobile-nav-close{
    width:42px!important;height:42px!important;flex:0 0 42px;
    display:grid!important;place-items:center!important;
    padding:0!important;border:1px solid #dce7df!important;border-radius:11px!important;
    background:#fff!important;color:var(--ink)!important;cursor:pointer;
  }
  #primary-nav .mobile-nav-close:hover{background:#edf8f1!important;border-color:#b6dac3!important}
  #primary-nav>a:not(.mobile-nav-cta),#primary-nav .nav-parent{
    background:#fff!important;border:1px solid transparent!important;
    border-radius:10px!important;min-height:55px!important;flex-shrink:0;
  }
  #primary-nav>a:not(.mobile-nav-cta){
    display:flex!important;align-items:center!important;
    padding:14px 14px!important;margin:0!important;
    font-size:.94rem!important;font-weight:680!important;text-decoration:none!important;
    color:#30363a!important;
  }
  #primary-nav>a:not(.mobile-nav-cta).on,#primary-nav>a:not(.mobile-nav-cta):hover{
    color:var(--acc2)!important;background:#f3faf5!important;border-color:#e1f1e7!important;
  }
  #primary-nav .dd{width:100%!important;flex:none!important;position:relative!important}
  #primary-nav .nav-parent{display:flex!important;align-items:stretch!important}
  #primary-nav .nav-parent>a{
    display:flex!important;align-items:center!important;flex:1!important;
    min-width:0!important;padding:13px 14px!important;
    font-size:.94rem!important;font-weight:680!important;text-decoration:none!important;color:#30363a!important;
  }
  #primary-nav .submenu-toggle{
    display:grid!important;place-items:center!important;align-self:stretch!important;
    flex:0 0 47px!important;width:47px!important;
    padding:0!important;margin:0!important;
    background:#fff!important;border:0!important;border-left:1px solid #e4efe7!important;
    border-radius:0 10px 10px 0!important;color:var(--acc)!important;cursor:pointer;
  }
  #primary-nav .submenu-toggle svg{transition:transform .2s ease;display:block}
  #primary-nav .submenu-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
  #primary-nav .dd.submenu-open>.nav-parent{background:#f6faf7!important;border-color:#e1f1e7!important}
  #primary-nav .dd>.submenu{display:none!important;position:static!important;width:100%!important;max-width:100%!important;
    margin:6px 0 13px!important;padding:8px!important;border:1px solid #e4efe7!important;
    background:#f8fcf9!important;border-radius:11px!important;box-shadow:none!important;animation:none!important;}
  #primary-nav .dd.submenu-open>.submenu{display:block!important}
  #primary-nav .dd>.submenu a{display:flex!important;align-items:center!important;min-height:44px!important;
    margin:0!important;padding:10px 11px!important;font-size:.87rem!important;font-weight:550!important;
    line-height:1.45!important;color:#4a4e51!important;white-space:normal!important;border-radius:8px!important;}
  #primary-nav .dd>.submenu a:hover,#primary-nav .dd>.submenu a.on{background:#e7f4eb!important;color:var(--acc2)!important}
  #primary-nav .dd>.submenu a::before{background:var(--acc)!important;width:5px!important;height:5px!important;flex:0 0 5px!important;margin-right:10px!important}
  #primary-nav .mobile-nav-cta{
    display:flex!important;align-items:center!important;justify-content:center!important;
    flex-shrink:0;gap:10px!important;min-height:53px!important;
    padding:14px!important;margin:15px 0 0!important;
    font-size:.9rem!important;font-weight:750!important;
    text-align:center!important;border:1px solid var(--acc)!important;border-radius:9px!important;
    color:#fff!important;background:var(--acc)!important;box-shadow:none!important;
  }
  #primary-nav .mobile-nav-cta:hover{background:var(--acc2)!important;transform:none!important}
  #primary-nav .mobile-nav-cta svg{width:20px;height:20px;flex:none;stroke:#fff}
  #primary-nav .drawer-contact{
    display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important;
    text-align:center!important;margin:26px 0 0!important;padding:20px 4px calc(10px + env(safe-area-inset-bottom))!important;
    border-top:1px solid #e1f1e7!important;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    flex-shrink:0;
  }
  #primary-nav .drawer-contact span{font-size:.79rem;color:var(--mut);line-height:1.35}
  #primary-nav .drawer-contact a{display:inline!important;font-size:1.1rem;font-weight:770!important;color:var(--ink)!important;
    line-height:1.4;letter-spacing:0!important;text-decoration:none!important;padding:0!important;margin:0!important}
  .mobile-menu-button{z-index:1}
}
@media(max-width:380px){
  #primary-nav,#primary-nav.open{width:calc(100vw - 16px)!important;padding-inline:17px!important}
  #primary-nav .mobile-nav-heading{margin-inline:-17px!important;padding-inline:17px!important}
}
@media(prefers-reduced-motion:reduce){
  #primary-nav,#primary-nav.open,.mobile-nav-backdrop{transition:none!important}
}

/* Drawer branding — replace text heading with the genuine company logo. */
@media(max-width:1020px){
  #primary-nav .mobile-nav-heading .drawer-brand{
    display:flex!important;align-items:center!important;justify-content:flex-start!important;
    flex:1 1 auto!important;min-width:0!important;max-width:210px!important;
    margin:0!important;padding:0!important;border:0!important;
    background:transparent!important;box-shadow:none!important;line-height:0!important;
    text-decoration:none!important;
  }
  #primary-nav .mobile-nav-heading .drawer-brand img{
    display:block!important;width:100%!important;max-width:196px!important;
    height:auto!important;max-height:56px!important;object-fit:contain!important;object-position:left center!important;
  }
  #primary-nav .mobile-nav-heading{gap:14px!important}
  #primary-nav .mobile-nav-close{margin-left:auto!important}
}
@media(max-width:380px){
  #primary-nav .mobile-nav-heading .drawer-brand{max-width:185px!important}
  #primary-nav .mobile-nav-heading .drawer-brand img{max-width:180px!important}
}
/* Uploaded images/video preserve the original page dimensions and responsive layout. */
.cms-media-filled{background:transparent!important;border:0!important;padding:0!important;overflow:hidden!important}
.cms-media-filled>img,.cms-media-filled>video{display:block;width:100%;height:100%;max-width:100%;min-height:inherit;object-fit:cover;border-radius:8px}

/* CMS controlled media replaces the original dashed media placeholder only when selected */
.ph.cms-media-box{display:block!important;position:relative;background:none!important;border:0!important;min-height:0!important;padding:0!important;border-radius:8px;overflow:hidden!important;text-align:initial;color:inherit}
.ph.cms-media-box img,.ph.cms-media-box video,.ph.cms-media-box iframe{display:block;width:100%;height:100%;min-height:0;max-width:none;object-fit:cover;border-radius:inherit}
.ph.cms-media-box iframe{border:0;aspect-ratio:16/9}
.cms-builder-widget{position:relative;max-width:100%;overflow:visible}
.cms-builder-widget.s{padding-block:55px}
.cms-builder-widget .w{max-width:1420px;margin:0 auto;padding-inline:24px}
.cms-builder-widget .cms-widget-card{border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:26px}
.cms-builder-widget .cms-widget-video iframe{display:block;width:100%;min-height:320px;border:0;border-radius:10px}
.cms-builder-widget .cms-widget-table{width:100%;border-collapse:collapse}
.cms-builder-widget .cms-widget-table th,.cms-builder-widget .cms-widget-table td{border-bottom:1px solid var(--line);padding:13px 16px;text-align:left}
.cms-builder-widget .cms-widget-gallery,.cms-builder-widget .cms-widget-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
@media(max-width:700px){.cms-builder-widget .cms-widget-gallery,.cms-builder-widget .cms-widget-columns{grid-template-columns:1fr}.cms-builder-widget .w{padding-inline:18px}}
/* Real owner reviews: dynamic cards, optional avatars and accessible layout. */
.wm-reviews-empty{display:none!important}
.reviews-slider{min-width:0;overflow:hidden}
.reviews-track{align-items:stretch}
.reviews-track .review-slide{gap:14px;justify-content:space-between;white-space:normal;box-sizing:border-box;min-height:230px;border-left:3px solid var(--acc);transform:none!important;box-shadow:none!important;transition:none!important}
.reviews-track .review-slide:hover,.reviews-track .review-slide:focus-within{transform:none!important;box-shadow:none!important;border-left-color:var(--acc)!important}
.reviews-track .review-quotation{font:normal 1.1rem/1.65 Georgia,'Times New Roman',serif;margin:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.review-bottom{display:flex;gap:12px;align-items:center;margin-top:auto;min-width:0}
.review-avatar{flex:0 0 48px;display:block;width:48px;height:48px;border:1px solid #dedcd8;border-radius:50%;object-fit:cover;background:#eee}
.review-avatar-fallback{display:grid;place-items:center;background:#eaf7ef;color:#176337;font:800 1.05rem/1 'Segoe UI',Arial,sans-serif;border-color:#bfe5cc}
.review-attribution{display:flex;flex-direction:column;gap:4px;min-width:0;font:normal .79rem/1.45 'Segoe UI',Arial,sans-serif}
.review-attribution strong{color:#202428;font-weight:700;line-height:1.3}
.review-attribution span{color:#61676e;overflow-wrap:anywhere}
.review-attribution a{display:inline-flex;align-items:center;gap:3px;color:var(--acc);text-decoration:underline;text-underline-offset:2px;width:max-content;max-width:100%;font-weight:650}
.review-attribution a .material-symbols-outlined{font-size:13px;line-height:1;color:inherit}
@media(max-width:600px){.reviews-track .review-slide{min-height:210px}.review-avatar{width:42px;height:42px;flex-basis:42px}.reviews-track .review-quotation{font-size:1.02rem}}


/* 2026-10-15 — Match the site header to the original footer background.
   The drawer receives its dark palette in the final mobile override. */
header {
  background: #14171a;
  color: #f4f5f6;
  border-bottom: 1px solid #333a40;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
header.is-scrolled {
  background: #14171a;
  box-shadow: 0 8px 26px rgba(0, 0, 0, .18);
}
header .tel { color: #b9bfc5; }
header .tel b { color: #fff; }
header .logo { display: inline-flex; align-items: center; }
header .logo img { object-fit: contain; }

@media (min-width: 1021px) {
  header #primary-nav > a:not(.mobile-nav-cta),
  header #primary-nav .dd > .nav-parent > a {
    color: #e4e6e8;
  }
  header #primary-nav > a:not(.mobile-nav-cta):hover,
  header #primary-nav > a:not(.mobile-nav-cta).on,
  header #primary-nav .dd > .nav-parent > a:hover,
  header #primary-nav .dd > .nav-parent > a.on,
  header #primary-nav .dd:focus-within > .nav-parent > a {
    color: #9ae2b3;
  }
  header #primary-nav .submenu-toggle { color: #e4e6e8; }
  header #primary-nav .dd > .submenu {
    background: #fff;
    border-color: #d9d9d6;
  }
  header #primary-nav .dd > .submenu a { color: #1c2024; }
  header #primary-nav .dd > .submenu a:hover,
  header #primary-nav .dd > .submenu a:focus-visible {
    background: #eaf7ef;
    color: #248a4a;
  }
}

@media (max-width: 1020px) {
  header .mobile-menu-button,
  header .mobile-menu-button[aria-expanded="true"] {
    background: #24282c;
    color: #fff;
    border-color: #454b51;
  }
  header .mobile-menu-button:hover,
  header .mobile-menu-button:focus-visible {
    background: #30353a;
    color: #fff;
    border-color: #737b83;
  }
  /* The off-canvas panel stays light and keeps its original menu styling. */
  #primary-nav, #primary-nav.open { color: #1c2024; }
}


/* 2026-10-15 — white header identity & true centre-aligned desktop navigation. */
header .logo{display:inline-flex;align-items:center;justify-self:start;min-width:0;}
header .logo img{display:block;max-width:100%;height:auto;max-height:58px;width:auto;object-fit:contain;}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,1.5vw,25px);min-width:0;}
.header-actions .tel{flex-shrink:0;}
.header-actions > .btn{flex-shrink:0;}
@media (min-width:1021px){
  header .w{display:grid;grid-template-columns:minmax(0,1fr) max-content minmax(0,1fr);gap:clamp(10px,1.5vw,24px);align-items:center;}
  header #primary-nav{grid-column:2;display:flex;align-items:center;justify-content:center;margin:0;gap:clamp(11px,1.5vw,26px);white-space:nowrap;}
  header .header-actions{grid-column:3;justify-self:stretch;}
  header .logo{grid-column:1;}
}
@media (min-width:1021px) and (max-width:1250px){
  header #primary-nav{font-size:.82rem;gap:clamp(10px,1.2vw,16px);}
  header .header-actions .tel{display:none;}
  header .header-actions > .btn{padding-inline:12px;}
  header .logo img{max-height:49px;}
}
@media (max-width:1020px){
  header .w{display:flex;align-items:center;justify-content:space-between;}
  header .header-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;}
  header .header-actions > .tel,header .header-actions > .btn{display:none!important;}
  header .logo img{max-height:56px;}
}
@media (max-width:600px){
  header .logo img{max-height:52px;max-width:206px;}
}

/* 2026-10-15: cohesive, accessible charcoal off-canvas drawer.
   All styles are limited to mobile to preserve centred desktop navigation. */
@media (max-width: 1020px) {
  #primary-nav, #primary-nav.open {
    background: #1c2024 !important;
    color: #f3f4f5 !important;
    border-left: 1px solid #343a41 !important;
    border-radius: 16px 0 0 16px !important;
    box-shadow: -14px 0 55px rgba(0,0,0,.36) !important;
  }
  #primary-nav .mobile-nav-heading {
    background: #14171a !important;
    border-bottom: 1px solid #343a41 !important;
    border-radius: 16px 0 0 0 !important;
  }
  #primary-nav .mobile-nav-heading .drawer-brand img {object-fit:contain!important}
  #primary-nav .mobile-nav-close {
    background: #252a2f !important;
    color: #f7f7f7 !important;
    border-color: #48515a !important;
  }
  #primary-nav .mobile-nav-close:hover,
  #primary-nav .mobile-nav-close:focus-visible {
    background: #343b42 !important;
    color: #fff !important;
    border-color: #9ae2b3 !important;
  }
  #primary-nav > a:not(.mobile-nav-cta),
  #primary-nav .nav-parent {
    background: #242a30 !important;
    color: #f2f3f4 !important;
    border-color: #333b42 !important;
  }
  #primary-nav > a:not(.mobile-nav-cta),
  #primary-nav .nav-parent > a {
    color: #f3f4f5 !important;
  }
  #primary-nav > a:not(.mobile-nav-cta):hover,
  #primary-nav > a:not(.mobile-nav-cta).on,
  #primary-nav .nav-parent:hover,
  #primary-nav .dd.submenu-open > .nav-parent {
    background: #25372d !important;
    border-color: #248a4a !important;
    color: #bfe5cc !important;
  }
  #primary-nav .nav-parent > a:hover,
  #primary-nav .nav-parent > a.on,
  #primary-nav .dd.submenu-open .nav-parent > a {color:#bfe5cc!important}
  #primary-nav .submenu-toggle,
  #primary-nav .submenu-toggle[aria-expanded="true"] {
    background: #2a3035 !important;
    color: #9ae2b3 !important;
    border-left: 1px solid #454b50 !important;
  }
  #primary-nav .dd > .submenu {
    background: #24292e !important;
    border-color: #3c454c !important;
  }
  #primary-nav .dd > .submenu a {color: #dce0e3 !important}
  #primary-nav .dd > .submenu a:hover,
  #primary-nav .dd > .submenu a.on {
    background: #22342a !important;
    color: #bfe5cc !important;
  }
  #primary-nav .dd > .submenu a::before {background:#a5e0b8!important}
  #primary-nav .mobile-nav-cta {
    background: #176337 !important;
    border-color: #176337 !important;
    color: #fff !important;
  }
  #primary-nav .mobile-nav-cta:hover,
  #primary-nav .mobile-nav-cta:focus-visible {background:#248a4a!important}
  #primary-nav .drawer-contact {border-top-color:#3c444b!important}
  #primary-nav .drawer-contact span {color:#adb6bc!important}
  #primary-nav .drawer-contact a {color:#fff!important}
  #primary-nav .drawer-contact a:hover {color:#9ae2b3!important}
  #primary-nav a:focus-visible,
  #primary-nav button:focus-visible {outline:2px solid #9ae2b3!important;outline-offset:3px}
  .mobile-nav-backdrop {background:rgba(8,10,12,.68)!important}
}


/* 2026-10-15 — clean unboxed mobile navigation, functional nested submenu.
   IMPORTANT: .dd inherits display:flex on desktop; on mobile it MUST be a block
   or the expanded submenu renders alongside the row and appears missing. */
@media (max-width:1020px) {
  #primary-nav .dd {
    display:block!important;
    flex:0 0 auto!important;
    align-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  #primary-nav > a:not(.mobile-nav-cta),
  #primary-nav .dd > .nav-parent {
    display:flex!important;
    width:100%!important;
    min-height:58px!important;
    align-items:center!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid #343a40!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
    color:#eef0f2!important;
  }
  #primary-nav > a:not(.mobile-nav-cta) {
    padding:16px 12px!important;
    font-weight:650!important;
    line-height:1.3!important;
  }
  #primary-nav .dd > .nav-parent {
    padding:0!important;
    justify-content:space-between!important;
    position:relative!important;
    /* Reset inherited absolute dropdown offsets from legacy .dd > div. */
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
  }
  #primary-nav .dd > .nav-parent > a {
    display:flex!important;
    min-width:0!important;
    flex:1 1 auto!important;
    align-items:center!important;
    min-height:58px!important;
    padding:16px 12px!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#eef0f2!important;
    font-weight:650!important;
    line-height:1.3!important;
  }
  #primary-nav > a:not(.mobile-nav-cta):hover,
  #primary-nav > a:not(.mobile-nav-cta).on,
  #primary-nav .dd > .nav-parent:hover,
  #primary-nav .dd.submenu-open > .nav-parent,
  #primary-nav .nav-parent > a:hover,
  #primary-nav .nav-parent > a.on,
  #primary-nav .dd.submenu-open .nav-parent > a {
    background:transparent!important;
    border-color:#343a40!important;
    color:#9ae2b3!important;
  }
  #primary-nav .submenu-toggle,
  #primary-nav .submenu-toggle[aria-expanded=true] {
    display:flex!important;
    align-self:center!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:46px!important;
    min-height:46px!important;
    margin:0 3px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#9ae2b3!important;
    cursor:pointer!important;
    position:relative!important;
    z-index:2!important;
    touch-action:manipulation;
  }
  #primary-nav .submenu-toggle:hover,
  #primary-nav .submenu-toggle:focus-visible {
    background:transparent!important;
    color:#fff!important;
  }
  #primary-nav .submenu-toggle svg {
    display:block!important;
    width:20px!important;
    height:20px!important;
    pointer-events:none;
    transition:transform .22s ease!important;
  }
  #primary-nav .submenu-toggle[aria-expanded=true] svg {transform:rotate(180deg)!important}
  #primary-nav .dd > .submenu {
    display:none!important;
    position:static!important;
    width:calc(100% - 12px)!important;
    max-width:none!important;
    min-width:0!important;
    margin:4px 0 12px 12px!important;
    padding:5px 0 5px 11px!important;
    border:0!important;
    border-left:2px solid #176337!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
    opacity:1!important;
    transform:none!important;
  }
  #primary-nav .dd.submenu-open > .submenu {
    display:block!important;
    animation:submenuReveal .18s ease-out!important;
  }
  #primary-nav .dd > .submenu a {
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:42px!important;
    margin:0!important;
    padding:10px 10px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#c6cdd1!important;
    font-size:.86rem!important;
    font-weight:500!important;
    line-height:1.5!important;
    white-space:normal!important;
  }
  #primary-nav .dd > .submenu a::before {display:none!important}
  #primary-nav .dd > .submenu a:hover,
  #primary-nav .dd > .submenu a.on,
  #primary-nav .dd > .submenu a:focus-visible {
    background:transparent!important;
    color:#9ae2b3!important;
  }
  #primary-nav .mobile-nav-cta {
    /* The enquiry action intentionally remains a button. */
    margin-top:20px!important;
  }
}
@keyframes submenuReveal {
  from {opacity:.4;transform:translateY(-5px)}
  to {opacity:1;transform:translateY(0)}
}
@media(prefers-reduced-motion:reduce) {
  #primary-nav .dd.submenu-open > .submenu {animation:none!important}
}


/* Native submenu disclosure: keyboard, touch, and mouse work without JS.
   Override older JavaScript-only .submenu-open rules while preserving desktop hover. */
#primary-nav details.dd { margin:0; padding:0; border:0; border-radius:0; background:transparent; }
#primary-nav details.dd > summary.nav-parent {
  display:flex; align-items:center; justify-content:space-between;
  list-style:none; cursor:pointer; user-select:none; -webkit-user-select:none;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
#primary-nav details.dd > summary.nav-parent::-webkit-details-marker { display:none; }
#primary-nav details.dd > summary.nav-parent::marker { content:""; }
#primary-nav details.dd > summary.nav-parent::after { content:none!important; display:none!important; }
#primary-nav details.dd > summary.nav-parent > .nav-parent-label {
  flex:1; min-width:0; line-height:1.35;
}
#primary-nav details.dd > summary .submenu-chevron {
  width:19px; height:19px; flex:none; pointer-events:none;
  transition:transform .2s ease;
}
#primary-nav details.dd[open] > summary .submenu-chevron { transform:rotate(180deg); }
#primary-nav details.dd > summary:focus-visible { outline:2px solid #9ae2b3; outline-offset:3px; }
@media(min-width:1021px) {
  #primary-nav details.dd { position:relative; align-self:stretch; display:flex; align-items:center; }
  #primary-nav details.dd > summary.nav-parent { color:#edf0f2; padding:10px 0; gap:7px; font-size:inherit; font-weight:650; white-space:nowrap; }
  #primary-nav details.dd > summary .submenu-chevron { color:#b6c1c8; width:15px; height:15px; }
  #primary-nav details.dd > .submenu { display:none; position:absolute; top:calc(100% - 9px); left:-18px; z-index:110; }
  #primary-nav details.dd:hover > .submenu,
  #primary-nav details.dd:focus-within > .submenu,
  #primary-nav details.dd[open] > .submenu {display:block;}
  #primary-nav details.dd[open] > summary.nav-parent { color:#9ae2b3; }
}
@media(max-width:1020px) {
  #primary-nav details.dd { display:block!important; width:100%!important; flex:none!important; }
  #primary-nav details.dd > summary.nav-parent {
    display:flex!important; box-sizing:border-box!important;
    width:100%!important; position:static!important;
    top:auto!important; bottom:auto!important; left:auto!important; right:auto!important;
    min-height:58px!important; margin:0!important; padding:15px 12px!important;
    border:0!important; border-bottom:1px solid #343a40!important;
    border-radius:0!important; box-shadow:none!important;
    background:transparent!important; color:#eef0f2!important;
    font-size:.94rem!important; font-weight:650!important;
  }
  #primary-nav details.dd > summary .submenu-chevron {
    margin-left:auto; width:20px; height:20px; color:#9ae2b3;
  }
  #primary-nav details.dd[open] > summary.nav-parent {color:#9ae2b3!important;}
  #primary-nav details.dd > .submenu {display:none!important; position:static!important;}
  #primary-nav details.dd[open] > .submenu {display:block!important;}
  #primary-nav details.dd .submenu a {display:flex!important; min-height:43px;}
}
@media(prefers-reduced-motion:reduce) {
  #primary-nav details.dd > summary .submenu-chevron {transition:none!important;}
}


/* Public AJAX form submit state and offline-friendly status fallback. */
form.is-submitting button[type="submit"],form.is-submitting button:not([type]),form.is-submitting input[type="submit"] {
  cursor:wait; opacity:.78;
}
form.is-submitting button[type="submit"]::after,form.is-submitting button:not([type])::after {
  content:"";display:inline-block;width:15px;height:15px;margin-left:10px;
  border:2px solid currentColor;border-right-color:transparent;border-radius:50%;
  vertical-align:-3px;animation:public-form-spin .7s linear infinite;
}
@keyframes public-form-spin { to { transform:rotate(360deg); } }
.public-form-status {
  position:fixed;z-index:100005;bottom:24px;left:50%;transform:translateX(-50%);
  width:min(92vw,480px);padding:18px 22px;border-radius:10px;
  background:#fff;color:#842929;border:1px solid #e6b6b6;
  font:500 .94rem/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  box-shadow:0 10px 38px #0002;
}
.public-form-status.is-success { color:#285c40;border-color:#8dc5a4; }
@media(max-width:860px) { .public-form-status { bottom:94px; } }
@media(prefers-reduced-motion:reduce) { form.is-submitting button::after { animation:none; } }


/* 2026-10-15: primary #176337, hover #248a4a; desktop header navigation refinement.
   The underlines sit at the bottom edge of the CHARCOAL header, not under the text.
   No mobile drawer rules are modified by this block. */
@media (min-width:1021px) {
  header .w { position:relative; }
  header #primary-nav {
    align-self:stretch;
    height:auto;
    align-items:stretch;
    justify-content:center;
    overflow:visible;
  }
  header #primary-nav > a:not(.mobile-nav-cta),
  header #primary-nav > details.dd {
    position:relative;
    align-self:stretch;
    height:auto;
    margin:0;
    border:0;
  }
  header #primary-nav > a:not(.mobile-nav-cta) {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 3px;
    color:#eef1f0;
    text-decoration:none;
    transition:color .2s ease;
    border:0;
    border-radius:0;
    background:transparent!important;
    box-shadow:none;
  }
  header #primary-nav > details.dd {
    display:flex;
    align-items:stretch;
    padding:0;
  }
  header #primary-nav details.dd > summary.nav-parent {
    display:flex;
    height:100%;
    align-items:center;
    justify-content:center;
    padding:0 3px;
    border:0;
    background:transparent!important;
    border-radius:0;
    color:#eef1f0;
    gap:8px;
    transition:color .2s ease;
  }
  header #primary-nav details.dd > summary.nav-parent .submenu-chevron {
    width:15px;
    height:15px;
    color:#cbd7d1;
    transition:transform .22s ease,color .22s ease;
  }
  header #primary-nav > a:not(.mobile-nav-cta)::after,
  header #primary-nav > details.dd::after {
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    top:auto;
    width:auto;
    height:2px;
    border-radius:2px 2px 0 0;
    background:#568d6b;
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .23s ease;
    pointer-events:none;
  }
  header #primary-nav > a:not(.mobile-nav-cta):hover::after,
  header #primary-nav > a:not(.mobile-nav-cta):focus-visible::after,
  header #primary-nav > a:not(.mobile-nav-cta).on::after,
  header #primary-nav > details.dd:hover::after,
  header #primary-nav > details.dd:focus-within::after,
  header #primary-nav > details.dd[open]::after,
  header #primary-nav > details.dd.nav-current::after,
  header #primary-nav > details.dd:has(>.submenu a.on)::after {
    transform:scaleX(1);
  }
  header #primary-nav > a:not(.mobile-nav-cta):hover,
  header #primary-nav > a:not(.mobile-nav-cta):focus-visible,
  header #primary-nav > a:not(.mobile-nav-cta).on,
  header #primary-nav details.dd:hover > summary.nav-parent,
  header #primary-nav details.dd[open] > summary.nav-parent,
  header #primary-nav details.dd.nav-current > summary.nav-parent,
  header #primary-nav details.dd:focus-within > summary.nav-parent {
    color:#e2ece6;
  }
  header #primary-nav > details.dd:hover .submenu-chevron,
  header #primary-nav > details.dd[open] .submenu-chevron { color:#d6e3db; }
  /* Dropdown sits flush with the lower edge of the desktop header. */
  header #primary-nav details.dd,
  header #primary-nav details.dd[open],
  header #primary-nav details.dd > summary.nav-parent,
  header #primary-nav details.dd:hover > summary.nav-parent,
  header #primary-nav details.dd[open] > summary.nav-parent { background:transparent!important; box-shadow:none!important; }
  header #primary-nav details.dd > .submenu {
    display:none;
    position:absolute;
    z-index:250;
    top:calc(100% + 11px);
    left:-12px;
    right:auto;
    width:340px;
    min-width:300px;
    max-width:calc(100vw - 32px);
    padding:10px;
    transform:none;
    border:1px solid #dce8e1;
    border-top:1px solid #dce8e1;
    border-radius:0 0 12px 12px;
    background:#fff;
    color:#26332b;
    box-shadow:0 16px 38px rgba(0,0,0,.16);
    animation:wmDropdownIn .17s ease-out both;
  }
  header #primary-nav details.dd > .submenu::before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-13px;
    height:13px;
    background:transparent;
  }
  header #primary-nav details.dd:hover > .submenu,
  header #primary-nav details.dd:focus-within > .submenu,
  header #primary-nav details.dd[open] > .submenu {display:block;}
  header #primary-nav details.dd > .submenu > a {
    display:flex;
    align-items:center;
    gap:12px;
    width:100%;
    min-height:47px;
    margin:0;
    padding:11px 13px;
    border:0;
    border-radius:7px;
    white-space:normal;
    font-size:.87rem;
    line-height:1.5;
    font-weight:600;
    color:#2e3532;
    text-decoration:none;
    transition:background-color .16s ease,color .16s ease,padding-left .16s ease;
  }
  header #primary-nav details.dd > .submenu > a::before {
    content:"";
    width:6px;
    height:6px;
    flex:0 0 6px;
    border-radius:50%;
    background:#b2d8bf;
    transition:background .16s ease;
  }
  header #primary-nav details.dd > .submenu > a:hover,
  header #primary-nav details.dd > .submenu > a:focus-visible,
  header #primary-nav details.dd > .submenu > a.on {
    color:#176337;
    background:transparent;
    padding-left:16px;
  }
  header #primary-nav details.dd > .submenu > a.on { font-weight:650; }
  header #primary-nav details.dd > .submenu > a:hover::before,
  header #primary-nav details.dd > .submenu > a:focus-visible::before,
  header #primary-nav details.dd > .submenu > a.on::before {background:#176337;}
  header #primary-nav > a:focus-visible,
  header #primary-nav details.dd > summary.nav-parent:focus-visible,
  header #primary-nav details.dd > .submenu > a:focus-visible {outline:2px solid #9ae2b3;outline-offset:3px;}
}
@keyframes wmDropdownIn { from {opacity:0;translate:0 -5px;} to {opacity:1;translate:0 0;} }
@media (prefers-reduced-motion:reduce) {
  header #primary-nav > a:not(.mobile-nav-cta)::after,
  header #primary-nav > details.dd::after {transition:none!important;}
  header #primary-nav details.dd > .submenu {animation:none!important;}
}
