/* Balanced type scale for long Korean headings on desktop and compact phones. */
.hero h1{font-size:clamp(40px,4.6vw,68px);line-height:1.34}
.sub-hero h1{font-size:clamp(36px,4.2vw,58px)}
.content-head h2{font-size:clamp(28px,3.4vw,44px)}
.community-heading h2{font-size:clamp(38px,5vw,64px)}
.editorial-lead h3{font-size:clamp(1.9rem,3.5vw,3.55rem)}
.community-overview-copy h3,.community-floor-head h3,.community-film-copy h3{font-size:clamp(30px,3.5vw,44px)}

@media(max-width:820px){
  .hero h1{font-size:clamp(29px,7.4vw,38px);line-height:1.38;letter-spacing:-.045em}
  .hero h1 .keyword-title{font-size:.76em}
  .sub-hero{min-height:250px;padding:38px 22px}
  .sub-hero h1{font-size:clamp(27px,7vw,34px);line-height:1.38}
  .content{padding-top:64px}
  .content-head h2{font-size:clamp(27px,7.2vw,35px);line-height:1.48}
  .section-title h2,.community h2,.visit h2{font-size:clamp(28px,7.4vw,36px);line-height:1.46}
  .community-heading h2{font-size:clamp(30px,8vw,38px);line-height:1.3}
  .editorial-lead h3{font-size:clamp(1.85rem,7.7vw,2.35rem);line-height:1.3}
  .editorial-lead h3 span{font-size:.92rem}
  .community-overview-copy h3,.community-floor-head h3,.community-film-copy h3{font-size:clamp(28px,7.5vw,35px);line-height:1.48}
  .community-gallery-intro h3{font-size:clamp(27px,7.1vw,33px)}
  .architecture-intro h2,.location-copy h2,.location-map-section h2{font-size:clamp(28px,7.5vw,35px);line-height:1.45}
  .architecture-text h2,.architecture-copy h3,.landscape-card h3{font-size:clamp(27px,7.2vw,34px);line-height:1.48}
  .materials-grid h2{font-size:clamp(26px,6.9vw,32px)}
  .concept-film-heading h2{font-size:31px;line-height:1.45}
  .lead,.facts>p,.community-copy>p:not(.eyebrow),.visit-info>p:not(.eyebrow),.content-head p,.architecture-copy p,.landscape-card p{font-size:16px;line-height:1.9}
  .answer p,.premium article p{font-size:15px;line-height:1.85}
  .mobile-cta{right:12px!important;gap:8px!important}
  .mobile-cta a,.mobile-cta a:first-child,.mobile-cta a:last-child{
    position:relative!important;width:72px!important;height:72px!important;min-width:72px!important;
    border:1px solid #c8a76b!important;border-radius:50%!important;
    background:linear-gradient(150deg,#142944 0%,#09182b 58%,#06111f 100%)!important;
    box-shadow:0 12px 28px rgba(0,8,22,.4),inset 0 0 0 1px rgba(255,255,255,.055),inset 0 10px 20px rgba(65,94,128,.16)!important;
    color:#dfc58f!important;font-size:12px!important;
  }
  .mobile-cta a:first-child::before{
    content:''!important;width:21px;height:21px;margin:0 0 5px!important;background:#dfc58f!important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8c1.7 3.3 3.3 4.9 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.2 1.2.4 2.5.7 3.8.7.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.8 21 3 13.2 3 3.7c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.7 3.8.1.4 0 .8-.2 1.1l-2.4 2.2Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M6.6 10.8c1.7 3.3 3.3 4.9 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.2 1.2.4 2.5.7 3.8.7.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.8 21 3 13.2 3 3.7c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.7 3.8.1.4 0 .8-.2 1.1l-2.4 2.2Z'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .mobile-cta a:last-child::before{
    content:''!important;width:20px;height:20px;margin:0 0 5px!important;background:#dfc58f!important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m3 17.25-.75 4.5 4.5-.75L19.81 7.94l-3.75-3.75L3 17.25Zm18.71-12.9a1 1 0 0 0 0-1.41L21.06 2.29a1 1 0 0 0-1.41 0l-2.12 2.12 3.75 3.75 2.12-2.12a1 1 0 0 0 .31-.69Z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m3 17.25-.75 4.5 4.5-.75L19.81 7.94l-3.75-3.75L3 17.25Zm18.71-12.9a1 1 0 0 0 0-1.41L21.06 2.29a1 1 0 0 0-1.41 0l-2.12 2.12 3.75 3.75 2.12-2.12a1 1 0 0 0 .31-.69Z'/%3E%3C/svg%3E") center/contain no-repeat;
  }
  .mobile-cta a:first-child span{color:#dfc58f!important;font-size:12px!important;letter-spacing:.01em!important}
}

@media(max-width:390px){
  .hero h1{font-size:29px}
  .sub-hero h1{font-size:27px}
  .content-head h2{font-size:27px}
  .community-heading h2{font-size:30px}
  .editorial-lead h3{font-size:1.85rem}
  .community-overview-copy h3,.community-floor-head h3,.community-film-copy h3{font-size:28px}
}
