.hero .hero-inner{min-height:0;grid-template-columns:minmax(0,.88fr) minmax(0,1.23fr);gap:clamp(28px,5vw,68px);padding-block:clamp(44px,7.4vw,96px)}
.hero .hero-copy h1{font-size:clamp(2.35rem,4.75vw,4.3rem);line-height:1.02;letter-spacing:-.05em;margin:0 0 23px}
.hero h1 span,.hero h1 em{display:block}
.hero h1 em{font-size:clamp(1.22rem,2.4vw,2.03rem);font-weight:780;line-height:1.15;letter-spacing:-.025em;margin-top:9px}
.hero .hero-copy p{font-size:clamp(.97rem,1.45vw,1.13rem);line-height:1.6;margin:0 0 24px;max-width:430px}
.hero .hero-copy .hero-note{font-size:.84rem;margin:16px 0 0;color:#aabfda}
.hero-film{margin:0;min-width:0}
.hero-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#091325;border:1px solid #4a6384;border-radius:16px;box-shadow:0 18px 50px #02091275}
.hero-film figcaption{display:flex;gap:6px 12px;align-items:start;justify-content:space-between;flex-wrap:wrap;margin-top:11px;color:#c3d4ea;font-size:.81rem}
.hero-film figcaption a{color:#9cf5e4;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.family ul{font-size:.86rem;line-height:1.55;margin:0 0 20px;padding-left:18px;color:#314965}
.family li+li{margin-top:5px}
.family li::marker{color:#24786f}
.family-actions{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px 12px;padding-top:10px;border-top:1px solid #dce9f3}
.family-actions a{margin-top:0;font-size:.82rem;line-height:1.35}
.family-actions a:hover{text-decoration:underline}
.contact-section{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px 34px}
.contact-section h2{font-size:clamp(26px,4vw,41px);letter-spacing:-.035em;line-height:1.16;margin:0 0 5px}
.contact-section p{color:var(--muted);margin:0}
.contact-section address{display:flex;flex-wrap:wrap;gap:8px;font-style:normal}
.contact-section address a{background:#f3f9fd;border:1px solid #dbe7f2;padding:9px 13px;border-radius:9px;color:#185449;font-weight:690;overflow-wrap:anywhere}
.contact-section address a:hover{background:#e6f4f0;text-decoration:underline}
@media(max-width:850px){
  .hero .hero-inner{grid-template-columns:1fr;gap:28px}
  .hero .hero-copy h1{font-size:clamp(2.25rem,7vw,3.85rem)}
  .hero h1 em{font-size:clamp(1.12rem,4.05vw,1.95rem)}
  .hero-film{width:min(100%,660px)}
}
@media(max-width:620px){
  .contact-section{grid-template-columns:1fr}
  .contact-section address a{max-width:100%}
}
