@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500&family=Noto+Serif+TC:wght@500;600&display=swap');
:root{--forest:#102d26;--deep:#09211c;--brass:#b88a4a;--cream:#f3efe7;--ink:#18201e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-weight:300}img{display:block;width:100%}a{color:inherit;text-decoration:none}.nav{position:absolute;z-index:5;top:0;left:0;width:100%;height:92px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;color:white;border-bottom:1px solid #ffffff33}.brand{font:600 2.25rem 'Noto Serif TC',serif;letter-spacing:.12em}.nav nav{display:flex;align-items:center;gap:30px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.outline{border:1px solid #ffffff88;padding:11px 18px}.hero{height:100vh;min-height:680px;position:relative;color:white}.hero>img{height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,16,.88),rgba(4,20,16,.25) 65%,rgba(4,20,16,.05))}.hero-copy{position:absolute;left:8vw;bottom:16vh;width:min(650px,80vw)}.eyebrow{text-transform:uppercase;letter-spacing:.23em;font-size:.7rem;font-weight:500}.gold{color:var(--brass)}h1{font:600 clamp(5rem,12vw,10rem)/.9 'Noto Serif TC',serif;margin:.22em 0}.hero-copy>p:not(.eyebrow){font-size:clamp(1.05rem,1.6vw,1.4rem);line-height:1.6;max-width:570px}.button{display:inline-block;margin-top:22px;padding:14px 24px;background:var(--brass);color:white;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:120px 9vw}.intro h2,.feature h2,.spaces h2,.plans h2,.contact h2{font:500 clamp(2.4rem,4vw,4.7rem)/1.1 'Noto Serif TC',serif;margin:.3em 0}.intro>div>p:not(.eyebrow),.feature p,.plans-copy>p:not(.eyebrow){line-height:1.85;color:#53605c}.facts{display:flex;gap:36px;margin-top:42px;padding-top:28px;border-top:1px solid #cfc8bb}.facts span{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.facts b{display:block;color:var(--forest);font:500 1.55rem 'Noto Serif TC',serif;text-transform:none}.feature{display:grid;grid-template-columns:1.55fr .75fr;background:var(--forest);color:white;align-items:center}.feature img{height:680px;object-fit:cover}.feature div{padding:8vw 6vw}.feature p:not(.eyebrow){color:#c7d0cc}.spaces{padding:120px 6vw}.spaces>h2{margin-bottom:.15em}.lede{color:#66716d;margin-bottom:48px}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery figure,.plan-grid figure{margin:0;position:relative;overflow:hidden;background:#ddd}.gallery img{height:520px;object-fit:cover;transition:transform .6s}.gallery figure:hover img{transform:scale(1.025)}.gallery .wide{grid-column:span 2}.gallery .wide img{height:650px}.gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:45px 24px 20px;background:linear-gradient(transparent,#000a);color:white;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.plans{padding:115px 7vw;background:white;display:grid;grid-template-columns:.65fr 1.35fr;gap:7vw;align-items:center}.plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.plan-grid figure{background:#f5f2ec;padding:15px}.plan-grid img{height:320px;object-fit:contain}.plan-grid figcaption{text-align:center;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;padding:12px}.contact{text-align:center;padding:130px 20px;background:var(--deep);color:white}.contact h2{font-size:clamp(3rem,6vw,6rem)}.contact p{color:#b9c6c1}.light{background:transparent;border:1px solid var(--brass)}footer{background:#061713;color:#aab8b3;padding:36px 6vw;display:flex;justify-content:space-between;align-items:center;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}footer .brand{color:white;text-transform:none}@media(max-width:760px){.nav{height:72px;padding:0 5vw}.brand{font-size:1.7rem}.nav nav a:not(.outline){display:none}.hero{min-height:620px}.hero-copy{left:7vw;bottom:12vh}.intro,.plans{grid-template-columns:1fr;padding:80px 7vw}.facts{gap:18px;flex-wrap:wrap}.feature{grid-template-columns:1fr}.feature img{height:420px}.feature div{padding:70px 7vw}.spaces{padding:80px 4vw}.gallery{grid-template-columns:1fr}.gallery .wide{grid-column:auto}.gallery img,.gallery .wide img{height:390px}.plan-grid{grid-template-columns:1fr}.plan-grid img{height:280px}footer{gap:18px;flex-direction:column}.contact{padding:90px 20px}}
