/* Architectural elevation: stationary buildings and one restrained detail trace. */
.hero-stage{background:#263b4a;color:#fafaf7;overflow:hidden}
.hero{grid-template-columns:45% 55%;padding-block:45px;align-items:center;gap:0}
.hero-copy{padding:0 35px 0 0;z-index:2}
.hero .location{color:#d5dfe6;font-size:14px;margin-bottom:23px}
.hero .location>span{background:#aa3038}
.hero h1{font-size:clamp(78px,7.1vw,108px);line-height:.98;letter-spacing:-.02em;max-width:570px}
.hero-intro{color:#d5dfe6;max-width:365px;font-size:18px;line-height:1.8;margin-top:24px}
.hero-actions{gap:22px;margin-top:25px}
.hero-actions .button{background:#aa3038;color:#263b4a;border-color:#aa3038;box-shadow:none;padding:18px 22px}
.hero-actions .button:hover{background:#922832;transform:translateY(-1px)}
.hero-actions .text-link{color:#fafaf7;border-bottom-color:#a7b8c4}
.hero-proof{display:flex;align-items:center;gap:22px;border-top:1px solid #a9bdcb60;padding-top:21px;margin-top:27px;max-width:530px}
.hero-rating{display:flex;align-items:center;gap:12px;flex-shrink:0}
.hero-rating>b{font:600 39px/.95 var(--display);color:#fafaf7}
.hero-rating>b>span{font:400 11px var(--body);color:#d5dfe6;margin-left:3px}
.hero-rating .stars{display:block;font-size:14px;letter-spacing:2px;color:#aa3038;margin-bottom:5px}
.hero-rating small{font-size:14px;color:#d5dfe6}
.hero-proof figure{margin:0;padding-left:20px;border-left:1px solid #a9bdcb60}
.hero-proof blockquote{font-size:15px;line-height:1.7;margin:0;max-width:180px;color:#f0f3f5}
.hero-proof figcaption{font-size:14px;margin-top:6px;color:#d5dfe6;line-height:1.5}
.hero-visual{min-height:0;aspect-ratio:auto;background:#f1f2ef;border-radius:2px;margin:0;padding:16px 0 0;isolation:isolate;position:relative;align-self:center;border:1px solid #fafaf740}
.home-scene{display:block;width:100%;height:auto;stroke-width:1;overflow:hidden}
.art-caption{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 22px;border-top:1px solid #cbd4da;color:#344b5b;font-size:14px;line-height:1.6}
.art-caption small{font-size:14px;color:#52616c;white-space:nowrap}
.detail-trace{stroke-dasharray:140 1000;stroke-dashoffset:1140;animation:detail-pass 20s linear infinite}
.motion-art.motion-sleep *{animation-play-state:paused!important}
@keyframes detail-pass{0%{stroke-dashoffset:1140;opacity:0}8%{opacity:.8}65%{stroke-dashoffset:0;opacity:.8}75%,100%{stroke-dashoffset:0;opacity:0}}
.trust-strip{background:#e9eef0;border:0}
.trust-inner{padding-block:22px}
.service-feature{background:#e2e8ec}
.local-photo{border-radius:3px;overflow:hidden;padding:0;aspect-ratio:1.05;display:block}
.local-photo>img{width:100%;height:100%;object-fit:cover;object-position:45% center}
.local-photo-tag{position:absolute;bottom:30px;left:20px;background:#aa3038;color:#263b4a;padding:12px 15px;display:flex;align-items:center;gap:8px;font-size:14px}
.local-photo-tag svg{width:16px;height:16px}
.closing-inner{position:relative;z-index:1}
@media(max-width:1150px){.hero{grid-template-columns:46% 54%;padding-block:38px}.hero-copy{padding-right:26px}.hero h1{font-size:86px}.hero-intro{font-size:18px}.hero-actions{gap:20px}.hero-actions .button{padding:17px;font-size:16px;gap:15px}.hero-proof{gap:15px;flex-wrap:wrap}.hero-proof figure{padding-left:15px}.hero-rating small{font-size:14px}.hero-proof blockquote{font-size:15px}.hero-proof figcaption{font-size:14px}.art-caption{padding:15px;flex-wrap:wrap;gap:3px 15px}}
@media(max-width:850px){.hero{grid-template-columns:1fr 1fr;padding-block:34px}.hero-copy{padding-right:22px}.hero h1{font-size:71px}.hero .location{font-size:14px;line-height:1.6}.hero-intro{font-size:18px;margin-top:20px}.hero-actions{margin-top:22px;gap:17px}.hero-actions .button{font-size:16px}.hero-proof{display:block;margin-top:24px;padding-top:18px}.hero-proof figure{border-left:0;padding:0;margin-top:15px}.hero-proof blockquote{max-width:none}.hero-rating small{font-size:14px}.hero-proof figcaption{font-size:14px}.hero-visual{padding-top:15px}.art-caption{font-size:14px;padding:13px}}
@media(max-width:600px){.hero{grid-template-columns:1fr;padding-top:29px;padding-bottom:28px;gap:30px}.hero-copy{padding:0}.hero h1{font-size:clamp(65px,18.8vw,100px);max-width:450px}.hero .location{font-size:14px;margin-bottom:21px}.hero-intro{font-size:18px;margin-top:20px;max-width:350px}.hero-actions{gap:18px;margin-top:23px}.hero-actions .button{padding:17px 14px;font-size:16px;gap:16px}.hero-proof{display:flex;gap:16px;margin-top:24px;padding-top:20px;flex-wrap:nowrap}.hero-rating{gap:10px}.hero-rating>b{font-size:36px}.hero-rating small{font-size:14px}.hero-proof figure{border-left:1px solid #a9bdcb60;padding-left:15px;margin:0}.hero-proof blockquote{font-size:15px}.hero-proof figcaption{font-size:14px}.hero-visual{min-height:0;margin:0;padding-top:0;aspect-ratio:auto}.art-caption{padding:13px 14px;font-size:14px}.art-caption small{font-size:14px}.local-photo{aspect-ratio:1.02;max-width:none}.local-photo-tag{font-size:14px;left:19px;bottom:28px;padding:11px 13px}.trust-inner{padding-block:22px}}
@media(max-width:360px){.hero-proof{gap:12px}.hero-rating{gap:7px}.hero-rating>b{font-size:33px}.hero-proof figure{padding-left:12px}.hero-proof blockquote{font-size:15px}.hero-proof figcaption{font-size:14px}.hero-rating small{font-size:14px}.hero-rating .stars{font-size:14px}.hero-actions{gap:15px}}
@media(prefers-reduced-motion:reduce){.motion-art *{animation:none!important}.detail-trace{opacity:0}}
/* The logo's navy anchors the page; red identifies the next action. */
.hero-stage{background:var(--navy)}
.hero{grid-template-columns:48% 52%;padding-block:40px}
.hero-intro{max-width:440px;line-height:1.7}
.hero-actions .button{background:var(--red);border-color:#cf7780;color:#fff;font-size:16px}
.hero-actions .button:hover{background:#922832}
.hero .location>span{background:#efb6b9}
.hero-proof{gap:20px;flex-wrap:wrap}
.hero-proof figure{flex:1;min-width:160px}
.hero-proof blockquote{max-width:235px}
.hero-rating>b>span{font-size:14px}
.hero-rating .stars{color:#efb6b9;font-size:14px}
.hero-visual{background:#f1f2ef}
.art-caption{flex-wrap:wrap;gap:5px 15px}
.local-photo-tag{background:var(--navy);color:#fff}
@media(max-width:1100px){.hero h1{font-size:clamp(65px,7.7vw,86px)}}
@media(max-width:850px){
  .hero{grid-template-columns:1fr;gap:35px}
  .hero-copy{padding:0}
  .hero h1{font-size:clamp(65px,12vw,96px);max-width:none}
  .hero-intro{max-width:560px}
  .hero-proof{display:flex;max-width:600px}
  .hero-proof figure{margin:0;padding-left:20px;border-left:1px solid #a9bdcb60}
  .hero-visual{width:100%;max-width:650px;justify-self:center}
}
@media(max-width:600px){
  .hero{padding-block:28px}
  .hero h1{font-size:clamp(62px,18vw,90px)}
  .hero-intro{font-size:17px}
  .hero-proof{display:block}
  .hero-proof figure{margin-top:18px;border-left:0;padding-left:0}
  .hero-proof blockquote{max-width:none}
  .hero-actions .text-link{font-size:16px}
  .art-caption small{white-space:normal}
}
