/* 금오산 감성하우스 v7 — 조용한 밤: 짙은 청회색 + 램프 앰버, 가는 고딕 */
:root{
  --bg:#141a21; --bg2:#18202a; --bg3:#1f2934; --night:#0e1217;
  --ink:#e9ecf0; --ink2:#c2c9d2; --mute:#8f9aa7; --line:rgba(205,216,228,.13);
  --amber:#f0b465; --lamp:#fdce99; --bedding:#b4b7c2;
  --hd:64px; --max:1200px; --pad:clamp(20px,5vw,56px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hd) + 8px)}
body{background:var(--bg);color:var(--ink);font-family:Pretendard,"Pretendard Variable",-apple-system,"Apple SD Gothic Neo","Noto Sans KR",sans-serif;
  font-weight:300;font-size:16px;line-height:1.8;letter-spacing:-.005em;word-break:keep-all;overflow-wrap:break-word;overflow-x:hidden}
html[lang^="zh"] body{font-family:"Noto Sans SC",Pretendard,"PingFang SC","Noto Sans SC","Microsoft YaHei","Droid Sans Fallback",sans-serif;word-break:normal;line-break:strict;letter-spacing:.01em}
html[lang="ja"] body{font-family:"Noto Sans JP",Pretendard,"Hiragino Sans","Noto Sans JP","Yu Gothic","Droid Sans Fallback",sans-serif;word-break:normal;line-break:strict;letter-spacing:.01em}
html[lang="en"] body{word-break:normal}
span[lang="ko"]{word-break:keep-all}
html[lang="ko"] .only-foreign{display:none!important}
html:not([lang="ko"]) .only-ko{display:none!important}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--lamp);outline-offset:3px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}

/* 머리 */
.hd{position:fixed;inset:0 0 auto;z-index:50;height:var(--hd);border-bottom:1px solid transparent;transition:background .35s,border-color .35s}
.hd.is-solid,.hd.is-open{background:rgba(20,26,33,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:var(--line)}
.hd.is-open{background:#0e1217;-webkit-backdrop-filter:none;backdrop-filter:none}   /* backdrop-filter 가 있으면 고정 위치 .mnav 가 머리 안에 갇힌다 */
.hd-in{max-width:1360px;height:100%;margin:0 auto;padding:0 var(--pad);display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:11px;flex:none;text-decoration:none;color:var(--ink);min-height:44px}
.brand-lamp{width:9px;height:9px;border-radius:50%;background:var(--lamp);box-shadow:0 0 14px 4px rgba(253,206,153,.5);flex:none}
.brand-ko{font-size:17px;font-weight:300;letter-spacing:.04em;white-space:nowrap}
.brand-en{font-size:12px;color:var(--mute);letter-spacing:.06em;white-space:nowrap}
.gnb{flex:1 1 auto;min-width:0;display:flex;justify-content:center}
.gnb ul{display:flex;flex-wrap:nowrap;list-style:none;gap:clamp(14px,2.1vw,32px);overflow:hidden;max-width:100%}
.gnb a{display:block;padding:10px 0;font-size:14px;color:var(--ink2);text-decoration:none;white-space:nowrap;transition:color .2s}
.gnb a:hover,.gnb a.on{color:var(--lamp)}
.hd-act{display:flex;align-items:center;gap:12px;flex:none;margin-left:auto}
.lang{position:relative}
.lang-cur{display:none}
.lang-list{display:flex;border:1px solid var(--line);border-radius:999px;padding:3px}
.lang-list button{border:0;background:none;cursor:pointer;font-size:12.5px;line-height:1;padding:0 11px;min-height:30px;border-radius:999px;color:var(--mute);letter-spacing:.04em;transition:color .2s,background .2s}
.lang-list button:hover{color:var(--ink)}
.lang-list button[aria-pressed="true"]{background:rgba(253,206,153,.14);color:var(--lamp)}
.hd-book{display:inline-flex;align-items:center;min-height:38px;padding:0 18px;border-radius:999px;background:var(--lamp);color:#1a1612;font-size:14px;font-weight:500;text-decoration:none;white-space:nowrap}
.hd-book:hover{background:#ffe0b8}
.hd-burger{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:7px}
.hd-burger i{display:block;width:22px;height:1px;background:var(--ink);transition:transform .3s}
.hd.is-open .hd-burger i:first-child{transform:translateY(4px) rotate(45deg)}
.hd.is-open .hd-burger i:last-child{transform:translateY(-4px) rotate(-45deg)}
.gnb-fold .gnb{display:none}
.gnb-fold .hd-burger{display:inline-flex}
.mnav{position:fixed;top:var(--hd);left:0;right:0;bottom:0;background:#0e1217;padding:28px var(--pad) 40px;overflow-y:auto}
.mnav[hidden]{display:none}
.mnav ul{list-style:none;border-top:1px solid var(--line)}
.mnav li a{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);font-size:20px;font-weight:200;text-decoration:none}
.mnav li a small{font-size:12px;color:var(--amber);letter-spacing:.16em;font-weight:400}
.mnav .acts{margin-top:28px}

/* 단추 */
.acts{display:flex;flex-wrap:wrap;gap:10px}
.btn{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 20px;border-radius:999px;border:1px solid rgba(233,236,240,.28);color:var(--ink);text-decoration:none;font-size:15px;font-weight:400;white-space:nowrap;transition:border-color .2s,background .2s,color .2s;background:rgba(14,18,23,.25)}
.btn:hover{border-color:var(--lamp);color:var(--lamp)}
.btn svg{width:16px;height:16px;flex:none;stroke:currentColor;fill:none;stroke-width:1.4}
.btn-amber{background:var(--lamp);border-color:var(--lamp);color:#1a1612;font-weight:500}
.btn-amber:hover{background:#ffe0b8;color:#1a1612}

/* 첫 화면 — 불을 켜듯 밝아지는 트윈 침대 방 */
.hero{position:relative;min-height:max(640px,100svh);display:flex;align-items:flex-end;overflow:hidden;background:var(--night);isolation:isolate}
.hero-ph{position:absolute;inset:0 0 0 30%;z-index:-2;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 24%);mask-image:linear-gradient(90deg,transparent 0,#000 24%)}
.hero-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 52%;filter:brightness(.62) saturate(.85);animation:lampOn 2.8s cubic-bezier(.3,.1,.2,1) both}
.hero-glow{position:absolute;left:49.5%;top:49%;width:min(80vw,980px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,rgba(253,206,153,.42) 0,rgba(253,206,153,.14) 20%,rgba(253,206,153,0) 58%);mix-blend-mode:screen;pointer-events:none;animation:glowOn 3.4s .5s ease-out both}
@keyframes lampOn{from{filter:brightness(.14) saturate(.5)}}
@keyframes glowOn{from{opacity:0}to{opacity:1}}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,rgba(14,18,23,.55) 0,rgba(14,18,23,.3) 42%,rgba(14,18,23,0) 60%),
    linear-gradient(180deg,rgba(14,18,23,.7) 0,rgba(14,18,23,0) 20%,rgba(14,18,23,.05) 46%,rgba(20,26,33,.86) 80%,var(--bg) 100%)}
.hero-in{width:100%;max-width:1360px;margin:0 auto;padding:calc(var(--hd) + 40px) var(--pad) clamp(44px,8vh,88px)}
.hero-badge{font-size:13px;color:var(--lamp);letter-spacing:.06em;margin-bottom:22px}
.hero-badge::before{content:"";display:inline-block;vertical-align:middle;width:28px;height:1px;margin:-2px 10px 0 0;background:currentColor}
.hero-h{max-width:8em;font-weight:200;font-size:clamp(44px,6.6vw,96px);line-height:1.04;letter-spacing:-.025em}
.hero-h span{display:block}
.hero-h .hero-ko{font-size:clamp(17px,1.6vw,22px);letter-spacing:.06em;color:var(--ink2);margin-top:14px;font-weight:300}
.hero-kind{margin-top:18px;font-size:15px;color:var(--ink2);letter-spacing:.02em}
.hero-lead{margin-top:14px;max-width:30em;text-wrap:pretty;font-size:clamp(16px,1.35vw,19px);color:var(--ink)}
.hero-facts{display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:30px 0 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:fit-content;max-width:100%}
.hero-facts li{padding:12px 26px 12px 0;margin-right:26px;border-right:1px solid var(--line);display:flex;flex-direction:column;line-height:1.4}
.hero-facts li:last-child{border-right:0;margin-right:0}
.hero-facts span{font-size:12px;color:var(--mute);letter-spacing:.04em}
.hero-facts b{font-weight:200;font-size:26px;color:var(--ink);font-variant-numeric:tabular-nums}
.hero-cap{position:absolute;right:var(--pad);bottom:22px;font-size:12px;color:rgba(233,236,240,.55);max-width:40ch;text-align:right}

/* 외국어 손님 먼저 볼 것 */
.ess{background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(48px,6vw,72px) 0}
.ess-h{font-weight:200;font-size:clamp(26px,3vw,36px);margin-bottom:26px}
.ess-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.ess-grid>div{background:var(--bg2);padding:22px 22px 24px}
.ess-grid dt{font-size:12.5px;color:var(--amber);letter-spacing:.06em;margin-bottom:6px}
.ess-grid dd{font-size:15px;color:var(--ink);line-height:1.7}
.ess-grid dd .ko{display:block;font-size:17px;margin-bottom:8px}
.ess-grid dd a{color:var(--lamp)}
.ess-map{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:8px}
.ess-map a{display:inline-flex;align-items:center;min-height:40px;font-size:14px}

/* 섹션 공통 */
.sec{position:relative;padding:clamp(88px,12vw,168px) 0}
.sec-head{display:flex;align-items:center;gap:18px;margin-bottom:clamp(30px,4vw,52px)}
.sec-no{display:inline-flex;align-items:center;gap:12px;font-size:13px;color:var(--amber);letter-spacing:.22em;font-weight:400;font-variant-numeric:tabular-nums;flex:none}
.sec-no::after{content:"";width:36px;height:1px;background:currentColor;opacity:.55}
.sec h2{font-weight:200;font-size:clamp(34px,4.6vw,62px);line-height:1.15;letter-spacing:-.02em}
.lead{font-size:clamp(18px,1.6vw,22px);font-weight:300;line-height:1.8;color:var(--ink)}
.sec p,.ess-grid dd{text-wrap:pretty}
html[lang="ja"] :is(h1,h2,h3,.hero-lead,.lead,.sec p){word-break:auto-phrase}
.sec p{color:var(--ink2)}
.sec p.lead{color:var(--ink)}
.ph{position:relative;overflow:hidden;background:var(--bg3)}
.ph img{width:100%;height:100%;object-fit:cover}
.ph figcaption,.cap{font-size:13px;color:var(--mute);margin-top:12px;line-height:1.5}
.ph figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:40px 18px 14px;background:linear-gradient(180deg,transparent,rgba(14,18,23,.82));color:rgba(233,236,240,.82)}

/* 01 침구와 침실 */
.bed{background:var(--bg)}
.bed-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,96px);align-items:center}
.bed .ph{aspect-ratio:1/1;max-width:440px}
.bed .ph img{object-position:50% 92%}
.big5{display:flex;align-items:flex-end;gap:18px;margin-bottom:28px}
.big5 .n{font-size:clamp(110px,13vw,180px);font-weight:100;line-height:.8;color:var(--lamp);text-shadow:0 0 40px rgba(253,206,153,.25)}
.big5 .l{font-size:16px;color:var(--ink2);padding-bottom:6px;line-height:1.5}
.bed .lead{margin-bottom:20px}
.ticks{list-style:none;margin:28px 0 0;border-top:1px solid var(--line)}
.ticks li{position:relative;padding:14px 0 14px 26px;border-bottom:1px solid var(--line);font-size:15.5px;color:var(--ink)}
.ticks li::before{content:"";position:absolute;left:2px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:var(--lamp);box-shadow:0 0 10px 2px rgba(253,206,153,.4)}
.kwnote{margin-top:22px;font-size:14px;color:var(--mute)!important}
.kwnote b{font-weight:400;color:var(--ink2)}

/* 02 루프탑 */
.roof{background:var(--night);overflow:hidden}
.roof::before{content:"";position:absolute;left:-10%;top:-30%;width:70%;height:80%;background:radial-gradient(closest-side,rgba(253,206,153,.08),transparent);pointer-events:none}
.roof-grid{position:relative;display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(32px,6vw,96px);align-items:center}
.season{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.season span{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border:1px solid rgba(253,206,153,.4);border-radius:999px;color:var(--lamp);font-size:13.5px}
.roof .ph{aspect-ratio:3/4;max-height:86vh;margin-left:auto;width:100%}

/* 03 부엌과 개별 바비큐 */
.kit{background:var(--bg2)}
.kit-top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(28px,5vw,80px);align-items:end;margin-bottom:clamp(56px,7vw,96px)}
.kit-tiles{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kit-tiles li{display:flex;flex-direction:column;gap:6px;padding:26px 26px 28px;border:1px solid rgba(253,206,153,.45);border-radius:4px;background:linear-gradient(160deg,rgba(253,206,153,.07),rgba(253,206,153,0) 60%)}
.kit-tiles .k{font-size:12.5px;color:var(--amber);letter-spacing:.08em}
.kit-tiles b{font-weight:200;font-size:clamp(28px,3vw,40px);line-height:1.2;color:var(--lamp)}
.kit-tiles .s{margin-top:auto;padding-top:14px;font-size:14px;color:var(--ink2);line-height:1.6}
.strip-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px 40px;margin-bottom:22px}
.strip-head h3{font-size:clamp(20px,2vw,26px);font-weight:300;margin-bottom:10px}
.strip-head p{max-width:44em;font-size:15.5px}
.opts{border-left:1px solid var(--line);padding-left:clamp(20px,3vw,40px)}
.opts h3{font-size:13px;font-weight:400;color:var(--amber);letter-spacing:.08em;margin-bottom:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none}
.chips li{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;border:1px solid var(--line);font-size:14px;color:var(--ink2);background:rgba(255,255,255,.02)}
.chips li.hot{border-color:rgba(253,206,153,.5);color:var(--lamp)}
.opts p{margin-top:16px;font-size:14.5px}
.strip-ctl{display:flex;gap:8px;flex:none}
.strip-ctl button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:none;cursor:pointer;color:var(--ink);display:inline-flex;align-items:center;justify-content:center}
.strip-ctl button:hover{border-color:var(--lamp);color:var(--lamp)}
.strip-ctl svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.4}
.strip{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 max(var(--pad),calc((100vw - var(--max))/2 + var(--pad)));scroll-padding-inline:max(var(--pad),calc((100vw - var(--max))/2 + var(--pad)))}
.strip::-webkit-scrollbar{display:none}
.strip figure{flex:none;scroll-snap-align:start;height:clamp(300px,40vw,540px);aspect-ratio:var(--ar)}
.strip figure img{height:100%;width:100%}

/* 04 위치 */
.loc{background:var(--bg)}
.route{list-style:none;display:flex;align-items:center;margin:0 0 clamp(40px,5vw,64px)}
.route .st{display:flex;flex-direction:column;align-items:center;gap:12px;flex:none;text-align:center;max-width:220px}
.route .st i{width:13px;height:13px;border-radius:50%;border:1px solid var(--ink2);background:var(--bg)}
.route .st b{font-weight:300;font-size:clamp(15px,1.4vw,18px);line-height:1.4}
.route .home i{width:17px;height:17px;border:0;background:var(--lamp);box-shadow:0 0 22px 6px rgba(253,206,153,.45)}
.route .home b{color:var(--lamp)}
.route .leg{flex:1 1 auto;position:relative;height:1px;background:linear-gradient(90deg,var(--line),rgba(253,206,153,.55),var(--line));margin:0 12px;align-self:flex-start;margin-top:6px;min-width:40px}
.route .leg span{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);white-space:nowrap;font-size:14px;color:var(--ink2)}
.loc-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,88px)}
.addr{margin-top:30px;border-top:1px solid var(--line)}
.addr>div{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--line);align-items:baseline}
.addr dt{font-size:13px;color:var(--mute)}
.addr dd{font-size:15.5px;color:var(--ink)}
.copy{margin-left:8px;border:1px solid var(--line);background:none;border-radius:999px;font-size:12.5px;min-height:32px;padding:0 12px;cursor:pointer;color:var(--ink2);vertical-align:middle}
.copy:hover{border-color:var(--lamp);color:var(--lamp)}
.copy .ok{display:none}
.copy.done .ok{display:inline}
.copy.done .go{display:none}
.loc .acts{margin-top:28px}
.near-h{font-size:20px;font-weight:300;margin-bottom:4px}
.near-sub{font-size:13.5px;color:var(--mute)!important;margin-bottom:20px}
.near{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.near li{background:var(--bg);padding:20px 20px 22px;display:flex;flex-direction:column;gap:4px;min-height:120px}
.near .ty{font-size:12px;color:var(--amber);letter-spacing:.08em}
.near .nm{font-size:16.5px;color:var(--ink);line-height:1.45}
.near .km{margin-top:auto;font-size:13.5px;color:var(--mute);font-variant-numeric:tabular-nums}

/* 05 이용 안내 */
.info{background:var(--bg2)}
.info-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:start}
.rules{width:100%;border-collapse:collapse;border-top:1px solid rgba(253,206,153,.35)}
.rules th,.rules td{padding:17px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:15.5px;line-height:1.65}
.rules th{width:9em;padding-right:18px;font-weight:400;color:var(--mute);font-size:14px}
.rules td{color:var(--ink)}
.rules td b{font-weight:200;font-size:24px;font-variant-numeric:tabular-nums;line-height:1.2}
.rules .chips li{min-height:30px;font-size:13.5px;padding:0 12px}
.notes{margin-top:22px;display:grid;gap:6px}
.notes p{font-size:14px;color:var(--mute)!important;padding-left:14px;position:relative}
.notes p::before{content:"";position:absolute;left:0;top:.8em;width:5px;height:1px;background:var(--mute)}
.notes p.price{color:var(--lamp)!important;font-size:15px}
.room{background:var(--bg3);border:1px solid var(--line)}
.room .ph{aspect-ratio:4/3.4}
.room-b{padding:26px 26px 30px}
.room-k{font-size:12.5px;color:var(--amber);letter-spacing:.08em}
.room-n{font-size:24px;font-weight:200;margin:6px 0 4px;line-height:1.35}
.room-c{font-size:15px;color:var(--ink2)}
.room .btn{margin-top:22px;width:100%;justify-content:center}
.full{margin-top:22px;border-top:1px solid var(--line)}
.full summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:48px;font-size:14.5px;color:var(--ink2)}
.full summary::-webkit-details-marker{display:none}
.full summary::after{content:"+";font-size:20px;font-weight:200;color:var(--lamp)}
.full[open] summary::after{content:"−"}
.full h4{font-size:13px;font-weight:400;color:var(--amber);letter-spacing:.06em;margin:14px 0 8px}
.full p{font-size:14.5px;line-height:1.85;margin-bottom:10px;color:var(--ink2)}

/* 06 후기 키워드 */
.voice{background:var(--bg)}
.voice-sub{margin:-24px 0 36px;font-size:14px;color:var(--mute)!important}
.kws{list-style:none;columns:2;column-gap:clamp(32px,6vw,96px);border-top:1px solid var(--line)}
.kws li{break-inside:avoid;display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.kws .kw{flex:1 1 auto;min-width:0;font-size:17px;color:var(--ink);font-weight:300;line-height:1.5}
.kws .kw-ko{display:block;font-size:12.5px;color:var(--mute)}
.kws .dots{display:flex;gap:5px;flex:none}
.kws .dots i{width:7px;height:7px;border-radius:50%;background:var(--lamp);opacity:.9;box-shadow:0 0 8px 1px rgba(253,206,153,.35)}
.kws .v{flex:none;min-width:3.6em;text-align:right;font-size:13px;color:var(--mute)}

/* 맺음 */
.end{position:relative;background:var(--night);text-align:center;padding:clamp(96px,13vw,180px) 0;overflow:hidden}
.end::before{content:"";position:absolute;left:50%;top:0;width:min(900px,120vw);aspect-ratio:1;transform:translate(-50%,-55%);background:radial-gradient(closest-side,rgba(253,206,153,.16),transparent);pointer-events:none}
.end .lampdot{display:block;width:12px;height:12px;margin:0 auto 34px;border-radius:50%;background:var(--lamp);box-shadow:0 0 30px 10px rgba(253,206,153,.4)}
.end h2{font-weight:200;font-size:clamp(34px,5vw,64px);letter-spacing:-.02em;line-height:1.15}
.end .end-ko{display:block;font-size:16px;color:var(--ink2);margin-top:12px;letter-spacing:.06em}
.end-line{margin:18px auto 34px;font-size:clamp(16px,1.4vw,19px);color:var(--ink2)}
.end .acts{justify-content:center}

/* 바닥글 */
.ft{background:#0b0f13;border-top:1px solid var(--line);padding:40px 0 48px;font-size:13.5px;color:var(--mute);line-height:1.8}
.ft-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 40px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.ft-name{font-size:16px;color:var(--ink);font-weight:300;letter-spacing:.04em}
.ft-kind{font-size:13px}
.ft-info{display:flex;flex-wrap:wrap;gap:4px 22px}
.ft-info a{text-decoration:none}
.ft-info a:hover{color:var(--lamp)}
.ft-src p+p{margin-top:2px}

/* 드러나기 */
.js .rv{opacity:0;transform:translateY(20px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}

@media (max-width:1100px){
  .ess-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  :root{--hd:58px}
  .gnb{display:none}
  .hd-burger{display:inline-flex}
  .brand-en{display:none}
  .hd-act{gap:6px}
  .hd-book{min-height:40px;padding:0 14px}
  .lang-cur{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:none;cursor:pointer;font-size:13px;color:var(--lamp)}
  .lang-cur svg{width:10px;height:10px;stroke:currentColor;fill:none;stroke-width:1.6}
  .lang-list{display:none;position:absolute;right:0;top:calc(100% + 8px);flex-direction:column;border-radius:14px;padding:6px;background:#0e1217;min-width:120px;box-shadow:0 12px 30px rgba(0,0,0,.4)}
  .lang.open .lang-list{display:flex}
  .lang-list button{min-height:42px;font-size:14px;text-align:left;justify-content:flex-start;border-radius:10px;padding:0 14px}
  .bed-grid,.roof-grid,.kit-top,.loc-grid,.info-grid{grid-template-columns:minmax(0,1fr)}
  .roof .ph{max-height:none;order:2}
  .opts{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:24px}
  .route{flex-direction:column;align-items:flex-start}
  .route .st{flex-direction:row;max-width:none;text-align:left}
  .route .st i{flex:none}
  .route .leg{width:1px;height:46px;flex:none;margin:6px 0 6px 6px;background:linear-gradient(180deg,var(--line),rgba(253,206,153,.55),var(--line));min-width:0}
  .route .home i{margin-left:-2px}
  .route .leg span{left:24px;bottom:auto;top:50%;transform:translateY(-50%)}
  .kws{columns:1}
  .hero-cap{display:none}
  .hero{display:block;min-height:0;background:var(--bg)}
  .hero::after{display:none}
  .hero-ph{position:relative;inset:auto;z-index:0;height:clamp(300px,48svh,560px);-webkit-mask-image:none;mask-image:none}
  .hero-ph::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(14,18,23,.6) 0,rgba(14,18,23,0) 24%,rgba(20,26,33,0) 66%,var(--bg) 100%)}
  .hero-ph img{object-position:50% 56%;filter:brightness(.8) saturate(.9)}
  .hero-glow{width:min(110vw,720px);top:48%}
  .hero-in{position:relative;margin-top:-30px;padding:0 var(--pad) 48px}
  .strip-head{flex-direction:column;align-items:stretch}
  .strip-ctl{justify-content:flex-end}
}
@media (max-width:560px){
  body{font-size:15.5px}
  .brand-ko{font-size:15.5px;letter-spacing:.02em}
  .brand{gap:9px}
  .hero-facts{gap:2px 16px;border:0;margin:16px 0 22px;width:auto}
  .hero-facts li{flex-direction:row;align-items:baseline;gap:6px;padding:0;margin:0;border:0}
  .hero-facts span{font-size:12.5px}
  .hero-facts b{font-size:16px;font-weight:300}
  .kit-tiles{grid-template-columns:minmax(0,1fr)}
  .kit-tiles li{padding:22px 20px 24px}
  .acts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .btn{justify-content:center;padding:0 12px;font-size:14.5px;white-space:normal;text-align:center;line-height:1.3}
  .acts .btn-amber,.acts a[href^="tel:"]{grid-column:1/-1}
  .ess-grid{grid-template-columns:minmax(0,1fr)}
  .near{grid-template-columns:minmax(0,1fr)}
  .near li{min-height:0}
  .strip figure{height:260px}
  .rules th{width:6.5em}
  html[lang="ja"] .rules th{width:9em}
  .sec h2{font-size:30px;text-wrap:balance}
  .addr>div{grid-template-columns:5.5em minmax(0,1fr)}
  .room-b{padding:22px 20px 26px}
  .copy,.addr dd a,.ess-grid dd a{display:inline-flex;align-items:center;min-height:40px}
  .ft-top{flex-direction:column}
  .ft-info{flex-direction:column;gap:0}
  .ft-info>*{display:flex;align-items:center;min-height:40px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero-ph img,.hero-glow{animation:none}
  .js .rv{opacity:1;transform:none;transition:none}
}
