:root{--forest:#0b2e26;--ink:#14211d;--cream:#f5f1e8;--paper:#fbfaf6;--amber:#e9a85c;--muted:#6f7a74;--line:rgba(11,46,38,.16);--shadow:0 30px 80px rgba(3,25,20,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select{font:inherit}.room-header{height:78px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(251,250,246,.94);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.room-brand{display:flex;align-items:center;gap:12px;font:700 18px Georgia,serif}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:white;font:700 23px Georgia,serif}.back-link{font-size:14px;font-weight:800}.room-hero{min-height:68vh;position:relative;display:flex;align-items:flex-end;padding:clamp(45px,7vw,100px);color:white;overflow:hidden}.room-hero>img,.room-hero:after{position:absolute;inset:0;width:100%;height:100%}.room-hero>img{object-fit:cover}.room-hero:after{content:"";background:linear-gradient(0deg,rgba(3,24,18,.88),rgba(3,24,18,.08) 72%)}.hero-copy{position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:800;color:#c7d88a;margin:0 0 14px}.hero-copy h1{font:500 clamp(54px,8vw,110px)/.95 Georgia,serif;letter-spacing:-.05em;margin:0}.hero-copy p{font-size:18px;color:rgba(255,255,255,.78);margin:18px 0 0}.room-layout{padding:90px clamp(20px,7vw,110px);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr);gap:clamp(45px,7vw,100px);align-items:start}.room-copy h2{font:500 clamp(38px,5vw,68px)/1.03 Georgia,serif;letter-spacing:-.04em;margin:0 0 22px}.lead{font-size:19px;color:var(--muted);max-width:720px}.facts{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.facts span{padding:9px 13px;border-radius:999px;background:var(--cream);font-size:13px;font-weight:700}.room-copy h3{font:500 28px Georgia,serif;margin:42px 0 16px}.features{padding:0;list-style:none;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.features li{padding:16px 8px 16px 0;border-bottom:1px solid var(--line);color:#45534d}.features li:before{content:"✓";color:#397152;font-weight:900;margin-right:10px}.long-stay{padding:16px 18px;background:var(--cream);border-radius:14px;font-weight:800}.booking-card{position:sticky;top:105px;background:white;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.price{padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:22px}.price strong,.price span{display:block}.price strong{font:500 34px Georgia,serif}.price span{color:var(--muted);font-size:12px}.booking-card label{display:block;color:var(--muted);font-size:12px;font-weight:800;margin:14px 0}.booking-card input,.booking-card select{display:block;width:100%;min-height:45px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink)}.booking-card button{width:100%;min-height:52px;border-radius:12px;border:0;background:var(--forest);color:white;font-weight:800;margin-top:18px;cursor:pointer}.booking-card .share{background:transparent;color:var(--ink);border:1px solid var(--line);margin-top:9px}.booking-note,#formMessage{font-size:12px;color:var(--muted);text-align:center}#formMessage.busy{padding:10px;border-radius:10px;background:#f8e8e3;color:#8c3325;font-weight:800}.gallery-section{padding:64px clamp(20px,7vw,110px) 90px;background:var(--cream)}.gallery-section h2{font:500 clamp(38px,5vw,68px)/1 Georgia,serif;letter-spacing:-.04em;margin:0 0 34px}.room-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.room-gallery button{height:300px;border:0;padding:0;border-radius:18px;overflow:hidden;background:var(--paper);cursor:zoom-in}.room-gallery button:first-child{grid-column:span 2;grid-row:span 2;height:610px}.room-gallery img{width:100%;height:100%;object-fit:cover;transition:.35s}.room-gallery button:hover img{transform:scale(1.025)}.room-footer{padding:50px clamp(20px,7vw,110px);display:flex;justify-content:space-between;gap:25px;background:#061a15;color:white}.room-footer p{color:rgba(255,255,255,.65);margin:6px 0 0}.room-footer a{font-weight:800}.lightbox{border:0;padding:0;max-width:1100px;width:calc(100% - 30px);border-radius:18px;background:#061a15;overflow:hidden}.lightbox::backdrop{background:rgba(2,20,15,.88);backdrop-filter:blur(8px)}.lightbox img{width:100%;height:min(88vh,820px);object-fit:contain}.lightbox-close{position:absolute;z-index:3;right:14px;top:14px;width:42px;height:42px;border:0;border-radius:50%;background:white;font-size:25px;cursor:pointer}.lightbox-arrow{position:absolute;z-index:2;top:50%;width:48px;height:48px;transform:translateY(-50%);border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(6,26,21,.72);color:white;font-size:21px;cursor:pointer}.lightbox-prev{left:16px}.lightbox-next{right:16px}.lightbox-counter{position:absolute;right:18px;bottom:16px;padding:7px 11px;border-radius:999px;background:rgba(6,26,21,.78);color:white;font-size:12px;font-weight:800}@media(max-width:820px){.room-layout{grid-template-columns:1fr}.booking-card{position:static}.room-gallery{grid-template-columns:1fr 1fr}.room-gallery button{height:220px}.room-gallery button:first-child{grid-column:1/3;height:430px}.room-footer{display:block}.room-footer a{display:inline-block;margin-top:18px}}@media(max-width:560px){.room-header{height:70px}.room-brand{font-size:16px}.back-link{font-size:12px}.room-hero{min-height:62vh;padding:46px 20px}.room-layout{padding:64px 20px}.features{grid-template-columns:1fr}.gallery-section{padding:38px 12px 62px}.room-gallery{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory}.room-gallery button,.room-gallery button:first-child{flex:0 0 84vw;height:330px;grid-column:auto;grid-row:auto;border-radius:14px;scroll-snap-align:center}.lightbox-arrow{width:42px;height:42px}.room-footer{padding:45px 20px}}
