  :root{
    --white:#ffffff;
    --canvas:#fdfcfa;
    --ink:#15181c;
    --graphite:#5c6167;
    --line:#e7e4de;
    --line-soft:#f0eee9;
    --green:#1f4738;
    --green-dark:#132f26;
    --green-soft:#e8efec;

    --font-display:'Bricolage Grotesque', sans-serif;
    --font-body:'Manrope', sans-serif;
    --font-mono:'Space Mono', monospace;

    --ease:cubic-bezier(.22,1,.36,1);
  }

  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    font-family:var(--font-body);
    color:var(--ink);
    background:var(--white);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;border:none;background:none;cursor:pointer;}
  input{font-family:inherit;}

  :focus-visible{outline:2px solid var(--green);outline-offset:3px;}

  /* ---------- Buttons ---------- */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-family:var(--font-body);font-weight:600;font-size:14.5px;
    padding:12px 22px;border-radius:8px;
    transition:transform .35s var(--ease), background .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease;
    white-space:nowrap;
  }
  .btn-primary{
    background:var(--ink);color:var(--white);
    box-shadow:0 1px 2px rgba(21,24,28,.08);
  }
  .btn-primary:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 10px 20px -8px rgba(19,47,38,.45);}
  .btn-ghost{
    background:transparent;color:var(--ink);
    border:1px solid transparent;
  }
  .btn-ghost:hover{color:var(--green);}
  .btn-outline{
    background:transparent;color:var(--ink);border:1.4px solid var(--line);
  }
  .btn-outline:hover{border-color:var(--ink);background:var(--ink);color:var(--white);}
  .btn-cta{
    background:var(--green);color:var(--white);
    padding:15px 26px;border-radius:10px;font-size:15px;
    box-shadow:0 10px 24px -10px rgba(31,71,56,.55);
  }
  .btn-cta:hover{background:var(--green-dark);transform:translateY(-2px);box-shadow:0 16px 30px -10px rgba(19,47,38,.5);}
  .btn-cta svg{transition:transform .35s var(--ease);}
  .btn-cta:hover svg{transform:translateX(4px);}







.eyebrow{
    font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--green);
    display:inline-flex;align-items:center;gap:8px;margin-bottom:16px;
  }

  .eyebrow::before{content:'';width:16px;height:1px;background:var(--green);}




  /* packages detail breadcrumb */
    .breadcrumb-strip{
    max-width:1240px;margin:0 auto;padding:22px 32px 0;
    font-size:13px;color:var(--graphite);
  }
  .breadcrumb-strip a{color:var(--graphite);transition:color .2s ease;}
  .breadcrumb-strip a:hover{color:var(--ink);}
  .breadcrumb-strip span.sep{opacity:.5;margin:0 8px;}
  .breadcrumb-strip span.here{color:var(--ink);font-weight:600;}





  /* paragraphs and headings */

  /* hero sec para and heading */

  .hero-h1{
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(40px, 6vw, 74px);
    line-height: 1.03;
    letter-spacing: -.02em;
  }
  .hero-p{
    font-size: clamp(15px, 1.2vw, 17px);
    line-height:1.6;
    color:var(--graphite);
  }


  /* inner paragraphs and heading */
  .inner-h2{
    font-family: var(--font-display);
    font-weight: 700;
    font-size: clamp(32px, 4.4vw, 50px);
    letter-spacing: -.02em;
    line-height: 1.08;
  }

  .inner-h3{
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 16px;
    letter-spacing: -.005em;
  }
  .inner-p{
    font-size: clamp(14px, 1.8vw, 16.1px);
    line-height: 1.6;
  }






  /* packages section heading */
  .pkg-heading{
    font-family:var(--font-display);font-weight:700;
    font-size:clamp(18px,1.7vw,25px);letter-spacing:-.01em;
  }




  /* pkg page bike and car */   
    .pkg-layout{
    max-width:1240px;margin:0 auto;
    padding:60px 32px 120px;
    display:grid;
    grid-template-columns:1fr 380px;
    gap:56px;
    align-items:start;
  }
  .pkg-main > section{margin-bottom:64px;}
  .pkg-main > section:last-child{margin-bottom:0;}

  .pkg-section-head{margin-bottom:24px;}
  .pkg-section-head .pkg-eyebrow{margin-bottom:10px;}
  .pkg-section-head h2{
    
  }
  .pkg-section-head p{font-size:14px;color:var(--graphite);margin-top:8px;max-width:520px;line-height:1.6;}
  

  @media(max-width: 980px){
    .pkg-layout{
      grid-template-columns:1fr;
      padding:44px 24px 90px;
      display:flex;
      flex-direction:column;
    }
    .pkg-main{display:contents;}
  }











    .pkg-overview-text{font-size:14.5px;line-height:1.75;color:#3c4046;max-width:640px;}
  .pkg-overview-facts{
    display:grid;grid-template-columns:repeat(2,1fr);gap:14px;
    margin-top:24px;max-width:640px;
  }
  .pkg-fact{
    display:flex;gap:12px;align-items:flex-start;
    padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--canvas);
  }
  .pkg-fact-icon{
    width:32px;height:32px;border-radius:50%;background:var(--green-soft);color:var(--green);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .pkg-fact-txt .k{font-size:13px;font-weight:700;color:var(--ink);}
  .pkg-fact-txt .v{font-size:12px;color:var(--graphite);margin-top:1px;}
  @media (max-width:560px){.pkg-overview-facts{grid-template-columns:1fr;}}






    .incl-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
  .incl-card{border:1px solid var(--line);border-radius:20px;padding:26px 26px 6px;background:var(--canvas);}
  .incl-card.excl{background:var(--white);}
  .incl-card h3{
    font-family:var(--font-display);font-weight:700;font-size:16.5px;margin-bottom:16px;
    display:flex;align-items:center;gap:9px;
  }
  .incl-card h3 .ico{
    width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .incl-card.incl h3 .ico{background:var(--green);color:var(--white);}
  .incl-card.excl h3 .ico{background:var(--line-soft);color:var(--graphite);}
  .incl-card li{
    display:flex;gap:10px;align-items:flex-start;
    font-size:14px;line-height:1.55;color:#3c4046;
    padding-bottom:16px;
  }
  .incl-card li svg{flex-shrink:0;margin-top:2px;}
  .incl-card.incl li svg{color:var(--green);}
  .incl-card.excl li svg{color:#b7423f;}
  @media (max-width:700px){.incl-grid{grid-template-columns:1fr;}}




    .pkg-faq-list{display:flex;flex-direction:column;}
  .pkg-faq-item{border-bottom:1px solid var(--line);}
  .pkg-faq-item:first-child{border-top:1px solid var(--line);}
  .pkg-faq-q{width:100%;display:flex;align-items:center;gap:18px;padding:20px 2px;text-align:left;cursor:pointer;}
  .pkg-faq-idx{font-family:var(--font-mono);font-size:11.5px;color:var(--graphite);flex-shrink:0;width:22px;}
  .pkg-faq-item.open .pkg-faq-idx{color:var(--green);}
  .pkg-faq-text{flex:1;font-family:var(--font-display);font-weight:600;font-size:15px;letter-spacing:-.005em;}
  .pkg-faq-item.open .pkg-faq-text{color:var(--green-dark);}
  .pkg-faq-toggle{flex-shrink:0;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:transform .45s var(--ease), background .35s ease, border-color .35s ease, color .35s ease;}
  .pkg-faq-item.open .pkg-faq-toggle{background:var(--green);border-color:var(--green);color:var(--white);transform:rotate(135deg);}
  .pkg-faq-a-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease);}
  .pkg-faq-item.open .pkg-faq-a-wrap{grid-template-rows:1fr;}
  .pkg-faq-a-inner{overflow:hidden;}
  .pkg-faq-a{padding:0 2px 22px 40px;font-size:14px;line-height:1.65;color:var(--graphite);max-width:600px;}
