.trip-saathi-site{--navy:#12324A;--sky:#E6F5FF;--teal:#0FA3B1;--coral:#FF6B5A;--yellow:#FFB703;--muted:#5A7388;--r:20px;font-family:Figtree,system-ui,sans-serif;color:var(--navy);line-height:1.6;background:#fff}
.trip-saathi-site *,.trip-saathi-site *::before,.trip-saathi-site *::after{box-sizing:border-box}
.trip-saathi-site h1,.trip-saathi-site h2,.trip-saathi-site h3{font-family:'Bricolage Grotesque',Figtree,system-ui,sans-serif;line-height:1.1;margin:0 0 .5em}
.trip-saathi-site h1{font-size:clamp(2.4rem,6vw,4.4rem);font-weight:800}
.trip-saathi-site h2{font-size:clamp(1.8rem,3.6vw,2.8rem);font-weight:800}
.trip-saathi-site h3{font-size:1.25rem;font-weight:600}
.trip-saathi-site a{color:inherit}
.trip-saathi-site :focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.ts-wrap{width:min(1180px,100% - 2rem);margin-inline:auto}
.ts-skip{position:absolute;left:-999px}.ts-skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem 1rem;z-index:99}
.ts-sec{padding:clamp(3rem,7vw,6rem) 0}.ts-sec--sky{background:var(--sky)}.ts-sec--navy{background:var(--navy);color:#fff}
.ts-sub,.ts-note,.ts-small{color:var(--muted)}.ts-sec--navy .ts-sub{color:#cfe3f1}
.ts-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0}.ts-row--c{justify-content:center}
/* buttons */
.ts-btn{display:inline-block;border:2px solid transparent;border-radius:999px;padding:.7rem 1.4rem;font:700 1rem Figtree,sans-serif;cursor:pointer;text-decoration:none!important;transition:transform .15s}
.ts-btn:hover{transform:translateY(-2px)}
.ts-btn--coral{background:var(--coral);color:#12324A}.ts-btn--teal{background:var(--teal);color:#fff}.ts-btn--ghost{border-color:var(--navy);background:transparent;color:var(--navy)}.ts-btn--light{background:#fff;color:var(--navy)}
.ts-badge{display:inline-block;background:var(--sky);color:var(--navy);font:700 .8rem Figtree;padding:.2rem .7rem;border-radius:999px}
.ts-badge--yellow{background:var(--yellow)}.ts-badge--teal{background:var(--teal);color:#fff}
/* header */
.ts-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e1ecf3}.ts-header.is-stuck{box-shadow:0 6px 20px rgba(18,50,74,.08)}
.ts-header__in{display:flex;align-items:center;justify-content:space-between;min-height:68px}
.ts-logo{display:flex;align-items:center;gap:.5rem;font:800 1.4rem 'Bricolage Grotesque',sans-serif;text-decoration:none}
.ts-logo__mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--teal);color:#fff;font-size:1rem}.ts-logo--w{color:#fff}
.ts-nav{display:flex;align-items:center;gap:1.1rem;font-weight:500}.ts-nav a{text-decoration:none}.ts-nav a:hover{color:var(--teal)}
.ts-burger{display:none;background:none;border:0;padding:.5rem;cursor:pointer}.ts-burger span{display:block;width:24px;height:3px;background:var(--navy);margin:5px 0;border-radius:2px}
/* hero */
.ts-hero{background:linear-gradient(180deg,var(--sky),#fff);padding:clamp(2rem,5vw,4.5rem) 0}
.ts-hero__in{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.ts-tag{font-weight:700;color:var(--teal);margin:0 0 .5rem}.ts-lead{font-size:1.15rem;color:var(--muted);max-width:52ch}
.ts-search{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;background:#fff;border:1px solid #d7e7f1;border-radius:var(--r);padding:1rem;box-shadow:0 12px 30px rgba(18,50,74,.08)}
.ts-search label,.ts-filters label{display:grid;gap:.2rem;font:700 .8rem Figtree;color:var(--muted)}
.trip-saathi-site input,.trip-saathi-site select{font:500 1rem Figtree;padding:.55rem .7rem;border:1px solid #c5d8e5;border-radius:10px;color:var(--navy);background:#fff;width:100%}
.ts-search .ts-btn{grid-column:1/-1}
.ts-hero__art{position:relative;min-height:440px}.ts-hero__art .ts-photo{height:440px;border-radius:var(--r) var(--r) 120px var(--r)}
.ts-route{position:absolute;left:-40px;bottom:30px;width:260px}
.ts-float{position:absolute;background:#fff;border-radius:16px;padding:.9rem 1rem;box-shadow:0 14px 34px rgba(18,50,74,.18);display:grid;gap:.15rem;max-width:230px}
.ts-float--a{right:-12px;top:36px}.ts-float--b{left:-18px;bottom:50px}.ts-float small{color:var(--muted)}.ts-float a{color:var(--coral);font-weight:700}.ts-float em{font-size:.7rem;color:var(--muted)}
@media(prefers-reduced-motion:no-preference){.ts-float--a{animation:tsf 5s ease-in-out infinite}@keyframes tsf{50%{transform:translateY(-8px)}}}
/* photo placeholders */
.ts-photo{position:relative;aspect-ratio:4/3;background:#9fd3e6;display:flex;align-items:flex-start;padding:.8rem;background-size:cover}
.ts-ph{background:rgba(255,255,255,.8);font-size:.75rem;padding:.2rem .6rem;border-radius:99px;align-self:flex-end}
.g1{background:linear-gradient(160deg,#12324A,#0FA3B1 60%,#E6F5FF)}.g2{background:linear-gradient(160deg,#0FA3B1,#FFB703)}.g3{background:linear-gradient(160deg,#5A7388,#9fd3e6)}.g4{background:linear-gradient(160deg,#FF6B5A,#FFB703)}.g5{background:linear-gradient(160deg,#0a6b5e,#9fd3e6)}.g6{background:linear-gradient(160deg,#12324A,#FF6B5A)}
/* steps */
.ts-steps{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;padding:2rem 0 0;margin:0;position:relative}
.ts-steps::before{content:"";position:absolute;top:1.1rem;left:5%;right:5%;border-top:3px dotted var(--yellow)}
.ts-steps li{counter-increment:s;position:relative;color:var(--muted)}.ts-steps li::before{content:counter(s);display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--teal);color:#fff;font-weight:800;margin-bottom:.7rem;position:relative}
.ts-steps b{display:block;color:var(--navy);font:700 1.15rem 'Bricolage Grotesque',sans-serif;margin-bottom:.3rem}
/* deck */
.ts-deck{max-width:420px}.ts-pcard,.ts-tcard,.ts-quote,.ts-plan-c{background:#fff;border:1px solid #d7e7f1;border-radius:var(--r);overflow:hidden}
.ts-pcard__b,.ts-tcard__b{padding:1.1rem}.ts-pcard p,.ts-tcard p{margin:.3rem 0}
.ts-tags{display:flex;flex-wrap:wrap;gap:.4rem}.ts-tags span{background:var(--sky);padding:.15rem .7rem;border-radius:99px;font-size:.85rem}
.ts-deck__ctl{display:flex;justify-content:center;gap:.75rem;margin-top:1rem}.ts-status{min-height:1.5em;color:var(--muted)}
/* trips */
.ts-filters{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;margin:1.5rem 0}
.ts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.ts-empty{padding:1rem;background:var(--sky);border-radius:12px}
/* chips */
.ts-chips{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.25rem 0}
.ts-chip{border:2px solid var(--navy);background:#fff;color:var(--navy);border-radius:99px;padding:.5rem 1.1rem;font:600 1rem Figtree;cursor:pointer}
.ts-chip[aria-pressed=true]{background:var(--teal);border-color:var(--teal);color:#fff}
.ts-ranked{list-style:none;padding:0;display:grid;gap:.4rem;font-weight:600}
.ts-list{columns:2;padding-left:1.2rem;margin:1.5rem 0}.ts-list li{margin-bottom:.5rem;break-inside:avoid}
/* plan */
.ts-plan{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.ts-mock{background:#fff;color:var(--navy);border-radius:28px;padding:1.5rem;max-width:340px;box-shadow:0 20px 50px rgba(0,0,0,.3)}.ts-mock em{background:var(--yellow);font-style:normal;font-size:.75rem;padding:.1rem .6rem;border-radius:99px;margin-left:.4rem}
.ts-quote{margin:0;padding:1.4rem}.ts-quote cite{display:block;margin-top:.8rem;font-style:normal;font-weight:700;color:var(--muted)}
.ts-plan-c{padding:1.5rem}.ts-plan-c--hot{border:3px solid var(--coral)}.ts-price{font:800 1.8rem 'Bricolage Grotesque',sans-serif;margin:.2rem 0}
/* faq */
.ts-faq{max-width:820px}.ts-faq details{border-bottom:1px solid #d7e7f1;padding:1rem 0}.ts-faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:1rem}
.ts-faq summary::after{content:"+";font-size:1.5rem;color:var(--coral);line-height:1}.ts-faq details[open] summary::after{content:"−"}.ts-faq p{color:var(--muted);margin:.6rem 0 0}
/* cta + footer */
.ts-cta{background:linear-gradient(120deg,var(--navy),var(--teal));color:#fff;text-align:center;padding:clamp(3rem,8vw,6rem) 0}.ts-cta p{max-width:50ch;margin:0 auto}
.ts-footer{background:var(--navy);color:#cfe3f1;padding:3rem 0 1rem}.ts-footer__in{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem}.ts-footer nav{display:grid;gap:.3rem}.ts-footer a{text-decoration:none}.ts-footer a:hover{color:var(--yellow)}.ts-copy{text-align:center;margin-top:2rem;font-size:.9rem}
@media(max-width:960px){.ts-hero__in,.ts-plan{grid-template-columns:1fr}.ts-steps{grid-template-columns:1fr 1fr}.ts-steps::before{display:none}.ts-grid{grid-template-columns:1fr 1fr}.ts-filters{grid-template-columns:1fr 1fr}.ts-footer__in{grid-template-columns:1fr}}
@media(max-width:760px){
.ts-burger{display:block}.ts-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:1rem;border-bottom:1px solid #e1ecf3}.ts-nav.is-open{display:flex}
.ts-search,.ts-grid,.ts-steps{grid-template-columns:1fr}.ts-list{columns:1}.ts-float--a{right:0}.ts-float--b{left:0}.ts-hero__art{min-height:360px}.ts-hero__art .ts-photo{height:360px}}
/* theme additions */
.admin-bar .ts-header{top:32px}@media(max-width:782px){.admin-bar .ts-header{top:46px}}
.ts-menu{display:flex;align-items:center;gap:1.1rem;list-style:none;margin:0;padding:0}.ts-menu a{text-decoration:none;font-weight:500}.ts-menu a:hover{color:var(--teal)}
.ts-logo--img img{max-height:48px;width:auto;height:auto}.ts-logo--img .custom-logo-link{display:block}
.ts-header.has-img{background:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.86)),var(--ts-hdr) center/cover}
.ts-footer.has-img{background:linear-gradient(rgba(18,50,74,.88),rgba(18,50,74,.95)),var(--ts-ftr) center/cover}
.ts-cta.has-img{background:linear-gradient(rgba(18,50,74,.7),rgba(15,163,177,.55)),var(--ts-bg) center/cover}
.ts-photo{background-position:center;background-size:cover}
.ts-dests{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}
.ts-dest{position:relative;display:block;border-radius:var(--r);overflow:hidden;text-decoration:none}
.ts-dest .ts-photo{aspect-ratio:3/2;transition:transform .4s}.ts-dest:hover .ts-photo{transform:scale(1.05)}
.ts-dest__n{position:absolute;left:.8rem;bottom:.8rem;background:#fff;color:var(--navy);font:700 1rem 'Bricolage Grotesque',sans-serif;padding:.25rem .8rem;border-radius:99px}
.ts-page{padding:2rem 0}
@media(max-width:760px){.ts-menu{flex-direction:column;align-items:flex-start;gap:.6rem}.ts-dests{grid-template-columns:1fr 1fr}}
