/* Edelweiss / visual overhaul — home concept 03 */
:root{--walnut:#263b3b;--walnut-2:#374c4a;--gold:#82948c;--gold-soft:#c1cbc2;--gold-ink:#526b64;--forest:#e7ece8;--stone:#f1f0ec;--paper:#f8f7f4;--ink:#23302f;--muted:#68736f;--line:#e0e3dd;--radius:3px;--sans:'Manrope',Arial,sans-serif;--serif:'Prata',Georgia,serif}
*{scroll-margin-top:105px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.7;font-size:14px}p{line-height:1.75}.wrap{width:min(1230px,calc(100% - 80px))}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;color:#263432}h2{font-size:clamp(27px,3vw,39px);line-height:1.27}h3{font-size:20px}.veneer{background:#fff;background-image:none;color:var(--ink)}
.site-head{background:#fff;border-bottom:1px solid #eaece7;box-shadow:none;position:sticky;top:0;z-index:99}.head-row{min-height:84px;display:flex;gap:20px;align-items:center}.site-head .logo{display:flex;align-items:center;flex:0 0 auto;margin-right:20px}.site-head .logo img{width:62px;height:62px;object-fit:contain}.nav{display:flex;flex:1;gap:22px;justify-content:center}.nav a{color:#394642;font:600 12px/1.4 var(--sans);letter-spacing:.005em;padding:12px 0;white-space:nowrap;box-shadow:none;background:none}.nav a:hover,.nav a[aria-current=page]{background:none;color:#738e79;box-shadow:inset 0 -2px #8fa896}.head-call{font:700 12px/1.3 var(--sans);color:#fff;text-decoration:none;background:#344b43;padding:16px 23px;white-space:nowrap;transition:background .2s}.head-call:hover{background:#607d6b;color:#fff}.burger{color:#24483a;border-color:#b6c5bd}
.hero-v3{background:#f2f2ed!important;padding:0!important;overflow:hidden}.hero-v3-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:60px;align-items:center;min-height:585px;padding-top:68px;padding-bottom:68px}.hero-v3-copy{padding:10px 0}.eyebrow,.section-no{font:700 10px/1.5 var(--sans);letter-spacing:.17em;color:#71897b;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:13px;margin-bottom:35px}.eyebrow-line,.mini-line{display:inline-block;width:32px;height:1px;background:#81988b}.hero-v3 h1{font:400 clamp(38px,4.3vw,61px)/1.22 var(--serif);letter-spacing:-.055em;margin:0 0 25px;max-width:600px}.hero-v3 h1 em{font-style:normal;color:#788d7d}.hero-v3-desc{font-size:15px;line-height:1.9;color:#62706a;max-width:440px;margin:0 0 34px}.hero-v3-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.hero-main-cta{background:#314a40;color:white;display:inline-flex;align-items:center;gap:38px;padding:17px 21px;text-decoration:none;font:700 12px var(--sans)}.hero-main-cta span{font-size:17px}.hero-main-cta:hover{background:#526b5e;color:white}.hero-text-link{color:#34473e;text-decoration:none;font:700 12px var(--sans);border-bottom:1px solid #9baaa0;padding-bottom:7px}.hero-text-link span{margin-left:12px}.hero-v3-foot{margin-top:58px;display:flex;align-items:center;gap:13px;color:#7d8983;font-size:12px}.hero-v3-foot b{color:#36483f;font-weight:800}.hero-v3-visual{height:475px;position:relative;display:flex;justify-content:flex-end;align-items:flex-start}.hero-v3-main{height:435px;width:64%;margin:0;background:#e1e1db;overflow:hidden;position:absolute;right:0;top:0}.hero-v3-main img,.hero-v3-small img{display:block;width:100%;height:100%;object-fit:cover}.hero-v3-main img{object-position:50% 42%}.hero-v3-small{position:absolute;bottom:7px;left:0;width:43%;height:246px;border:7px solid #f2f2ed;overflow:hidden;margin:0;background:#dbe1de}.hero-v3-small img{object-position:50% 66%}.hero-v3-stamp{position:absolute;bottom:23px;right:0;background:#fff;padding:19px 25px;font:400 12px/1.6 var(--serif);color:#53695a;box-shadow:0 12px 30px #132b2012}.hero-v3-stamp span{font:24px var(--serif);display:inline-block;margin-left:12px;color:#8eae98}
.highlights{padding:35px 0!important;background:white;border-bottom:1px solid #e8e9e5}.highlights-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);align-items:center;gap:0}.highlights-intro p{font:400 18px/1.6 var(--serif);margin:8px 0 0}.highlight{border-left:1px solid #e2e5df;padding:11px 0 11px 31px;display:flex;flex-direction:column;gap:7px}.highlight strong{font:400 30px/1.2 var(--serif);color:#2f4238}.highlight span{font-size:11px;color:#6e7b73}
section{padding:85px 0}.sec-head{margin-bottom:35px}.sec-head h2{margin-top:12px}.two{gap:90px}.two .pic{max-width:415px;overflow:hidden;box-shadow:none}.two .pic img{max-height:520px;object-fit:cover}.frame{border:0;outline:0;box-shadow:none}.checks{color:#68766d}.checks li::before{background:#95ac99}.btn{font-family:var(--sans);font-size:12px;font-weight:700;border-radius:2px;min-height:42px;padding:13px 17px}.btn-dark{background:#34493f;color:#fff}.btn-dark:hover{background:#657d6e}.btn-wa{background:#2f7a5a}.btn-line{color:#30473a;border-color:#9eafa4}.on-stone{background:#f1f0ec}.on-forest{background:#354c41;color:#fff}.on-forest h2,.on-forest h3{color:#fff}.on-forest .sec-head p,.on-forest .steps p{color:#d1dfd5}.steps li{border-top-color:#6b8370}.steps li::before{color:#b4cead}
.room-section{background:#f1f0ec}.room-section .sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px}.room-section .sec-head .section-no{width:100%}.room-section .sec-head p{font-size:12px;max-width:360px;color:#697570}.amen-plain{display:flex;gap:9px 19px;flex-wrap:wrap;margin-bottom:25px;font-size:11px;color:#65746a}.amen-plain span:not(:first-child)::before{content:'·';font-weight:900;margin-right:12px;color:#8d9c8d}.amen-plain span:first-child{color:#314d3d;font-weight:800}.rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border:0}.room{background:#fff;padding:0;display:flex;flex-direction:column;gap:0;align-items:stretch;border:1px solid #e5e7e0;box-shadow:none}.room-photo{position:relative;height:240px;overflow:hidden}.room-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block}.room-index{position:absolute;left:17px;top:14px;background:#fff;padding:5px 9px;font:700 10px var(--sans);color:#526956}.room>div:not(.buy):not(.room-photo){padding:24px 23px 6px}.room h3{font:400 21px/1.4 var(--serif);margin:0 0 12px}.room p{font-size:12px;line-height:1.75;color:#728078}.room .buy{display:flex;align-items:center;justify-content:space-between;padding:12px 23px 23px;gap:12px;text-align:left;flex-wrap:wrap;margin-top:auto}.room .price{font:700 17px/1.2 var(--sans);color:#293f32}.room .price small{font-size:10px;font-weight:500;color:#798479}.room .btn{font-size:11px;padding:10px 12px;min-height:38px;margin:0}.tiles{gap:14px}.tile{min-height:290px;border-radius:0}.tile h3{font:400 20px var(--serif);color:#fff}.tile::after{background:linear-gradient(0deg,#192b25cb,transparent 65%)}.gallery{gap:12px}.gallery img{border-radius:0}.faq summary{font-family:var(--sans);font-weight:600;font-size:13px}.faq{max-width:790px}.form{background:#fff;border:1px solid #dce5dc;box-shadow:none;border-radius:0}.form input,.form textarea,.form select{background:#f6f7f4;border:1px solid #e1e6df;border-radius:2px}.form label{color:#485b4f}#zayavka{background:#e4eae4;color:#25382d}#zayavka h2,#zayavka p{color:#25382d}.site-foot{background:#253d33;color:#e7ece7}.site-foot h3,.site-foot a{color:#fff}.site-foot p{color:#dce7dc!important}.site-foot .logo img{width:80px;height:auto}.fab{background:#2e8b60}
@media(max-width:1200px){.nav{gap:12px}.nav a{font-size:11px}.site-head .logo{margin-right:0}.hero-v3-grid{gap:28px}.wrap{width:min(1170px,calc(100% - 50px))}}
@media(max-width:980px){.nav{background:white;gap:0;box-shadow:0 10px 20px #0001}.nav a{font-size:14px;padding:13px 20px}.head-call{margin-left:auto;padding:13px 16px}.hero-v3-grid{grid-template-columns:1fr 1fr;gap:20px;min-height:auto;padding-top:55px;padding-bottom:55px}.hero-v3 h1{font-size:clamp(35px,4vw,50px)}.hero-v3-visual{height:400px}.hero-v3-main{height:365px}.hero-v3-small{height:200px}.rooms{grid-template-columns:repeat(2,minmax(0,1fr))}.highlights-grid{grid-template-columns:1.2fr repeat(3,1fr)}.highlight{padding-left:18px}.two,.lead-box{gap:35px}}
@media(max-width:680px){.wrap{width:calc(100% - 36px)}.head-row{min-height:72px}.site-head .logo img{width:52px;height:52px}.head-call{font-size:11px;padding:12px}.hero-v3-grid{display:flex;flex-direction:column;align-items:stretch;padding:44px 0 34px;gap:35px}.hero-v3 h1{font-size:clamp(35px,9vw,49px)}.eyebrow{font-size:9px;margin-bottom:22px}.hero-v3-desc{font-size:13px}.hero-v3-foot{margin-top:26px}.hero-v3-visual{height:320px;max-width:440px;width:100%;align-self:center}.hero-v3-main{height:300px;width:64%}.hero-v3-small{height:168px;width:43%;bottom:0}.hero-v3-stamp{font-size:10px;padding:10px 13px;bottom:10px}.highlights{padding:29px 0!important}.highlights-grid{grid-template-columns:repeat(3,1fr);gap:18px}.highlights-intro{grid-column:1/-1}.highlights-intro p{display:none}.highlight{padding:5px 0 0 10px}.highlight strong{font-size:22px}.highlight span{font-size:10px}.rooms{grid-template-columns:1fr}.room-photo{height:265px}section{padding:58px 0}.room-section .sec-head{display:block}.room-section .sec-head p{margin-top:10px}.amen-plain{gap:7px 10px}.tile,.tile.tall{min-height:240px}.tiles{grid-template-columns:1fr}.tile.w2,.tile.w3,.tile.w4{grid-column:auto}.form .row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Edelweiss v4: unified editorial design */
body{font-size:15px} .nav a{font-size:14px;letter-spacing:0;font-weight:650}.hero-v3-desc{font-size:16px}.hero-text p.lead{font-size:16px}.hero-text .crumbs,.hero-text .where,.hero-text .hero-alt{font-size:14px}
.sec-head p,.two p,.tile p,.room p,.steps p,.faq p,.site-foot p{font-size:14px}.highlight span{font-size:12px}.room-section .sec-head p{font-size:14px}.room p{font-size:14px}
.hero-main-cta,.hero-text-link{font-size:13px}.nav{gap:17px}
/* inner pages use the approved home-page design */
body:not([data-page="index"]) .hero{background:#f2f2ed!important;color:#263432!important;padding:0!important;isolation:auto}
body:not([data-page="index"]) .hero:before{display:none}
body:not([data-page="index"]) .hero-grid{min-height:485px;padding:55px 0!important;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:65px}
body:not([data-page="index"]) .hero-text{max-width:650px}
body:not([data-page="index"]) .hero h1{color:#263432;font:400 clamp(36px,4vw,56px)/1.25 var(--serif);letter-spacing:-.045em;margin:16px 0 22px}
body:not([data-page="index"]) .hero .where{font:700 11px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.11em;color:#647d6d}
body:not([data-page="index"]) .hero .lead{color:#64736a!important;font-size:16px!important;line-height:1.9}
body:not([data-page="index"]) .hero .crumbs,body:not([data-page="index"]) .hero .crumbs a{color:#728478}
body:not([data-page="index"]) .hero .hero-chip{background:#e5ebe5;border:1px solid #d4e0d6;color:#536d5d;font:600 12px var(--sans)}
body:not([data-page="index"]) .hero-photo{border:0;box-shadow:none;height:405px;max-width:390px;width:100%;aspect-ratio:auto;justify-self:center;overflow:hidden}
body:not([data-page="index"]) .hero-photo img{width:100%;height:100%;object-fit:cover}
body:not([data-page="index"]) .ridge{display:none}
body:not([data-page="index"]) .facts{background:#fff;color:#32493d;border-bottom:1px solid #e4e9e2}
body:not([data-page="index"]) .facts ul{padding:26px 0}
body:not([data-page="index"]) .facts strong{color:#32493d;font-family:var(--serif);font-weight:400;font-size:25px}
body:not([data-page="index"]) .facts span{color:#677d70;font-size:12px}
body:not([data-page="index"]) .hero .btn-wa{background:#344b43;color:#fff}
body:not([data-page="index"]) .hero .btn-line{color:#344b43;border-color:#aebfb0}
body:not([data-page="index"]) .hero-alt a{color:#526a5b}
body:not([data-page="index"]) .hero .btn-row{display:flex;gap:13px;flex-wrap:wrap;margin-top:25px}
body:not([data-page="index"]) section{padding-block:75px}
body:not([data-page="index"]) .two{gap:65px;align-items:center}
body:not([data-page="index"]) .two h2{font-size:clamp(27px,3vw,38px)}
body:not([data-page="index"]) .gallery img{object-fit:cover}
body:not([data-page="index"]) .tiles{gap:15px}
body:not([data-page="index"]) .faq summary{font-size:14px}
body:not([data-page="index"]) .section-no{display:inline-block;margin-bottom:12px}
body:not([data-page="index"]) .site-head .head-row{min-height:84px}
@media(max-width:1200px){.nav a{font-size:13px}.nav{gap:11px}}
@media(max-width:980px){.nav a{font-size:15px}body:not([data-page="index"]) .hero-grid{grid-template-columns:1fr 1fr;gap:25px}}
@media(max-width:680px){body:not([data-page="index"]) .hero-grid{display:flex;flex-direction:column;align-items:stretch;padding:35px 0!important;gap:20px}body:not([data-page="index"]) .hero-photo{max-width:100%;height:280px}body:not([data-page="index"]) .hero h1{font-size:35px}body:not([data-page="index"]) section{padding-block:52px}.hero-v3-desc{font-size:15px}}

/* v5: mobile off-canvas navigation */
.mobile-nav-head,.mobile-nav-backdrop{display:none}
@media(max-width:980px){
  .site-head{z-index:110!important}
  .site-head .head-row{position:relative;gap:12px}
  .site-head .burger{display:inline-flex;align-items:center;justify-content:center;order:3;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #d8e2da;border-radius:8px;background:#f4f6f2;color:#30493d;cursor:pointer;z-index:2}
  .burger-lines,.burger-lines:before,.burger-lines:after{display:block;content:"";height:2px;width:19px;border-radius:2px;background:currentColor;position:relative;transition:transform .2s ease}
  .burger-lines:before{position:absolute;top:-6px}.burger-lines:after{position:absolute;top:6px}
  .site-head .head-call{order:2;margin-left:auto;white-space:nowrap}
  .site-head .nav{display:flex!important;position:fixed!important;inset:0 0 0 auto!important;top:0!important;right:0!important;left:auto!important;width:min(340px,87vw)!important;height:100dvh!important;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;flex-direction:column!important;justify-content:flex-start!important;align-items:stretch!important;gap:0!important;padding:0 24px 32px!important;background:#fff!important;box-shadow:-14px 0 45px #12281b28!important;border:0!important;z-index:121!important;transform:translateX(105%);visibility:hidden;pointer-events:none;transition:transform .26s ease,visibility .26s}
  .site-head .nav.open{transform:translateX(0);visibility:visible;pointer-events:auto}
  .site-head .nav .mobile-nav-head{display:flex;align-items:center;justify-content:space-between;min-height:83px;border-bottom:1px solid #e5ebe6;margin-bottom:15px;font:700 15px/1.3 var(--sans);color:#34493f}
  .mobile-nav-close{width:40px;height:40px;border:0;border-radius:8px;background:#f0f3ee;color:#34493f;font:400 30px/1 var(--sans);cursor:pointer}
  .site-head .nav a{display:block!important;font:600 16px/1.5 var(--sans)!important;color:#34493f!important;padding:15px 2px!important;border-bottom:1px solid #edf0eb!important;box-shadow:none!important;text-decoration:none}
  .site-head .nav a[aria-current="page"]{color:#4e8063!important}
  .mobile-nav-backdrop{display:block;position:fixed;inset:0;background:rgba(18,32,25,.48);z-index:109;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s}
  .mobile-nav-backdrop.visible{opacity:1;visibility:visible;pointer-events:auto}
  body.mobile-menu-open{overflow:hidden}
}
@media(max-width:390px){.site-head .head-call{font-size:11px;padding:11px 10px}.site-head .head-row{gap:7px}.site-head .logo img{width:47px;height:47px}}
@media(prefers-reduced-motion:reduce){.site-head .nav,.mobile-nav-backdrop{transition:none!important}}

/* Two booking steps on home; other sections retain original design. */
body[data-page="index"] .booking-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
body[data-page="index"] .booking-external{margin:24px 0 0;font-size:14px}
body[data-page="index"] .booking-external a{color:inherit;text-decoration:underline;text-underline-offset:4px}
@media(max-width:640px){body[data-page="index"] .booking-steps{grid-template-columns:1fr}}

/* Small photo grids on the banquet page */
.mini-grid{display:grid;gap:10px}
.mini-grid img{width:100%;height:100%;display:block;object-fit:cover;cursor:zoom-in}
.mini-4{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:44px}
.mini-4 img{aspect-ratio:4/3}
.mini-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mini-2 img{aspect-ratio:1/1}
@media(max-width:640px){.mini-4{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px}}
.mini-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mini-3 img{aspect-ratio:1/1}
@media(max-width:640px){.mini-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
