/* ===Styles for all pages=== */
   
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--navy:#0d1b2a;--navy2:#132233;--gold:#c8872a;--gold2:#f0b04a;--cream:#f5ead6;--plum:#4a1530;--white:#ffffff;--text:#e8ddd0;--wa:#25D366;--radius:12px;--shadow:0 8px 40px rgba(0,0,0,0.45);}

html{scroll-behavior:smooth}
body{font-family:'Lato',sans-serif;background:var(--navy);color:var(--text);overflow-x:hidden;margin:0;padding:0;}

/* -- NAV (fixed, matches home page) -- */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:0 32px;height:64px;display:flex;align-items:center;justify-content:space-between;background:rgba(13,27,42,0.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(200,135,42,0.2);}
.nav-brand{font-family:'Dancing Script',cursive;font-size:1.5rem;color:var(--gold2);text-decoration:none;}
.nav-links{display:flex;gap:28px;list-style:none;}
.nav-links a{font-size:0.82rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--cream);text-decoration:none;opacity:0.8;transition:opacity 0.2s,color 0.2s;}
.nav-links a:hover{opacity:1;color:var(--gold2);}
.nav-cta{display:flex!important;align-items:center;gap:8px;background:var(--wa)!important;color:white!important;padding:8px 18px;border-radius:50px;opacity:1!important;}
.nav-cta:hover{background:#1ea952!important;transform:translateY(-1px)!important;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;}
.hamburger span{width:24px;height:2px;background:var(--cream);border-radius:2px;}
.mobile-menu{display:none;position:fixed;top:64px;left:0;right:0;background:rgba(13,27,42,0.97);backdrop-filter:blur(16px);padding:24px 32px;flex-direction:column;gap:20px;z-index:99;border-bottom:1px solid rgba(200,135,42,0.2);}
.mobile-menu.open{display:flex;}
.mobile-menu a{font-size:1rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--cream);text-decoration:none;}

/* -- HERO (matches home page) -- */

.hero{position:relative;height:80vh;display:flex;align-items:flex-start;overflow:hidden;padding-top:89px}
.hero-bg{position:absolute;inset:0;background-image:url('https://www.tablemountaintours.com/graphics/TM_Top1-M.png');background-size:cover;background-position:center top;transform:scale(1.04);transition:transform 8s ease}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(13,27,42,0.55) 0%,rgba(13,27,42,0.2) 55%,rgba(13,27,42,0.05) 100%),linear-gradient(to top,rgba(13,27,42,0.60) 0%,transparent 35%);}
.hero-content{position:relative;z-index:2;padding:0 48px 40px;width:100%;}
.hero-eyebrow{font-size:0.78rem;font-weight:700;letter-spacing:0.25em;text-transform:uppercase;color:var(--gold2);margin-bottom:10px;}
.hero-title{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,6vw,4.5rem);font-weight:900;line-height:1;color:var(--white);text-shadow:2px 4px 20px rgba(0,0,0,0.5);margin-bottom:6px;}
.hero-title em{font-style:italic;color:var(--gold2);}
.hero-subtitle{font-family:'Dancing Script',cursive;font-size:clamp(1.4rem,3vw,2.2rem);color:var(--gold2);}

/* -- PAGE BODY/WRAP -- */

/* Default: narrow content (articles, forms, legal-ish pages) */
.page-wrap{max-width:700px;margin:0 auto;padding:36px 24px 48px;}

/* Wider layout for tour detail pages */
.page-wrap--wide{max-width:900px;margin:0 auto;padding:48px 24px 64px;}

/* -- FOOTER -- */
footer{background:#070f18;padding:40px 48px;border-top:1px solid rgba(200,135,42,0.15);text-align:center;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.footer-brand{font-family:'Dancing Script',cursive;font-size:1.4rem;color:var(--gold2)}
.footer-copy{font-size:0.78rem;opacity:0.4;color:var(--cream);text-align: center}
.footer-wa{display:flex;align-items:center;gap:8px;color:var(--wa);font-size:0.85rem;font-weight:700;text-decoration:none}
.footer-wa {display:flex; align-items:center; gap:8px; white-space:nowrap;}
.wa-svg {width:24px; height:24px; flex-shrink:0;}

/* -- RESPONSIVE -- */
@media(max-width:900px){
  nav{padding:0 24px;}
  .nav-links{display:none;}
  .hamburger{display:flex;}
  .hero-content{padding:60px 24px;}
}
@media(max-width:600px){
  nav{padding:0 16px;}
  .hero-content{padding:0 20px 30px;}
  .hero{height:100vw;}
  .hero-actions{flex-direction:column;align-items:flex-start;}
  .hero-bg{background-size:260%;background-position:center top;background-repeat:no-repeat;}
  .page-wrap, .page-wrap--wide {padding: 24px 16px 40px;}
  footer{flex-direction:column;justify-content:center;align-items:center;text-align:center;}
}
  
  

