:root{--dark:#211e1d;--ink:#24201f;--brown:#8e7564;--cream:#f4f2ef;--line:#ddd8d3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.8 'Noto Sans KR',sans-serif;color:var(--ink);word-break:keep-all}a{text-decoration:none;color:inherit}img{display:block;width:100%}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.reveal{opacity:0;transform:translateY(28px);transition:.8s}.reveal.on{opacity:1;transform:none}header{height:78px;position:absolute;z-index:20;inset:0 0 auto;padding:0 5vw;display:flex;align-items:center;color:#fff}.logo{font:500 22px 'Noto Serif KR';min-width:220px}.logo small{display:block;font:400 7px 'Noto Sans KR';letter-spacing:.3em;opacity:.65}.logo+nav{display:flex;gap:38px;margin-left:auto;font-size:13px}.logo+nav a:hover{opacity:.6}header button{display:none;border:0;background:none;color:#fff;font-size:26px}.hero{height:690px;display:grid;grid-template-columns:39% 61%;background:var(--dark);color:#fff}.hero-copy{padding:160px 5vw 60px;display:flex;flex-direction:column}.hero-copy>span,.section-head>span,.intro-copy>span,.location-copy>span,.reserve-inner>span{font-size:10px;letter-spacing:.25em;color:#b8aaa1}.hero h1{font:400 clamp(34px,3.8vw,58px)/1.45 'Noto Serif KR';letter-spacing:-.04em;margin:22px 0}.hero p{color:#afa7a2}.hero-copy>div{display:flex;gap:12px;margin-top:25px}.hero-copy>div a{min-width:130px;padding:12px 16px;border:1px solid #716b67;font-size:12px;display:flex;justify-content:space-between}.hero-pager{margin-top:auto!important;align-items:center}.hero-pager i{width:45px;height:1px;background:#8d8580}.hero-pager span{font-size:16px}.hero-pager small{color:#77706c}.hero-photo{height:100%;overflow:hidden}.hero-photo img{height:100%;object-fit:cover}.overview{width:min(950px,calc(100% - 40px));margin:0 auto;padding:120px 0;display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.overview-list{display:grid;grid-template-columns:130px 1fr;align-items:center}.overview-list>a,.overview-list>p{padding:25px 0;border-bottom:1px solid var(--line);margin:0}.overview-list>a span,.overview-list>a small{display:block}.overview-list>a span{font:500 20px 'Noto Serif KR'}.overview-list>a small{font-size:8px;letter-spacing:.25em;margin-top:12px}.overview-list p{font-size:13px;color:#6e6965}.overview-list p b{font-size:20px;color:var(--ink)}.booking{display:flex;gap:8px}.booking i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#f1464a;color:#fff;font-size:7px;font-style:normal}.booking i:nth-child(2){background:#296feb}.booking i:nth-child(3){background:#12ba56}.overview-visual h2{font:400 31px/1.45 'Noto Serif KR';text-align:center;margin:0 0 25px}.overview-visual img{height:400px;object-fit:cover}.intro{padding:110px 0;background:#f0f0ef}.intro-wrap{width:min(950px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr 1.15fr;gap:55px;align-items:center}.intro-image img{height:510px;object-fit:cover}.intro-copy h2{font:400 30px/1.5 'Noto Serif KR';margin:15px 0 25px}.intro-copy p{font-size:13px;color:#686461}.intro-copy .mini{width:180px;height:115px;object-fit:cover;margin-top:28px}.rooms{padding:120px 0}.section-head h2{font:400 36px 'Noto Serif KR';margin:10px 0 35px}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.room-grid article{position:relative;overflow:hidden;background:#f2f0ee}.room-grid img{height:360px;object-fit:cover;transition:.5s}.room-grid article:hover img{transform:scale(1.04)}.room-grid article>div{position:absolute;left:18px;right:18px;bottom:18px;padding:20px;background:rgba(255,255,255,.92)}.room-grid small{letter-spacing:.15em}.room-grid h3{font:500 22px 'Noto Serif KR';margin:4px 0}.room-grid p{font-size:11px;color:#77716c;margin:0}.room-grid a{position:absolute;right:18px;bottom:20px;font-size:11px}.gallery{padding:100px 0;background:var(--dark);color:#fff}.gallery-wrap{width:min(950px,calc(100% - 40px));margin:auto}.gallery-head{display:flex;align-items:end;justify-content:space-between}.gallery-head span{font:400 35px 'Noto Serif KR'}.gallery-head h2{font-size:12px;font-weight:400;color:#aaa29d}.gallery-head>a{font-size:9px;letter-spacing:.2em}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:32px}.gallery-grid figure{margin:0}.gallery-grid img{height:220px;object-fit:cover}.gallery-grid figcaption{font:400 13px 'Noto Serif KR';color:#aaa29d;margin-top:10px}.special{padding:115px 0}.special .section-head{text-align:center}.special-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;border-top:1px solid var(--line);padding-top:42px}.special-grid i{font-style:normal;font-size:11px;color:var(--brown)}.special-grid h3{font:500 20px 'Noto Serif KR'}.special-grid p{font-size:12px;color:#756f6b}.location{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.location-copy{padding:85px 9vw}.location-copy h2{font:400 36px 'Noto Serif KR';margin:8px 0}.location-copy>p{color:#77716d}.location-copy dl{margin-top:35px}.location-copy dl div{display:grid;grid-template-columns:90px 1fr;padding:9px 0}.location-copy dt{font-weight:700}.location-copy dd{margin:0;color:#6f6965}.map-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.map-buttons a{text-align:center;padding:14px;background:#26a722;color:#fff}.map-buttons a:last-child{background:#f4bd22;color:#29221b}.map{min-height:530px;background:#ebe8e1;position:relative;overflow:hidden;display:grid;place-content:center;text-align:center}.road{position:absolute;background:#fff}.r1{width:140%;height:50px;left:-20%;top:50%;transform:rotate(-8deg)}.r2{width:45px;height:140%;left:62%;top:-20%;transform:rotate(13deg)}.sea{position:absolute;right:-10%;bottom:-20%;width:55%;height:48%;border-radius:50%;background:#b8d9df;color:#89bcc7;padding-top:50px;font-size:11px;letter-spacing:.4em}.map i,.map b,.map small{position:relative;z-index:2}.map i{color:#2a76e8;font-style:normal;font-size:32px}.map b{font-size:17px}.map small{color:#76706b}.reserve{padding:110px 20px;background:url('assets/hero-ocean.png') center/cover fixed;position:relative;color:#fff;text-align:center}.reserve:before{content:'';position:absolute;inset:0;background:rgba(25,22,20,.7)}.reserve-inner{position:relative}.reserve h2{font:400 38px 'Noto Serif KR';margin:15px 0}.reserve p{color:#d0cac6}.reserve-inner>div{display:flex;justify-content:center;gap:10px;margin-top:28px}.reserve-inner a{padding:14px 30px;border:1px solid #fff}.reserve-inner a:last-child{background:#fff;color:var(--ink)}footer{padding:45px;text-align:center}.footer-logo{font:500 18px 'Noto Serif KR'}footer p,footer small{font-size:10px;color:#8b8581}.top{position:fixed;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);z-index:20}
@media(max-width:850px){.logo+nav{display:none}.logo+nav.open{display:flex;position:absolute;top:70px;left:0;right:0;background:var(--dark);padding:25px;flex-direction:column}.hero{grid-template-columns:1fr;height:auto}.hero-copy{min-height:580px}.hero-photo{height:460px}.overview,.intro-wrap{grid-template-columns:1fr}.overview-visual{max-width:500px;margin:auto}.room-grid,.gallery-grid{grid-template-columns:1fr 1fr}.special-grid{grid-template-columns:1fr 1fr}.location{grid-template-columns:1fr}.map{min-height:430px}header button{display:block;margin-left:auto}}
@media(max-width:560px){header{height:70px;padding:0 20px}.logo{font-size:19px}.hero-copy{padding:130px 25px 50px;min-height:620px}.hero h1{font-size:36px}.hero-copy>div{flex-direction:column;align-items:flex-start}.hero-pager{flex-direction:row!important}.hero-photo{height:360px}.overview{padding:80px 0;grid-template-columns:1fr}.overview-list{grid-template-columns:105px 1fr}.overview-visual img{height:330px}.intro{padding:80px 0}.intro-image img{height:380px}.rooms{padding:80px 0}.room-grid,.gallery-grid,.special-grid{grid-template-columns:1fr}.room-grid img{height:330px}.gallery-grid img{height:260px}.location-copy{padding:70px 25px}.reserve{background-attachment:scroll}.reserve h2{font-size:31px}.map-buttons{grid-template-columns:1fr}footer{padding:40px 20px}.top{right:12px;bottom:12px}}
:root body .hero-copy{padding:140px 5vw 35px;min-height:0}
:root body .hero h1{font-size:clamp(34px,3vw,48px);line-height:1.42}
