:root{
    --accent:#0f6cff;
    --muted:#6b7280;
    --bg:#f8fafc;
    --max-width:1100px;
    --radius:10px;
    --gap:1.25rem;
    --container-padding:1rem;
    font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  }
  
  *{box-sizing:border-box}
  html,body{height:100%}
  body{
    margin:0;
    background:var(--bg);
    color:#0b1220;
    line-height:1.45;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
  }
  
  .container{
    width:100%;
    max-width:var(--max-width);
    margin:0 auto;
    padding:0 var(--container-padding);
  }
  
  /* Header */
  .site-header{
    background:white;
    border-bottom:1px solid #e6eef8;
    position:sticky;
    top:0;
    z-index:50;
  }
  .header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:0.85rem 0;
  }
  .brand{
    font-weight:700;
    text-decoration:none;
    color:var(--accent);
    font-size:1.15rem;
  }
  .brand span{color:#0b1220;font-weight:600}
  
  /* Nav */
  .nav{display:flex;gap:0.75rem;align-items:center}
  .nav a{color:#0b1220;text-decoration:none;padding:0.45rem 0.6rem;border-radius:6px}
  .nav a.btn{background:var(--accent);color:white;padding:0.5rem 0.8rem}
  .nav a.btn-outline{border:1px solid #d3e3ff;color:var(--accent)}
  .nav-toggle{display:none;background:none;border:0;font-size:1.2rem}
  
  /* Hero */
  .hero{background:linear-gradient(180deg, transparent, rgba(15,108,255,0.03));padding:2.25rem 0}
  .hero-inner{display:grid;grid-template-columns:1fr 420px;gap:1.5rem;align-items:center}
  .hero-text h1{font-size:2rem;margin:0 0 0.5rem}
  .hero-text p{color:var(--muted);margin:0 0 1rem}
  .hero-cta .btn{margin-right:0.5rem}
  .hero-image img{width:100%;height:260px;object-fit:cover;border-radius:12px;box-shadow:0 6px 30px rgba(10,20,40,0.06)}
  
  /* Features */
  .features{display:flex;gap:1rem;margin:1.75rem 0}
  .feature{background:white;padding:1rem;border-radius:10px;flex:1;border:1px solid #f2f6fb}
  .feature h3{margin:0 0 0.35rem}
  
  /* Cards */
  .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1rem}
  .card{background:white;border-radius:12px;overflow:hidden;border:1px solid #eef6ff;display:flex;flex-direction:column}
  .card img{width:100%;height:160px;object-fit:cover}
  .card-body{padding:0.9rem}
  .card-body h3{margin:0 0 0.45rem}
  .btn{display:inline-block;background:var(--accent);color:white;padding:0.45rem 0.7rem;border-radius:8px;text-decoration:none}
  .btn-outline{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:0.45rem 0.7rem}
  
  /* Testimonials */
  .testimonials{margin:2rem 0}
  .testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
  blockquote{background:white;padding:1rem;border-radius:10px;border:1px solid #f0f6ff;margin:0}
  blockquote cite{display:block;margin-top:0.6rem;color:var(--muted)}
  
  /* Tours page */
  .page-intro{padding:1rem 0}
  .tour-grid{display:grid;grid-template-columns:340px 1fr;gap:1rem;align-items:center;margin:1rem 0}
  .tour-photo img{width:100%;height:220px;object-fit:cover;border-radius:10px}
  .tour-grid.reverse{direction:ltr}
  .tour-grid.reverse .tour-photo{order:2}
  
  /* Contact */
  .contact-page{display:grid;grid-template-columns:1fr 320px;gap:1.25rem;padding:1.25rem 0}
  .contact-form{background:white;padding:1rem;border-radius:10px;border:1px solid #eef6ff}
  .contact-form label{display:block;margin-bottom:0.6rem;color:#0b1220}
  .contact-form input, .contact-form textarea{width:100%;padding:0.6rem;border-radius:8px;border:1px solid #e6eef8;margin-top:0.35rem}
  .form-actions{display:flex;gap:0.5rem;margin-top:0.6rem}
  .contact-info{background:white;padding:1rem;border-radius:10px;border:1px solid #eef6ff}
  
  /* Footer */
  .site-footer{margin-top:2rem;background:white;border-top:1px solid #e6eef8;padding:1rem 0}
  .footer-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem}
  .footer-nav a{margin-left:0.5rem;color:var(--muted);text-decoration:none}
  copyright{font-size:0.9rem;color:var(--muted)}
  
  /* Responsive */
  @media (max-width:900px){
    .hero-inner{grid-template-columns:1fr}
    .container{padding:0.75rem}
    .features{flex-direction:column}
    .hero-image img{height:200px}
    .testimonial-grid{grid-template-columns:1fr}
    .tour-grid{grid-template-columns:1fr}
    .contact-page{grid-template-columns:1fr}
    .nav{display:none}
    .nav-toggle{display:block}
  }
  
  /* small niceties */
  a:focus, button:focus, input:focus, textarea:focus{outline:3px solid rgba(15,108,255,0.12);outline-offset:2px}
  