/*
Theme Name: Еловое — Forest Hotel
Version: 1.14.0
Description: Индивидуальная тема отеля с каталогом, программами и тарифами.
Author: Усадьба Еловое
*/
@import url('https://fonts.googleapis.com/css2?family=Golos+Text:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
.header{position:relative!important;top:auto!important}
@media(max-width:760px){.wrap{padding-left:24px!important;padding-right:24px!important}}
@media(max-width:760px){.quick-search,.booking-form .grid-two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.quick-search .field,.booking-form .grid-two .field{min-width:0}.quick-search input,.booking-form .grid-two input{min-width:0;max-width:100%;width:100%}}
.booking-form .field textarea{width:100%;min-height:110px;padding:12px;border:1px solid var(--line);background:var(--paper);resize:vertical}
:root{--pine:#234536;--dark:#182f25;--cream:#f7f5ef;--paper:#fffefa;--gold:#cdb886;--ink:#21382d;--muted:#6e786e;--line:#dddcd2;--serif:Georgia,'Times New Roman',serif;--sans:'Golos Text',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.6 var(--sans)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ba944d;outline-offset:4px}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(46px,6.2vw,88px)}h2{font-size:clamp(34px,4vw,55px)}h3{font-size:23px;font-weight:500;line-height:1.25}p+p{margin-top:16px}.wrap{max-width:1320px;margin:auto;padding:0 48px}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:18px}.btn{border:1px solid var(--pine);background:var(--pine);color:white;padding:15px 23px;display:inline-flex;gap:22px;justify-content:center;align-items:center;border-radius:3px;font-size:13px;font-weight:500;transition:background .2s,transform .2s}.btn:hover{background:#365e49;transform:translateY(-1px)}.btn.light{background:var(--paper);color:var(--pine);border-color:var(--paper)}.btn.outline{background:transparent;color:var(--pine)}.btn.text{border:0;background:none;color:var(--pine);padding:0 0 7px;border-bottom:1px solid var(--pine);border-radius:0}.promo{background:var(--pine);color:#f5f0dd;text-align:center;padding:9px 40px;font-size:12px;letter-spacing:.025em}.promo a{display:inline-flex;gap:20px;align-items:center}.promo span{opacity:.8}.header{background:var(--cream);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.header-inner{height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;gap:10px;align-items:center;flex:none}.brand svg{width:38px;height:48px}.brand strong{font-family:var(--serif);font-size:30px;line-height:1;display:block;font-weight:400;letter-spacing:-1px}.brand small{font-size:8px;letter-spacing:.24em;display:block;margin-top:7px}.nav{display:flex;gap:25px;font-size:12px;align-items:center}.nav a:hover,.nav a.active{color:#9b763c}.header-contact strong{font-size:13px;display:block}.header-contact small{font-size:10px;color:var(--muted)}.menu-toggle{display:none;background:none;border:0;font-size:24px}.hero{position:relative;min-height:600px;color:white;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;inset:0;object-position:center 57%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,33,24,.73),rgba(12,29,20,.22) 72%),linear-gradient(0deg,rgba(13,30,19,.2),transparent 60%)}.hero-content{position:relative;z-index:1;width:100%;padding-top:64px;padding-bottom:115px}.hero .eyebrow{color:#e7e5d7}.hero h1{max-width:740px}.hero h1 em{color:#e3d7b4;font-style:italic}.hero p{max-width:430px;margin:26px 0 30px;color:#ebece4;font-size:14px;line-height:1.8}.hero .hero-foot{position:absolute;right:48px;bottom:95px;display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.1em}.hero-foot b{font:44px var(--serif)}.search-wrap{position:relative;z-index:5;margin-top:-47px}.quick-search{background:var(--paper);border:1px solid var(--line);box-shadow:0 15px 45px #1531240a;padding:22px 26px;display:grid;grid-template-columns:1fr 1fr 1.2fr auto;gap:24px;align-items:end}.field label{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);border-radius:0;min-height:42px}.quick-search .btn{min-height:49px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding-top:40px;padding-bottom:42px;border-bottom:1px solid var(--line)}.benefit{display:flex;gap:14px;align-items:center}.benefit .symbol{font-size:25px;color:#879481}.benefit b{display:block;font-size:12px;font-weight:500}.benefit small{font-size:11px;color:var(--muted)}.section{padding-top:88px;padding-bottom:88px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-head p{max-width:350px;color:var(--muted);font-size:13px}.section-head .btn{flex:none}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.room-card{min-width:0;background:var(--paper);border:1px solid var(--line)}.room-image{aspect-ratio:1.36;position:relative;overflow:hidden;display:block;background:#e2e6dd}.room-image img{width:100%;height:100%;transition:transform .6s}.room-image:hover img{transform:scale(1.04)}.image-label{position:absolute;top:15px;left:15px;padding:5px 11px;font-size:10px;background:var(--paper);color:var(--pine)}.room-body{padding:23px}.room-body h3{font:29px var(--serif);letter-spacing:-.02em;margin:8px 0 15px}.room-meta{font-size:11px;color:var(--muted);display:flex;gap:15px;flex-wrap:wrap}.room-desc{font-size:12px;color:var(--muted);margin:12px 0 20px;min-height:58px}.card-bottom{border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;align-items:center;gap:15px}.price{font-size:11px}.price strong{font-size:20px;font-weight:500}.price small{display:block;font-size:10px;color:var(--muted)}.round-link{width:39px;height:39px;border:1px solid #a7afa1;border-radius:50%;display:grid;place-items:center;font-size:20px}.round-link:hover{background:var(--pine);color:white}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split-media{position:relative}.split-media img{width:100%;aspect-ratio:1.1}.split-media .stamp{position:absolute;bottom:-20px;right:-24px;background:#e8e0c9;color:var(--pine);width:110px;height:110px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;font:italic 21px var(--serif);transform:rotate(-10deg)}.split-text p{color:var(--muted);font-size:14px;margin:24px 0}.dark{background:var(--pine);color:var(--cream)}.dark .eyebrow,.dark p{color:#c0c9bc}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.program-card{position:relative;min-height:430px;overflow:hidden;color:white;display:flex;align-items:end}.program-card img{position:absolute;inset:0;width:100%;height:100%}.program-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102b24e8,transparent 95%)}.program-copy{padding:35px;z-index:1;position:relative;width:100%}.program-copy h3{font:38px var(--serif);margin-bottom:12px}.program-copy p{font-size:13px;color:#ecece1;max-width:330px;margin-bottom:22px}.program-copy .eyebrow{color:#e0d7bb}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.service-card img{aspect-ratio:1.45;width:100%}.service-card h3{font:28px var(--serif);margin:18px 0 8px}.service-card p{font-size:13px;color:var(--muted)}.service-card .tag{display:inline-block;margin:14px 0;color:#776139;font-size:12px}.quote{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:55px 0;max-width:920px;margin:auto;text-align:center}.quote h2{font-size:43px;margin:12px 0 22px}.quote p{max-width:630px;margin:0 auto 24px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-items{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.contact-items h3{font-size:13px;margin-bottom:8px}.contact-items p,.contact-items small{font-size:12px;color:var(--muted)}.contact-items a{font-size:17px}.map-card{background:#e7e9dd;min-height:350px;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden;padding:40px;text-align:center;border:1px solid #ccd3c2}.map-card:before{content:'';position:absolute;inset:-50px;background:repeating-linear-gradient(36deg,transparent 0 90px,#bcc6b433 91px 93px,transparent 94px 170px);pointer-events:none}.map-card>*{position:relative}.map-pin{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:var(--pine);color:#fff;font-size:30px;margin-bottom:22px}.map-card h3{font:32px var(--serif)}.map-card p{font-size:13px;margin:10px 0 25px}.faq{max-width:900px;margin:30px auto 0}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq summary:after{content:'+';font-size:22px;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;color:var(--muted);margin:16px 0 5px;max-width:740px}.footer{background:var(--dark);color:#e9ecdf;padding:54px 0 20px}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:45px;padding-bottom:40px}.footer .brand small{color:#b9c1b4}.footer p{font-size:12px;color:#abb9ab;max-width:310px;margin-top:20px}.footer-links{display:flex;flex-direction:column;gap:9px;font-size:12px}.footer-bottom{border-top:1px solid #ffffff20;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#a9b5a7;font-size:10px}.preview-note{padding:8px 16px;background:#e8dfc9;color:#5b4e34;text-align:center;font-size:11px}.page-heading{padding:55px 0 38px}.page-heading h1{font-size:clamp(42px,5vw,66px)}.page-heading p{max-width:680px;color:var(--muted);margin-top:20px}.breadcrumb{font-size:11px;margin-bottom:27px;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 30px}.filter{border:1px solid var(--line);background:transparent;padding:10px 18px;color:var(--pine);border-radius:25px;font-size:12px}.filter.active{background:var(--pine);color:white;border-color:var(--pine)}.room-detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:50px}.detail-main-image{aspect-ratio:1.4;width:100%;cursor:zoom-in}.thumbs{display:flex;gap:12px;margin-top:12px}.thumbs button{padding:0;border:0;background:none;width:100px}.thumbs img{width:100%;height:70px}.facts{display:flex;gap:28px;padding:23px 0;border-bottom:1px solid var(--line);margin-bottom:24px}.facts b{display:block;font:32px var(--serif)}.facts small{font-size:11px;color:var(--muted)}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:13px;list-style:none;padding:0;margin:24px 0;font-size:13px}.feature-list li:before{content:'✓';padding-right:10px;color:#8b9675}.booking-box{padding:28px;border:1px solid var(--line);background:var(--paper);margin-top:25px}.booking-box p{font-size:12px;color:var(--muted);margin:10px 0 20px}.content-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:60px;align-items:start}.content-grid .panel{position:sticky;top:125px}.panel{border:1px solid var(--line);padding:30px;background:var(--paper)}.content-text h2{font-size:35px;margin:40px 0 20px}.content-text p{color:var(--muted);margin:20px 0}.content-text ul{padding-left:20px;color:var(--muted)}.content-text li{margin-bottom:9px}.wide-image{width:100%;max-height:480px;aspect-ratio:2;object-fit:cover}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-form{display:grid;gap:20px}.booking-form .field input,.booking-form .field select{border:1px solid var(--line);padding:12px;background:var(--paper)}.booking-form .field label{font-size:11px}.booking-form .btn{width:100%}.guest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.consent{display:flex;gap:10px;align-items:start;font-size:11px;color:var(--muted)}.consent input{margin-top:4px;accent-color:var(--pine)}.consent a{text-decoration:underline}.estimate{padding:22px;background:#e8eddf;border-left:3px solid #647e52;margin:20px 0}.estimate strong{font:33px var(--serif);display:block}.estimate small{font-size:11px;display:block;color:var(--muted);margin-top:8px}.estimate .breakdown{font-size:12px;margin-top:12px}.estimate.error{background:#f6eee0;border-color:#ac7d39}.table-wrap{overflow:auto}.price-table{width:100%;border-collapse:collapse;font-size:13px}.price-table th,.price-table td{text-align:left;padding:17px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.price-table th{font-weight:500;color:var(--muted);font-size:11px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid button{border:0;padding:0;background:none;overflow:hidden}.gallery-grid img{width:100%;aspect-ratio:1.3;transition:.3s}.gallery-grid button:hover img{transform:scale(1.04)}dialog{border:0;background:var(--paper);padding:30px;color:var(--ink);max-width:min(900px,92vw);max-height:90vh;border-radius:4px}dialog::backdrop{background:#10241ddd}dialog .close{float:right;background:none;border:0;font-size:28px}dialog img{max-height:73vh;width:auto;margin:auto}dialog p{font-size:12px;margin-top:14px}.mobile-bar{display:none}.empty-photo{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#7c8876;background:#e5e8de;font:30px var(--serif)}.empty-photo small{font:11px var(--sans);margin-top:8px}.notice{font-size:12px;padding:16px 20px;background:#ebe5d7;margin:20px 0}.center{text-align:center}.mt{margin-top:30px}.hidden{display:none!important}.honeypot{position:absolute;left:-9999px}.hero-sub{min-height:390px}.hero-sub .hero-content{padding-bottom:65px}.hero-sub h1{font-size:65px}.season-tabs{margin-top:22px}.program-price{font:38px var(--serif);margin:15px 0}.program-price small{font:12px var(--sans);display:block}.book-side{background:var(--pine);color:white;padding:35px}.book-side p{color:#c8d2c3;font-size:13px;margin:20px 0}.book-side h2{font-size:36px}.book-side a.phone{font-size:22px;display:block;margin:20px 0 5px}.book-side small{color:#c5cfbf}.status{padding:20px;border:1px solid #b2c4a8;margin-top:20px;background:#eef3e7}.status h3{font:28px var(--serif);margin-bottom:12px}.status p{font-size:13px}.season-layout{padding-bottom:0}.source-note{font-size:11px;color:var(--muted);margin-top:20px}.rule-row{display:flex;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.rule-row strong{min-width:115px;font-size:13px}.rule-row span{font-size:13px;color:var(--muted)}
@media(min-width:1500px){.hero{min-height:670px}.hero-content{padding-top:85px}}@media(max-width:1100px){.wrap{padding:0 30px}.nav{gap:15px}.header-contact{display:none}.header-inner{height:84px}.hero .hero-foot{right:30px}.split{gap:40px}.room-body{padding:18px}.room-grid{gap:18px}.section{padding-top:65px;padding-bottom:65px}}@media(max-width:760px){.wrap{padding:0 21px}.header-inner{height:75px}.brand strong{font-size:28px}.brand svg{width:30px;height:39px}.header .btn{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;top:75px;left:0;right:0;padding:24px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;font-size:16px;gap:20px}.nav.open{display:flex}.promo{font-size:10px;padding:9px 15px}.promo a{gap:12px}.promo span{display:none}.hero{min-height:560px}.hero-content{padding-top:52px;padding-bottom:100px}.hero h1{font-size:53px}.hero p{font-size:13px;max-width:290px;margin-top:23px}.hero>img{object-position:58% center}.hero:after{background:linear-gradient(90deg,#10271ed9,#10271e35)}.hero .hero-foot{display:none}.search-wrap{margin-top:-39px}.quick-search{padding:20px;grid-template-columns:1fr 1fr;gap:15px}.quick-search .btn{padding:12px;font-size:12px}.quick-search .field select{font-size:13px}.benefits{grid-template-columns:1fr 1fr;gap:23px 12px;padding-top:26px;padding-bottom:30px}.benefit{gap:10px}.benefit .symbol{font-size:22px}.benefit b{font-size:11px}.benefit small{font-size:10px;line-height:1.4;display:block}.section{padding:52px 0}.section-head{display:block;margin-bottom:25px}.section-head .btn{margin-top:20px}.section-head p{margin-top:18px}.room-grid{grid-template-columns:1fr;gap:24px}.room-image{aspect-ratio:1.5}.room-desc{min-height:0}.split{grid-template-columns:1fr;gap:38px}.split-media .stamp{right:8px;width:90px;height:90px;font-size:19px}.split-text p{font-size:13px}.program-grid{grid-template-columns:1fr;gap:20px}.program-card{min-height:370px}.program-copy{padding:25px}.program-copy h3{font-size:35px}.service-grid{grid-template-columns:1fr;gap:32px}.quote h2{font-size:34px}.quote{padding:35px 0}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-items{grid-template-columns:1fr;gap:22px}.map-card{min-height:310px}.footer-top{grid-template-columns:1fr 1fr;gap:32px}.footer-top .brand-block{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:10px}.footer{padding-bottom:88px}.mobile-bar{display:flex;position:fixed;z-index:35;bottom:0;left:0;right:0;padding:10px 15px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);gap:10px}.mobile-bar a{flex:1;padding:12px 10px;font-size:12px}.page-heading{padding:35px 0 28px}.page-heading h1{font-size:43px}.room-detail-grid,.content-grid{grid-template-columns:1fr;gap:28px}.content-grid .panel{position:static}.facts{gap:20px}.facts b{font-size:27px}.feature-list{font-size:12px}.panel{padding:22px}.grid-two{gap:12px}.guest-grid{gap:8px}.guest-grid label{font-size:9px!important}.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.hero-sub{min-height:380px}.hero-sub h1{font-size:44px}.hero-sub .hero-content{padding:48px 21px}.wide-image{aspect-ratio:1.4}.booking-box{padding:22px}.rule-row{gap:10px}.rule-row strong{min-width:95px}.header-contact{display:none}.preview-note{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
