/*
Theme Name: Triplio
Theme URI: https://triplio.in
Author: Triplio
Description: Premium group travel theme for Triplio
Version: 4.0.0
License: GNU General Public License v2 or later
Text Domain: triplio
*/

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --blue:#1B2A4A;
  --orange:#F07820;
  --dark:#0F1D35;
  --cream:#F5F0E8;
  --muted:#6B7A99;
  --border:rgba(27,42,74,0.12);
  --white:#FFFFFF;
  --box-width:1100px;
}

html{scroll-behavior:smooth}

body{
  font-family:'DM Sans',sans-serif;
  background:linear-gradient(135deg,#1B2A4A 0%,#0F1D35 50%,#1a0f08 100%);
  min-height:100vh;
  color:var(--dark);
  overflow-x:hidden;
}

a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}

.site-wrapper{
  max-width:var(--box-width);
  margin:0 auto;
  background:var(--cream);
  box-shadow:0 0 80px rgba(0,0,0,0.35);
  overflow:hidden;
}

h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;font-weight:400;line-height:1.2}

/* =====================
   NAV
   LOGO: Upload via Appearance > Customize > Site Identity
   Header logo: 200x52px PNG transparent background
   Footer logo: 160x42px PNG white version (transparent background)
===================== */
.triplio-nav{
  position:sticky;top:0;z-index:100;
  background:rgba(245,240,232,0.97);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(12px);
}

.nav-top{
  display:flex;align-items:center;justify-content:space-between;
  padding:0.55rem 2.5rem;
  background:var(--blue);
}

.nav-top-left{
  font-size:0.7rem;color:rgba(245,240,232,0.5);
  letter-spacing:0.04em;
}

.nav-top-right{display:flex;align-items:center;gap:1.5rem}

.nav-phone{
  display:flex;align-items:center;gap:0.4rem;
  font-size:0.78rem;font-weight:500;
  color:var(--orange);letter-spacing:0.04em;
  transition:color 0.2s;
}

.nav-phone:hover{color:#ffa050}

.nav-wa{
  display:flex;align-items:center;gap:0.4rem;
  font-size:0.72rem;color:rgba(245,240,232,0.5);
  transition:color 0.2s;
}

.nav-wa:hover{color:var(--cream)}

.nav-main{
  display:flex;align-items:center;justify-content:space-between;
  padding:0.7rem 2.5rem;
}

/* Logo sizing — works for both image and text */
.nav-logo{
  font-family:'Cormorant Garamond',serif;
  font-size:1.7rem;font-weight:500;
  letter-spacing:0.12em;color:var(--blue);
  display:flex;align-items:center;
}

/* HEADER LOGO IMAGE: 200x52px PNG transparent */
.nav-logo img{
  height:44px;
  width:auto;
  max-width:200px;
  object-fit:contain;
}

.nav-links{display:flex;gap:1.8rem;align-items:center}

.nav-links a{
  font-size:0.74rem;font-weight:500;
  letter-spacing:0.08em;text-transform:uppercase;
  color:var(--blue);transition:color 0.2s;
}

.nav-links a:hover{color:var(--orange)}

.nav-cta{
  background:var(--blue);color:var(--white);
  padding:0.6rem 1.4rem;font-size:0.74rem;
  font-weight:500;letter-spacing:0.09em;text-transform:uppercase;
  border-radius:3px;transition:background 0.2s;display:inline-block;
}

.nav-cta:hover{background:var(--orange);color:var(--white)}

/* =====================
   HERO
   FIX: padding-top added so content not hidden behind sticky nav
   IMAGE: 1440x900px JPG under 300KB
===================== */
.triplio-hero{
  position:relative;
  min-height:92vh;
  display:flex;flex-direction:column;justify-content:flex-end;
  overflow:hidden;
}

.hero-bg{
  position:absolute;inset:0;
  background:
    linear-gradient(to bottom,rgba(15,29,53,0.1) 0%,rgba(15,29,53,0.92) 75%),
    url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?w=1200&q=80') center center/cover no-repeat;
  animation:slowzoom 25s ease-in-out infinite alternate;
}

@keyframes slowzoom{from{transform:scale(1)}to{transform:scale(1.06)}}

.hero-content{
  position:relative;
  padding:2rem 2.5rem 4rem;
  display:grid;
  grid-template-columns:1fr auto;
  gap:2rem;
  align-items:flex-end;
}

.hero-tag{
  font-size:0.68rem;letter-spacing:0.28em;text-transform:uppercase;
  color:var(--orange);margin-bottom:1rem;
}

.triplio-hero h1{
  font-size:clamp(2.8rem,6vw,5rem);
  font-weight:300;line-height:1.05;
  color:var(--cream);margin-bottom:1.2rem;
}

.triplio-hero h1 em{font-style:italic;color:var(--orange)}

.hero-desc{
  font-size:0.95rem;line-height:1.75;
  color:rgba(245,240,232,0.7);
  max-width:420px;margin-bottom:2rem;font-weight:300;
}

.hero-actions{display:flex;gap:0.8rem;flex-wrap:wrap}

.btn-primary{
  background:var(--orange);color:var(--white);
  padding:0.9rem 2rem;font-size:0.78rem;
  font-weight:500;letter-spacing:0.1em;text-transform:uppercase;
  border-radius:3px;display:inline-block;
  transition:background 0.2s,transform 0.15s;
}

.btn-primary:hover{background:#d96a18;transform:translateY(-1px);color:var(--white)}

.btn-ghost{
  background:transparent;color:var(--cream);
  border:1px solid rgba(245,240,232,0.35);
  padding:0.9rem 2rem;font-size:0.78rem;
  letter-spacing:0.1em;text-transform:uppercase;
  border-radius:3px;display:inline-block;
  transition:border-color 0.2s;
}

.btn-ghost:hover{border-color:var(--cream)}

.hero-stats{
  background:rgba(15,29,53,0.75);
  border:1px solid rgba(240,120,32,0.2);
  backdrop-filter:blur(12px);
  border-radius:8px;padding:1.5rem;
  display:flex;flex-direction:column;gap:1.2rem;min-width:155px;
}

.stat{text-align:center}
.stat-num{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:300;color:var(--orange);display:block;line-height:1}
.stat-label{font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(245,240,232,0.4);display:block;margin-top:0.2rem}
.stat-divider{height:1px;background:rgba(255,255,255,0.07)}

/* =====================
   MARQUEE
===================== */
.marquee-wrap{background:var(--blue);padding:0.85rem 0;overflow:hidden}
.marquee-track{display:flex;gap:3rem;animation:marquee 22s linear infinite;white-space:nowrap}
.marquee-track span{font-size:0.68rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--orange);flex-shrink:0}
.marquee-track span.dot{color:rgba(240,120,32,0.3)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* =====================
   SECTIONS
===================== */
section{padding:5rem 2.5rem}
.section-tag{font-size:0.64rem;letter-spacing:0.26em;text-transform:uppercase;color:var(--orange);margin-bottom:0.7rem}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,5vw,3rem);font-weight:400;line-height:1.15;color:var(--dark);margin-bottom:0.6rem}
.section-title em{font-style:italic;color:var(--blue)}
.section-sub{font-size:0.88rem;color:var(--muted);line-height:1.75;font-weight:300;max-width:480px;margin-bottom:3rem}

/* =====================
   TRIPS — Magazine grid
   TRIP IMAGES: 800x500px JPG
===================== */
.trips-section{background:var(--dark);padding:5rem 2.5rem}
.trips-section .section-title{color:var(--cream)}
.trips-section .section-title em{color:var(--orange)}
.trips-section .section-sub{color:rgba(245,240,232,0.55)}

.trips-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:1.5rem}

.trip-card-featured{
  position:relative;border-radius:10px;overflow:hidden;
  height:540px;cursor:pointer;display:block;
  transition:transform 0.3s;
}
.trip-card-featured:hover{transform:scale(1.01)}
.trip-card-featured .card-img{position:absolute;inset:0;background:linear-gradient(135deg,#2C4A3E,#0f2418)}
.trip-card-featured .card-img img{width:100%;height:100%;object-fit:cover;opacity:0.75;transition:transform 0.5s}
.trip-card-featured:hover .card-img img{transform:scale(1.04)}
.trip-card-featured .card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,20,35,0.97) 0%,rgba(10,20,35,0.15) 55%,transparent 80%)}
.trip-card-featured .card-body{position:absolute;bottom:0;left:0;right:0;padding:2rem}

.trip-card-small{
  position:relative;border-radius:10px;overflow:hidden;
  height:255px;cursor:pointer;display:block;transition:transform 0.3s;
}
.trip-card-small:hover{transform:scale(1.01)}
.trip-card-small .card-img{position:absolute;inset:0;background:linear-gradient(135deg,#4a2c1a,#2C1810)}
.trip-card-small .card-img img{width:100%;height:100%;object-fit:cover;opacity:0.7;transition:transform 0.5s}
.trip-card-small:hover .card-img img{transform:scale(1.04)}
.trip-card-small .card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,20,35,0.96) 0%,rgba(10,20,35,0.15) 60%,transparent 100%)}
.trip-card-small .card-body{position:absolute;bottom:0;left:0;right:0;padding:1.4rem}

.trip-card-coming{
  border-radius:10px;height:255px;
  border:1px dashed rgba(240,120,32,0.22);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:0.6rem;background:rgba(255,255,255,0.02);
}

/* FIX: Badges — solid dark background so always readable over any image */
.card-badges{display:flex;gap:0.4rem;flex-wrap:wrap;margin-bottom:0.8rem}
.badge{
  font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;
  padding:0.25rem 0.7rem;border-radius:2px;font-weight:700;
  /* Dark semi-opaque background ensures readability on any image */
  backdrop-filter:blur(4px);
}
.badge-orange{background:rgba(240,120,32,0.95);color:var(--white)}
.badge-outline{background:rgba(15,29,53,0.75);color:var(--orange);border:1px solid rgba(240,120,32,0.5)}

.card-title{font-family:'Cormorant Garamond',serif;font-size:1.9rem;font-weight:400;color:var(--cream);line-height:1.1;margin-bottom:0.3rem}
.trip-card-small .card-title{font-size:1.3rem}
.card-loc{font-size:0.74rem;color:rgba(245,240,232,0.42);margin-bottom:0.8rem;font-weight:300}

/* FIX: Date chips — solid background so readable on dark images */
.card-dates{display:flex;gap:0.4rem;flex-wrap:wrap;margin-bottom:1rem}
.card-date{
  background:rgba(15,29,53,0.8);
  border:1px solid rgba(240,120,32,0.4);
  color:var(--orange);
  font-size:0.66rem;font-weight:600;
  padding:0.22rem 0.65rem;border-radius:20px;
  backdrop-filter:blur(4px);
}

.card-footer{display:flex;align-items:flex-end;justify-content:space-between;padding-top:1rem;border-top:1px solid rgba(255,255,255,0.07)}
.card-price-label{font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,240,232,0.32);margin-bottom:0.18rem}
.card-price{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--orange);font-weight:400;line-height:1}
.trip-card-small .card-price{font-size:1.5rem}
.card-price small{font-family:'DM Sans',sans-serif;font-size:0.66rem;color:rgba(245,240,232,0.32);font-weight:300}
.card-seats{font-size:0.68rem;color:rgba(245,240,232,0.38);text-align:right}
.card-seats strong{display:block;font-family:'Cormorant Garamond',serif;font-size:1.2rem;color:var(--cream);font-weight:400}
.card-seats.low strong{color:#ff9f43}

.card-btn{display:block;width:100%;background:var(--orange);color:var(--white);padding:0.85rem;font-size:0.75rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;text-align:center;border-radius:4px;margin-top:1rem;transition:background 0.2s}
.card-btn:hover{background:#d96a18;color:var(--white)}
.card-btn.sold{background:rgba(255,255,255,0.08);color:rgba(245,240,232,0.3);cursor:not-allowed}

/* =====================
   PHOTO STRIP
   IMAGES: 400x250px JPG each
===================== */
.photo-strip{display:grid;grid-template-columns:repeat(4,1fr);height:200px;gap:3px;overflow:hidden}
.photo-strip-item{overflow:hidden;position:relative;cursor:pointer}
.photo-strip-item img{width:100%;height:100%;object-fit:cover;filter:brightness(0.8) saturate(1.1);transition:transform 0.5s}
.photo-strip-item:hover img{transform:scale(1.08)}
.photo-strip-caption{position:absolute;bottom:0;left:0;right:0;padding:0.7rem;background:linear-gradient(to top,rgba(10,20,35,0.85),transparent);font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(245,240,232,0.65)}

/* =====================
   WHY SECTION
===================== */
.why-section{background:var(--cream)}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border:1px solid var(--border);margin-top:2rem}
.why-item{background:var(--cream);padding:2rem 1.5rem}
.why-num{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;color:var(--orange);line-height:1;margin-bottom:0.5rem}
.why-label{font-size:0.8rem;font-weight:600;color:var(--dark);margin-bottom:0.4rem}
.why-desc{font-size:0.78rem;color:var(--muted);line-height:1.65;font-weight:300}

/* =====================
   TESTIMONIALS
===================== */
.testi-section{background:var(--white)}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.5rem}
.testi-card{background:var(--cream);border:1px solid var(--border);padding:1.6rem;border-radius:8px}
.stars{color:var(--orange);font-size:0.78rem;margin-bottom:0.8rem;letter-spacing:0.1em}
.testi-quote{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-style:italic;color:var(--dark);line-height:1.65;margin-bottom:1.2rem}
.testi-author{display:flex;align-items:center;gap:0.8rem}
.testi-avatar{width:40px;height:40px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;font-size:0.75rem;color:var(--orange);font-weight:600;flex-shrink:0}
.testi-name{font-size:0.82rem;font-weight:600;color:var(--dark)}
.testi-meta{font-size:0.7rem;color:var(--muted);font-weight:300}

/* =====================
   ABOUT
===================== */
.about-section{background:var(--blue)}
.about-section .section-title{color:var(--cream)}
.about-section .section-title em{color:var(--orange)}
.about-section .section-sub{color:rgba(245,240,232,0.6);max-width:100%}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.06);margin-top:2rem}
.pillar{background:var(--blue);padding:1.8rem 1.4rem}
.pillar-icon{font-size:1.6rem;margin-bottom:0.8rem}
.pillar-title{font-size:0.82rem;font-weight:600;color:var(--orange);margin-bottom:0.4rem}
.pillar-text{font-size:0.76rem;color:rgba(245,240,232,0.45);line-height:1.65;font-weight:300}

/* =====================
   FAQ — FIX: full width, centered, not left-aligned
===================== */
.faq-section{background:var(--dark)}
.faq-section .section-tag{color:var(--orange)}
.faq-section .section-title{color:var(--cream)}
.faq-section .section-title em{color:var(--orange)}
.faq-section .section-sub{color:rgba(245,240,232,0.45)}
.faq-list{margin-top:2rem;width:100%}
.faq-item{border-bottom:1px solid rgba(255,255,255,0.06);width:100%}
.faq-q{
  width:100%;background:none;border:none;text-align:left;
  padding:1.2rem 0;font-family:'DM Sans',sans-serif;
  font-size:0.9rem;font-weight:400;color:var(--cream);
  cursor:pointer;display:flex;justify-content:space-between;
  align-items:center;gap:1rem;transition:color 0.2s;
}
.faq-q:hover{color:var(--orange)}
.faq-icon{flex-shrink:0;width:22px;height:22px;border:1px solid rgba(240,120,32,0.35);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.85rem;color:var(--orange);transition:transform 0.3s}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.faq-a{font-size:0.84rem;color:rgba(245,240,232,0.5);line-height:1.75;font-weight:300;max-height:0;overflow:hidden;transition:max-height 0.35s ease,padding 0.3s ease}
.faq-item.open .faq-a{max-height:220px;padding-bottom:1rem}

/* =====================
   SINGLE TRIP — CAROUSEL
   IMAGES: 1100x500px JPG
   Upload via Trip Gallery field in dashboard
===================== */
.trip-carousel{position:relative;height:480px;overflow:hidden;background:var(--dark)}
.carousel-track{display:flex;height:100%;transition:transform 0.5s cubic-bezier(0.4,0,0.2,1)}
.carousel-slide{min-width:100%;height:100%;position:relative;flex-shrink:0}
.carousel-slide img{width:100%;height:100%;object-fit:cover;filter:brightness(0.82)}
.carousel-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(15,29,53,0.92) 0%,transparent 50%)}
.carousel-info{position:absolute;bottom:0;left:0;right:0;padding:2rem 2.5rem;display:flex;align-items:flex-end;justify-content:space-between}
.carousel-trip-name{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:300;color:var(--cream);line-height:1.05;margin-bottom:0.4rem}
.carousel-loc{font-size:0.8rem;color:rgba(245,240,232,0.5);font-weight:300}
.carousel-badges{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:0.8rem}
.carousel-nav{display:flex;gap:0.5rem}
.carousel-btn{width:40px;height:40px;background:rgba(245,240,232,0.12);border:1px solid rgba(245,240,232,0.2);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--cream);font-size:1rem;transition:background 0.2s}
.carousel-btn:hover{background:var(--orange);border-color:var(--orange)}
.carousel-dots{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);display:flex;gap:0.4rem}
.carousel-dot{width:6px;height:6px;border-radius:50%;background:rgba(245,240,232,0.3);cursor:pointer;transition:background 0.2s,transform 0.2s}
.carousel-dot.active{background:var(--orange);transform:scale(1.3)}

/* =====================
   SINGLE TRIP CONTENT
===================== */
.single-trip-content{
  display:grid;
  grid-template-columns:1fr 360px;
  gap:3rem;
  padding:3rem 2.5rem;
  background:var(--cream);
  align-items:start;
}

.trip-detail-section{margin-bottom:2.5rem}

.trip-section-title{
  font-family:'Cormorant Garamond',serif;
  font-size:1.5rem;font-weight:400;
  color:var(--dark);margin-bottom:1rem;
  padding-bottom:0.5rem;
  border-bottom:2px solid var(--orange);
}

/* FIX: Quick info grid — proper border between rows */
.trip-quick-info{
  display:grid;grid-template-columns:repeat(3,1fr);
  border:1px solid var(--border);
  margin-bottom:2.5rem;
  border-radius:6px;
  overflow:hidden;
}

.trip-info-item{
  background:var(--white);
  padding:1.2rem;
  display:flex;flex-direction:column;gap:0.3rem;
  /* Borders on all sides for proper grid separation */
  border-right:1px solid var(--border);
  border-bottom:1px solid var(--border);
}

.trip-info-item:nth-child(3n){border-right:none}
.trip-info-item:nth-last-child(-n+3){border-bottom:none}
/* Handle cases where last row has fewer than 3 items */
.trip-info-item:last-child{border-right:none;border-bottom:none}

.trip-info-icon{font-size:1.3rem;margin-bottom:0.2rem}
.trip-info-label{font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);font-weight:500}
.trip-info-value{font-size:0.88rem;font-weight:600;color:var(--dark)}
.trip-info-sub{font-size:0.75rem;color:var(--muted);font-weight:300}

/* ITINERARY */
.trip-itinerary{list-style:none}
.trip-itinerary li{padding:0.9rem 0;border-bottom:1px solid var(--border);font-size:0.88rem;color:var(--dark);font-weight:300;line-height:1.65;display:flex;gap:1rem}
.day-label{font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);flex-shrink:0;padding-top:0.15rem;min-width:44px}

/* INCLUSIONS */
.inclusions-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.4rem;margin-top:0.8rem}
.inclusion-item,.exclusion-item{font-size:0.82rem;color:var(--dark);padding:0.45rem 0;display:flex;align-items:flex-start;gap:0.6rem;font-weight:300;line-height:1.5}
.inclusion-item::before{content:'✓';color:var(--orange);font-weight:700;flex-shrink:0;margin-top:0.05rem}
.exclusion-item{color:var(--muted)}
.exclusion-item::before{content:'✗';color:#e74c3c;font-weight:700;flex-shrink:0;margin-top:0.05rem}

.carry-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.4rem;margin-top:0.8rem}
.carry-item{font-size:0.82rem;color:var(--dark);padding:0.4rem 0;display:flex;align-items:center;gap:0.6rem;font-weight:300}
.carry-item::before{content:'📦';font-size:0.75rem;flex-shrink:0}

/* =====================
   BOOKING BOX — sticky, full height
===================== */
.trip-booking-col{position:sticky;top:90px;align-self:start}

.trip-booking-box{background:var(--dark);border-radius:10px;border:1px solid rgba(240,120,32,0.2);overflow:hidden}

.booking-box-header{background:rgba(240,120,32,0.08);border-bottom:1px solid rgba(240,120,32,0.15);padding:1.4rem 1.6rem}
.booking-box-title{font-family:'Cormorant Garamond',serif;font-size:1.4rem;color:var(--cream);margin-bottom:0.2rem;font-weight:500;text-transform:uppercase;letter-spacing:0.05em}
.booking-box-sub{font-size:0.76rem;color:rgba(245,240,232,0.45);font-weight:300}

.booking-box-body{padding:1.6rem}

.price-block{margin-bottom:1.4rem;padding-bottom:1.4rem;border-bottom:1px solid rgba(255,255,255,0.07)}
.price-label{font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(245,240,232,0.35);margin-bottom:0.2rem}
.price-main{font-family:'Cormorant Garamond',serif;font-size:2.4rem;color:var(--orange);font-weight:400;line-height:1}
.price-main small{font-family:'DM Sans',sans-serif;font-size:0.7rem;color:rgba(245,240,232,0.35);font-weight:300}
.price-deposit{font-size:0.82rem;color:rgba(245,240,232,0.6);margin-top:0.4rem;font-weight:300}
.price-deposit strong{color:var(--orange);font-weight:500}

.seats-block{display:flex;align-items:center;justify-content:space-between;padding:0.9rem 1rem;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.06);border-radius:6px;margin-bottom:1.4rem}
.seats-label{font-size:0.72rem;color:rgba(245,240,232,0.45);font-weight:300}
.seats-val{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--cream);font-weight:400}
.seats-val.low{color:#ff9f43}
.seats-val.sold{color:#e74c3c}

/* WooCommerce date rows with individual book buttons */
.dates-block{margin-bottom:1.4rem}
.dates-block-label{font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:rgba(245,240,232,0.38);margin-bottom:0.7rem}

.date-option{
  display:flex;align-items:center;justify-content:space-between;
  padding:0.7rem 0.9rem;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(240,120,32,0.15);
  border-radius:5px;margin-bottom:0.5rem;
  gap:0.5rem;
}

.date-option-left{flex:1}
.date-option-text{font-family:'Cormorant Garamond',serif;font-size:1rem;color:var(--cream);font-weight:400;display:block}
.date-option-seats{font-size:0.65rem;color:rgba(245,240,232,0.38);font-weight:300;display:block;margin-top:0.1rem}
.date-option-seats.low{color:#ff9f43}

.date-book-btn{
  flex-shrink:0;
  background:var(--orange);color:var(--white);
  padding:0.45rem 0.9rem;
  font-size:0.68rem;font-weight:600;
  letter-spacing:0.07em;text-transform:uppercase;
  border-radius:3px;white-space:nowrap;
  transition:background 0.2s;display:inline-block;
}
.date-book-btn:hover{background:#d96a18;color:var(--white)}
.date-book-btn.sold{background:rgba(255,255,255,0.07);color:rgba(245,240,232,0.3);cursor:not-allowed;pointer-events:none}

.booking-divider{height:1px;background:rgba(255,255,255,0.06);margin:1.2rem 0}

.booking-trust{display:flex;flex-direction:column;gap:0.5rem}
.trust-item{display:flex;align-items:center;gap:0.6rem;font-size:0.76rem;color:rgba(245,240,232,0.45);font-weight:300}
.trust-icon{font-size:0.85rem;flex-shrink:0}

.trip-back{background:var(--cream);padding:1.2rem 2.5rem;border-top:1px solid var(--border)}
.trip-back a{font-size:0.8rem;color:var(--blue);font-weight:500;letter-spacing:0.05em;transition:color 0.2s}
.trip-back a:hover{color:var(--orange)}

/* =====================
   FOOTER
   FOOTER LOGO IMAGE: 160x42px PNG white version transparent background
===================== */
.triplio-footer{background:var(--dark);border-top:2px solid var(--orange);padding:3rem 2.5rem;text-align:center}

.footer-logo{
  font-family:'Cormorant Garamond',serif;
  font-size:2rem;font-weight:300;
  letter-spacing:0.18em;color:var(--cream);
  margin-bottom:0.4rem;
  display:flex;align-items:center;justify-content:center;
}

/* FOOTER LOGO IMAGE: 160x42px PNG white transparent */
.footer-logo img{
  height:42px;
  width:auto;
  max-width:160px;
  object-fit:contain;
  filter:brightness(0) invert(1); /* Makes any logo white */
}

.footer-tagline{font-size:0.68rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);margin-bottom:1.8rem}
.footer-links{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem}
.footer-links a{font-size:0.76rem;color:rgba(245,240,232,0.35);transition:color 0.2s}
.footer-links a:hover{color:var(--orange)}
.footer-copy{font-size:0.67rem;color:rgba(245,240,232,0.18)}

.wa-float{position:fixed;bottom:1.8rem;right:1.8rem;z-index:90;width:54px;height:54px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 4px 24px rgba(37,211,102,0.45);transition:transform 0.2s}
.wa-float:hover{transform:scale(1.1)}

.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal.visible{opacity:1;transform:none}

/* =====================
   RESPONSIVE — TABLET
===================== */
@media(max-width:900px){
  .trips-grid{grid-template-columns:1fr}
  .trip-card-featured{height:400px}
  .photo-strip{grid-template-columns:repeat(2,1fr);height:260px}
  .why-grid{grid-template-columns:1fr 1fr}
  .testi-grid{grid-template-columns:1fr 1fr}
  .pillars{grid-template-columns:1fr 1fr}
  .hero-content{grid-template-columns:1fr}
  .hero-stats{flex-direction:row;min-width:unset;gap:1.5rem}
  .single-trip-content{grid-template-columns:1fr;padding:2rem 1.5rem}
  .trip-booking-col{position:static}
  .trip-quick-info{grid-template-columns:1fr 1fr}
  .trip-info-item:nth-child(3n){border-right:1px solid var(--border)}
  .trip-info-item:nth-child(2n){border-right:none}
  .inclusions-grid,.carry-grid{grid-template-columns:1fr}
  section{padding:3.5rem 1.5rem}
  .trips-section,.triplio-footer{padding:3.5rem 1.5rem}
  .nav-main,.nav-top{padding-left:1.5rem;padding-right:1.5rem}
  .trip-carousel{height:340px}
  .carousel-info{padding:1.5rem}
}

/* =====================
   RESPONSIVE — MOBILE
   FIX: Hero content not hidden behind nav
===================== */
@media(max-width:600px){
  .nav-links{display:none}
  .nav-top-left{display:none}

  /* FIX: Hero padding top so text not behind nav */
  .triplio-hero{min-height:100svh}
  .hero-content{
    padding:6rem 1.2rem 3rem;
    grid-template-columns:1fr;
  }
  .triplio-hero h1{font-size:2.4rem}
  .hero-stats{flex-direction:row;gap:1rem;padding:1rem}
  .stat-num{font-size:1.6rem}

  .why-grid{grid-template-columns:1fr 1fr}
  .testi-grid{grid-template-columns:1fr}
  .pillars{grid-template-columns:1fr 1fr}
  .photo-strip{height:180px}
  .photo-strip-caption{display:none}

  section{padding:3rem 1rem}
  .trips-section{padding:3rem 1rem}
  .single-trip-content{padding:1.5rem 1rem}
  .trip-quick-info{grid-template-columns:1fr 1fr}
  .trip-info-item:nth-child(2n){border-right:none}
  .trip-info-item:nth-child(3n){border-right:1px solid var(--border)}

  .nav-main{padding:0.7rem 1rem}
  .nav-top{padding:0.5rem 1rem}
  .triplio-footer{padding:2rem 1rem}
  .trip-carousel{height:280px}
  .carousel-trip-name{font-size:1.6rem}
  .carousel-info{flex-direction:column;align-items:flex-start;gap:0.8rem;padding:1.2rem}

  /* FIX: Trip card badges visible on mobile */
  .card-badges{margin-bottom:0.6rem}
  .card-dates .card-date{font-size:0.6rem;padding:0.18rem 0.5rem}

  .trip-back{padding:1rem}
  .booking-box-title{font-size:1.1rem}
}
