:root {
  --cream: #F5E8D4;
  --dark: #1a1a1a;
  --forest: #2D5016;
  --sage: #7A9E7E;
  --teal: #4DB8B8;
  --earth: #8B6914;
  --stone: #6B6B6B;
  --snow: #FAFAF8;
  --warm-white: #FDF9F3;
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Inter',sans-serif; color:var(--dark); background:var(--warm-white); }
h1,h2,h3,h4 { font-family:'Cormorant Garamond',serif; }

/* HERO */
.hero {
  min-height:100vh;
  background: linear-gradient(180deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 50%, rgba(45,80,22,0.4) 100%),
    url('https://media1.thrillophilia.com/filestore/znvmu2h9bvb0u5baa4fkgfs9zzyq_Downpic.cc-image435509078.jpg') center/cover no-repeat;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; color:#fff; padding:40px 20px;
}
.hero-logo { width:140px; height:140px; border-radius:50%; border:3px solid var(--cream); margin-bottom:24px; object-fit:cover; }
.hero h1 { font-size:3.2em; font-weight:700; letter-spacing:1px; text-shadow:0 2px 20px rgba(0,0,0,0.5); }
.hero .tagline { font-size:1.2em; font-weight:300; margin-top:12px; opacity:0.9; font-style:italic; }
.hero .cta { margin-top:32px; display:inline-block; background:var(--teal); color:#fff; padding:14px 36px; border-radius:30px; text-decoration:none; font-weight:500; font-size:1em; transition:all 0.3s; }
.hero .cta:hover { background:var(--forest); transform:translateY(-2px); }

/* NAV */
nav { position:fixed; top:0; width:100%; background:rgba(26,26,26,0.9); backdrop-filter:blur(10px); z-index:100; padding:14px 30px; display:flex; align-items:center; justify-content:space-between; }
nav .brand { color:var(--cream); font-family:'Cormorant Garamond',serif; font-size:1.3em; font-weight:600; text-decoration:none; }
nav .links a { color:#eee; text-decoration:none; margin-left:24px; font-size:0.85em; font-weight:400; letter-spacing:0.5px; transition:color 0.3s; }
nav .links a:hover { color:var(--teal); }

/* SECTIONS */
section { padding:80px 20px; max-width:1100px; margin:0 auto; }
.section-title { font-size:2.4em; text-align:center; margin-bottom:12px; color:var(--forest); }
.section-subtitle { text-align:center; color:var(--stone); font-size:1em; margin-bottom:50px; }

/* ABOUT */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.about-text p { font-size:0.95em; line-height:1.8; color:#444; margin-bottom:16px; }
.about-img { border-radius:16px; width:100%; height:360px; object-fit:cover; }

/* TREKS */
.trek-cards { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.trek-card { background:#fff; border-radius:16px; overflow:hidden; box-shadow:0 4px 20px rgba(0,0,0,0.08); transition:transform 0.3s, box-shadow 0.3s; }
.trek-card:hover { transform:translateY(-4px); box-shadow:0 8px 30px rgba(0,0,0,0.12); }
.trek-card img { width:100%; height:240px; object-fit:cover; }
.trek-card-body { padding:24px; }
.trek-card h3 { font-size:1.6em; margin-bottom:8px; }
.trek-title-link { color:var(--forest); text-decoration:none; transition:color 0.3s; }
.trek-title-link:hover { color:var(--teal); text-decoration:underline; }
.trek-meta { display:flex; gap:16px; font-size:0.85em; color:var(--stone); margin-bottom:12px; flex-wrap:wrap; }
.trek-meta span { display:flex; align-items:center; gap:4px; }
.trek-card p { font-size:0.9em; line-height:1.7; color:#555; margin-bottom:16px; }
.trek-price { font-size:1.4em; font-weight:700; color:var(--earth); }
.trek-price small { font-size:0.55em; font-weight:400; color:var(--stone); }
.trek-actions { display:flex; gap:12px; margin-top:14px; flex-wrap:wrap; }
.trek-btn { display:inline-block; background:var(--forest); color:#fff; padding:10px 24px; border-radius:24px; text-decoration:none; font-size:0.85em; font-weight:500; transition:background 0.3s; }
.trek-btn:hover { background:var(--teal); }
.trek-btn-explore { background:transparent; color:var(--forest); border:2px solid var(--forest); }
.trek-btn-explore:hover { background:var(--forest); color:#fff; }

/* ITINERARY (detail pages) */
.itinerary { background:var(--cream); border-radius:16px; padding:40px; margin-top:40px; }
.itin-day { margin-bottom:24px; padding-left:20px; border-left:3px solid var(--sage); }
.itin-day h4 { font-size:1.2em; color:var(--forest); margin-bottom:6px; }
.itin-day p { font-size:0.9em; line-height:1.7; color:#555; }

/* INCLUSIONS */
.inclusions-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.inc-box { background:#fff; border-radius:12px; padding:24px; box-shadow:0 2px 12px rgba(0,0,0,0.06); }
.inc-box h4 { font-size:1.1em; color:var(--forest); margin-bottom:12px; }
.inc-box li { font-size:0.88em; line-height:1.8; color:#555; margin-left:16px; }

/* GALLERY */
.gallery-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.gallery-grid img { width:100%; height:200px; object-fit:cover; border-radius:10px; transition:transform 0.3s; cursor:pointer; }
.gallery-grid img:hover { transform:scale(1.03); }

/* DETAIL PAGE HERO */
.detail-hero {
  min-height:60vh;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  text-align:center; color:#fff; padding:40px 20px;
  background-size:cover; background-position:center;
}
.detail-hero h1 { font-size:3.2em; text-shadow:0 2px 20px rgba(0,0,0,0.6); }
.detail-hero .trek-meta { justify-content:center; color:#ddd; margin-top:16px; font-size:1.1em; gap:20px; }
.back-link { display:inline-block; margin:30px 0; color:var(--forest); text-decoration:none; font-weight:500; font-size:0.9em; }
.back-link:hover { color:var(--teal); }

/* CONTACT */
.contact-section { background:var(--dark); color:#fff; padding:80px 20px; text-align:center; max-width:none; }
.contact-section h2 { color:var(--cream); }
.contact-section p { color:#ccc; margin-top:12px; font-size:0.95em; }
.contact-links { margin-top:30px; display:flex; justify-content:center; gap:20px; flex-wrap:wrap; }
.contact-links a { color:var(--teal); text-decoration:none; font-size:0.9em; padding:10px 20px; border:1px solid var(--teal); border-radius:24px; transition:all 0.3s; }
.contact-links a:hover { background:var(--teal); color:#fff; }

/* FOOTER */
footer { background:#111; color:#888; text-align:center; padding:24px; font-size:0.8em; }
footer a { color:var(--teal); text-decoration:none; }

/* RESPONSIVE */
@media(max-width:768px) {
  .hero h1, .detail-hero h1 { font-size:2.2em; }
  .about-grid, .inclusions-grid { grid-template-columns:1fr; }
  .trek-cards { grid-template-columns:1fr !important; }
  .gallery-grid { grid-template-columns:1fr 1fr; }
  nav .links { display:none; }
}
