/* =========================================
   India Holidays Packages - Homepage CSS
   ========================================= */

/* Hero */
.hero{position:relative;background:var(--navy-deep);color:var(--paper);overflow:hidden;min-height:88vh;display:flex;align-items:center;}
.hero .img-frame{position:absolute;inset:0;z-index:0; background: #4a190c;}
.hero .img-frame img{height:100%;width:60%}

.hero-pattern{position:absolute;inset:0;z-index:1;opacity:0.1;background-image:repeating-linear-gradient(45deg, transparent 0 26px, var(--gold) 26px 28px),repeating-linear-gradient(-45deg, transparent 0 26px, var(--gold) 26px 28px);mask-image:linear-gradient(180deg, black, transparent 75%);pointer-events:none;}
.hero-inner{position:relative;z-index:2;padding:130px 0 90px;}
.wrap.hero-inner{
	        height: -webkit-fill-available;
        padding-top: 50px;
	        background: linear-gradient(100deg, #34140c, #34140c, #34140c, transparent, transparent, transparent);
}
.hero .img-frame:hover img{
	    transform: scale(1);
}
.hero-copy{max-width:640px;}
.hero-copy h1{font-size:clamp(2.6rem,4.8vw,4.1rem);line-height:1.05;color:var(--paper);margin-top:20px;}
.hero-copy h1 em{font-style:italic;color:var(--gold);font-weight:500;}
.hero-copy p.lede{margin-top:22px;font-size:18px;max-width:48ch;color:rgba(251,247,238,0.85);}
.hero-ctas{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap;}
.hero-ctas .btn-primary{padding:16px 28px;font-size:15px;}

/* Trust strip */
.trust-strip{background:white;border-top:1px solid rgba(251,247,238,0.1);position:relative;z-index:2;}
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0;}
.trust-item{text-align:center;color:var(--paper);padding:0 12px;border-left:1px solid rgba(251,247,238,0.14);}
.trust-item:first-child{border-left:none;}
.trust-item .num{font-family:var(--ff-heading);font-size:26px;font-weight:700;color:var(--gold);display:block;}
.trust-item .label{font-size:12.5px;color:black;margin-top:4px;display:block;}
@media(max-width:760px){.trust-row{grid-template-columns:repeat(2,1fr);row-gap:22px;}.trust-item:nth-child(3){border-left:none;}
.wrap.hero-inner{
	     background: linear-gradient(90deg, #000000a6, #0000002b, transparent);}
.hero .img-frame img{height:100%;width:100%}}
section{padding:96px 0;}
.section-head{max-width:640px;margin-bottom:48px;}
.section-head h2{font-size:clamp(1.9rem,3vw,2.6rem);margin-top:14px;}
.section-head p{margin-top:14px;font-size:16.5px;color:var(--ink-soft);}
.section-alt{background:var(--sandstone);}

/* About */
.about-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:64px;align-items:center;}
@media(max-width:900px){.about-grid{grid-template-columns:1fr;}}
.about-visual{aspect-ratio:6/5;position:relative;box-shadow:var(--shadow);}
.about-visual .stat-tag{position:absolute;left:-1px;bottom:24px;background:var(--gold);color:var(--navy-deep);padding:14px 20px;font-weight:800;font-size:14px;z-index:2;box-shadow:var(--shadow-soft);}
.about-body p.lede{margin-top:18px;font-size:16.5px;color:var(--ink-soft);max-width:56ch;}
.about-list{margin-top:26px;display:grid;gap:12px;}
.about-list li{display:flex;gap:12px;font-size:14.5px;color:var(--ink-soft);align-items:flex-start;}
.about-list li::before{content:"";width:7px;height:7px;background:var(--saffron);margin-top:7px;flex-shrink:0;transform:rotate(45deg);}

/* Popular Packages — 3 focus cards */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
@media(max-width:940px){.grid-3{grid-template-columns:1fr;}}
.tour-card{background:var(--paper);border:1px solid var(--line);position:relative;transition:transform .3s ease, box-shadow .3s ease;}
.tour-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);}
.tour-card .thumb{aspect-ratio:4/3;position:relative;}
.tour-card .thumb-pattern,.thumb-pattern{
  background:linear-gradient(155deg,var(--navy-mist),var(--navy-deep));
  background-image:
    repeating-linear-gradient(180deg, transparent 0 22px, rgba(212,160,23,0.16) 22px 24px),
    linear-gradient(155deg,var(--navy-mist),var(--navy-deep));
}
.tour-card .thumb-pattern::after,.thumb-pattern::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,12,26,0) 45%, rgba(10,12,26,0.55) 100%);pointer-events:none;}
.spotlight-visual.pattern-fill{
  position:relative;
  background:linear-gradient(155deg,var(--navy-mist),var(--navy-deep));
  background-image:
    repeating-linear-gradient(180deg, transparent 0 22px, rgba(212,160,23,0.16) 22px 24px),
    linear-gradient(155deg,var(--navy-mist),var(--navy-deep));
}
.spotlight-visual.pattern-fill::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,12,26,0) 45%, rgba(10,12,26,0.4) 100%);pointer-events:none;}
.tour-card .thumb .days-badge{position:absolute;z-index:2;top:16px;left:16px;background:var(--gold);color:var(--navy-deep);font-weight:800;font-size:12.5px;letter-spacing:0.04em;padding:6px 12px;}
.tour-card .thumb .thumb-title{position:absolute;z-index:2;left:18px;bottom:16px;right:18px;color:var(--paper);font-family:var(--ff-heading);font-size:22px;font-weight:700;line-height:1.15;}
.tour-card .body{padding:24px;}
.tour-card .eyebrow{font-size:11px;}
.tour-card h3{font-size:17px;margin-top:8px;line-height:1.3;font-weight:700;}
.tour-card .route{font-size:13.5px;color:var(--ink-soft);margin-top:8px;}
.tour-card .price-row{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);}
.tour-card .price{font-family:var(--ff-heading);font-weight:700;font-size:19px;color:var(--saffron);}
.tour-card .price small{font-family:var(--ff-body);font-weight:600;font-size:11.5px;color:var(--ink-soft);}
.tour-card a.view{font-size:13px;font-weight:700;color:var(--navy);}
.tour-card a.view:hover{color:var(--saffron);}

/* Split spotlight sections */
.spotlight{display:grid;grid-template-columns:0.95fr 1.05fr;gap:64px;align-items:center;}
.spotlight.reverse{grid-template-columns:1.05fr 0.95fr;}
.spotlight.reverse .spotlight-visual{order:2;}
@media(max-width:900px){.spotlight,.spotlight.reverse{grid-template-columns:1fr;}.spotlight.reverse .spotlight-visual{order:0;}}
.spotlight-visual{aspect-ratio:6/4;position:relative;box-shadow:var(--shadow);}
.chip-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
.chip{padding:9px 16px;border:1px solid var(--line);font-size:13.5px;font-weight:600;background:var(--paper);transition:background .2s,color .2s,border-color .2s;}
.chip:hover{background:var(--navy);color:var(--paper);border-color:var(--navy);}
.spotlight-body p.lede{margin-top:18px;font-size:16.5px;color:var(--ink-soft);max-width:52ch;}
.spotlight-body .btn{margin-top:30px;}

/* Golden triangle route */
.route-band{background:var(--navy);color:var(--paper);position:relative;overflow:hidden;}
.route-band .stepwell-rule{position:absolute;top:0;left:0;}
.route-map{display:flex;align-items:center;justify-content:center;gap:0;margin:44px 0 8px;flex-wrap:wrap;}
.route-stop{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:120px;}
.route-stop .dot{width:14px;height:14px;background:var(--gold);transform:rotate(45deg);transition:transform .3s;}
.route-stop:hover .dot{transform:rotate(45deg) scale(1.3);}
.route-stop .name{font-weight:700;font-size:15px;}
.route-line{flex:1;min-width:60px;height:1px;background:rgba(251,247,238,0.3);position:relative;top:-17px;}
.pill-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:40px;}
.pill{padding:11px 20px;border:1px solid rgba(251,247,238,0.35);font-size:14px;font-weight:600;transition:background .2s,border-color .2s,transform .2s;}
.pill:hover{background:rgba(251,247,238,0.1);border-color:var(--gold);transform:translateY(-2px);}
.combo-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px;}
.combo{padding:16px 20px;border:1px solid rgba(251,247,238,0.2);background:rgba(251,247,238,0.05);flex:1;min-width:240px;}
.combo .eyebrow{font-size:11px;}
.combo h4{margin-top:6px;font-size:17px;}
.combo p{margin-top:6px;font-size:13.5px;color:rgba(251,247,238,0.7);}
.route-strip-img{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}
.route-strip-img .img-frame{aspect-ratio:4/3;}
@media(max-width:760px){.route-strip-img{grid-template-columns:1fr;}}

/* Themes */
.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
@media(max-width:900px){.theme-grid{grid-template-columns:repeat(2,1fr);}}
.theme-tile{background:var(--paper);padding:34px 26px;display:flex;flex-direction:column;gap:14px;transition:background .2s;}
.theme-tile:hover{background:var(--sandstone);}
.theme-tile .mark{width:38px;height:38px;border:1.5px solid var(--saffron);transform:rotate(45deg);display:flex;align-items:center;justify-content:center;transition:transform .3s, background .3s;}
.theme-tile:hover .mark{transform:rotate(45deg) scale(1.12);background:var(--saffron);}
.theme-tile:hover .mark span{color:var(--paper);}
.theme-tile .mark span{transform:rotate(-45deg);font-size:15px;transition:color .3s;}
.theme-tile h4{font-size:16.5px;}
.theme-tile p{font-size:13.5px;color:var(--ink-soft);}

/* Duration selector */
.duration-bar{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;}
.duration-btn{padding:16px 26px;border:1.5px solid var(--navy);background:transparent;font-weight:700;font-size:15px;color:var(--navy);transition:all .2s;}
.duration-btn.active,.duration-btn:hover{background:var(--navy);color:var(--paper);}
.itin-list{margin-top:44px;display:grid;gap:1px;background:var(--line);border:1px solid var(--line);}
.itin-row{background:var(--paper);display:grid;grid-template-columns:90px 1.4fr 1fr auto;align-items:center;gap:20px;padding:20px 24px;transition:opacity .25s, background .2s;}
.itin-row:hover{background:var(--sandstone);}
@media(max-width:760px){.itin-row{grid-template-columns:1fr;gap:8px;text-align:left;}}
.itin-row.hide{display:none;}
.itin-row .d{font-family:var(--ff-heading);font-weight:700;color:var(--saffron);font-size:15px;}
.itin-row h4{font-size:16.5px;font-weight:700;}
.itin-row .tags{font-size:13px;color:var(--ink-soft);}
.itin-row a{font-size:13.5px;font-weight:700;color:var(--navy);white-space:nowrap;}
.itin-row a:hover{color:var(--saffron);}

/* Why us */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
@media(max-width:900px){.why-grid{grid-template-columns:1fr;}}
.why-card{padding:30px 0;border-top:2px solid var(--ink);transition:border-color .3s;}
.why-card:hover{border-color:var(--saffron);}
.why-card .num{font-family:var(--ff-heading);font-size:14px;color:var(--saffron);font-weight:700;}
.why-card h3{font-size:19px;margin-top:14px;}
.why-card p{font-size:14.5px;color:var(--ink-soft);margin-top:10px;}

/* Reviews */
.review-strip{display:flex;gap:24px;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin;}
.review-card{min-width:320px;max-width:320px;background:var(--paper);border:1px solid var(--line);padding:26px;display:flex;flex-direction:column;gap:16px;transition:transform .3s;}
.review-card:hover{transform:translateY(-4px);}
.review-card .stars{color:var(--gold);letter-spacing:2px;font-size:15px;}
.review-card p.quote{font-size:14.5px;color:var(--ink-soft);line-height:1.6;}
.review-card .who{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:700;}
.review-card .who .flag{font-size:18px;}
.review-note{font-size:12.5px;color:var(--ink-soft);margin-top:16px;font-style:italic;}

/* Our Happy Guests */
.guest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media(max-width:900px){.guest-grid{grid-template-columns:repeat(2,1fr);}}
.guest-tile{position:relative;aspect-ratio:1/1;overflow:hidden;box-shadow:var(--shadow-soft);}
.guest-tile .guest-cap{
  position:absolute;left:14px;right:14px;bottom:12px;z-index:2;
  color:var(--paper);font-size:13px;font-weight:600;line-height:1.3;
}
.guest-tile .guest-cap .flag{font-size:15px;margin-right:4px;}
.guest-note{font-size:12.5px;color:var(--ink-soft);margin-top:18px;font-style:italic;text-align:center;}

/* Blog */
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
@media(max-width:900px){.guide-grid{grid-template-columns:1fr;}}
.guide-card{border:1px solid var(--line);background:var(--paper);overflow:hidden;transition:box-shadow .3s, transform .3s;}
.guide-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-soft);}
.guide-card .img-frame{aspect-ratio:16/10;}
.guide-card .tag{padding:20px 22px 0;font-size:11.5px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--stone);}
.guide-card h4{padding:10px 22px 22px;font-size:18px;line-height:1.3;}
.guide-card a{display:block;padding:0 22px 22px;font-size:13.5px;font-weight:700;color:var(--saffron);}

/* FAQ */
.faq-list{max-width:820px;}
details{border-bottom:1px solid var(--line);padding:22px 0;}
details summary{cursor:pointer;font-weight:700;font-size:16.5px;display:flex;justify-content:space-between;align-items:center;list-style:none;}
details summary::-webkit-details-marker{display:none;}
details summary::after{content:"+";font-size:22px;font-weight:400;color:var(--saffron);transition:transform .2s;}
details[open] summary::after{transform:rotate(45deg);}
details p{margin-top:14px;font-size:15px;color:var(--ink-soft);max-width:70ch;}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;}}
.contact-info{display:grid;gap:22px;margin-top:26px;}
.contact-info .row{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-top:1px solid var(--line);}
.contact-info .row .k{font-size:11.5px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--stone);min-width:110px;}
.contact-info .row .v{font-size:15px;font-weight:600;}
.contact-form{background:var(--paper);border:1px solid var(--line);padding:34px;}
.contact-form .f-row{display:grid;gap:6px;margin-bottom:18px;}
.contact-form label{font-size:12.5px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--ink-soft);}
.contact-form input,.contact-form select,.contact-form textarea{
  border:1px solid var(--line);background:var(--sandstone);padding:10px 14px;font-family:inherit;font-size:14.5px;color:var(--ink);
}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px;}
.contact-form .two{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:520px){.contact-form .two{grid-template-columns:1fr;}}
.contact-form button{width:100%;margin-top:6px;}

/* Final CTA */
.final-cta{background:var(--saffron);color:var(--paper);text-align:center;padding:96px 0;}
.final-cta h2{color:var(--paper);font-size:clamp(2rem,4vw,2.8rem);}
.final-cta p{margin-top:16px;font-size:17px;color:rgba(251,247,238,0.85);max-width:52ch;margin-left:auto;margin-right:auto;}
.final-cta .hero-ctas{justify-content:center;margin-top:32px;}
.final-cta .btn-primary{background:var(--gold);color:var(--navy-deep);}
.final-cta .btn-primary:hover{background:var(--gold-deep);}