:root{--pine-950:#10221b;--pine-900:#162d24;--pine-800:#21483a;--pine-700:#326652;--moss:#829483;--cream:#faf8f2;--paper:#fffefb;--sand:#e7dfd0;--gold:#b78948;--gold-light:#d8b77e;--ink:#1d2c26;--muted:#68736e;--white:#fff;--danger:#9d3939;--font-body:"Aptos","Segoe UI",Arial,sans-serif;--font-heading:"Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--shadow:0 18px 55px rgba(16,34,27,.12);--shell:min(1240px,calc(100% - 3rem));--ease:cubic-bezier(.2,.7,.2,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--font-body);font-size:16px;line-height:1.68;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{width:var(--shell);margin-inline:auto}.skip-link{position:fixed;top:-100px;left:1rem;z-index:1000;padding:.75rem 1rem;color:#fff;background:#000}.skip-link:focus{top:1rem}.eyebrow{margin:0 0 .75rem;color:var(--gold);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.5rem;min-height:52px;padding:.75rem 1.25rem;border:1px solid var(--pine-800);border-radius:2px;color:#fff;background:var(--pine-800);font-size:.76rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;transition:background .25s,border .25s,transform .25s}.button:hover{border-color:var(--pine-950);background:var(--pine-950);transform:translateY(-2px)}.button--light{border-color:var(--cream);color:var(--pine-950);background:var(--cream)}.button--light:hover{border-color:#fff;color:var(--pine-950);background:#fff}.button--ghost{border-color:#ccd5cf;color:var(--pine-800);background:transparent}.button--full{width:100%}.text-link{display:inline-block;margin-top:1.5rem;color:var(--pine-700);font-size:.9rem;font-weight:700}

/* Header */
.site-header{position:sticky;top:0;z-index:100;height:82px;color:#fff;background:rgba(16,34,27,.97);box-shadow:0 6px 24px rgba(0,0,0,.13);backdrop-filter:blur(14px)}.site-header__inner{display:flex;height:100%;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:.75rem;flex:none}.brand__mountain{display:grid;width:42px;height:34px;color:var(--gold-light);font-family:Georgia,serif;font-size:3.1rem;line-height:.5;place-items:center;transform:scaleX(1.5)}.brand strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:500;line-height:1.15;letter-spacing:.03em}.brand small{display:block;margin-top:.2rem;color:rgba(255,255,255,.56);font-size:.56rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.site-menu{display:flex;align-items:center;gap:.1rem}.site-menu>a,.nav-dropdown>button,.site-menu form button{padding:.8rem .72rem;border:0;color:rgba(255,255,255,.8);background:transparent;font-size:.67rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;transition:color .2s}.site-menu>a:hover,.nav-dropdown>button:hover,.site-menu form button:hover{color:var(--gold-light)}.site-menu .nav-cta{margin-left:.45rem;padding:.78rem 1rem;border:1px solid rgba(216,183,126,.55);color:#fff}.site-menu .nav-cta:hover{border-color:var(--gold-light);color:#fff;background:rgba(183,137,72,.14)}.nav-dropdown{position:relative}.nav-dropdown>button span{margin-left:.25rem;color:var(--gold-light)}.nav-dropdown>div{position:absolute;top:calc(100% + .65rem);left:0;display:grid;min-width:190px;padding:.55rem;visibility:hidden;border-top:2px solid var(--gold);background:#fff;box-shadow:var(--shadow);opacity:0;transform:translateY(-5px);transition:.2s}.nav-dropdown:hover>div,.nav-dropdown:focus-within>div,.nav-dropdown.is-open>div{visibility:visible;opacity:1;transform:none}.nav-dropdown>div a{padding:.65rem .75rem;color:var(--pine-900);font-family:Georgia,serif;font-size:1rem}.nav-dropdown>div a:hover{background:#f3efe6}.menu-toggle{display:none;border:0;color:#fff;background:none}.menu-toggle span{display:block;width:25px;height:1px;margin:5px;background:#fff}.menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* Hero */
.hero{position:relative;height:clamp(590px,76vh,820px);overflow:hidden;color:#fff;background:var(--pine-950)}.hero__slide{position:absolute;inset:0;visibility:hidden;background-image:linear-gradient(90deg,rgba(7,22,16,.82) 0,rgba(7,22,16,.46) 43%,rgba(7,22,16,.1) 75%),linear-gradient(0deg,rgba(7,22,16,.42),transparent 45%),var(--hero-image);background-position:center;background-size:cover;opacity:0;transform:scale(1.025);transition:opacity .9s var(--ease),transform 6s linear}.hero__slide.is-active{visibility:visible;opacity:1;transform:scale(1)}.hero__content{position:relative;display:flex;height:100%;padding-top:8vh;padding-bottom:8vh;justify-content:center;flex-direction:column}.hero__content::before{position:absolute;top:50%;left:-3rem;width:1px;height:160px;content:"";background:linear-gradient(transparent,var(--gold),transparent);transform:translateY(-50%)}.hero__content h2{max-width:720px;margin:0 0 1.2rem;font-family:Georgia,"Times New Roman",serif;font-size:clamp(4.2rem,7.5vw,7.6rem);font-weight:400;line-height:.91;letter-spacing:-.055em;text-wrap:balance}.hero__content>p:last-child{max-width:540px;margin:0;color:rgba(255,255,255,.8);font-size:1.03rem}.hero__controls{position:absolute;right:0;bottom:2rem;left:0;display:flex;align-items:center;gap:1.1rem}.hero__arrow{display:grid;width:40px;height:40px;border:1px solid rgba(255,255,255,.28);border-radius:50%;color:#fff;background:rgba(16,34,27,.22);place-items:center;transition:.2s}.hero__arrow:hover{border-color:var(--gold-light);background:var(--gold)}.hero__dots{display:flex;gap:.5rem}.hero__dots button{width:28px;height:2px;padding:0;border:0;background:rgba(255,255,255,.42)}.hero__dots button.is-active{background:var(--gold-light)}

/* Public content */
.site-main{overflow:hidden}.content-section{padding:clamp(4.5rem,8vw,8rem) 0}.content-section--home{padding-bottom:4.5rem}.rich-content{font-size:1.04rem}.rich-content>h1:first-child{max-width:980px;margin:0 0 2.3rem;color:var(--pine-900);font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,5.5vw,5.8rem);font-weight:400;line-height:1.04;letter-spacing:-.045em;text-wrap:balance}.rich-content>h1:first-child::after,.section-heading h2::after{display:block;width:56px;height:2px;margin-top:1.2rem;content:"";background:var(--gold)}.rich-content h2{margin:3rem 0 1rem;color:var(--pine-800);font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.6vw,3.7rem);font-weight:400;line-height:1.1}.rich-content h3{margin:2rem 0 .6rem;font-family:Georgia,serif;font-size:1.55rem;font-weight:500}.rich-content p,.rich-content ul,.rich-content table{max-width:860px}.rich-content .lead{max-width:960px;color:#42524b;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.55}.rich-content li{margin:.4rem 0}.rich-content hr{height:1px;margin:3rem 0;border:0;background:var(--sand)}.rich-content table{width:100%;border-collapse:collapse}.rich-content td{padding:.8rem;border-bottom:1px solid var(--sand)}.rich-content iframe{max-width:100%;border:0}.rich-content img{height:auto;border-radius:3px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(3rem,7vw,7rem);align-items:start}.stay-aside{position:sticky;top:110px;display:grid;gap:1.2rem}.stay-aside>img{width:150px;margin:auto}.aside-card,.contact-card{padding:2rem;border-top:3px solid var(--gold);background:#fff;box-shadow:var(--shadow)}.aside-card h2,.contact-card h2{margin:.25rem 0 1rem;font-family:Georgia,serif;font-size:2.1rem;font-weight:400}.aside-card a{color:var(--pine-700);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.content-layout--contact{grid-template-columns:minmax(0,1fr) 360px}.contact-card{display:grid;gap:.35rem}.contact-card>a:not(.button){display:grid;padding:.8rem 0;border-bottom:1px solid var(--sand);font-family:Georgia,serif;font-size:1.12rem}.contact-card>a span{color:var(--muted);font-family:"Segoe UI",sans-serif;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}

/* Legacy content cards */
.card-container{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem!important;margin:2rem 0 5rem}.mistycard{width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;perspective:none!important}.card-inner{height:auto!important;transform:none!important}.mistycard:hover .card-inner{transform:none!important}.card-front,.card-back{position:relative!important;display:flex!important;width:100%!important;height:auto!important;padding:1.35rem!important;border:1px solid rgba(183,137,72,.12);border-radius:4px;background:#fff!important;box-shadow:var(--shadow);backface-visibility:visible!important;transform:none!important;flex-direction:column}.card-front img{width:100%;height:260px!important;margin-bottom:1.25rem;border-radius:2px;object-fit:cover}.card-front h1,.card-front h2,.card-front h3{margin:.5rem 0 1rem;font-family:Georgia,serif;font-size:2.2rem}.card-back{margin-top:.5rem;color:#fff!important;background:var(--pine-800)!important}.custom-button{display:inline-flex;padding:.7rem 1rem;border:1px solid var(--gold-light);color:#fff;background:transparent;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

/* Showcases */
.showcase{padding:3.5rem 0 8rem}.section-heading{max-width:760px;margin-bottom:2.5rem}.section-heading h2{margin:.2rem 0 1rem;color:var(--pine-900);font-family:Georgia,serif;font-size:clamp(2.8rem,5vw,5rem);font-weight:400;line-height:1.05;letter-spacing:-.04em}.section-heading>p:last-child{color:var(--muted)}.stay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.stay-card{overflow:hidden;background:#fff;box-shadow:var(--shadow);transition:transform .35s var(--ease),box-shadow .35s}.stay-card:hover{box-shadow:0 25px 70px rgba(16,34,27,.19);transform:translateY(-6px)}.stay-card img{width:100%;height:360px;object-fit:cover;transition:transform .7s var(--ease)}.stay-card:hover img{transform:scale(1.025)}.stay-card>div{padding:2rem}.stay-card span{color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.stay-card h3{margin:.5rem 0 .65rem;font-family:Georgia,serif;font-size:2.7rem;font-weight:400}.stay-card p{color:var(--muted)}.stay-card b{color:var(--pine-700);font-size:.73rem;letter-spacing:.09em;text-transform:uppercase}.feature-strip{padding:4.5rem 0;color:#fff;background:var(--pine-900)}.feature-strip>.shell{display:grid;grid-template-columns:repeat(3,1fr)}.feature-strip>.shell>div{padding:1rem 3.5rem;border-left:1px solid rgba(255,255,255,.15)}.feature-strip>.shell>div:first-child{padding-left:0;border:0}.feature-strip span{color:var(--gold-light);font-family:Georgia,serif}.feature-strip h3{margin:.5rem 0;font-family:Georgia,serif;font-size:1.7rem;font-weight:400}.feature-strip p{margin:0;color:rgba(255,255,255,.62);font-size:.9rem}

/* Gallery and lightbox */
.gallery-section{padding:1rem 0 7rem}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.gallery-card{position:relative;aspect-ratio:4/3;overflow:hidden;padding:0;border:0;border-radius:2px;background:var(--sand)}.gallery-card:nth-child(7n+1){grid-column:span 2;grid-row:span 2}.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease),filter .3s}.gallery-card span{position:absolute;right:.7rem;bottom:.7rem;padding:.35rem .55rem;color:#fff;background:rgba(16,34,27,.8);font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:0;transition:.25s}.gallery-card:hover img{filter:brightness(.82);transform:scale(1.045)}.gallery-card:hover span,.gallery-card:focus span{opacity:1}.lightbox{width:100vw;max-width:none;height:100vh;max-height:none;padding:0;border:0;color:#fff;background:rgba(6,15,11,.96)}.lightbox[open]{display:grid;grid-template-columns:80px 1fr 80px;align-items:center}.lightbox::backdrop{background:#07120e}.lightbox figure{display:grid;max-width:calc(100vw - 180px);max-height:90vh;margin:auto;justify-items:center}.lightbox figure img{max-width:100%;max-height:82vh;object-fit:contain}.lightbox figcaption{margin-top:1rem;color:rgba(255,255,255,.72);font-size:.9rem}.lightbox__close{position:fixed;top:1rem;right:1rem;z-index:2;width:46px;height:46px;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;background:transparent;font-size:1.8rem}.lightbox__nav{width:48px;height:48px;margin:auto;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;background:transparent}.lightbox__nav:hover,.lightbox__close:hover{border-color:var(--gold);background:var(--gold)}

/* Booking */
.booking-page{display:grid;min-height:calc(100vh - 82px);grid-template-columns:minmax(340px,42%) 1fr}.booking-page__image{position:relative;display:flex;min-height:100%;padding:clamp(2rem,6vw,7rem);color:#fff;background:linear-gradient(0deg,rgba(10,28,20,.76),rgba(10,28,20,.15)),url('/images/sliders/hills.jpg') center/cover;align-items:flex-end}.booking-page__image h1{margin:.2rem 0 1rem;font-family:Georgia,serif;font-size:clamp(3.5rem,6vw,6rem);font-weight:400;line-height:.95;letter-spacing:-.05em}.booking-page__image p:last-child{max-width:430px;color:rgba(255,255,255,.75)}.booking-page__form{display:flex;padding:clamp(3rem,7vw,7rem);background:#fff;align-items:center}.booking-page__form>form,.success-panel{width:min(720px,100%)}.booking-page__form h1,.success-panel h1{margin:.2rem 0 2rem;font-family:Georgia,serif;font-size:clamp(3rem,5vw,5rem);font-weight:400;line-height:1}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.field{display:grid;gap:.35rem;margin-bottom:1rem}.field>span:first-child{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.field input,.field select,.field textarea{width:100%;min-height:50px;padding:.75rem .85rem;border:1px solid #cfd8d2;border-radius:2px;color:var(--ink);background:#fff;outline:none;transition:.2s}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(183,137,72,.13)}.field>span.field-validation-error{color:var(--danger);font-size:.76rem}.field small{color:var(--muted);font-size:.72rem}.field--wide{grid-column:1/-1}.form-note{color:var(--muted);font-size:.75rem;text-align:center}.hp-field{position:absolute;left:-10000px}.validation{margin-bottom:1rem;color:var(--danger);font-size:.85rem}.validation ul{margin:0;padding-left:1rem}.success-panel>span{display:grid;width:64px;height:64px;margin-bottom:2rem;border-radius:50%;color:#fff;background:var(--pine-700);font-size:1.5rem;place-items:center}

/* Booking band and footer */
.booking-band{padding:4.5rem 0;color:#fff;background:var(--pine-800)}.booking-band>.shell{display:flex;align-items:center;justify-content:space-between;gap:2rem}.booking-band h2{max-width:780px;margin:.25rem 0;font-family:Georgia,serif;font-size:clamp(2.2rem,4.5vw,4.2rem);font-weight:400;line-height:1.08;letter-spacing:-.035em}.site-footer{padding:5rem 0 1.5rem;color:rgba(255,255,255,.68);background:var(--pine-950)}.site-footer__grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:4rem}.site-footer__grid>div{display:flex;align-items:flex-start;flex-direction:column}.brand--footer{margin-bottom:1.3rem;color:#fff}.site-footer__grid>div:first-child p{max-width:330px}.site-footer h2{margin:0 0 1.2rem;color:#fff;font-family:Georgia,serif;font-size:1.25rem;font-weight:400}.site-footer__grid>div:not(:first-child) a{padding:.22rem 0}.site-footer a:hover{color:var(--gold-light)}.site-footer__bottom{display:flex;margin-top:4rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.12);justify-content:space-between;font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}

/* Admin */
.admin-body{background:#f2f4f1}.admin-main{min-height:calc(100vh - 82px);padding-top:4rem;padding-bottom:6rem}.admin-heading{display:flex;margin-bottom:2.5rem;align-items:flex-end;justify-content:space-between;gap:2rem}.admin-heading h1{margin:.2rem 0 .5rem;font-family:Georgia,serif;font-size:clamp(2.8rem,5vw,4.8rem);font-weight:400;line-height:1}.admin-heading p:last-child{margin:0;color:var(--muted)}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.admin-action{display:grid;padding:2rem;border:1px solid #dfe5e1;background:#fff;box-shadow:0 8px 30px rgba(16,34,27,.06);grid-template-columns:55px 1fr;transition:.25s}.admin-action:hover{border-color:var(--gold);box-shadow:var(--shadow);transform:translateY(-3px)}.admin-action>span{color:var(--gold);font-family:Georgia,serif;font-size:1.25rem}.admin-action h2{margin:0;font-family:Georgia,serif;font-size:2rem;font-weight:400}.admin-action p{color:var(--muted)}.admin-action b{color:var(--pine-700);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.admin-status{display:flex;margin-top:1.5rem;padding:1.5rem 2rem;background:#fff;align-items:center;gap:1rem}.admin-status h2{margin:0;font-size:1rem}.admin-status p{margin:0;color:var(--muted);font-size:.85rem}.status-dot{width:12px;height:12px;border-radius:50%;background:#c44}.status-dot.is-good{background:#4a9b65}.notice{margin-bottom:1.5rem;padding:1rem 1.2rem;border-left:3px solid;background:#fff}.notice--success{border-color:#4a9b65}.notice--error{border-color:var(--danger);color:var(--danger)}.admin-editor{display:grid;overflow:hidden;border:1px solid #dfe5e1;background:#fff;grid-template-columns:280px 1fr}.admin-editor>aside{padding:1rem;background:var(--pine-900)}.admin-editor>aside h2{padding:.5rem .7rem;color:#fff;font-family:Georgia,serif;font-weight:400}.admin-editor>aside a{display:grid;padding:.75rem;border-left:2px solid transparent;color:rgba(255,255,255,.72)}.admin-editor>aside a:hover,.admin-editor>aside a.is-active{border-color:var(--gold);color:#fff;background:rgba(255,255,255,.06)}.admin-editor>aside small{font-size:.7rem;opacity:.6}.admin-editor>form{padding:2.5rem}.code-editor{font-family:Consolas,"Courier New",monospace;font-size:.84rem;line-height:1.55}.editor-actions{display:flex;gap:.75rem}.gallery-admin-layout{display:grid;grid-template-columns:360px 1fr;gap:2rem;align-items:start}.upload-card{position:sticky;top:110px;padding:2rem;background:#fff;box-shadow:var(--shadow)}.upload-card h2{margin:.2rem 0 1.5rem;font-family:Georgia,serif;font-size:2rem;font-weight:400}.upload-drop{display:grid;margin-bottom:1.2rem;padding:1.4rem;border:1px dashed #aab8af;background:#f7f8f5;text-align:center}.upload-drop input{max-width:100%;margin-bottom:.7rem}.upload-drop span{font-weight:700}.upload-drop small{color:var(--muted)}.gallery-manager{padding:1.5rem;background:#fff}.gallery-filter{display:flex;margin-bottom:1.2rem;align-items:end;justify-content:space-between}.gallery-filter .field{min-width:240px;margin:0}.gallery-filter>span{color:var(--muted);font-size:.8rem}.admin-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.admin-gallery-grid article{overflow:hidden;border:1px solid #e0e5e1;background:#fff}.admin-gallery-grid article>img{width:100%;aspect-ratio:4/3;object-fit:cover}.admin-gallery-grid article>div{padding:.7rem}.admin-gallery-grid p{height:2.8em;margin:0 0 .5rem;overflow:hidden;font-size:.78rem}.admin-gallery-grid button{padding:0;border:0;color:var(--danger);background:none;font-size:.7rem;font-weight:800;text-transform:uppercase}.login-page{display:grid;min-height:calc(100vh - 82px);padding:4rem 1.5rem;background:linear-gradient(90deg,rgba(16,34,27,.93),rgba(16,34,27,.55)),url('/images/sliders/hills.jpg') center/cover;place-items:center}.login-card{width:min(480px,100%);padding:2.5rem;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.25)}.brand--dark{margin-bottom:2.5rem;color:var(--pine-900)}.brand--dark small{color:var(--muted)}.login-card h1{margin:.2rem 0 .5rem;font-family:Georgia,serif;font-size:3rem;font-weight:400}.login-card>p:not(.eyebrow){color:var(--muted)}

@media(max-width:1100px){:root{--shell:min(100% - 2rem,1240px)}.site-menu>a,.nav-dropdown>button,.site-menu form button{padding-inline:.45rem;font-size:.61rem}.brand strong{font-size:1.1rem}.brand__mountain{width:34px}.site-footer__grid{gap:2rem}.gallery-grid{grid-template-columns:repeat(3,1fr)}.admin-gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.site-header{height:70px}.menu-toggle{display:block}.site-menu{position:fixed;top:70px;right:0;bottom:0;display:flex;width:min(390px,100%);padding:2rem;visibility:hidden;background:var(--pine-950);box-shadow:-20px 0 50px rgba(0,0,0,.25);opacity:0;transform:translateX(100%);align-items:stretch;flex-direction:column;transition:.3s var(--ease)}.site-menu.is-open{visibility:visible;opacity:1;transform:none}.site-menu>a,.nav-dropdown>button,.site-menu form button{width:100%;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.78rem;text-align:left}.site-menu .nav-cta{margin:.8rem 0 0;padding:1rem}.nav-dropdown>div{position:static;display:none;visibility:visible;margin-bottom:.5rem;border:0;background:rgba(255,255,255,.06);box-shadow:none;opacity:1;transform:none}.nav-dropdown.is-open>div{display:grid}.nav-dropdown>div a{color:#fff}.hero{height:660px}.hero__content::before{display:none}.content-layout,.content-layout--contact{grid-template-columns:1fr}.stay-aside{position:static;grid-template-columns:1fr 150px;align-items:center}.feature-strip>.shell{grid-template-columns:1fr}.feature-strip>.shell>div,.feature-strip>.shell>div:first-child{padding:1.5rem 0;border:0;border-top:1px solid rgba(255,255,255,.15)}.site-footer__grid{grid-template-columns:repeat(2,1fr)}.booking-page{grid-template-columns:1fr}.booking-page__image{min-height:430px}.gallery-admin-layout{grid-template-columns:1fr}.upload-card{position:static}.admin-editor{grid-template-columns:1fr}.admin-editor>aside{display:flex;overflow-x:auto}.admin-editor>aside h2{display:none}.admin-editor>aside a{min-width:170px}.admin-grid{grid-template-columns:1fr}}
@media(max-width:650px){:root{--shell:calc(100% - 2rem)}body{font-size:16px}.brand small{display:none}.hero{height:560px}.hero__content{padding-top:3rem}.hero__content h2{font-size:clamp(3.4rem,16vw,5rem)}.hero__content>p:last-child{font-size:.92rem}.content-section{padding:4.5rem 0}.rich-content>h1:first-child{font-size:3rem}.card-container,.stay-grid{grid-template-columns:1fr}.card-front img{height:220px!important}.showcase{padding-bottom:5rem}.stay-card img{height:270px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.6rem}.gallery-card:nth-child(7n+1){grid-column:auto;grid-row:auto}.lightbox[open]{grid-template-columns:45px 1fr 45px}.lightbox figure{max-width:calc(100vw - 95px)}.lightbox__nav{width:38px;height:38px}.booking-page__image{min-height:360px;padding:2rem}.booking-page__form{padding:3rem 1.25rem}.form-grid{grid-template-columns:1fr}.field--wide{grid-column:auto}.booking-band>.shell{align-items:flex-start;flex-direction:column}.site-footer__grid{grid-template-columns:1fr}.site-footer__bottom{gap:.6rem;flex-direction:column}.stay-aside{grid-template-columns:1fr}.stay-aside>img{margin-left:0}.admin-main{padding-top:2.5rem}.admin-heading{align-items:flex-start;flex-direction:column}.admin-action{grid-template-columns:38px 1fr}.admin-editor>form{padding:1.25rem}.editor-actions{align-items:stretch;flex-direction:column}.gallery-manager{padding:.75rem}.admin-gallery-grid{grid-template-columns:1fr}.gallery-filter{align-items:stretch;gap:1rem;flex-direction:column}.gallery-filter .field{min-width:0}.login-card{padding:1.5rem}}
@media(max-width:900px){.site-header__inner{position:relative}.menu-toggle{position:absolute;top:14px;right:0;z-index:3;display:block!important;width:44px;height:42px;padding:7px}.hero__content>p:last-child{width:100%;max-width:100%;overflow-wrap:break-word}}
@media(max-width:650px){.rich-content>h1:first-child{max-width:100%;font-size:2.65rem;overflow-wrap:break-word;text-wrap:wrap}.hero__content h2{max-width:100%;font-size:3.65rem}.hero__content>p:last-child{padding-right:1rem;font-size:.86rem}}

/* Clean, consistent typography overrides legacy inline page fonts. */
h1,h2,h3,h4,h5,h6,.brand strong,.brand__mountain,.hero__content h2,.nav-dropdown>div a,.aside-card h2,.contact-card h2,.contact-card>a:not(.button),.card-front h1,.card-front h2,.card-front h3,.stay-card h3,.feature-strip span,.feature-strip h3,.booking-page__image h1,.booking-page__form h1,.success-panel h1,.booking-band h2,.site-footer h2,.admin-heading h1,.admin-action h2,.admin-editor>aside h2,.upload-card h2,.login-card h1{font-family:var(--font-heading)!important;font-style:normal!important}
.rich-content :is(h1,h2,h3,h4,h5,h6){font-family:var(--font-heading)!important;font-style:normal!important}
.rich-content :is(p,li,td,th,span,a){font-family:var(--font-body)!important}
.hero__content h2{font-size:clamp(3.25rem,6.2vw,6.2rem)!important;font-weight:500;letter-spacing:-.025em}
.rich-content>h1:first-child{font-size:clamp(2.55rem,4.6vw,4.75rem)!important;font-weight:500;letter-spacing:-.02em}
.rich-content h2{font-size:clamp(1.9rem,3vw,3.1rem)!important;font-weight:500;letter-spacing:-.015em}
.section-heading h2{font-size:clamp(2.4rem,4vw,4.1rem)!important;font-weight:500;letter-spacing:-.02em}
/* Keep the mobile navigation fully opaque above photographs and page content. */
@media(max-width:900px){
  .site-header{background:#10221b!important;-webkit-backdrop-filter:none;backdrop-filter:none}
  .site-menu{inset:70px 0 0 auto;height:calc(100dvh - 70px);overflow-y:auto;overscroll-behavior:contain;background:#10221b!important;background-image:linear-gradient(160deg,#162d24 0%,#10221b 58%,#0b1813 100%)!important;isolation:isolate}
  .site-menu::before{position:absolute;inset:0;z-index:-1;content:"";background:#10221b}
  .site-menu.is-open{visibility:visible;opacity:1;transform:translateX(0)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

.turnstile-wrap{display:grid;margin:1.1rem 0;gap:.35rem}.turnstile-wrap p{margin:0;color:var(--muted);font-size:.7rem}.verification-unavailable{margin:1rem 0;padding:1rem;border-left:3px solid var(--danger);color:var(--danger);background:#fff5f3;font-size:.85rem}.booking-page__form button[disabled]{cursor:not-allowed;filter:grayscale(.4);opacity:.55;transform:none}
