/* 2026-10 layout revision. All interface copy is at least 20px. */
@font-face{font-family:"Pretendard Local";src:url("../fonts/PretendardVariable.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{--wrap:1320px;--sans:"Pretendard Local",Pretendard,-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--serif:"Pretendard Local",Pretendard,sans-serif}
html{scroll-padding-top:112px}
body{font-size:20px}
button,input,select,textarea{font-size:20px}
button{touch-action:manipulation}
button:disabled{cursor:wait;opacity:.65}
.wrap{width:min(100% - 64px,var(--wrap))}
.sec{padding:96px 0}
.sec-head{margin-bottom:36px}
.h-sec{font-size:clamp(32px,3.35vw,48px);line-height:1.4;letter-spacing:-.045em}
.lead{max-width:none;line-height:1.7}
.btn{height:64px;min-height:64px;padding:0 20px;border:2px solid transparent;border-radius:12px;line-height:1.3;white-space:normal;text-align:center}
.btn-primary{background:#ed7217;box-shadow:0 8px 20px -10px rgba(242,126,33,.65)}
.btn-ghost{border-color:rgba(255,255,255,.65);background:rgba(8,27,47,.35)}
.btn:hover{transform:translateY(-2px)}
.cta-row,.band .acts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cta-row .btn,.band .acts .btn{width:100%;height:66px;min-height:66px}
.hd{height:100px;background:linear-gradient(180deg,rgba(5,17,32,.66),transparent)}
.hd .wrap{gap:24px}
.hd .brand{gap:14px;flex-shrink:0}
.hd .brand .brand-mark{display:grid;width:126px;flex:none}
.hd .brand .brand-mark img{grid-area:1/1;width:126px;height:auto;max-height:70px;object-fit:contain;border:0;border-radius:0;padding:0;background:transparent}
.brand-mark .logo-dark{opacity:0}
.hd.solid .brand-mark .logo-dark{opacity:1}
.hd.solid .brand-mark .logo-light{opacity:0}
.hd .brand .brand-name{font-size:20px;font-weight:750;line-height:1.5;white-space:nowrap}
.hd nav{gap:22px}
.hd nav a{font-weight:750;white-space:nowrap}
.hd .tel{height:56px;white-space:nowrap;border-radius:12px;padding:0 18px;font-size:22px;flex-shrink:0}
.hero .wrap{grid-template-columns:minmax(0,1.23fr) minmax(0,1fr);gap:48px;align-items:stretch;padding:154px 0 100px}
.hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:8px 0}
.hero .kicker{font-size:20px;gap:4px 10px}
.hero h1{font-size:clamp(76px,8.25vw,120px);line-height:1.1;margin:24px 0 22px}
.hero h1 .row2{margin-top:.2em}
.hero .site{font-size:22px;line-height:1.55}
.hero .chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}
.hero .chip{min-height:62px;border-radius:12px;padding:12px 14px;font-size:20px;line-height:1.4;background:rgba(8,26,45,.66);border-color:rgba(255,255,255,.3)}
.hero .chip.hot{background:rgba(244,131,40,.18);border-color:#f49a48;color:#ffd499}
.hero .chip i,.hero .chip.hot i{width:7px;height:7px;background:#f69242}
.hero .cta-row{display:grid;margin-top:22px}
.hero .cta-row svg{width:20px;height:20px}
.form-card{padding:34px 30px 30px;border-radius:20px}
.form-card .ft{font-size:30px}
.form-card .btn{font-size:22px;min-height:66px;height:auto;padding:16px 20px;border-radius:12px}
.form-card .or{flex-wrap:wrap;margin-top:18px}
.agree{font-size:20px;line-height:1.55}
.agree input{width:28px;height:28px;margin-top:2px}
.agree strong{color:#af4b00}
.fld .msg{font-style:normal}
.benefits li{padding:34px 24px}
.benefits .v{font-size:32px}
#overview .h-sec{white-space:nowrap;font-size:clamp(30px,3.2vw,46px)}
.ov-grid{grid-template-columns:1fr;gap:24px}
.ov-img{box-shadow:none}
.zoom img{width:100%;height:auto;object-fit:contain}
.ov-img img{width:100%;height:auto}
.spec{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:0 0 14px 14px;overflow:hidden}
.spec div{grid-template-columns:148px minmax(0,1fr);gap:16px;padding:20px 24px;align-items:center;min-height:78px}
.spec div:nth-child(odd){border-right:1px solid var(--line)}
.spec div:last-child{grid-column:1/-1;border-right:0;border-bottom:0}
.spec dt{white-space:nowrap}
.mix{margin-top:24px}
.mix div{padding:24px}
.mix b{margin-bottom:8px}
.vm-grid{grid-template-columns:1fr 1.08fr;gap:26px;align-items:stretch}
.vm-grid .zoom{aspect-ratio:auto;align-self:start}
.vm-grid .zoom img{object-position:center;width:100%;height:auto}
.location-summary{padding:36px;border-radius:18px;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.location-summary .k{font-weight:750;color:#ffc688;letter-spacing:.06em}
.location-summary h3{font-size:32px;line-height:1.45;margin-top:10px;color:#fff;letter-spacing:-.03em}
.location-intro{font-size:20px;color:#c4cfdf;line-height:1.65;margin-top:18px}
.location-summary ul{list-style:none;display:grid;gap:22px}
.location-summary li{border-top:1px solid rgba(255,255,255,.2);padding-top:16px}
.location-summary li b{display:block;font-size:22px;color:#ffd499;margin-bottom:4px}
.location-summary li p{font-size:20px;color:rgba(255,255,255,.85);line-height:1.6}
.zoom .z{position:static;justify-content:center;width:100%;border-radius:0;padding:14px 18px;background:var(--navy);font-size:20px;line-height:1.4}
.zoom .cap{right:16px;bottom:16px}
.film{background:var(--navy);color:#fff}
.film .sec-head{display:flex;justify-content:space-between;align-items:end;gap:28px}
.film .h-sec{color:#fff}
.film .lead,.film .note{color:#c4cfdf}
.film .eyebrow{color:#ffc688}
.film .btn{flex:none}
.film-frame{border:1px solid rgba(255,255,255,.22);border-radius:18px;overflow:hidden;background:#061224}
.film video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.film-caption{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;padding:20px 24px;background:#153253;font-size:20px}
.film-caption b{color:#ffd499}
.film-error{padding:20px 24px;color:#fff;background:#153253}
.pillars{gap:64px}
.pillar{gap:40px}
.pm{aspect-ratio:16/10}
.band .wrap{display:grid;grid-template-columns:minmax(0,1fr) 450px;gap:36px;padding:50px 0}
.band h3{font-size:32px}
.band .acts{width:100%}
.pc .bd{padding:28px}
.pc h3{font-size:28px}
.design-special{margin-top:48px;border-top:1px solid var(--line);padding-top:38px}
.design-special h3{font-size:32px;color:var(--navy);line-height:1.4}
.design-special>p{margin-top:10px}
.design-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:26px}
.design-card{padding:28px 24px;background:var(--paper);border-radius:16px;border:1px solid var(--line)}
.design-card .metric{display:block;color:var(--leaf-o);font-size:44px;font-weight:850;line-height:1.15;letter-spacing:-.035em;margin-bottom:18px}
.design-card .metric span{font-size:22px;letter-spacing:0;margin-left:5px}
.design-card h4{font-size:24px;line-height:1.4;color:var(--navy);margin-bottom:10px}
.design-card p{font-size:20px;line-height:1.6}
.included{margin-top:24px;border:1px solid var(--line);border-radius:14px;padding:0 24px}
.included summary{cursor:pointer;font-size:22px;font-weight:750;color:var(--navy);padding:20px 0}
.included ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 34px;list-style:none;padding:0 0 22px}
.included li{font-size:20px;line-height:1.6;padding-left:18px;position:relative}
.included li:before{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--leaf-o);left:0;top:12px}
.val-grid{align-items:stretch}
.vcard{padding:30px 26px;min-width:0}
.vcard h3{font-size:29px}
.rt{table-layout:fixed}
.rt th,.rt td{padding:14px 6px;font-size:20px;overflow-wrap:anywhere;line-height:1.5}
.rt th:first-child{width:35%}
.rt th:last-child{width:23%}
.rt .no{padding:2px 10px}
.bar{grid-template-columns:190px minmax(0,1fr)}
.panel .zoom{max-width:none!important;width:100%;margin:0}
.panel .zoom img{width:100%;height:auto;object-fit:contain}
.panel .cap2{font-size:20px}
.tab{border-radius:12px;min-height:58px;padding:10px 26px}
.tabs{gap:12px;margin-bottom:24px}
.complex-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.complex-facts div{border:1px solid var(--line);border-radius:12px;background:white;padding:22px 24px}
.complex-facts b{display:block;font-size:24px;color:var(--navy);margin-bottom:6px}
.complex-facts span{font-size:20px}
.unit{grid-template-columns:1fr;gap:20px}
.ucard{display:grid;grid-template-columns:145px 1fr 1fr;gap:18px 28px;padding:28px;align-items:center}
.ucard .ty{font-size:56px}
.ucard dl{margin-top:0;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.ucard dl div{font-size:20px;flex-wrap:wrap;gap:4px 10px}
.ucard .pts{margin-top:0}
.ucard .btn{grid-column:2/-1;margin-top:0;max-width:430px;justify-self:end}
.interiors{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px;margin-top:24px}
.interiors:has(>.zoom:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.interiors .zoom{aspect-ratio:auto}
.interiors .zoom img{height:auto;object-fit:contain}
.interior-label{display:block;padding:14px;background:var(--navy);color:white;font-size:20px}
.pcard .pr{font-size:30px;line-height:1.4}
.pcard .pr span{font-size:22px}
.pcard{padding:30px 22px}
.pay{grid-template-columns:1.2fr 1.6fr 1fr}
.pay div{padding:22px}
.pay small{font-size:20px;line-height:1.6;margin-top:8px}
.price-source{border-left:4px solid var(--leaf-o);padding:18px 22px;background:#fff;border-radius:0 10px 10px 0;margin-top:22px;line-height:1.65;font-size:20px}
.price-source b{color:var(--navy)}
.final .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:stretch}
.reservation-copy{display:flex;flex-direction:column;padding:0;min-width:0}
.reservation-copy .h-sec{margin-top:18px;line-height:1.45}
.reservation-copy .lead{margin-top:20px}
.reservation-copy .perks{gap:20px;margin-top:28px}
.reservation-copy .bigtel{margin-top:auto;padding-top:30px;line-height:1.15;align-items:center}
.reserve-steps{border-top:1px solid rgba(255,255,255,.25);padding-top:22px;margin-top:28px}
.reserve-steps b{color:#ffd499}
.reserve-steps p{margin-top:6px;color:#c4cfdf;font-size:20px}
.foot .top{align-items:center}
.foot .footer-brand{display:flex;align-items:center;gap:24px}
.foot .top img{width:179px;height:100px;object-fit:contain;background:transparent;border-radius:0;padding:0}
.footer-brand .brand-label{font-size:22px;line-height:1.55;color:white;font-weight:700;border-left:1px solid #3d4655;padding-left:24px}
.foot .disc{color:#a6acb5}
.foot .copy{color:#9aa2af}
.mbar{grid-template-columns:1fr 1fr}
.mbar a,.mbar button{height:74px;font-size:20px;gap:8px;padding:10px 8px;line-height:1.3}
.mbar svg{width:22px;flex:none}
.fab a,.fab button{width:214px;justify-content:center;border-radius:12px;min-height:64px}
.fab{right:20px;bottom:24px}
@media(min-width:768px) and (max-width:1799px){.fab{display:none}}
.pop{max-height:calc(100svh - 40px);overflow:auto}
.pop .pb{grid-template-columns:1.5fr 1fr}
.pop .pb button{font-size:20px;height:auto;min-height:60px;padding:12px 10px;line-height:1.4}
.lb img{width:auto;max-width:96vw;max-height:none;margin:100px auto 40px}
.lb.zoomed img{width:1800px;max-width:none;margin-inline:20px}
.lb .hint{border:1px solid rgba(255,255,255,.3);cursor:pointer;font-family:var(--sans);font-size:20px}
.priv .box{padding:30px}
.toast h4{line-height:1.4}
@media(min-width:1181px) and (max-width:1499px){.hd nav{gap:18px}.hd nav a{font-size:20px}.hd .brand-name{display:none}}
@media(max-width:1180px){.hd nav{display:none}.hero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:30px}.hero h1{font-size:88px}.hero .cta-row{grid-template-columns:1fr}.hero .chips{gap:10px}.hero .chip{padding:12px;font-size:20px}.band .wrap{grid-template-columns:1fr}.band .acts{max-width:580px}.vcard h3{font-size:28px}.spec div{grid-template-columns:128px minmax(0,1fr)}.design-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ucard{grid-template-columns:120px 1fr}.ucard .pts{grid-column:1/-1}.ucard .btn{grid-column:1/-1}.final .wrap{gap:32px}.val-grid{grid-template-columns:1fr}}
@media(max-width:1000px){.hero .wrap{grid-template-columns:1fr;gap:40px;padding-top:140px}.hero-copy{max-width:760px}.hero .form-card{max-width:none}.hero .cta-row{grid-template-columns:1fr 1fr}.hero h1{font-size:100px}.hero .form-card .types{grid-template-columns:repeat(4,1fr)}.hero .form-card{padding:34px}.final .wrap{grid-template-columns:1fr}.reservation-copy .bigtel{margin-top:20px;padding-top:10px}.vm-grid{grid-template-columns:1fr}.location-summary{gap:24px}.location-summary ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.spec{grid-template-columns:1fr}.spec div:nth-child(odd){border-right:0}.spec div{grid-template-columns:160px minmax(0,1fr)}.ucard dl{gap:0 26px}.film .sec-head{display:block}.film .sec-head .btn{margin-top:22px}.prem{grid-template-columns:repeat(2,minmax(0,1fr))}#overview .h-sec{white-space:normal}.complex-facts{grid-template-columns:1fr}.complex-facts div{display:flex;align-items:baseline;gap:20px}.complex-facts b{min-width:160px}}
@media(max-width:767px){.wrap{width:calc(100% - 36px)}.sec{padding:64px 0}.sec-head{margin-bottom:28px}.hd{height:82px}.hd .wrap{gap:12px}.hd .brand .brand-name{display:none}.brand-mark{width:100px}.hd .brand .brand-mark img{width:100px;max-height:62px}.hd .tel{height:48px;font-size:20px;padding:0 12px;gap:7px}.hd .tel svg{width:20px}.hero .wrap{padding:114px 0 48px;gap:34px}.hero h1{font-size:clamp(70px,18vw,98px);margin-top:24px}.hero .kicker{gap:4px 8px;line-height:1.7}.hero .site{font-size:20px}.hero .chip{padding:13px 12px;gap:8px;min-height:70px}.hero .cta-row{grid-template-columns:1fr;gap:12px}.hero .cta-row .btn{height:64px;min-height:64px}.hero .form-card,.form-card{padding:30px 22px 24px}.hero .form-card .types,.types{grid-template-columns:repeat(2,minmax(0,1fr))}.hero .form-card .or{gap:8px}.benefits ul{grid-template-columns:repeat(2,minmax(0,1fr))}.benefits li{padding:28px 18px}.benefits .v{font-size:29px}.benefits .d{font-size:20px}.h-sec{font-size:32px}#overview .h-sec{font-size:30px;line-height:1.5}.ov-grid{gap:20px}.spec div{grid-template-columns:118px minmax(0,1fr);gap:12px;padding:18px 16px;min-height:unset}.mix{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mix div{padding:20px 16px}.mix b{font-size:30px}.location-summary{padding:28px 24px}.location-summary h3{font-size:28px}.location-summary ul{grid-template-columns:1fr;gap:18px}.location-summary li b{font-size:22px}.film-caption{padding:18px 20px}.pillars{gap:42px}.pillar{gap:24px}.pt h3{font-size:32px}.pm{aspect-ratio:auto}.pm img{height:auto;object-fit:contain}.band .wrap{padding:40px 0;gap:24px}.band h3{font-size:28px}.band .acts{gap:12px}.band .acts .btn{padding:10px;font-size:20px}.prem{grid-template-columns:1fr;gap:20px}.pc .bd{padding:24px}.design-special{margin-top:36px;padding-top:30px}.design-special h3{font-size:28px}.design-grid{grid-template-columns:1fr;gap:14px}.design-card{padding:24px}.design-card .metric{font-size:42px;margin-bottom:12px}.included{padding:0 20px}.included ul{grid-template-columns:1fr}.vcard{padding:26px 18px}.vcard h3{font-size:26px}.rt th,.rt td{font-size:20px;padding:12px 4px;line-height:1.5}.rt th:first-child{width:30%}.rt th:last-child{width:28%}.rt .no{padding:2px 6px}.bar{grid-template-columns:1fr}.tab{padding:10px 18px}.tabs{gap:10px}.complex-facts div{display:block;padding:22px}.complex-facts b{font-size:22px}.ucard{grid-template-columns:1fr;padding:24px}.ucard .ty{font-size:54px}.ucard dl{grid-template-columns:1fr;gap:0}.ucard dl div{flex-wrap:nowrap;padding:12px 0}.ucard .pts,.ucard .btn{grid-column:auto}.ucard .btn{max-width:none}.interiors,.interiors:has(>.zoom:nth-child(2):last-child){grid-template-columns:1fr}.pcards{grid-template-columns:1fr;gap:24px}.pcard .pr{font-size:34px}.pay{grid-template-columns:1fr;margin-top:26px}.pay div{padding:22px}.final .wrap{gap:34px}.reservation-copy .h-sec{font-size:34px}.reservation-copy .perks{gap:18px}.reservation-copy .bigtel{font-size:40px}.bigtel svg{width:32px}.reserve-steps{margin-top:24px}.loc-grid{gap:20px}.lc{padding:26px 22px}.maps{display:grid;grid-template-columns:1fr;gap:12px}.maps a{justify-content:center;border-radius:10px;min-height:58px}.foot{padding-top:44px;padding-bottom:112px}.foot .footer-brand{gap:18px}.foot .top img{width:145px;height:82px}.footer-brand .brand-label{font-size:20px;padding-left:18px}.foot .ftel{font-size:30px}.lb .hint{left:18px;transform:none;top:24px;padding:6px 10px}.lb .x{right:16px;top:18px;width:48px;height:48px}.priv .box{padding:26px 22px}.modal{padding:18px}.toast{padding:30px 24px}.toast h4{font-size:28px}}
@media(max-width:380px){.hero .chips{grid-template-columns:1fr}.hero .chip{min-height:56px}.benefits ul{grid-template-columns:1fr}.benefits li{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.mix{grid-template-columns:1fr}.band .acts{grid-template-columns:1fr}.spec div{grid-template-columns:1fr;gap:6px}.mbar svg{display:none}.foot .footer-brand{align-items:flex-start;flex-direction:column}.footer-brand .brand-label{border:0;padding:0}.reservation-copy .bigtel{font-size:34px}.rt th,.rt td{word-break:break-all}.form-card .or{flex-direction:column}.hd .tel{font-size:20px;padding:0 10px}.brand-mark,.hd .brand .brand-mark img{width:92px}}
@media(prefers-reduced-motion:reduce){.hero picture img{animation:none}.btn:hover,.pc:hover{transform:none}}
