/* HOEK website. Design widths: desktop 1440, tablet 834, mobile 390 */
:root{
  --cream:#F3ECDB;--ivory:#FAF7EE;--black:#141210;--navy:#1E2B4D;--brick:#9E2B26;--gold:#C68A2E;
  --sage:#6E9389;--sky:#C7DEE8;--white:#fff;--ink70:#3A3632;--ink50:#6B6560;--line:#DAD2BE;
  --kb:1;--km:1;--gut:clamp(40px,8.333vw,120px);
  --v140:140px;--v100:100px;--v96:96px;--v64:64px;--v56:56px;
  --sans:Inter,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:Neuton,Georgia,"Times New Roman",serif;
}
@media (max-width:1099px){:root{--kb:.88;--km:.95;--gut:40px;--v140:72px;--v100:72px;--v96:56px;--v64:56px;--v56:48px}}
@media (max-width:699px){:root{--kb:.72;--km:.9;--gut:20px;--v140:56px;--v100:56px;--v96:40px;--v64:40px;--v56:36px}}

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--black);background:var(--white);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit;padding:0}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--black);color:var(--white);padding:10px 16px;border-radius:2px;font-size:14px}
.skip:focus{top:12px}
.wrap{max-width:1440px;margin-inline:auto;padding-inline:var(--gut)}
.serif{font-family:var(--serif);font-weight:400}
.ph{background-color:var(--ph,#D9D0BA);background-image:var(--img);background-size:cover;background-position:center}

/* ---------- type ---------- */
.eyebrow{font:600 12px/1.2 var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--brick)}
.eyebrow--w8{font-weight:700;letter-spacing:.08em}
.h-48{font:400 calc(48px*var(--kb))/1.15 var(--serif)}
.h-40{font:400 calc(40px*var(--kb))/1.18 var(--serif)}
.h-36{font:400 calc(36px*var(--kb))/1.28 var(--serif)}
.h-34{font:400 calc(34px*var(--kb))/1.2 var(--serif)}
.h-32{font:400 calc(32px*var(--kb))/1.3 var(--serif)}

/* ---------- nav ---------- */
.nav{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;height:88px;padding-inline:var(--gut);color:var(--white)}
.nav--over{position:absolute;left:0;right:0;top:0}
.nav-logo{display:block;line-height:0}
.nav-logo svg{width:110px;height:28px;fill:currentColor}
.nav-links{display:flex;gap:48px;font:500 15px/1.2 var(--sans)}
.nav-links a{opacity:1;transition:opacity .2s}
.nav-links a:hover{opacity:.7}
.nav--solid{height:84px;color:var(--black);background:var(--sage)}
.nav--solid .nav-links{font-size:14px;gap:40px}
.nav--contact{height:76px;padding-inline:64px;background:var(--cream);color:var(--black)}
.nav--contact .nav-links{font-size:14px;gap:40px}
.nav--contact .nav-links a[aria-current="page"]{color:var(--brick);text-decoration:none}
.menu-btn{display:none;width:44px;height:44px;margin-right:-10px;align-items:center;justify-content:center}
.menu-btn span{display:block;width:24px;height:2px;background:currentColor;position:relative;transition:background .2s}
.menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0;width:24px;height:2px;background:currentColor;transition:transform .2s}
.menu-btn span::before{top:-7px}.menu-btn span::after{top:7px}
.nav.is-open .menu-btn span{background:transparent}
.nav.is-open .menu-btn span::before{transform:translateY(7px) rotate(45deg)}
.nav.is-open .menu-btn span::after{transform:translateY(-7px) rotate(-45deg)}
@media (max-width:1099px){.nav{height:88px}.nav-links{gap:32px}.nav--contact{padding-inline:40px}}
@media (max-width:699px){
  .nav,.nav--solid,.nav--contact{height:64px;padding-inline:20px}
  .menu-btn{display:flex}
  .nav-links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;padding:8px 20px 20px;background:var(--nav-panel,var(--black));color:var(--nav-panel-ink,var(--white));font-size:17px;box-shadow:0 12px 24px rgba(0,0,0,.18)}
  .nav.is-open .nav-links{display:flex}
  .nav-links a{padding:14px 0;border-bottom:1px solid rgba(128,128,128,.28)}
  .nav-links a:last-child{border-bottom:0}
  .nav--solid{--nav-panel:var(--sage);--nav-panel-ink:var(--black)}
  .nav--contact{--nav-panel:var(--cream);--nav-panel-ink:var(--black)}
}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;font:500 14px/1.2 var(--sans);padding:14px 28px;border:1px solid currentColor;transition:background .2s,color .2s}
.btn--sm{font-size:13px;padding:12px 24px}
.btn:hover{background:var(--btn-hover-bg,var(--black));color:var(--btn-hover-ink,var(--cream))}

/* ---------- home hero ---------- */
.hero-home{position:relative;height:780px;background:var(--black);color:var(--white);overflow:hidden}
.slides{position:absolute;inset:0}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.slide.is-active{opacity:1}
.hero-copy{position:absolute;left:var(--gut);right:var(--gut);bottom:81px;max-width:816px;display:flex;flex-direction:column;gap:20px;z-index:2}
.hero-copy .eyebrow{color:var(--white);opacity:.8;font-size:12px;line-height:1.2;max-width:none}
.hero-copy h1{font:400 calc(52px*var(--kb))/1.12 var(--serif);max-width:760px}
.hero-copy p{font-size:16px;line-height:1.5;max-width:560px}
.hero-arrows{position:absolute;right:var(--gut);bottom:64px;display:flex;gap:12px;z-index:3}
.hero-arrows button{width:40px;height:40px;border:1px solid var(--white);border-radius:50%;color:var(--white);font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}
.hero-arrows button:hover{background:var(--white);color:var(--black)}
.hero-arrows[hidden]{display:none}
@media (max-width:1099px){.hero-home{height:700px}.hero-copy{bottom:100px}.hero-arrows{bottom:60px}}
@media (max-width:699px){.hero-home{height:720px}.hero-copy{bottom:96px}.hero-copy br{display:none}}

/* ---------- home sections ---------- */
.intro{background:var(--cream);padding-block:var(--v140)}
.intro .wrap{display:grid;grid-template-columns:520px 560px;gap:100px;align-items:center;justify-content:space-between}
.intro-text{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.intro-text .eyebrow{font-size:13px}
.intro-text p{font-size:16px;line-height:1.65;color:var(--ink70)}
.intro-img{height:640px;width:100%}
@media (max-width:1099px){.intro .wrap{grid-template-columns:1fr 1fr;gap:32px}.intro-img{height:460px}}
@media (max-width:699px){.intro .wrap{grid-template-columns:1fr;gap:28px}.intro-img{height:340px}}

.cards-sec{background:var(--ivory);padding-block:var(--v140)}
.sec-head{display:flex;flex-direction:column;gap:16px}
.cards-sec .sec-head{margin-bottom:56px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.card{display:flex;flex-direction:column;background:var(--card-bg,var(--white));color:var(--card-ink,var(--black));transition:transform .25s}
.card:hover{transform:translateY(-4px)}
.card-img{height:260px}
.card-body{padding:28px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.card-body h3{font:400 calc(28px*var(--kb))/1.25 var(--serif)}
.card-tag{font:600 11px/1.3 var(--sans);letter-spacing:.015em;text-transform:uppercase}
.card-body p{font-size:14px;line-height:1.5}
.card-foot{display:flex;justify-content:space-between;align-items:center;padding-top:8px;margin-top:auto}
.card-foot b{font-size:15px;font-weight:700}
.card-foot span{font-size:13px;font-weight:500}
.card--seoye{--card-bg:var(--white)}
.card--jagae{--card-bg:var(--black);--card-ink:var(--white)}
.card--hyuckpil{--card-bg:var(--gold)}
@media (max-width:699px){.cards{grid-template-columns:1fr;gap:28px}.card-body h3{font-size:28px}.cards-sec .sec-head{margin-bottom:40px}}

.incl-head{background:var(--ivory);padding:96px var(--gut) 56px;display:flex;flex-direction:column;gap:12px}
.incl-row{display:grid;grid-template-columns:780fr 640fr;align-items:stretch;min-height:380px;background:var(--row-bg);color:var(--row-ink,var(--black))}
.incl-text{display:flex;flex-direction:column;justify-content:center;gap:16px;padding:56px 48px 56px max(var(--gut),calc(50vw - 600px));}
.incl-text h3{font:400 calc(34px*var(--kb))/1.2 var(--serif);max-width:420px}
.incl-text p{font-size:15px;line-height:1.55;max-width:420px}
.incl-img{min-height:380px}
@media (max-width:1099px){.incl-head{padding:56px var(--gut) 40px}.incl-row{grid-template-columns:1fr 1fr;min-height:0}.incl-text{padding:48px 32px 48px var(--gut)}.incl-img{min-height:323px}}
@media (max-width:699px){.incl-row{grid-template-columns:1fr}.incl-text{padding:48px 20px 36px}.incl-img{min-height:236px;height:236px}}

.why{background:var(--black);color:var(--white);padding-block:var(--v140);text-align:center}
.why .eyebrow{color:var(--sky);font-weight:600}
.why h2{margin-top:16px;font:400 calc(32px*var(--kb))/1.3 var(--serif);max-width:700px;margin-inline:auto}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:48px;margin-top:64px;text-align:left}
.why-item{display:flex;flex-direction:column;gap:12px}
.why-item .n{font:400 calc(22px*var(--km))/1.2 var(--serif);color:var(--gold)}
.why-item h3{font:600 16px/1.3 var(--sans)}
.why-item p{font-size:13px;line-height:1.55;color:var(--sky)}
@media (max-width:1099px){.why-grid{grid-template-columns:1fr 1fr;gap:40px 32px}}
@media (max-width:699px){.why-grid{gap:32px 16px;margin-top:40px}}

.reviews{background:var(--cream);padding-block:var(--v140)}
.reviews .sec-head{margin-bottom:56px}
.rv-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;align-items:start}
.rv{order:var(--o,0);background:var(--ivory);border:1px solid var(--line);padding:20px;display:flex;flex-direction:column;gap:10px}
.rv-photo{aspect-ratio:175/110;width:100%}
.rv .stars{font:700 13px/1.2 var(--sans);color:var(--gold);letter-spacing:.03em}
.rv p{font-size:13px;line-height:1.5;color:var(--ink70)}
.rv-sum{margin-top:56px;font:500 14px/1.5 var(--sans)}
@media (max-width:1099px){.rv-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:699px){
  .rv-grid{display:block;column-count:2;column-gap:16px}
  .rv{break-inside:avoid;margin-bottom:20px;padding:16px;gap:10px;display:flex}
  .rv:nth-child(6){break-before:column}
  .rv-photo{aspect-ratio:auto;height:92px}
  .rv .stars{font-size:11px}
  .rv p{font-size:12px;line-height:18px}
  .reviews .sec-head{margin-bottom:40px}.rv-sum{margin-top:20px}
}

.nearby{background:var(--ivory);padding-block:var(--v100)}
.nearby .sec-head{margin-bottom:48px}
.nb-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px}
.nb{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px 16px;border:1px solid var(--line);text-align:center}
.nb i{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--cream);font-style:normal;font-size:16px}
.nb b{font:600 14px/1.3 var(--sans)}
.nb span{font-size:12px;color:var(--ink50)}
@media (max-width:1099px){.nb-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:699px){.nb-grid{grid-template-columns:1fr 1fr}}

.loc{background:var(--cream);padding:var(--v100) 0 var(--v140)}
.loc .wrap{display:grid;grid-template-columns:550fr 550fr;gap:80px;align-items:start;justify-content:space-between}
.loc-map{height:520px;background:var(--sky);border:0;width:100%}
.loc-info{display:flex;flex-direction:column;gap:32px}
.loc-info .head{display:flex;flex-direction:column;gap:16px}
.loc-info .addr{font:500 15px/1.5 var(--sans);color:var(--ink70)}
.loc-links{display:flex;gap:16px;font:500 13px/1.2 var(--sans)}
.loc-links a{text-decoration:underline;text-underline-offset:4px}
.route{padding:20px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.route+.route{margin-top:20px}
.route b{font:600 14px/1.4 var(--sans)}
.route p{font-size:14px;line-height:1.6;color:var(--ink70)}
@media (max-width:1099px){.loc .wrap{gap:32px}.loc-map{height:520px}}
@media (max-width:699px){.loc .wrap{grid-template-columns:1fr;gap:28px}.loc-map{height:322px}.route+.route{margin-top:20px}.route{padding-bottom:0}}

/* ---------- footer ---------- */
.footer{background:var(--black);color:var(--white);padding-block:96px 48px}
.f-cols{display:flex;flex-wrap:wrap;gap:56px;align-items:flex-start}
.f-brand{width:290px;display:flex;flex-direction:column;gap:16px}
.f-brand svg{width:134px;height:34px;fill:currentColor}
.f-brand p{font-size:13px;line-height:1.65;color:var(--sky)}
.f-col{display:flex;flex-direction:column;gap:14px;font-size:14px}
.f-col h4{font:600 12px/1.2 var(--sans);letter-spacing:.015em;color:var(--ink50);text-transform:uppercase}
.f-col a:hover{text-decoration:underline;text-underline-offset:4px}
.f-rule{border:0;height:1px;background:var(--ink70);margin:64px 0}
.f-copy{font-size:12px;color:var(--ink50)}
@media (max-width:1099px){.footer{padding-block:56px 40px}.f-cols{gap:40px 40px}.f-brand{width:100%;max-width:340px}.f-rule{margin:48px 0}}
@media (max-width:699px){
  .f-cols{display:grid;grid-template-columns:1fr 1fr;gap:32px 16px}
  .f-brand{grid-column:1/-1;width:auto;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .f-brand svg{grid-column:1/-1}
  .f-brand p{grid-column:1/-1;max-width:260px}
  .f-addr{grid-column:1/-1}
  .f-rule{margin:40px 0 32px}
}

/* ---------- list page ---------- */
.list-head{background:var(--sage);color:var(--black);padding:100px var(--gut) 60px;display:flex;flex-direction:column;gap:16px}
.list-head .eyebrow{color:var(--black)}
.list-head h1{font:400 calc(48px*var(--kb))/1.2 var(--serif)}
.list-head p{font-size:16px;line-height:1.6;max-width:640px}
.lrow{background:var(--bg);color:var(--ink);padding:80px 0}
.lrow .wrap{display:grid;grid-template-columns:550px 550px;gap:100px;align-items:center;justify-content:space-between}
.lrow--flip .l-img{order:-1}
.l-text{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.l-no{font:600 12px/1.2 var(--sans);letter-spacing:.015em;color:var(--no)}
.l-text h2{font:400 calc(44px*var(--kb))/1.2 var(--serif);color:var(--name)}
.l-tag{font:600 12px/1.3 var(--sans);letter-spacing:.015em;text-transform:uppercase;color:var(--tag)}
.l-desc{font-size:15px;line-height:1.65;max-width:460px;color:var(--desc)}
.l-meta{font-size:13px;color:var(--meta)}
.l-buy{display:flex;align-items:center;gap:24px;padding-top:8px}
.l-buy b{font:700 16px/1.2 var(--sans)}
.l-buy .btn{--btn-hover-bg:var(--hov-bg);--btn-hover-ink:var(--hov-ink);padding:12px 24px;font-size:13px}
.l-img{height:420px;width:100%}
.lrow--seoye{--bg:var(--black);--ink:var(--cream);--no:var(--gold);--name:var(--cream);--tag:var(--sky);--desc:var(--cream);--meta:var(--sky);--hov-bg:var(--cream);--hov-ink:var(--black)}
.lrow--jagae{--bg:var(--brick);--ink:var(--cream);--no:var(--cream);--name:var(--cream);--tag:var(--cream);--desc:var(--cream);--meta:var(--cream);--hov-bg:var(--cream);--hov-ink:var(--brick)}
.lrow--hyuckpil{--bg:var(--gold);--ink:var(--black);--no:var(--black);--name:var(--black);--tag:var(--ink70);--desc:var(--black);--meta:var(--ink70);--hov-bg:var(--black);--hov-ink:var(--cream)}
@media (max-width:1099px){.lrow{padding:56px 0}.lrow .wrap{grid-template-columns:1fr 1fr;gap:40px}.l-img{height:360px}.l-buy{flex-wrap:wrap}}
@media (max-width:699px){.list-head{padding:40px 20px 40px}.lrow{padding:40px 0}.lrow .wrap{grid-template-columns:1fr;gap:28px}.l-img{height:260px}.lrow--flip .l-img{order:-1}}

/* ---------- detail pages ---------- */
.d-hero{position:relative;background:var(--pc);color:var(--hero-ink,var(--white));min-height:600px;padding:120px var(--gut) 80px}
.d-hero-in{max-width:1200px;margin-inline:auto;display:grid;grid-template-columns:480px 560px;justify-content:space-between;align-items:end;gap:40px;min-height:400px}
.d-hero-img{height:440px;width:100%;align-self:start;margin-top:0}
.d-hero-text{display:flex;flex-direction:column;gap:16px;align-self:end}
.d-eyebrow{font:600 12px/1.2 var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--hero-eyebrow,var(--gold))}
.d-hero h1{font:400 calc(56px*var(--kb))/1.27 var(--serif);color:var(--hero-h1,var(--white))}
.d-sub{font:400 18px/1.2 var(--sans);color:var(--hero-sub,var(--sky))}
.d-def{font-size:15px;line-height:1.6;opacity:.85;color:var(--hero-sub,var(--sky))}
@media (max-width:1099px){
  .d-hero{min-height:0;padding:88px var(--gut) 64px}
  .d-hero-in{grid-template-columns:1fr;gap:36px;min-height:0}
  .d-hero-text{order:1}.d-hero-img{order:2;height:374px}
}
@media (max-width:699px){.d-hero{padding:64px 20px 48px}.d-hero-in{gap:28px}.d-hero-img{height:260px}}
.d-hero .nav--over{color:var(--hero-nav,var(--white))}

.ov{background:var(--cream);padding-block:var(--v100)}
.ov h2{font:400 calc(36px*var(--kb))/1.28 var(--serif);max-width:929px;margin-bottom:56px}
.ov-grid{display:grid;grid-template-columns:440px auto auto;gap:80px;align-items:start;justify-content:start}
.ov-grid>p{font-size:15px;line-height:1.7;color:var(--ink70)}
.facts{display:flex;flex-direction:column;gap:28px}
.fact{display:flex;flex-direction:column;gap:6px}
.fact dt{font-size:13px;color:var(--ink50)}
.fact dd{font:600 15px/1.4 var(--sans)}
.maplinks{display:flex;align-items:center;gap:10px;padding-top:4px;font:500 13px/1.4 var(--sans);color:var(--ink50)}
.maplinks a{color:var(--black);text-decoration:underline;text-underline-offset:4px}
.maplinks a:hover{color:var(--brick)}
@media (max-width:1099px){.ov-grid{grid-template-columns:1fr 1fr;gap:40px 48px}.ov-grid>p{grid-column:1/-1;max-width:640px}}
@media (max-width:699px){.ov-grid{grid-template-columns:1fr;gap:28px}.ov h2{margin-bottom:32px}}

.journey{background:var(--ivory);padding-block:var(--v100)}
.steps{margin-top:63px}
.step{display:grid;grid-template-columns:280px 520px 320px;gap:40px;justify-content:space-between;align-items:start;padding-block:36px;border-bottom:1px solid var(--line)}
.step:first-child{border-top:1px solid var(--line)}
.step-t{display:flex;flex-direction:column;gap:10px}
.step-t .n{font:400 calc(34px*var(--kb))/1.2 var(--serif);color:var(--brick)}
.step-t h3{font:600 19px/1.3 var(--sans)}
.step-b{font-size:15px;line-height:1.6;color:var(--ink70)}
.step-img{height:190px;width:100%}
@media (max-width:1099px){.step{grid-template-columns:200px 1fr 240px;gap:32px}}
@media (max-width:699px){.step{grid-template-columns:1fr;gap:12px;padding-block:28px}.steps{margin-top:32px}.step-img{height:190px;margin-top:8px}}

.gallery{position:relative;background:var(--black)}
.g-track{display:flex;gap:4px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.g-track::-webkit-scrollbar{display:none}
.g-item{flex:0 0 calc((100% - 12px)/4);height:420px;scroll-snap-align:start}
.g-btn{position:absolute;top:50%;margin-top:-24px;width:48px;height:48px;border-radius:50%;background:var(--cream);color:var(--black);font:500 20px/1 var(--sans);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0,0,0,.2);transition:transform .2s}
.g-btn:hover{transform:scale(1.06)}
.g-prev{left:24px}.g-next{right:24px}
@media (max-width:1099px){.g-item{flex-basis:300px;height:400px}}
@media (max-width:699px){.g-item{flex-basis:260px;height:340px}.g-prev{left:8px}.g-next{right:8px}}

.rec{background:var(--ivory);padding-block:var(--v100)}
.rec .sec-head{gap:12px;padding-bottom:48px}
.rec h2{font:400 calc(40px*var(--kb))/1.18 var(--serif)}
.points{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.point{position:relative;background:var(--cream);padding:32px 28px;display:flex;flex-direction:column;gap:14px;min-height:217px}
.point .n{font:400 calc(32px*var(--kb))/1.2 var(--serif);color:var(--brick)}
.point h3{font:600 18px/1.35 var(--sans)}
.point p{font-size:14px;line-height:1.5;color:var(--ink70)}
.point svg{position:absolute;top:22px;right:20px;width:43px;height:43px;fill:none;stroke:var(--black);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:699px){.points{grid-template-columns:1fr}.point{min-height:0;padding:28px 24px}}

.others{background:var(--cream);padding:64px var(--gut);text-align:center}
.others .lbl{font:600 12px/1.2 var(--sans);letter-spacing:.02em;text-transform:uppercase;color:var(--ink50)}
.mini-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;max-width:1312px;margin-inline:auto;text-align:left}
.mini{display:flex;align-items:center;gap:20px;padding:20px;background:var(--ivory);border:1px solid var(--line);transition:border-color .2s}
.mini:hover{border-color:var(--black)}
.mini-thumb{flex:0 0 80px;width:80px;height:80px}
.mini-info{display:flex;flex-direction:column;gap:4px;min-width:0}
.mini-info b{font:400 calc(22px*var(--km))/1.2 var(--serif)}
.mini-info .t{font:500 12px/1.3 var(--sans);color:var(--brick)}
.mini-info .d{font-size:12px;color:var(--ink50)}
.mini-info .v{font:500 13px/1.3 var(--sans)}
@media (max-width:699px){.others{padding:40px 20px}.mini-row{grid-template-columns:1fr;gap:24px}}

/* sticky booking bar */
.bar{position:fixed;left:0;right:0;bottom:0;z-index:50;height:88px;padding-inline:max(24px,calc(50vw - 720px + 64px));display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--bar-bg,var(--pc));color:var(--bar-ink,var(--cream));box-shadow:0 -4px 16px rgba(0,0,0,.18)}
.bar-info{display:flex;align-items:center;gap:24px;min-width:0}
.bar-name{font:400 30px/1.25 var(--serif);padding-bottom:6px;white-space:nowrap}
.bar-line{font-size:15px;color:var(--bar-sub,var(--sky));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bar-buy{display:flex;align-items:center;gap:28px;flex:none}
.bar-price{display:flex;flex-direction:column;align-items:flex-end;gap:2px;line-height:1.2}
.bar-price b{font:600 22px/1.2 var(--sans)}
.bar-price span{font-size:12px;color:var(--bar-sub,var(--sky))}
.book-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--book-bg,var(--cream));color:var(--book-ink,var(--black));font:600 15px/1.2 var(--sans);padding:16px 32px;border-radius:0;transition:opacity .2s,transform .2s;white-space:nowrap}
.book-btn:hover:not(:disabled){transform:translateY(-1px)}
.book-btn:disabled{opacity:.65;cursor:progress}
@media (max-width:1099px){.bar{padding-inline:40px}.bar-line{display:none}}
@media (max-width:699px){
  .bar{height:76px;padding-inline:20px}
  .bar-info{display:none}
  .bar-buy{width:100%;justify-content:space-between;gap:16px}
  .bar-price{align-items:flex-start}
  .bar-price b{font-size:20px}
  .book-btn{padding:14px 20px;font-size:14px}
}
body.has-bar{padding-bottom:88px}
@media (max-width:699px){body.has-bar{padding-bottom:76px}}

/* ---------- contact ---------- */
.c-head{background:var(--cream);padding:96px 64px 64px;display:flex;flex-direction:column;gap:16px}
.c-head .eyebrow{font-size:13px;font-weight:700;letter-spacing:.1em}
.c-head h1{font:400 calc(44px*var(--kb))/1.27 var(--serif)}
.c-head p{font-size:16px;line-height:1.5;color:var(--ink70);max-width:1312px}
.inq{background:linear-gradient(90deg,var(--ivory) max(61.11%,calc(50% + 160px)),var(--navy) 0)}
.inq-in{max-width:1440px;margin-inline:auto;display:grid;grid-template-columns:880fr 560fr}
.form-card{background:var(--ivory);padding:64px;display:flex;flex-direction:column;gap:24px}
.form-card form{display:flex;flex-direction:column;gap:24px}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.field{display:flex;flex-direction:column;gap:8px}
.field label{font:500 12px/1.2 var(--sans);letter-spacing:.04em;color:var(--ink50);text-transform:uppercase}
.field input,.field select,.field textarea{font:400 14px/1.4 var(--sans);color:var(--black);background:var(--ivory);border:1px solid var(--line);border-radius:2px;padding:0 16px;height:52px;width:100%;appearance:none;-webkit-appearance:none}
.field textarea{height:110px;padding:16px;resize:vertical}
.field select{background-image:linear-gradient(45deg,transparent 50%,var(--ink50) 50%),linear-gradient(135deg,var(--ink50) 50%,transparent 50%);background-position:calc(100% - 22px) 22px,calc(100% - 16px) 22px;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
.field input::placeholder,.field textarea::placeholder{color:var(--ink50);opacity:1}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--black)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.submit{align-self:flex-start;background:var(--black);color:var(--white);font:600 14px/1.2 var(--sans);padding:16px 32px;transition:opacity .2s}
.submit:hover{opacity:.85}.submit:disabled{opacity:.5;cursor:progress}
.form-msg{font-size:14px;line-height:1.5;display:none}
.form-msg.is-on{display:block}
.form-msg.ok{color:#2F6B3A}.form-msg.err{color:var(--brick)}
.info{background:var(--navy);color:var(--white);padding:64px;display:flex;flex-direction:column;gap:32px;align-self:stretch}
.info h2{font:400 calc(26px*var(--km))/1.3 var(--serif)}
.info-item{display:flex;flex-direction:column;gap:6px}
.info-item h3{font:700 11px/1.2 var(--sans);letter-spacing:.06em;color:var(--sky);text-transform:uppercase}
.info-item p{font-size:14px;line-height:1.45;color:var(--ivory)}
.info-item a{text-decoration:underline;text-underline-offset:4px}
.dl{background:var(--cream);padding:96px 64px;display:flex;flex-direction:column;gap:40px}
.dl h2{font:400 calc(32px*var(--kb))/1.3 var(--serif)}
.dl-row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.dl-card{background:var(--ivory);border:1px solid var(--line);padding:32px;display:flex;flex-direction:column;gap:16px;transition:border-color .2s}
.dl-card:hover{border-color:var(--black)}
.dl-ic{width:48px;height:48px;background:var(--cream);border:1px solid rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center}
.dl-ic span{font:700 9px/1 var(--sans);letter-spacing:.06em;color:var(--black)}
.dl-card h3{font:600 16px/1.35 var(--sans)}
.dl-card p{font-size:13px;line-height:1.4;color:var(--ink50)}
.dl-card .go{font:500 13px/1.2 var(--sans);color:var(--brick)}
@media (max-width:1099px){
  .c-head{padding:72px 40px 56px}.inq-in{grid-template-columns:1fr}.inq{background:var(--ivory)}
  .form-card{padding:56px 40px}.info{padding:56px 40px}.dl{padding:72px 40px}.dl-row{grid-template-columns:1fr 1fr}
}
@media (max-width:699px){
  .c-head{padding:40px 20px}.form-card{padding:40px 20px}.f-row{grid-template-columns:1fr}.info{padding:40px 20px}
  .field input,.field select{height:52px}.field input,.field select{padding-block:12px}
  .dl{padding:40px 20px}.dl-row{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Book CTAs (hero + recommended) */
.cta-book{display:inline-flex;align-items:center;justify-content:center;font:600 15px/1.2 var(--sans);padding:16px 32px;border-radius:0;cursor:pointer;white-space:nowrap;transition:opacity .2s,transform .2s}
.cta-book:hover{transform:translateY(-1px)}
.cta-hero{margin-top:28px;align-self:flex-start;background:var(--book-bg,var(--cream));color:var(--book-ink,var(--black))}
.page-seoye .cta-hero{background:var(--cream);color:var(--black)}
.cta-rec{background:var(--cta-bg,var(--pc));color:var(--cta-ink,var(--cream))}
.page-jagae .cta-rec{--cta-bg:var(--brick)}
.page-hyuckpil .cta-rec{--cta-bg:var(--black);--cta-ink:var(--cream)}
.cta-row{display:flex;justify-content:center;padding-top:48px}
@media (max-width:699px){.cta-hero{margin-top:24px;width:100%;align-self:stretch}.cta-row{padding-top:32px}.cta-rec{width:100%}}

/* Hotel discount pages: 15% off pricing */
.chip{font:600 11px/1 var(--sans);font-style:normal;letter-spacing:.04em;padding:4px 8px;background:var(--chip-bg,var(--black));color:var(--chip-ink,var(--cream));white-space:nowrap}
.chip-b{--chip-bg:var(--brick);--chip-ink:#fff}
.page-jagae .bar .chip{--chip-bg:var(--cream);--chip-ink:var(--brick)}
.bp-row{display:flex;align-items:center;gap:8px;line-height:1.2}
.bp-orig{font-size:12px;color:var(--bar-sub,var(--sky))}
.bp-orig s{opacity:.8}
.dd-price{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dd-price s{font-weight:400;font-size:13px;color:var(--ink50)}
@media (max-width:699px){.bp-row{gap:6px}.bp-orig{font-size:11px}.bp-orig s{margin-right:2px}.bar .chip{padding:4px 6px}}
.bp-orig{white-space:nowrap}
