:root{
  --green:#143d2b;
  --green-2:#1d6a46;
  --green-3:#e7f3ea;
  --gold:#c99b4d;
  --gold-2:#f1d49b;
  --ink:#1e2b27;
  --muted:#66736e;
  --cream:#fffaf0;
  --white:#ffffff;
  --shadow:0 24px 70px rgba(21,47,39,.14);
  --radius:24px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#fffdf8;line-height:1.6}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,92vw);margin-inline:auto}
.center{text-align:center;margin-top:34px}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 8px 35px rgba(18,61,43,.08)}
.nav-wrap{height:86px;display:flex;align-items:center;gap:24px;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;min-width:245px}
.brand img{width:76px;height:70px;object-fit:contain}
.brand strong{display:block;font-size:18px;line-height:1;color:var(--green);letter-spacing:.3px;text-transform:uppercase}
.brand small{font-family:Georgia,serif;font-style:italic;color:var(--gold);font-size:13px;white-space:nowrap}
.main-nav{display:flex;align-items:center;gap:26px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#263c35}
.main-nav a{position:relative;padding:8px 0}
.main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--gold);transition:.25s}
.main-nav a:hover::after{right:0}
.header-actions{display:flex;align-items:center;gap:14px}
.phone{font-weight:800;color:var(--green);white-space:nowrap;font-size:14px}
.nav-toggle{display:none;background:var(--green);color:white;border:0;border-radius:12px;width:44px;height:44px;font-size:23px}

.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:13px;padding:13px 20px;font-weight:800;letter-spacing:.2px;cursor:pointer;transition:.25s ease;text-transform:uppercase;font-size:13px}
.btn:hover{transform:translateY(-2px)}
.btn-dark{background:var(--green);color:white;box-shadow:0 14px 30px rgba(20,61,43,.22)}
.btn-gold{background:linear-gradient(135deg,var(--gold),#e7bf71);color:white;box-shadow:0 18px 36px rgba(201,155,77,.28)}
.btn-outline{border:1px solid rgba(255,255,255,.65);color:white;background:rgba(255,255,255,.12)}

.hero{position:relative;min-height:780px;padding:1px 0 120px;overflow:visible}
.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,35,45,.82),rgba(8,44,46,.42),rgba(8,40,35,.25)),url('../images/hero-kerala.jpg') center/cover no-repeat;z-index:-1}
.hero-bg::after{content:"";position:absolute;inset:auto 0 0;height:160px;background:linear-gradient(180deg,transparent,#fffdf8)}
.hero-content{min-height:560px;display:flex;align-items:center;padding-top:70px;color:white}
.hero-copy{max-width:670px}
.eyebrow{display:inline-flex;color:var(--gold-2);font-weight:800;letter-spacing:2px;text-transform:uppercase;font-size:12px;margin-bottom:12px}
.eyebrow.dark{color:var(--gold)}
h1{font-size:clamp(44px,7vw,88px);line-height:.96;margin:0 0 22px;font-weight:900;letter-spacing:-2.5px;text-transform:uppercase}
h1 span{display:block;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;text-transform:none;letter-spacing:0;color:var(--gold-2);font-size:clamp(30px,4.6vw,54px);margin-top:12px}
.lead{font-size:18px;max-width:670px;color:#eef7f2;margin-bottom:28px}
.trust-row{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 28px}
.trust-row div{display:grid;place-items:center;text-align:center;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);border-radius:18px;padding:14px 20px;min-width:145px;backdrop-filter:blur(8px)}
.trust-row b{font-size:15px}.trust-row small{font-size:12px;color:#dceee8}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap}

.booking-card{position:relative;margin-top:-105px;background:rgba(255,255,255,.96);border-radius:22px;box-shadow:var(--shadow);padding:14px;border:1px solid rgba(20,61,43,.08)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #edf0e8;padding-bottom:12px;margin-bottom:10px}
.tab{border:0;border-radius:12px;background:#f5f2e8;color:#4a584f;padding:11px 15px;font-weight:800;font-size:12px;text-transform:uppercase;cursor:pointer}
.tab.active,.tab:hover{background:var(--green);color:white}
.search-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr auto;gap:12px;align-items:end}
.search-grid label,.enquiry-form label{display:grid;gap:6px;color:#4e5c55;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.6px}
.search-grid input,.search-grid select,.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;border:1px solid #e6e7df;border-radius:12px;background:#fbfaf6;padding:13px 12px;color:#56615c;outline:0}
.search-grid input:focus,.search-grid select:focus,.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(201,155,77,.12)}

.section{padding:92px 0}
.section-title{text-align:center;max-width:710px;margin:0 auto 38px}
.section-title span{font-family:Georgia,serif;font-style:italic;color:var(--gold);font-size:19px}
.section-title h2,.why h2,.contact h2,.family-copy h2{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:6px 0 12px;color:var(--green);letter-spacing:-1px}
.section-title p{color:var(--muted);margin:0}.section-title.compact{margin-bottom:26px}

.destination-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.package-card{background:white;border:1px solid #eef0e8;border-radius:22px;overflow:hidden;box-shadow:0 18px 40px rgba(24,58,44,.08);transition:.25s ease}
.package-card:hover{transform:translateY(-7px);box-shadow:0 25px 58px rgba(24,58,44,.16)}
.package-card img{height:190px;width:100%;object-fit:cover}
.card-body{padding:18px}
.card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.card-top h3{font-size:17px;line-height:1.2;margin:0 0 8px;color:#203b32}.card-top span{font-size:12px;color:var(--gold);font-weight:900;white-space:nowrap}
.card-body p{color:#6d7972;font-size:14px;min-height:66px;margin:0 0 16px}
.price-row{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #eef0e8;padding-top:14px}
.price-row span{color:var(--gold);font-weight:900;font-size:16px}.price-row button{border:0;background:var(--green-3);color:var(--green);font-weight:900;border-radius:999px;padding:8px 13px;cursor:pointer}
.price-row button:hover{background:var(--green);color:white}

.services{background:linear-gradient(180deg,#fffdf8,#f4f7ed)}
.service-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:14px}
.service-card{background:rgba(255,255,255,.76);border:1px solid #edf0e7;border-radius:20px;min-height:130px;display:grid;place-items:center;text-align:center;padding:18px;box-shadow:0 14px 40px rgba(25,70,48,.06)}
.service-card span{font-size:34px;display:block;margin-bottom:10px}.service-card h3{font-size:13px;line-height:1.25;text-transform:uppercase;color:var(--green);margin:0}

.family-cta{padding:20px 0 70px;background:#f4f7ed}
.family-card{display:grid;grid-template-columns:1.05fr 1.3fr;background:white;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid #eef0e8}
.family-image{min-height:340px;background:url('../images/family.jpg') center/cover no-repeat}
.family-copy{padding:44px}.family-copy span{font-family:Georgia,serif;font-style:italic;color:var(--gold);font-size:19px}.family-copy em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}.family-copy p{color:var(--muted)}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}
.benefits div{background:#f8f5ec;border-radius:16px;padding:14px;text-align:center}.benefits b{display:block;color:var(--green)}.benefits small{font-size:12px;color:#6b7770}

.stats-strip{background:linear-gradient(135deg,#122f25,#1c4737);color:white;padding:28px 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}.stats-grid strong{display:block;font-size:34px;color:var(--gold-2);line-height:1}.stats-grid span{text-transform:uppercase;font-size:12px;letter-spacing:1.3px;color:#d7e9df}

.why{background:#fffdf8}.why-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}.why p{color:var(--muted);font-size:17px}.check-list{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}.check-list li{background:white;border:1px solid #edf0e8;border-radius:14px;padding:13px 15px;font-weight:800;color:#2d463d}.check-list li::before{content:"✓";color:var(--gold);font-weight:900;margin-right:10px}
.quote-card{background:linear-gradient(180deg,#f8f5ec,#ffffff);border:1px solid #edf0e8;border-radius:var(--radius);padding:26px;text-align:center;box-shadow:var(--shadow)}.quote-card img{max-width:250px;margin:0 auto 14px}.quote-card blockquote{font-family:Georgia,serif;font-style:italic;color:#496156;font-size:20px;margin:0}

.contact{background:linear-gradient(180deg,#f4f7ed,#fffdf8)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:start}.contact p{color:var(--muted)}.contact-card{background:white;border:1px solid #edf0e8;border-radius:20px;padding:22px;box-shadow:0 16px 42px rgba(24,58,44,.07)}.contact-card p{margin:8px 0}.contact-card a{color:var(--green);font-weight:900}
.enquiry-form{background:white;border:1px solid #edf0e8;border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.enquiry-form .full{grid-column:1/-1}.enquiry-form textarea{resize:vertical}

.site-footer{background:#0f2c22;color:#dbe8df;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:38px}.site-footer img{width:115px;margin-bottom:10px}.site-footer h3{color:white;margin:0 0 14px}.site-footer a{display:block;color:#dbe8df;margin:7px 0}.site-footer a:hover{color:var(--gold-2)}.site-footer p{color:#bdccc3}.copyright{text-align:center;margin-top:40px;padding:18px;background:#0a2119;color:#a9bbb0;font-size:14px}

@media (max-width:1050px){
  .header-actions{display:none}.main-nav{position:absolute;inset:86px 0 auto 0;background:white;display:none;flex-direction:column;align-items:flex-start;padding:22px 5vw;box-shadow:0 20px 50px rgba(20,61,43,.12)}.main-nav.open{display:flex}.nav-toggle{display:block}.search-grid{grid-template-columns:repeat(2,1fr)}.search-grid .btn{grid-column:1/-1}.destination-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(4,1fr)}.hero{min-height:720px}.hero-content{min-height:500px}.family-card,.why-grid,.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .nav-wrap{height:76px}.brand{min-width:auto}.brand img{width:62px;height:58px}.brand strong{font-size:14px}.brand small{font-size:11px}.hero{padding-bottom:85px}.hero-content{padding-top:20px;min-height:540px}.lead{font-size:16px}.trust-row div{min-width:calc(50% - 8px);padding:12px}.booking-card{margin-top:-70px;padding:10px}.tabs{overflow-x:auto;flex-wrap:nowrap}.tab{white-space:nowrap}.search-grid,.destination-grid,.benefits,.stats-grid,.enquiry-form,.footer-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.section{padding:68px 0}.package-card img{height:210px}.family-copy{padding:28px}.footer-grid{gap:22px}h1{letter-spacing:-1.2px}
}

/* === Green Way Holidays: horizontal header logo update ===
   Replaces the previous overlapping logo style.
   Use the horizontal logo image as: assets/images/greenway-logo-header.png */

.site-header {
  overflow: visible;
}

.nav-wrap {
  position: relative;
  height: 96px;
  min-height: 96px;
  display: grid;
  grid-template-columns: minmax(300px, 350px) 1fr auto;
  align-items: center;
  gap: 24px;
  justify-content: initial;
}

/* Horizontal logo inside the header */
.brand {
  position: static;
  z-index: 10;
  width: 350px;
  min-width: 0;
  height: 82px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}

.brand img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
}

/* Hide duplicate text because the horizontal logo already contains name and tagline */
.brand span,
.brand strong,
.brand small {
  display: none !important;
}

/* Center menu in the available header space */
.main-nav {
  position: static;
  margin-left: 0;
  transform: none;
  justify-content: center;
  gap: 22px;
  min-width: 0;
}

.header-actions {
  justify-self: end;
}

/* Compact desktop / landscape tablet */
@media (min-width:1051px) and (max-width:1180px) {
  .nav-wrap {
    grid-template-columns: 280px 1fr;
    gap: 18px;
  }

  .brand {
    width: 280px;
    height: 70px;
  }

  .main-nav {
    gap: 15px;
    font-size: 12px;
    letter-spacing: .35px;
  }

  .header-actions {
    display: none;
  }
}

/* Tablet and mobile dropdown menu */
@media (max-width:1050px) {
  .nav-wrap {
    height: 88px;
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .brand {
    position: static;
    width: 270px;
    height: 72px;
    min-width: 0;
  }

  .brand img {
    width: 100%;
    height: 100%;
  }

  .main-nav {
    position: absolute;
    inset: 88px 0 auto 0;
    margin-left: 0;
    left: auto;
    transform: none;
    justify-content: flex-start;
  }

  .nav-toggle {
    margin-left: auto;
  }
}

/* Small mobile */
@media (max-width:640px) {
  .nav-wrap {
    height: 76px;
    min-height: 76px;
  }

  .brand {
    width: 220px;
    height: 62px;
  }

  .main-nav {
    inset: 76px 0 auto 0;
  }
}

/* Very small screens */
@media (max-width:380px) {
  .brand {
    width: 190px;
    height: 56px;
  }
}
