@import "https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;600;700;800&display=swap";
:root{--bg:#f8f5ef;--surface:#ffffffd1;--surface-strong:#fff;--text:#1f2937;--muted:#64707d;--primary:#8b5a2b;--primary-dark:#654321;--accent:#9b7b5d;--accent-soft:#f3eadf;--warning:#b91c1c;--warning-soft:#fff0f0;--border:#94a3b833;--shadow:0 16px 42px #3c2b191a;--radius-xl:28px;--radius-lg:22px;--radius-md:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:radial-gradient(circle at top left, #8b5a2b21, transparent 28%), radial-gradient(circle at top right, #9b7b5d1f, transparent 28%), linear-gradient(180deg, #fff 0%, var(--bg) 100%);margin:0;font-family:Kanit,Segoe UI,sans-serif}img{max-width:100%;display:block}a{color:inherit}main{position:relative;overflow:hidden}main:before,main:after{content:"";z-index:-1;filter:blur(16px);pointer-events:none;border-radius:999px;position:fixed;inset:auto}main:before{background:#8b5a2b1f;width:340px;height:340px;top:140px;left:-120px}main:after{background:#9b7b5d1f;width:300px;height:300px;bottom:60px;right:-120px}.container{width:min(1120px,100vw - 32px);margin:0 auto}.section{padding:84px 0;scroll-margin-top:100px}.hero{padding-top:126px}.hero-grid,.two-col{align-items:center;gap:28px;display:grid}.hero-grid{grid-template-columns:1.05fr .95fr}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.eyebrow,.section-label{border:1px solid var(--border);color:var(--primary-dark);letter-spacing:.01em;background:#ffffffb8;border-radius:999px;align-items:center;gap:8px;margin:0 0 16px;padding:8px 14px;font-size:.94rem;font-weight:600;display:inline-flex}.section-label.warning{color:var(--warning);background:var(--warning-soft);border-color:#b91c1c1f}h1,h2,h3,p{margin:0}h1{letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,4.6rem);line-height:1.04}h2{margin-bottom:12px;font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.12}h3{font-size:clamp(1.08rem,2vw,1.35rem);line-height:1.2}.hero-subtitle,.section-head p,.panel p,.room-card p,.location-note,.contact-card p{color:var(--muted);font-size:1.03rem;line-height:1.7}.hero-subtitle{max-width:58ch;margin-top:18px}.cta-row,.contact-links{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.btn{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg, var(--primary), #a47148);color:#fff;box-shadow:0 12px 28px #8b5a2b38}.btn-primary:hover{background:linear-gradient(135deg, var(--primary-dark), var(--primary))}.btn-secondary,.nav-cta{color:var(--primary-dark);background:#9b7b5d1f;border-color:#9b7b5d2e}.btn-secondary:hover,.nav-cta:hover{background:#9b7b5d2e}.hero-points{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.hero-points span,.utility-strip span,.contact-meta span{border:1px solid var(--border);color:#54463a;background:#ffffffb3;border-radius:999px;padding:9px 12px;font-size:.95rem}.hero-visual{gap:14px;display:grid}.hero-photo-card,.room-card,.panel,.gallery-card,.map-panel,.contact-card{background:var(--surface-strong);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.hero-photo-card{padding:14px;position:relative;overflow:hidden}.hero-photo{object-fit:cover;border-radius:calc(var(--radius-xl) - 8px);width:100%;height:420px}.hero-photo-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd6;border:1px solid #ffffff8c;border-radius:18px;max-width:220px;padding:14px 16px;position:absolute;bottom:26px;right:26px;box-shadow:0 14px 30px #0f172a1f}.hero-photo-badge strong{color:var(--primary-dark);margin-bottom:4px;display:block}.hero-photo-badge span{color:#475569;font-size:.93rem}.hero-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.hero-mini-grid img,.hero-mini-image{object-fit:cover;border:1px solid var(--border);border-radius:18px;width:100%;height:126px;box-shadow:0 10px 26px #0f172a17}.panel,.room-card,.facility-card,.rule-card,.contact-card{padding:24px}.panel-soft{background:linear-gradient(#fff,#f9f6f0)}.clean-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.clean-list li{color:var(--text);padding-left:28px;position:relative}.clean-list li:before{content:"";background:linear-gradient(135deg, var(--accent), #d2b49c);width:14px;height:14px;box-shadow:0 0 0 5px var(--accent-soft);border-radius:50%;position:absolute;top:11px;left:0}.section-head{max-width:720px;margin-bottom:24px}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.room-card{overflow:hidden}.room-image{object-fit:cover;border-radius:18px;width:100%;height:240px}.room-card-body{padding-top:18px}.room-card-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.room-card-header span{color:var(--accent);font-weight:700}.room-price{color:var(--primary-dark);margin-bottom:10px;font-size:2.1rem;font-weight:800;line-height:1}.facility-grid,.gallery-grid,.rules-grid{gap:16px;display:grid}.facility-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.facility-card{align-items:flex-start;gap:14px;display:flex}.facility-icon{width:44px;height:44px;color:var(--primary-dark);background:linear-gradient(135deg,#f7efe5,#fff8f0);border-radius:14px;flex:0 0 44px;place-items:center;font-weight:800;display:grid}.utility-strip{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.map-panel{padding:12px}.map-panel iframe{border-radius:calc(var(--radius-xl) - 10px);background:#e5e7eb;border:0;width:100%;height:100%;min-height:420px}.rules-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rule-card{background:linear-gradient(#fff8f8,#fff);border-color:#b91c1c29;align-items:center;gap:14px;display:flex}.rule-card span{width:34px;height:34px;color:var(--warning);background:#b91c1c1f;border-radius:999px;flex:0 0 34px;place-items:center;font-weight:800;display:grid}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-card{aspect-ratio:1;padding:10px;overflow:hidden}.gallery-image{object-fit:cover;border-radius:18px;width:100%;height:100%}.contact-wrap{justify-content:center;display:flex}.contact-card{text-align:center;width:min(760px,100%)}.contact-meta{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.top-nav-wrap{z-index:50;padding-top:12px;position:fixed;inset:0 0 auto}.top-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffc;border:1px solid #94a3b829;border-radius:999px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;box-shadow:0 10px 26px #0f172a14}.brand{color:var(--primary-dark);letter-spacing:.01em;font-weight:800;text-decoration:none}.top-nav nav{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.top-nav nav a{color:#314150;border-radius:999px;padding:8px 12px;font-weight:500;text-decoration:none}.top-nav nav a:hover{background:#d977061a}.nav-cta{border-radius:999px;padding:9px 16px;font-weight:700;text-decoration:none}.fade-in{animation:.8s both fade-up}.delay-1{animation-delay:.12s}.delay-2{animation-delay:.22s}.delay-3{animation-delay:.32s}.delay-4{animation-delay:.42s}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.hero-grid,.two-col,.facility-grid,.gallery-grid,.rules-grid,.room-grid{grid-template-columns:1fr 1fr}.facility-grid,.gallery-grid,.rules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.hero,.section{padding:70px 0}.hero-grid,.two-col,.room-grid,.facility-grid,.gallery-grid,.rules-grid{grid-template-columns:1fr}.hero-photo{height:320px}.hero-mini-grid img{height:110px}.map-panel iframe{min-height:320px}.top-nav{border-radius:22px;flex-direction:column;align-items:stretch}.top-nav nav{justify-content:flex-start}.top-nav-wrap{padding-inline:8px}}@media (max-width:560px){.container{width:min(100vw - 22px,1120px)}h1{font-size:clamp(2.1rem,12vw,3.2rem)}.panel,.room-card,.facility-card,.rule-card,.contact-card{padding:20px}.room-price{font-size:1.85rem}.contact-links,.cta-row{flex-direction:column}.btn,.nav-cta{width:100%}}

