.home-hero{color:#fffaf2;background:#1f1b16;min-height:100vh;position:relative;overflow:hidden}.hero-image{object-fit:cover;z-index:0}.hero-overlay{z-index:1;background:linear-gradient(#14110d7a 0%,#14110d14 38%,#14110dc7 100%),linear-gradient(90deg,#14110d80 0%,#14110d1f 56%,#14110d59 100%);position:absolute;inset:0}.hero-fade-top,.hero-fade-bottom{z-index:2;pointer-events:none;height:180px;position:absolute;left:0;right:0}.hero-fade-top{background:linear-gradient(#14110d3d,#14110d00);top:0}.hero-fade-bottom{background:linear-gradient(#14110d00,#14110d8a);bottom:0}.hero-content-glow{display:none}.hero-content{z-index:3;text-align:left;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:end;gap:clamp(28px,7vw,118px);width:min(1180px,100vw - 40px);padding:0;display:grid;position:absolute;bottom:clamp(38px,7vh,86px);left:50%;transform:translate(-50%)}.hero-title-block,.hero-copy-block{min-width:0}.hero-eyebrow{align-items:center;gap:16px;margin-bottom:18px;display:flex}.hero-eyebrow span{background:#fffaf2b8;width:42px;height:1px}.hero-eyebrow p,.hero-subtitle{color:#fffaf2;letter-spacing:.28em;text-transform:uppercase;margin:0;font-size:clamp(.78rem,1.4vw,.95rem);font-weight:700}.hero-content h1{color:#fffaf2;letter-spacing:0;text-shadow:0 18px 50px #00000040;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(5.4rem,13vw,10.2rem);font-weight:400;line-height:.78}.hero-subtitle{color:#fffaf2;letter-spacing:0;text-transform:none;text-shadow:0 18px 50px #00000040;margin-top:6px;font-family:Georgia,Times New Roman,serif;font-size:clamp(4.6rem,10vw,8.6rem);font-style:italic;font-weight:300;line-height:.88}.hero-location{color:#fffaf2b8;letter-spacing:.24em;text-transform:uppercase;margin:clamp(24px,5vh,42px) 0 0;font-size:.72rem;font-weight:800}.hero-tagline{color:#fffaf2eb;text-shadow:0 8px 26px #00000038;max-width:470px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.06rem,1.7vw,1.3rem);line-height:1.55}.hero-actions{flex-wrap:wrap;justify-content:flex-start;gap:14px;margin-top:30px;display:flex}.hero-actions .btn.primary{color:var(--ink);background:#fffaf2}.hero-actions .btn.secondary{color:#fffaf2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffaf214;border-color:#fffaf2a8}.home-about-section{background:linear-gradient(#e7ece3f2,#f4f6f1fa),#e7ece3;padding:6rem 0;position:relative;overflow:hidden}.home-about-container{gap:3.5rem;display:grid}.home-divider{align-items:center;gap:1.5rem;width:min(400px,100%);margin:0 auto;display:flex}.home-divider span{background:#6b5b4540;flex:1;height:1px}.home-divider p{color:#96845e;letter-spacing:.28em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:.75rem;font-weight:800}.about-grid{grid-template-columns:1fr 1.2fr;align-items:stretch;display:grid}.about-media{min-height:520px;position:relative;overflow:hidden}.about-media img,.room-image img,.experience-band img{object-fit:cover}.about-media img{filter:brightness(.88)saturate(.92);transition:transform .8s,filter .5s}.about-media:hover img{filter:brightness(.96)saturate(1.05);transform:scale(1.04)}.about-copy-panel{background:linear-gradient(145deg,#ffffffe6,#fffaf4c2),#ffffffc7;border-left:1px solid #6b5b4526;flex-direction:column;justify-content:center;padding:3rem;display:flex;box-shadow:inset 0 1px #ffffffd1}.feature-row{flex-wrap:wrap;gap:12px;margin:28px 0;display:flex}.feature-row span{border-radius:var(--radius-sm);color:var(--muted);background:#ffffffb8;border:1px solid #6b5b452e;align-items:center;gap:8px;padding:10px 12px;font-size:.9rem;transition:border-color .16s,background .16s,color .16s,transform .16s;display:inline-flex}.feature-row span:hover{color:var(--ink);background:#fff;border-color:#3f5b3542;transform:translateY(-1px)}.text-link{color:var(--forest);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:8px;font-size:.78rem;font-weight:800;display:inline-flex}.section-head{justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px;display:flex}.room-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.room-card{border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform .22s var(--ease-out), box-shadow .22s ease, border-color .22s ease;background:linear-gradient(#fff,#fffaf4),#fff;border:1px solid #6b5b452e;position:relative;overflow:hidden}.room-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow);transform:translateY(-4px)}.room-image{aspect-ratio:4/4.4;position:relative;overflow:hidden}.room-image img{transition:transform .7s}.room-card:hover .room-image img{transform:scale(1.05)}.room-body{background:linear-gradient(#fffffffa,#fffaf4e0),#fff;padding:22px}.room-body p{color:#96845e;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.76rem;font-weight:800}.room-body h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.75rem;font-weight:400}.room-meta{color:#5c4d3d;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:18px 0 22px;font-size:.92rem;display:flex}.room-meta span{align-items:center;gap:7px;display:inline-flex}.experience-band{color:#fff;align-items:center;min-height:620px;display:flex;position:relative;overflow:hidden}.experience-overlay{background:linear-gradient(90deg,#2c2416b8,#2c241642);position:absolute;inset:0}.experience-content{z-index:1;position:relative}.experience-content h2{max-width:650px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,7vw,7rem);font-weight:400;line-height:.9}.experience-content p:not(.eyebrow){color:#ffffffc7;max-width:560px;margin:22px 0 32px;line-height:1.7}.booking-strip{background:linear-gradient(90deg,#e7ece3fa,#fffaf4e0),#e7ece3;padding:64px 0}.booking-strip-inner{justify-content:space-between;align-items:center;gap:24px;display:flex}.booking-strip h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.7rem);font-weight:400}.home-faq-section{background:#fffaf2}.home-faq-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(34px,6vw,76px);display:grid}.home-faq-intro{position:sticky;top:110px}.home-faq-intro .text-link{margin-top:20px}.home-faq-list{border-top:1px solid #6b5b452e}.home-faq-item{border-bottom:1px solid #6b5b452e;transition:background .18s}.home-faq-item:hover{background:#ffffff5c}.home-faq-item summary{color:var(--ink);cursor:pointer;padding:22px 44px 22px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.35;list-style:none;display:block;position:relative}.home-faq-item summary::-webkit-details-marker{display:none}.home-faq-item summary:after{content:"+";color:var(--gold-dark);font-family:var(--font-jost), ui-sans-serif, system-ui, sans-serif;font-size:1.3rem;font-weight:400;position:absolute;top:22px;right:0}.home-faq-item[open] summary:after{content:"-"}.home-faq-item p{max-width:680px;color:var(--muted);animation:soft-rise .22s var(--ease-out) both;margin:-6px 0 22px;font-size:1rem;line-height:1.8}@media (max-width:900px){.home-hero{min-height:650px}.hero-content{grid-template-columns:1fr;align-items:start;gap:20px;bottom:28px}.hero-content h1{font-size:clamp(3.35rem,16vw,5.8rem)}.hero-subtitle{font-size:clamp(2.85rem,13vw,5rem)}.hero-location{margin-top:18px}.about-grid,.room-grid,.home-faq-grid{grid-template-columns:1fr}.home-faq-intro{position:static}.about-media{min-height:300px}.about-copy-panel{border-top:1px solid #6b5b4526;border-left:0;padding:2rem 1.5rem}.section-head,.booking-strip-inner{display:grid}.booking-strip-inner .btn{width:100%}}@media (max-width:640px){.home-hero{min-height:560px}.hero-content{width:min(100% - 28px,520px);bottom:22px}.hero-eyebrow span{width:34px}.hero-actions{grid-template-columns:1fr;gap:10px;width:100%;margin-top:20px;display:grid}.hero-actions .btn{justify-content:center;width:100%}.hero-location{font-size:.66rem;line-height:1.6}.hero-tagline{font-size:.98rem;line-height:1.42}.home-about-section{padding:4rem 0}.home-about-container{gap:2rem}.home-divider{gap:1rem}.feature-row{gap:8px;margin:18px 0}.feature-row span{padding:8px 10px;font-size:.82rem}.room-grid{gap:16px}.room-image{aspect-ratio:4/3.2}.room-body{padding:16px}.room-body h3{font-size:1.38rem}.room-meta{margin:12px 0 16px;font-size:.84rem}.experience-band{min-height:430px}.experience-content h2{font-size:clamp(2.4rem,12vw,3.8rem)}.experience-content p:not(.eyebrow){margin:16px 0 22px;line-height:1.55}.booking-strip{padding:42px 0}.home-faq-item summary{padding:16px 36px 16px 0;font-size:1.05rem}.home-faq-item summary:after{top:14px}.home-faq-item p{margin:-2px 0 16px;font-size:.92rem;line-height:1.62}}@media (max-width:480px){.about-copy-panel{padding:1.5rem 1.2rem}}
.social-proof-section{background:#fffaf2;overflow:hidden}.social-proof-head{justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px;display:flex}.social-proof-actions{align-items:center;gap:14px;display:flex}.social-proof-actions .btn,.social-proof-actions .text-link{flex:none;align-self:start;gap:8px;margin-top:18px}.review-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.review-card{cursor:default;background:#fff;border:1px solid #6b5b4529;align-content:space-between;gap:0;min-height:250px;padding:26px;transition:transform .22s,box-shadow .22s;display:grid}.review-card:hover{transform:translateY(-5px)scale(1.02);box-shadow:0 20px 48px #3a302421}.review-card-stars{color:var(--gold);letter-spacing:2px;margin-bottom:16px;font-size:1.1rem}.review-card p{color:var(--ink);flex:1;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1rem;font-style:italic;line-height:1.7}.review-card-author{color:var(--forest);letter-spacing:.06em;text-transform:uppercase;border-top:1px solid #6b5b451f;margin-top:22px;padding-top:16px;font-size:.88rem;font-weight:800}.instagram-panel{justify-content:space-between;align-items:center;gap:18px;margin-top:clamp(54px,8vw,92px);display:flex}.instagram-panel h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,4.5vw,4.1rem);font-weight:400;line-height:1}.instagram-panel h3 em{color:var(--clay);font-style:italic;font-weight:300}.instagram-panel .btn,.instagram-panel .text-link{align-self:start;gap:8px;margin-top:18px}.instagram-reel-strip{margin-top:34px;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1180px;margin-inline:auto;padding-inline:20px;display:grid;transform:translate(0)}.instagram-reel-strip a{aspect-ratio:9/14;outline-offset:4px;background:#101010;border:1px solid #6b5b4529;position:relative;overflow:hidden}.instagram-reel-strip img,.instagram-reel-strip video{object-fit:cover;opacity:.72;width:100%;height:100%;transition:opacity .26s,transform .62s;transform:scale(1)}.instagram-reel-strip a:hover video,.instagram-reel-strip a:focus-visible video,.instagram-reel-strip a.active video{opacity:1;transform:scale(1.04)}.instagram-reel-placeholder{width:100%;height:100%;color:var(--forest);text-align:center;background:linear-gradient(#fffaf2db,#e2cea6eb),#e2cea6;align-content:center;place-items:center;gap:12px;padding:20px;display:grid}.instagram-reel-placeholder strong{font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:400}.instagram-play-icon{color:#fff;background:#14110dc7;border-radius:999px;place-items:center;width:46px;height:46px;transition:transform .22s,background .22s;display:grid;position:absolute;bottom:16px;right:16px;box-shadow:0 12px 28px #00000040}.instagram-reel-strip a:hover .instagram-play-icon,.instagram-reel-strip a:focus-visible .instagram-play-icon,.instagram-reel-strip a.active .instagram-play-icon{background:#96845eeb;transform:scale(1.08)}.social-proof-empty{text-align:center;max-width:760px}.social-proof-empty .btn{gap:8px;margin-top:24px}@media (max-width:900px){.social-proof-head,.instagram-panel,.social-proof-actions{justify-items:start;display:grid}.review-card-grid,.instagram-reel-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.social-proof-head{margin-bottom:18px}.review-card-grid{grid-template-columns:1fr}.review-card{min-height:auto;padding:18px}.review-card-stars{margin-bottom:10px;font-size:.95rem}.review-card p{font-size:.92rem;line-height:1.55}.review-card-author{margin-top:14px;padding-top:12px;font-size:.76rem}.instagram-panel{margin-top:34px}.instagram-panel h3{font-size:2rem}.instagram-reel-strip{scroll-snap-type:x mandatory;scrollbar-width:none;gap:10px;margin-top:22px;display:flex;overflow-x:auto}.instagram-reel-strip::-webkit-scrollbar{display:none}.instagram-reel-strip a{scroll-snap-align:start;flex:0 0 76vw}}
