/* Satguru Customizations - styles for the new elements only. Uses the existing Satguru/TripGo tokens:
   HK Grotesk, #111B19 headings, #444 text, coral #FD4C5C, teal #00BB98, orange #EF7828/#F07828, green #48B734, 10px radius.
   Everything is scoped under .sg-* classes so no existing element is restyled. */
:root{--sg-green:#0C6C3C;--sg-green-dark:#08502C;--sg-orange:#EF7828;--sg-muted:#67707E;--sg-tint:#E6F8F4;--sg-font:"HK Grotesk","Hanken Grotesk",system-ui,Arial,sans-serif;--sg-font-head:Roboto,"Segoe UI",Arial,sans-serif;--sg-coral:#FD4C5C;--sg-teal:#00BB98;--sg-heading:#111B19;--sg-text:#444444;--sg-border:#E6E6E6}
.sg-hs .sr-only,.sg-fb .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pv-note{display:none!important}

/* ---------- Four-tab search ---------- */
.sg-hs{position:relative;z-index:30;margin:30px auto 0;max-width:1200px;font-family:var(--sg-font);text-align:left}
.sg-hs *{box-sizing:border-box}
@media (max-width:1240px){.sg-hs{margin-left:20px;margin-right:20px}}
.sg-hs__card{position:relative;border-radius:34px;box-shadow:0 24px 60px -24px rgba(9,52,47,.55);padding:56px 24px 60px;isolation:isolate}
.sg-hs__bg{position:absolute;inset:0;border-radius:34px;overflow:hidden;z-index:-1;background:#2e5e46}
.sg-hs__bg img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
.sg-hs__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,30,22,.30) 0%,rgba(8,30,22,.18) 45%,rgba(8,30,22,.45) 100%)}
.sg-hs .sg-hs__h1{font:700 26px/1.25 var(--sg-font);color:#fff;text-align:center;margin:0 0 22px;padding:0;text-shadow:0 2px 10px rgba(0,0,0,.35);letter-spacing:normal;text-transform:none}
.sg-hs__wrap{max-width:880px;margin:0 auto;position:relative}
.sg-hs__close{display:none}
.sg-hs__tabs{display:flex;justify-content:center;gap:8px;margin:0 0 14px;flex-wrap:wrap}
.sg-hs .sg-hs__tab{appearance:none;height:40px;padding:8px 17.6px;border-radius:999px;border:2px solid transparent;background:rgba(255,255,255,.2);color:#fff;font:700 14px/20px var(--sg-font);cursor:pointer;display:inline-flex;align-items:center;gap:7px;position:relative;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:color .15s,background-color .15s,border-color .15s;text-transform:none;letter-spacing:normal;box-shadow:none;min-height:0}
.sg-hs__tab svg{width:15px;height:15px;flex:none}
.sg-hs .sg-hs__tab:hover{background:rgba(255,255,255,.3);color:#fff}
.sg-hs .sg-hs__tab[aria-selected="true"]{background:#fff;color:var(--sg-green);box-shadow:0 1px 2px rgba(16,25,34,.06),0 1px 3px rgba(16,25,34,.08)}
.sg-hs__tab[aria-selected="true"]::after{content:"";position:absolute;left:30%;right:30%;bottom:4px;height:2px;border-radius:2px;background:var(--sg-teal)}
.sg-hs__panel{margin:0}
.sg-hs__panel[hidden]{display:none!important}
.sg-hs__bar{display:flex;align-items:stretch;background:#fff;border-radius:999px;box-shadow:0 30px 70px -26px rgba(9,52,47,.34);height:60px;position:relative}
.sg-hs__cell{position:relative;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:8px 20px;border-right:1px solid #E8E8E8;margin:0}
.sg-hs__cell:last-of-type{border-right:0}
.sg-hs__cell--w260{flex:0 0 260px}.sg-hs__cell--w219{flex:0 0 219px}.sg-hs__cell--w390{flex:0 0 390px}.sg-hs__cell--w349{flex:0 0 349px}.sg-hs__cell--w372{flex:0 0 372px}.sg-hs__cell--fill{flex:1 1 auto}
.sg-hs .sg-hs__label,.sg-fb .sg-hs__label{display:block;font:600 13px/18px var(--sg-font);letter-spacing:0;text-transform:none;color:var(--sg-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;padding:0}
.sg-hs .sg-hs__trigger{appearance:none;background:none;border:0;padding:0;margin:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;font:700 15px/22px var(--sg-font);color:var(--sg-heading);cursor:pointer;text-align:left;box-shadow:none;min-height:0;text-transform:none;letter-spacing:normal}
.sg-hs .sg-hs__trigger:hover,.sg-hs .sg-hs__trigger:focus{background:none;color:var(--sg-heading)}
.sg-hs__value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sg-hs__chev{width:16px;height:16px;flex:none;color:var(--sg-muted);transition:transform .2s;display:inline-flex;align-items:center;justify-content:center;align-self:center}
.sg-hs__chev svg{width:16px;height:16px;display:block}
.sg-hs__trigger[aria-expanded="true"] .sg-hs__chev{transform:rotate(180deg)}
.sg-hs__cell:focus-within{background:#FAFBFA}
.sg-hs__cell:first-child:focus-within{border-radius:999px 0 0 999px}
.sg-hs .sg-hs__input{border:0;outline:0;background:transparent;width:100%;padding:0;margin:0;height:auto;box-shadow:none;font:700 15px/22px var(--sg-font);color:var(--sg-heading)}
.sg-hs .sg-hs__input::placeholder{color:#8a929d;font-weight:600}
.sg-hs .sg-hs__submit{appearance:none;border:0;flex:0 0 141px;background:var(--sg-orange);color:var(--sg-heading);font:800 16px/1 var(--sg-font);padding:0 28px;border-radius:0 999px 999px 0;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:filter .15s;box-shadow:none;margin:0;height:auto;text-transform:none;letter-spacing:normal}
.sg-hs .sg-hs__submit:hover{filter:brightness(1.05);background:var(--sg-orange);color:var(--sg-heading)}
.sg-hs__submit svg{width:18px;height:18px}
.sg-hs .sg-hs__hint{color:#fff;font-size:12.5px;line-height:1.4;text-align:center;margin:14px 0 0;text-shadow:0 1px 4px rgba(0,0,0,.45)}
.sg-pop{position:absolute;top:calc(100% - 2px);left:20px;z-index:60;width:225px;max-height:300px;display:flex;flex-direction:column;background:#fff;border:1px solid #E8E8E8;border-radius:18px;box-shadow:0 30px 70px -26px rgba(9,52,47,.34),0 6px 18px rgba(9,52,47,.08);padding:6px;opacity:0;transform:translateY(-4px);visibility:hidden;pointer-events:none;transition:opacity .15s ease,transform .15s ease,visibility 0s linear .15s;text-align:left}
.sg-pop.is-open{opacity:1;transform:none;visibility:visible;pointer-events:auto;transition:opacity .15s ease,transform .15s ease}
.sg-pop .sg-pop__search{flex:none;border:0;border-bottom:1px solid #EEF0EF;outline:0;width:100%;padding:6.4px 11.2px;font:600 14.72px/23.55px var(--sg-font);color:var(--sg-heading);background:transparent;margin:0 0 4px;border-radius:12px 12px 0 0;height:auto;box-shadow:none}
.sg-pop .sg-pop__search:focus{background:#F7F9F8}
.sg-pop__note{flex:none;margin:2px 4px 6px;padding:6px 9px;border-radius:10px;background:#FFF4E5;border:1px solid #F5C58F;color:#7a3e00;font:700 11.5px/1.35 var(--sg-font)}
.sg-pop .sg-list{list-style:none;margin:0;padding:0;overflow-y:auto;overscroll-behavior:contain;flex:1 1 auto}
.sg-list::-webkit-scrollbar{width:6px}.sg-list::-webkit-scrollbar-thumb{background:#DADFDC;border-radius:6px}
.sg-pop .sg-group{padding:10px 11.2px 4px;font:800 10px/1.2 var(--sg-font);letter-spacing:.6px;text-transform:uppercase;color:var(--sg-muted);margin:0;list-style:none}
.sg-pop .sg-opt{padding:8.8px 11.2px;border-radius:12px;font:600 14.72px/23.55px var(--sg-font);color:var(--sg-heading);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0;list-style:none}
.sg-opt.is-active{background:#F3F6F5}
.sg-opt[aria-selected="true"]{background:var(--sg-tint);color:var(--sg-green-dark);font-weight:800}
.sg-opt[aria-disabled="true"]{color:#A2A8AE;cursor:not-allowed;font-weight:500}
.sg-opt .tag{font:700 9.5px/1 var(--sg-font);letter-spacing:.4px;text-transform:uppercase;background:#F0F1F2;color:#6b7280;border-radius:999px;padding:4px 7px;white-space:nowrap}
.sg-pop .sg-empty{padding:12px;color:var(--sg-muted);font-size:13.5px;list-style:none}
.sg-pop--wide{width:260px}
.sg-pax{width:234px;max-height:none;padding:16px;display:block}
.sg-pax__row{display:flex;align-items:center;justify-content:space-between;padding:12px 0}
.sg-pax__row:first-child{padding-top:0}.sg-pax__row:last-child{padding-bottom:0}
.sg-pax__t{font:700 14px/20px var(--sg-font);color:var(--sg-heading)}
.sg-pax__s{font:400 12px/16px var(--sg-font);color:var(--sg-muted);margin-top:2px;white-space:nowrap}
.sg-pax__ctl{display:flex;align-items:center;gap:12px;border:1px solid #D7D7D7;border-radius:999px;padding:4px 8px}
.sg-hs .sg-pax__btn{width:34px;height:34px;min-height:0;border-radius:50%;border:1px solid #D7D7D7;background:#fff;color:var(--sg-green);display:grid;place-items:center;cursor:pointer;padding:0;margin:0;transition:border-color .15s,background .15s;box-shadow:none}
.sg-pax__btn svg{width:15px;height:15px}
.sg-hs .sg-pax__btn:hover:not(:disabled){border-color:var(--sg-green);background:#F3F8F5;color:var(--sg-green)}
.sg-hs .sg-pax__btn:disabled{color:#C3C8CC;cursor:not-allowed;background:#fff}
.sg-pax__n{width:24px;text-align:center;font:700 16px/1 var(--sg-font);color:var(--sg-heading)}
.sg-hs__collapsed{display:none}
@media (max-width:1023px){
  .sg-hs__card{padding:34px 18px 30px;border-radius:24px}.sg-hs__bg{border-radius:24px}
  .sg-hs .sg-hs__h1{font-size:22px;margin-bottom:16px}
  .sg-hs .sg-hs__collapsed{display:flex;align-items:center;gap:12px;width:100%;max-width:720px;margin:0 auto;min-height:72px;padding:12px;border:0;border-radius:999px;background:#fff;box-shadow:0 30px 70px -26px rgba(9,52,47,.34);cursor:pointer;text-align:left;font-family:var(--sg-font);color:var(--sg-heading)}
  .sg-hs__collapsed .ic{width:48px;height:48px;border-radius:50%;background:var(--sg-orange);color:var(--sg-heading);display:grid;place-items:center;flex:none}
  .sg-hs__collapsed .ic svg{width:20px;height:20px}
  .sg-hs__collapsed .t{display:block;font:800 16px/1.3 var(--sg-font);color:var(--sg-heading)}
  .sg-hs__collapsed .s{display:block;font:400 12px/1.4 var(--sg-font);color:var(--sg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sg-hs__collapsed .txt{min-width:0;flex:1}
  .sg-hs__wrap,.sg-hs .sg-hs__hint{display:none}
  .sg-hs.is-sheet .sg-hs__wrap{display:flex;flex-direction:column;position:fixed;inset:0;z-index:2147483000;max-width:none;background:#fff;padding:64px 16px 92px;overflow-y:auto}
  .sg-hs.is-sheet .sg-hs__close{display:grid;place-items:center;position:fixed;top:12px;right:16px;width:40px;height:40px;min-height:0;padding:0;border-radius:50%;border:1px solid #E8E8E8;background:#fff;color:var(--sg-heading);cursor:pointer;z-index:2147483001}
  .sg-hs.is-sheet .sg-hs__close svg{width:18px;height:18px}
  .sg-hs.is-sheet .sg-hs__tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px 18px;padding:0 16px;flex:none}
  .sg-hs.is-sheet .sg-hs__tab{height:36px;padding:6px 14px;background:#F2F4F3;color:var(--sg-heading);flex:none;backdrop-filter:none}
  .sg-hs.is-sheet .sg-hs__tab[aria-selected="true"]{background:var(--sg-green);color:#fff;box-shadow:none}
  .sg-hs.is-sheet .sg-hs__tab[aria-selected="true"]::after{background:#7fe0c9}
  .sg-hs.is-sheet .sg-hs__bar{flex-direction:column;height:auto;box-shadow:none;border-radius:0;background:transparent}
  .sg-hs.is-sheet .sg-hs__cell{flex:none!important;width:100%;border-right:0;border-bottom:1px solid #E8E8E8;padding:14px 17px;background:transparent!important;border-radius:0!important}
  .sg-hs.is-sheet .sg-hs__trigger{font-size:16px}
  .sg-hs.is-sheet .sg-pop{position:static;width:auto;max-height:46vh;margin-top:10px;box-shadow:none;transform:none;display:none}
  .sg-hs.is-sheet .sg-pop.is-open{display:flex}
  .sg-hs.is-sheet .sg-pax{display:block;opacity:1;visibility:visible;pointer-events:auto;border:0;padding:6px 0 0;margin:0;max-height:none}
  .sg-hs.is-sheet [data-pax] .sg-hs__trigger{display:none}
  .sg-hs.is-sheet .sg-hs__submit{position:fixed;left:16px;right:16px;bottom:20px;height:52px;border-radius:999px;flex:none;z-index:2147483001;box-shadow:0 10px 24px rgba(239,120,40,.35)}
  .sg-hs.is-sheet .sg-hs__panel[hidden] .sg-hs__submit{display:none}
}
body.sg-noscroll{overflow:hidden}

/* ---------- Destination tabs inside Exclusive Holiday Deals ---------- */
.sg-xd-filter{display:flex;gap:26px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--sg-border);margin:-6px 0 22px;font-family:var(--sg-font)}
.sg-xd-filter::-webkit-scrollbar{display:none}
.sg-xd-filter button{appearance:none;background:none;border:0;padding:0 0 10px;margin:0;font:600 15px/1.2 var(--sg-font);color:var(--sg-text);cursor:pointer;white-space:nowrap;position:relative;flex:none;transition:color .3s;box-shadow:none;min-height:0;text-transform:none;letter-spacing:normal;border-radius:0}
.sg-xd-filter button:hover,.sg-xd-filter button:focus{color:var(--sg-coral);background:none}
.sg-xd-filter button[aria-selected="true"]{color:var(--sg-coral)}
.sg-xd-filter button[aria-selected="true"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--sg-coral)}
/* keep the original arrows level with the section heading now that the tabs sit between them */
@media (min-width:768px){.sg-xd-scope .ova-product-slider .owl-nav button{top:-114px}}
.sg-xd-empty{border:1px dashed var(--sg-border);border-radius:10px;padding:40px 20px;text-align:center;color:var(--sg-text);margin-bottom:20px}
.sg-xd-back{appearance:none;background:none!important;border:0;padding:0;margin-left:6px;font:600 16px/1 var(--sg-font);color:var(--sg-coral)!important;cursor:pointer;text-decoration:underline;box-shadow:none;min-height:0}

/* ---------- Category filter bars (Holidays / Visa / Staycation) ---------- */
.sg-fbwrap{max-width:1000px;margin:24px auto 34px;position:relative;z-index:30}
.sg-fb{position:relative;margin:0}
.sg-fb .sg-fb__bar{border:1px solid #E8E8E8;box-shadow:0 18px 44px -24px rgba(9,52,47,.30)}
.sg-fb .sg-fb__cell{flex:1 1 0}
.sg-fb .sg-fb__cell--wide{flex:1 1 auto}
.sg-fb .sg-hs__cell,.sg-fb .sg-hs__label,.sg-fb .sg-hs__trigger,.sg-fb .sg-hs__submit{font-family:var(--sg-font)}

.sg-fb .sg-hs__trigger{appearance:none;background:none;border:0;padding:0;margin:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;font:700 15px/22px var(--sg-font);color:var(--sg-heading);cursor:pointer;text-align:left;box-shadow:none;min-height:0}
.sg-fb .sg-hs__submit{appearance:none;border:0;flex:0 0 141px;background:var(--sg-orange);color:var(--sg-heading);font:800 16px/1 var(--sg-font);padding:0 28px;border-radius:0 999px 999px 0;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:none;margin:0;text-transform:none}
.sg-fb .sg-hs__submit:hover{filter:brightness(1.05);background:var(--sg-orange);color:var(--sg-heading)}
.sg-fr{margin:0 0 30px}
.sg-fr__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.sg-fr__top .sg-res__count,.sg-fr__top .sg-res__chips{margin:0}
.sg-dim{opacity:.35;transition:opacity .3s}
.ova-product-list .ova-product[hidden]{display:none!important}
@media (max-width:1023px){
  .sg-fbwrap{margin-left:15px;margin-right:15px}
  .sg-fb .sg-fb__bar{flex-wrap:wrap;height:auto;border-radius:16px}
  .sg-fb .sg-fb__bar .sg-hs__cell{flex:1 1 50%;border-bottom:1px solid #E8E8E8;padding:12px 16px;border-radius:0!important}
  .sg-fb .sg-fb__bar .sg-hs__cell:nth-child(2n){border-right:0}
  .sg-fb .sg-fb__bar .sg-fb__cell--wide{flex-basis:100%}
  .sg-fb .sg-fb__bar .sg-hs__submit{flex:1 1 100%;height:52px;border-radius:0 0 16px 16px}
}
@media (max-width:576px){.sg-fb .sg-fb__bar .sg-hs__cell{flex-basis:100%;border-right:0}.sg-fb .sg-fb__bar .sg-pop{left:8px;right:8px;width:auto}}
.sg-cat-h2 .elementor-heading-title{font-size:26px!important;line-height:1.2!important}
@media (max-width:767px){.sg-cat-h2 .elementor-heading-title{font-size:24px!important}}

/* ---------- Results page + shared bits ---------- */
.sg-results{max-width:1200px;margin:0 auto;padding:0 0 50px;font-family:var(--sg-font)}
@media (max-width:1240px){.sg-results{padding-left:20px;padding-right:20px}}
.sg-res{padding:30px 0 0}
.sg-res__crumbs{font-size:13px;color:#999;margin-bottom:8px}.sg-res__crumbs a{color:#999}
.sg-res__top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.sg-res .sg-res__h1{font:600 27px/1.2 var(--sg-font-head);color:#000;margin:0}
.sg-res__count{margin:8px 0 0;font-weight:600;color:var(--sg-text)}
.sg-res__chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:4px 0 14px}
.sg-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--sg-border);border-radius:5px;padding:5px 6px 5px 12px;font:600 14px/1.2 var(--sg-font);color:var(--sg-heading);background:#fff}
.sg-chip b{font-weight:600;color:var(--sg-text);font-size:13px;letter-spacing:0;text-transform:none}
.sg-chip a{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#F2F2F2;color:var(--sg-heading);text-decoration:none;font-size:13px;line-height:1}
.sg-chip a:hover{background:var(--sg-coral);color:#fff}
.sg-chip--info{padding-right:12px}
.sg-clear{font:600 14px/1 var(--sg-font);color:var(--sg-coral)}
.sg-res__note{border:1px solid var(--sg-border);border-left:4px solid var(--sg-teal);border-radius:5px;padding:10px 14px;font-size:14px;line-height:1.5;margin:0 0 26px;background:#fff}
.sg-res__note strong{color:var(--sg-heading)}
.sg-res__more{display:flex;justify-content:center;margin-top:36px}
.sg-results .ova-product-list,.sg-fr .ova-product-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:24px;row-gap:60px}
@media (max-width:1024px){.sg-results .ova-product-list,.sg-fr .ova-product-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.sg-results .ova-product-list,.sg-fr .ova-product-list{grid-template-columns:minmax(0,1fr);row-gap:40px}}
.tg-btn{display:inline-flex;justify-content:center;align-items:center;gap:6px;border-radius:5px;background:var(--sg-coral);color:#fff!important;font:600 14px/1.5 var(--sg-font);border:1px solid transparent;padding:8px 20px;text-decoration:none;cursor:pointer;transition:.3s;box-shadow:none;min-height:0;text-transform:none}
.tg-btn:hover{border-color:var(--sg-coral);background:#fff;color:var(--sg-coral)!important}
.tg-btn--outline{background:#fff;color:var(--sg-coral)!important;border-color:var(--sg-coral)}
.tg-btn--outline:hover{background:var(--sg-coral);color:#fff!important}
.tg-btn svg{width:16px;height:16px}
.sg-res__empty{border:1px dashed var(--sg-border);border-radius:10px;padding:44px 24px;text-align:center}
.sg-res__empty h2{font:600 22px/1.3 var(--sg-font-head);color:#000;margin:0 0 8px}
.sg-res__empty p{margin:0 auto 18px;max-width:560px}
.sg-res__empty .acts{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.sg-res__enq{margin-top:40px;border-radius:10px;box-shadow:0 4px 9px rgba(53,54,57,.1);padding:22px 24px;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#fff}
.sg-res__enq h2{font:700 18px/1.3 var(--sg-font);color:var(--sg-heading);margin:0 0 4px}
.sg-res__enq p{margin:0;font-size:14px;line-height:1.5}
.sg-visa{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sg-visa a{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:10px;box-shadow:0 4px 9px rgba(53,54,57,.1);padding:16px 18px;color:var(--sg-heading);text-decoration:none;font-weight:700;font-size:15px;transition:.3s;background:#fff}
.sg-visa a:hover{color:var(--sg-coral)}
.sg-visa a small{display:block;color:#999;font-weight:600;font-size:12px}
.sg-visa a svg{width:16px;height:16px;flex:none;color:var(--sg-coral)}
.sg-region{font:700 12px/1 var(--sg-font);letter-spacing:.06em;text-transform:uppercase;color:#999;margin:26px 0 12px}
@media (max-width:1024px){.sg-visa{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.sg-visa{grid-template-columns:1fr}.sg-res .sg-res__h1{font-size:23px}}
.sg-results .sg-hs{margin-left:0;margin-right:0}

/* ---------- Testimonials (existing, left) + service panel (new, right) ---------- */
.sg-tst-2col{background-image:none!important}
.sg-tst-2col::before{content:"";position:absolute;left:50%;top:78px;width:1376px;height:170px;transform:translateX(-50%);background:url("/wp-content/uploads/2022/07/testimonial-background-home-1.png") no-repeat center top;pointer-events:none;z-index:0}
.sg-tst-2col > .elementor-container{position:relative;z-index:1}
@media (max-width:1199px){.sg-tst-2col::before{display:none}}
.sg-tst-2col .ova-testimonial .item .evaluate{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:9;overflow:hidden}
.sg-tst-2col .ova-testimonial .item.sg-open .evaluate{display:block;overflow:visible}
.sg-tst__more{appearance:none;border:0;background:none!important;padding:0;margin:-28px 0 26px;font:600 14px/1.4 var(--sg-font);color:var(--sg-coral)!important;cursor:pointer;text-decoration:underline;box-shadow:none;min-height:0;display:block}
.sg-svc{display:flex;flex-direction:column;background:#fff;border-radius:10px;box-shadow:rgba(43,89,255,.08) 0 4px 40px 0;padding:40px;min-width:0;font-family:var(--sg-font);height:100%}
.sg-svc .sg-svc__h{font:700 24px/1.3 var(--sg-font);color:var(--sg-heading);margin:0 0 8px;text-transform:none}
.sg-svc .sg-svc__p{font:400 16px/26.08px var(--sg-font);color:var(--sg-text);margin:0 0 24px}
.sg-svc .sg-svc__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;flex:1;justify-content:center}
.sg-svc .sg-svc__list li{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid var(--sg-border);border-radius:10px;padding:18px 20px;background:#fff;transition:box-shadow .3s,border-color .3s;margin:0}
.sg-svc .sg-svc__list li:hover{border-color:transparent;box-shadow:0 4px 9px rgba(53,54,57,.1)}
.sg-svc__ic{width:52px;height:52px;border-radius:50%;background:var(--sg-tint);color:var(--sg-teal);display:grid;place-items:center}
.sg-svc__ic svg{width:24px;height:24px}
.sg-svc__t{display:block;font:700 18px/1.3 var(--sg-font);color:var(--sg-heading);margin:0 0 3px}
.sg-svc__d{display:block;font:400 14px/1.5 var(--sg-font);color:var(--sg-text)}
.sg-svc .sg-svc__btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:5px;background:var(--sg-coral);color:#fff;font:600 14px/1.5 var(--sg-font);border:1px solid transparent;padding:6px 18px;text-decoration:none;white-space:nowrap;transition:.3s}
.sg-svc .sg-svc__btn:hover{border-color:var(--sg-coral);background:#fff;color:var(--sg-coral)}
@media (min-width:1024px) and (max-width:1199px){.sg-svc .sg-svc__list li{grid-template-columns:48px minmax(0,1fr);row-gap:10px;padding:16px 18px}.sg-svc__ic{width:48px;height:48px}.sg-svc .sg-svc__btn{grid-column:2;justify-self:start}.sg-svc{padding:32px}}
@media (max-width:1023px){.sg-svc{padding:32px;height:auto}}
@media (max-width:767px){.sg-svc{padding:24px 20px}.sg-svc .sg-svc__list li{grid-template-columns:48px minmax(0,1fr);padding:16px}.sg-svc__ic{width:48px;height:48px}.sg-svc .sg-svc__btn{grid-column:1 / -1;width:100%;min-height:44px;font-size:15px}}
@media (max-width:360px){.sg-svc .sg-svc__list li{grid-template-columns:minmax(0,1fr)}.sg-svc__ic{display:none}}

/* ---------- Footer: cruise-line slide ---------- */
.sg-cruise{display:flex;align-items:center;gap:8px}
.sg-cruise__label{flex:none}
.sg-cruise__viewport{flex:1;min-width:0;overflow:hidden;display:block;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);border-radius:4px}
.sg-cruise__track{display:flex;width:max-content;animation:sgCruise var(--cruise-dur,40s) linear infinite}
.sg-cruise__set{display:flex;flex:none;white-space:nowrap}
.sg-cruise__n{padding:0 .35em}.sg-cruise__sep{padding:0 .1em}
.sg-cruise:hover .sg-cruise__track,.sg-cruise__viewport:focus .sg-cruise__track,.sg-cruise:focus-within .sg-cruise__track,.sg-cruise.is-paused .sg-cruise__track{animation-play-state:paused}
@keyframes sgCruise{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.sg-cruise__track{animation:none;width:auto;flex-wrap:wrap}.sg-cruise__set[aria-hidden]{display:none}.sg-cruise__set{white-space:normal;flex-wrap:wrap}.sg-cruise__viewport{-webkit-mask-image:none;mask-image:none}}
@media (max-width:576px){.sg-cruise{flex-wrap:wrap}.sg-cruise__viewport{flex-basis:100%;order:3}}

/* ---------- Hotel cards (from TablePress "City / Hotel Name / Category" tables) ---------- */
.sg-hc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 10px;font-family:var(--sg-font)}
.sg-hc{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 4px 9px rgba(53,54,57,.1)}

.sg-hc__body{padding:20px}
.sg-hc__stars{display:flex;gap:2px;color:#F5A623;margin-bottom:6px}.sg-hc__stars svg{width:16px;height:16px}
.sg-hc .sg-hc__name{font:700 20px/1.3 var(--sg-font);color:var(--sg-heading);margin:0 0 4px}
.sg-hc__city{display:flex;gap:6px;align-items:center;font-size:15px;color:var(--sg-text);margin:0 0 12px}.sg-hc__city svg{width:15px;height:15px;color:var(--sg-coral)}
.sg-hc__cat{display:inline-block;background:var(--sg-tint);color:var(--sg-green-dark);border-radius:5px;font:700 13px/1 var(--sg-font);padding:6px 10px}
.sg-hc__price{margin-top:14px;padding-top:12px;border-top:1px solid var(--sg-border);font-size:14px;line-height:1.5}
.sg-hc__price b{color:#000;font-size:16px}
@media (max-width:767px){.sg-hc-grid{grid-template-columns:minmax(0,1fr)}}

/* ---------- Plan Your Trip page ---------- */
.sg-ptp{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start;max-width:1200px;margin:10px auto 60px;font-family:var(--sg-font)}
@media (max-width:1240px){.sg-ptp{padding:0 20px}}
.sg-ptp__h2{grid-column:1 / -1;font:700 26px/1.2 var(--sg-font);color:#F07828;text-align:center;margin:10px 0 0}
.sg-ptp__card{background:#fff;border-radius:10px;box-shadow:0 4px 9px rgba(53,54,57,.1);padding:30px}
.sg-ptp__how-h{background:#48B734;color:#fff;font:500 16px/1 Roboto,var(--sg-font);border-radius:5px 5px 0 0;height:54px;display:flex;align-items:center;justify-content:center;margin:0}
.sg-ptp__how{background:#fff;border-radius:0 0 10px 10px;box-shadow:0 4px 9px rgba(53,54,57,.1);padding:22px 24px}
.sg-ptp__how ol{margin:0;padding-left:20px}.sg-ptp__how li{margin-bottom:10px}
.sg-ptp__how p{margin:16px 0 0;font-size:14px;color:var(--sg-muted)}
.sg-ptp .wpcf7-form label{display:block;margin:0 0 14px}
.sg-ptp .sg-row{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.sg-ptp .sg-row3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 10px}
.sg-ptp [hidden]{display:none!important}
.sg-ptp .sg-svc-pick .wpcf7-radio{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.sg-ptp .sg-svc-pick .wpcf7-list-item{margin:0}
.sg-ptp .sg-svc-pick .wpcf7-list-item label{margin:0;cursor:pointer;position:relative}
.sg-ptp .sg-svc-pick input{position:absolute;opacity:0;pointer-events:none}
.sg-ptp .sg-svc-pick .wpcf7-list-item-label{display:inline-block;border:1px solid var(--sg-coral);color:var(--sg-coral);border-radius:5px;padding:7px 14px;font:600 14px/1.3 var(--sg-font);transition:.2s}
.sg-ptp .sg-svc-pick input:checked + .wpcf7-list-item-label{background:var(--sg-coral);color:#fff}
.sg-ptp .sg-svc-pick input:focus-visible + .wpcf7-list-item-label{outline:3px solid var(--sg-green);outline-offset:2px}
.sg-ptp .sg-contact-pick .wpcf7-radio{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px}
.sg-ptp .sg-contact-pick .wpcf7-list-item{margin:0}
.sg-ptp textarea{min-height:110px}
@media (max-width:1024px){.sg-ptp{grid-template-columns:minmax(0,1fr)}}
@media (max-width:576px){.sg-ptp .sg-row{grid-template-columns:1fr}.sg-ptp__card{padding:20px}}
/* Preferred Contact / Best Time added to the existing enquiry forms */
.sg-contact-pick .wpcf7-radio{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px}
.sg-contact-pick .wpcf7-list-item{margin:0}

.sg-ptp .wpcf7-form input[type=text],.sg-ptp .wpcf7-form input[type=email],.sg-ptp .wpcf7-form input[type=tel],.sg-ptp .wpcf7-form input[type=number],.sg-ptp .wpcf7-form select,.sg-ptp .wpcf7-form textarea{width:100%;max-width:100%;box-sizing:border-box}
.sg-ptp .wpcf7-form .wpcf7-form-control-wrap{display:block;margin-top:6px}
.sg-ptp .sg-lbl{display:block}
.sg-ptp .sg-svc-pick,.sg-ptp .sg-contact-pick{margin:0 0 14px}
.elementor-widget.sg-filter-widget{width:100%!important;max-width:100%!important;align-self:stretch!important;--container-widget-width:100%;--container-widget-flex-grow:0}
@media (max-width:767px){.sg-tst-inner > .elementor-container > .elementor-column > .elementor-widget-wrap{padding-left:5px!important;padding-right:5px!important}}
/* tablet: stack testimonials first, services second (approved layout) */
@media (max-width:1023px){.sg-tst-inner > .elementor-container{flex-wrap:wrap}.sg-tst-inner > .elementor-container > .elementor-column{width:100%!important;max-width:680px;margin-left:auto;margin-right:auto}}
@media (max-width:1023px){body.sg-noscroll .sg-hs.is-sheet{position:relative;z-index:2147483000}}
/* hint line removed under the search bar (requested 9 Nov 2026) */
.sg-hs .sg-hs__hint{display:none!important}
/* Preferred Contact + Best Time (all enquiry forms): two dropdowns in the form's own style; side by side when there is room */
.sg-pc-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px 14px;align-items:end;margin:0 0 15px}
br+.sg-pc-row{margin-top:-9px}
.sg-pc-row+label,.sg-pc-row+p,body .wpcf7-form .sg-pc-row+.custom-mes-cf7{margin-top:0!important}
.sg-pc-row .sg-pc-field{display:block;min-width:0}
.sg-pc-row select{width:100%;max-width:100%;box-sizing:border-box}
/* Visible keyboard focus for all filter bars, search buttons and the footer cruise strip (same green ring as Plan Your Trip) */
.sg-hs .sg-hs__trigger:focus-visible,.sg-fb .sg-hs__trigger:focus-visible{outline:2px solid var(--sg-green)!important;outline-offset:3px;border-radius:4px}
.sg-hs .sg-hs__submit:focus-visible,.sg-fb .sg-hs__submit:focus-visible{outline:2px solid var(--sg-green)!important;outline-offset:2px}
.sg-cruise__viewport:focus-visible{outline:2px solid var(--sg-green);outline-offset:2px}

/* Results: 'Show more' stays hidden once every package is shown (the hidden attribute must win over display:flex) */
.sg-res__more[hidden]{display:none!important}

/* ===== "Where you'll stay" hotel cards (package pages) ===== */
.sg-wys{font-family:var(--sg-font);margin:0 0 10px}
.sg-wys .sg-wys__intro{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin:0 0 18px;padding:0}
.sg-wys .sg-wys__eyebrow{font:700 20px/1.3 var(--sg-font);color:var(--sg-heading)}
.sg-wys .sg-wys__hint{font-size:15px;line-height:1.5;color:var(--sg-muted)}
.sg-wys .sg-wys__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:24px;align-items:stretch;margin:0}
.sg-wys .sg-hc{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #ECEEED;border-radius:14px;overflow:hidden;box-shadow:0 8px 22px -14px rgba(17,27,25,.28);transition:box-shadow .2s ease,transform .2s ease}
.sg-wys .sg-hc--open{cursor:pointer}
.sg-wys .sg-hc--open:hover{box-shadow:0 16px 34px -16px rgba(17,27,25,.36);transform:translateY(-2px)}
.sg-wys .sg-hc__media{position:relative;aspect-ratio:16/10;background:#EEF1F0;overflow:hidden}
.sg-wys .sg-hc__media img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0;transition:transform .35s ease}
.sg-wys .sg-hc--open:hover .sg-hc__media img{transform:scale(1.03)}
.sg-wys .sg-hc__count{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;background:rgba(17,27,25,.72);color:#fff;font:600 12px/1 var(--sg-font);padding:6px 10px;border-radius:999px}
.sg-wys .sg-hc__count svg{width:14px;height:14px}
.sg-wys .sg-hc__body{display:flex;flex-direction:column;flex:1;padding:18px 20px 20px}
.sg-wys .sg-hc__stars{display:flex;gap:2px;color:#F5A623;margin:0 0 6px}
.sg-wys .sg-hc__stars svg{width:17px;height:17px}
.sg-wys .sg-hc .sg-hc__name{font:700 20px/1.3 var(--sg-font);color:var(--sg-heading);margin:0 0 4px;padding:0}
.sg-wys .sg-hc__open{all:unset;cursor:pointer;color:inherit;font:inherit;border-radius:4px}
.sg-wys .sg-hc__open:focus-visible{outline:2px solid var(--sg-green);outline-offset:3px}
.sg-wys .sg-hc__city{display:flex;gap:6px;align-items:flex-start;font-size:15px;line-height:1.45;color:var(--sg-muted);margin:0}
.sg-wys .sg-hc__city svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--sg-coral)}
.sg-wys .sg-hc__desc{font-size:15px;line-height:1.6;color:var(--sg-text);margin:12px 0 0}
.sg-wys .sg-hc__tags,.sg-hm .sg-hm__tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:14px 0 0;padding:0}
.sg-wys .sg-hc__tags li,.sg-hm .sg-hm__tags li{margin:0;padding:5px 12px;border:1px solid #E1E5E3;border-radius:999px;background:#fff;font:500 13px/1.35 var(--sg-font);color:var(--sg-text)}
.sg-wys .sg-hc__tags li::before,.sg-hm .sg-hm__tags li::before{content:none;display:none}
.sg-wys .sg-hc__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:16px}
.sg-wys .sg-hc__more{display:inline-flex;align-items:center;gap:6px;font:700 14px/1 var(--sg-font);color:var(--sg-coral)}
.sg-wys .sg-hc__more svg{width:16px;height:16px;transition:transform .2s}
.sg-wys .sg-hc--open:hover .sg-hc__more svg{transform:translateX(3px)}
.sg-wys .sg-hc--text{border-top:3px solid var(--sg-tint)}
.sg-wys .sg-wys__note{display:flex;gap:10px;align-items:flex-start;margin:18px 0 0;padding:12px 14px;background:var(--sg-tint);border-radius:10px;font-size:14px;line-height:1.55;color:var(--sg-text)}
.sg-wys .sg-wys__note svg{width:18px;height:18px;flex:none;margin-top:1px;color:var(--sg-green)}
.sg-wys .sg-wys__note b{color:var(--sg-heading)}
@media (max-width:480px){.sg-wys .sg-hc__body{padding:16px}.sg-wys .sg-hc .sg-hc__name{font-size:19px}.sg-wys .sg-wys__grid{gap:18px}}

/* ===== Hotel detail / gallery dialog ===== */
html.sg-hm-lock,html.sg-hm-lock body{overflow:hidden!important}
html.sg-hm-lock body{padding-right:var(--sg-hm-sb,0)}
.sg-hm{position:fixed;inset:0;z-index:2147483100;display:flex;align-items:center;justify-content:center;padding:24px;font-family:var(--sg-font)}
.sg-hm[hidden]{display:none!important}
.sg-hm .sg-hm__backdrop{position:absolute;inset:0;background:rgba(10,18,16,.74);opacity:0;transition:opacity .2s ease}
.sg-hm.is-open .sg-hm__backdrop{opacity:1}
.sg-hm .sg-hm__panel{position:relative;width:min(820px,100%);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;background:#fff;border-radius:16px;box-shadow:0 30px 80px -20px rgba(0,0,0,.5);opacity:0;transform:translateY(12px);transition:opacity .22s ease,transform .22s ease;outline:none}
.sg-hm.is-open .sg-hm__panel{opacity:1;transform:none}
.sg-hm button{font-family:var(--sg-font);text-transform:none;letter-spacing:normal;box-shadow:none;min-height:0;line-height:1}
.sg-hm .sg-hm__close{position:absolute;top:12px;right:12px;z-index:3;width:42px;height:42px;padding:0;margin:0;border:0;border-radius:50%;background:#fff;color:var(--sg-heading);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.22)}
.sg-hm .sg-hm__close:hover{background:#fff;color:var(--sg-coral)}
.sg-hm .sg-hm__close svg{width:20px;height:20px}
.sg-hm .sg-hm__gallery{position:relative;background:#0F1715;border-radius:16px 16px 0 0;overflow:hidden}
.sg-hm .sg-hm__gallery[hidden],.sg-hm .sg-hm__thumbs[hidden],.sg-hm .sg-hm__credit[hidden],.sg-hm .sg-hm__body [hidden]{display:none!important}
.sg-hm .sg-hm__stage{aspect-ratio:3/2;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.sg-hm .sg-hm__img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;border-radius:0;pointer-events:none}
.sg-hm .sg-hm__nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;margin:0;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:var(--sg-heading);display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.25)}
.sg-hm .sg-hm__nav[hidden]{display:none}
.sg-hm .sg-hm__nav:hover{background:#fff;color:var(--sg-coral)}
.sg-hm .sg-hm__nav svg{width:22px;height:22px}
.sg-hm .sg-hm__nav--prev{left:12px}
.sg-hm .sg-hm__nav--next{right:12px}
.sg-hm .sg-hm__counter{position:absolute;right:12px;bottom:12px;background:rgba(17,27,25,.72);color:#fff;font:600 12px/1 var(--sg-font);padding:6px 10px;border-radius:999px}
.sg-hm .sg-hm__counter:empty{display:none}
.sg-hm .sg-hm__thumbs{display:flex;gap:8px;padding:12px 24px 0;overflow-x:auto}
.sg-hm .sg-hm__thumbs button{flex:none;width:76px;height:50px;padding:0;margin:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#EEF1F0;cursor:pointer;opacity:.75}
.sg-hm .sg-hm__thumbs button[aria-current="true"]{border-color:var(--sg-coral);opacity:1}
.sg-hm .sg-hm__thumbs img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.sg-hm .sg-hm__credit{margin:8px 24px 0;font-size:12px;line-height:1.45;color:var(--sg-muted);overflow-wrap:anywhere}
.sg-hm .sg-hm__credit a,.sg-hm .sg-hm__src a{color:var(--sg-muted);text-decoration:underline;text-underline-offset:2px}
.sg-hm .sg-hm__credit a:hover,.sg-hm .sg-hm__src a:hover{color:var(--sg-green)}
.sg-hm .sg-hm__body{padding:16px 24px 26px}
.sg-hm.sg-hm--text .sg-hm__body{padding:28px 70px 26px 24px}
.sg-hm .sg-hm__stars{display:flex;gap:2px;color:#F5A623;margin:0 0 6px}
.sg-hm .sg-hm__stars svg{width:18px;height:18px}
.sg-hm .sg-hm__title{font:700 24px/1.25 var(--sg-font);color:var(--sg-heading);margin:0 0 6px;padding:0}
.sg-hm .sg-hm__loc{display:flex;gap:6px;align-items:flex-start;font-size:15px;line-height:1.45;color:var(--sg-muted);margin:0}
.sg-hm .sg-hm__loc svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--sg-coral)}
.sg-hm .sg-hm__cat{display:inline-block;margin-top:12px;background:var(--sg-tint);color:var(--sg-green-dark);border-radius:5px;font:700 13px/1 var(--sg-font);padding:6px 10px}
.sg-hm .sg-hm__desc{font-size:16px;line-height:1.6;color:var(--sg-text);margin:14px 0 0}
.sg-hm .sg-hm__src{font-size:13px;line-height:1.5;color:var(--sg-muted);margin:18px 0 0}
.sg-hm button:focus-visible,.sg-hm a:focus-visible{outline:2px solid var(--sg-green);outline-offset:2px}
@media (max-width:600px){
 .sg-hm{padding:0;align-items:flex-end}
 .sg-hm .sg-hm__panel{width:100%;max-height:100vh;max-height:100dvh;border-radius:16px 16px 0 0}
 .sg-hm .sg-hm__close{top:10px;right:10px;width:40px;height:40px}
 .sg-hm .sg-hm__nav{width:38px;height:38px}
 .sg-hm .sg-hm__nav--prev{left:8px}.sg-hm .sg-hm__nav--next{right:8px}
 .sg-hm .sg-hm__thumbs{padding:10px 16px 0}.sg-hm .sg-hm__credit{margin:8px 16px 0}
 .sg-hm .sg-hm__body{padding:14px 16px 24px}.sg-hm.sg-hm--text .sg-hm__body{padding:24px 64px 24px 16px}
 .sg-hm .sg-hm__title{font-size:21px}
}
@media (prefers-reduced-motion:reduce){.sg-hm .sg-hm__panel,.sg-hm .sg-hm__backdrop,.sg-wys .sg-hc,.sg-wys .sg-hc__media img,.sg-wys .sg-hc__more svg{transition:none}.sg-wys .sg-hc--open:hover{transform:none}.sg-wys .sg-hc--open:hover .sg-hc__media img{transform:none}}