:root{
    --navy:#132a4c;
    --navy-deep:#0b1c36;
    --red:#e6432e;
    --red-dark:#c9331f;
    --orange:#f5a300;
    --teal:#2fb8b3;
    --teal-dark:#1f8f8b;
    --pink:#ef5d76;
    --pink-dark:#d6435c;
    --blue:#3f9bd6;
    --blue-dark:#2c7bb0;
    --bg:#f4f6fa;
    --card:#ffffff;
    --text:#2b2f38;
    --muted:#6b7280;
    --line:#e7e9f0;
    --radius:14px;
    --shadow: 0 10px 30px rgba(19,42,76,0.08);
  }

  p{margin:0 0 14px;color:var(--text);}
  a{text-decoration:none;color:inherit;}
  ul{margin:0;padding:0;list-style:none;}
  img{max-width:100%;display:block;}
  .wrap{max-width:1180px;margin:0 auto;padding:0 20px;}
  .eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-family:'Poppins',sans-serif;font-weight:700;font-size:12.5px;
    letter-spacing:.08em;text-transform:uppercase;color:var(--red);
    margin-bottom:10px;
  }
  .eyebrow::before{content:"";width:22px;height:3px;background:var(--red);border-radius:2px;display:inline-block;}

  

  /* ===== Buttons ===== */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-family:'Poppins',sans-serif;font-weight:600;font-size:14px;
    padding:11px 20px;border-radius:8px;border:none;cursor:pointer;white-space:nowrap;
    transition:transform .15s ease, box-shadow .15s ease;
  }
  .btn:hover{transform:translateY(-2px);}
  .btn-call{background:var(--navy);color:#fff;}
  .btn-call:hover{box-shadow:0 8px 18px rgba(19,42,76,.35);}
  .btn-book{background:var(--red);color:#fff;}
  .btn-book:hover{box-shadow:0 8px 18px rgba(230,67,46,.35);}
  .btn-wa{background:#25b358;color:#fff;}
  .btn-outline{background:transparent;border:2px solid #fff;color:#fff;}

  /* ===== Intro / Route section ===== */
  .intro-section{padding:6px 0 44px;}
  .intro-section .wrap{display:grid;grid-template-columns:1fr;gap:0;}
  .intro-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 32px;}
  .intro-card h1{font-size:30px;color:var(--navy);margin-bottom:6px;}
  .intro-card .sub{color:var(--red);font-family:'Poppins',sans-serif;font-weight:600;font-size:14.5px;margin-bottom:16px;}
  .intro-card p{font-size:15px;color:#454b57;}
  .route-strip{
    display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 4px;
    background:#eef3fb;border-radius:10px;padding:14px 16px;
  }
  .route-strip .stop{font-family:'Poppins',sans-serif;font-weight:600;color:var(--navy);font-size:13.5px;background:#fff;padding:6px 12px;border-radius:20px;box-shadow:0 2px 6px rgba(0,0,0,.06);}
  .route-strip i{color:var(--orange);font-size:12px;}

  /* ===== Badges (distance / time / support) ===== */
  .badges{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px;}
  .badge{
    flex:1;min-width:170px;display:flex;align-items:center;gap:12px;
    background:#eef3fb;border-radius:12px;padding:14px 16px;
  }
  .badge i{
    width:40px;height:40px;flex-shrink:0;border-radius:10px;background:#fff;color:var(--red);
    display:flex;align-items:center;justify-content:center;font-size:17px;box-shadow:var(--shadow);
  }
  .badge .big{font-family:'Poppins',sans-serif;font-weight:700;font-size:15.5px;color:var(--navy);}
  .badge .small{font-size:12px;color:var(--muted);}
  @media(max-width:700px){.badges{flex-direction:column;}}

  /* ===== Packages ===== */
  .packages{padding:10px 0 46px;}
  .section-head{text-align:center;max-width:640px;margin:0 auto 30px;}
  .section-head h2{font-size:28px;color:var(--navy);}
  .section-head p{color:var(--muted);font-size:15px;}
  .package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  .package-card{
    border-radius:18px;padding:26px 22px;color:#fff;position:relative;overflow:hidden;
    box-shadow:var(--shadow);display:flex;flex-direction:column;
  }
  .package-card .num{
    font-family:'Poppins',sans-serif;font-weight:800;font-size:46px;opacity:.35;
    position:absolute;top:10px;right:18px;
  }
  .package-card h3{font-size:19px;margin-bottom:6px;}
  .package-card .sub{font-size:12.5px;opacity:.92;margin-bottom:14px;}
  .package-card ul{margin-bottom:16px;}
  .package-card li{font-size:13.5px;padding:4px 0;display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.25);}
  .package-card .btnrow{display:flex;gap:8px;margin-top:auto;}
  .package-card .btnrow .btn{flex:1;font-size:13px;padding:9px 8px;}
  .card-teal{background:linear-gradient(150deg,var(--teal),var(--teal-dark));}
  .card-pink{background:linear-gradient(150deg,var(--pink),var(--pink-dark));}
  .card-blue{background:linear-gradient(150deg,var(--blue),var(--blue-dark));}
  .card-teal .btn-call, .card-pink .btn-call, .card-blue .btn-call{background:rgba(0,0,0,.28);}
  .card-teal .btn-book, .card-pink .btn-book, .card-blue .btn-book{background:#fff;color:var(--navy);}

  /* ===== Fare table ===== */
  .fare-section{padding:10px 0 46px;}
  .fare-table-wrap{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;}
  table.fare-table{width:100%;border-collapse:collapse;}
  table.fare-table thead th{
    background:var(--navy);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;
    font-size:14px;text-align:left;padding:14px 18px;
  }
  table.fare-table tbody td{padding:16px 18px;font-size:14.5px;border-bottom:1px solid var(--line);}
  table.fare-table tbody tr:last-child td{border-bottom:none;}
  table.fare-table tbody tr:hover{background:#fafbff;}
  .veh-cell{display:flex;align-items:center;gap:12px;font-weight:600;color:var(--navy);}
  .veh-cell .icon{
    width:42px;height:42px;border-radius:10px;background:#eef3fb;display:flex;
    align-items:center;justify-content:center;font-size:19px;color:var(--blue-dark);
  }
  .price-pill{
    display:inline-block;background:#fff2e0;color:var(--orange);font-weight:700;
    padding:4px 12px;border-radius:20px;font-size:13px;
  }
  .fare-note{font-size:13px;color:var(--muted);padding:16px 18px;background:#fbfbfd;border-top:1px dashed var(--line);}
  .fare-cta{display:flex;justify-content:center;gap:12px;margin-top:22px;}

  /* ===== Layout: content + sidebar ===== */
  .layout{padding:6px 0 50px;}
  .layout .wrap{display:grid;grid-template-columns:2.2fr 1fr;gap:32px;align-items:start;}
  @media(max-width:900px){.layout .wrap{grid-template-columns:1fr;} .package-grid{grid-template-columns:1fr;}}

  .toc{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    padding:14px 18px;margin-bottom:28px;box-shadow:var(--shadow);
  }
  .toc summary{
    cursor:pointer;font-family:'Poppins',sans-serif;font-weight:700;color:var(--navy);
    font-size:15px;list-style:none;display:flex;justify-content:space-between;align-items:center;
  }
  .toc summary::-webkit-details-marker{display:none;}
  .toc summary::after{content:"\f078";font-family:'Font Awesome 6 Free';font-weight:900;color:var(--red);font-size:13px;transition:transform .2s;}
  .toc[open] summary::after{transform:rotate(180deg);}
  .toc-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 22px;margin-top:14px;}
  .toc-grid a{font-size:13.5px;color:var(--text);padding:4px 0;display:block;border-bottom:1px dashed var(--line);}
  .toc-grid a:hover{color:var(--red);}
  @media(max-width:560px){.toc-grid{grid-template-columns:1fr;}}

  .content-section{margin-bottom:38px;scroll-margin-top:90px;}
  .content-section h2{
    font-size:23px;color:var(--red);position:relative;padding-bottom:10px;
  }
  .content-section h2::after{content:"";position:absolute;left:0;bottom:0;width:52px;height:3px;background:var(--orange);border-radius:2px;}
  .content-section h3{font-size:17px;color:var(--navy);margin-top:18px;}
  .content-section p{font-size:15px;color:#454b57;}
  .content-section strong{color:var(--navy);}

  .mini-table{width:100%;border-collapse:collapse;margin:14px 0;background:#fff;border-radius:10px;overflow:hidden;box-shadow:var(--shadow);}
  .mini-table th{background:#eef3fb;color:var(--navy);text-align:left;padding:10px 14px;font-size:13.5px;font-family:'Poppins',sans-serif;}
  .mini-table td{padding:10px 14px;font-size:14px;border-top:1px solid var(--line);}

  .check-list li{position:relative;padding:6px 0 6px 26px;font-size:14.5px;color:#454b57;}
  .check-list li::before{content:"\f00c";font-family:'Font Awesome 6 Free';font-weight:900;color:var(--teal-dark);position:absolute;left:0;top:6px;font-size:12px;}

  .step-flow{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0 6px;}
  .step-flow .step{
    flex:1;min-width:150px;background:#fff;border-radius:12px;padding:16px;box-shadow:var(--shadow);
    border-top:3px solid var(--red);
  }
  .step-flow .step .n{
    width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff;
    display:flex;align-items:center;justify-content:center;font-weight:700;font-family:'Poppins',sans-serif;
    margin-bottom:10px;font-size:13.5px;
  }
  .step-flow .step p{font-size:13.5px;margin:0;color:#454b57;}

  .chip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:14px 0;}
  .chip-group{background:#fff;border-radius:12px;padding:14px 16px;box-shadow:var(--shadow);}
  .chip-group h4{font-size:14px;color:var(--navy);margin-bottom:8px;display:flex;align-items:center;gap:8px;}
  .chip-group h4 i{color:var(--red);}
  .chip-group ul li{font-size:13px;color:var(--muted);padding:2px 0;}
  .chip-group ul li::before{content:"\f3c5";font-family:'Font Awesome 6 Free';font-weight:900;color:var(--orange);font-size:10px;margin-right:6px;}

  .card-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:16px 0;}
  @media(max-width:700px){.card-3{grid-template-columns:1fr;}}
  .info-tile{background:#fff;border-radius:12px;padding:18px;box-shadow:var(--shadow);border-left:4px solid var(--teal-dark);}
  .info-tile h4{font-size:15px;color:var(--navy);margin-bottom:6px;}
  .info-tile p{font-size:13.5px;color:var(--muted);margin:0;}
  .info-tile.orange{border-left-color:var(--orange);}
  .info-tile.pink{border-left-color:var(--pink);}
  .info-tile.blue{border-left-color:var(--blue);}

  .place-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:16px 0;}
  @media(max-width:700px){.place-grid{grid-template-columns:1fr;}}
  .place-card{background:#fff;border-radius:12px;padding:16px 18px;box-shadow:var(--shadow);}
  .place-card h4{font-size:15px;color:var(--red);margin-bottom:6px;}
  .place-card p{font-size:13.5px;color:var(--muted);margin:0;}

  .tips-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 20px;margin:14px 0;}
  @media(max-width:700px){.tips-list{grid-template-columns:1fr;}}

  /* ===== Sidebar ===== */
  .side-box{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;overflow:hidden;}
  .side-box .side-head{
    background:var(--navy);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;
    font-size:15px;padding:13px 18px;display:flex;align-items:center;gap:9px;
  }
  .side-box .side-head i{color:var(--orange);}
  .side-box .side-body{padding:16px 18px;}
  .side-box.contact .side-head{background:var(--red);}
  .side-box.contact .side-head i{color:#fff;}
  .side-box.contact .side-body a.big-phone{
    display:flex;align-items:center;gap:10px;font-weight:700;color:var(--navy);font-size:16px;margin-bottom:10px;
  }
  .side-box.contact .side-body a.big-phone i{color:#25b358;font-size:18px;}
  .side-box.contact .btn{width:100%;margin-top:6px;}
  .side-list li{
    padding:8px 0;font-size:13.5px;color:#454b57;border-bottom:1px dashed var(--line);
    display:flex;align-items:center;gap:8px;
  }
  .side-list li:last-child{border-bottom:none;}
  .side-list li i{color:var(--red);font-size:11px;}
  .side-box.offer .side-head{background:var(--orange);}

  /* ===== FAQ ===== */
  .faq-section{padding:10px 0 54px;}
  .faq-item{background:#fff;border-radius:12px;margin-bottom:10px;box-shadow:var(--shadow);overflow:hidden;}
  .faq-item summary{
    list-style:none;cursor:pointer;padding:16px 20px;font-family:'Poppins',sans-serif;
    font-weight:600;color:var(--navy);font-size:15px;display:flex;justify-content:space-between;align-items:center;gap:12px;
  }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary::after{content:"\f067";font-family:'Font Awesome 6 Free';font-weight:900;color:var(--red);flex-shrink:0;}
  .faq-item[open] summary::after{content:"\f068";}
  .faq-item .faq-body{padding:0 20px 18px;font-size:14.5px;color:#454b57;}

  .cta-row{display:flex;gap:10px;flex-wrap:wrap;}

  /* ===== Testimonials ===== */
  .testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:16px 0;}
  @media(max-width:700px){.testi-grid{grid-template-columns:1fr;}}
  .testi-card{background:#fff;border-radius:12px;padding:18px 20px;box-shadow:var(--shadow);border-top:3px solid var(--orange);}
  .testi-card .stars{color:var(--orange);font-size:13px;margin-bottom:8px;}
  .testi-card .quote{font-size:13.5px;color:#454b57;font-style:italic;margin-bottom:10px;}
  .testi-card .who{font-family:'Poppins',sans-serif;font-weight:600;color:var(--navy);font-size:13px;}

  /* ===== Fleet cards (detailed) ===== */
  .fleet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:16px 0;}
  @media(max-width:700px){.fleet-grid{grid-template-columns:1fr;}}
  .fleet-card{background:#fff;border-radius:12px;padding:18px 20px;box-shadow:var(--shadow);}
  .fleet-card h4{font-size:15.5px;color:var(--red);margin-bottom:6px;display:flex;align-items:center;gap:8px;}
  .fleet-card h4 i{color:var(--blue-dark);background:#eef3fb;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;}
  .fleet-card p.tag{font-size:13px;color:var(--muted);margin-bottom:8px;}
  .fleet-card ul{margin:0;}
  .fleet-card ul li{font-size:13px;color:#454b57;padding:3px 0;}
  .fleet-card ul li::before{content:"\f00c";font-family:'Font Awesome 6 Free';font-weight:900;color:var(--teal-dark);font-size:10px;margin-right:7px;}

  /* ===== Articles / Blog listing ===== */
  .articles-section{padding:10px 0 50px;}
  .article-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:34px;}
  .article-filter a{
    font-family:'Poppins',sans-serif;font-weight:600;font-size:13px;color:var(--navy);
    background:#fff;border:1px solid var(--line);border-radius:20px;padding:8px 18px;
    box-shadow:var(--shadow);transition:all .2s ease;
  }
  .article-filter a.active,.article-filter a:hover{background:var(--red);color:#fff;border-color:var(--red);}

  .article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
  @media(max-width:980px){.article-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:640px){.article-grid{grid-template-columns:1fr;}}

  .article-card{
    background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--shadow);
    display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease;
  }
  .article-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(19,42,76,.14);}
  .article-thumb{
    height:150px;display:flex;align-items:center;justify-content:center;position:relative;
    background:linear-gradient(150deg,var(--teal),var(--teal-dark));
  }
  .article-card.cat-pilgrimage .article-thumb{background:linear-gradient(150deg,var(--pink),var(--pink-dark));}
  .article-card.cat-tips .article-thumb{background:linear-gradient(150deg,var(--blue),var(--blue-dark));}
  .article-card.cat-destination .article-thumb{background:linear-gradient(150deg,var(--orange),#c97e00);}
  .article-thumb i{font-size:40px;color:#fff;opacity:.9;}
  .article-thumb .article-tag{
    position:absolute;top:12px;left:12px;background:rgba(11,28,54,.55);color:#fff;
    font-family:'Poppins',sans-serif;font-weight:600;font-size:11px;letter-spacing:.04em;
    text-transform:uppercase;padding:5px 12px;border-radius:16px;
  }
  .article-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;}
  .article-meta{display:flex;gap:14px;font-size:12px;color:var(--muted);margin-bottom:10px;}
  .article-meta span{display:flex;align-items:center;gap:5px;}
  .article-meta i{color:var(--red);font-size:11px;}
  .article-card h3{font-size:17px;color:var(--navy);margin-bottom:8px;line-height:1.35;}
  .article-card p{font-size:13.5px;color:var(--muted);margin-bottom:16px;flex:1;}
  .article-readmore{
    font-family:'Poppins',sans-serif;font-weight:600;font-size:13px;color:var(--red);
    display:inline-flex;align-items:center;gap:6px;margin-top:auto;
  }
  .article-readmore i{font-size:11px;transition:transform .2s;}
  .article-card:hover .article-readmore i{transform:translateX(4px);}

  .pagination{display:flex;justify-content:center;gap:8px;margin-top:36px;}
  .pagination a{
    width:38px;height:38px;border-radius:10px;background:#fff;box-shadow:var(--shadow);
    display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;
    font-weight:600;font-size:13.5px;color:var(--navy);
  }
  .pagination a.active{background:var(--red);color:#fff;}
  .pagination a.next{width:auto;padding:0 16px;gap:6px;font-size:13px;}

  /* ===== Sidebar: popular posts & categories ===== */
  .popular-post{display:flex;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line);}
  .popular-post:last-child{border-bottom:none;padding-bottom:0;}
  .popular-post .pp-icon{
    width:52px;height:52px;flex-shrink:0;border-radius:10px;background:#eef3fb;color:var(--blue-dark);
    display:flex;align-items:center;justify-content:center;font-size:18px;
  }
  .popular-post .pp-title{font-size:13.5px;font-weight:600;color:var(--navy);line-height:1.35;margin-bottom:4px;display:block;}
  .popular-post .pp-date{font-size:11.5px;color:var(--muted);}

  .cat-list-widget li{
    display:flex;justify-content:space-between;align-items:center;
    padding:9px 0;border-bottom:1px dashed var(--line);font-size:13.5px;color:#454b57;
  }
  .cat-list-widget li:last-child{border-bottom:none;}
  .cat-list-widget li a{color:#454b57;}
  .cat-list-widget li a:hover{color:var(--red);}
  .cat-list-widget li span{
    background:#eef3fb;color:var(--navy);font-size:11.5px;font-weight:700;
    padding:2px 9px;border-radius:12px;
  }
