/* Travel Execute – Kashmir Winter Landing (Mobile-first) */
:root {
  --brand: #0ea5e9;
  --brand-600: #0284c7;
  --ink: #0b1220;
  --muted: #61708a;
  --bg: #f8fafc;
  --card: #ffffff;
  --radius: 18px;
  --shadow: 0 12px 30px rgba(2, 8, 23, .10);
  --accent: #22c55e;
  --warn: #f59e0b;
}

* {
  box-sizing: border-box
}

html,
body {
  height: 100%
}

body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, Helvetica, sans-serif;
  background: var(--bg);
  color: var(--ink)
}

img {
  max-width: 100%;
  display: block
}

a {
  text-decoration: none;
  color: var(--brand)
}

.container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 16px
}

.header {
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 50;
  box-shadow: 0 1px 0 rgba(2, 8, 23, .06)
}

.nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 8px
}

.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 800
}

.brand img {
  height: 40px;
  object-fit: contain
}

.menu {
  display: flex;
  gap: 14px;
  align-items: center
}

@media (max-width:860px) {
  .menu {
    display: none
  }

  .menu-btn {
    display: flex
  }
}

.menu-btn {
  display: none;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff
}

.menu-btn span {
  width: 18px;
  height: 2px;
  background: #111;
  position: relative;
  display: block
}

.menu-btn span:before,
.menu-btn span:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #111
}

.menu-btn span:before {
  top: -6px
}

.menu-btn span:after {
  top: 6px
}

.btn {
  appearance: none;
  border: 0;
  border-radius: 999px;
  padding: 10px 16px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: .2s
}

.btn-primary {
  background: var(--brand);
  color: #fff
}

.btn-primary:hover {
  background: var(--brand-600)
}

.btn-outline {
  background: #fff;
  color: var(--brand);
  outline: 1px solid var(--brand)
}

.btn-outline:hover {
  background: rgba(14, 165, 233, .08)
}

.hero {
  position: relative;
  overflow: hidden
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
}

.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(16, 24, 40, .55), rgba(16, 24, 40, .75))
}

.hero-inner {
  position: relative;
  z-index: 1
}

.hero-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 16px;
  padding: 40px 16px 22px
}

@media (max-width:900px) {
  .hero-grid {
    grid-template-columns: 1fr
  }
}

.h1 {
  color: #fff;
  font-size: clamp(26px, 5.2vw, 44px);
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -.01em;
  margin: 4px 0 8px
}

.sub {
  color: #e5e7eb;
  margin: 8px 0 14px
}

.badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 10px 0 16px
}

.badge {
  background: rgba(255, 255, 255, .14);
  border: 1px solid rgba(255, 255, 255, .25);
  color: #fff;
  border-radius: 999px;
  padding: 8px 12px;
  font-weight: 700;
  font-size: 12px;
  backdrop-filter: blur(2px)
}

.hero-cta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap
}

.card {
  background: var(--card);
  border: 1px solid #eef2f7;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 16px
}

.form {
  display: grid;
  gap: 12px
}

.row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px
}

@media (max-width:560px) {
  .row {
    grid-template-columns: 1fr
  }
}

.input,
select,
textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  font: inherit;
  background: #fff
}

.hint {
  font-size: 12px;
  color: var(--muted)
}

.error {
  font-size: 12px;
  color: #dc2626;
  display: none
}

input.invalid,
select.invalid,
textarea.invalid {
  border-color: #dc2626;
  background: #fff5f5
}

.section {
  padding: 18px 16px
}

.section-title {
  font-size: clamp(22px, 3.6vw, 32px);
  margin: 6px 0 6px
}

.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px
}

@media (max-width:960px) {
  .grid-3 {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width:560px) {
  .grid-3 {
    grid-template-columns: 1fr
  }
}

.pkg {
  background: #fff;
  border: 1px solid #eef2f7;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow);
  display: flex;
  flex-direction: column
}

.media {
  aspect-ratio: 16/10;
  background: linear-gradient(135deg, #e0f2fe, #f0f9ff)
}

.pkg-body {
  padding: 14px
}

.pkg-body h3 {
  margin: 2px 0 4px;
  font-size: 18px
}

.pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  background: #f1f5f9;
  border-radius: 999px;
  padding: 6px 10px;
  margin-top: 6px
}

.pkg-cta {
  display: flex;
  gap: 10px;
  padding: 12px 14px 16px
}

.details {
  padding: 0 14px 14px
}

details {
  border: 1px dashed #e5e7eb;
  border-radius: 12px;
  padding: 10px 12px;
  background: #fcfdff
}

details+details {
  margin-top: 10px
}

summary {
  cursor: pointer;
  font-weight: 700
}

.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px
}

.chip {
  font-size: 12px;
  background: #eef2ff;
  color: #1d4ed8;
  border: 1px dashed #bfdbfe;
  border-radius: 999px;
  padding: 8px 10px
}

.footer {
  background: #0b1220;
  color: #cbd5e1;
  margin-top: 24px
}

.footer .inner {
  padding: 26px 16px;
  display: grid;
  gap: 10px
}

.footer a {
  color: #e2e8f0
}

.sticky {
  position: fixed;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  border: 1px solid #e5e7eb;
  box-shadow: var(--shadow);
  border-radius: 999px;
  display: flex;
  gap: 8px;
  padding: 8px;
  z-index: 60
}

@media (min-width:769px) {
  .sticky {
    display: none
  }
}

/* Offer strip */
.offer-strip {
  background: #0ea5e9;
  color: #fff;
  position: sticky;
  z-index: 49
}

.offer-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 10px 0
}

.offer-left {
  font-weight: 700
}

.offer-timer {
  margin-left: auto
}

.offer-actions {
  display: flex;
  gap: 8px
}

.offer-strip code {
  background: rgba(255, 255, 255, .2);
  padding: 2px 6px;
  border-radius: 6px;
  color: #fff
}

/* Offers grid */
.offers-grid .offer-card h3 {
  display: flex;
  gap: 6px;
  align-items: baseline;
  justify-content: space-between
}

.btn-copy {
  white-space: nowrap
}

/* Put this with your other styles */
.glass {
  background: rgba(15, 23, 42, 0.42);
  /* slate-900 @ ~42% */
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  /* softens busy areas */
  padding: 16px;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(2, 8, 23, .18);
  color: #fff;
  /* ensure contrast */
  max-width: 760px;
  /* keeps it readable */
}

.h1 {
  color: #fff;
  text-shadow: 0 2px 6px rgba(0, 0, 0, .35);
}

.sub {
  color: #e5e7eb;
}

.badge {
  background: rgba(255, 255, 255, .18);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .28);
}


/* price block */

.price-now {
  font-weight: 800;
  font-size: 1.3rem;
  line-height: 1;
  color: #0f172a;
  padding: 6px 10px;
  background: #e6f6ff;
  border-radius: 10px;
}

.price-old {
  text-decoration: line-through;
  color: #64748b;
  font-weight: 600;
}

.off-badge {
  background: #16a34a;
  color: #fff;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .9rem;
  line-height: 1;
}

.price-note {
  font-size: .85rem;
  color: #475569;
  margin-top: 6px;
}

@media (max-width:540px) {
  .price-now {
    font-size: 1.15rem;
  }
}

.price-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 10px;
}

.from,
.unit {
  font-weight: 700;
  color: #334155;
  font-size: .95rem;
}

.price-now {
  font-weight: 800;
  font-size: 1.3rem;
  line-height: 1;
  color: #0f172a;
  padding: 6px 10px;
  background: #e6f6ff;
  border-radius: 10px;
}

.price-old {
  text-decoration: line-through;
  color: #64748b;
  font-weight: 600;
}

.off-badge {
  background: #16a34a;
  color: #fff;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .9rem;
  line-height: 1;
}

.price-note {
  font-size: .85rem;
  color: #475569;
  margin-top: 6px;
}

@media (max-width:540px) {
  .price-now {
    font-size: 1.15rem;
  }
}

/* --- Identity & Footer (LAS compliance helpers) --- */
.about-identity .trust {
  margin: 12px 0 0;
  padding-left: 18px
}

.about-identity .trust li {
  margin: 6px 0
}

.site-footer {
  background: #0f172a;
  color: #e2e8f0;
  margin-top: 40px;
  padding: 28px 0
}

.site-footer a {
  color: #e2e8f0;
  text-decoration: underline;
  text-underline-offset: 3px
}

.footer-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px
}

.footer-bullets,
.footer-links {
  list-style: disc;
  padding-left: 18px
}

.fineprint {
  opacity: .7;
  margin-top: 12px;
  font-size: .9rem
}

@media (max-width: 820px) {
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 10px
  }
}

/* Buttons already exist; this adds mobile/desktop visibility + WhatsApp style */
.mobile-only {
  display: none;
}

.desktop-only {
  display: inline-flex;
}

/* WhatsApp style */
.btn-whatsapp {
  background: #25D366;
  color: #fff !important;
  border: none;
}

.btn-whatsapp:hover {
  filter: brightness(0.95);
}

/* Mobile breakpoint */
@media (max-width: 640px) {
  .mobile-only {
    display: inline-flex;
  }

  .desktop-only {
    display: none;
  }
}


/* Testimonials */
.eyebrow {
  display: inline-block;
  background: #ffe9b2;
  color: #6b4f00;
  font-weight: 600;
  border-radius: 999px;
  padding: .25rem .75rem;
  margin: 0 auto 8px;
}

.t-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 24px
}

@media (max-width: 960px) {
  .t-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .t-grid {
    grid-template-columns: 1fr;
  }
}

.t-card {
  background: #fff;
  border: 1px solid #eef2f7;
  border-radius: 16px;
  padding: 18px 18px 14px;
  box-shadow: 0 8px 22px rgba(2, 8, 23, .06)
}

.t-head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px
}

.t-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: grid;
  place-content: center;
  font-weight: 800;
  color: #0b1220;
  background: #e6f2ff
}

.t-name {
  font-weight: 700;
  color: #0b1220
}

.t-city {
  font-size: .9rem;
  color: #586174
}

.t-stars {
  display: flex;
  gap: 4px;
  margin: 6px 0 6px;
  color: #f2b400
}

.t-star {
  width: 18px;
  height: 18px
}

.t-quote {
  margin: 8px 0 10px;
  color: #1a2433;
  line-height: 1.55
}

.t-link {
  font-weight: 600;
  color: #0ea5e9;
  text-decoration: none
}

.t-link:hover {
  text-decoration: underline
}



/******* kw Sections **********/
  .kw-hero{padding-top:14px}
  .kw-top{
    display:grid;
    grid-template-columns: 1.4fr .9fr;
    gap:18px;
    align-items:stretch;
    margin-bottom:18px;
  }
  .kw-chip{
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    background:linear-gradient(90deg,#e0f2fe,#f1f5ff);
    border:1px solid #e5e7eb;
    font-size:12px;
    font-weight:600;
    color:#0b1220;
  }
  .kw-title{margin:10px 0 8px 0;font-size:40px;line-height:1.15}
  .kw-sub{margin:0;color:#475569;line-height:1.65;font-size:15px}

  .kw-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
  .kw-btn{
    display:inline-flex;align-items:center;justify-content:center;
    padding:10px 14px;border-radius:999px;text-decoration:none;font-weight:700;
    border:1px solid transparent;
  }
  .kw-btn-primary{background:#0ea5e9;color:#fff}
  .kw-btn-outline{border-color:#0ea5e9;color:#0ea5e9;background:#fff}

  .kw-badges{display:grid;gap:10px}
  .kw-badge{
    display:flex;gap:10px;align-items:center;
    background:#fff;border:1px solid #eef2f7;border-radius:14px;
    padding:12px 14px;box-shadow:0 10px 26px rgba(2,8,23,.06);
  }
  .kw-badge-icon{
    width:36px;height:36px;border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(180deg,#e0f2fe,#f1f5ff);
    border:1px solid #e5e7eb;
    font-size:18px;
  }
  .kw-badge-title{font-weight:800}
  .kw-badge-text{font-size:12px;color:#64748b;margin-top:2px}

  .kw-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:16px;
  }
  .kw-card{
    background:#fff;
    border:1px solid #eef2f7;
    border-radius:16px;
    padding:16px 16px;
    box-shadow:0 10px 26px rgba(2,8,23,.06);
    position:relative;
    overflow:hidden;
  }
  .kw-card:before{
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(600px 160px at 10% 0%, rgba(14,165,233,.14), transparent 60%);
    pointer-events:none;
  }
  .kw-card h3{margin:0 0 10px 0;font-size:18px;position:relative}
  .kw-card ul{margin:0;padding-left:18px;line-height:1.7;color:#0b1220;position:relative}
  .kw-card li{margin:6px 0}

  .kw-jump{
    margin-top:16px;
    background:#fff;
    border:1px solid #eef2f7;
    border-radius:16px;
    padding:14px 14px;
    box-shadow:0 10px 26px rgba(2,8,23,.06);
    display:flex;
    gap:12px;
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .kw-jump-label{font-weight:800;color:#0b1220}
  .kw-jump-links{display:flex;gap:10px;flex-wrap:wrap}
  .kw-jump-links a{
    text-decoration:none;
    padding:7px 10px;
    border-radius:999px;
    background:#f8fafc;
    border:1px solid #e5e7eb;
    color:#0b1220;
    font-weight:700;
    font-size:13px;
  }
  .kw-jump-links a:hover{border-color:#0ea5e9}

  @media(max-width:900px){
    .kw-top{grid-template-columns:1fr}
    .kw-title{font-size:30px}
    .kw-grid{grid-template-columns:1fr}
  }
