:root{--primary:#1F3D2E;--primary-dark:#15291F;--primary-light:#2C5440;--accent:#C9A961;--accent-light:#DFC489;--ink:#1A1A1A;--ink-soft:#3A3A3A;--bg:#F7F2E8;--bg-warm:#EFE7D4;--white:#FFFFFF;--font-display:"Fraunces",Georgia,serif;--font-body:"Inter",-apple-system,sans-serif;--ease:cubic-bezier(.22,1,.36,1);--shadow-sm:0 4px 20px rgba(31,61,46,.08);--shadow-md:0 12px 40px rgba(31,61,46,.12);--shadow-lg:0 24px 60px rgba(31,61,46,.18)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);line-height:1.6;font-size:16px;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{max-width:1280px;margin:0 auto;padding:0 32px}.container-wide{max-width:1440px;margin:0 auto;padding:0 32px}.header{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 0;transition:all .4s var(--ease);background:#f7f2e8f5;backdrop-filter:blur(14px);box-shadow:var(--shadow-sm)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}.logo{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:.02em;color:var(--primary);line-height:1.1}.logo span{display:block;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-family:var(--font-body);font-weight:500;margin-top:4px}.nav{display:flex;gap:34px;align-items:center}.nav a{font-size:13px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);position:relative;transition:color .3s}.nav a:after{content:"";position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--accent);transition:width .3s var(--ease)}.nav a:hover{color:var(--primary)}.nav a:hover:after{width:100%}.nav-cta{background:var(--accent);color:var(--primary-dark)!important;padding:11px 22px;border-radius:2px;letter-spacing:.08em}.nav-cta:after{display:none!important}.nav-cta:hover{background:var(--accent-light)}.menu-toggle{display:none;background:none;border:none;color:var(--ink);cursor:pointer;padding:8px;font-size:22px}.page-hero{padding-top:130px;padding-bottom:40px;background:var(--bg-warm)}.breadcrumb{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:24px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.breadcrumb a{color:var(--primary);transition:color .3s}.breadcrumb a:hover{color:var(--accent)}.breadcrumb .sep{color:var(--accent);font-size:10px}.hero-head{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;margin-bottom:36px}.eyebrow{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:14px}.page-hero h1{font-family:var(--font-display);font-weight:400;font-size:clamp(38px,5vw,68px);line-height:1.04;color:var(--primary-dark);letter-spacing:-.01em}.page-hero h1 em{font-style:italic;color:var(--primary-light)}.meta-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.pill{font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:8px 16px;background:var(--white);color:var(--primary);border:1px solid rgba(31,61,46,.12);border-radius:100px;font-weight:500}.gallery-strip{display:grid;grid-template-columns:2fr 1fr;gap:14px;height:62vh;min-height:480px}.gallery-strip .main{position:relative;overflow:hidden;border-radius:4px}.gallery-strip .main img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.gallery-strip .main:hover img{transform:scale(1.04)}.gallery-strip .side{display:grid;grid-template-rows:1fr 1fr;gap:14px}.gallery-strip .side>div{position:relative;overflow:hidden;border-radius:4px;background:var(--primary-light)}.gallery-strip .side img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.gallery-strip .side>div:hover img{transform:scale(1.04)}.placeholder-art{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--accent);font-family:var(--font-display);font-size:22px;font-style:italic;letter-spacing:.04em;text-align:center;padding:20px;line-height:1.3;height:100%}.room-body{padding:90px 0 110px}.body-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:80px;align-items:start}.content h2{font-family:var(--font-display);font-weight:400;font-size:38px;line-height:1.15;color:var(--primary-dark);margin:48px 0 22px;letter-spacing:-.005em}.content h2:first-child{margin-top:0}.content .lead{font-family:var(--font-display);font-weight:300;font-size:24px;line-height:1.45;color:var(--ink-soft);margin-bottom:32px;font-style:italic}.content p{font-size:16px;line-height:1.8;color:var(--ink-soft);margin-bottom:18px}.content .divider{width:60px;height:1px;background:var(--accent);margin:40px 0}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;margin-top:24px}.amenity{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid rgba(31,61,46,.08);font-size:14px;color:var(--ink)}.amenity .check{flex:none;width:26px;height:26px;border-radius:50%;background:var(--primary);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.sidebar{position:sticky;top:110px}.booking-card{background:var(--white);border-radius:6px;padding:36px 32px;box-shadow:var(--shadow-md);border-top:3px solid var(--accent)}.bc-label{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin-bottom:14px}.bc-price{font-family:var(--font-display);font-weight:400;font-size:46px;color:var(--primary-dark);line-height:1;margin-bottom:8px}.bc-price small{font-size:14px;color:var(--ink-soft);font-family:var(--font-body);font-style:normal}.bc-note{font-size:13px;color:var(--ink-soft);margin-bottom:26px;line-height:1.5}.bc-specs{margin:26px 0;border-top:1px solid rgba(31,61,46,.1);border-bottom:1px solid rgba(31,61,46,.1);padding:10px 0}.bc-spec{display:flex;justify-content:space-between;padding:12px 0;font-size:14px;border-bottom:1px solid rgba(31,61,46,.06)}.bc-spec:last-child{border-bottom:none}.bc-spec span:first-child{color:var(--ink-soft);letter-spacing:.04em}.bc-spec span:last-child{color:var(--primary-dark);font-weight:600}.bc-cta{display:block;background:var(--primary);color:var(--white);text-align:center;padding:18px 24px;border-radius:3px;font-size:13px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;transition:all .35s var(--ease);margin-top:8px}.bc-cta:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.bc-cta.outline{background:transparent;color:var(--primary);border:1px solid var(--primary);margin-top:12px}.bc-cta.outline:hover{background:var(--primary);color:var(--white)}.bc-contact{margin-top:24px;padding-top:22px;border-top:1px solid rgba(31,61,46,.1);font-size:13px;color:var(--ink-soft);line-height:1.7;text-align:center}.bc-contact a{color:var(--primary);font-weight:500}.similar{padding:100px 0;background:var(--bg-warm)}.similar-head{text-align:center;margin-bottom:60px}.similar-head h2{font-family:var(--font-display);font-weight:400;font-size:clamp(32px,4vw,52px);color:var(--primary-dark);margin-top:10px}.similar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.room-card{background:var(--white);border-radius:4px;overflow:hidden;box-shadow:var(--shadow-sm);transition:all .5s var(--ease);display:flex;flex-direction:column}.room-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.room-card .art{height:240px;position:relative;overflow:hidden}.room-card .placeholder-art{height:100%}.room-card .body{padding:28px 26px 30px}.room-card h3{font-family:var(--font-display);font-weight:500;font-size:24px;color:var(--primary-dark);margin-bottom:10px}.room-card .specs{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:18px}.room-card .link{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-weight:600;display:inline-flex;align-items:center;gap:8px;transition:gap .3s}.room-card:hover .link{gap:14px}.footer{background:var(--primary-dark);color:#ffffffb3;padding:80px 0 30px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:50px;margin-bottom:60px}.footer h4{font-family:var(--font-display);color:var(--white);font-weight:500;font-size:20px;margin-bottom:22px;letter-spacing:.01em}.footer .brand-mark{font-family:var(--font-display);font-size:26px;color:var(--white);margin-bottom:14px;letter-spacing:.02em}.footer .brand-mark span{display:block;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-family:var(--font-body);margin-top:6px}.footer p{font-size:14px;line-height:1.8}.footer ul{list-style:none}.footer ul li{margin-bottom:11px}.footer ul a{font-size:14px;transition:color .3s}.footer ul a:hover{color:var(--accent)}.footer-bot{border-top:1px solid rgba(255,255,255,.1);padding-top:28px;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.06em}@media(max-width:1024px){.body-grid{grid-template-columns:1fr;gap:50px}.sidebar{position:static}.similar-grid{grid-template-columns:1fr 1fr}.hero-head{grid-template-columns:1fr}.gallery-strip{height:auto;grid-template-columns:1fr}.gallery-strip .main{height:50vh}.gallery-strip .side{grid-template-rows:none;grid-template-columns:1fr 1fr;height:30vh}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}}@media(max-width:680px){.container,.container-wide{padding:0 22px}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;padding:24px;gap:18px;box-shadow:var(--shadow-md)}.nav.open{display:flex}.menu-toggle{display:block}.page-hero{padding-top:100px}.amenities,.similar-grid,.footer-grid{grid-template-columns:1fr}.footer-bot{flex-direction:column;gap:12px;text-align:center}.booking-card{padding:28px 24px}}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.fade-in{animation:fadeUp .9s var(--ease) both}.d1{animation-delay:.1s}.d2{animation-delay:.2s}.d3{animation-delay:.3s}.d4{animation-delay:.4s}
