
:root {
  --brand:#309a95; --ink:#212121; --deep:#005651; --paper:#fff;
  --mist:#edf4f2; --soft:#f5f7f5; --line:#d7dfdb; --muted:#59645f;
  --gutter:clamp(22px,5vw,80px); --max:1400px;
  --font:"Raleway",Helvetica,Arial,sans-serif;
  --heading:"Libre Baskerville",Georgia,serif;
}
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:20px}
body {margin:0;color:var(--ink);background:var(--paper);font:17px/1.75 var(--font);-webkit-font-smoothing:antialiased}
body.menu-open {overflow:hidden}
a {color:inherit;text-decoration:none;text-underline-offset:5px}
button,input,select,textarea {font:inherit}
small {font-size:1rem}
button {cursor:pointer;border:0}
button:disabled {cursor:default;opacity:.4}
img {display:block;max-width:100%;height:auto}
svg {flex-shrink:0;vertical-align:middle}
figure,p {margin:0}
p+p {margin-top:1em}
h1,h2,h3,h4 {margin:0;font-family:var(--heading);font-weight:400;line-height:1.3;letter-spacing:-.035em;overflow-wrap:break-word}
h1 {font-size:clamp(38px,4.1vw,66px)}
h2 {font-size:clamp(32px,3vw,46px)}
h3 {font-size:26px}
ul,ol {margin:0;padding:0}
fieldset {border:0;padding:0;margin:0;min-width:0}
legend {padding:0}
hr {border:0;border-top:1px solid var(--line);margin:32px 0}
[hidden] {display:none!important}
::selection {color:white;background:var(--deep)}
:focus-visible {outline:3px solid var(--brand);outline-offset:5px}
input:focus-visible,select:focus-visible {outline-offset:2px}
.wrap {max-width:calc(var(--max) + var(--gutter)*2);margin-inline:auto;padding-inline:var(--gutter)}
.section {padding-block:clamp(72px,8vw,120px)}
.eyebrow {font-size:1rem;line-height:1.6;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--deep);margin-bottom:23px}
.button {display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:56px;padding:16px 23px;border:1px solid transparent;border-radius:4px;font-size:1rem;font-weight:700;line-height:1.5;text-align:center;transition:background .2s,color .2s,transform .2s}
.button:hover {transform:translateY(-2px)}
.button--brand {background:#107873;color:#fff}
.button--brand:hover {background:#247c78}
.button--dark {background:var(--deep);color:#fff}
.button--dark:hover {background:#003e3a}
.button--ghost {border-color:#ffffff7a;background:transparent;color:#fff}
.button--ghost:hover {background:#ffffff18;border-color:white}
.button--light {background:#fff;color:var(--deep)}
.button--small {min-height:48px;padding:12px 18px}
.text-link {display:inline-flex;align-items:center;gap:20px;font-size:1rem;font-weight:700;line-height:1.6;padding-bottom:6px;border-bottom:1px solid currentColor;color:var(--deep)}
.text-link svg {transition:transform .2s}
.text-link:hover svg {transform:translateX(4px)}
.section-heading {display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:48px}
.section-heading h2 {max-width:730px}
.section-heading>p {max-width:390px;color:var(--muted)}
.section-heading>.text-link {flex-shrink:0;margin-bottom:5px}
.screen-reader-text,.skip-link:not(:focus) {position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus {position:fixed;z-index:99999;top:15px;left:15px;padding:12px 20px;color:white;background:var(--deep)}

/* The dark header and wide menu follow the supplied Röhls composition. */
.site-header {position:relative;z-index:100;background:var(--ink);color:#fff;border-bottom:1px solid #ffffff1f}
.menu-backdrop{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.28);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}
body:has(.nav-disclosure[open]) .menu-backdrop,body.menu-open .menu-backdrop{opacity:1;visibility:visible;pointer-events:auto}
@media(prefers-reduced-motion:reduce){.menu-backdrop{transition:none}}
@media print{.menu-backdrop{display:none!important}}
.header-inner {display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:32px}
.brand {display:block;flex-shrink:0;width:151px}
.brand img {width:151px;height:92px;object-fit:contain}
.custom-logo-link img {width:auto;max-width:190px;max-height:92px}
.site-header .brand--header {width:268px}
.site-header .brand--header img {display:block;width:100%;height:auto}
.main-navigation {display:flex;align-items:center;gap:40px}
.nav-links {display:flex;gap:32px;align-items:center;list-style:none;font-size:1rem}
.nav-links>li>a,.nav-disclosure>summary {display:flex;align-items:center;gap:10px;padding-block:26px;font-weight:600;cursor:pointer;white-space:nowrap}
.nav-links>li>a:hover,.nav-disclosure[open]>summary {color:#a7d8d4}
summary {list-style:none}
summary::-webkit-details-marker {display:none}
.chevron {width:7px;height:7px;border-bottom:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.nav-disclosure[open]>summary .chevron {transform:rotate(225deg);margin-top:3px}
.mega-menu {position:absolute;top:100%;left:0;right:0;background:#fff;color:var(--ink);border-bottom:1px solid var(--line);box-shadow:0 16px 30px #1a302314;padding:40px var(--gutter);display:grid;grid-template-columns:minmax(230px,.8fr) 2fr;gap:45px;z-index:105}
.mega-intro {background:var(--mist);padding:30px;border-radius:4px}
.mega-intro .eyebrow {font-size:1rem;margin-bottom:26px}
.mega-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;font-family:var(--heading);font-size:29px;line-height:1.4}
.mega-intro p {font-size:1rem;color:var(--muted);margin-top:22px}
.submenu-links {display:grid;grid-template-columns:1fr 1fr;gap:0 28px;list-style:none;align-content:start}
.submenu-links a {display:block;padding:17px 8px;border-bottom:1px solid var(--line)}
.submenu-links a:hover {color:var(--deep);background:var(--soft)}
.submenu-links a span {font-size:1rem;font-weight:700}
.submenu-links small {display:block;color:var(--muted);font-size:1rem;line-height:1.6;margin-top:5px}
.submenu-links .submenu-links {display:block;padding-left:15px}
.menu-toggle {display:none}

.hero {position:relative;isolation:isolate;background:var(--ink);color:#fff}
.hero-visual {position:absolute;inset:0;z-index:-2}
.hero-visual img {width:100%;height:100%;object-fit:cover;object-position:center 55%}
.hero::before {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(25,35,32,.94) 0%,rgba(25,35,32,.79) 35%,rgba(25,35,32,.3) 66%,rgba(25,35,32,.08) 100%),linear-gradient(0deg,rgba(25,35,32,.65),transparent 40%)}
.hero-layout {display:flex;align-items:center;min-height:650px}
.hero-copy {max-width:790px;padding-block:75px 82px}
.hero .eyebrow {color:#e2eeeb;font-size:1rem}
.hero h1 {line-height:1.25;margin-bottom:26px}
.hero h1 span {display:block}
.hero-accent {color:#9fd5cf}
.hero-description {max-width:600px;font-size:17px;line-height:1.85;color:#eef1ef}
.hero-actions {display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-foot {border-top:1px solid #ffffff40}
.hero-foot-inner {display:flex;justify-content:space-between;align-items:center;gap:30px;min-height:88px;font-size:1rem;font-weight:500}
.hero-foot a {display:flex;align-items:center;gap:40px}
.hero-foot a:hover {text-decoration:underline}
.hero-foot a span {font-size:25px;color:#9fd5cf}
.proof-strip {border-bottom:1px solid var(--line)}
.proof-inner {display:flex;align-items:center;justify-content:space-between;gap:40px;min-height:98px;font-size:1rem}
.proof-inner>p {font-weight:600;max-width:330px}
.proof-inner>div {display:flex;gap:32px;align-items:center}
.proof-inner span {font-size:1rem;letter-spacing:.07em;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:12px}
.proof-inner span::before {content:"";width:5px;height:5px;background:var(--brand);border-radius:50%;flex-shrink:0}

.services-section {padding-bottom:60px}
.service-track {display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:0}
.service-slide {position:relative;flex:0 0 76%;min-height:570px;border-radius:28px;overflow:hidden;isolation:isolate;scroll-snap-align:start;color:#fff;background:var(--ink)}
.service-slide>img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.service-slide::after {content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,37,33,.96),rgba(20,37,33,.56) 55%,rgba(20,37,33,.08));z-index:-1}
.service-content {padding:45px;max-width:660px;min-height:570px;display:flex;flex-direction:column;justify-content:flex-end}
.service-content .eyebrow {color:#b2ded8;font-size:1rem;margin:0 0 18px}
.service-content h3 {font-size:clamp(28px,2.7vw,39px);line-height:1.3;margin-bottom:18px}
.service-content>p:not(.eyebrow) {color:#edf1ee;font-size:1rem;line-height:1.8;max-width:530px}
.service-content a {display:inline-flex;align-items:center;gap:22px;font-size:1rem;font-weight:700;margin-top:28px;align-self:flex-start}
.service-content a:hover {text-decoration:underline}
.service-content a svg {color:#b2ded8}
.service-navigation {display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.service-navigation p {font-size:1rem;color:var(--muted)}
.service-navigation strong {color:var(--deep)}
.carousel-controls {display:flex;align-items:center;gap:15px;flex-shrink:0}
.carousel-controls button {background:var(--mist);color:var(--deep);width:48px;height:48px;border-radius:50%;font-size:24px;line-height:1}
.carousel-controls button:hover:not(:disabled) {background:var(--deep);color:#fff}
.carousel-controls span {font-size:1rem;letter-spacing:.1em;min-width:65px;text-align:center;font-weight:700}

.team-section {padding-top:60px}
.team-layout {display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(40px,6vw,90px);align-items:center}
.team-photo {height:600px;position:relative;overflow:hidden;border-radius:28px;background:var(--mist)}
.team-photo img {width:100%;height:100%;object-fit:cover;object-position:48% 50%}
.team-photo figcaption {position:absolute;bottom:0;left:0;padding:25px 30px;background:var(--ink);color:#fff;max-width:90%;border-radius:0 18px 0 0}
.team-photo figcaption span {display:block;text-transform:uppercase;letter-spacing:.1em;font-size:1rem;font-weight:700;color:#a7d8d4;margin-bottom:9px}
.team-photo figcaption strong {font-size:1rem;line-height:1.65;font-weight:500}
.team-copy h2 {font-size:clamp(30px,2.8vw,43px)}
.team-copy>p:not(.eyebrow) {margin-top:25px;color:var(--muted);font-size:1rem}
.team-credentials {display:grid;grid-template-columns:1fr 1fr;gap:22px;border-block:1px solid var(--line);padding:24px 0;margin:28px 0}
.team-credentials p+p {margin:0}
.team-credentials strong,.team-credentials span {display:block}
.team-credentials strong {font-size:1rem;margin-bottom:7px}
.team-credentials span {font-size:1rem;color:var(--muted);line-height:1.8}

.process-section {background:var(--ink);color:#fff}
.process-layout {display:grid;grid-template-columns:.83fr 1.17fr;gap:80px;align-items:center}
.process-intro .eyebrow {color:#a7d8d4}
.process-intro h2 {font-size:clamp(31px,2.9vw,44px)}
.process-intro>p:not(.eyebrow) {margin-top:24px;color:#e2e7e4;font-size:1rem;max-width:450px}
.process-intro .button {margin-top:30px}
.process-list {display:grid;grid-template-columns:1fr 1fr;list-style:none;border-left:1px solid #ffffff33;border-top:1px solid #ffffff33}
.process-list li {border-right:1px solid #ffffff33;border-bottom:1px solid #ffffff33;padding:29px 28px 33px}
.process-list li>span {color:#a7d8d4;font-size:1rem;font-weight:700;letter-spacing:.1em}
.process-list h3 {font-family:var(--font);font-weight:600;letter-spacing:0;font-size:20px;margin:18px 0 12px}
.process-list p {font-size:1rem;color:#e2e7e4;line-height:1.8}

.reference-grid {display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}
.reference-image {position:relative;overflow:hidden;border-radius:18px}
.reference-image img {width:100%;aspect-ratio:1.18;object-fit:cover}
.status-label {position:absolute;top:20px;left:20px;padding:6px 14px;background:white;color:var(--deep);font-size:1rem;font-weight:700;border-radius:3px}
.reference-meta {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 0}
.reference-meta p {font-size:1rem;color:var(--muted);margin-bottom:7px}
.reference-meta h3 {font-size:21px}
.reference-meta>a {padding:11px;border:1px solid var(--line);border-radius:50%;color:var(--deep)}
.reference-meta>a:hover {background:var(--mist)}
.buyer-section {display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:50px;padding:45px 0 0;border-top:1px solid var(--line)}
.buyer-section .eyebrow {margin-bottom:18px}
.buyer-section h3 {font-size:29px;max-width:490px}
.buyer-links a {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);color:var(--deep);font-size:1rem;font-weight:600}
.buyer-links a:hover {color:var(--ink)}

.region-section {position:relative;background:var(--ink);isolation:isolate;color:#fff}
.region-section>img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:center 45%}
.region-section::before {content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,43,37,.93),rgba(23,43,37,.75) 42%,rgba(23,43,37,.08));z-index:-1}
.region-inner {min-height:530px;display:flex;align-items:center;padding-block:80px}
.region-copy {max-width:660px}
.region-copy .eyebrow {color:#b2ded8}
.region-copy p:not(.eyebrow) {font-size:1rem;color:#eef3f0;max-width:545px;margin-top:25px}
.region-copy .button {margin-top:30px}

.faq-layout {display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.faq-layout .text-link {margin-top:30px}
.faq {border-bottom:1px solid var(--line)}
.faq:first-child {border-top:1px solid var(--line)}
.faq summary {display:flex;justify-content:space-between;align-items:center;gap:30px;padding:24px 0;cursor:pointer;font-size:1rem;font-weight:600;line-height:1.7}
.faq summary::after {content:"+";font-size:26px;font-weight:400;color:var(--deep)}
.faq[open] summary::after {content:"−"}
.faq>div {padding:0 30px 26px 0;font-size:1rem;color:var(--muted)}
.faq>div a {color:var(--deep);text-decoration:underline}

/* Existing form and content styles are retained below, with the CI font inherited. */
.page-heading{background:var(--mist);padding:65px 0}.page-heading h1{font-size:clamp(38px,4.4vw,66px);max-width:1000px}.page-heading .eyebrow a:hover{text-decoration:underline}.page-content{max-width:850px;margin-inline:auto;padding:65px var(--gutter)}.page-content h2,.page-content h3{margin:1.3em 0 .6em}.page-content p{margin-bottom:1.1em}.page-content ul,.page-content ol{padding-left:1.3em;margin-block:20px}.page-content a:not(.button){color:var(--deep);text-decoration:underline}.page-content img{height:auto;margin-block:22px}.page-content .alignwide{max-width:100%}.page-content iframe{max-width:100%}.page-content .legacy-content{margin-bottom:18px}.post-list{display:grid;grid-template-columns:repeat(2,1fr);gap:35px}.post-card{border-bottom:1px solid var(--line);padding-bottom:30px}.post-card h2{font-size:27px;margin-block:15px}.post-card img{width:100%;aspect-ratio:1.7;object-fit:cover}.post-card p{color:var(--muted);font-size:1rem}.post-card .text-link{margin-top:20px}.pagination{padding-block:35px}.pagination .nav-links{justify-content:center}.page-numbers{padding:8px 15px;border:1px solid var(--line)}.page-numbers.current{background:var(--deep);color:white}.search-form{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px}.search-field{padding:12px;border:1px solid var(--line);max-width:100%}.search-submit{background:var(--deep);color:white;padding:12px 20px;border:0}.offer-consent{background:var(--mist);padding:40px;text-align:center;max-width:800px;margin:0 auto}.offer-consent h2{font-size:32px}.offer-consent p{font-size:1rem;max-width:590px;margin:20px auto}.offer-consent .text-link{display:table;margin:20px auto 0}.offers-frame iframe{width:100%;height:1100px;border:0}.empty-state{padding-block:80px}.empty-state p{margin-block:25px}.legacy-content .button{margin:15px 0}.wp-caption{max-width:100%}.wp-caption-text{font-size:1rem;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-item{margin:0}.alignleft{float:left;margin-right:25px}.alignright{float:right;margin-left:25px}.aligncenter{margin-inline:auto}


.site-footer {background:var(--ink);color:#fff;padding-top:65px}
.footer-main {display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:45px;padding-bottom:55px}
.footer-brand>p {font-size:1rem;margin:20px 0;color:#e4e9e6}
.footer-brand address {font-size:1rem;font-style:normal;margin:22px 0 14px;color:#d1d9d4}
.footer-brand>a:not(.brand) {display:block;font-size:1rem;margin-top:7px}
.footer-main h2 {font-family:var(--font);font-size:1rem;font-weight:700;letter-spacing:0;color:#a7d8d4;margin:24px 0}
.footer-links {list-style:none}
.footer-links li {font-size:1rem;color:#e4e9e6;margin-bottom:12px}
.footer-links a:hover {text-decoration:underline}
.footer-bottom {display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid #ffffff2b;padding:24px 0;font-size:1rem;color:#d1d9d4}
.footer-bottom .footer-links {display:flex;gap:24px}
.footer-bottom .footer-links li {font-size:1rem;margin:0}
.back-top {color:white}

@media(min-width:1700px) {.hero-layout{min-height:720px}.service-slide,.service-content{min-height:640px}}
@media(max-width:1150px) {
  .header-inner{gap:22px}.site-header .brand--header{width:220px}.main-navigation{gap:18px}.nav-links{gap:18px;font-size:1rem}.nav-cta{font-size:1rem;padding-inline:15px;gap:12px}
  .hero-layout{min-height:590px}.hero-copy{max-width:730px}.proof-inner{gap:20px}.proof-inner>div{gap:20px}.proof-inner span{font-size:1rem}
  .section-heading{gap:40px}.section-heading>p{font-size:1rem;max-width:330px}
  .service-slide{flex-basis:82%}.service-slide,.service-content{min-height:530px}.service-content{padding:38px}
  .team-photo{height:550px}.team-credentials{grid-template-columns:1fr;gap:15px}
  .process-layout{gap:40px}.process-list li{padding:25px 22px}.process-list h3{font-size:18px}
  .reference-grid{gap:20px}.reference-meta h3{font-size:18px}.reference-meta>a{padding:7px}
  .request-layout,.faq-layout{gap:40px}.request-form{padding:30px}.form-grid{grid-template-columns:1fr}
  .footer-main{gap:28px}
}
@media(max-width:1280px) {
  html{scroll-padding-top:20px}.header-inner{min-height:72px;gap:16px}.site-header .brand--header{width:clamp(174px,48vw,230px);height:auto}.brand,.brand img{width:120px;height:74px}
  .menu-toggle{display:flex;align-items:center;gap:15px;padding:15px 0;font-size:1rem;background:none;color:#fff}
  .menu-bars{position:relative;width:24px;height:14px;border-block:1px solid currentColor}.menu-bars::after{content:"";position:absolute;top:5px;left:0;width:24px;border-top:1px solid currentColor}
  .main-navigation{display:block;position:absolute;top:100%;left:0;right:0;background:var(--paper);color:var(--ink);padding:10px var(--gutter) 30px;max-height:calc(100dvh - 100px);overflow:auto;border-top:1px solid var(--line)}
  .js-enabled .main-navigation:not(.is-open){display:none}.nav-links{display:block}
  .nav-links>li>a,.nav-disclosure>summary{padding:17px 0;border-bottom:1px solid var(--line);justify-content:space-between}
  .mega-menu{position:static;display:block;padding:5px 0;background:none;color:var(--ink);border:0;box-shadow:none}.mega-intro{display:none}
  .main-navigation .nav-links>li>a:hover,.main-navigation .nav-disclosure[open]>summary{color:var(--deep)}
  .submenu-links{display:block}.submenu-links a{padding:14px 15px;border-color:var(--line)}.submenu-links a:hover{background:var(--soft);color:var(--deep)}.submenu-links small{color:var(--muted);font-size:1rem}
  .nav-cta{margin-top:20px;display:flex;font-size:1rem}
  body:not(.js-enabled) .header-inner{flex-wrap:wrap;gap:0}body:not(.js-enabled) .main-navigation{position:static;max-height:none;flex-basis:100%;padding-inline:0}
  .hero-layout{min-height:590px}.hero-copy{max-width:660px}.hero h1{font-size:48px}.hero-description{max-width:560px}.hero::before{background:linear-gradient(90deg,#192320ed,#192320a8 70%,#19232055)}
  .hero-foot-inner{font-size:1rem;min-height:75px}.hero-foot a{gap:20px}
  .proof-inner{align-items:flex-start;padding-block:22px;flex-direction:column;gap:15px}.proof-inner>p{max-width:none}.proof-inner span{font-size:1rem}
  .section-heading{align-items:flex-start;flex-direction:column;gap:22px}.section-heading>p{max-width:550px;font-size:1rem}.section-heading h2{max-width:650px}
  .service-slide{flex-basis:90%}.service-content{max-width:570px}.service-navigation p{font-size:1rem;max-width:340px}
  .team-layout{grid-template-columns:1fr;gap:42px}.team-photo{height:530px;max-width:760px}.team-copy{max-width:700px}.team-copy h2{font-size:38px}.team-credentials{grid-template-columns:1fr 1fr}.team-credentials span{font-size:1rem}
  .process-layout{grid-template-columns:1fr;gap:45px}.process-intro{max-width:660px}.process-intro h2{font-size:38px}.process-intro>p:not(.eyebrow){max-width:570px}.process-list li{padding:30px}.process-list h3{font-size:21px}
  .reference-meta h3{font-size:17px}.reference-meta>a{display:none}.reference-meta p{font-size:1rem}.status-label{top:13px;left:13px;padding:4px 10px}
  .buyer-section{gap:35px}.buyer-section h3{font-size:25px}.buyer-links a{font-size:1rem}
  .region-inner{min-height:490px}.region-copy{max-width:600px}
  .faq-layout{grid-template-columns:1fr;gap:35px}.faq-layout .text-link{margin-top:22px}
  .request-layout{grid-template-columns:1fr;gap:35px}.request-copy>p:not(.eyebrow){max-width:550px}.request-copy h2 br{display:none}.request-copy h2{font-size:40px}.request-form{max-width:740px}.form-grid{grid-template-columns:1fr 1fr}
  .footer-main{grid-template-columns:1fr 1fr;gap:35px 55px}.footer-brand{grid-row:span 2}
}
@media(max-width:600px) {
  body{font-size:1rem}.section{padding-block:70px}.eyebrow{font-size:1rem;margin-bottom:19px}h2{font-size:31px}
  .hero-layout{min-height:600px}.hero-copy{padding:55px 0 60px;width:100%}.hero h1{font-size:clamp(31px,8.9vw,48px);line-height:1.3;margin-bottom:24px;letter-spacing:-.045em}.hero .eyebrow{font-size:1rem;max-width:300px;line-height:1.8}.hero-description{font-size:1rem;line-height:1.85;max-width:430px}
  .hero-visual img{object-position:60% 50%}.hero::before{background:linear-gradient(90deg,#192320e8,#192320a6),linear-gradient(0deg,#19232077,transparent)}
  .hero-actions{flex-direction:column;gap:12px;margin-top:30px}.hero-actions .button{width:100%;justify-content:space-between;font-size:1rem}
  .hero-foot-inner{min-height:85px;align-items:flex-start;justify-content:center;flex-direction:column;gap:8px;padding-block:18px;font-size:1rem}.hero-foot a{gap:18px}.hero-foot a span{font-size:18px}
  .proof-inner{padding-block:24px;gap:17px;font-size:1rem}.proof-inner>div{flex-wrap:wrap;gap:9px 18px}.proof-inner span{font-size:1rem;gap:8px}
  .section-heading{margin-bottom:32px;gap:20px}.section-heading>p{font-size:1rem}.section-heading>.text-link{font-size:1rem}
  .services-section{padding-bottom:30px}.service-track{gap:15px}.service-slide{flex-basis:94%;border-radius:18px}.service-slide,.service-content{min-height:520px}.service-content{padding:27px 23px}.service-content .eyebrow{font-size:1rem;margin-bottom:15px}.service-content h3{font-size:27px;line-height:1.35;letter-spacing:-.035em}.service-content>p:not(.eyebrow){font-size:1rem;line-height:1.8}.service-content a{font-size:1rem;gap:14px;margin-top:25px}
  .service-navigation{align-items:flex-start;flex-direction:column;gap:20px;padding:22px 0}.service-navigation p{font-size:1rem}.service-navigation strong{display:block}.carousel-controls{align-self:flex-end}
  .team-section{padding-top:35px}.team-photo{height:410px;border-radius:18px}.team-photo img{object-position:49% 50%}.team-photo figcaption{padding:20px 23px}.team-photo figcaption strong{font-size:1rem}.team-copy h2{font-size:31px}.team-copy>p:not(.eyebrow){font-size:1rem}.team-credentials{gap:20px}.team-credentials strong{font-size:1rem}.team-credentials span{font-size:1rem}
  .process-intro h2{font-size:31px}.process-intro>p:not(.eyebrow){font-size:1rem}.process-intro .button{font-size:1rem;gap:14px}.process-list{grid-template-columns:1fr}.process-list li{padding:26px}.process-list h3{font-size:20px;margin:11px 0}.process-list p{font-size:1rem}
  .reference-grid{grid-template-columns:1fr;gap:23px}.reference-image img{aspect-ratio:1.35}.reference-meta{padding:19px 0}.reference-meta h3{font-size:23px}.reference-meta p{font-size:1rem}.reference-meta>a{display:block;padding:10px}.status-label{top:18px;left:18px;font-size:1rem;padding:6px 13px}
  .buyer-section{grid-template-columns:1fr;gap:25px;margin-top:30px;padding-top:35px}.buyer-section h3{font-size:27px}.buyer-links a{font-size:1rem}
  .region-inner{min-height:530px;padding-block:65px}.region-copy h2{font-size:31px}.region-copy p:not(.eyebrow){font-size:1rem}.region-section::before{background:#173029c9}.region-copy .button{font-size:1rem;gap:15px;padding-inline:18px}
  .faq summary{font-size:1rem;gap:23px;padding-block:23px}.faq>div{font-size:1rem}
  .request-copy h2{font-size:35px}.request-form{padding:28px 20px;border-radius:12px}.form-grid{grid-template-columns:1fr;gap:18px}.form-grid input,.form-grid select{font-size:1rem}.form-grid label{font-size:1rem}.intent-options{grid-template-columns:1fr;gap:8px}.intent-options span{justify-content:flex-start;padding-left:40px;font-size:1rem}.intent-options legend{font-size:1rem}.form-progress{font-size:1rem;gap:20px}.form-next{font-size:1rem;gap:12px;padding-inline:14px}.privacy-check{font-size:1rem}.form-buttons{gap:10px}.form-buttons .button{font-size:1rem;gap:10px;padding-inline:12px}
  .site-footer{padding-top:45px}.footer-main{grid-template-columns:1fr 1fr;gap:25px 24px;padding-bottom:35px}.footer-brand{grid-row:auto;grid-column:1/-1;border-bottom:1px solid #ffffff2b;padding-bottom:25px}.footer-main h2{font-size:1rem;margin-top:10px}.footer-links li{font-size:1rem}.footer-bottom{flex-wrap:wrap;align-items:flex-start;gap:18px;font-size:1rem}.footer-bottom .footer-links{gap:20px}.footer-bottom .footer-links li{font-size:1rem}.back-top{margin-left:auto}
  .page-heading{padding-block:45px}.page-heading h1{font-size:35px}.page-content{padding-block:40px}.post-list{grid-template-columns:1fr}.offer-consent{padding:28px 20px}.offer-consent h2{font-size:26px}.offer-consent .button{font-size:1rem;gap:12px}.offers-frame iframe{height:1500px}.gallery{grid-template-columns:1fr 1fr}
}
body:not(.js-enabled) .menu-toggle{display:none}
@media(prefers-reduced-motion:reduce){html,.service-track{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.button:hover{transform:none}}
@media print{.site-header,.site-footer,.request-section,.hero-actions,.carousel-controls{display:none}.hero,.region-section,.process-section{background:white;color:#333}.hero::before,.region-section::before{display:none}.hero-visual,.region-section>img{display:none}.hero p,.hero span,.region-copy p,.process-section p{color:#333!important}.hero-layout,.region-inner{min-height:0}.hero-copy{padding-block:30px}.hero-foot{display:none}.section{padding-block:30px}.service-track{display:block;overflow:visible}.service-slide{break-inside:avoid;margin-bottom:20px}.wrap{padding-inline:0}.team-layout,.process-layout,.faq-layout{display:block}body{font-size:12pt}}

/* Six published apartment references and a portrait-led closing invitation. */
.service-track::-webkit-scrollbar{display:none}
.reference-grid{row-gap:45px}.reference-image img{aspect-ratio:1.4}.reference-meta{align-items:flex-start;padding:22px 0 18px;min-height:100px}.reference-meta h3{font-size:22px;line-height:1.4;max-width:320px}.reference-meta>a{margin-top:2px}.reference-facts{margin:0;display:grid;gap:9px;padding-bottom:22px;border-bottom:1px solid var(--line)}.reference-facts>div{display:flex;justify-content:space-between;gap:18px;font-size:1rem;line-height:1.6}.reference-facts dt{color:var(--muted)}.reference-facts dd{margin:0;text-align:right;font-weight:600}
.closing-cta{background:var(--deep);color:#fff}.closing-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(45px,7vw,110px);align-items:center}.closing-portrait{max-width:470px;position:relative;overflow:hidden;border-radius:24px}.closing-portrait img{width:100%;height:560px;object-fit:cover;object-position:50% 28%}.closing-portrait figcaption{position:absolute;bottom:0;left:0;right:0;padding:45px 30px 25px;background:linear-gradient(transparent,rgba(25,40,35,.95));display:grid;gap:5px}.closing-portrait strong{font-size:21px;font-weight:600}.closing-portrait span{font-size:1rem}.closing-copy .eyebrow{color:#b2ded8}.closing-copy h2{font-size:clamp(34px,3.3vw,49px);max-width:650px}.closing-copy>p:not(.eyebrow){color:#e4eeeb;max-width:620px;margin-top:26px;font-size:1rem}.closing-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.closing-actions .button{font-size:1rem;gap:15px}.closing-contact{display:flex;flex-wrap:wrap;column-gap:24px;row-gap:8px;margin-top:34px;padding-top:25px;border-top:1px solid #ffffff4a}.closing-contact span{width:100%;font-size:1rem;color:#dbe8e3}.closing-contact a{font-size:1rem}.closing-contact a:hover{text-decoration:underline}
.plugin-page-content{padding-block:65px}
@media(max-width:1000px){.reference-grid{grid-template-columns:1fr 1fr}.reference-meta h3{font-size:22px}.closing-layout{gap:45px}.closing-portrait img{height:530px}.closing-actions{flex-direction:column}.closing-actions .button{justify-content:space-between}.closing-contact a{font-size:1rem}}
@media(max-width:650px){.reference-grid{grid-template-columns:1fr}.reference-meta{min-height:0}.reference-meta>a{display:block}.reference-facts>div{font-size:1rem}.closing-layout{grid-template-columns:1fr;gap:36px}.closing-portrait{max-width:420px;width:100%}.closing-portrait img{height:460px}.closing-portrait figcaption{padding-inline:24px}.closing-copy h2{font-size:33px}.closing-copy>p:not(.eyebrow){font-size:1rem}.closing-actions .button{font-size:1rem}.closing-contact a{font-size:1rem}.plugin-page-content{padding-block:45px}}

.reference-detail{font-size:1rem;color:var(--muted);line-height:1.7;min-height:48px;margin:0 0 20px;max-width:370px}@media(max-width:650px){.reference-detail{min-height:0}}

.footer-social{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.footer-social a{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff45;border-radius:50%;color:#e4e9e6;transition:background-color .18s ease-out,border-color .18s ease-out}.footer-social a:hover,.footer-social a:focus-visible{background:var(--deep);border-color:#a7d8d4;color:#fff}.footer-social a:focus-visible{outline:2px solid #a7d8d4;outline-offset:4px}

.site-footer .brand--footer{width:268px;max-width:100%}
.site-footer .brand--footer img{display:block;width:100%;height:auto}
.footer-brand>p{font-size:1rem;line-height:1.85;max-width:38ch;margin:24px 0}

/* Five footer columns, with contact details grouped separately. */
.footer-main{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr)) minmax(0,1.15fr);gap:32px}
.footer-main>div{min-width:0}
.footer-contact address{font-size:1rem;line-height:1.8;font-style:normal;margin:0 0 18px;color:#e4e9e6}
.footer-contact>a{display:block;font-size:1rem;line-height:1.8;margin-top:8px;overflow-wrap:anywhere}
.footer-contact>a:hover{text-decoration:underline}
.footer-contact .footer-social{margin-top:24px}
@media(max-width:1200px){.footer-main{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 36px}.footer-brand{grid-row:span 2}.footer-contact{grid-column:2/-1}.footer-contact .footer-social{margin-top:18px}}
@media(max-width:700px){.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.footer-brand{grid-column:1/-1;grid-row:auto}.footer-contact{grid-column:auto}.footer-main .footer-contact h2{margin-top:10px}.footer-contact>a{font-size:1rem}.footer-contact .footer-social{gap:8px}.footer-contact .footer-social a{width:38px;height:38px}}
@media(max-width:380px){.footer-contact{grid-column:1/-1}}

.home .estate-selection:has(+.home-buyer-entry){padding-bottom:48px}
.home-buyer-entry{padding-top:0}
.home-buyer-entry .buyer-section{margin-top:0;padding-top:32px}
@media(max-width:700px){.home .estate-selection:has(+.home-buyer-entry){padding-bottom:32px}.home-buyer-entry .buyer-section{padding-top:26px}}

.mega-menu--knowledge{grid-template-columns:minmax(200px,.7fr) 3fr;gap:32px}
.mega-menu--knowledge>.submenu-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mega-menu--knowledge>.submenu-links>li{min-width:0}
.mega-menu--knowledge>.submenu-links>li>a{padding-top:8px;padding-bottom:20px;border-bottom:2px solid var(--brand)}
.mega-menu--knowledge>.submenu-links>li>a>span{font-size:1rem;color:var(--deep)}
.mega-menu--knowledge .submenu-links .submenu-links{padding-left:0;margin-top:10px}
.mega-menu--knowledge .submenu-links .submenu-links a{padding:12px 8px}
.mega-menu--knowledge .submenu-links .submenu-links a>span{font-size:1rem;font-weight:500;line-height:1.6}
@media(max-width:1280px){.mega-menu--knowledge{grid-template-columns:1fr}.mega-menu--knowledge>.submenu-links{grid-template-columns:1fr;gap:22px}.mega-menu--knowledge .mega-intro{display:block}.mega-menu--knowledge>.submenu-links>li>a{padding-top:12px}}
.mega-menu--knowledge>.submenu-links>li>a{min-height:101px}@media(max-width:1280px){.mega-menu--knowledge>.submenu-links>li>a{min-height:0}}

/* Additional services are clearly separated from the buyer journey. */
.mega-menu--services .menu-service-group{grid-column:1/-1;margin-top:12px}
.menu-service-label{font-size:1rem;font-weight:700;letter-spacing:.06em;color:var(--deep);padding:14px 8px 4px;text-transform:uppercase}
.mega-menu--services .menu-service-group>.submenu-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;padding-left:0}
@media(max-width:1280px){.menu-service-label{color:var(--deep);padding-inline:15px}.mega-menu--services .menu-service-group>.submenu-links{display:block}.menu-service-group{margin-top:15px}}

/* Keep the larger navigation readable before the mobile breakpoint. */
@media(min-width:1281px) and (max-width:1450px){.header-inner{gap:24px}.site-header .brand--header{width:220px}.main-navigation{gap:24px}.nav-links{gap:20px}}

/* Text reflows instead of shrinking on narrow screens. */
.team-layout>*{min-width:0}.team-credentials{grid-template-columns:repeat(2,minmax(0,1fr))}.team-credentials p{overflow-wrap:anywhere}@media(max-width:600px){.team-credentials{grid-template-columns:minmax(0,1fr)}}
