@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Noto+Sans+KR:wght@400;500;700&display=swap");:root{--ink:#14211d;--deep:#0c2725;--moss:#405c49;--sand:#f1e5d0;--linen:#fbf7ef;--gold:#c6974a;--foam:#d7e4da}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 12% 8%,rgba(198,151,74,.2),transparent 28rem),linear-gradient(145deg,#fbf7ef,#e7dcc9 46%,#cfded4);color:var(--ink);font-family:Noto Sans KR,sans-serif}a{color:inherit;text-decoration:none}main{overflow:hidden}.hero{min-height:100vh;padding:28px clamp(20px,5vw,72px) 72px;position:relative}.hero:before{background:linear-gradient(120deg,rgba(12,39,37,.46),rgba(12,39,37,.04)),url(https://images.unsplash.com/photo-1602002418082-a4443e081dd1?auto=format&fit=crop&w=1800&q=80);background-position:50%;background-size:cover;border-radius:0 0 0 120px;content:"";inset:0 0 17% 38%;position:absolute;z-index:-1}.nav{align-items:center;animation:rise .7s ease both;display:flex;justify-content:space-between}.brand{font-family:Cormorant Garamond,serif;font-size:clamp(28px,4vw,42px);font-weight:700;letter-spacing:-.03em}.navLinks{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:hsla(40,60%,96%,.7);border:1px solid hsla(0,0%,100%,.46);border-radius:999px;display:flex;gap:18px;padding:12px 18px}.heroGrid{align-items:end;display:grid;grid-gap:42px;gap:42px;grid-template-columns:minmax(0,.9fr) minmax(320px,.6fr);margin-top:clamp(80px,12vw,150px)}.heroCopy{animation:rise .85s ease .1s both;max-width:760px}.eyebrow{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.24em;margin:0 0 16px;text-transform:uppercase}h1,h2,h3{font-family:Cormorant Garamond,Noto Sans KR,serif;letter-spacing:-.05em;line-height:.94;margin:0}h1{font-size:clamp(58px,10vw,132px);max-width:920px}h2{font-size:clamp(44px,7vw,92px)}h3{font-size:40px}.lead{color:#41554c;font-size:clamp(18px,2vw,24px);line-height:1.8;max-width:620px}.heroActions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.ghostButton,.primaryButton,button{border:0;border-radius:999px;cursor:pointer;font:inherit;font-weight:700;padding:16px 24px}.primaryButton,button{background:var(--deep);color:var(--linen)}.ghostButton{background:hsla(40,60%,96%,.72);border:1px solid rgba(12,39,37,.14)}.heroCard{align-self:stretch;animation:floatIn 1s ease .22s both;background:linear-gradient(180deg,transparent,rgba(12,39,37,.68)),url(https://images.unsplash.com/photo-1596178065887-1198b6148b2b?auto=format&fit=crop&w=900&q=80);background-position:50%;background-size:cover;border:10px solid hsla(40,60%,96%,.7);border-radius:38px;box-shadow:0 34px 90px rgba(12,39,37,.26);color:#fff;min-height:480px;padding:24px;position:relative}.poolBadge{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:hsla(0,0%,100%,.18);border:1px solid hsla(0,0%,100%,.26);border-radius:999px;display:inline-flex;padding:12px 16px}.heroCardFooter{bottom:24px;display:flex;justify-content:space-between;left:24px;position:absolute;right:24px}.experience,.intro,.reservationSection,.section{padding:clamp(72px,10vw,130px) clamp(20px,5vw,72px)}.intro{align-items:end;display:grid;grid-gap:48px;gap:48px;grid-template-columns:1fr .8fr}.intro p{font-family:Cormorant Garamond,Noto Sans KR,serif;font-size:clamp(34px,5vw,66px);line-height:1.05;margin:0}.stats{display:grid;grid-gap:14px;gap:14px}.stats span{align-items:baseline;background:hsla(0,0%,100%,.38);border:1px solid hsla(0,0%,100%,.45);border-radius:24px;display:flex;justify-content:space-between;padding:22px}.stats strong{font-family:Cormorant Garamond,serif;font-size:44px}.sectionHeader{align-items:end;display:flex;justify-content:space-between;margin-bottom:34px}.suiteGrid{display:grid;grid-gap:22px;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr))}.suiteCard{background:hsla(40,60%,96%,.76);border:1px solid hsla(0,0%,100%,.7);border-radius:34px;box-shadow:0 26px 70px rgba(35,45,34,.12);overflow:hidden}.suiteImage{background-position:50%;background-size:cover;min-height:310px}.suiteBody{padding:26px}.suiteBody p,.suiteBody span{color:#65756c}.suiteBody ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:24px 0;padding:0}.suiteBody li{background:var(--foam);border-radius:999px;font-size:13px;padding:8px 11px}.price{align-items:baseline;display:flex;gap:8px}.price strong{font-size:24px}.experience{background:linear-gradient(90deg,rgba(12,39,37,.88),rgba(12,39,37,.38)),url(https://images.unsplash.com/photo-1540541338287-41700207dee6?auto=format&fit=crop&w=1800&q=80);background-position:50%;background-size:cover;color:var(--linen);display:grid;grid-gap:42px;gap:42px;grid-template-columns:.9fr 1fr}.experienceList{display:grid;grid-gap:14px;gap:14px}.experienceList span{border-bottom:1px solid hsla(40,60%,96%,.32);font-size:clamp(20px,3vw,38px);padding-bottom:16px}.reservationSection{display:grid;grid-gap:44px;gap:44px;grid-template-columns:.78fr 1fr}.reservationCopy p:not(.eyebrow){color:#526258;font-size:18px;line-height:1.8}.reservationForm{background:hsla(40,60%,96%,.82);border:1px solid hsla(0,0%,100%,.82);border-radius:36px;box-shadow:0 30px 80px rgba(12,39,37,.16);display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:clamp(22px,4vw,42px)}label{color:#526258;display:grid;font-size:14px;font-weight:700;grid-gap:8px;gap:8px}input,select,textarea{background:#fff;border:1px solid rgba(12,39,37,.12);border-radius:18px;color:var(--ink);font:inherit;outline:none;padding:15px 16px}textarea{min-height:118px;resize:vertical}.formMessage,.wide,button{grid-column:1/-1}button:disabled{cursor:wait;opacity:.72}.formMessage{border-radius:18px;margin:0;padding:14px 16px}.formMessage.success{background:#dceadf;color:#1d4e2d}.formMessage.error{background:#f4d8d2;color:#803225}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes floatIn{0%{opacity:0;transform:translateY(28px) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@media (max-width:920px){.hero:before{inset:42% 0 0 0;border-radius:56px 56px 0 0}.experience,.heroGrid,.intro,.reservationSection,.suiteGrid{grid-template-columns:1fr}.heroCard{min-height:360px}}@media (max-width:640px){.nav{align-items:flex-start;gap:18px}.nav,.navLinks,.sectionHeader{flex-direction:column}.navLinks{align-items:flex-start;border-radius:24px;width:100%}.reservationForm{grid-template-columns:1fr}}