/* ============================================================
   CITY HERO — Type 3-style split layout
   LEFT : keyword-rich copy panel (crawlable text, H1, pills, CTAs, trust)
   RIGHT: atmospheric city image + floating "Quick Facts" card
   WHY BETTER FOR SEO:
   - H1 + supporting copy live in the DOM as real text (not buried under an image)
   - Keyword pills index naturally; fullwidth overlaid text often ignored by crawlers
   - Left panel gives Google a dense, structured content block above the fold
   - Split layout prevents CLS from image-only heroes on slow connections
   - Floating card adds structured "scannable facts" (duration, price, distance)
     that match common long-tail searches ("jaipur tour 2 days price", "jaipur from delhi")
   ============================================================ */
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

/* Split hero grid */
.city-hero{display:grid;grid-template-columns:1fr 1fr;min-height:560px;
  background:linear-gradient(150deg,#2a0800 0%,#5f1b05 55%,#7a2008 100%)}

/* ── LEFT: copy panel ── */
.ch-left{padding:3.5rem 3rem 3.5rem 1.5rem;display:flex;flex-direction:column;
  justify-content:center;gap:1.3rem;position:relative;overflow:hidden}
/* decorative watermark — city initial */
.ch-left::before{content:attr(data-city-initial);position:absolute;right:-10px;top:50%;
  transform:translateY(-50%);font-size:200px;line-height:1;font-family:var(--f-serif);
  font-style:italic;color:rgba(255,255,255,.04);pointer-events:none;user-select:none}

.ch-eyebrow{display:flex;align-items:center;gap:8px;font-family:var(--f-sans);
  font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;
  color:var(--c-amber);animation:fadeUp .5s ease both}
.ch-eyebrow::before{content:'';width:20px;height:1px;background:var(--c-amber);opacity:.8}

.ch-h1{font-family:var(--f-serif);font-size:clamp(34px,4vw,56px);font-weight:400;
  color:#fff;line-height:1.06;animation:fadeUp .5s .07s ease both}
.ch-h1 em{font-style:italic;font-weight:300;color:var(--c-amber);display:block}

/* SEO paragraph: visible, crawlable description — NOT image overlay text */
.ch-desc{font-family:var(--f-sans);font-size:13.5px;font-weight:300;line-height:1.85;
  color:rgba(255,255,255,.64);max-width:430px;animation:fadeUp .5s .12s ease both}

/* keyword pills — each one targets a real long-tail search query */
.ch-pills{display:flex;gap:7px;flex-wrap:wrap;animation:fadeUp .5s .17s ease both}
.ch-pill{font-family:var(--f-sans);font-size:10.5px;font-weight:400;padding:5px 13px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);
  border-radius:2px;color:rgba(255,255,255,.78)}

/* CTA buttons */
.ch-ctas{display:flex;gap:10px;flex-wrap:wrap;animation:fadeUp .5s .22s ease both}
.btn-amber-hero{background:var(--c-amber);color:var(--c-deep);font-family:var(--f-sans);
  font-size:11.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;
  padding:12px 22px;border-radius:var(--r-sm);
  transition:background var(--t),transform .15s;display:inline-flex;align-items:center;gap:7px}
.btn-amber-hero:hover{background:#d98c10;transform:translateY(-2px)}
.btn-ghost-hero{background:transparent;color:rgba(255,255,255,.8);font-family:var(--f-sans);
  font-size:11.5px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;
  padding:12px 22px;border:1px solid rgba(255,255,255,.28);border-radius:var(--r-sm);
  transition:all var(--t);display:inline-flex;align-items:center;gap:7px}
.btn-ghost-hero:hover{border-color:rgba(255,255,255,.65);color:#fff;transform:translateY(-2px)}

/* trust micro-strip */
.ch-trust{display:flex;gap:1.4rem;flex-wrap:wrap;padding-top:.5rem;
  border-top:1px solid rgba(245,166,35,.13);animation:fadeUp .5s .27s ease both}
.ch-trust-item{display:flex;align-items:center;gap:6px;font-family:var(--f-sans);
  font-size:11px;font-weight:300;color:rgba(255,255,255,.44)}
.ch-trust-item svg{width:13px;height:13px;stroke:var(--c-amber);fill:none;
  stroke-width:1.8;opacity:.75;flex-shrink:0}

/* ── RIGHT: image panel ── */
.ch-right{position:relative;overflow:hidden;min-height:400px}
.ch-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.ch-ov-left{position:absolute;inset:0;
  background:linear-gradient(to right,rgba(0,0,0,.55) 0%,rgba(0,0,0,.06) 50%,transparent 100%)}
.ch-ov-bottom{position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.48) 0%,transparent 55%)}

/* Floating Quick Facts card — indexes as real DOM content */
.ch-facts-card{position:absolute;bottom:22px;right:20px;
  background:rgba(0,0,0,.46);border:1px solid rgba(245,166,35,.28);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-radius:var(--r);padding:1.1rem 1.3rem;min-width:185px;
  animation:floatY 4s ease-in-out infinite}
.ch-fc-label{font-family:var(--f-sans);font-size:9px;font-weight:500;letter-spacing:2.5px;
  text-transform:uppercase;color:var(--c-amber);margin-bottom:10px}
.ch-fc-row{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.ch-fc-row:last-child{margin-bottom:0}
.ch-fc-icon{width:20px;height:20px;border-radius:50%;background:rgba(245,166,35,.18);
  display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ch-fc-icon svg{width:10px;height:10px;stroke:var(--c-amber);fill:none;stroke-width:2}
.ch-fc-text{font-family:var(--f-sans);font-size:11px;font-weight:300;color:rgba(255,255,255,.75)}
.nf-field-label{margin-bottom: 0px; !important}
/* ============================================================
   QUICK INFO BAR — beneath hero
   ============================================================ */
.info-bar{overflow:auto !important;background:#fff;border-bottom:1px solid var(--c-border)}
.ib-inner{max-width:1400px;margin:0 auto;padding:0 1.5rem;display:flex;min-width:600px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.ib-inner::-webkit-scrollbar{display:none}
.ib-item{display:flex;align-items:center;gap:9px;padding:13px 0;flex:1;justify-content:center;border-right:1px solid var(--c-border);min-width:140px}
.ib-item:last-child{border-right:none}
.ib-icon{width:32px;height:32px;background:var(--c-amber-p);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ib-icon svg{width:14px;height:14px;stroke:var(--c-saffron);fill:none;stroke-width:1.6}
.ib-text strong{display:block;font-family:var(--f-sans);font-size:12.5px;font-weight:500;color:var(--c-ink);white-space:nowrap}
.ib-text span{font-family:var(--f-sans);font-size:10px;font-weight:300;color:var(--c-muted);white-space:nowrap}
/* ============================================================
   STICKY DURATION FILTER — replaces category filter from Type 1
   ============================================================ */
.dur-filter{background:var(--c-cream);border-bottom:1px solid var(--c-border);position:sticky;top:0px;z-index:200}
.df-inner{max-width:1400px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;gap:1.25rem;height:50px;overflow-x:auto;scrollbar-width:none}
.df-inner::-webkit-scrollbar{display:none}
.df-label{font-family:var(--f-sans);font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--c-muted);flex-shrink:0;white-space:nowrap}
.df-divider{width:1px;height:20px;background:var(--c-border);flex-shrink:0}
.dur-tabs{display:flex;gap:5px}
.dt{font-family:var(--f-sans);font-size:11.5px;font-weight:400;padding:6px 14px;border:1px solid var(--c-bord2);border-radius:var(--r-sm);color:var(--c-muted);background:transparent;cursor:pointer;transition:all var(--t);white-space:nowrap}
.dt.active,.dt:hover{background:var(--c-mid);color:#fff;border-color:var(--c-mid)}
.df-right{margin-left:auto;flex-shrink:0}
.df-enquiry{background:var(--c-amber);color:var(--c-deep);font-family:var(--f-sans);font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;padding:7px 14px;border-radius:var(--r-sm);white-space:nowrap;display:inline-block;transition:background var(--t)}
.df-enquiry:hover{background:#d98c10}
/* ============================================================
   MAIN LAYOUT — packages + sidebar
   ============================================================ */
.page-body{padding:3rem 1.5rem}
.layout{display:grid;grid-template-columns:1fr 288px;gap:2.5rem;align-items:start;max-width:1400px;margin:0 auto}
.sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:115px}

/* Results header */
.results-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:.75rem}
.rb-count{font-family:var(--f-sans);font-size:12px;font-weight:300;color:var(--c-muted)}
.rb-count strong{font-weight:500;color:var(--c-ink)}
.rb-sort{display:flex;align-items:center;gap:7px}
.rb-sort label{font-family:var(--f-sans);font-size:10.5px;font-weight:300;color:var(--c-muted)}
.rb-sort select{font-family:var(--f-sans);font-size:11.5px;font-weight:400;color:var(--c-ink);border:1px solid var(--c-bord2);border-radius:var(--r-sm);padding:5px 26px 5px 10px;background:transparent;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%237a5030'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}

/* ============================================================
   PACKAGE CARDS — horizontal list rows
   ============================================================ */
.pkg-list{display:flex;flex-direction:column;gap:16px}

.pkg-row{background:#fff;border:1px solid var(--c-border);border-radius:var(--r);display:grid;grid-template-columns:210px 1fr 170px;overflow:hidden;transition:border-color .25s,box-shadow .25s}
.pkg-row:hover{border-color:var(--c-bord2);box-shadow:0 4px 22px rgba(95,27,5,.07)}

.pr-img{position:relative;overflow:hidden;background:var(--c-cream2)}
.pr-img img{width:100%;height:100%;object-fit:cover;display:block;min-height:180px;transition:transform .5s ease}
.pkg-row:hover .pr-img img{transform:scale(1.06)}
.pr-badge{position:absolute;top:10px;left:10px;font-family:var(--f-sans);font-size:9px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;padding:4px 9px;border-radius:2px;z-index:2}
.badge-best{background:var(--c-amber);color:var(--c-deep)}
.badge-pop{background:var(--c-saffron);color:#fff}
.badge-new{background:rgba(95,27,5,.85);border:1px solid rgba(245,166,35,.4);color:var(--c-amber)}
.badge-val{background:#2d6a2d;color:#fff}

.pr-save{position:absolute;top:10px;right:10px;width:30px;height:30px;background:rgba(255,255,255,.88);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--t)}
.pr-save:hover{background:#fff}
.pr-save svg{width:14px;height:14px;stroke:var(--c-mid);fill:none;stroke-width:1.8}

.pr-body{padding:1.3rem 1.4rem;display:flex;flex-direction:column;justify-content:center;gap:0}
.pr-title{font-family:var(--f-serif);font-size:20px;font-weight:500;color:var(--c-ink);margin-bottom:10px;line-height:1.2}
.pr-title a{color:inherit;transition:color var(--t)}
.pr-title a:hover{color:var(--c-mid)}
.pr-subtitle{font-family:var(--f-sans);font-size:11.5px;font-weight:300;color:var(--c-muted);margin-bottom:11px;display:flex;align-items:center;gap:6px}
.pr-subtitle svg{width:11px;height:11px;stroke:var(--c-saffron);fill:none;stroke-width:1.8;flex-shrink:0}

.pr-highlights{display:flex;gap:14px;margin-bottom:11px;flex-wrap:wrap}
.pr-hl{display:flex;align-items:center;gap:5px;font-family:var(--f-sans);font-size:11px;font-weight:300;color:var(--c-muted);white-space:nowrap}
.pr-hl svg{width:13px;height:13px;stroke:var(--c-saffron);fill:none;stroke-width:1.5;flex-shrink:0}

.pr-tags{display:flex;gap:5px;flex-wrap:wrap}
.pr-tag{font-family:var(--f-sans);font-size:10px;font-weight:400;padding:3px 8px;border:1px solid var(--c-bord2);border-radius:2px;color:var(--c-ink2)}

.pr-includes{margin-top:10px;padding-top:10px;border-top:1px solid var(--c-border);display:flex;gap:14px;flex-wrap:wrap}
.pr-inc{display:flex;align-items:center;gap:4px;font-family:var(--f-sans);font-size:10.5px;font-weight:300;color:var(--c-muted)}
.pr-inc svg{width:11px;height:11px;stroke:#2d6a2d;fill:none;stroke-width:2;flex-shrink:0}

/* Action column */
.pr-action{padding:1.3rem 1.2rem;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;border-left:1px solid var(--c-border);gap:10px}
.pr-rating{display:flex;flex-direction:column;align-items:flex-end;gap:3px}
.pr-stars{color:var(--c-amber);font-size:12px;letter-spacing:1px}
.pr-rating-text{font-family:var(--f-sans);font-size:10px;font-weight:300;color:var(--c-muted)}
.pr-price-block{text-align:right}
.pr-price-lbl{font-family:var(--f-sans);font-size:9.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--c-muted);display:block;margin-bottom:2px}
.pr-price{font-family:var(--f-serif);font-size:28px;font-weight:400;color:var(--c-mid);line-height:1}
.pr-price small{font-family:var(--f-sans);font-size:10px;font-weight:300;color:var(--c-muted)}
.pr-price-note{font-family:var(--f-sans);font-size:9.5px;font-weight:300;color:var(--c-muted);margin-top:2px}
.pr-btn{display:block;background:var(--c-mid);color:#fff;font-family:var(--f-sans);font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;padding:10px 18px;border-radius:var(--r-sm);text-align:center;transition:background var(--t);white-space:nowrap}
.pr-btn:hover{background:var(--c-deep)}
.pr-wa{display:flex;align-items:center;justify-content:flex-end;gap:4px;font-family:var(--f-sans);font-size:10.5px;font-weight:400;color:var(--c-muted);cursor:pointer;transition:color var(--t)}
.pr-wa:hover{color:var(--c-mid)}
.pr-wa svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.5}

/* ============================================================
   ATTRACTIONS GRID — city-specific section
   ============================================================ */
.attractions{padding:4rem 1.5rem;background:var(--c-cream)}
.attr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.attr-card{border-radius:var(--r-sm);overflow:hidden;position:relative;height:220px;display:block;background:var(--c-cream2)}
.attr-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.attr-card:hover .attr-img{transform:scale(1.07)}
.attr-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.78) 0%,rgba(0,0,0,.05) 55%,transparent 100%)}
.attr-info{position:absolute;bottom:0;left:0;right:0;padding:14px}
.attr-name{font-family:var(--f-serif);font-size:18px;font-weight:400;color:#fff;margin-bottom:2px;line-height:1.2}
.attr-type{font-family:var(--f-sans);font-size:9.5px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.55)}
/* UNESCO badge */
.attr-badge{position:absolute;top:10px;right:10px;background:rgba(0,0,0,.45);border:1px solid rgba(245,166,35,.4);backdrop-filter:blur(4px);padding:3px 8px;border-radius:2px;font-family:var(--f-sans);font-size:8.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--c-amber)}

/* ============================================================
   ITINERARY SNAPSHOT — city-specific "what to expect"
   ============================================================ */
.itinerary{padding:4rem 1.5rem;background:#fff}
.it-layout{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start;max-width:1200px;margin:0 auto}
.it-timeline{display:flex;flex-direction:column;gap:0}
.it-day{display:grid;grid-template-columns:48px 1fr;gap:0;position:relative}
.it-day:not(:last-child) .it-line{position:absolute;left:23px;top:44px;bottom:0;width:1px;background:var(--c-border)}
.it-num-wrap{display:flex;flex-direction:column;align-items:center;padding-top:4px;z-index:1}
.it-num{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--c-bord2);display:flex;align-items:center;justify-content:center;font-family:var(--f-serif);font-size:14px;font-weight:500;color:var(--c-mid);background:#fff;flex-shrink:0;transition:background var(--t),border-color var(--t)}
.it-day:hover .it-num{background:var(--c-mid);border-color:var(--c-mid);color:#fff}
.it-content{padding:0 0 2rem 1.2rem}
.it-day-label{font-family:var(--f-sans);font-size:9.5px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--c-saffron);margin-bottom:4px}
.it-day-title{font-family:var(--f-serif);font-size:19px;font-weight:500;color:var(--c-ink);margin-bottom:5px;line-height:1.2}
.it-day-desc{font-family:var(--f-sans);font-size:12.5px;font-weight:300;color:var(--c-muted);line-height:1.8}
.it-day-places{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
.it-place{font-family:var(--f-sans);font-size:10px;font-weight:400;padding:3px 8px;border:1px solid var(--c-bord2);border-radius:2px;color:var(--c-ink2)}

/* Itinerary right — visual + CTA */
.it-right{}
.it-img-stack{position:relative;height:340px;margin-bottom:1.5rem}
.it-img-main{position:absolute;top:0;left:0;right:40px;bottom:40px;border-radius:var(--r);overflow:hidden;border:3px solid #fff;box-shadow:0 8px 32px rgba(0,0,0,.12)}
.it-img-main img{width:100%;height:100%;object-fit:cover}
.it-img-thumb{position:absolute;bottom:0;right:0;width:160px;height:120px;border-radius:var(--r);overflow:hidden;border:3px solid #fff;box-shadow:0 6px 22px rgba(0,0,0,.14)}
.it-img-thumb img{width:100%;height:100%;object-fit:cover}
.it-cta-box{background:var(--c-cream);border:1px solid var(--c-border);border-radius:var(--r);padding:1.4rem}
.it-cta-title{font-family:var(--f-serif);font-size:20px;font-weight:500;color:var(--c-ink);margin-bottom:6px}
.it-cta-desc{font-family:var(--f-sans);font-size:12.5px;font-weight:300;color:var(--c-muted);line-height:1.75;margin-bottom:1rem}
.btn-saffron{display:inline-flex;align-items:center;gap:7px;background:var(--c-mid);color:#fff;font-family:var(--f-sans);font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;padding:11px 20px;border-radius:var(--r-sm);transition:background var(--t)}
.btn-saffron:hover{background:var(--c-deep)}

/* ============================================================
   SIDEBAR WIDGETS
   ============================================================ */
.sw{background:#fff;border:1px solid var(--c-border);border-radius:var(--r);overflow:hidden}
.sw-head{padding:1rem 1.2rem;border-bottom:1px solid var(--c-border);display:flex;align-items:center;justify-content:space-between}
.sw-head h3{font-family:var(--f-serif);font-size:17px;margin-bottom:0px !important;font-weight:500;color:var(--c-ink)}
.sw-head a{font-family:var(--f-sans);font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--c-saffron)}

/* Quick Enquiry */
.sw-enquiry{background:linear-gradient(145deg,var(--c-deep),var(--c-mid));border:none}
.sw-enquiry .sw-head{border-color:rgba(245,166,35,.15)}
.sw-enquiry .sw-head h3{color:#fff;}
.qe-body{padding:1.2rem}
.qe-field{margin-bottom:9px}
.qe-field label{display:block;font-family:var(--f-sans);font-size:9.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:4px}
.qe-field input,.qe-field select{width:100%;background:rgba(255,255,255,.09);border:1px solid rgba(245,166,35,.22);border-radius:var(--r-sm);color:#fff;font-family:var(--f-sans);font-size:12px;font-weight:300;padding:9px 11px;outline:none;appearance:none;-webkit-appearance:none;transition:border-color var(--t)}
.qe-field input::placeholder{color:rgba(255,255,255,.3)}
.qe-field input:focus,.qe-field select:focus{border-color:rgba(245,166,35,.55)}
.qe-field select option{background:#5F1B05}
.qe-btn{width:100%;background:var(--c-amber);color:var(--c-deep);font-family:var(--f-sans);font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;padding:11px;border-radius:var(--r-sm);margin-top:4px;transition:background var(--t);cursor:pointer;border:none}
.qe-btn:hover{background:#d98c10}
.qe-wa{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:9px;font-family:var(--f-sans);font-size:11.5px;font-weight:400;color:rgba(255,255,255,.5);text-decoration:none;transition:color var(--t)}
.qe-wa:hover{color:rgba(255,255,255,.85)}
.qe-wa svg{width:14px;height:14px;fill:currentColor}

/* Combine Jaipur with widget */
.sw-combine .sw-body{padding:.75rem 0}
.sw-combine-item{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:10px;padding:.65rem 1.2rem;transition:background var(--t);text-decoration:none;color:inherit}
.sw-combine-item:hover{background:var(--c-cream)}
.sw-ci-thumb{width:46px;height:46px;border-radius:var(--r-sm);object-fit:cover;background:var(--c-cream2);flex-shrink:0}
.sw-ci-info strong{display:block;font-family:var(--f-serif);font-size:14px;font-weight:500;color:var(--c-ink)}
.sw-ci-info span{font-family:var(--f-sans);font-size:10.5px;font-weight:300;color:var(--c-muted)}
.sw-ci-price{font-family:var(--f-serif);font-size:14px;font-weight:500;color:var(--c-mid);white-space:nowrap;text-align:right}
.sw-ci-price small{display:block;font-family:var(--f-sans);font-size:9px;font-weight:300;color:var(--c-muted)}

/* Best time widget */
.sw-besttime .sw-body{padding:1rem 1.2rem}
.bt-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.bt-month{border-radius:var(--r-sm);padding:.6rem .7rem;text-align:center;border:1px solid var(--c-border)}
.bt-month.peak{background:var(--c-amber-p);border-color:rgba(245,166,35,.35)}
.bt-month.good{background:#f0f8f0;border-color:rgba(45,106,45,.2)}
.bt-month.avoid{background:#fdf2f0;border-color:rgba(200,60,30,.15)}
.bt-month-name{font-family:var(--f-sans);font-size:10px;font-weight:500;color:var(--c-ink);display:block}
.bt-month-tag{font-family:var(--f-sans);font-size:9px;font-weight:300;color:var(--c-muted);display:block;margin-top:1px}
.bt-legend{display:flex;gap:10px;margin-top:9px;flex-wrap:wrap}
.bt-leg{display:flex;align-items:center;gap:5px;font-family:var(--f-sans);font-size:9.5px;font-weight:300;color:var(--c-muted)}
.bt-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.bt-dot-peak{background:var(--c-amber)}
.bt-dot-good{background:#4a9a4a}
.bt-dot-avoid{background:#c83c1e}

/* ============================================================
   EDITORIAL / SEO CONTENT
   ============================================================ */
.editorial{padding:4rem 1.5rem;background:var(--c-cream)}
.ed-inner{max-width:1200px;margin:0 auto}
.ed-2col{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.ed-text h3{font-family:var(--f-serif);font-size:22px;font-weight:500;color:var(--c-ink);margin-bottom:.6rem;margin-top:1.4rem}
.ed-text h3:first-of-type{margin-top:0}
.ed-text p{font-family:var(--f-sans);font-size:13.5px;font-weight:300;color:var(--c-muted);line-height:1.9;margin-bottom:.75rem}
.ed-text p:last-child{margin-bottom:0}
.ed-fact-list{display:flex;flex-direction:column;gap:.65rem;margin-top:.5rem}
.ed-fact{display:flex;gap:10px;align-items:flex-start}
.ed-fact-icon{width:22px;height:22px;background:var(--c-amber-p);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.ed-fact-icon svg{width:11px;height:11px;stroke:var(--c-saffron);fill:none;stroke-width:2}
.ed-fact-text{font-family:var(--f-sans);font-size:13px;font-weight:300;color:var(--c-muted);line-height:1.7}
.ed-fact-text strong{font-weight:500;color:var(--c-ink)}
/* ============================================================
   RELATED CITIES — "Combine Jaipur with…"
   ============================================================ */
.related{padding:4rem 1.5rem;background:#fff}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.rel-card{border-radius:var(--r-sm);overflow:hidden;position:relative;height:180px;display:block}
.rel-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.rel-card:hover .rel-img{transform:scale(1.07)}
.rel-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72) 0%,rgba(0,0,0,.06) 52%,transparent 100%)}
.rel-info{position:absolute;bottom:0;left:0;right:0;padding:12px}
.rel-name{font-family:var(--f-serif);font-size:18px;font-weight:400;color:#fff;margin-bottom:2px}
.rel-sub{font-family:var(--f-sans);font-size:10px;font-weight:300;color:rgba(255,255,255,.62)}

/* ============================================================
   CTA BAND
   ============================================================ */
.cta-band{padding:4.5rem 1.5rem;text-align:center;background:linear-gradient(135deg,var(--c-saffron) 0%,var(--c-deep) 100%)}
.cta-inner{max-width:560px;margin:0 auto}
.cta-band h2{font-family:var(--f-serif);font-size:clamp(30px,4vw,44px);font-weight:400;color:#fff;line-height:1.2;margin-bottom:10px}
.cta-band h2 em{font-style:italic;font-weight:300;color:var(--c-amber)}
.cta-band p{font-family:var(--f-sans);font-size:13.5px;font-weight:300;color:rgba(255,255,255,.6);line-height:1.8;margin-bottom:1.75rem}
.cta-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.btn-white{font-family:var(--f-sans);font-size:11.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;background:#fff;color:var(--c-mid);padding:12px 26px;border-radius:var(--r-sm);transition:background var(--t),transform .15s;display:inline-flex;align-items:center;gap:7px}
.btn-white:hover{background:#f0e0d0;transform:translateY(-2px)}
.btn-outline{font-family:var(--f-sans);font-size:11.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;background:transparent;color:rgba(255,255,255,.85);padding:12px 26px;border:1px solid rgba(255,255,255,.35);border-radius:var(--r-sm);transition:border-color var(--t),color var(--t),transform .15s;display:inline-flex;align-items:center;gap:7px}
.btn-outline:hover{border-color:rgba(255,255,255,.75);color:#fff;transform:translateY(-2px)}
/* ============================================================
   RESPONSIVE — TABLET (≤900px)
   ============================================================ */
@media(max-width:900px){

  .city-hero{grid-template-columns:1fr;min-height:auto}
  .ch-right{height:300px}
  .ch-left{padding:2.5rem 1.5rem}
  .ch-facts-card{display:none}

  .df-right{display:none}

  .layout{grid-template-columns:1fr}
  .sidebar{display:none}

  .pkg-row{grid-template-columns:170px 1fr}
  .pr-action{display:none}

  .attr-grid{grid-template-columns:repeat(2,1fr)}
  .it-layout{grid-template-columns:1fr}
  .it-img-stack{display:none}
  .ed-2col{grid-template-columns:1fr}
  .related-grid{grid-template-columns:repeat(2,1fr)}
}

/* ============================================================
   RESPONSIVE — MOBILE (≤600px)
   ============================================================ */
@media(max-width:600px){
  .ch-right{height:240px}
  .ch-h1{font-size:clamp(28px,7vw,40px)}
  .ch-pills{display:none}

  .page-body{padding:2rem 1rem}
  .pkg-row{grid-template-columns:1fr}
  .pr-img img{min-height:160px;height:160px}

  .attr-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .attr-card{height:160px}
  .related-grid{grid-template-columns:repeat(2,1fr)}
}