.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(2rem,3.8vw,3.5rem);font-weight:760;line-height:1.08;letter-spacing:-.036em;margin:0 0 20px}
.hero h1 span,.hero h1 em{display:block}
.hero h1 span{color:#bde7ff}
.hero h1 em{font-size:clamp(1.15rem,2vw,1.7rem);font-weight:740;line-height:1.22;letter-spacing:-.015em;margin-top:8px}
.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(1.9rem,6.3vw,3.25rem)}
  .hero h1 em{font-size:clamp(1.08rem,3.65vw,1.65rem)}
  .hero-film{width:min(100%,660px)}
}
@media(max-width:620px){
  .contact-section{grid-template-columns:1fr}
  .contact-section address a{max-width:100%}
}
