/* Shatvik Holidays - desktop CSS (loads at 1024px and up) */
:root{--wrap:1120px;--gut:max(32px,calc((100vw - var(--wrap)) / 2))}
body{max-width:none;margin:0;box-shadow:none;padding-bottom:96px;font-size:17px}

/* top bar: brand left; Book now, home, menu right */
.bar{--head:72px;height:72px;padding:0 var(--gut)}
:root{--head:72px}
.brand{font-size:28px}
.bar-r{margin-left:auto;gap:12px}.bar-actions{display:flex;align-items:center;gap:14px}
.bar-book{min-height:46px;padding:0 26px;border:0;border-radius:999px;background:var(--paper);color:var(--ink);font:800 16px var(--f-b);cursor:pointer}
.bar-book:hover{background:#fff}
.bar-home{width:46px;height:46px;display:grid;place-items:center;color:var(--paper);border-radius:50%}
.bar-home svg{width:28px;height:28px}
.bar-home:hover{background:var(--ink3)}
.burger{width:50px;height:50px}
.burger i{left:13px;right:13px}.burger i:last-child{left:21px}
.burger[aria-expanded=true] i:first-child{top:24px}.burger[aria-expanded=true] i:last-child{top:24px;left:13px}
.burger i:first-child{top:19px}.burger i:last-child{top:29px}

/* menu: right-hand panel */
.drawer{left:auto;right:0;margin-left:0;width:440px;max-width:none;max-height:calc(100dvh - var(--head));padding:10px 26px 32px;border-radius:0 0 0 22px;transform:translateX(24px)}
.drawer.is-open{transform:none}
.row a{font-size:18px}
.row a:hover{text-decoration:underline;text-underline-offset:4px}
.drawer-scrim{inset:var(--head) 0 0 0}

/* layout */
main{max-width:var(--wrap);margin:0 auto;padding:0 32px}
main>section.blk,main>section.ticket,main>section.endcta{margin-left:0;margin-right:0}
main>.facts{padding:0}
.hero{display:grid;grid-template-columns:minmax(0,1fr) 410px;column-gap:64px;align-items:start;padding:44px 0 64px;background:#e7e5e1;box-shadow:0 0 0 100vmax #e7e5e1;clip-path:inset(0 -100vmax);margin-bottom:0}
.hero-home{padding-top:64px}
.hero h1{font-size:68px;max-width:12em;margin-bottom:20px}
.answer{font-size:19px;max-width:38em}
.hero-cta{flex-direction:row;gap:14px;margin-top:28px}
.hero-cta .btn{width:auto;min-width:230px;min-height:60px;font-size:19px}
.hairpin{display:none}
.crumbs ol{font-size:14px}
.facts{grid-template-columns:repeat(4,1fr);gap:16px;margin:32px 0 8px}
.facts li{padding:20px 22px}
.facts strong{font-size:26px}
.facts span{font-size:14px}
.blk{padding:52px 0 8px}
.blk h2{font-size:34px;margin:0}
.blk p,.ans p{max-width:46em}
.tiles{grid-template-columns:repeat(2,1fr);gap:16px}
.tile{padding:22px 64px 22px 22px}
.tile h3{font-size:21px}
.tile:hover{border-color:var(--ink);transform:translateY(-2px)}
.tile{transition:transform .2s,border-color .2s}
.linklist{grid-template-columns:repeat(2,1fr);gap:12px}
.linklist a:hover{border-color:var(--ink)}
.ticket{max-width:820px;margin-top:52px!important;padding:24px 28px 18px}
.ticket::before,.ticket::after{top:74px}
.ticket-head h2{font-size:28px}
.ticket tbody th{font-size:18px}
.ticket td:nth-child(2){font-size:24px}
.road-list,.steps{max-width:760px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:none;align-items:start}
.steps li{padding:0 0 0 50px}
.steps li::after{display:none}
.tablewrap{max-width:900px}
table.plain{font-size:16px}
.faq{max-width:880px}
.faq summary{font-size:18px;padding:18px 20px}
.ans{padding:0 20px 18px}
.endcta{margin-top:56px!important;padding:44px 48px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 32px}
.endcta h2{font-size:38px;grid-column:1}
.endcta p{grid-column:1}
.endcta .hero-cta{grid-column:2;grid-row:1/3;margin:0}
.finder{max-width:720px;display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.finder-out,.finder .btn{grid-column:1/-1}
.finder .btn{width:auto;justify-self:start;min-width:260px}
.inline{max-width:720px}

/* footer */
.foot{padding:56px var(--gut) 44px;display:grid;grid-template-columns:1.1fr 1.4fr;gap:40px 64px;margin-top:64px}
.foot-cols{margin-top:0}
.foot-legal{grid-column:1/-1;margin-top:8px;display:flex;justify-content:space-between}

/* bottom dock: call, WhatsApp, top - centred */
.dock{left:50%;right:auto;width:auto;max-width:none;margin:0;bottom:22px;transform:translateX(-50%)}
.dock.is-hidden{transform:translateX(-50%) translateY(calc(100% + 50px))}
.dock-book,.dock-home{display:none}
.dock-bar{gap:10px;padding:8px 14px}
.dock-i{flex:none;width:60px;height:56px}
.dock-i:hover{background:var(--ink3)}
.dock-i svg{width:30px;height:30px}.dock-i img.wa{width:42px;height:42px}

/* booking form: centred modal */
.dock[data-state=open]{left:50%;top:50%;bottom:auto;width:600px;max-width:92vw;border-radius:30px;transform:translate(-50%,-50%)}
.dock[data-state=open] .sheet{max-height:86vh;padding:0 30px 26px}
.dock .f2{gap:14px}
.scrim{background:rgba(12,12,13,.6)}

/* hero: text left, quick enquiry card right */
.hero>*{grid-column:1}
.hero>.hero-aside{display:block;grid-column:2;grid-row:1/span 8;align-self:start;background:var(--card);border:1.5px solid var(--ink);border-radius:24px;padding:24px 24px 22px;box-shadow:0 18px 40px rgba(12,12,13,.14);margin-top:8px}
.aside-t{font:800 24px var(--f-d);color:var(--aub);margin-bottom:4px}
.aside-s{font-size:14px;color:var(--mute);margin-bottom:14px}
.hero-aside .inline{background:transparent;border:0;padding:0;max-width:none}
.hero-aside .fld{margin-bottom:10px}
.hero-aside .fld input,.hero-aside .fld select,.hero-aside textarea{min-height:44px;padding:9px 12px;font-size:15px}
.hero-aside textarea{min-height:64px}
.hero-aside .sheet-fine{display:none}
.hero-aside .send{min-height:52px;background:var(--ink);color:#fff}
.hero-aside .f2{gap:10px}

/* sections: heading column left (sticky), content right */
.blk{display:grid;grid-template-columns:250px minmax(0,1fr);column-gap:56px;align-items:start;padding:60px 0 12px;border-top:1px solid var(--line)}
.blk>h2{grid-column:1;grid-row:1/span 30;position:sticky;top:96px}
.blk>*:not(h2){grid-column:2}
.hero+.facts+.blk,.hero+.facts+.ticket+.blk{border-top:0}
.blk .tablewrap,.blk .finder,.blk .inline{max-width:none}
.faq details{max-width:none}
main>section.ticket{max-width:none;margin-top:40px!important}
.related .linklist{grid-template-columns:repeat(2,1fr)}
.hero-home{padding-top:72px}
.hero-home h1{font-size:76px}
.ticket-head h2{font-size:26px!important}
.blk .ticket{max-width:none}
.infobox{max-width:none}

.atlas{grid-template-columns:repeat(2,1fr)}

@media(hover:hover){a.tile:hover{transform:translateY(-3px);box-shadow:0 18px 30px -20px rgba(31,107,80,.6)}.atlas-g li a:hover{background:var(--tea);color:#fff}}
