/* ════════════════════════════════════════════════════════════════════
   HOME PAGE (index.php) — page-specific styles.
   Tokens, buttons, sections, reveals, modal & toasts: css/fsi-core.css
   ════════════════════════════════════════════════════════════════════ */

/* ── HERO VIDEO ── */
.fsi-hero{position:relative;width:100vw;height:100vh;min-height:600px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.fsi-hero__vwrap{position:absolute;inset:0;z-index:0;background:var(--deep)}
.fsi-hero__vwrap video{width:100%;height:100%;object-fit:cover;opacity:.82}
.fsi-hero__vwrap .vposter{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.82;z-index:1;transition:opacity .5s;animation:kenburns 18s ease-in-out infinite alternate}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08)}}
.fsi-hero__overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(160deg,rgba(13,26,13,.72) 0%,rgba(13,26,13,.22) 55%,rgba(13,26,13,.52) 100%)}
.fsi-hero__content{position:relative;z-index:3;text-align:center;padding:52px 60px;max-width:820px;animation:heroUp 1.4s .4s both;background:rgba(255,255,255,.07);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.18);border-top:1px solid rgba(255,255,255,.32);box-shadow:0 8px 48px rgba(0,0,0,.18)}
@keyframes heroUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
.fsi-hero__eye{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(201,168,76,.45);padding:7px 20px;margin-bottom:26px}
.fsi-hero__title{font-family:var(--font-display);font-size:clamp(2.8rem,7vw,6.5rem);font-weight:800;line-height:1;color:var(--cream);margin-bottom:22px}
.fsi-hero__title em{font-style:italic;color:var(--gold)}
.fsi-hero__sub{font-family:var(--font-serif);font-size:clamp(1.05rem,2vw,1.4rem);font-weight:400;color:rgba(245,239,224,.8);line-height:1.65;max-width:630px;margin:0 auto 40px}
.fsi-hero__btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.fsi-hero__scroll{position:absolute;bottom:100px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(245,239,224,.5);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;animation:sbounce 2s infinite}
@keyframes sbounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(7px)}}
.fsi-hero__scroll::after{content:'';width:1px;height:38px;background:linear-gradient(to bottom,rgba(201,168,76,.6),transparent)}
.fsi-vctr{position:absolute;bottom:68px;right:28px;z-index:5;width:40px;height:40px;background:rgba(13,26,13,.7);border:1px solid rgba(201,168,76,.3);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--gold);font-size:.88rem;transition:background .2s}
.fsi-vctr:hover{background:rgba(201,168,76,.2)}
.fsi-stats{position:absolute;bottom:0;left:0;right:0;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(13,26,13,.92);border-top:1px solid rgba(201,168,76,.18);backdrop-filter:blur(8px)}
.fsi-stat{padding:20px 10px;text-align:center;border-right:1px solid rgba(201,168,76,.12)}
.fsi-stat:last-child{border-right:none}
.fsi-stat strong{display:block;font-family:var(--font-display);font-size:1.9rem;font-weight:800;color:var(--gold);line-height:1}
.fsi-stat span{font-size:.67rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(245,239,224,.5);margin-top:4px;display:block}

/* ── ABOUT ── */
.fsi-about{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center;padding:100px 6%;background:var(--ivory)}
.fsi-about__imgs{display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:280px 200px;gap:10px}
.fsi-about__imgs .tall{grid-row:span 2}
.fsi-about__imgs img{width:100%;height:100%;object-fit:cover;display:block}
.fsi-about__badge{display:inline-flex;align-items:center;gap:8px;background:var(--forest);color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:9px 18px;margin-bottom:20px}
.fsi-about__text p{font-size:.96rem;color:var(--muted);line-height:1.85;font-weight:300;margin-bottom:16px}
.fsi-about__text p strong{color:var(--forest);font-weight:700}
.fsi-feats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0 34px}
.fsi-feat{display:flex;gap:11px;align-items:flex-start}
.fsi-feat__ico{width:40px;height:40px;flex-shrink:0;background:var(--forest);display:flex;align-items:center;justify-content:center;font-size:1.05rem}
.fsi-feat__txt strong{display:block;font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--forest);margin-bottom:2px}
.fsi-feat__txt span{font-size:.82rem;color:var(--muted);line-height:1.5}

/* ── FEATURED SAFARIS ── */
.fsi-sfrs__hdr{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:48px;gap:28px}
.fsi-sfrs__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fsi-scard{background:#fff;overflow:hidden;transition:transform .3s,box-shadow .3s;position:relative}
.fsi-scard:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}
.fsi-scard__badge{position:absolute;top:16px;left:16px;z-index:2;background:var(--tiger);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 11px}
.fsi-scard__img{height:235px;overflow:hidden}
.fsi-scard__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.fsi-scard:hover .fsi-scard__img img{transform:scale(1.06)}
.fsi-scard__dates{background:var(--forest);color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:8px 18px}
.fsi-scard__body{padding:22px}
.fsi-scard__zone{font-size:.66rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--sage);margin-bottom:8px}
.fsi-scard__title{font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--forest);line-height:1.25;margin-bottom:11px}
.fsi-scard__desc{font-size:.86rem;color:var(--muted);line-height:1.7;margin-bottom:18px;font-weight:300}
.fsi-scard__foot{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid rgba(0,0,0,.07)}
.fsi-scard__price{font-family:var(--font-display);font-size:1.45rem;font-weight:800;color:var(--forest)}
.fsi-scard__price span{font-size:.76rem;font-weight:400;color:var(--muted);font-family:var(--font-body)}

/* ── ZONES ── */
.fsi-zones{background:var(--deep);padding:90px 0 0}
.fsi-zones__hdr{padding:0 5% 48px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.fsi-zones__grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:380px 280px;gap:3px}
.fsi-zone{position:relative;overflow:hidden;cursor:pointer}
.fsi-zone.big{grid-column:span 2}
.fsi-zone img{width:100%;height:100%;object-fit:cover;transition:transform .6s;display:block}
.fsi-zone:hover img{transform:scale(1.06)}
.fsi-zone__ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,26,13,.92) 0%,rgba(13,26,13,.08) 55%);transition:background .35s}
.fsi-zone:hover .fsi-zone__ov{background:linear-gradient(to top,rgba(13,26,13,.97) 0%,rgba(13,26,13,.32) 100%)}
.fsi-zone__body{position:absolute;bottom:0;left:0;right:0;padding:20px 22px}
.fsi-zone__num{font-size:.67rem;font-weight:700;letter-spacing:.2em;color:var(--gold);margin-bottom:3px}
.fsi-zone__name{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--cream);margin-bottom:4px}
.fsi-zone.big .fsi-zone__name{font-size:1.75rem}
.fsi-zone__tag{display:inline-block;background:var(--gold);color:var(--deep);font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:3px 9px;margin-bottom:7px}
.fsi-zone__desc{font-size:.82rem;color:rgba(245,239,224,.7);line-height:1.5;max-height:0;overflow:hidden;opacity:0;transition:max-height .4s,opacity .4s}
.fsi-zone:hover .fsi-zone__desc{max-height:80px;opacity:1}
.fsi-zone__lnk{display:inline-block;margin-top:12px;font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(201,168,76,.35);padding-bottom:2px;opacity:0;transition:opacity .4s}
.fsi-zone:hover .fsi-zone__lnk{opacity:1}

/* ── WILDLIFE MARQUEE ── */
.fsi-mq-wrap{overflow:hidden;background:var(--forest);padding:30px 0;border-top:1px solid rgba(201,168,76,.15);border-bottom:1px solid rgba(201,168,76,.15)}
.fsi-mq{display:flex;width:max-content;animation:mq 30s linear infinite}
.fsi-mq-wrap:hover .fsi-mq{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.fsi-mq__item{display:flex;align-items:center;gap:17px;padding:0 46px;color:rgba(245,239,224,.45);font-family:var(--font-serif);font-size:1rem;font-style:italic;border-right:1px solid rgba(201,168,76,.18);white-space:nowrap}
.fsi-mq__item strong{color:var(--cream);font-style:normal;font-family:var(--font-body);font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}
.fsi-mq__dot{color:var(--gold);font-size:1.1rem}

/* ── STAYS ── */
.fsi-stays__hdr{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:46px;gap:28px}
.fsi-stays__grid{display:grid;grid-template-columns:1.55fr 1fr 1fr;grid-template-rows:310px 270px;gap:3px}
.fsi-stay{position:relative;overflow:hidden;cursor:pointer}
.fsi-stay.tall{grid-row:span 2}
.fsi-stay img{width:100%;height:100%;object-fit:cover;transition:transform .55s;display:block}
.fsi-stay:hover img{transform:scale(1.06)}
.fsi-stay__ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(13,26,13,.92) 0%,transparent 50%)}
.fsi-stay__body{position:absolute;bottom:0;left:0;right:0;padding:16px 20px}
.fsi-stay__cat{font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:3px}
.fsi-stay__name{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--cream)}
.fsi-stay.tall .fsi-stay__name{font-size:1.55rem}
.fsi-stay__det{font-size:.77rem;color:rgba(245,239,224,.65);margin-top:3px}
.fsi-stay__price{font-size:.82rem;font-weight:600;color:var(--gold);margin-top:5px}

/* ── WHY US ── */
.fsi-why__hdr{text-align:center;margin-bottom:56px}
.fsi-why__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}
.fsi-wcard{background:#fff;padding:38px 26px;border-bottom:3px solid transparent;transition:border-color .25s,transform .25s}
.fsi-wcard:hover{border-color:var(--gold);transform:translateY(-4px)}
.fsi-wcard__ico{font-size:2.1rem;margin-bottom:16px}
.fsi-wcard__ttl{font-family:var(--font-display);font-size:1.03rem;font-weight:700;color:var(--forest);margin-bottom:10px}
.fsi-wcard__txt{font-size:.86rem;color:var(--muted);line-height:1.75;font-weight:300}

/* ── PROCESS ── */
.fsi-proc__hdr{text-align:center;margin-bottom:62px}
.fsi-proc__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.fsi-proc__steps::before{content:'';position:absolute;top:26px;left:12.5%;right:12.5%;height:1px;background:linear-gradient(to right,transparent,var(--gold) 30%,var(--gold) 70%,transparent)}
.fsi-step{text-align:center;padding:0 20px}
.fsi-step__num{width:52px;height:52px;background:var(--forest);border:2px solid rgba(201,168,76,.3);display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-family:var(--font-display);font-size:1.2rem;font-weight:800;color:var(--gold);position:relative;z-index:1;transition:transform .25s,border-color .25s}
.fsi-step:hover .fsi-step__num{transform:scale(1.12);border-color:var(--gold)}
.fsi-step__ttl{font-family:var(--font-display);font-size:1.03rem;font-weight:700;color:var(--forest);margin-bottom:10px}
.fsi-step__txt{font-size:.84rem;color:var(--muted);line-height:1.72;font-weight:300}

/* ── TESTIMONIALS ── */
.fsi-testi__hdr{text-align:center;margin-bottom:52px}
.fsi-testi__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.fsi-tcard{background:rgba(255,255,255,.04);border:1px solid rgba(201,168,76,.1);padding:32px;transition:border-color .3s,background .3s}
.fsi-tcard:hover{border-color:rgba(201,168,76,.4);background:rgba(255,255,255,.07)}
.fsi-tcard__stars{color:var(--gold);font-size:.82rem;letter-spacing:3px;margin-bottom:17px}
.fsi-tcard__txt{font-family:var(--font-serif);font-size:1.05rem;font-style:italic;color:rgba(245,239,224,.82);line-height:1.75;margin-bottom:24px}
.fsi-tcard__auth{display:flex;align-items:center;gap:12px}
.fsi-tcard__av{width:40px;height:40px;border-radius:50%;background:var(--moss);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:.95rem;font-weight:700;color:var(--gold);flex-shrink:0}
.fsi-tcard__nm{font-size:.86rem;font-weight:700;color:var(--cream)}
.fsi-tcard__loc{font-size:.74rem;color:rgba(245,239,224,.42);margin-top:1px}
.fsi-tcard__src{margin-left:auto;font-size:.66rem;color:var(--gold);letter-spacing:.1em;text-transform:uppercase}

/* ── PLAN VISIT ── */
.fsi-plan__hdr{text-align:center;margin-bottom:52px}
.fsi-plan__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fsi-pcard{border:1px solid rgba(0,0,0,.07);background:#fff;padding:28px 20px;transition:border-color .2s,transform .2s}
.fsi-pcard:hover{border-color:var(--gold);transform:translateY(-3px)}
.fsi-pcard__ico{font-size:1.85rem;margin-bottom:13px}
.fsi-pcard__ttl{font-family:var(--font-display);font-size:.96rem;font-weight:700;color:var(--forest);margin-bottom:9px}
.fsi-pcard__txt{font-size:.83rem;color:var(--muted);line-height:1.7}
.fsi-pcard__hl{display:inline-block;margin-top:13px;background:var(--forest);color:var(--gold);font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:5px 11px}

/* ── CTA ── */
.fsi-cta{position:relative;padding:108px 5%;text-align:center;overflow:hidden}
.fsi-cta__bg{position:absolute;inset:0;background:var(--forest)}
.fsi-cta__bg img{width:100%;height:100%;object-fit:cover;opacity:.22}
.fsi-cta__c{position:relative;z-index:2;max-width:680px;margin:0 auto}
.fsi-cta__eye{font-size:.68rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:17px;display:block}
.fsi-cta__ttl{font-family:var(--font-display);font-size:clamp(1.9rem,4vw,3.4rem);font-weight:800;color:var(--cream);line-height:1.15;margin-bottom:20px}
.fsi-cta__ttl em{font-style:italic;color:var(--gold)}
.fsi-cta__sub{font-size:1rem;font-weight:300;color:rgba(245,239,224,.68);margin-bottom:36px;line-height:1.7}
.fsi-cta__btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ── BOOKING FORM ── */
.fsi-book__wrap{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:start}
.fsi-book__inf p{font-size:.94rem;color:var(--muted);line-height:1.85;font-weight:300;margin-bottom:26px}
.fsi-book__perks{list-style:none}
.fsi-book__perks li{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.07);font-size:.87rem;color:var(--muted)}
.fsi-book__perks li::before{content:"◆";color:var(--gold);font-size:.53rem}
.fsi-bform{background:var(--forest);padding:42px 36px}
.fsi-bform h3{font-family:var(--font-display);font-size:1.45rem;font-weight:700;color:var(--cream);margin-bottom:6px}
.fsi-bform p{font-size:.82rem;color:rgba(245,239,224,.5);margin-bottom:28px}
.fsi-frow{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.fsi-fg{margin-bottom:13px}
.fsi-fg label{display:block;font-size:.67rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(245,239,224,.55);margin-bottom:7px}
.fsi-fg input,.fsi-fg select,.fsi-fg textarea{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(201,168,76,.18);color:var(--cream);font-family:var(--font-body);font-size:.89rem;padding:11px 13px;outline:none;transition:border-color .2s;-webkit-appearance:none;border-radius:0}
.fsi-fg input::placeholder,.fsi-fg textarea::placeholder{color:rgba(245,239,224,.28)}
.fsi-fg input:focus,.fsi-fg select:focus,.fsi-fg textarea:focus{border-color:var(--gold)}
.fsi-fg select option{background:var(--forest);color:var(--cream)}
.fsi-fsub{width:100%;background:var(--gold);color:var(--deep);font-family:var(--font-body);font-weight:700;font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;padding:15px;border:none;cursor:pointer;margin-top:6px;transition:background .2s}
.fsi-fsub:hover{background:var(--amber)}
.fsi-fsub[disabled]{opacity:.6;cursor:wait}

/* ── GALLERY ── */
.fsi-gal{padding:0;overflow:hidden}
.fsi-gal__hdr{text-align:center;padding:78px 5% 48px;background:var(--ivory)}
.fsi-gal__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-template-rows:260px 218px;gap:3px}
.fsi-gi{overflow:hidden;position:relative;cursor:pointer}
.fsi-gi.tall{grid-row:span 2}
.fsi-gi.wide{grid-column:span 2}
.fsi-gi img{width:100%;height:100%;object-fit:cover;transition:transform .5s;filter:saturate(.88)}
.fsi-gi:hover img{transform:scale(1.07);filter:saturate(1.1)}
.fsi-gi__ov{position:absolute;inset:0;background:rgba(13,26,13,0);transition:background .3s;display:flex;align-items:center;justify-content:center}
.fsi-gi:hover .fsi-gi__ov{background:rgba(13,26,13,.3)}
.fsi-gi__ov span{color:var(--gold);font-size:1.8rem;font-weight:300;opacity:0;transition:opacity .3s}
.fsi-gi:hover .fsi-gi__ov span{opacity:1}

/* ── INSTAGRAM ── */
.fsi-ig__hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}
.fsi-ig__ttl{font-family:var(--font-display);font-size:1.75rem;font-weight:800;color:var(--forest)}
.fsi-ig__ttl span{color:var(--sage)}
.fsi-ig__hdl{font-size:.82rem;color:var(--muted);display:flex;align-items:center;gap:8px}
.fsi-ig__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.fsi-ig-item{position:relative;overflow:hidden;aspect-ratio:1}
.fsi-ig-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.fsi-ig-item:hover img{transform:scale(1.08)}
.fsi-ig-item__ov{position:absolute;inset:0;background:rgba(13,26,13,0);transition:all .3s;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;opacity:0}
.fsi-ig-item:hover .fsi-ig-item__ov{background:rgba(13,26,13,.45);opacity:1}

/* ── MAP SECTION ── */
.fsi-map-sec{background:var(--deep);padding:0}
.fsi-map-wrap{display:grid;grid-template-columns:1fr 1.8fr}
.fsi-map-info{padding:64px 52px;display:flex;flex-direction:column;justify-content:center}
.fsi-map-info h2{font-family:var(--font-display);font-size:clamp(1.6rem,2.8vw,2.4rem);font-weight:800;color:var(--cream);margin-bottom:14px;line-height:1.2}
.fsi-map-info h2 em{font-style:italic;color:var(--gold)}
.fsi-map-info p{font-size:.92rem;color:rgba(245,239,224,.6);line-height:1.75;margin-bottom:28px}
.fsi-map-route{background:rgba(201,168,76,.08);border:1px solid rgba(201,168,76,.2);padding:18px 20px;margin-bottom:28px;display:flex;gap:14px;align-items:flex-start}
.fsi-map-route__ico{font-size:1.4rem;flex-shrink:0;margin-top:2px}
.fsi-map-route__txt strong{display:block;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.fsi-map-route__txt span{font-size:.84rem;color:rgba(245,239,224,.65);line-height:1.6}
.fsi-map-frame{height:480px;overflow:hidden;position:relative}
.fsi-map-frame iframe{width:100%;height:100%;border:0;display:block}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .fsi-about{grid-template-columns:1fr}
  .fsi-zones__grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,260px)}
  .fsi-zone.big{grid-column:span 2;height:320px}
  .fsi-why__grid{grid-template-columns:repeat(2,1fr)}
  .fsi-plan__grid{grid-template-columns:repeat(2,1fr)}
  .fsi-sfrs__grid{grid-template-columns:1fr 1fr}
  .fsi-gal__grid{grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto}
  .fsi-gi.tall{grid-row:span 1;height:220px}
  .fsi-map-wrap{grid-template-columns:1fr;grid-template-rows:auto}
  .fsi-map-info{padding:48px 32px 32px}
  .fsi-map-frame{height:380px}
}
@media(max-width:860px){
  .fsi-stats{grid-template-columns:repeat(2,1fr)}
  .fsi-sfrs__grid{grid-template-columns:1fr}
  .fsi-stays__grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .fsi-stay.tall{grid-row:span 1;height:240px}
  .fsi-proc__steps{grid-template-columns:1fr 1fr;gap:34px}
  .fsi-proc__steps::before{display:none}
  .fsi-testi__grid{grid-template-columns:1fr}
  .fsi-book__wrap{grid-template-columns:1fr}
  .fsi-ig__grid{grid-template-columns:repeat(4,1fr)}
  .fsi-ig-item:nth-child(n+5){display:none}
  .fsi-map-frame{height:300px}
}
@media(max-width:600px){
  .fsi-zones__grid{grid-template-columns:1fr}
  .fsi-zone.big{grid-column:span 1}
  .fsi-plan__grid{grid-template-columns:1fr}
  .fsi-why__grid{grid-template-columns:1fr}
  .fsi-frow{grid-template-columns:1fr}
  .fsi-hero__title{font-size:2.3rem}
  .fsi-hero__content{padding:32px 22px}
  .fsi-stays__grid{grid-template-columns:1fr}
  .fsi-stay.tall{height:220px}
  .fsi-about{padding:56px 5%}
  .fsi-about__imgs{grid-template-rows:220px 160px}
  .fsi-sfrs__hdr{flex-direction:column;align-items:flex-start}
  .fsi-stays__hdr{flex-direction:column;align-items:flex-start}
  .fsi-map-info{padding:36px 20px 24px}
  .fsi-map-frame{height:260px}
}
