:root{--bg:#f3f8fb;--surface:#f8fcff;--milk:#e8f2f8;--sand-light:#c8e0ec;--sand:#91bfd6;--accent:#2584b8;--accent-hover:#176d9c;--text:#203642;--text-soft:#607681;--border:rgba(37,132,184,.17);--shadow:0 18px 45px rgba(28,79,105,.12);--header-height:82px;--hero-image:url("assets/mountain-sunset.jpg")}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;min-width:320px;color:var(--text);background:var(--bg);font-family:"Manrope",system-ui,sans-serif;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.container{width:min(1280px,calc(100% - 64px));margin:auto}.section{padding:110px 0}.kicker{display:block;margin-bottom:14px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.kicker--light{color:#f0c6b5}.section-heading h2,.quiz-invite h2,.process h2,.honest-reviews h2,.faq h2,.final-cta h2{margin:0;font:500 clamp(48px,5vw,72px)/.98 "Cormorant Garamond",Georgia,serif;letter-spacing:-.025em}.section-heading p{color:var(--text-soft);font-size:17px;line-height:1.65}.section-heading--split{display:grid;grid-template-columns:1fr 480px;align-items:end;gap:80px;margin-bottom:52px}.section-heading--split p{margin:0}.section-heading--center{max-width:760px;margin:0 auto 56px;text-align:center}.section-heading--center p{max-width:610px;margin:18px auto 0}

.header{height:var(--header-height);padding:0 clamp(24px,3.4vw,58px);display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(180px,1fr);align-items:center;gap:34px;position:sticky;top:0;z-index:50;background:rgba(255,249,242,.92);border-bottom:1px solid rgba(58,42,34,.08);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:13px;width:max-content}.brand__mark{width:42px;color:#c45d3b;stroke-width:1.7}.brand span{font:500 29px/1 "Cormorant Garamond",Georgia,serif;letter-spacing:.01em}.nav{display:flex;align-items:center;justify-content:center;gap:clamp(24px,2.7vw,46px);white-space:nowrap}.nav a{position:relative;font-size:14px;font-weight:600}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--accent);transition:right .25s}.nav a:hover:after,.nav a:focus-visible:after{right:0}.scroll-progress{position:fixed;left:0;right:0;top:var(--header-height);height:2px;z-index:51}.scroll-progress span{display:block;width:0;height:100%;background:var(--accent)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:56px;padding:14px 26px;border:1px solid transparent;border-radius:12px;font-weight:700;cursor:pointer;transition:transform .22s,background-color .22s,color .22s,box-shadow .22s}.button:hover{transform:translateY(-2px)}.button:focus-visible,.nav a:focus-visible,.menu-toggle:focus-visible,input:focus-visible,select:focus-visible,.accordion button:focus-visible{outline:3px solid rgba(185,80,50,.24);outline-offset:3px}.button--header{justify-self:end;min-height:48px;padding:11px 22px;color:white;background:var(--accent)}.button--primary{color:white;background:var(--accent);box-shadow:0 14px 30px rgba(134,63,38,.2)}.button--primary:hover,.button--header:hover{background:var(--accent-hover)}.button--outline{color:var(--accent);background:rgba(255,249,242,.72);border-color:var(--accent)}.button--outline:hover{color:white;background:var(--accent)}.button--ghost{color:var(--text-soft);background:transparent;border-color:rgba(58,42,34,.15)}.button--cream{color:var(--accent);background:#fff7ef}.button svg{width:25px;height:25px;stroke-width:1.5}.button__icon{width:33px;height:33px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%}.button__icon svg{width:21px}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{display:block;width:24px;height:1.5px;margin:5px 0;background:var(--text);transition:.25s}

.hero{height:calc(100svh - var(--header-height));min-height:620px;max-height:760px;position:relative;overflow:hidden;background:var(--surface)}.hero__image{position:absolute;inset:0 0 0 47%;background-image:var(--hero-image);background-size:cover;background-position:50% center}.hero__image:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,224,188,.1),rgba(255,191,120,.1) 55%,rgba(66,37,24,.1))}.hero__veil{position:absolute;inset:0 auto 0 0;z-index:1;width:58%;height:100%;color:var(--surface);pointer-events:none}.hero__veil path{fill:currentColor;stroke:none}.hero__content{position:relative;z-index:2;width:57%;height:100%}.hero__inner{position:relative;z-index:2;max-width:720px;margin-left:clamp(48px,6.7vw,110px);padding-top:clamp(40px,6vh,62px)}.eyebrow{width:max-content;display:flex;align-items:center;gap:11px;padding:9px 18px 9px 15px;color:var(--accent);background:#f2e6d8;border-radius:999px;font-size:13px;font-weight:700}.eyebrow svg{width:30px;height:23px;stroke-width:1.5}.hero__title{margin:18px 0 15px;font:500 clamp(56px,5vw,78px)/.94 "Cormorant Garamond",Georgia,serif;letter-spacing:-.032em}.hero__description{max-width:620px;margin:0;color:var(--text-soft);font-size:clamp(15px,1.2vw,18px);line-height:1.55}.hero__actions{display:flex;gap:18px;margin-top:24px}.hero__actions .button{min-width:235px}.hero__facts{display:flex;width:min(630px,95%);margin-top:27px;padding-top:21px;border-top:1px solid rgba(58,42,34,.1)}.hero__facts>div{flex:1;display:flex;align-items:center;gap:11px;padding-right:17px}.hero__facts>div+div{padding-left:20px;border-left:1px solid rgba(58,42,34,.1)}.hero__facts strong{font:600 29px/1 "Cormorant Garamond",Georgia,serif;color:var(--accent)}.hero__facts span{color:var(--text-soft);font-size:10px;line-height:1.35}.botanical{position:absolute;left:-12px;bottom:-20px;width:100px;height:200px;color:rgba(185,80,50,.14);stroke-width:1.8}.reveal{opacity:0;transform:translateY(14px);animation:reveal .65s cubic-bezier(.22,.74,.2,1) forwards}.reveal--1{animation-delay:.06s}.reveal--2{animation-delay:.13s}.reveal--3{animation-delay:.2s}.reveal--4{animation-delay:.27s}.reveal--5{animation-delay:.34s}@keyframes reveal{to{opacity:1;transform:none}}

.trust-strip{position:relative;z-index:3;background:#3b2b23;color:#f7eee6}.trust-strip__inner{width:min(1360px,calc(100% - 64px));min-height:78px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.trust-strip span{height:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 22px;font-size:12px}.trust-strip span+span{border-left:1px solid rgba(255,255,255,.12)}.trust-strip svg{width:23px;min-width:23px;color:#d78666;stroke-width:1.5}

.tours{background:var(--bg)}.tour-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.tour-card{position:relative;min-height:530px;overflow:hidden;border-radius:24px;background:#33251f;box-shadow:var(--shadow);isolation:isolate}.tour-card__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.tour-card:after{content:"";position:absolute;inset:0;z-index:-0;background:linear-gradient(180deg,rgba(30,20,15,.03) 15%,rgba(32,22,17,.3) 52%,rgba(26,18,14,.9) 100%)}.tour-card:hover .tour-card__image{transform:scale(1.035)}.tour-card__topline{position:absolute;z-index:2;top:26px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.tour-card__tag,.tour-card__days{padding:10px 16px;border:1px solid rgba(255,255,255,.38);border-radius:999px;color:#fff;background:linear-gradient(135deg,rgba(66,44,31,.52),rgba(44,28,20,.34));box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 26px rgba(27,17,12,.16);backdrop-filter:blur(14px) saturate(125%);-webkit-backdrop-filter:blur(14px) saturate(125%);font-size:11px;text-shadow:0 1px 8px rgba(0,0,0,.3)}.tour-card__content{position:absolute;inset:auto 0 0;z-index:1;padding:34px;color:white}.tour-card h3{margin:0 0 10px;font:500 52px/1 "Cormorant Garamond",Georgia,serif}.tour-card__lead{max-width:520px;min-height:48px;margin:0 0 20px;color:rgba(255,255,255,.82);font-size:13px;line-height:1.55}.tour-card__footer{display:flex;align-items:end;justify-content:space-between;gap:20px}.tour-card__meta{display:flex;gap:24px}.tour-card__meta span{display:block;color:rgba(255,255,255,.6);font-size:9px;text-transform:uppercase;letter-spacing:.11em}.tour-card__meta strong{display:block;margin-top:4px;font-size:14px}.tour-card__button{width:48px;height:48px;border:1px solid rgba(255,255,255,.45);border-radius:50%;color:white;background:rgba(255,255,255,.08);font-size:23px;cursor:pointer;transition:.25s}.tour-card:hover .tour-card__button{color:var(--text);background:white;transform:rotate(-8deg)}.tours__note{margin:25px 0 0;color:var(--text-soft);font-size:12px;text-align:center}

.quiz-invite{overflow:hidden;background:#f0e2d1}.quiz-invite__grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.quiz-invite__visual{position:relative;min-height:500px}.postcard{position:absolute;width:63%;padding:9px;background:#fffaf4;box-shadow:0 24px 60px rgba(72,43,26,.18)}.postcard img{width:100%;aspect-ratio:4/3;object-fit:cover}.postcard--one{left:2%;top:14%;transform:rotate(-8deg)}.postcard--two{right:0;bottom:8%;transform:rotate(7deg)}.quiz-invite__stamp{position:absolute;z-index:2;left:50%;top:41%;width:130px;height:130px;display:grid;place-content:center;text-align:center;color:#fff8f1;background:var(--accent);border:7px solid #f0e2d1;border-radius:50%;font:500 13px/1.3 "Manrope",sans-serif;transform:rotate(-8deg)}.quiz-invite__stamp strong{font:500 18px "Cormorant Garamond",serif}.quiz-invite__copy{max-width:560px}.quiz-invite__copy p{margin:23px 0 30px;color:var(--text-soft);font-size:17px;line-height:1.65}.quiz-invite__copy .button{min-width:240px}.quiz-invite__copy small{display:block;margin-top:14px;color:#8b776b;font-size:11px}.route-line{position:absolute;border:1px dashed rgba(185,80,50,.3);border-radius:50%}.route-line--1{inset:4% 5% 15% 0}.route-line--2{inset:24% 0 1% 14%}

.benefits{background:var(--surface)}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border)}.benefit{position:relative;min-height:300px;padding:38px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);transition:background .3s}.benefit:hover{background:var(--milk)}.benefit--featured{color:#fff8f1;background:var(--accent)}.benefit--featured:hover{background:var(--accent-hover)}.benefit__number{position:absolute;right:24px;top:21px;color:rgba(185,80,50,.35);font:500 18px "Cormorant Garamond",serif}.benefit--featured .benefit__number{color:rgba(255,255,255,.45)}.benefit__icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:45px;color:var(--accent);background:#f3e4d5;border-radius:50%;font-size:23px}.benefit--featured .benefit__icon{color:white;background:rgba(255,255,255,.15)}.benefit h3{margin:0 0 13px;font:600 25px/1.1 "Cormorant Garamond",serif}.benefit p{margin:0;color:var(--text-soft);font-size:13px;line-height:1.7}.benefit--featured p{color:rgba(255,255,255,.75)}

.process{background:#3a2a22;color:#fff9f2}.process__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:120px}.process__copy p{max-width:460px;margin:24px 0;color:rgba(255,255,255,.62);line-height:1.7}.text-link{display:inline-flex;gap:10px;padding-bottom:5px;border-bottom:1px solid currentColor;color:var(--accent);font-weight:700;font-size:13px}.process .text-link{color:#e69777}.steps{margin:0;padding:0;list-style:none}.steps li{display:grid;grid-template-columns:80px 1fr;gap:25px;padding:30px 0;border-top:1px solid rgba(255,255,255,.14)}.steps li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}.steps>li>span{color:#d78666;font:500 30px "Cormorant Garamond",serif}.steps h3{margin:0 0 8px;font:500 27px "Cormorant Garamond",serif}.steps p{margin:0;color:rgba(255,255,255,.57);font-size:13px;line-height:1.6}

.honest-reviews{background:#e7d1b8}.honest-reviews__box{display:grid;grid-template-columns:1fr 1fr;gap:120px;align-items:end}.honest-reviews__box>div:last-child{padding-bottom:8px}.honest-reviews p{max-width:520px;color:#6e5b50;line-height:1.75}.honest-reviews__accent{font:500 24px "Cormorant Garamond",serif!important;color:var(--accent)!important}
.faq{background:var(--bg)}.faq__grid{display:grid;grid-template-columns:380px 1fr;gap:110px}.faq__intro{position:sticky;top:130px;height:max-content}.faq__intro>p{margin:22px 0;color:var(--text-soft);line-height:1.7}.accordion{border-top:1px solid rgba(58,42,34,.16)}.accordion__item{border-bottom:1px solid rgba(58,42,34,.16)}.accordion__trigger{width:100%;display:flex;justify-content:space-between;gap:30px;padding:25px 4px;border:0;color:var(--text);background:transparent;text-align:left;font-weight:600;cursor:pointer}.accordion__plus{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;color:var(--accent);font-size:20px;transition:transform .25s}.accordion__item.is-open .accordion__plus{transform:rotate(45deg)}.accordion__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s}.accordion__panel>div{overflow:hidden}.accordion__panel p{max-width:700px;margin:0;padding:0 50px 25px 4px;color:var(--text-soft);font-size:14px;line-height:1.7}.accordion__item.is-open .accordion__panel{grid-template-rows:1fr}

.final-cta{color:#fff9f2;background:var(--accent)}.final-cta__grid{display:grid;grid-template-columns:1fr 480px;gap:120px;align-items:start}.final-cta__copy>p{max-width:520px;margin:24px 0 42px;color:rgba(255,255,255,.72);line-height:1.7}.final-cta__contact span{display:block;color:rgba(255,255,255,.55);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.final-cta__contact a{display:inline-block;margin-top:6px;font:500 26px "Cormorant Garamond",serif}.lead-form{display:grid;gap:18px;padding:34px;background:#fff9f2;color:var(--text);border-radius:20px;box-shadow:0 25px 70px rgba(74,28,15,.18)}.lead-form label{display:grid;gap:8px;color:var(--text-soft);font-size:11px}.lead-form input,.lead-form select{width:100%;padding:13px 0;border:0;border-bottom:1px solid rgba(58,42,34,.2);border-radius:0;color:var(--text);background:transparent;outline:none}.lead-form input:focus,.lead-form select:focus{border-color:var(--accent)}.lead-form small{color:#9a8b82;font-size:9px;line-height:1.5}.form-success{margin:0;padding:12px;color:#4c6a46;background:#e7f0e2;border-radius:8px;font-size:12px}

.footer{padding:70px 0 25px;color:#d7cbc2;background:#271d18}.footer__grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:60px}.brand--footer{color:#fff8f1}.footer__brand>p{max-width:300px;color:#897a71;font-size:12px;line-height:1.7}.footer h3{margin:10px 0 18px;color:#9e8b7f;font-size:10px;text-transform:uppercase;letter-spacing:.14em}.footer__grid>div:not(:first-child)>a{display:block;margin:0 0 10px;font-size:12px}.footer__grid>div:not(:first-child)>p{color:#a8988f;font-size:12px;line-height:1.7}.footer small{color:#695c54;font-size:8px;line-height:1.4}.footer__bottom{display:flex;justify-content:space-between;gap:40px;margin-top:55px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);color:#75675f;font-size:9px}.footer__bottom div{display:flex;gap:20px}

.modal{width:min(960px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:22px;color:var(--text);background:var(--surface);box-shadow:0 30px 100px rgba(38,23,16,.35)}.modal::backdrop{background:rgba(38,25,18,.65);backdrop-filter:blur(6px)}.modal__close{position:sticky;float:right;top:15px;right:15px;z-index:5;width:38px;height:38px;margin:15px;border:0;border-radius:50%;color:var(--text);background:rgba(255,249,242,.9);font-size:26px;line-height:1;cursor:pointer}.tour-modal__hero{height:300px;position:relative;overflow:hidden}.tour-modal__hero img{width:100%;height:100%;object-fit:cover}.tour-modal__hero:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(35,23,17,.75))}.tour-modal__hero h2{position:absolute;left:38px;bottom:28px;z-index:1;margin:0;color:white;font:500 58px "Cormorant Garamond",serif}.tour-modal__body{padding:34px 40px 44px}.tour-modal__summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:34px}.tour-modal__summary div{padding:15px;background:var(--milk);border-radius:10px}.tour-modal__summary span{display:block;color:var(--text-soft);font-size:9px;text-transform:uppercase}.tour-modal__summary strong{display:block;margin-top:5px;font-size:13px}.tour-modal__body h3{font:600 25px "Cormorant Garamond",serif}.itinerary{display:grid;gap:0;margin:20px 0 35px}.day{display:grid;grid-template-columns:78px 1fr;gap:18px;padding:17px 0;border-top:1px solid var(--border)}.day strong{color:var(--accent);font-size:11px;text-transform:uppercase}.day p{margin:0;color:var(--text-soft);font-size:13px;line-height:1.65}.included{display:grid;grid-template-columns:1fr 1fr;gap:20px}.included>div{padding:22px;border-radius:13px;background:var(--milk)}.included h4{margin:0 0 10px}.included p{margin:0;color:var(--text-soft);font-size:12px;line-height:1.65}.tour-modal__cta{display:flex;justify-content:space-between;align-items:center;margin-top:28px;padding-top:25px;border-top:1px solid var(--border)}.tour-modal__cta p{margin:0;color:var(--text-soft);font-size:11px}.quiz-modal{width:min(680px,calc(100% - 24px));padding:32px 38px 36px}.quiz-modal .modal__close{position:absolute;top:6px;right:6px}.quiz-header{display:flex;justify-content:space-between;margin-bottom:13px;color:var(--text-soft);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.quiz-progress{height:3px;margin-bottom:35px;background:#eaded4}.quiz-progress span{display:block;width:20%;height:100%;background:var(--accent);transition:width .3s}.quiz-stage h2{margin:0 0 25px;font:600 35px "Cormorant Garamond",serif}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quiz-option{position:relative}.quiz-option input{position:absolute;opacity:0}.quiz-option label{height:100%;display:flex;align-items:center;padding:16px;border:1px solid rgba(58,42,34,.14);border-radius:10px;color:var(--text-soft);font-size:12px;cursor:pointer;transition:.2s}.quiz-option input:checked+label{color:var(--accent);border-color:var(--accent);background:#f9eae2}.quiz-contact{display:grid;gap:16px}.quiz-contact input{width:100%;padding:16px;border:1px solid rgba(58,42,34,.14);border-radius:10px;background:white}.quiz-controls{display:flex;justify-content:space-between;gap:12px;margin-top:30px}.quiz-controls .button{min-width:150px}.quiz-result{text-align:center;padding:20px 0}.quiz-result__icon{width:68px;height:68px;display:grid;place-items:center;margin:0 auto 20px;border-radius:50%;color:white;background:var(--accent);font-size:30px}.quiz-result h2{font-size:44px}.quiz-result p{color:var(--text-soft);line-height:1.6}
.booking-modal{width:min(860px,calc(100% - 32px));overflow:hidden}.booking-modal .modal__close{position:absolute;top:0;right:0}.booking-modal__layout{display:grid;grid-template-columns:38% 62%;min-height:610px}.booking-modal__visual{position:relative;overflow:hidden;background:#3a2a22}.booking-modal__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,18,12,.06),rgba(30,18,12,.74))}.booking-modal__visual img{width:100%;height:100%;object-fit:cover}.booking-modal__visual-copy{position:absolute;z-index:1;left:28px;right:28px;bottom:28px;color:white}.booking-modal__visual-copy span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;opacity:.65}.booking-modal__visual-copy h2{margin:5px 0 0;font:500 44px/.95 "Cormorant Garamond",serif}.booking-form{display:flex;flex-direction:column;padding:42px 42px 35px;background:var(--surface)}.booking-form__heading h3{margin:0;font:600 34px "Cormorant Garamond",serif}.booking-form__heading p{margin:8px 0 20px;color:var(--text-soft);font-size:11px;line-height:1.55}.booking-selection{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.booking-selection label:first-child{grid-column:1/-1}.booking-selection label,.booking-fields label{display:grid;gap:5px;color:var(--text-soft);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.booking-selection input{width:100%;padding:10px 11px;border:1px solid rgba(185,80,50,.13);border-radius:8px;color:var(--accent);background:#f5e8dc;font-size:11px;font-weight:700}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}.booking-fields label:nth-child(-n+2){grid-column:1/-1}.booking-fields input,.booking-fields select{width:100%;padding:10px 0;border:0;border-bottom:1px solid rgba(58,42,34,.18);border-radius:0;color:var(--text);background:transparent;font-size:12px;outline:none}.booking-form>.button{width:100%;margin-top:23px}.booking-form>small{margin-top:9px;color:#9b8d84;font-size:8px;line-height:1.4}.booking-success{margin-top:12px}

@media(max-width:1180px){.header{grid-template-columns:1fr auto auto}.nav{position:absolute;top:calc(100% + 10px);right:24px;width:min(330px,calc(100vw - 48px));padding:14px;display:grid;gap:0;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.25s}.nav.is-open{opacity:1;visibility:visible;transform:none}.nav a{padding:11px}.nav a:after{display:none}.menu-toggle{display:block}.menu-toggle.is-open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.hero__inner{margin-left:5vw}.hero__title{font-size:clamp(52px,5.5vw,68px)}.hero__actions .button{min-width:0}.hero__facts{width:90%}.tour-card{min-height:480px}.quiz-invite__grid,.process__grid{gap:70px}.faq__grid{grid-template-columns:330px 1fr;gap:70px}}
@media(max-width:900px){.container{width:min(100% - 40px,720px)}.section{padding:80px 0}.section-heading--split{grid-template-columns:1fr;gap:16px}.section-heading--split p{max-width:620px}.hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column}.hero__image{position:relative;inset:auto;order:2;width:100%;height:52vw;min-height:400px;background-position:center 53%}.hero__veil{display:none}.hero__content{order:1;width:100%;height:auto;background:var(--surface)}.hero__inner{max-width:720px;margin:0 auto;padding:50px 28px 38px}.hero__title{font-size:64px}.hero__description{max-width:650px}.hero__facts{width:100%}.botanical{right:-20px;left:auto;bottom:0}.trust-strip__inner{width:100%;grid-template-columns:1fr 1fr}.trust-strip span{justify-content:flex-start;padding-left:30px}.trust-strip span:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.12)}.trust-strip span:nth-child(4){border-top:1px solid rgba(255,255,255,.12)}.tour-grid{grid-template-columns:1fr}.quiz-invite__grid{grid-template-columns:1fr;gap:45px}.quiz-invite__visual{min-height:420px;order:2}.quiz-invite__copy{max-width:650px}.benefit-grid{grid-template-columns:1fr 1fr}.process__grid{grid-template-columns:1fr;gap:45px}.honest-reviews__box{grid-template-columns:1fr;gap:35px}.faq__grid{grid-template-columns:1fr;gap:40px}.faq__intro{position:static}.final-cta__grid{grid-template-columns:1fr;gap:50px}.footer__grid{grid-template-columns:1.5fr 1fr;row-gap:40px}}
@media(max-width:620px){:root{--header-height:70px}.container{width:calc(100% - 32px)}.section{padding:65px 0}.header{height:var(--header-height);padding:0 16px;gap:8px;grid-template-columns:1fr auto}.brand{gap:9px}.brand__mark{width:33px}.brand span{font-size:23px}.button--header{display:none}.menu-toggle{display:block;position:relative}.nav{right:12px;top:calc(100% + 7px);width:calc(100vw - 24px)}.scroll-progress{top:var(--header-height)}.section-heading h2,.quiz-invite h2,.process h2,.honest-reviews h2,.faq h2,.final-cta h2{font-size:44px}.section-heading--split{margin-bottom:30px}.section-heading p{font-size:14px}.hero__inner{padding:38px 18px 30px}.eyebrow{font-size:11px}.hero__title{margin-top:17px;font-size:clamp(43px,12.5vw,55px)}.hero__description{font-size:14px}.hero__actions{display:grid;gap:10px;margin-top:22px}.hero__actions .button{width:100%}.hero__facts{margin-top:23px;padding-top:17px}.hero__facts>div{display:block;padding-right:7px}.hero__facts>div+div{padding-left:12px}.hero__facts strong{display:block;margin-bottom:5px;font-size:25px}.hero__facts span{font-size:8px}.hero__image{height:72vw;min-height:310px;background-position:51% 50%}.trust-strip__inner{grid-template-columns:1fr}.trust-strip span{min-height:59px;padding:10px 24px;border-left:0!important;border-top:1px solid rgba(255,255,255,.1)}.tour-card{min-height:470px;border-radius:18px}.tour-card__content{padding:24px}.tour-card__topline{top:18px;left:18px;right:18px}.tour-card__tag,.tour-card__days{padding:8px 11px;font-size:9px}.tour-card h3{font-size:44px}.tour-card__lead{font-size:12px}.tour-card__footer{align-items:center}.tour-card__meta{gap:13px}.tour-card__meta strong{font-size:11px}.quiz-invite__visual{min-height:315px}.postcard{width:68%;padding:6px}.quiz-invite__stamp{width:98px;height:98px;left:43%;top:38%;border-width:5px;font-size:10px}.quiz-invite__stamp strong{font-size:14px}.quiz-invite__copy p{font-size:14px}.benefit-grid{grid-template-columns:1fr}.benefit{min-height:240px;padding:28px}.benefit__icon{margin-bottom:28px}.process__grid{gap:32px}.steps li{grid-template-columns:53px 1fr;gap:14px}.honest-reviews__box{gap:24px}.faq__intro>p{font-size:14px}.accordion__trigger{padding:21px 2px;font-size:13px}.final-cta__grid{gap:35px}.lead-form{padding:24px 20px}.footer{padding-top:55px}.footer__grid{grid-template-columns:1fr;gap:25px}.footer__bottom{display:block;margin-top:35px}.footer__bottom div{margin-top:15px}.tour-modal{width:100%;max-height:100dvh;border-radius:0}.tour-modal__hero{height:230px}.tour-modal__hero h2{left:22px;bottom:20px;font-size:45px}.tour-modal__body{padding:25px 20px 35px}.tour-modal__summary{grid-template-columns:1fr 1fr}.day{grid-template-columns:55px 1fr}.included{grid-template-columns:1fr}.tour-modal__cta{display:block}.tour-modal__cta .button{width:100%;margin-top:16px}.quiz-modal{width:100%;max-height:100dvh;padding:28px 18px;border-radius:0}.quiz-options{grid-template-columns:1fr}.quiz-stage h2{font-size:30px}.quiz-controls .button{min-width:0;flex:1}.booking-modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:18px}.booking-modal__layout{display:block;min-height:0}.booking-modal__visual{height:155px}.booking-modal__visual-copy{left:20px;bottom:18px}.booking-modal__visual-copy h2{font-size:36px}.booking-form{padding:24px 18px 20px}.booking-form__heading h3{font-size:29px}.booking-form__heading p{margin-bottom:14px}.booking-selection{margin-bottom:14px}.booking-fields{gap:10px 8px}.booking-form>.button{margin-top:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Hero composition follows the supplied first-screen reference. */
.hero__inner{max-width:750px;padding-top:clamp(32px,4.8vh,50px)}
.hero__title{margin:17px 0 14px;font-size:clamp(52px,4.7vw,76px);line-height:.93}
.hero__description{max-width:610px}
.hero__actions{margin-top:21px}
.hero__features{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:min(730px,43.6vw);margin-top:22px}
.hero-feature{min-width:0;min-height:104px;display:grid;grid-template-columns:46px 1fr;gap:10px;align-items:center;padding:13px 11px;background:linear-gradient(145deg,rgba(255,247,238,.96),rgba(246,235,222,.86));border:1px solid rgba(185,80,50,.07);border-radius:13px;box-shadow:0 12px 30px rgba(89,53,32,.055)}
.hero-feature__icon{width:44px;height:44px;display:grid;place-items:center;color:var(--accent);background:#f4e5d5;border-radius:50%}
.hero-feature__icon svg{width:28px;height:28px;stroke-width:1.45}
.hero-feature h2{margin:0 0 8px;font-size:12px;line-height:1.35;font-weight:700}
.hero-feature p{margin:0;color:var(--text-soft);font-size:8.5px;line-height:1.45}

@media(max-width:1180px){.hero__features{width:min(96%,43.6vw)}.hero-feature{grid-template-columns:38px 1fr;padding:10px 8px}.hero-feature__icon{width:37px;height:37px}.hero-feature h2{font-size:10.5px}.hero-feature p{font-size:7.5px}}
@media(max-width:900px){.hero__inner{padding-top:42px}.hero__title{font-size:clamp(54px,8vw,66px)}.hero__features{width:100%;gap:10px}.hero-feature{grid-template-columns:45px 1fr;padding:12px}.hero-feature__icon{width:43px;height:43px}.hero-feature h2{font-size:12px}.hero-feature p{font-size:8.5px}}
@media(max-width:620px){.hero__inner{padding-top:36px}.hero__title{font-size:clamp(40px,11.7vw,50px);line-height:.96}.hero__features{grid-template-columns:1fr;margin-top:20px}.hero-feature{min-height:76px;grid-template-columns:48px 1fr;padding:10px 13px}.hero-feature__icon{width:44px;height:44px}.hero-feature h2{margin-bottom:4px;font-size:13px}.hero-feature p{font-size:9px}}

.consent{display:flex!important;align-items:flex-start;gap:9px;color:var(--text-soft)!important;font-size:11px!important;line-height:1.45;text-transform:none!important;letter-spacing:0!important;cursor:pointer}
.consent input{width:17px!important;height:17px!important;min-width:17px;margin:0!important;padding:0!important;border:1px solid var(--border)!important;accent-color:var(--accent)}
.consent a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
.modal__close:focus-visible{outline:3px solid rgba(185,80,50,.35);outline-offset:2px}

@media(max-width:620px){
  body{font-size:16px}
  .brand span{font-size:26px}
  .brand__mark{width:38px}
  .menu-toggle span{width:28px;height:2px;margin:6px 0}
  .nav a{font-size:17px}
  .section{padding:72px 0}
  .kicker{font-size:13px}
  .section-heading h2,.quiz-invite h2,.honest-reviews h2,.faq h2,.final-cta h2{font-size:48px}
  .section-heading p,.quiz-invite__copy p,.honest-reviews p,.faq__intro>p,.final-cta__copy>p{font-size:16px;line-height:1.65}

  .hero{position:relative;display:block;background:#6b5547}
  .hero__image{position:absolute;inset:0;z-index:0;width:100%;height:100%;min-height:0;background-position:60% center}
  .hero__image:after{background:linear-gradient(180deg,rgba(48,29,19,.18),rgba(48,29,19,.38))}
  .hero__content{position:relative;z-index:1;width:100%;height:auto;background:linear-gradient(180deg,rgba(48,29,19,.46) 0%,rgba(48,29,19,.3) 43%,rgba(48,29,19,.4) 72%,rgba(48,29,19,.58) 100%)}
  .hero__inner{padding:40px 18px 38px}
  .eyebrow{padding:11px 16px;font-size:13px;background:rgba(242,230,216,.9)}
  .hero__title{color:#fffaf5;font-size:clamp(43px,12vw,52px);text-shadow:0 3px 24px rgba(32,20,14,.3)}
  .hero__description{color:rgba(255,250,245,.9);font-size:17px;line-height:1.6;text-shadow:0 2px 14px rgba(32,20,14,.25)}
  .hero__actions{gap:12px;margin-top:25px}
  .hero__actions .button{min-height:64px;font-size:17px;background-color:rgba(255,249,242,.88);backdrop-filter:blur(8px)}
  .hero__actions .button--primary{background:var(--accent)}
  .hero__actions .button--outline{color:var(--accent);background:rgba(255,249,242,.92)}
  .hero__features{gap:12px;margin-top:25px}
  .hero-feature{min-height:88px;grid-template-columns:56px 1fr;padding:13px 15px;background:rgba(255,249,242,.84);border-color:rgba(255,255,255,.5);box-shadow:0 14px 35px rgba(68,41,25,.1);backdrop-filter:blur(12px)}
  .hero-feature__icon{width:50px;height:50px}
  .hero-feature h2{font-size:16px}
  .hero-feature p{font-size:13px;line-height:1.5}
  .botanical{opacity:.45}

  .trust-strip span{min-height:66px;font-size:14px}
  .tour-card__tag,.tour-card__days{font-size:11px}
  .tour-card h3{font-size:48px}
  .tour-card__lead{font-size:15px;line-height:1.6}
  .tour-card__meta span{font-size:11px}
  .tour-card__meta strong{font-size:14px}
  .tours__note{font-size:13px}

  .quiz-invite__grid{display:flex;flex-direction:column;gap:28px}
  .quiz-invite__visual{order:1;width:100%;min-height:340px;margin:0}
  .quiz-invite__copy{order:2;width:100%}
  .quiz-invite__copy small{font-size:13px;line-height:1.5}
  .quiz-invite__stamp{width:112px;height:112px;font-size:12px}
  .quiz-invite__stamp strong{font-size:17px}

  .benefit h3{font-size:28px}
  .benefit p{font-size:15px}
  .honest-reviews__accent{font-size:27px!important}
  .accordion__trigger{font-size:16px;line-height:1.45}
  .accordion__panel p{padding-right:5px;font-size:15px}
  .final-cta__contact span{font-size:12px}
  .final-cta__contact a{font-size:29px}

  .lead-form{padding:27px 22px;border-radius:24px}
  .lead-form label{font-size:13px}
  .lead-form input,.lead-form select{font-size:16px;padding:15px 0}
  .lead-form .button{font-size:17px}
  .consent{font-size:13px!important;line-height:1.45}
  .consent input{width:20px!important;height:20px!important;min-width:20px}

  .tour-modal{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:22px;overflow:auto}
  .tour-modal .modal__close{position:sticky;top:10px;right:auto;float:none;display:block;width:46px;height:46px;margin:10px 10px -56px auto;background:rgba(255,249,242,.94);box-shadow:0 8px 22px rgba(45,28,19,.18);font-size:28px}
  .tour-modal__hero{width:100%;height:260px}
  .tour-modal__hero h2{left:22px;right:70px;bottom:20px;font-size:50px}
  .tour-modal__body{padding:28px 22px 35px}
  .tour-modal__summary{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:32px}
  .tour-modal__summary div{padding:16px;border-radius:13px}
  .tour-modal__summary span{font-size:11px;line-height:1.4}
  .tour-modal__summary strong{font-size:16px;line-height:1.35}
  .tour-modal__body h3{font-size:36px}
  .day{grid-template-columns:1fr;gap:8px;padding:20px 0}
  .day strong{font-size:13px}
  .day p{font-size:16px;line-height:1.65}
  .included{gap:13px}
  .included>div{padding:20px;border-radius:16px}
  .included h4{font-size:20px}
  .included p{font-size:15px;line-height:1.65}
  .tour-modal__cta p{font-size:14px;line-height:1.5}

  .quiz-modal{width:calc(100% - 28px);max-height:calc(100dvh - 100px);margin-top:58px;padding:28px 20px 24px;border-radius:24px;overflow:visible}
  .quiz-modal .modal__close{top:-58px;right:0;width:46px;height:46px;margin:0;background:var(--surface);box-shadow:0 10px 28px rgba(45,28,19,.2);font-size:28px}
  .quiz-header{font-size:13px}
  .quiz-progress{margin-bottom:25px}
  #quiz-form{max-height:calc(100dvh - 220px);overflow:auto;padding:2px}
  .quiz-stage h2{font-size:37px;line-height:1.08}
  .quiz-option label{padding:17px 15px;border-radius:14px;font-size:15px;line-height:1.4}
  .quiz-contact input{padding:17px;border-radius:14px;font-size:16px}
  .quiz-controls{gap:10px;margin-top:23px}
  .quiz-controls .button{min-height:58px;font-size:15px;border-radius:14px}
  .quiz-result p{font-size:16px}

  .booking-modal{width:calc(100% - 24px);max-height:none;margin-top:58px;border-radius:0;overflow:visible;background:transparent;box-shadow:none}
  .booking-modal .modal__close{top:-54px;right:0;width:46px;height:46px;margin:0;background:var(--surface);box-shadow:0 10px 28px rgba(45,28,19,.2);font-size:28px}
  .booking-modal__layout{display:block;max-height:calc(100dvh - 92px);overflow:auto;border-radius:24px;background:var(--surface);box-shadow:0 25px 70px rgba(38,23,16,.32)}
  .booking-modal__visual{height:185px}
  .booking-modal__visual-copy span{font-size:12px}
  .booking-modal__visual-copy h2{font-size:43px}
  .booking-form{padding:27px 20px 23px}
  .booking-form__heading h3{font-size:34px}
  .booking-form__heading p{font-size:14px;line-height:1.55}
  .booking-selection label,.booking-fields label{font-size:11px}
  .booking-selection input{padding:12px;font-size:13px;border-radius:11px}
  .booking-fields input,.booking-fields select{padding:13px 0;font-size:15px}
  .booking-form>.button{min-height:60px;font-size:16px;border-radius:14px}

  .footer__brand>p,.footer__grid>div:not(:first-child)>a,.footer__grid>div:not(:first-child)>p{font-size:14px}
  .footer h3{font-size:12px}
  .footer small,.footer__bottom{font-size:11px;line-height:1.55}
}

/* Readability pass: comfortable type for older travellers on every screen. */
body{font-size:21px;line-height:1.7}
.button{min-height:62px;font-size:19px}
.kicker{font-size:16px;line-height:1.45}
.nav a{font-size:18px}
.eyebrow{font-size:17px}
.hero{height:max(850px,calc(100svh - var(--header-height)));max-height:none}
.hero__description{font-size:clamp(21px,1.55vw,24px);line-height:1.65}
.hero__features{width:min(790px,48vw);gap:12px}
.hero-feature{min-height:148px;grid-template-columns:52px 1fr;padding:18px 16px}
.hero-feature h2{margin-bottom:8px;font-size:19px;line-height:1.35}
.hero-feature p{font-size:17px;line-height:1.6}
.section-heading p,.quiz-invite__copy p{font-size:22px;line-height:1.75}
.tour-card{min-height:640px}
.tour-card__tag,.tour-card__days{font-size:16px;font-weight:700}
.tour-card__lead{min-height:105px;font-size:23px;line-height:1.6}
.tour-card__meta span{font-size:15px;line-height:1.45}
.tour-card__meta strong{font-size:20px;line-height:1.45}
.tour-card__button{width:58px;height:58px;font-size:28px}
.tours__note{font-size:18px}
.quiz-invite__copy small{font-size:18px;line-height:1.6}
.quiz-invite__stamp{font-size:17px}
.quiz-invite__stamp strong{font-size:24px}
.benefit{min-height:340px}
.benefit h3{font-size:32px;line-height:1.2}
.benefit p{font-size:20px;line-height:1.75}
.process__copy p,.honest-reviews p,.faq__intro>p,.final-cta__copy>p{font-size:21px;line-height:1.8}
.text-link{font-size:19px}
.steps p{font-size:20px;line-height:1.75}
.accordion__trigger{font-size:21px;line-height:1.55}
.accordion__panel p{font-size:20px;line-height:1.8}
.final-cta__contact span{font-size:16px}
.lead-form label{font-size:17px;line-height:1.55}
.lead-form input,.lead-form select{font-size:20px}
.consent{font-size:16px!important;line-height:1.6}
.form-success{font-size:17px}
.footer__brand>p,.footer__grid>div:not(:first-child)>a,.footer__grid>div:not(:first-child)>p{font-size:18px}
.footer h3{font-size:15px}
.footer small,.footer__bottom{font-size:15px;line-height:1.7}

.tour-modal__summary span{font-size:15px;line-height:1.45}
.tour-modal__summary strong{font-size:20px;line-height:1.45}
.tour-modal__body h3{font-size:38px}
.day strong{font-size:16px}
.day p{font-size:21px;line-height:1.8}
.included h4{font-size:24px}
.included p{font-size:20px;line-height:1.75}
.tour-modal__cta p{font-size:18px;line-height:1.6}
.quiz-header{font-size:16px}
.quiz-option label{font-size:19px;line-height:1.55}
.quiz-contact input{font-size:20px}
.quiz-result p{font-size:20px}
.booking-modal__visual-copy span{font-size:15px}
.booking-form__heading p{font-size:18px;line-height:1.7}
.booking-selection label,.booking-fields label{font-size:15px;line-height:1.45}
.booking-selection input{font-size:17px}
.booking-fields input,.booking-fields select{font-size:18px}

@media(max-width:1180px) and (min-width:901px){
  .hero__features{width:52vw;grid-template-columns:1fr}
  .hero-feature{min-height:108px;grid-template-columns:52px 1fr;padding:14px 16px}
  .hero-feature__icon{width:44px;height:44px}
  .hero-feature h2{font-size:19px}
  .hero-feature p{font-size:17px}
}

@media(max-width:900px){
  .hero{height:auto;min-height:0;max-height:none}
  .hero__features{width:100%}
  .hero-feature{grid-template-columns:54px 1fr}
  .hero-feature h2{font-size:19px}
  .hero-feature p{font-size:17px}
}

@media(max-width:620px){
  body{font-size:20px;line-height:1.7}
  .hero{height:auto;min-height:0}
  .kicker{font-size:16px}
  .hero__description{font-size:21px;line-height:1.7}
  .hero-feature{min-height:118px}
  .hero-feature h2{font-size:21px}
  .hero-feature p{font-size:18px;line-height:1.65}
  .tour-card{min-height:640px}
  .tour-card__tag,.tour-card__days{font-size:15px}
  .tour-card__lead{min-height:0;font-size:21px;line-height:1.65}
  .tour-card__meta span{font-size:14px}
  .tour-card__meta strong{font-size:18px}
  .tours__note{font-size:18px}
  .section-heading p,.quiz-invite__copy p,.honest-reviews p,.faq__intro>p,.final-cta__copy>p{font-size:20px;line-height:1.75}
  .quiz-invite__copy small{font-size:18px}
  .benefit p{font-size:20px;line-height:1.8}
  .accordion__trigger{font-size:21px}
  .accordion__panel p{font-size:20px;line-height:1.8}
  .lead-form label{font-size:17px}
  .consent{font-size:17px!important}
  .tour-modal__summary span{font-size:15px}
  .tour-modal__summary strong{font-size:19px}
  .day strong{font-size:17px}
  .day p{font-size:21px}
  .included p{font-size:20px}
  .tour-modal__cta p{font-size:18px}
  .quiz-header{font-size:16px}
  .quiz-option label{font-size:19px}
  .quiz-controls .button{font-size:18px}
  .booking-form__heading p{font-size:18px}
  .booking-selection label,.booking-fields label{font-size:15px}
  .booking-selection input,.booking-fields input,.booking-fields select{font-size:18px}
  .footer__brand>p,.footer__grid>div:not(:first-child)>a,.footer__grid>div:not(:first-child)>p{font-size:18px}
  .footer h3,.footer small,.footer__bottom{font-size:15px}
}

/* Simplified first screen: one clear, centered message. */
.hero{height:calc(100svh - var(--header-height));min-height:680px;max-height:820px}
.hero__content{display:grid;align-items:center}
.hero__inner{width:100%;max-width:780px;margin:0 auto;padding:48px clamp(28px,4vw,64px);text-align:left}
.eyebrow{margin-right:0;margin-left:0}
.hero__description{margin-right:0;margin-left:0}
.hero__actions{justify-content:flex-start}

@media(max-width:900px){
  .hero{height:auto;min-height:0;max-height:none}
  .hero__inner{padding:58px 28px 52px}
}

@media(max-width:620px){
  .hero__inner{padding:48px 18px 52px}
  .hero__title{font-size:clamp(42px,12vw,52px);line-height:1}
  .hero__actions{justify-content:stretch}
}

/* Social media showcase with a responsive phone mockup. */
.social-showcase{padding:150px 0 100px;overflow:hidden;background:#eee3d7}
.social-showcase__panel{position:relative;min-height:600px;display:grid;grid-template-columns:minmax(330px,.8fr) minmax(0,1.35fr);align-items:center;gap:clamp(54px,7vw,110px);padding:65px clamp(42px,6vw,90px);border-radius:38px;color:#fff9f2;background-color:var(--accent);background-image:radial-gradient(circle at 15% 20%,rgba(255,255,255,.14) 0 2px,transparent 3px),linear-gradient(135deg,transparent 47%,rgba(255,255,255,.055) 48% 52%,transparent 53%);background-size:64px 64px,88px 88px;box-shadow:0 28px 70px rgba(104,52,34,.2)}
.phone-mockup{position:relative;z-index:2;width:min(310px,100%);margin:-125px auto -80px;filter:drop-shadow(0 32px 30px rgba(37,21,15,.36));transform:rotate(-2deg)}
.phone-mockup:before{content:"";position:absolute;inset:-4px;border:1px solid rgba(255,255,255,.28);border-radius:49px;pointer-events:none}
.phone-mockup__buttons:before,.phone-mockup__buttons:after{content:"";position:absolute;left:-7px;width:5px;border-radius:4px 0 0 4px;background:#443c40}
.phone-mockup__buttons:before{top:105px;height:68px}.phone-mockup__buttons:after{top:190px;height:42px}
.phone-mockup__screen{position:relative;min-height:626px;overflow:hidden;padding:17px 15px 22px;border:8px solid #201c20;border-radius:46px;color:#2e2724;background:#fff9f2;box-shadow:inset 0 0 0 2px #6d6266}
.phone-mockup__island{position:absolute;z-index:3;top:12px;left:50%;width:94px;height:26px;border-radius:20px;background:#171417;transform:translateX(-50%)}
.phone-mockup__status{height:30px;display:flex;justify-content:space-between;align-items:start;padding:1px 7px 0;font-size:10px;font-weight:700}
.phone-mockup__profile{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:9px;padding:12px 3px}
.phone-mockup__avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--accent)}
.phone-mockup__avatar svg{width:29px;stroke-width:1.8}.phone-mockup__profile strong,.phone-mockup__profile small{display:block;line-height:1.35}.phone-mockup__profile strong{font-size:12px}.phone-mockup__profile small{color:#87766d;font-size:9px}.phone-mockup__more{font-size:13px;font-weight:800}
.phone-mockup__post{position:relative;height:300px;overflow:hidden;border-radius:17px;color:#fff;background:#5b3d2f}
.phone-mockup__post:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(35,22,16,.78))}
.phone-mockup__post img{width:100%;height:100%;object-fit:cover}
.phone-mockup__post span,.phone-mockup__post strong{position:absolute;z-index:1;left:18px;right:18px}.phone-mockup__post span{bottom:61px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.phone-mockup__post strong{bottom:20px;font:600 25px/1.05 "Cormorant Garamond",serif}
.phone-mockup__caption{padding:14px 4px 16px;font-size:10px;line-height:1.55}.phone-mockup__caption strong{font-weight:800}
.phone-mockup__apps{display:flex;justify-content:space-between;gap:7px;padding-top:12px;border-top:1px solid #eaded5}
.phone-mockup__apps span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:white;background:#554a46;font-size:12px;font-weight:800}.phone-mockup__apps span:nth-child(1){background:#269ed8}.phone-mockup__apps span:nth-child(2){background:#27b85b}.phone-mockup__apps span:nth-child(3){background:#2787f5}.phone-mockup__apps span:nth-child(4){background:#7556d8}.phone-mockup__apps span:nth-child(5){background:linear-gradient(135deg,#7b37ad,#e84976,#f5a447)}
.social-showcase__copy{position:relative;z-index:1}.social-showcase__kicker{display:block;margin-bottom:14px;color:#f5cbbc;font-size:16px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.social-showcase__copy h2{max-width:720px;margin:0;font:600 clamp(58px,6vw,84px)/.94 "Cormorant Garamond",Georgia,serif;letter-spacing:-.035em}.social-showcase__copy>p{max-width:760px;margin:24px 0 30px;color:rgba(255,249,242,.85);font-size:21px;line-height:1.7}
.social-platforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:760px}.social-platform{min-height:82px;display:flex;align-items:center;gap:14px;padding:13px 16px;border:1px solid rgba(255,255,255,.24);border-radius:18px;color:var(--text);background:rgba(255,249,242,.96);box-shadow:0 12px 28px rgba(70,31,20,.12)}.social-platform:last-child{grid-column:1/-1}.social-platform__icon{width:52px;height:52px;min-width:52px;display:grid;place-items:center;border-radius:15px;color:#fff;font-size:15px;font-weight:800}.social-platform__icon svg{width:29px;height:29px;stroke-width:1.7}.social-platform__icon--telegram{background:#269ed8}.social-platform__icon--whatsapp{background:#27b85b}.social-platform__icon--vk{background:#2787f5}.social-platform__icon--max{background:linear-gradient(145deg,#5357d9,#8f52d4);font-size:23px}.social-platform__icon--instagram{background:linear-gradient(135deg,#7137ad,#e34877 55%,#f2a347)}.social-platform strong,.social-platform small{display:block}.social-platform strong{font-size:18px;line-height:1.3}.social-platform small{margin-top:3px;color:var(--text-soft);font-size:14px;line-height:1.35}.social-showcase__legal{display:block;max-width:720px;margin-top:18px;color:rgba(255,249,242,.64);font-size:13px;line-height:1.55}
.footer__grid{grid-template-columns:1.5fr 1fr 1.25fr}

@media(max-width:900px){
  .social-showcase{padding:125px 0 80px}.social-showcase__panel{grid-template-columns:1fr;gap:64px;padding:52px 34px 46px}.phone-mockup{width:290px;margin:-110px auto 0}.social-showcase__copy{text-align:left}.social-platforms{max-width:none}.footer__grid{grid-template-columns:1fr 1fr}
}

@media(max-width:620px){
  .social-showcase{padding:100px 0 64px}.social-showcase__panel{width:calc(100% - 24px);gap:44px;padding:38px 18px 30px;border-radius:28px}.phone-mockup{width:250px;margin:-86px auto 0}.phone-mockup__screen{min-height:530px;padding:15px 12px 18px;border-width:7px;border-radius:39px}.phone-mockup__island{top:10px;width:78px;height:23px}.phone-mockup__post{height:240px}.social-showcase__copy h2{font-size:54px}.social-showcase__copy>p{font-size:20px;line-height:1.7}.social-platforms{grid-template-columns:1fr}.social-platform:last-child{grid-column:auto}.social-platform{min-height:88px;padding:15px}.social-platform strong{font-size:20px}.social-platform small{font-size:15px}.social-showcase__legal{font-size:13px}.footer__grid{grid-template-columns:1fr}
}

/* Telegram channel shown inside the phone. */
.phone-mockup__screen{min-height:642px;padding:0;border-color:#18171a;background:#d7e7ef}
.phone-mockup__status{height:43px;align-items:flex-start;padding:16px 22px 0;background:#fff;font-size:9px}
.telegram-header{height:62px;display:grid;grid-template-columns:22px 40px 1fr auto;align-items:center;gap:7px;padding:7px 10px;color:#222;background:#fff;border-bottom:1px solid #e8ebed}
.telegram-header__back{color:#229ed9;font-size:29px;line-height:1}
.telegram-header__avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--accent)}
.telegram-header__avatar svg{width:28px;stroke-width:1.7}
.telegram-header__name strong,.telegram-header__name small{display:block;white-space:nowrap}
.telegram-header__name strong{font-size:12px;line-height:1.3}.telegram-header__name small{color:#8a949b;font-size:9px;line-height:1.3}
.telegram-header__actions{color:#229ed9;font-size:14px;white-space:nowrap}
.telegram-pinned{position:relative;height:43px;padding:6px 12px 6px 17px;background:#fff;border-bottom:1px solid #e1e5e8;line-height:1.25}
.telegram-pinned:before{content:"";position:absolute;left:9px;top:7px;bottom:7px;width:2px;border-radius:2px;background:#229ed9}
.telegram-pinned span,.telegram-pinned strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.telegram-pinned span{color:#229ed9;font-size:8px;font-weight:700}.telegram-pinned strong{color:#545d63;font-size:9px}
.telegram-chat{height:430px;overflow:hidden;padding:10px 9px 12px;background-color:#c9dde7;background-image:radial-gradient(circle at 20% 25%,rgba(255,255,255,.34) 0 2px,transparent 2.5px),radial-gradient(circle at 75% 70%,rgba(92,137,160,.15) 0 3px,transparent 3.5px);background-size:37px 37px,51px 51px}
.telegram-date{display:block;width:max-content;margin:0 auto 7px;padding:3px 9px;border-radius:9px;color:#fff;background:rgba(86,125,145,.58);font-size:8px;font-weight:700}
.telegram-post{position:relative;overflow:hidden;border-radius:11px 11px 4px 11px;background:#fff;box-shadow:0 1px 2px rgba(42,73,89,.18)}
.telegram-post>img{width:100%;height:185px;object-fit:cover}
.telegram-post__body{padding:9px 10px 7px;color:#273138}.telegram-post__body>strong{display:block;font-size:11px;line-height:1.35}
.telegram-post__body p{margin:5px 0;font-size:9px;line-height:1.42}.telegram-post__link{color:#188ac1;font-size:9px;font-weight:700}
.telegram-post__meta{display:flex;justify-content:space-between;margin-top:6px;color:#8b989f;font-size:7px}
.telegram-reactions{display:flex;gap:5px;padding:0 9px 8px}.telegram-reactions span{padding:3px 7px;border-radius:9px;background:#edf4f7;color:#56666e;font-size:8px}
.telegram-subscribe{height:48px;display:flex;align-items:center;justify-content:center;gap:8px;color:#229ed9;background:#fff;border-top:1px solid #e2e7ea;font-size:10px;letter-spacing:.04em}
.social-platform__icon svg path{fill:currentColor;stroke:none}.social-platform__icon--max svg{width:32px;height:32px}

@media(max-width:620px){
  .phone-mockup__screen{min-height:574px;padding:0}.phone-mockup__status{height:39px;padding-top:14px}.telegram-header{height:57px;grid-template-columns:20px 36px 1fr auto}.telegram-header__avatar{width:36px;height:36px}.telegram-pinned{height:40px}.telegram-chat{height:377px}.telegram-post>img{height:148px}.telegram-subscribe{height:47px}
}

/* Focused mobile hero and unified quiz stamp typography. */
.hero__description span{display:inline}
.quiz-invite__stamp{font-family:"Manrope",system-ui,sans-serif;font-size:17px;font-weight:700;line-height:1.35}

@media(max-width:620px){
  .hero__image{background-image:url("assets/mountain-sunset.jpg");background-position:54% center}
  .hero__image:after{background:linear-gradient(180deg,rgba(31,25,22,.32),rgba(31,25,22,.48))}
  .hero__title{margin-top:0;font-size:clamp(40px,10.8vw,46px)}
  .hero__description{max-width:none;font-size:17.85px;line-height:1.6}
  .hero__description span{display:block;white-space:nowrap}
  .quiz-invite__stamp{font-size:15px;line-height:1.35}
}

@media(max-width:360px){
  .hero__description{font-size:16.5px}
}

/* Compact, tap-to-advance quiz on phones. */
@media(max-width:620px){
  .quiz-modal{inset:0;width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:21px 18px 18px;border-radius:22px;overflow:hidden}
  .quiz-modal .modal__close{position:absolute;top:10px;right:10px;width:40px;height:40px;margin:0;background:var(--milk);box-shadow:none;font-size:25px}
  .quiz-header{min-height:40px;align-items:center;padding-right:48px;font-size:12px}
  .quiz-progress{height:3px;margin-bottom:17px}
  #quiz-form{max-height:calc(100dvh - 112px);overflow:auto;padding:0 2px 2px}
  .quiz-stage h2{margin-bottom:15px;font-size:28px;line-height:1.08}
  .quiz-options{gap:7px}
  .quiz-option label{min-height:46px;padding:11px 13px;border-radius:12px;font-size:14px;line-height:1.35}
  .quiz-stage.is-advancing{pointer-events:none;opacity:.72;transition:opacity .18s}
  #quiz-form.is-auto-step #quiz-next{display:none}
  #quiz-form.is-auto-step.is-first-step .quiz-controls{display:none!important}
  #quiz-form.is-auto-step .quiz-controls{justify-content:flex-start;margin-top:12px}
  #quiz-form.is-auto-step .quiz-controls .button{min-height:46px;flex:0 0 auto;padding:10px 18px;font-size:14px}
  .quiz-contact{gap:11px}
  .quiz-contact input{padding:13px;font-size:15px}
  .quiz-controls{margin-top:16px}
  .quiz-controls .button{min-height:50px;font-size:15px}
}

/* Clean consent checkbox without native rendering artifacts. */
.consent input[type="checkbox"]{appearance:none;-webkit-appearance:none;display:grid!important;place-content:center;width:22px!important;height:22px!important;min-width:22px!important;margin:1px 0 0!important;padding:0!important;border:2px solid #cdb8aa!important;border-radius:6px!important;background:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);cursor:pointer;transition:border-color .18s,background-color .18s,box-shadow .18s}
.consent input[type="checkbox"]:after{content:"";width:5px;height:9px;border-right:2px solid #fff;border-bottom:2px solid #fff;opacity:0;transform:translateY(-1px) rotate(45deg) scale(.65);transition:opacity .15s,transform .15s}
.consent input[type="checkbox"]:checked{border-color:var(--accent)!important;background:var(--accent)!important;box-shadow:none}
.consent input[type="checkbox"]:checked:after{opacity:1;transform:translateY(-1px) rotate(45deg) scale(1)}
.consent input[type="checkbox"]:focus-visible{outline:3px solid rgba(185,80,50,.24);outline-offset:3px}

/* Refined tour details modal. */
.tour-modal{width:min(1000px,calc(100% - 32px));border-radius:28px;overflow:auto;background:#fffaf4}
.tour-modal .modal__close{position:sticky;top:14px;right:auto;float:none;display:grid;place-items:center;width:46px;height:46px;margin:14px 14px -60px auto;border:2px solid rgba(185,80,50,.24);background:rgba(255,250,244,.94);box-shadow:0 8px 24px rgba(38,23,16,.16);font-size:25px}
.tour-modal__hero{height:340px}
.tour-modal__hero:after{background:linear-gradient(180deg,rgba(30,20,15,.04) 20%,rgba(30,20,15,.82) 100%)}
.tour-modal__tag{position:absolute;z-index:2;left:40px;bottom:98px;padding:8px 13px;border:1px solid rgba(255,255,255,.45);border-radius:999px;color:#fff;background:rgba(42,28,21,.3);backdrop-filter:blur(10px);font-size:14px;font-weight:700}
.tour-modal__hero h2{left:40px;right:90px;bottom:30px;font-size:64px;line-height:.95}
.tour-modal__body{padding:38px 44px 48px}
.tour-modal__summary{display:flex;gap:0;margin:0 0 26px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.tour-modal__summary div{min-width:230px;padding:18px 34px 18px 0;background:transparent;border-radius:0}
.tour-modal__summary div+div{padding-left:34px;border-left:1px solid var(--border)}
.tour-modal__summary span{font-size:13px;letter-spacing:.08em}
.tour-modal__summary strong{margin-top:5px;font-size:21px}
.tour-modal__summary .tour-modal__date{
  min-width:260px;
  padding:14px 18px 14px 24px;
  color:#fff;
  border-left:0;
  border-radius:18px;
  background:linear-gradient(135deg,var(--accent),#43acd9);
  box-shadow:0 16px 34px rgba(37,132,184,.22);
}
.tour-modal__summary .tour-modal__date span{
  display:flex;
  align-items:center;
  gap:8px;
  color:rgba(255,255,255,.78);
}
.tour-modal__date svg{
  width:18px;
  height:18px;
  flex:0 0 auto;
  stroke-width:1.8;
}
.tour-modal__summary .tour-modal__date strong{
  color:#fff;
  font-weight:800;
  letter-spacing:.02em;
}
.tour-modal__lead{max-width:780px;margin:0 0 40px;color:var(--text-soft);font-size:20px;line-height:1.7}
.tour-gallery{margin:0 0 42px;padding:24px;border:1px solid rgba(37,132,184,.14);border-radius:26px;background:linear-gradient(145deg,rgba(232,245,252,.96),rgba(255,250,244,.96));box-shadow:0 22px 55px rgba(18,71,98,.08);overflow:hidden}
.tour-gallery__heading{display:grid;grid-template-columns:1fr minmax(220px,320px);gap:24px;align-items:end;margin-bottom:18px}
.tour-gallery__heading span{display:block;margin-bottom:7px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.tour-modal__body .tour-gallery__heading h3{margin:0;font-size:38px;line-height:1.02}
.tour-gallery__heading p{margin:0;color:var(--text-soft);font-size:14px;line-height:1.55}
.tour-gallery__rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tour-gallery__card{position:relative;height:230px;margin:0;overflow:hidden;border-radius:22px;background:#d8edf7;box-shadow:0 16px 34px rgba(18,71,98,.1)}
.tour-gallery__card:nth-child(2){transform:translateY(16px)}
.tour-gallery__card img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.tour-gallery__card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,35,49,0) 42%,rgba(9,35,49,.45));pointer-events:none}
.tour-gallery__card figcaption{position:absolute;left:14px;bottom:12px;z-index:1;color:rgba(255,255,255,.9);font-size:12px;font-weight:800;letter-spacing:.12em}
.tour-gallery__card:hover img{transform:scale(1.045);filter:saturate(1.08)}
.tour-modal__body h3{margin:0;font-size:40px}
.itinerary{margin:22px 0 42px;border-bottom:1px solid var(--border)}
.day{grid-template-columns:58px 1fr;gap:20px;padding:23px 0}
.day__number{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:var(--accent);background:#f4e5d8;font-size:15px;font-weight:800}
.day strong{display:block;margin:2px 0 5px;font-size:14px;letter-spacing:.08em}
.day p{font-size:19px;line-height:1.7}
.included{grid-template-columns:1fr;gap:16px}
.included>div{padding:28px;border-radius:18px;background:#f5ebe1}
.included>div+div{background:#f8f4ef;border:1px solid rgba(58,42,34,.1)}
.included h4{margin:0 0 20px;font:600 36px/1.05 "Cormorant Garamond",Georgia,serif;letter-spacing:-.02em}
.tour-list{display:grid;gap:11px;margin:0;padding:0;list-style:none}
.tour-list li{position:relative;padding-left:20px;color:var(--text-soft);font-size:18px;line-height:1.55}
.tour-list li:before{content:"";position:absolute;left:0;top:.68em;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.included>div+div .tour-list li:before{background:#a9968a}
.tour-modal__notice{margin:22px 0 0;padding:16px 18px;border-left:3px solid var(--accent);color:var(--text-soft);background:#f8eee7;font-size:16px;line-height:1.6}
.tour-modal__cta{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-top:32px;padding-top:28px}
.tour-modal__download{display:grid;gap:9px;max-width:520px}
.tour-modal__download a{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:56px;padding:0 26px;border-radius:999px;color:#fff;background:var(--accent);box-shadow:0 14px 28px rgba(37,132,184,.22);font-weight:800;white-space:nowrap}
.tour-modal__download a:after{content:"↓";margin-left:10px;font-size:18px;line-height:1}
.tour-modal__download-placeholder{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:56px;padding:0 24px;border:1px solid rgba(37,132,184,.22);border-radius:999px;color:var(--accent);background:#eaf3f8;font-weight:800;white-space:nowrap}
.tour-modal__download span{color:var(--text-soft);font-size:16px;line-height:1.55}

@media(max-width:620px){
  .tour-modal{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:22px}
  .tour-modal__hero{height:235px}
  .tour-modal__tag{left:20px;bottom:76px;font-size:12px}
  .tour-modal__hero h2{left:20px;right:68px;bottom:22px;font-size:44px}
  .tour-modal__body{padding:25px 19px 34px}
  .tour-modal__summary{display:grid;grid-template-columns:1fr 1fr;margin-bottom:21px}
  .tour-modal__summary div{min-width:0;padding:14px 12px 14px 0}
  .tour-modal__summary div+div{padding-left:14px}
  .tour-modal__summary .tour-modal__date{
    grid-column:1/-1;
    padding:15px 16px;
    border-left:0;
  }
  .tour-modal__summary .tour-modal__date+div{border-left:0}
  .tour-modal__summary span{font-size:11px}.tour-modal__summary strong{font-size:17px}
  .tour-modal__lead{margin-bottom:31px;font-size:17px;line-height:1.65}
  .tour-gallery{margin-bottom:32px;padding:16px;border-radius:22px}
  .tour-gallery__heading{display:block;margin-bottom:15px}
  .tour-modal__body .tour-gallery__heading h3{font-size:30px}
  .tour-gallery__heading p{margin-top:10px;font-size:13px}
  .tour-gallery__rail{display:flex;gap:10px;margin:0 -16px;padding:0 16px 4px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
  .tour-gallery__rail::-webkit-scrollbar{display:none}
  .tour-gallery__card{width:78%;min-width:78%;height:220px;border-radius:18px;scroll-snap-align:start}
  .tour-gallery__card:nth-child(2){transform:none}
  .tour-modal__body h3{font-size:34px}
  .itinerary{margin:17px 0 32px}
  .day{grid-template-columns:44px 1fr;gap:12px;padding:19px 0}
  .day__number{width:40px;height:40px;font-size:13px}
  .day strong{font-size:13px}.day p{font-size:17px;line-height:1.7}
  .included{grid-template-columns:1fr;gap:12px}
  .included>div{padding:21px 19px}.included h4{font-size:31px}
  .tour-list{gap:10px}.tour-list li{font-size:17px;line-height:1.55}
  .tour-modal__notice{font-size:15px}
  .tour-modal__cta{display:grid;gap:14px;margin-top:26px;padding-top:23px}
  .tour-modal__download{max-width:none}
  .tour-modal__download a,.tour-modal__download-placeholder{width:100%;min-height:54px}
  .tour-modal__download span{font-size:14px}
  .tour-modal__cta .button{width:100%;margin-top:0}
}

/* Short booking form: contact details only. */
.booking-modal{width:min(820px,calc(100% - 32px));max-height:calc(100dvh - 32px);border-radius:28px;overflow:hidden;background:var(--surface);box-shadow:0 30px 100px rgba(38,23,16,.35)}
.booking-modal .modal__close{position:absolute;top:14px;right:14px;z-index:8;width:44px;height:44px;margin:0;background:rgba(255,249,242,.94);box-shadow:0 8px 24px rgba(38,23,16,.14);font-size:26px}
.booking-modal__layout{grid-template-columns:42% 58%;min-height:540px}
.booking-modal__visual-copy{left:30px;right:30px;bottom:30px}
.booking-modal__visual-copy h2{margin:0;font-size:54px}
.booking-form{justify-content:center;padding:48px 44px 40px}
.booking-form__heading h3{font-size:42px;line-height:1}
.booking-form__heading p{max-width:460px;margin:13px 0 30px;font-size:17px;line-height:1.65}
.booking-fields{display:grid;grid-template-columns:1fr;gap:22px}
.booking-fields label,.booking-fields label:nth-child(-n+2){grid-column:auto;gap:7px;font-size:14px;line-height:1.4}
.booking-fields input{padding:13px 0;font-size:19px}
.booking-form>.consent{margin-top:27px}
.booking-form>.button{min-height:62px;margin-top:25px;font-size:18px;border-radius:14px}

@media(max-width:620px){
  .booking-modal{inset:0;width:calc(100% - 20px);max-height:calc(100dvh - 20px);margin:auto;border-radius:22px;overflow:auto;background:var(--surface);box-shadow:0 24px 70px rgba(38,23,16,.34)}
  .booking-modal .modal__close{top:10px;right:10px;width:42px;height:42px;margin:0;background:rgba(255,249,242,.95);box-shadow:0 6px 18px rgba(38,23,16,.15);font-size:25px}
  .booking-modal__layout{display:block;min-height:0;max-height:none;overflow:visible;border-radius:0;background:var(--surface);box-shadow:none}
  .booking-modal__visual{height:150px}
  .booking-modal__visual-copy{left:20px;bottom:17px}
  .booking-modal__visual-copy h2{font-size:40px}
  .booking-form{padding:27px 20px 24px}
  .booking-form__heading h3{font-size:35px}
  .booking-form__heading p{margin:10px 0 24px;font-size:16px;line-height:1.6}
  .booking-fields{gap:18px}
  .booking-fields label{font-size:13px}
  .booking-fields input{padding:12px 0;font-size:17px}
  .booking-form>.consent{margin-top:24px}
  .booking-form>.button{min-height:58px;margin-top:22px;font-size:17px}
}

/* Generated travel photography: editorial, useful and consistent with the existing site. */
.hero-mobile{display:none}
.benefit-grid{gap:18px;border:0}
.benefit{min-height:0;padding:0;overflow:hidden;border:1px solid rgba(185,80,50,.13);border-radius:20px;background:#fffaf4;box-shadow:0 14px 36px rgba(89,53,32,.07);transition:transform .28s ease,box-shadow .28s ease}
.benefit:hover{background:#fffaf4;box-shadow:0 20px 48px rgba(89,53,32,.12);transform:translateY(-4px)}
.benefit--featured,.benefit--featured:hover{color:var(--text);background:#fffaf4}
.benefit__photo{width:100%;height:275px;object-fit:cover}
.benefit:nth-child(1) .benefit__photo{object-position:center 43%}
.benefit:nth-child(2) .benefit__photo{object-position:center 42%}
.benefit:nth-child(3) .benefit__photo{object-position:center 58%}
.benefit:nth-child(4) .benefit__photo{object-position:center 53%}
.benefit:nth-child(5) .benefit__photo{object-position:center 48%}
.benefit:nth-child(6) .benefit__photo{object-position:center 44%}
.benefit__body{position:relative;min-height:310px;padding:31px 30px 34px}
.benefit__number{top:31px;right:29px;color:rgba(185,80,50,.52);font:700 13px/1 "Manrope",sans-serif;letter-spacing:.08em}
.benefit--featured .benefit__number{color:rgba(185,80,50,.52)}
.benefit__icon,.benefit--featured .benefit__icon{width:50px;height:50px;margin:0 0 27px;color:var(--accent);background:#f6e5d5;border:1px solid rgba(185,80,50,.1)}
.benefit__icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.65}
.benefit h3{font-size:31px;line-height:1.12}
.benefit p,.benefit--featured p{color:var(--text-soft);font-size:18px;line-height:1.7}

@media(max-width:900px){
  .benefit__photo{height:260px}.benefit__body{min-height:300px}
}

@media(max-width:620px){
  .hero__image{display:none}
  .hero-mobile{position:relative;order:2;width:100%;height:112vw;min-height:420px;max-height:560px;display:block;overflow:hidden;background:#6d7b68;isolation:isolate}
  .hero-mobile:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(45,31,22,.02),rgba(45,31,22,.14));pointer-events:none}
  .hero-mobile__scene{position:absolute;inset:0;background-repeat:no-repeat;background-size:cover;will-change:opacity;opacity:0}
  .hero-mobile__scene--dagestan{background-image:url("assets/mountain-sunset.jpg");background-position:center center;animation:hero-mobile-one 18s infinite ease-in-out}
  .hero-mobile__scene--kalmykia{background-image:url("ai real photo/kalmykiya-oblozhka.webp");background-position:center center;animation:hero-mobile-two 18s infinite ease-in-out}
  .hero-mobile__scene--caucasus{background-image:url("ai real photo/kavkazskie-istorii-oblozhka.webp");background-position:43% center;animation:hero-mobile-three 18s infinite ease-in-out}
  .hero-mobile__dots{position:absolute;z-index:3;left:50%;bottom:18px;display:flex;gap:7px;padding:7px 9px;border-radius:99px;background:rgba(42,30,23,.2);backdrop-filter:blur(8px);transform:translateX(-50%)}
  .hero-mobile__dots span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55)}
  .hero-mobile__dots span:nth-child(1){animation:hero-dot-one 18s infinite}.hero-mobile__dots span:nth-child(2){animation:hero-dot-two 18s infinite}.hero-mobile__dots span:nth-child(3){animation:hero-dot-three 18s infinite}
  .benefit-grid{grid-template-columns:1fr;gap:18px}.benefit{min-height:0;border-radius:18px}.benefit__photo{height:auto;aspect-ratio:4/3}.benefit__body{min-height:0;padding:28px 25px 31px}.benefit__number{top:30px;right:25px}.benefit__icon,.benefit--featured .benefit__icon{margin-bottom:23px}.benefit h3{font-size:32px}.benefit p,.benefit--featured p{font-size:19px;line-height:1.72}
}

@keyframes hero-mobile-one{0%,30%{opacity:1}34%,96%{opacity:0}100%{opacity:1}}
@keyframes hero-mobile-two{0%,30%{opacity:0}34%,63%{opacity:1}67%,100%{opacity:0}}
@keyframes hero-mobile-three{0%,63%{opacity:0}67%,96%{opacity:1}100%{opacity:0}}
@keyframes hero-dot-one{0%,30%,100%{background:#fff;transform:scale(1.25)}34%,96%{background:rgba(255,255,255,.55);transform:scale(1)}}
@keyframes hero-dot-two{0%,30%,67%,100%{background:rgba(255,255,255,.55);transform:scale(1)}34%,63%{background:#fff;transform:scale(1.25)}}
@keyframes hero-dot-three{0%,63%,100%{background:rgba(255,255,255,.55);transform:scale(1)}67%,96%{background:#fff;transform:scale(1.25)}}

/* Cool-blue visual system. */
.header{background:rgba(248,252,255,.92);border-bottom-color:rgba(32,54,66,.08)}
.brand__mark{color:var(--accent)}
.button:focus-visible,.nav a:focus-visible,.menu-toggle:focus-visible,input:focus-visible,select:focus-visible,.accordion button:focus-visible,.social-app:focus-visible{outline-color:rgba(37,132,184,.28)}
.button--primary{box-shadow:0 14px 30px rgba(23,109,156,.22)}
.button--outline{background:rgba(248,252,255,.76)}
.button--cream{color:var(--accent);background:#f5fbff}
.hero__image:after{background:linear-gradient(135deg,rgba(197,231,247,.12),rgba(112,190,226,.12) 55%,rgba(16,47,64,.12))}
.eyebrow{background:#e3f0f7}
.botanical{color:rgba(37,132,184,.17)}
.trust-strip,.process{background:#183747}.trust-strip{color:#eef8fd}.trust-strip svg,.steps>li>span{color:#72b9dc}.process .text-link{color:#8bc9e6}
.quiz-invite{background:#dcecf5}.quiz-invite__stamp{border-color:#dcecf5}.quiz-invite__copy small{color:#607681}.route-line{border-color:rgba(37,132,184,.34)}
.postcard{background:#f7fcff;box-shadow:0 24px 60px rgba(26,75,101,.18)}
.honest-reviews{background:#cfe4ef}.honest-reviews p{color:#526f7e}
.benefit,.benefit--featured,.benefit--featured:hover{background:#f8fcff;border-color:rgba(37,132,184,.15);box-shadow:0 14px 36px rgba(28,79,105,.08)}
.benefit:hover{background:#f8fcff;box-shadow:0 20px 48px rgba(28,79,105,.14)}
.benefit__icon,.benefit--featured .benefit__icon{background:#e2f0f7;border-color:rgba(37,132,184,.12)}
.benefit__number{color:rgba(37,132,184,.38)}
.final-cta{background:linear-gradient(145deg,#207aaa,#2e91c6)}
.lead-form{background:#f8fcff;box-shadow:0 25px 70px rgba(12,69,99,.2)}
.footer{color:#c9dce5;background:#102d3b}.footer h3{color:#8faebd}.footer__brand>p,.footer__grid>div:not(:first-child)>p{color:#819daa}.footer__bottom{color:#6f8b98}
.modal,.booking-modal,.booking-form,.booking-modal__layout{background:var(--surface)}
.modal::backdrop{background:rgba(9,35,49,.68)}
.modal__close{background:rgba(248,252,255,.92)}
.quiz-progress{background:#dce9f0}.quiz-option input:checked+label{background:#e7f3f9}.booking-selection input{border-color:rgba(37,132,184,.16);background:#e5f1f7}.day__number{background:#e4f1f7}.included>div{background:#eaf3f8}.included>div+div{background:#f3f8fb}.tour-modal__notice{background:#e8f3f8}
.consent input[type="checkbox"]{border-color:#9bbdce!important}

/* Social links live inside the phone and are real tap targets. */
.social-showcase{background:#dceaf2}
.social-showcase__panel{background-color:var(--accent);background-image:radial-gradient(circle at 15% 20%,rgba(255,255,255,.16) 0 2px,transparent 3px),linear-gradient(135deg,transparent 47%,rgba(255,255,255,.06) 48% 52%,transparent 53%);box-shadow:0 28px 70px rgba(18,80,113,.24)}
.social-showcase__kicker{color:#c7e9f8}
.phone-mockup{filter:drop-shadow(0 32px 30px rgba(9,40,56,.4))}
.phone-mockup__screen{min-height:626px;padding:17px 15px 22px;color:var(--text);background:#f8fcff}
.phone-mockup__status{height:30px;padding:1px 7px 0;background:transparent}
.phone-mockup__profile{display:grid}
.phone-mockup__post{display:block}
.phone-mockup__caption{display:block;margin:0;color:var(--text-soft)}
.phone-mockup__apps{display:grid;grid-template-columns:repeat(3,1fr);gap:11px 7px;padding-top:13px;border-top-color:#dbe8ef}
.social-app{min-width:0;display:grid;justify-items:center;gap:5px;border-radius:12px;color:var(--text);font-size:7px;font-weight:700;text-align:center;transition:transform .2s,color .2s}
.social-app:hover{color:var(--accent);transform:translateY(-2px)}
.social-app span{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:#fff;font-size:11px;font-weight:800;box-shadow:0 6px 14px rgba(24,66,88,.18)}
.social-app small{max-width:54px;overflow:hidden;text-overflow:ellipsis;font-size:7px;white-space:nowrap}
.social-app--telegram span{background:#269ed8}.social-app--whatsapp span{background:#27b85b}.social-app--vk span{background:#2787f5}.social-app--max span{background:linear-gradient(145deg,#5357d9,#8f52d4)}
.social-showcase__copy>p{margin-bottom:18px}.social-showcase__legal{margin-top:0}

@media(max-width:620px){
  .phone-mockup__screen{min-height:530px;padding:15px 12px 17px}
  .phone-mockup__status{height:27px;padding-top:0}
  .phone-mockup__profile{grid-template-columns:38px 1fr auto;padding:9px 2px}.phone-mockup__avatar{width:38px;height:38px}
  .phone-mockup__post{height:226px}
  .phone-mockup__caption{padding:11px 3px 12px}
  .social-app span{width:36px;height:36px;border-radius:10px}
}

@media(prefers-reduced-motion:reduce){
  .hero-mobile__scene,.hero-mobile__dots span{animation:none}.hero-mobile__scene--dagestan{opacity:1}.hero-mobile__scene--kalmykia,.hero-mobile__scene--caucasus{opacity:0}
}

/* Final blue cleanup: no peach interface accents. */
.kicker--light,.final-cta .kicker--light{color:#d8f1fc}
.benefit__number,.benefit--featured .benefit__number{color:#76abc6}
.modal__close:focus-visible,.consent input[type="checkbox"]:focus-visible{outline-color:rgba(37,132,184,.3)}
.tour-modal .modal__close{border-color:rgba(37,132,184,.25);background:rgba(248,252,255,.96);box-shadow:0 8px 24px rgba(18,71,98,.16)}
.hero-feature{background:linear-gradient(145deg,rgba(248,252,255,.98),rgba(226,241,248,.9));border-color:rgba(37,132,184,.1);box-shadow:0 12px 30px rgba(28,79,105,.07)}
.booking-modal__visual{background:#17394a}

/* iPhone-style social directory. */
.phone-mockup{width:min(328px,100%);transform:rotate(-1.2deg)}
.phone-mockup__screen{position:relative;min-height:672px;padding:0;border:8px solid #15171b;border-radius:48px;color:#fff;background:#155f86;box-shadow:inset 0 0 0 2px #68737a}
.phone-mockup__status{position:relative;z-index:4;height:46px;display:flex;align-items:flex-start;justify-content:space-between;padding:17px 22px 0;color:#fff;background:transparent;font-size:10px;font-weight:800;text-shadow:0 1px 8px rgba(0,24,38,.48)}
.phone-status-icons{display:flex;align-items:center;gap:4px}
.phone-status-icons svg{width:16px;height:11px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.phone-status-icons .phone-status-icons__battery{width:24px}.phone-status-icons__battery rect:last-child{fill:currentColor;stroke:none}
.phone-mockup__wallpaper{position:absolute;inset:0;display:flex;flex-direction:column;padding:68px 13px 26px;background:linear-gradient(180deg,rgba(5,47,72,.18),rgba(5,43,65,.72) 42%,rgba(3,30,47,.92)),url("assets/mountain-sunset.jpg") center/cover no-repeat}
.phone-mockup__wallpaper:after{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 74% 14%,rgba(113,205,240,.28),transparent 34%),linear-gradient(135deg,rgba(21,126,175,.08),rgba(5,41,61,.2));pointer-events:none}
.phone-mockup__intro,.phone-social-list{position:relative;z-index:1}
.phone-mockup__intro{padding:0 8px 17px;text-shadow:0 2px 16px rgba(0,25,38,.5)}
.phone-mockup__brand{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.phone-mockup__brand svg{width:25px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.phone-mockup__intro h3{margin:12px 0 5px;font:600 34px/.92 "Cormorant Garamond",Georgia,serif;letter-spacing:-.025em}
.phone-mockup__intro p{max-width:245px;margin:0;color:rgba(255,255,255,.78);font-size:9px;line-height:1.45}
.phone-social-list{display:grid;gap:7px;margin-top:auto}
.phone-social{min-height:63px;display:grid;grid-template-columns:48px 1fr;align-items:center;gap:11px;padding:7px 12px 7px 8px;border:1px solid rgba(255,255,255,.3);border-radius:18px;color:#fff;background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.1));box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 9px 24px rgba(0,24,38,.12);backdrop-filter:blur(13px) saturate(125%);-webkit-backdrop-filter:blur(13px) saturate(125%);transition:transform .2s,background-color .2s,border-color .2s}
.phone-social:hover{border-color:rgba(255,255,255,.55);background-color:rgba(255,255,255,.13);transform:translateX(3px)}
.phone-social:focus-visible{outline:3px solid rgba(255,255,255,.7);outline-offset:2px}
.phone-social__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:#fff;box-shadow:0 7px 15px rgba(0,25,38,.22)}
.phone-social__icon svg{width:27px;height:27px}.phone-social__icon svg path{fill:currentColor;stroke:none}
.phone-social--telegram .phone-social__icon{background:#229ed9}.phone-social--whatsapp .phone-social__icon{background:#25d366}.phone-social--vk .phone-social__icon{background:#2787f5}.phone-social--max .phone-social__icon{background:linear-gradient(145deg,#555cde,#9854d4)}
.phone-social--max .phone-social__icon svg{width:30px;height:30px}
.phone-social__text{min-width:0}.phone-social__text strong,.phone-social__text small{display:block}.phone-social__text strong{font-size:14px;line-height:1.2}.phone-social__text small{margin-top:3px;color:rgba(255,255,255,.7);font-size:8px;line-height:1.25}
.phone-mockup__home{position:absolute;z-index:5;left:50%;bottom:9px;width:92px;height:4px;border-radius:99px;background:rgba(255,255,255,.9);transform:translateX(-50%)}

/* Keep all social rows visually centered inside the phone screen. */
.phone-social-list{position:absolute;left:13px;right:13px;top:54%;margin:0;transform:translateY(-50%)}

@media(max-width:620px){
  .phone-mockup{width:270px}
  .phone-mockup__screen{min-height:594px;padding:0;border-radius:42px}
  .phone-mockup__status{height:42px;padding:14px 19px 0}
  .phone-mockup__wallpaper{padding:61px 10px 23px}
  .phone-mockup__intro{padding:0 7px 13px}.phone-mockup__intro h3{margin-top:9px;font-size:30px}.phone-mockup__intro p{font-size:8px}
  .phone-social-list{left:10px;right:10px;top:55%;gap:6px}.phone-social{min-height:55px;grid-template-columns:42px 1fr;gap:9px;padding:6px 9px 6px 7px;border-radius:15px}.phone-social__icon{width:40px;height:40px;border-radius:12px}.phone-social__icon svg{width:24px;height:24px}.phone-social__text strong{font-size:13px}.phone-social__text small{font-size:7px}
}

/* All destinations stay visible in one compact screen section. */
.tours{padding-top:78px;padding-bottom:78px}
.tours .section-heading--split{margin-bottom:30px}
.tour-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tour-card{min-height:435px;border-radius:20px}
.tour-card__topline{top:17px;left:16px;right:16px;gap:8px}
.tour-card__tag,.tour-card__days{padding:7px 9px;font-size:9px;line-height:1.2;white-space:nowrap}
.tour-card__content{padding:21px 16px 18px}
.tour-card h3{margin-bottom:8px;font-size:34px}
.tour-card__lead{min-height:76px;margin-bottom:13px;font-size:12px;line-height:1.45}
.tour-card__footer{gap:8px}
.tour-card__meta{min-width:0;display:grid;gap:5px}
.tour-card__meta span{font-size:8px;line-height:1.2}.tour-card__meta strong{overflow:hidden;margin-top:2px;font-size:11px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.tour-card__button{width:43px;height:43px;min-width:43px;font-size:21px}
.tour-card__button{width:104px;min-width:104px;height:41px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border-radius:12px;background:rgba(255,255,255,.94);color:#183747;font-size:12px;font-weight:800;line-height:1;white-space:nowrap;box-shadow:0 8px 22px rgba(5,29,42,.2)}
.tour-card__button-arrow{font-size:18px;line-height:1;transition:transform .2s}
.tour-card:hover .tour-card__button{color:#183747;background:#fff;transform:none}.tour-card__button:hover .tour-card__button-arrow{transform:translate(2px,-2px)}
.tour-card__footer{position:relative;display:block;min-height:82px}
.tour-card__meta{width:100%;padding-right:112px}
.tour-card__meta>div{min-width:0}
.tour-card__meta strong{display:block;overflow:visible;white-space:normal}
.tour-card__button{position:absolute;right:0;bottom:0;width:104px;min-width:104px}

@media(max-width:1280px){
  .tour-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .tour-card{min-height:430px}.tour-card h3{font-size:40px}.tour-card__lead{min-height:0;font-size:14px}.tour-card__meta span{font-size:9px}.tour-card__meta strong{font-size:12px}
}

@media(max-width:980px){
  .tour-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .tour-card{min-height:420px}.tour-card__lead{min-height:0;font-size:14px}.tour-card h3{font-size:42px}
}

@media(max-width:620px){
  .tours{padding-top:54px;padding-bottom:54px}
  .tours .section-heading--split{margin-bottom:22px}
  .tour-grid{grid-template-columns:1fr;gap:14px}
  .tour-card{min-height:430px;border-radius:18px}
  .tour-card__topline{top:15px;left:15px;right:15px}
  .tour-card__tag,.tour-card__days{padding:8px 11px;font-size:10px}
  .tour-card__days{display:inline-flex}
  .tour-card__content{padding:24px 20px 20px}
  .tour-card h3{margin-bottom:8px;font-size:43px;line-height:.96}
  .tour-card__lead{display:block;min-height:0;margin-bottom:16px;font-size:14px;line-height:1.48}
  .tour-card__footer{min-height:78px;margin-top:0}
  .tour-card__meta{padding-right:122px}
  .tour-card__meta>div:first-child{display:block}
  .tour-card__meta span{font-size:9px}
  .tour-card__meta strong{font-size:12px;white-space:normal}
  .tour-card__button{width:108px;height:42px;min-width:108px;padding:0 12px;gap:7px;border-radius:12px;font-size:12px}
  .tour-card__button-arrow{font-size:17px}
  .tours__note{margin-top:16px;font-size:12px;line-height:1.5}
}

/* Interactive map of the tour geography. */
.route-map{overflow:hidden;padding:92px 0 100px;background:linear-gradient(180deg,#e5f2f8 0%,#d8ebf4 100%)}
.route-map__heading{margin-bottom:34px}.route-map__heading p{max-width:520px}
.map-explorer{position:relative}
.map-explorer__canvas{position:relative;aspect-ratio:1626/966;overflow:hidden;border:1px solid rgba(37,132,184,.17);border-radius:32px;background-color:#f7fbfd;background-image:radial-gradient(circle at 15% 18%,rgba(37,132,184,.1) 0 2px,transparent 2.6px),linear-gradient(135deg,rgba(37,132,184,.035) 25%,transparent 25% 75%,rgba(37,132,184,.035) 75%);background-size:42px 42px,64px 64px;box-shadow:0 28px 70px rgba(24,86,117,.14)}
.map-explorer__outline{position:absolute;inset:4% 2% 2%;width:96%;height:94%;object-fit:contain;filter:brightness(0) saturate(100%) invert(48%) sepia(48%) saturate(1136%) hue-rotate(158deg) brightness(91%) contrast(88%);opacity:.91;pointer-events:none;user-select:none}
.map-explorer__canvas:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,transparent 38%,rgba(247,251,253,.04) 62%,rgba(247,251,253,.42));pointer-events:none}
.map-pin{position:absolute;z-index:4;width:34px;height:43px;padding:0;border:0;color:#153848;background:transparent;cursor:pointer;transform:translate(-50%,-100%);transition:transform .2s,color .2s;filter:drop-shadow(0 8px 9px rgba(13,64,91,.22))}
.map-pin:hover,.map-pin:focus-visible,.map-pin.is-active{z-index:6;color:#fff;transform:translate(-50%,-100%) scale(1.08)}
.map-pin:focus-visible{outline:3px solid rgba(37,132,184,.36);outline-offset:5px;border-radius:12px}
.map-pin__marker{width:34px;height:43px;display:block;color:var(--accent)}.map-pin__marker svg{width:100%;height:100%;fill:currentColor;stroke:#f8fcff;stroke-width:1.4}.map-pin__marker circle{fill:#f8fcff;stroke:none}.map-pin:hover .map-pin__marker,.map-pin:focus-visible .map-pin__marker,.map-pin.is-active .map-pin__marker{color:#176d9c}
.map-pin__label{position:absolute;top:calc(100% + 5px);left:50%;padding:5px 9px;border:1px solid rgba(37,132,184,.28);border-radius:999px;color:#173847;background:rgba(248,252,255,.94);box-shadow:0 6px 15px rgba(23,79,108,.12);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;backdrop-filter:blur(8px);transform:translateX(-50%)}
.map-pin--adygea .map-pin__label,.map-pin--kalmykia .map-pin__label,.map-pin--dagestan .map-pin__label{top:9px;left:calc(100% + 6px);transform:none}.map-pin--caucasus .map-pin__label{top:calc(100% + 5px);right:auto;left:50%;transform:translateX(-50%)}
.map-pin--adygea{left:7.33%;top:80.87%}.map-pin--kalmykia{left:11.38%;top:75.52%}.map-pin--caucasus{left:10.23%;top:85.74%}.map-pin--dagestan{left:12.54%;top:83.8%}
.map-info{position:absolute;z-index:5;top:6%;right:4%;width:min(340px,33%);min-height:230px;overflow:hidden;border:1px solid rgba(255,255,255,.75);border-radius:24px;color:var(--text);background:rgba(248,252,255,.94);box-shadow:0 24px 55px rgba(18,74,104,.22);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.map-info__empty{min-height:230px;display:grid;place-content:center;justify-items:center;padding:30px;text-align:center}.map-info__empty strong{font:600 27px/1.05 "Cormorant Garamond",Georgia,serif}.map-info__empty p{margin:10px 0 0;color:var(--text-soft);font-size:13px;line-height:1.55}.map-info__pulse{width:48px;height:48px;margin-bottom:17px;border:13px solid rgba(37,132,184,.17);border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 rgba(37,132,184,.2);animation:map-pulse 2.2s infinite}
@keyframes map-pulse{70%{box-shadow:0 0 0 16px rgba(37,132,184,0)}100%{box-shadow:0 0 0 0 rgba(37,132,184,0)}}
.map-tour{animation:map-card-in .3s cubic-bezier(.2,.75,.2,1)}@keyframes map-card-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.map-tour__image{width:100%;height:122px;object-fit:cover}.map-tour__body{padding:18px 20px 20px}.map-tour__eyebrow{display:flex;justify-content:space-between;gap:10px;margin-bottom:5px;color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.map-tour h3{margin:0;font:600 34px/.98 "Cormorant Garamond",Georgia,serif}.map-tour p{margin:9px 0 14px;color:var(--text-soft);font-size:12px;line-height:1.55}.map-tour__footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.map-tour__price span,.map-tour__price strong{display:block}.map-tour__price span{color:var(--text-soft);font-size:8px;text-transform:uppercase}.map-tour__price strong{font-size:14px}.map-tour__button{min-height:42px;padding:9px 14px;border:0;border-radius:11px;color:#fff;background:var(--accent);font-size:11px;font-weight:800;cursor:pointer;transition:.2s}.map-tour__button:hover{background:var(--accent-hover);transform:translateY(-1px)}
.map-explorer__credit{margin:11px 6px 0;color:#78909c;font-size:9px;line-height:1.4}

@media(max-width:900px){
  .route-map{padding:76px 0 82px}.map-explorer__canvas{border-radius:24px}.map-info{width:38%;min-height:190px}.map-info__empty{min-height:190px;padding:20px}.map-info__empty strong{font-size:23px}.map-info__empty p{font-size:10px}.map-tour__image{height:90px}.map-tour__body{padding:13px 14px 15px}.map-tour h3{font-size:27px}.map-tour p{display:none}.map-tour__button{min-height:37px;padding:8px 10px}.map-pin__marker{width:29px;height:37px}.map-pin__label{padding:4px 7px;font-size:8px}
}

@media(max-width:620px){
  .route-map{padding:58px 0 65px}.route-map__heading{margin-bottom:24px}.route-map__heading p{font-size:16px;line-height:1.6}
  .map-explorer__canvas{aspect-ratio:auto;min-height:510px;overflow:visible;border-radius:22px}.map-explorer__outline{inset:2% 1% auto;width:98%;height:255px;object-position:center top}.map-explorer__canvas:after{height:280px;background:linear-gradient(180deg,transparent,rgba(247,251,253,.2))}
  .map-pin{transform:translate(-50%,-100%) scale(.78)}.map-pin:hover,.map-pin:focus-visible,.map-pin.is-active{transform:translate(-50%,-100%) scale(.86)}.map-pin__label{font-size:8px}
  .map-pin--adygea{left:5.52%;top:181px}.map-pin--kalmykia{left:9.74%;top:169px}.map-pin--caucasus{left:8.54%;top:192px}.map-pin--dagestan{left:10.95%;top:187px}
  .map-info{top:auto;right:14px;bottom:14px;left:14px;width:auto;min-height:220px;border-radius:19px}.map-info__empty{min-height:220px;padding:24px}.map-info__empty strong{font-size:26px}.map-info__empty p{font-size:12px}.map-tour{display:grid;grid-template-columns:112px 1fr;min-height:220px}.map-tour__image{width:112px;height:100%;min-height:220px}.map-tour__body{display:flex;flex-direction:column;justify-content:center;padding:14px}.map-tour__eyebrow{display:block;font-size:8px}.map-tour__eyebrow span:last-child{display:block;margin-top:3px}.map-tour h3{font-size:28px}.map-tour__footer{display:block}.map-tour__button{width:100%;margin-top:10px}.map-explorer__credit{font-size:8px}
}

@media(prefers-reduced-motion:reduce){.map-info__pulse,.map-tour{animation:none}}

/* Mobile hero: copy and actions live directly on the rotating photographs. */
@media(max-width:620px){
  .hero{
    position:relative;
    display:block;
    height:calc(100svh - var(--header-height));
    min-height:620px;
    max-height:790px;
    overflow:hidden;
    background:#17394a;
    isolation:isolate;
  }
  .hero:after{
    content:"";
    position:absolute;
    z-index:2;
    right:0;
    bottom:-1px;
    left:0;
    height:96px;
    background:linear-gradient(180deg,rgba(243,248,251,0) 0%,rgba(243,248,251,.16) 30%,rgba(243,248,251,.72) 72%,var(--bg) 100%);
    -webkit-backdrop-filter:blur(5px);
    backdrop-filter:blur(5px);
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 50%,#000 100%);
    mask-image:linear-gradient(180deg,transparent 0%,#000 50%,#000 100%);
    pointer-events:none;
  }
  .hero-mobile{
    position:absolute;
    inset:0;
    z-index:0;
    width:100%;
    height:100%;
    min-height:0;
    max-height:none;
    display:block;
  }
  .hero-mobile:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:2;
    background:
      linear-gradient(180deg,rgba(5,30,44,.08) 0%,rgba(5,30,44,.16) 32%,rgba(4,27,40,.78) 76%,rgba(3,24,36,.94) 100%),
      linear-gradient(90deg,rgba(5,31,45,.28),transparent 72%);
    pointer-events:none;
  }
  .hero-mobile:after{
    background:linear-gradient(180deg,rgba(19,72,97,.06),rgba(8,44,61,.18));
  }
  .hero-mobile__scene{filter:saturate(1.06) contrast(1.02)}
  .hero-mobile__dots{
    z-index:4;
    bottom:18px;
    padding:7px 10px;
    background:rgba(4,28,42,.34);
    border:1px solid rgba(255,255,255,.16);
  }
  .hero__content{
    position:relative;
    z-index:3;
    width:100%;
    height:100%;
    display:flex;
    align-items:flex-end;
    color:#fff;
    background:none;
  }
  .hero__inner{
    width:100%;
    max-width:none;
    margin:0;
    padding:54px 20px 132px;
    text-align:left;
  }
  .hero__title{
    max-width:350px;
    margin:0 0 16px;
    color:#fff;
    font-size:clamp(42px,11.8vw,50px);
    line-height:.94;
    letter-spacing:-.035em;
    text-shadow:0 3px 24px rgba(0,22,34,.58);
  }
  .hero__description{
    max-width:350px;
    margin:0;
    color:rgba(255,255,255,.9);
    font-size:16px;
    line-height:1.5;
    text-shadow:0 2px 15px rgba(0,20,31,.72);
  }
  .hero__description span{display:inline;white-space:normal}
  .hero__actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:22px;
  }
  .hero__actions .button{
    width:100%;
    min-height:56px;
    padding:12px 18px;
    border-radius:14px;
    font-size:15px;
    box-shadow:0 12px 30px rgba(0,29,45,.2);
  }
  .hero__actions .button--primary{
    color:#fff;
    background:var(--accent);
    border-color:rgba(255,255,255,.2);
  }
  .hero__actions .button--outline{
    color:#fff;
    background:rgba(8,49,69,.42);
    border-color:rgba(255,255,255,.58);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
  }
  .hero__actions .button--outline:hover{color:#fff;background:rgba(8,49,69,.64)}
  .hero__actions .button__icon{width:30px;height:30px}
  .hero .botanical{display:none}
}

@media(max-width:360px){
  .hero{min-height:600px}
  .hero__inner{padding-right:16px;padding-bottom:108px;padding-left:16px}
  .hero__title{font-size:40px}
  .hero__description{font-size:15px}
}

/* Translucent liquid-glass header. */
.header{
  isolation:isolate;
  background:
    linear-gradient(110deg,rgba(255,255,255,.74),rgba(231,246,253,.58) 52%,rgba(255,255,255,.66));
  border-bottom-color:rgba(255,255,255,.58);
  box-shadow:
    inset 0 -1px 0 rgba(37,132,184,.08),
    inset 0 1px 0 rgba(255,255,255,.82);
  -webkit-backdrop-filter:blur(22px) saturate(155%);
  backdrop-filter:blur(22px) saturate(155%);
  transition:background .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.header:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    radial-gradient(circle at 18% -80%,rgba(255,255,255,.92),transparent 47%),
    linear-gradient(100deg,rgba(255,255,255,.2),transparent 34%,rgba(119,199,235,.09) 72%,rgba(255,255,255,.24));
  pointer-events:none;
}
.header.is-scrolled{
  background:
    linear-gradient(110deg,rgba(248,252,255,.58),rgba(218,239,249,.43) 52%,rgba(248,252,255,.54));
  border-bottom-color:rgba(255,255,255,.48);
  box-shadow:
    0 12px 34px rgba(18,71,98,.13),
    inset 0 -1px 0 rgba(37,132,184,.12),
    inset 0 1px 0 rgba(255,255,255,.78);
}

@media(max-width:1180px){
  .nav{
    background:rgba(244,251,255,.8);
    border-color:rgba(255,255,255,.7);
    -webkit-backdrop-filter:blur(24px) saturate(145%);
    backdrop-filter:blur(24px) saturate(145%);
    box-shadow:0 18px 44px rgba(18,71,98,.17),inset 0 1px 0 rgba(255,255,255,.82);
  }
}

/* Quiz polish: tap answers advance immediately and odd option rows stay balanced. */
.quiz-options .quiz-option:last-child:nth-child(odd){
  grid-column:1/-1;
}
#quiz-form.is-auto-step #quiz-next{
  display:none;
}
#quiz-form.is-auto-step .quiz-controls{
  justify-content:flex-start;
}
#quiz-form.is-auto-step.is-first-step .quiz-controls{
  display:none!important;
}
.quiz-stage.is-advancing{
  pointer-events:none;
  opacity:.72;
  transition:opacity .18s;
}

@media(min-width:621px){
  .quiz-modal{
    overflow:visible;
  }
  .quiz-modal .modal__close{
    position:absolute;
    top:-62px;
    right:0;
    width:48px;
    height:48px;
    margin:0;
    display:grid;
    place-items:center;
    background:rgba(248,252,255,.96);
    border:1px solid rgba(255,255,255,.72);
    box-shadow:0 12px 32px rgba(18,71,98,.18);
    font-size:30px;
  }
}

@media(max-width:620px){
  .quiz-modal{
    overflow:visible;
  }
  .quiz-modal .modal__close{
    top:-54px;
    right:0;
    width:44px;
    height:44px;
    background:rgba(248,252,255,.96);
    box-shadow:0 10px 28px rgba(18,71,98,.16);
  }
}

/* Robust mobile hero photo fallback for phones that miss the animated WebP layer. */
@media(max-width:620px){
  .hero{
    background:#17394a url("assets/mountain-sunset.jpg") 54% center/cover no-repeat!important;
  }
  .hero-mobile{
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    display:block!important;
    background:#17394a url("assets/mountain-sunset.jpg") 54% center/cover no-repeat!important;
  }
  .hero-mobile__scene--dagestan{
    background-image:url("assets/mountain-sunset.jpg"),url("ai real photo/dagestan-foto-1.webp")!important;
  }
  .hero-mobile__scene--kalmykia{
    background-image:url("ai real photo/kalmykiya-oblozhka.webp"),url("ai real photo/kalmykiya-foto-1.webp")!important;
  }
  .hero-mobile__scene--caucasus{
    background-image:url("ai real photo/kavkazskie-istorii-oblozhka.webp")!important;
  }
  .hero__content{
    position:relative!important;
    z-index:3!important;
    background:none!important;
  }
}

/* Smooth quiz question transitions: blur out, resize, then softly reveal. */
.quiz-stage{
  transform-origin:center top;
  will-change:opacity,transform,filter;
}
.quiz-stage.is-entering{
  opacity:0;
  filter:blur(12px);
  transform:translateY(12px) scale(.985);
}
.quiz-stage:not(.is-entering):not(.is-leaving){
  opacity:1;
  filter:blur(0);
  transform:translateY(0) scale(1);
  transition:opacity .3s ease,transform .34s cubic-bezier(.22,.74,.2,1),filter .34s ease;
}
.quiz-stage.is-leaving{
  opacity:0;
  filter:blur(10px);
  transform:translateY(-8px) scale(.975);
  transition:opacity .18s ease,transform .2s ease,filter .2s ease;
}
.quiz-option label{
  transition:border-color .2s,background .2s,color .2s,transform .2s,box-shadow .2s;
}
.quiz-option input:checked+label{
  transform:scale(.985);
  box-shadow:0 12px 28px rgba(37,132,184,.13);
}

/* Stable quiz shell: no accordion-like jumps between questions. */
.quiz-modal{
  width:min(820px,calc(100% - 32px));
}
.quiz-stage{
  min-height:270px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.quiz-options{
  width:100%;
}
.quiz-contact{
  max-width:100%;
}
#quiz-form{
  overflow-x:hidden;
}

@media(min-width:621px){
  .quiz-modal{
    min-height:520px;
  }
}

@media(max-width:620px){
  .quiz-modal{
    width:calc(100% - 24px);
    min-height:min(560px,calc(100dvh - 24px));
  }
  .quiz-stage{
    min-height:330px;
  }
  #quiz-form{
    max-height:calc(100dvh - 128px);
  }
}

@media(max-width:380px){
  .quiz-stage{
    min-height:350px;
  }
}

/* Journey media gallery. */
.journey-media{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 10% 15%,rgba(67,172,217,.18),transparent 32%),
    linear-gradient(180deg,#f6fbff 0%,#e8f4fa 100%);
}
.journey-media:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(135deg,rgba(37,132,184,.08) 0 1px,transparent 1px 54px),radial-gradient(circle,rgba(37,132,184,.12) 1px,transparent 2px);
  background-size:54px 54px,74px 74px;
  opacity:.45;
  pointer-events:none;
}
.journey-media .container{
  position:relative;
  z-index:1;
}
.journey-media__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.journey-card{
  position:relative;
  aspect-ratio:1;
  margin:0;
  overflow:hidden;
  border-radius:26px;
  background:#cfe7f2;
  box-shadow:0 24px 54px rgba(18,71,98,.14);
  isolation:isolate;
}
.journey-card:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(9,35,49,0) 40%,rgba(9,35,49,.62) 100%);
  pointer-events:none;
}
.journey-card img,
.journey-card video{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .55s cubic-bezier(.22,.74,.2,1),filter .35s ease;
}
.journey-card:hover img{
  transform:scale(1.045);
  filter:saturate(1.08);
}
.journey-card video{
  display:block;
  background:#0e3447;
  pointer-events:none;
}
.journey-card--video{
  cursor:pointer;
}
.journey-card__loader{
  position:absolute;
  inset:0;
  z-index:1;
  display:grid;
  place-items:center;
  background:#0e3447;
  opacity:1;
  transition:opacity .45s ease;
  pointer-events:none;
}
.journey-card__loader:after{
  content:"";
  width:36px;
  height:36px;
  border-radius:50%;
  border:3px solid rgba(255,255,255,.25);
  border-top-color:#fff;
  animation:journeySpin .8s linear infinite;
}
@keyframes journeySpin{to{transform:rotate(360deg)}}
.journey-card--video.is-ready .journey-card__loader{
  opacity:0;
}
.journey-card--video:not(.is-ready):before{
  opacity:0;
}
@media(prefers-reduced-motion:reduce){
  .journey-card__loader:after{animation-duration:1.6s}
}
.journey-card--video:focus-visible{
  outline:3px solid rgba(37,132,184,.35);
  outline-offset:4px;
}
.journey-card--video:before{
  content:"▶";
  position:absolute;
  top:16px;
  right:16px;
  z-index:2;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.58);
  border-radius:50%;
  color:#fff;
  background:rgba(9,35,49,.32);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-size:15px;
  pointer-events:none;
  transition:opacity .22s ease,transform .22s ease,background .22s ease;
}
.journey-card--video.is-playing:before{
  content:"Ⅱ";
  opacity:.72;
  transform:scale(.92);
  background:rgba(9,35,49,.22);
}
.journey-card figcaption{
  position:absolute;
  left:18px;
  right:18px;
  bottom:16px;
  z-index:2;
  color:#fff;
  font-size:18px;
  font-weight:800;
  line-height:1.2;
  text-shadow:0 8px 20px rgba(0,0,0,.28);
}
.journey-card figcaption span{
  display:block;
  margin-bottom:5px;
  color:rgba(255,255,255,.72);
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

@media(max-width:900px){
  .journey-media__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:620px){
  .journey-media{
    padding-top:58px;
    padding-bottom:58px;
  }
  .journey-media__grid{
    gap:10px;
  }
  .journey-card{
    border-radius:18px;
    box-shadow:0 16px 34px rgba(18,71,98,.13);
  }
  .journey-card:nth-child(n+5){display:block}
  .journey-card--video:before{
    top:10px;
    right:10px;
    width:34px;
    height:34px;
    font-size:12px;
  }
  .journey-card figcaption{
    left:12px;
    right:12px;
    bottom:11px;
    font-size:13px;
  }
  .journey-card figcaption span{
    margin-bottom:3px;
    font-size:8px;
  }
}

@media(max-width:620px){
  .offer-card__icon svg{width:44px;height:44px}
  .tour-calendar__months{display:flex;gap:12px;margin:0 -16px;padding:0 16px 10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .tour-calendar__months::-webkit-scrollbar{display:none}
  .calendar-month{flex:0 0:min(86vw,350px);padding:23px 19px;scroll-snap-align:center}
  .calendar-month:last-child{grid-column:auto}
  .calendar-day,button.calendar-day{font-size:12px}
  .calendar-popover{max-width:calc(100vw - 24px);padding:10px;border-radius:22px}
  .calendar-trip{grid-template-columns:96px 1fr}
}

/* Fill tour and benefit frames edge to edge (no letterbox bars). */
.tour-card__image,
.benefit__photo,
.tour-gallery__card img{
  object-fit:cover;
}

/* Cinematic route-card entrance. */
.tour-modal[open]{
  opacity:0;
  filter:blur(10px);
  transform:translateY(24px) scale(.935);
  transform-origin:50% 48%;
  will-change:transform,opacity,filter;
  transition:opacity .38s ease,filter .48s ease,transform .52s cubic-bezier(.18,.82,.2,1);
}
.tour-modal[open].is-visible{
  opacity:1;
  filter:blur(0);
  transform:translateY(0) scale(1);
}
.tour-modal[open].is-closing{
  transition-duration:.3s,.34s,.38s;
  transition-timing-function:ease,ease,cubic-bezier(.4,0,.7,.2);
}
.tour-modal::backdrop{
  background:rgba(9,35,49,0);
  -webkit-backdrop-filter:blur(0);
  backdrop-filter:blur(0);
  transition:background .42s ease,-webkit-backdrop-filter .48s ease,backdrop-filter .48s ease;
}
.tour-modal.is-visible::backdrop{
  background:rgba(9,35,49,.68);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}
.tour-modal.is-closing::backdrop{transition-duration:.34s}
.tour-modal__hero img{
  transform:scale(1.045);
  transition:transform 1.05s cubic-bezier(.18,.82,.2,1);
}
.tour-modal.is-visible .tour-modal__hero img{transform:scale(1)}

@media(prefers-reduced-motion:reduce){
  .tour-modal[open],.tour-modal::backdrop,.tour-modal__hero img{transition-duration:.01ms!important}
}

/* Mobile stability pass and unified Lucide offer icons. */
.offer-card__icon{
  border-radius:50%;
  transform:none;
}
.offer-card:nth-child(2) .offer-card__icon{transform:none}
.offer-card__icon svg{width:38px;height:38px;stroke-width:1.8}

@media(max-width:620px){
  html,body{max-width:100%;overflow-x:hidden}
  .tour-modal{
    width:calc(100% - 16px);
    max-width:calc(100% - 16px);
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior-x:none;
    touch-action:pan-y;
  }
  #tour-modal-content,.tour-modal__hero,.tour-modal__body,.tour-modal__summary,.tour-gallery,.itinerary,.included,.tour-modal__cta{
    width:100%;
    min-width:0;
    max-width:100%;
  }
  #tour-modal-content{overflow-x:hidden}
  .tour-modal__body{padding:23px 17px 29px;overflow:hidden}
  .tour-modal__summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .tour-modal__summary div,.tour-modal__summary .tour-modal__date{min-width:0;max-width:100%}
  .tour-modal__summary strong{overflow-wrap:anywhere}
  .tour-gallery{padding:14px}
  .tour-gallery__rail{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin:0;
    padding:0;
    overflow:visible;
    scroll-snap-type:none;
  }
  .tour-gallery__card{width:100%;min-width:0;height:128px;border-radius:15px}
  .tour-gallery__card:first-child{grid-column:1/-1;height:190px}
  .tour-gallery__card:nth-child(2){transform:none}
  .tour-modal__cta{justify-items:start;gap:12px}
  .tour-modal__download{width:100%;max-width:100%;justify-items:start;gap:8px}
  .tour-modal__download a,.tour-modal__download-placeholder{
    width:auto;
    max-width:100%;
    min-height:44px;
    padding:0 17px;
    font-size:13px;
    line-height:1.25;
    white-space:normal;
    text-align:center;
  }
  .tour-modal__download span{max-width:310px;font-size:13px;line-height:1.5}
  .tour-modal__cta .button{
    width:auto;
    min-width:180px;
    min-height:46px;
    margin-top:0;
    padding:0 22px;
    font-size:14px;
  }
  .tour-calendar__months{
    display:block;
    margin:0;
    padding:0;
    overflow:visible;
  }
  .calendar-month{display:none}
  .calendar-month:nth-child(2){display:block;width:100%;padding:25px 20px 23px;border-radius:24px}
  .calendar-month:hover{transform:none}
  .calendar-month header{margin-bottom:22px}
  .calendar-month h3{font-size:36px}
  .calendar-weekdays,.calendar-days{gap:6px}
  .calendar-weekdays{font-size:10px}
  .calendar-day,button.calendar-day{font-size:13px}
  .tour-calendar__legend{justify-content:flex-start;margin-top:17px}
  .offer-card{display:grid;grid-template-columns:1fr auto;column-gap:16px}
  .offer-card__top{display:contents}
  .offer-card__number{grid-column:1;grid-row:1;margin:3px 0 27px}
  .offer-card__icon{grid-column:2;grid-row:1/3;width:58px;height:58px}
  .offer-card__icon svg{width:29px;height:29px}
  .offer-card h3{grid-column:1;grid-row:2;margin-bottom:11px}
  .offer-card p{grid-column:1/-1;grid-row:3}
}

/* Balanced headings complement non-breaking Russian typography. */
.section-heading h2,.quiz-invite h2,.process h2,.honest-reviews h2,.faq h2,.final-cta h2,.tour-card h3,.tour-modal h2,.offer-card h3{text-wrap:balance}
.section-heading p,.quiz-invite__copy p,.tour-card__lead,.offer-card p{text-wrap:pretty}

/* Date-anchored calendar card and reliable mobile header. */
.calendar-popover{
  left:var(--popover-left,16px)!important;
  top:var(--popover-top,16px)!important;
  right:auto!important;
  bottom:auto!important;
  width:var(--popover-width,360px)!important;
  transform-origin:var(--popover-origin-x,50%) 0;
}
.calendar-popover.is-above{transform:translateY(-9px) scale(.975);transform-origin:var(--popover-origin-x,50%) 100%}
.calendar-popover.is-below{transform:translateY(9px) scale(.975);transform-origin:var(--popover-origin-x,50%) 0}
.calendar-popover.is-visible{transform:translateY(0) scale(1)}
.calendar-popover:before{
  content:"";
  position:absolute;
  left:calc(var(--popover-origin-x,50%) - 7px);
  width:14px;
  height:14px;
  border:1px solid rgba(37,132,184,.12);
  background:rgba(250,253,255,.98);
  transform:rotate(45deg);
}
.calendar-popover.is-below:before{top:-8px;border-right:0;border-bottom:0}
.calendar-popover.is-above:before{bottom:-8px;border-left:0;border-top:0}

@media(max-width:620px){
  body{padding-top:var(--header-height)}
  .header{
    position:fixed;
    top:0;
    right:0;
    left:0;
    width:100%;
    z-index:100;
    transform:translateZ(0);
  }
  .scroll-progress{
    top:var(--header-height);
    z-index:101;
    transform:translateZ(0);
  }
  .calendar-popover{max-width:calc(100vw - 24px)}
}

/* Loyalty and referral offers. */
.offers{
  background:linear-gradient(145deg,#f7fbfd 0%,#e9f4f9 100%);
}
.offers__grid{
  display:grid;
  grid-template-columns:1.05fr 1fr 1fr;
  gap:18px;
}
.offer-card{
  position:relative;
  min-height:290px;
  padding:38px 34px;
  overflow:hidden;
  border:1px solid rgba(37,132,184,.15);
  border-radius:24px;
  background:rgba(255,255,255,.72);
  box-shadow:0 18px 44px rgba(18,71,98,.08);
}
.offer-card--accent{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(145deg,#237eaf,#2e9bca);
}
.offer-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  min-height:98px;
  margin-bottom:20px;
}
.offer-card__number{
  display:block;
  color:var(--accent);
  font-size:12px;
  font-weight:800;
  letter-spacing:.16em;
}
.offer-card--accent .offer-card__number{color:rgba(255,255,255,.68)}
.offer-card__icon{
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  color:var(--accent);
  border:1px solid rgba(37,132,184,.18);
  border-radius:24px 24px 24px 8px;
  background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(226,242,249,.72));
  box-shadow:0 14px 28px rgba(18,71,98,.1);
  transform:rotate(3deg);
}
.offer-card:nth-child(2) .offer-card__icon{transform:rotate(-3deg)}
.offer-card__icon svg{
  width:54px;
  height:54px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Three-month interactive tour calendar. */
.tour-calendar{position:relative;background:#f7fbfd}
.tour-calendar__months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.calendar-month{padding:29px 25px 27px;border:1px solid rgba(37,132,184,.12);border-radius:26px;background:linear-gradient(155deg,#fff 0%,#fbfdff 100%);box-shadow:0 18px 45px rgba(18,71,98,.07);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.calendar-month:hover{border-color:rgba(37,132,184,.22);box-shadow:0 24px 58px rgba(18,71,98,.11);transform:translateY(-3px)}
.calendar-month header{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:11px;margin-bottom:24px}
.calendar-month header>span{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.12em}
.calendar-month h3{margin:0;font:600 31px/1 "Cormorant Garamond",Georgia,serif}
.calendar-month header small{color:#81939c;font-size:10px;font-weight:700}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.calendar-weekdays{margin-bottom:8px;color:#8ca0aa;font-size:9px;font-weight:700;text-align:center;text-transform:uppercase}
.calendar-day{position:relative;min-width:0;aspect-ratio:1;display:grid;place-items:center;border:0;border-radius:50%;color:#536a76;background:transparent;font-size:11px;transition:color .2s ease,background .2s ease}
button.calendar-day{font:700 11px "Manrope",sans-serif;cursor:pointer}
.calendar-day.has-tour{z-index:1;color:#fff;background:linear-gradient(145deg,#3ba3d4,#237faf);box-shadow:0 6px 16px rgba(37,132,184,.24),inset 0 1px 0 rgba(255,255,255,.28);transition:transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .24s ease,background .24s ease}
.calendar-day.has-tour:hover,.calendar-day.has-tour:focus-visible{z-index:3;outline:0;background:linear-gradient(145deg,#48b1df,#2077a6);transform:translateY(-3px) scale(1.1);box-shadow:0 12px 25px rgba(37,132,184,.36),0 0 0 5px rgba(37,132,184,.12)}
.calendar-day i{position:absolute;right:-2px;top:-3px;width:16px;height:16px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;color:var(--accent);background:#fff;font:800 8px "Manrope",sans-serif;box-shadow:0 3px 8px rgba(18,71,98,.18)}
.tour-calendar__legend{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:16px;color:#718690;font-size:11px}
.tour-calendar__legend span{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(37,132,184,.12)}
.tour-calendar__nav{display:none}
.calendar-popover{position:fixed;z-index:30;width:360px;max-width:calc(100vw - 32px);padding:12px;border:1px solid rgba(37,132,184,.16);border-radius:20px;background:rgba(250,253,255,.97);box-shadow:0 24px 70px rgba(18,71,98,.24);opacity:0;visibility:hidden;transform:translateY(9px) scale(.975);transform-origin:50% 0;pointer-events:none;backdrop-filter:blur(16px);transition:opacity .2s ease,transform .25s cubic-bezier(.2,.8,.2,1),visibility 0s linear .25s}
.calendar-popover.is-visible{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto;transition-delay:0s}
.calendar-popover[hidden]{display:none}
.calendar-popover__close{position:absolute;z-index:2;right:18px;top:18px;width:30px;height:30px;border:0;border-radius:50%;color:#274c5f;background:rgba(255,255,255,.9);font-size:21px;cursor:pointer}
.calendar-popover__content{display:grid;gap:9px}
.calendar-popover--multi .calendar-popover__content{grid-template-columns:repeat(var(--calendar-card-count,4),minmax(0,1fr))}
.calendar-popover--multi .calendar-trip{grid-template-columns:1fr;grid-template-rows:112px 1fr;min-width:0}
.calendar-popover--multi .calendar-trip img{height:112px}
.calendar-popover--multi .calendar-trip>div{padding:14px}
.calendar-popover--multi .calendar-trip h4{font-size:23px}
.calendar-trip{display:grid;grid-template-columns:108px 1fr;min-height:126px;overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 7px 20px rgba(18,71,98,.08);animation:calendarTripIn .3s both}
.calendar-trip:nth-child(2){animation-delay:.05s}
@keyframes calendarTripIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.calendar-trip img{width:100%;height:100%;object-fit:cover}
.calendar-trip>div{padding:17px 14px}
.calendar-trip span{display:block;padding-right:28px;color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.calendar-trip h4{margin:5px 0 2px;font:600 25px/1 "Cormorant Garamond",Georgia,serif}
.calendar-trip p{margin:0;color:var(--text-soft);font-size:10px}
.calendar-trip button{margin-top:10px;padding:0;border:0;color:var(--accent);background:none;font-size:10px;font-weight:800;cursor:pointer}
.calendar-trip button b{margin-left:4px}

@media(max-width:900px){.tour-calendar__months{grid-template-columns:1fr 1fr}.calendar-month:last-child{grid-column:1/-1}}
@media(max-width:900px) and (min-width:621px){
  .tour-modal__summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .tour-modal__summary div{min-width:0;padding-right:22px}
  .tour-modal__summary div+div{padding-left:22px}
  .tour-modal__summary .tour-modal__date{grid-column:1/-1;width:100%;min-width:0;margin-top:12px;padding:16px 20px;border-left:0}
  .tour-modal__summary strong{overflow-wrap:anywhere}
}
.offer-card--accent .offer-card__icon{
  color:#fff;
  border-color:rgba(255,255,255,.26);
  background:rgba(255,255,255,.13);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 14px 30px rgba(7,61,91,.18);
}
.offer-card h3{
  margin:0 0 13px;
  font:600 32px/1 "Cormorant Garamond",Georgia,serif;
}
.offer-card p{
  margin:0;
  color:var(--text-soft);
  font-size:14px;
  line-height:1.65;
}
.offer-card--accent p{color:rgba(255,255,255,.82)}

@media(max-width:900px){
  .offers__grid{grid-template-columns:1fr 1fr}
  .offer-card:first-child{grid-column:1/-1}
}

@media(max-width:620px){
  .offers__grid{grid-template-columns:1fr;gap:12px}
  .offer-card:first-child{grid-column:auto}
  .offer-card{min-height:0;padding:25px 23px}
  .offer-card__top{min-height:76px;margin-bottom:15px}
  .offer-card__icon{width:62px;height:62px;border-radius:19px 19px 19px 7px}
  .offer-card__icon svg{width:38px;height:38px}
  .offer-card h3{font-size:29px}
  .quiz-options--directions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .quiz-options--directions .quiz-option label{min-height:58px;padding:10px;font-size:12px;line-height:1.25}
  .quiz-options--directions .quiz-option:last-child{grid-column:1/-1}
}

/* Final offer/calendar overrides kept last in the cascade. */
.offer-card__icon,.offer-card:nth-child(2) .offer-card__icon{
  border-radius:50%;
  transform:none;
}
.offer-card__icon svg{width:38px;height:38px;stroke-width:1.8}

@media(max-width:620px){
  .tour-calendar__months{display:flex;gap:0;width:100%;margin:0;padding:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tour-calendar__months::-webkit-scrollbar{display:none}
  .calendar-month{display:block;flex:0 0 100%;width:100%;min-height:455px;padding:30px 22px 27px;border-radius:24px;box-shadow:none;scroll-snap-align:start;scroll-snap-stop:always}
  .calendar-month:hover{transform:none}
  .calendar-month header{margin-bottom:28px}
  .calendar-month h3{font-size:42px}
  .calendar-weekdays,.calendar-days{gap:8px}
  .calendar-weekdays{margin-bottom:12px;font-size:11px}
  .calendar-day,button.calendar-day{font-size:14px}
  .tour-calendar__nav{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:10px;margin-top:15px}
  .tour-calendar__nav-button{width:100%;min-height:48px;padding:0 17px;border:1px solid rgba(37,132,184,.18);border-radius:999px;color:#206f99;background:#fff;font:700 13px "Manrope",sans-serif;box-shadow:0 8px 22px rgba(18,71,98,.08);cursor:pointer}
  .tour-calendar__nav-button[hidden]{display:block!important;visibility:hidden;pointer-events:none}
  .tour-calendar__legend{justify-content:flex-start;margin-top:17px}
  .calendar-popover--multi .calendar-popover__content{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .calendar-popover--multi .calendar-popover__content::-webkit-scrollbar{display:none}
  .calendar-popover--multi .calendar-trip{flex:0 0:220px;scroll-snap-align:start}
  .offer-card{display:grid;grid-template-columns:1fr auto;column-gap:16px}
  .offer-card__top{display:contents}
  .offer-card__number{grid-column:1;grid-row:1;margin:3px 0 27px}
  .offer-card__icon,.offer-card:nth-child(2) .offer-card__icon{grid-column:2;grid-row:1/3;width:58px;height:58px;border-radius:50%;transform:none}
  .offer-card__icon svg{width:29px;height:29px}
  .offer-card h3{grid-column:1;grid-row:2;margin-bottom:11px}
  .offer-card p{grid-column:1/-1;grid-row:3}
}

/* Mobile calendar results: a readable bottom sheet with equal tour rows. */
@media(max-width:620px){
  .calendar-popover,
  .calendar-popover.calendar-popover--multi{
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:12px!important;
    width:auto!important;
    max-width:none;
    max-height:calc(100dvh - var(--header-height) - 24px);
    padding:10px;
    overflow:visible;
    border-radius:24px;
    transform:none;
    transform-origin:50% 100%;
    transition:opacity .3s cubic-bezier(.22,.7,.2,1),visibility 0s linear .3s;
  }
  .calendar-popover.is-above,
  .calendar-popover.is-below{transform:none;transform-origin:50% 100%}
  .calendar-popover.is-visible{transform:none;transition-delay:0s}
  .calendar-popover:before{display:none}
  .calendar-popover__close{
    position:absolute;
    top:-22px;
    right:14px;
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border:1px solid rgba(37,132,184,.18);
    background:#fff;
    font-size:25px;
    box-shadow:0 8px 22px rgba(18,71,98,.16);
    opacity:0;
    transition:opacity .22s ease .08s,background-color .2s ease;
  }
  .calendar-popover.is-visible .calendar-popover__close{opacity:1}
  .calendar-popover__content,
  .calendar-popover--multi .calendar-popover__content{
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    max-height:calc(100dvh - var(--header-height) - 50px);
    padding:0 2px 2px;
    overflow-x:hidden;
    overflow-y:auto;
    scroll-snap-type:y proximity;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    opacity:0;
    transition:opacity .25s ease .05s;
  }
  .calendar-popover.is-visible .calendar-popover__content{opacity:1}
  .calendar-trip,
  .calendar-popover--multi .calendar-trip{
    width:100%;
    min-width:0;
    height:178px;
    min-height:178px;
    display:grid;
    grid-template-columns:116px minmax(0,1fr);
    grid-template-rows:1fr;
    flex:none;
    border:1px solid rgba(37,132,184,.08);
    border-radius:17px;
    scroll-snap-align:start;
    box-shadow:0 6px 18px rgba(18,71,98,.07);
    animation:none;
  }
  .calendar-trip img,
  .calendar-popover--multi .calendar-trip img{
    width:116px;
    height:178px;
    object-fit:cover;
  }
  .calendar-trip>div,
  .calendar-popover--multi .calendar-trip>div{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    padding:14px 13px 12px;
  }
  .calendar-trip span{width:100%;padding-right:0;font-size:10px;line-height:1.35;overflow-wrap:anywhere}
  .calendar-trip h4,
  .calendar-popover--multi .calendar-trip h4{max-width:100%;margin:5px 0 4px;font-size:24px;line-height:.94;overflow-wrap:anywhere}
  .calendar-trip p{font-size:11px;line-height:1.45;overflow-wrap:anywhere}
  .calendar-trip button{margin-top:auto;font-size:11px;line-height:1.2;text-align:left}
}
