  :root{
    --navy:#10233F;
    --navy-deep:#0A1830;
    --orange:#E11D2E;
    --orange-deep:#B3121F;
    --pc-red:#E63329;
    --gold:#FFC107;
    --bg:#F7F6F3;
    --page-bg:#FFFFFF;
    --white:#FFFFFF;
    --text:#1B2430;
    --muted:#6B7280;
    --line:#E7E5E0;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth; overflow-x:hidden;}
  body{ font-family:'Poppins', sans-serif; font-weight:400; background:var(--page-bg); color:var(--text); line-height:1.6; overflow-x:hidden; max-width:100vw; }
  @media (max-width:760px){ body{ padding-bottom:64px; } }
  h1,h2,h3,h4{ font-weight:700; }
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block; background:var(--white);}
  .img-missing{ background:var(--white) !important; }
  .img-missing::after{ background:none !important; }
  .img-missing img{ visibility:hidden; }
  ul{list-style:none;}
  .wrap{max-width:1180px; margin:0 auto; padding:0 24px;}
  section{padding:60px 0;}

  .btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 24px; font-family:'Poppins', sans-serif; font-weight:600; font-size:0.86rem; border:none; cursor:pointer; border-radius:6px; transition:all 0.15s ease; text-align:center; line-height:1.3; }
  .btn-orange{ background:var(--orange); color:var(--white); }
  .btn-orange:hover{ background:var(--orange-deep); }
  .btn-navy{ background:var(--navy); color:var(--white); }
  .btn-navy:hover{ background:var(--navy-deep); }
  .btn-outline{ background:transparent; color:var(--navy); border:1.5px solid var(--navy); }
  .btn-outline:hover{ background:var(--navy); color:var(--white); }
  .btn-lg{padding:15px 32px; font-size:0.95rem;}
  .btn-sm{padding:9px 16px; font-size:0.78rem;}
  .btn-block{width:100%; justify-content:center;}

  /* ---------- Header ---------- */
  header.main{ background:rgba(255,255,255,0.92); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); box-shadow:0 2px 24px rgba(16,35,63,0.08); position:sticky; top:0; z-index:50; }
  header.main .wrap{ display:flex; justify-content:space-between; align-items:center; padding:12px 24px; gap:24px; }
  .brand-logo-link{ display:flex; align-items:center; flex-shrink:0; }
  .brand-logo{ height:38px; width:auto; display:block; }
  nav.mainnav{ display:flex; gap:26px; font-size:0.86rem; font-weight:500; }
  nav.mainnav a{ position:relative; color:var(--text); padding:4px 0; }
  nav.mainnav a::after{ content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--orange); transition:width 0.2s ease; }
  nav.mainnav a:hover{ color:var(--orange); }
  nav.mainnav a:hover::after{ width:100%; }
  @media (max-width:920px){ nav.mainnav{display:none;} }
  .header-actions{ display:flex; align-items:center; gap:16px; flex-shrink:0; }
  .header-phone{ display:flex; align-items:center; gap:8px; font-weight:600; color:var(--navy); font-size:0.9rem; padding:8px 14px; border-radius:20px; background:var(--bg); border:1px solid var(--line); }
  .header-phone svg{width:16px; height:16px; color:var(--orange);}
  @media (max-width:640px){ .header-phone span, .header-phone{ display:none; } }

  /* ---------- Hero ---------- */
  .hero{ position:relative; min-height:78vh; display:flex; align-items:center; color:var(--white); padding:48px 0; }
  .hero .bg{ position:absolute; inset:0; z-index:0; }
  .hero .bg img{ width:100%; height:100%; object-fit:cover; }
  .hero .bg::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,24,48,0.92) 0%, rgba(10,24,48,0.6) 55%, rgba(10,24,48,0.35) 100%); }
  .hero .wrap{ position:relative; z-index:1; }
  .hero-grid{ display:grid; grid-template-columns:1.3fr 1fr; gap:44px; align-items:center; }
  @media (max-width:900px){ .hero-grid{grid-template-columns:1fr;} }
  .hero h1{ font-size:clamp(1.9rem,4vw,2.9rem); line-height:1.2; max-width:18ch; margin-bottom:16px; }
  .hero .price-line{ font-size:1.1rem; font-weight:600; color:var(--gold); margin-bottom:22px; }
  .hero-badges{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:30px; max-width:520px; }
  .hero-badge{ display:flex; align-items:center; gap:8px; font-size:0.85rem; background:rgba(255,255,255,0.1); padding:8px 14px; border-radius:6px; border:1px solid rgba(255,255,255,0.2); }
  .hero-badge svg{width:16px; height:16px; color:var(--orange); flex-shrink:0;}
  .hero-cta-mobile{ display:none; }
  @media (max-width:900px){ .hero-cta-mobile{display:inline-flex; margin-top:8px;} }

  .hero-form-card{ background:rgba(255,255,255,0.08); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); border:1px solid rgba(255,255,255,0.22); border-radius:16px; padding:22px 24px; box-shadow:0 8px 32px rgba(0,0,0,0.3); max-width:360px; margin-left:auto; }
  .hero-form-card h3{ color:var(--white); font-size:1.1rem; margin-bottom:4px; font-weight:700; }
  .hero-form-card > p{ color:rgba(255,255,255,0.65); font-size:0.8rem; margin-bottom:16px; }
  .hero-form-card input.form-field, .hero-form-card select.form-field{ background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.22); color:var(--white); padding:10px 12px; margin-bottom:10px; border-radius:8px; font-size:0.86rem; }
  .hero-form-card input.form-field::placeholder{ color:rgba(255,255,255,0.5); }
  .hero-form-card input.form-field:focus, .hero-form-card select.form-field:focus{ outline:none; border-color:var(--orange); background:rgba(255,255,255,0.14); }
  .hero-form-card select.form-field option{ color:var(--text); background:var(--white); }
  .hero-form-card .form-field-last{ margin-bottom:14px; }
  .hero-field-row{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .hero-field-row .form-field{ margin-bottom:10px; }
  .hero-phone-row{ display:grid; grid-template-columns:72px 1fr; gap:8px; }
  .hero-phone-row .form-field{ margin-bottom:10px; }
  .hero-phone-code{ display:flex; align-items:center; justify-content:center; padding:10px 6px; border-radius:8px; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.22); color:var(--white); font-size:0.78rem; font-weight:700; }
  .hero-form-card .btn{ padding:11px 20px; font-size:0.86rem; }
  @media (max-width:900px){ .hero-form-card{ max-width:100%; margin-left:0; } }

  /* ---------- Section headers ---------- */
  .section-head{ text-align:center; max-width:640px; margin:0 auto 40px; }
  .eyebrow{ font-size:0.78rem; letter-spacing:2px; text-transform:uppercase; color:var(--orange); font-weight:700; margin-bottom:10px; }
  .section-head h2{ font-size:clamp(1.5rem,3vw,2.1rem); color:var(--navy); }
  .section-head p{ color:var(--muted); margin-top:10px; font-size:0.95rem; }

  /* ---------- Package cards ---------- */
  .package-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
  @media (max-width:900px){ .package-grid{grid-template-columns:1fr;} }

  /* ---------- Package card (v2 — matches reference, premium polish) ---------- */
  .package-card{ background:var(--white); border-radius:20px; overflow:hidden; box-shadow:0 1px 2px rgba(16,35,63,0.04), 0 12px 32px rgba(16,35,63,0.08); border:1px solid rgba(16,35,63,0.05); transition:transform 0.3s cubic-bezier(.2,.8,.2,1), box-shadow 0.3s ease; display:flex; flex-direction:column; }
  .package-card:hover{ transform:translateY(-8px); box-shadow:0 4px 8px rgba(16,35,63,0.06), 0 26px 50px rgba(16,35,63,0.16); }

  .pc-media{ position:relative; height:230px; }
  .pc-media img{width:100%; height:100%; object-fit:cover;}
  .pc-media::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 65%, rgba(0,0,0,0.18) 100%); pointer-events:none; }

  .pc-badge{ position:absolute; top:14px; left:14px; z-index:1; display:flex; align-items:center; gap:6px; background:var(--white); color:var(--navy); font-size:0.7rem; font-weight:700; letter-spacing:0.3px; padding:6px 13px; border-radius:20px; box-shadow:0 4px 14px rgba(16,35,63,0.22); }
  .pc-badge::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--orange); flex-shrink:0; }

  .pc-body{ padding:24px 24px 4px; flex:1; display:flex; flex-direction:column; }
  .pc-body h3{ font-size:1.16rem; color:#0D0D0D; text-align:center; margin-bottom:16px; letter-spacing:0.1px; font-weight:700; line-height:1.3; }

  .pc-info-bar{ display:flex; align-items:center; justify-content:space-between; background:#F6F7FB; border:1px solid #ECEEF4; border-radius:10px; padding:11px 18px; margin-bottom:16px; }
  .pc-info-duration{ font-weight:700; font-size:0.82rem; color:var(--navy); }
  .pc-info-price{ font-weight:700; font-size:0.82rem; color:var(--orange-deep); }

  .pc-desc{ text-align:center; color:#64748B; font-size:0.85rem; line-height:1.6; margin-bottom:20px; }

  .pc-included{ position:relative; background:#FAFBFD; border:1px solid var(--line); border-radius:12px; padding:14px 12px 10px; margin-bottom:22px; }
  .pc-included-label{ position:absolute; top:-9px; left:14px; display:flex; align-items:center; gap:4px; background:var(--white); color:var(--navy); font-size:0.64rem; font-weight:700; text-transform:uppercase; letter-spacing:0.6px; padding:0 7px; }
  .pc-included-label svg{ width:10px; height:10px; color:var(--orange); }
  .pc-included-icons{ display:flex; justify-content:space-between; gap:4px; }
  .pc-inc-item{ display:flex; flex-direction:column; align-items:center; gap:6px; flex:1; }
  .pc-inc-item .pc-inc-icon-wrap{ width:32px; height:32px; border-radius:50%; background:linear-gradient(160deg,#FFFFFF,#EEF1F7); border:1px solid rgba(16,35,63,0.06); display:flex; align-items:center; justify-content:center; transition:all 0.2s ease; }
  .package-card:hover .pc-inc-item .pc-inc-icon-wrap{ border-color:rgba(225,29,46,0.3); }
  .pc-inc-item svg{ width:15px; height:15px; flex-shrink:0; color:var(--navy); }
  .pc-inc-item span{ font-size:0.62rem; font-weight:600; letter-spacing:0.1px; color:#5A6478; text-align:center; }

  .pc-explore-link{ display:flex; align-items:center; justify-content:center; gap:6px; font-size:0.78rem; font-weight:600; color:var(--navy); margin:0 0 16px; padding-bottom:2px; border-bottom:1px solid transparent; align-self:center; }
  .pc-explore-link svg{ width:13px; height:13px; transition:transform 0.2s ease; }
  .pc-explore-link:hover{ color:var(--orange); border-bottom-color:var(--orange); }
  .pc-explore-link:hover svg{ transform:translateX(2px); }

  .pc-cta-row{ display:flex; gap:8px; padding:0 24px 24px; margin-top:auto; }
  .pc-btn{ flex:1; display:flex; align-items:center; justify-content:center; gap:6px; padding:10px 8px; border-radius:999px; font-family:'Poppins',sans-serif; font-weight:600; font-size:0.78rem; letter-spacing:0.1px; border:none; cursor:pointer; text-align:center; transition:all 0.2s ease; }
  .pc-btn svg{ width:13px; height:13px; flex-shrink:0; }
  .pc-btn-quote{ background:linear-gradient(90deg,#F2545B,#B3121F); color:var(--white); box-shadow:0 4px 12px rgba(230,51,41,0.28); }
  .pc-btn-quote:hover{ background:var(--orange-deep); box-shadow:0 6px 16px rgba(230,51,41,0.36); transform:translateY(-1px); }
  .pc-btn-whatsapp{ background:linear-gradient(90deg,#34D399,#16A34A); color:var(--white); box-shadow:0 4px 12px rgba(22,163,74,0.26); }
  .pc-btn-whatsapp:hover{ background:#15803D; box-shadow:0 6px 16px rgba(22,163,74,0.34); transform:translateY(-1px); }
  @media (max-width:380px){ .pc-cta-row{flex-direction:column;} }

  /* ---------- Trust strip ---------- */
  .trust-strip{ background:var(--navy); color:var(--white); }
  .trust-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
  @media (max-width:800px){ .trust-grid{grid-template-columns:1fr 1fr;} }
  .trust-item{ text-align:center; }
  .trust-item .icon-mark{ width:52px; height:52px; border-radius:50%; background:rgba(255,255,255,0.08); display:flex; align-items:center; justify-content:center; margin:0 auto 14px; }
  .trust-item .icon-mark svg{width:24px; height:24px; color:var(--orange);}
  .trust-item h4{ font-size:0.95rem; margin-bottom:6px; }
  .trust-item p{ font-size:0.82rem; color:rgba(255,255,255,0.65); }

  /* ---------- Destination tiles ---------- */
  .dest-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
  @media (max-width:800px){ .dest-grid{grid-template-columns:1fr 1fr;} }
  .dest-tile{ position:relative; height:160px; border-radius:8px; overflow:hidden; }
  .dest-tile img{width:100%; height:100%; object-fit:cover;}
  .dest-tile::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 40%, rgba(10,24,48,0.85) 100%); }
  .dest-label{ position:absolute; left:14px; bottom:12px; z-index:1; color:var(--white); }
  .dest-label h4{ font-size:1rem; }
  .dest-label span{ font-size:0.76rem; color:rgba(255,255,255,0.8); }

  /* ---------- Best selling list ---------- */
  .best-list{ display:flex; flex-direction:column; gap:14px; }
  .best-row{ background:var(--white); border-radius:10px; padding:18px 24px; display:grid; grid-template-columns:1.6fr 1fr 1fr 0.8fr auto; gap:20px; align-items:center; box-shadow:0 4px 14px rgba(16,35,63,0.06); }
  @media (max-width:800px){ .best-row{grid-template-columns:1fr 1fr; row-gap:10px;} }
  .best-row .dur{ font-size:0.74rem; color:var(--muted); margin-bottom:4px; }
  .best-row h4{ font-size:1.02rem; color:var(--navy); }
  .best-row .label{ font-size:0.72rem; color:var(--muted); text-transform:uppercase; letter-spacing:0.5px; margin-bottom:3px; }
  .best-row .val{ font-size:0.92rem; font-weight:600; color:var(--navy); }
  .status-open{ color:#1a9c5c; font-weight:600; font-size:0.82rem; }

  /* ---------- Categories (emoji) ---------- */
  .cat-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
  @media (max-width:800px){ .cat-grid{grid-template-columns:1fr;} }
  .cat-card{ background:var(--white); border-radius:10px; padding:30px 26px; box-shadow:0 4px 14px rgba(16,35,63,0.06); }
  .cat-emoji{ font-size:2.2rem; margin-bottom:14px; }
  .cat-card h3{ font-size:1.1rem; color:var(--navy); margin-bottom:8px; }
  .cat-card p{ font-size:0.88rem; color:var(--muted); }

  /* ---------- Testimonials ---------- */
  .testi-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  @media (max-width:900px){ .testi-grid{grid-template-columns:1fr;} }
  .testi-card{ background:var(--white); border-radius:10px; padding:24px; box-shadow:0 4px 14px rgba(16,35,63,0.06); }
  .testi-top{ display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:10px; }
  .testi-name{ font-weight:600; color:var(--navy); font-size:0.95rem; }
  .testi-when{ font-size:0.74rem; color:var(--muted); }
  .stars{ color:var(--gold); font-size:0.8rem; font-weight:700; }
  .testi-booked{ font-size:0.76rem; color:var(--orange); font-weight:600; margin-bottom:10px; }
  .testi-quote{ font-size:0.88rem; color:var(--muted); }

  /* ---------- FAQ ---------- */
  .faq-item{ background:var(--white); border-radius:8px; padding:18px 22px; margin-bottom:10px; box-shadow:0 2px 8px rgba(16,35,63,0.05); }
  .faq-item summary{ cursor:pointer; font-weight:600; color:var(--navy); font-size:0.94rem; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:12px; }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary::after{content:"+"; font-size:1.3rem; color:var(--orange); font-weight:700; flex-shrink:0;}
  .faq-item[open] summary::after{content:"–";}
  .faq-item p{ color:var(--muted); margin-top:12px; font-size:0.88rem; }

  /* ---------- Footer ---------- */
  footer{ background:var(--navy-deep); color:rgba(255,255,255,0.68); padding:56px 0 0; font-size:0.86rem; }
  .footer-grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr; gap:36px; padding-bottom:36px; }
  @media (max-width:860px){ .footer-grid{grid-template-columns:1fr 1fr;} }
  @media (max-width:520px){ .footer-grid{grid-template-columns:1fr;} }

  .footer-script{ font-family:'Poppins', sans-serif; font-size:1.3rem; font-weight:700; letter-spacing:0.2px; margin-bottom:18px; line-height:1.3; white-space:nowrap; }
  @media (max-width:520px){ .footer-script{ white-space:normal; font-size:1.15rem; } }
  .footer-script .fo{ color:var(--orange); }
  .footer-script .fw{ color:var(--white); }
  .footer-script.single{ display:flex; align-items:center; gap:14px; color:var(--orange); }
  .footer-script.single::after{ content:""; flex:1; height:2px; background:linear-gradient(90deg, var(--orange), transparent); max-width:70px; }

  .footer-col p{ color:rgba(255,255,255,0.6); font-size:0.86rem; line-height:1.7; }
  .footer-brand-accent{ color:var(--orange); font-weight:700; }

  .footer-contact-list{ margin-bottom:18px; }
  .footer-contact-list li{ display:flex; align-items:flex-start; gap:10px; margin-bottom:14px; color:rgba(255,255,255,0.75); font-size:0.86rem; line-height:1.4; }
  .footer-contact-list li svg{ width:16px; height:16px; color:var(--orange); flex-shrink:0; margin-top:2px; }
  .footer-contact-list a{ color:rgba(255,255,255,0.75); }
  .footer-contact-list a:hover{ color:var(--orange); }

  .footer-social{ display:flex; gap:10px; }
  .social-circle{ width:36px; height:36px; border-radius:50%; border:1.5px solid rgba(255,255,255,0.35); display:flex; align-items:center; justify-content:center; color:var(--white); transition:all 0.2s ease; }
  .social-circle svg{ width:16px; height:16px; }
  .social-circle:hover{ background:var(--orange); border-color:var(--orange); }

  .footer-chevron-list li{ margin-bottom:12px; }
  .footer-chevron-list li, .footer-chevron-list a{ display:flex; align-items:center; gap:8px; color:rgba(255,255,255,0.75); font-size:0.86rem; }
  .footer-chevron-list a:hover{ color:var(--orange); }
  .footer-chevron-list svg{ width:13px; height:13px; color:var(--orange); flex-shrink:0; }

  .footer-divider{ border-top:1px solid rgba(255,255,255,0.12); }
  .footer-bottom-row{ display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:16px; padding:22px 0; font-size:0.84rem; color:rgba(255,255,255,0.75); }
  .footer-bottom-row a{ color:rgba(255,255,255,0.75); }
  .footer-bottom-row a:hover{ color:var(--orange); }
  .footer-last-update{ display:block; margin-top:6px; color:rgba(255,255,255,0.4); font-size:0.8rem; }
  .footer-bottom-links{ display:flex; gap:20px; flex-wrap:wrap; }

  .scroll-top-btn{ position:fixed; right:24px; bottom:24px; z-index:60; width:46px; height:46px; border-radius:10px; background:var(--orange); color:var(--white); border:none; display:none; align-items:center; justify-content:center; box-shadow:0 8px 20px rgba(230,51,41,0.35); cursor:pointer; transition:background 0.2s ease; }
  .scroll-top-btn:hover{ background:var(--orange-deep); }
  .scroll-top-btn.show{ display:flex; }
  .scroll-top-btn svg{ width:20px; height:20px; }
  @media (max-width:760px){ .scroll-top-btn{ bottom:74px; } }

  /* ---------- Sticky bottom bar ---------- */
  .sticky-bar{ position:fixed; bottom:0; left:0; right:0; z-index:60; background:var(--white); display:none; grid-template-columns:1fr 1fr 1fr; box-shadow:0 -4px 16px rgba(16,35,63,0.15); }
  @media (max-width:760px){ .sticky-bar{ display:grid; } }
  .sticky-bar a{ display:flex; flex-direction:column; align-items:center; gap:4px; padding:10px 6px; font-size:0.72rem; font-weight:600; color:var(--navy); border-right:1px solid var(--line); }
  .sticky-bar a:last-child{ border-right:none; }
  .sticky-bar a svg{width:20px; height:20px;}
  .sticky-bar a.call{ background:var(--navy); color:var(--white); }
  .sticky-bar a.wa{ background:#25D366; color:var(--white); }

  /* ---------- Offer popup ---------- */
  .popup-overlay{ position:fixed; inset:0; background:rgba(10,24,48,0.6); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); z-index:100; display:flex; align-items:center; justify-content:center; padding:20px; opacity:0; visibility:hidden; pointer-events:none; transition:opacity 0.3s ease, visibility 0.3s ease; }
  .popup-overlay.show{ opacity:1; visibility:visible; pointer-events:auto; }
  .popup-box{ background:var(--white); border-radius:12px; max-width:400px; width:100%; padding:30px; position:relative; transform:translateY(24px) scale(0.96); opacity:0; transition:transform 0.35s cubic-bezier(.2,.8,.2,1), opacity 0.3s ease; }
  .popup-overlay.show .popup-box{ transform:translateY(0) scale(1); opacity:1; }
  .popup-close{ position:absolute; top:14px; right:16px; font-size:1.3rem; color:var(--muted); cursor:pointer; background:none; border:none; }
  .popup-box h3{ color:var(--navy); font-size:1.3rem; margin-bottom:8px; }
  .popup-box p{ color:var(--muted); font-size:0.86rem; margin-bottom:20px; }
  .popup-box input, .popup-box select{ width:100%; padding:11px 12px; border:1px solid var(--line); border-radius:6px; margin-bottom:12px; font-family:'Poppins',sans-serif; font-size:0.9rem; }

  /* ---------- Plan Your Trip modal (quote-box) ---------- */
  .quote-box{ max-width:380px; max-height:88vh; overflow-y:auto; text-align:left; padding:24px 24px 22px; border-radius:16px; box-shadow:0 24px 56px rgba(10,24,48,0.32); }
  .quote-title-v2{ font-size:1.05rem; font-weight:800; color:#111; text-transform:uppercase; letter-spacing:0.2px; margin-bottom:6px; padding-right:30px; }
  .quote-title-v2 .quote-title-accent{ font-size:1.2rem; font-weight:800; }
  .quote-subtitle-v2{ font-size:0.78rem; color:var(--muted); line-height:1.45; margin-bottom:18px; padding-right:8px; }
  .modal-close-x{ position:absolute; top:16px; right:16px; width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.15rem; line-height:1; color:var(--muted); cursor:pointer; background:var(--bg); border:none; padding:0; transition:all 0.2s ease; }
  .modal-close-x:hover{ color:var(--white); background:var(--orange); transform:rotate(90deg); }

  .pill-field-wrap{ position:relative; margin-bottom:11px; }
  .pill-field{ width:100%; padding:10px 34px 10px 16px; border:1.5px solid #E4E4E8; border-radius:999px; font-family:'Poppins',sans-serif; font-size:0.82rem; color:var(--text); background:var(--white); transition:border-color 0.2s ease, box-shadow 0.2s ease; }
  .pill-field::placeholder{ color:#A9ACB4; }
  .pill-field:focus{ outline:none; border-color:var(--orange); box-shadow:0 0 0 3px rgba(225,29,46,0.1); }
  .pill-required{ position:absolute; top:12px; right:16px; color:var(--orange); font-weight:700; font-size:0.85rem; pointer-events:none; }
  .pill-textarea{ border-radius:16px; resize:vertical; min-height:60px; padding:10px 16px; }
  .pill-textarea + .pill-required{ top:10px; }

  .btn-connect-expert{ width:100%; padding:11px 18px; border:none; border-radius:999px; background:linear-gradient(90deg,#F2545B,#B3121F); color:var(--white); font-family:'Poppins',sans-serif; font-weight:700; font-size:0.86rem; letter-spacing:0.1px; box-shadow:0 8px 18px rgba(225,29,46,0.32); cursor:pointer; margin-top:4px; transition:all 0.2s ease; }
  .btn-connect-expert:hover{ transform:translateY(-2px); box-shadow:0 12px 30px rgba(225,29,46,0.45); }

  /* ---------- Lead form card (extracted from inline style) ---------- */
  /* .lead-form-card removed — Get In Touch now reuses .hero-form-card for identical styling */

  /* ---------- Extracted inline styles ---------- */
  .panel-section{ background:var(--white); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
  .wrap-narrow{ max-width:640px; }
  .wrap-faq{ max-width:760px; }
  .footer-about-text{ max-width:34ch; }
  .form-field{ width:100%; padding:12px; border:1px solid var(--line); border-radius:6px; margin-bottom:14px; font-family:'Poppins',sans-serif; }
  .form-field-last{ margin-bottom:18px; }

  /* ---------- Package detail pages ---------- */
  .detail-hero{ position:relative; height:320px; color:var(--white); display:flex; align-items:flex-end; }
  .detail-hero img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
  .detail-hero::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,24,48,0.25) 0%, rgba(10,24,48,0.88) 100%); z-index:0; }
  .detail-hero .wrap{ position:relative; z-index:1; padding-bottom:28px; }
  .detail-hero .back-link{ display:inline-flex; align-items:center; gap:6px; font-size:0.85rem; color:rgba(255,255,255,0.8); margin-bottom:14px; }
  .detail-hero .back-link:hover{ color:var(--white); }
  .detail-hero h1{ font-size:clamp(1.6rem,3.6vw,2.4rem); margin-bottom:8px; }
  .detail-hero .detail-meta{ display:flex; gap:16px; flex-wrap:wrap; font-size:0.88rem; color:rgba(255,255,255,0.85); }

  .detail-layout{ display:grid; grid-template-columns:1.6fr 1fr; gap:36px; align-items:start; }
  @media (max-width:900px){ .detail-layout{grid-template-columns:1fr;} }

  .detail-card{ background:var(--white); border-radius:10px; border:1px solid var(--line); padding:26px; margin-bottom:24px; box-shadow:0 4px 14px rgba(16,35,63,0.05); }
  .detail-card h2{ font-size:1.2rem; color:var(--navy); margin-bottom:16px; }

  .itin-day{ display:flex; gap:16px; padding:14px 0; border-bottom:1px solid var(--line); }
  .itin-day:last-child{ border-bottom:none; }
  .itin-day .itin-badge{ flex-shrink:0; width:64px; height:32px; border-radius:20px; background:linear-gradient(90deg,#F2545B,#B3121F); color:var(--white); font-size:0.76rem; font-weight:700; display:flex; align-items:center; justify-content:center; }
  .itin-day .itin-title{ font-weight:600; color:var(--navy); font-size:0.94rem; margin-bottom:4px; }
  .itin-day .itin-text{ font-size:0.86rem; color:var(--muted); }

  .incl-grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
  @media (max-width:560px){ .incl-grid{grid-template-columns:1fr;} }
  .incl-list li{ font-size:0.86rem; color:var(--text); padding-left:22px; position:relative; margin-bottom:10px; }
  .incl-list.yes li::before{ content:"✓"; position:absolute; left:0; color:#1a9c5c; font-weight:700; }
  .incl-list.no li::before{ content:"✕"; position:absolute; left:0; color:var(--pc-red); font-weight:700; }
  .incl-list h3{ font-size:0.9rem; color:var(--navy); margin-bottom:12px; }

  .detail-sidebar{ position:sticky; top:90px; }
  .price-card{ background:var(--white); border-radius:10px; border:1px solid var(--line); padding:24px; box-shadow:0 6px 20px rgba(16,35,63,0.08); margin-bottom:18px; }
  .pc-price-label{ font-size:0.72rem; color:var(--muted); }
  .pc-price-row{ display:flex; align-items:baseline; gap:10px; }
  .pc-price-old{ font-size:0.85rem; color:var(--orange); text-decoration:line-through; }
  .pc-price-new{ font-size:1.3rem; font-weight:800; color:var(--text); }
  .price-card .pc-price-label{ margin-bottom:4px; }
  .price-card .pc-price-row{ margin-bottom:18px; }
  .price-card .pc-price-new{ font-size:1.6rem; }
  .price-card .btn{ width:100%; justify-content:center; margin-bottom:10px; }

  .gallery-strip{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:24px; }
  .gallery-strip img{ height:90px; object-fit:cover; border-radius:6px; }

  /* ---------- Get In Touch (premium two-column, glass form) ---------- */
  .get-in-touch{ background:linear-gradient(135deg, var(--navy) 0%, var(--navy-deep) 100%); padding:70px 0; }
  .get-in-touch .section-head{ text-align:center; }
  .get-in-touch .section-head .eyebrow{ color:var(--orange); }
  .get-in-touch .section-head h2{ color:var(--white); }
  .get-in-touch .section-head p{ color:rgba(255,255,255,0.65); }
  .get-in-touch-grid{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:stretch; }
  @media (max-width:860px){ .get-in-touch-grid{ grid-template-columns:1fr; } }
  .get-in-touch-photo{ border-radius:16px; overflow:hidden; min-height:420px; box-shadow:0 12px 30px rgba(0,0,0,0.3); }
  .get-in-touch-photo img{ width:100%; height:100%; object-fit:cover; }
  @media (max-width:860px){ .get-in-touch-photo{ min-height:240px; } }
  .get-in-touch-grid .hero-form-card{ max-width:none; width:100%; margin-left:0; display:flex; flex-direction:column; justify-content:center; }

  /* ---------- FAQ two-column layout ---------- */
  .wrap-faq-wide{ max-width:980px; }
  .faq-columns{ display:grid; grid-template-columns:1fr 1fr; gap:0 32px; align-items:start; }
  @media (max-width:760px){ .faq-columns{ grid-template-columns:1fr; } }

  /* ---------- Detail page: sidebar trust strip ---------- */
  .sidebar-trust-strip{ display:flex; flex-direction:column; gap:9px; margin-top:16px; padding-top:16px; border-top:1px solid var(--line); }
  .sidebar-trust-strip span{ display:flex; align-items:center; gap:8px; font-size:0.8rem; color:var(--muted); font-weight:500; }
  .sidebar-trust-strip svg{ width:15px; height:15px; color:#1a9c5c; flex-shrink:0; }

  /* ---------- Detail page: related packages ---------- */
  .related-packages{ background:var(--white); border-top:1px solid var(--line); }
  .related-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  @media (max-width:800px){ .related-grid{grid-template-columns:1fr;} }
  .related-mini-card{ display:block; border-radius:14px; overflow:hidden; box-shadow:0 6px 18px rgba(16,35,63,0.08); transition:transform 0.25s ease, box-shadow 0.25s ease; }
  .related-mini-card:hover{ transform:translateY(-5px); box-shadow:0 16px 32px rgba(16,35,63,0.14); }
  .related-mini-media{ height:140px; }
  .related-mini-media img{ width:100%; height:100%; object-fit:cover; }
  .related-mini-body{ background:var(--white); padding:14px 16px 16px; }
  .related-mini-body h4{ font-size:0.94rem; color:var(--navy); margin-bottom:6px; font-weight:700; }
  .related-mini-body span{ font-size:0.78rem; color:var(--muted); }

  /* ---------- Detail page: sidebar quick enquiry form (premium, own colors) ---------- */
  .sidebar-quick-form{ position:relative; background:linear-gradient(155deg, #16213E 0%, #0A1830 100%); border-radius:16px; padding:26px 24px; margin-bottom:20px; overflow:hidden; box-shadow:0 16px 36px rgba(10,24,48,0.28); }
  .sidebar-quick-form::before{ content:""; position:absolute; top:-40%; right:-30%; width:200px; height:200px; background:radial-gradient(circle, rgba(225,29,46,0.25), transparent 70%); pointer-events:none; }
  .sidebar-quick-form-head{ position:relative; z-index:1; display:flex; align-items:center; gap:10px; margin-bottom:4px; }
  .sidebar-quick-form-head svg{ width:20px; height:20px; color:var(--orange); flex-shrink:0; }
  .sidebar-quick-form h3{ position:relative; z-index:1; color:var(--white); font-size:1.05rem; font-weight:700; margin:0; }
  .sidebar-quick-form p{ position:relative; z-index:1; color:rgba(255,255,255,0.6); font-size:0.8rem; margin:6px 0 18px; }
  .sidebar-quick-form .form-field{ position:relative; z-index:1; background:rgba(255,255,255,0.07); border:1.5px solid rgba(255,255,255,0.16); color:var(--white); border-radius:9px; padding:11px 13px; font-family:'Poppins',sans-serif; font-size:0.86rem; margin-bottom:12px; width:100%; transition:all 0.2s ease; }
  .sidebar-quick-form .form-field::placeholder{ color:rgba(255,255,255,0.4); }
  .sidebar-quick-form .form-field:focus{ outline:none; border-color:var(--orange); background:rgba(255,255,255,0.12); box-shadow:0 0 0 4px rgba(225,29,46,0.18); }
  .sidebar-quick-form .form-field-last{ margin-bottom:16px; }
  .sidebar-quick-form .btn{ position:relative; z-index:1; width:100%; justify-content:center; background:linear-gradient(90deg,#F2545B,#B3121F); box-shadow:0 8px 20px rgba(225,29,46,0.35); }
  .sidebar-quick-form .btn:hover{ transform:translateY(-2px); box-shadow:0 10px 26px rgba(225,29,46,0.45); }

  /* ---------- Detail page: premium Call/WhatsApp row (replaces Get Free Quote) ---------- */
  .price-card-actions{ display:flex; gap:10px; margin-bottom:4px; }
  .price-card-actions .btn-call-premium, .price-card-actions .btn-wa-premium{ flex:1; display:flex; align-items:center; justify-content:center; gap:8px; padding:14px 10px; border-radius:12px; font-family:'Poppins',sans-serif; font-weight:700; font-size:0.86rem; color:var(--white); transition:all 0.22s ease; }
  .price-card-actions svg{ width:17px; height:17px; flex-shrink:0; }
  .btn-call-premium{ background:linear-gradient(135deg,#16213E,#0A1830); box-shadow:0 8px 20px rgba(10,24,48,0.3); }
  .btn-call-premium:hover{ transform:translateY(-2px); box-shadow:0 10px 26px rgba(10,24,48,0.42); }
  .btn-wa-premium{ background:linear-gradient(135deg,#34D399,#16A34A); box-shadow:0 8px 20px rgba(22,163,74,0.3); }
  .btn-wa-premium:hover{ transform:translateY(-2px); box-shadow:0 10px 26px rgba(22,163,74,0.42); }

  /* ---------- About page ---------- */
  .breadcrumb{ font-size:0.82rem; color:var(--muted); margin-bottom:6px; }
  .breadcrumb a{ color:var(--muted); }
  .breadcrumb a:hover{ color:var(--orange); }
  .breadcrumb span{ color:var(--navy); font-weight:600; }
  .about-page-title{ font-size:clamp(1.7rem,3.4vw,2.3rem); color:var(--navy); margin-bottom:28px; }

  .about-welcome{ display:grid; grid-template-columns:1fr 1.1fr; gap:40px; align-items:center; margin-bottom:8px; }
  @media (max-width:860px){ .about-welcome{grid-template-columns:1fr;} }
  .about-collage{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
  .about-collage img{ width:100%; height:150px; object-fit:cover; border-radius:10px; }
  .about-collage img:nth-child(2){ margin-top:26px; }
  .about-collage img:nth-child(3){ margin-top:-26px; }
  .about-welcome-text .eyebrow{ margin-bottom:8px; }
  .about-welcome-text h2{ font-size:clamp(1.5rem,3vw,2rem); color:var(--navy); margin-bottom:6px; }
  .about-welcome-text .about-tagline{ font-size:0.92rem; color:var(--orange); font-weight:600; margin-bottom:14px; }
  .about-welcome-text p{ color:var(--muted); font-size:0.94rem; line-height:1.7; margin-bottom:20px; }
  .about-stats-row{ display:flex; gap:36px; margin-bottom:20px; }
  .about-stats-row div b{ display:block; font-size:1.9rem; font-weight:800; color:var(--orange); line-height:1; }
  .about-stats-row div span{ font-size:0.78rem; color:var(--muted); }

  .about-body h2{ font-size:1.15rem; color:var(--navy); margin:30px 0 10px; font-weight:700; }
  .about-body h2:first-child{ margin-top:0; }
  .about-body p{ color:var(--text); font-size:0.93rem; line-height:1.75; margin-bottom:12px; }
  .about-body ul{ margin:0 0 14px 20px; color:var(--text); font-size:0.93rem; line-height:1.9; }
  .about-body ul li{ margin-bottom:4px; }
  .about-body strong{ color:var(--navy); }
  .about-route{ display:flex; align-items:center; flex-wrap:wrap; gap:8px; background:var(--bg); border-radius:10px; padding:16px 18px; font-size:0.92rem; font-weight:600; color:var(--navy); margin-bottom:16px; }
  .about-route svg{ width:14px; height:14px; color:var(--orange); flex-shrink:0; }

  /* ---------- Contact Us page ---------- */
  .contact-page-head{ text-align:center; max-width:640px; margin:0 auto 40px; }
  .contact-page-head h1{ font-size:clamp(1.7rem,3.4vw,2.3rem); color:var(--navy); margin-bottom:10px; }
  .contact-page-head p{ color:var(--muted); font-size:0.96rem; line-height:1.6; }

  .contact-layout{ display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:start; }
  @media (max-width:860px){ .contact-layout{grid-template-columns:1fr;} }

  .contact-info-card{ background:var(--white); border:1px solid var(--line); border-radius:16px; padding:28px; box-shadow:0 6px 20px rgba(16,35,63,0.06); margin-bottom:20px; }
  .contact-info-card h2{ font-size:1.15rem; color:var(--navy); margin-bottom:18px; }
  .contact-info-row{ display:flex; align-items:flex-start; gap:14px; margin-bottom:18px; }
  .contact-info-row:last-child{ margin-bottom:0; }
  .contact-info-icon{ width:40px; height:40px; border-radius:50%; background:var(--bg); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  .contact-info-icon svg{ width:18px; height:18px; color:var(--orange); }
  .contact-info-row h4{ font-size:0.82rem; color:var(--muted); text-transform:uppercase; letter-spacing:0.4px; margin-bottom:3px; font-weight:600; }
  .contact-info-row p, .contact-info-row a{ font-size:0.92rem; color:var(--text); line-height:1.5; }
  .contact-info-row a:hover{ color:var(--orange); }

  .contact-map{ border-radius:16px; overflow:hidden; border:1px solid var(--line); box-shadow:0 6px 20px rgba(16,35,63,0.06); }
  .contact-map iframe{ width:100%; height:280px; border:0; display:block; }

  .contact-form-card{ background:var(--white); border:1px solid var(--line); border-radius:16px; padding:30px; box-shadow:0 6px 20px rgba(16,35,63,0.06); }
  .contact-form-card h2{ font-size:1.15rem; color:var(--navy); margin-bottom:6px; }
  .contact-form-card > p{ color:var(--muted); font-size:0.88rem; margin-bottom:22px; }
  .contact-form-card .form-field{ margin-bottom:16px; }
  .contact-form-card textarea.form-field{ min-height:110px; resize:vertical; }

  /* ---------- Final CTA banner (before footer) ---------- */
  .final-cta{ padding:50px 0; }
  .final-cta-box{ position:relative; overflow:hidden; background:linear-gradient(155deg,#16213E 0%,#0A1830 100%); border-radius:18px; padding:38px 32px; text-align:center; box-shadow:0 18px 44px rgba(10,24,48,0.3); }
  .final-cta-box::before{ content:""; position:absolute; top:-30%; left:-10%; width:280px; height:280px; background:radial-gradient(circle, rgba(225,29,46,0.22), transparent 70%); pointer-events:none; }
  .final-cta-box::after{ content:""; position:absolute; bottom:-35%; right:-8%; width:240px; height:240px; background:radial-gradient(circle, rgba(255,193,7,0.1), transparent 70%); pointer-events:none; }
  .final-cta-box h2{ position:relative; z-index:1; font-size:clamp(1.25rem,2.4vw,1.6rem); color:var(--white); font-weight:700; margin-bottom:12px; }
  .final-cta-box p{ position:relative; z-index:1; color:rgba(255,255,255,0.68); font-size:0.86rem; line-height:1.65; max-width:620px; margin:0 auto 22px; }
  .final-cta-box p strong{ color:var(--orange); font-weight:600; }
  .final-cta-actions{ position:relative; z-index:1; display:flex; justify-content:center; gap:10px; flex-wrap:wrap; }
  .btn-cta-solid{ background:linear-gradient(90deg,#F2545B,#B3121F); color:var(--white); padding:11px 22px; border-radius:999px; font-weight:600; font-size:0.82rem; box-shadow:0 6px 16px rgba(225,29,46,0.35); transition:all 0.2s ease; }
  .btn-cta-solid:hover{ transform:translateY(-2px); box-shadow:0 8px 20px rgba(225,29,46,0.45); }
  .btn-cta-outline{ background:rgba(255,255,255,0.06); color:var(--white); border:1.5px solid rgba(255,255,255,0.35); padding:11px 22px; border-radius:999px; font-weight:600; font-size:0.82rem; backdrop-filter:blur(6px); transition:all 0.2s ease; }
  .btn-cta-outline:hover{ background:rgba(255,255,255,0.14); border-color:rgba(255,255,255,0.6); transform:translateY(-2px); }
  @media (max-width:600px){ .final-cta-box{ padding:30px 20px; } }

  /* ---------- Enquiry modal v4 (premium, no top icon) ---------- */
  .quote-box{ text-align:center; padding-top:30px; }
  .quote-title-v3{ font-size:1.2rem; font-weight:800; color:var(--navy); line-height:1.35; margin-bottom:22px; padding:0 16px; letter-spacing:0.1px; }
  .quote-box .enq-form{ text-align:left; }

  .enq-field{ width:100%; padding:12px 15px; border:1.5px solid #E9E9EE; border-radius:11px; font-family:'Poppins',sans-serif; font-size:0.85rem; color:var(--text); background:#FBFBFD; margin-bottom:12px; transition:border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease; }
  .enq-field::placeholder{ color:#A9ACB4; }
  .enq-field:focus{ outline:none; border-color:var(--orange); background:var(--white); box-shadow:0 0 0 4px rgba(225,29,46,0.1); }

  .enq-row{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:12px; }
  .enq-row .enq-field{ margin-bottom:0; }

  .enq-phone-row{ display:grid; grid-template-columns:84px 1fr; gap:10px; margin-bottom:12px; }
  .enq-phone-code{ display:flex; align-items:center; justify-content:center; padding:12px 8px; border:1.5px solid #E9E9EE; border-radius:11px; font-size:0.82rem; font-weight:700; color:var(--navy); background:#FBFBFD; }
  .enq-phone-row .enq-field{ margin-bottom:0; }

  .btn-send-enquiry{ width:100%; padding:15px 18px; border:none; border-radius:11px; background:linear-gradient(90deg,#F2545B,#B3121F); color:var(--white); font-family:'Poppins',sans-serif; font-weight:800; font-size:0.86rem; letter-spacing:0.8px; text-transform:uppercase; box-shadow:0 10px 24px rgba(225,29,46,0.35); cursor:pointer; margin-top:6px; transition:all 0.2s ease; }
  .btn-send-enquiry:hover{ transform:translateY(-2px); box-shadow:0 12px 30px rgba(225,29,46,0.45); }

  .enq-trust-list{ margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }
  .enq-trust-item{ display:flex; align-items:flex-start; gap:9px; margin-bottom:9px; font-size:0.76rem; color:var(--muted); line-height:1.45; }
  .enq-trust-item:last-child{ margin-bottom:0; }
  .enq-trust-item .enq-check-wrap{ width:18px; height:18px; border-radius:50%; background:rgba(26,156,92,0.1); display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:1px; }
  .enq-trust-item svg{ width:11px; height:11px; color:#1a9c5c; flex-shrink:0; }

  /* ---------- Regulatory statement (above footer copyright) ---------- */
  .regulatory-statement{ border-top:1px solid rgba(255,255,255,0.12); padding-top:22px; margin-top:8px; }
  .regulatory-statement h4{ font-size:0.78rem; text-transform:uppercase; letter-spacing:0.6px; color:rgba(255,255,255,0.5); font-weight:700; margin-bottom:10px; }
  .regulatory-statement p{ font-size:0.78rem; line-height:1.7; color:rgba(255,255,255,0.45); max-width:900px; }

  /* ---------- Detail page: Tour Highlights ---------- */
  .highlights-list{ list-style:none; }
  .highlights-list li{ display:flex; align-items:flex-start; gap:10px; margin-bottom:12px; font-size:0.9rem; color:var(--text); line-height:1.5; }
  .highlights-list li:last-child{ margin-bottom:0; }
  .highlights-list svg{ width:16px; height:16px; color:var(--orange); flex-shrink:0; margin-top:3px; }
