/*
Theme Name: VisitPK
Theme URI: https://visitpk.com
Author: VisitPK
Author URI: https://visitpk.com
Description: Custom theme for VisitPK - Sikh & Hindu Heritage Pilgrimage and Northern Pakistan Tours.
Version: 1.0
Requires at least: 6.0
Requires PHP: 7.4
License: Proprietary
Text Domain: visitpk
*/

  :root{
    --green:#0F6B39;
    --green-deep:#0A4C28;
    --green-bright:#3FA85C;
    --gold:#B8863B;
    --gold-pale:#F6EEDD;
    --sky:#2E7D9E;
    --sky-pale:#E7F2F6;
    --ink:#221F1C;
    --ink-soft:#5C574E;
    --ink-faint:#8A8377;
    --bg:#FFFDF9;
    --bg-alt:#F5F1E7;
    --line:#E6DFCE;
    --white:#FFFFFF;
    --shadow: 0 22px 44px -22px rgba(34,31,28,0.28);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:'Inter',sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4{font-family:'Lora',serif;color:var(--ink);margin:0 0 .5em;font-weight:600;letter-spacing:-.01em;}
  p{margin:0 0 1em;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1240px;margin:0 auto;padding:0 40px;}
  img,svg{display:block;max-width:100%;}
  button{font-family:inherit;cursor:pointer;border:none;background:none;}

  .eyebrow{font-family:'Inter',sans-serif;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--green-deep);display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;}
  .eyebrow::before{content:"";width:20px;height:1.5px;background:var(--green);display:inline-block;}
  .eyebrow.gold{color:var(--gold);}
  .eyebrow.gold::before{background:var(--gold);}
  .eyebrow.sky{color:var(--sky);}
  .eyebrow.sky::before{background:var(--sky);}
  .eyebrow.on-dark{color:#B9E6CC;}
  .eyebrow.on-dark::before{background:#B9E6CC;}
  .eyebrow.center{margin:0 auto 12px;}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;border-radius:8px;font-weight:600;font-size:14.5px;transition:.15s ease;white-space:nowrap;}
  .btn-primary{background:var(--green);color:#fff;box-shadow:0 14px 26px -12px rgba(15,107,57,.5);}
  .btn-primary:hover{background:var(--green-deep);transform:translateY(-1px);}
  .btn-outline{background:transparent;color:var(--ink);border:1.5px solid var(--line);}
  .btn-outline:hover{border-color:var(--ink);}
  .btn-whatsapp{background:#25D366;color:#fff;box-shadow:0 14px 26px -12px rgba(37,211,102,.55);}
  .btn-whatsapp:hover{background:#1EBE5A;}
  .btn-sm{padding:9px 16px;font-size:13px;}
  .btn-block{width:100%;}

  /* ---------- reveal animation ---------- */
  .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
  .reveal.in-view{opacity:1;transform:translateY(0);}

  /* ---------- top bar ---------- */
  .topbar{background:var(--ink);color:#E7E2D6;font-size:12.5px;}
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding:9px 40px;flex-wrap:wrap;gap:10px;}
  .topbar a{color:#fff;font-weight:600;}

  /* ---------- header / mega nav ---------- */
  header.main{background:rgba(255,253,249,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:80;transition:box-shadow .2s ease, padding .2s ease;}
  header.main.scrolled{box-shadow:0 8px 24px -16px rgba(34,31,28,.35);}
  header.main .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 40px;gap:28px;}
  .logo{display:flex;align-items:center;gap:10px;}
  .logo img{height:42px;width:auto;}

  nav.mega{display:flex;align-items:center;gap:10px;}
  .nav-item{position:relative;}
  .nav-item > a{display:flex;align-items:center;gap:5px;padding:12px 18px;font-weight:600;font-size:14.5px;color:var(--ink);border-radius:8px;}
  .nav-item > a:hover{background:var(--bg-alt);color:var(--green-deep);}

  .header-actions{display:flex;align-items:center;gap:12px;}
  .hamburger{display:none;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;}
  .hamburger svg{width:20px;height:20px;}

  .mobile-panel{display:none;background:#fff;border-bottom:1px solid var(--line);}
  .mobile-panel.open{display:block;}
  .mobile-panel .wrap{padding:16px 40px 24px;display:flex;flex-direction:column;gap:4px;}
  .mobile-item > a{width:100%;text-align:left;padding:14px 4px;font-weight:600;font-size:15px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);}

  /* ---------- hero ---------- */
  .hero{padding:52px 0 46px;position:relative;overflow:hidden;background:linear-gradient(180deg, var(--bg) 0%, var(--bg-alt) 100%);}
  .hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;max-width:1240px;text-align:left;}
  .hero-copy .eyebrow{justify-content:flex-start;}
  .hero-actions{justify-content:flex-start;}
  .trust-strip{justify-content:flex-start;}
  .hero-photo{position:relative;}
  .hero-photo img{border-radius:18px;box-shadow:var(--shadow);width:100%;height:420px;object-fit:cover;}
  .hero-stat-badge{
    position:absolute;left:-24px;bottom:-22px;background:#fff;border:1px solid var(--line);border-radius:14px;
    box-shadow:var(--shadow);padding:16px 20px;display:flex;gap:18px;
  }
  .hero-stat-badge .stat{text-align:left;}
  .hero-stat-badge .stat .n{font-family:'Lora',serif;font-size:22px;font-weight:700;color:var(--green-deep);line-height:1;}
  .hero-stat-badge .stat .l{font-size:11.5px;color:var(--ink-faint);margin-top:4px;max-width:12ch;}
  .hero-stat-badge .divider{width:1px;background:var(--line);}
  .hero h1{font-size:clamp(30px,4.4vw,48px);line-height:1.14;}
  .hero .sub{font-size:17.5px;color:var(--ink-soft);max-width:60ch;margin:0 auto 26px;}
  .hero-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:30px;}
  .trust-strip{display:flex;flex-wrap:wrap;gap:22px;justify-content:center;font-size:13px;color:var(--ink-soft);font-weight:500;}
  .trust-strip .t{display:flex;align-items:center;gap:7px;}
  .trust-strip svg{width:15px;height:15px;color:var(--green);}

  section{padding:70px 0;}
  section.alt{background:var(--bg-alt);}
  .section-head{max-width:640px;margin-bottom:36px;}
  .section-head.center{margin-left:auto;margin-right:auto;text-align:center;}
  .section-head h2{font-size:clamp(24px,3vw,32px);}
  .section-head p{color:var(--ink-soft);font-size:16px;}

  /* ---------- two-path selector ---------- */
  .path-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
  .path-card{border-radius:18px;padding:34px 30px;position:relative;overflow:hidden;box-shadow:var(--shadow);}
  .path-card.heritage{background:linear-gradient(160deg,#2B231A 0%,#3E2F1B 100%);color:#F3E7CE;}
  .path-card.adventure{background:linear-gradient(160deg,#123244 0%,#1B4C63 100%);color:#E4F2F7;}
  .path-card h3{font-size:23px;margin-bottom:10px;color:#fff;}
  .path-card p{font-size:14.5px;opacity:.92;margin-bottom:20px;}
  .path-card .taglist{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
  .path-card .tag{font-size:12px;padding:5px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.28);}

  /* ---------- multi-step planner ---------- */
  .plan-panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:36px;max-width:640px;margin:0 auto;}
  .plan-steps-track{display:flex;align-items:center;gap:8px;margin-bottom:26px;}
  .plan-dot{width:26px;height:26px;border-radius:50%;background:var(--bg-alt);border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--ink-faint);}
  .plan-dot.active{background:var(--green);border-color:var(--green);color:#fff;}
  .plan-line{flex:1;height:2px;background:var(--line);}
  .plan-step{display:none;}
  .plan-step.active{display:block;}
  .choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;}
  .choice-card{border:1.5px solid var(--line);border-radius:10px;padding:14px;font-size:13.5px;font-weight:600;text-align:center;cursor:pointer;transition:.15s ease;}
  .choice-card:hover{border-color:var(--green);}
  .choice-card.selected{border-color:var(--green);background:var(--bg-alt);color:var(--green-deep);}
  .field{margin-bottom:14px;}
  .field label{display:block;font-size:12px;font-weight:600;color:var(--ink-soft);margin-bottom:5px;}
  .field input,.field select{width:100%;border:1px solid var(--line);background:var(--bg-alt);border-radius:8px;padding:11px 12px;font-family:'Inter',sans-serif;font-size:14.5px;color:var(--ink);}
  .field input:focus{outline:2px solid var(--green);outline-offset:1px;border-color:var(--green);}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .plan-actions{display:flex;gap:10px;margin-top:6px;}
  .plan-fallback{text-align:center;margin-top:18px;font-size:13px;color:var(--ink-faint);}
  .plan-fallback a{color:var(--green-deep);font-weight:600;}
  .thankyou{display:none;text-align:center;padding:20px 0;}
  .thankyou.active{display:block;}
  .thankyou svg{width:44px;height:44px;color:var(--green);margin:0 auto 12px;}

  /* ---------- site grid ---------- */
  .site-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
  .site-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;scroll-margin-top:96px;}
  .site-card h4{font-size:17px;margin-bottom:8px;}
  .site-card p{font-size:14px;color:var(--ink-soft);margin:0;}

  /* ---------- NOC fold ---------- */
  .noc-panel{background:var(--green-deep);color:#EAF6EF;border-radius:18px;padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;}
  .noc-panel h2{color:#fff;}
  .noc-list{list-style:none;margin:0;padding:0;display:grid;gap:14px;}
  .noc-list li{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;}
  .noc-list svg{width:18px;height:18px;color:#B9E6CC;flex:none;margin-top:2px;}
  .noc-compare{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:20px;}
  .noc-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:13.5px;gap:12px;}
  .noc-row:last-child{border-bottom:none;}
  .noc-row .yes{color:#B9E6CC;font-weight:600;white-space:nowrap;}
  .noc-row .no{color:#F3D9B0;font-weight:600;white-space:nowrap;}

  /* ---------- logistics ---------- */
  .logi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  .logi-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;transition:transform .15s ease, box-shadow .15s ease;}
  .logi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
  .logi-card .ic{width:38px;height:38px;border-radius:10px;background:var(--bg-alt);display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
  .logi-card .ic svg{width:20px;height:20px;color:var(--green-deep);}
  .logi-card h4{font-size:15.5px;margin-bottom:6px;}
  .logi-card p{font-size:13.5px;color:var(--ink-soft);margin:0;}

  /* ---------- process w/ animated connector ---------- */
  .process-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .process-step{position:relative;}
  .process-step .connector{position:absolute;top:24px;left:calc(50% + 26px);right:calc(-50% + 26px);height:2px;background:var(--line);overflow:hidden;}
  .process-step .connector::after{content:"";position:absolute;inset:0;background:var(--green);width:0;transition:width .8s ease;}
  .process-step.in-view .connector::after{width:100%;}
  .process-step:last-child .connector{display:none;}
  .process-step .num{width:48px;height:48px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;margin-bottom:14px;position:relative;z-index:1;}
  .process-step h4{font-size:15px;margin-bottom:6px;}
  .process-step p{font-size:13px;color:var(--ink-soft);margin:0;}

  /* ---------- about ---------- */
  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;margin-bottom:52px;}
  .about-grid img{border-radius:16px;box-shadow:var(--shadow);}
  .cred-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
  .cred-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;text-align:center;}
  .cred-card .val{font-size:14px;font-weight:700;color:var(--green-deep);margin-bottom:4px;}
  .cred-card .lab{font-size:11.5px;color:var(--ink-faint);}
  .cred-note{font-size:12.5px;color:var(--ink-faint);text-align:center;margin-top:16px;font-style:italic;}

  /* ---------- guides / blog teaser ---------- */
  .guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
  .guide-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;transition:transform .15s ease, box-shadow .15s ease;}
  .guide-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
  .guide-card .tag{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gold);margin-bottom:10px;}
  .guide-card h4{font-size:15px;line-height:1.4;margin-bottom:0;}
  .guide-note{font-size:12.5px;color:var(--ink-faint);text-align:center;margin-top:18px;font-style:italic;}

  /* ---------- testimonials ---------- */
  .testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  .testi-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;}
  .testi-card .stars{color:var(--gold);font-size:13px;letter-spacing:2px;margin-bottom:12px;}
  .testi-card p{font-family:'Lora',serif;font-size:15px;color:var(--ink);margin-bottom:14px;}
  .testi-card .who{font-size:12.5px;color:var(--ink-faint);font-weight:600;}
  .sample-flag{display:inline-block;margin-top:20px;font-size:11.5px;font-family:'Inter',sans-serif;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8A5A1E;background:var(--gold-pale);border:1px solid #E3C989;padding:6px 12px;border-radius:6px;}

  /* ---------- faq ---------- */
  .faq-list{border-top:1px solid var(--line);max-width:820px;}
  .faq-item{border-bottom:1px solid var(--line);}
  .faq-q{width:100%;text-align:left;padding:19px 4px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:'Lora',serif;font-weight:600;font-size:16px;}
  .faq-q .plus{font-size:20px;color:var(--green);transition:transform .2s ease;flex:none;}
  .faq-item.open .faq-q .plus{transform:rotate(45deg);}
  .faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
  .faq-a p{padding:0 4px 19px;color:var(--ink-soft);font-size:14.5px;max-width:65ch;}

  /* ---------- contact ---------- */
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
  .contact-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;}
  .contact-row{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px;font-size:14.5px;color:var(--ink-soft);}
  .contact-row svg{width:18px;height:18px;color:var(--green-deep);flex:none;margin-top:2px;}
  .map-embed{border-radius:16px;overflow:hidden;border:1px solid var(--line);height:100%;min-height:280px;}
  .map-embed iframe{width:100%;height:100%;min-height:280px;border:0;}

  /* ---------- final cta ---------- */
  .final-cta{background:linear-gradient(135deg,var(--green-deep),#0A3D24);border-radius:20px;padding:50px;color:#EAF6EF;text-align:center;}
  .final-cta h2{color:#fff;font-size:clamp(24px,3vw,32px);}
  .final-cta p{color:#BEE0CC;max-width:56ch;margin:0 auto 24px;}
  .final-cta .actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

  /* ---------- footer ---------- */
  footer{background:var(--ink);color:#C9C3B6;padding:48px 0 24px;font-size:13.5px;}
  .foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;margin-bottom:34px;}
  .foot-brand img{height:36px;margin-bottom:12px;}
  .foot-brand p{color:#9C9585;font-size:13px;max-width:30ch;}
  .foot-col h5{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#8A8375;margin-bottom:12px;font-weight:700;}
  .foot-col a,.foot-col div{display:block;color:#D6D0C2;padding:4px 0;}
  .foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;color:#8A8375;}

  .wa-float{position:fixed;bottom:20px;right:20px;z-index:70;width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 22px -8px rgba(37,211,102,.6);}
  .wa-float svg{width:28px;height:28px;color:#fff;}

  @media (max-width: 980px){
    nav.mega{display:none;}
    .hamburger{display:flex;}
    .path-grid{grid-template-columns:1fr;}
    .site-grid{grid-template-columns:1fr;}
    .noc-panel{grid-template-columns:1fr;padding:28px;}
    .logi-grid{grid-template-columns:1fr 1fr;}
    .process-rail{grid-template-columns:1fr 1fr;row-gap:30px;}
    .process-step .connector{display:none;}
    .about-grid{grid-template-columns:1fr;}
    .cred-grid{grid-template-columns:1fr 1fr;}
    .guide-grid{grid-template-columns:1fr 1fr;}
    .testi-grid{grid-template-columns:1fr;}
    .contact-grid{grid-template-columns:1fr;}
    .foot-grid{grid-template-columns:1fr 1fr;}
    .hero .wrap{grid-template-columns:1fr;text-align:center;}
    .hero-copy .eyebrow, .hero-actions, .trust-strip{justify-content:center;}
    .hero-photo{order:-1;margin-bottom:8px;}
    .hero-photo img{height:280px;}
    .hero-stat-badge{position:static;margin-top:14px;justify-content:center;box-shadow:none;border:none;background:transparent;padding:0;}
  }
  @media (max-width: 980px){
    .wrap{padding:0 28px;}
    .topbar .wrap, header.main .wrap{padding-left:28px;padding-right:28px;}
    .mobile-panel .wrap{padding:16px 28px 24px;}
  }
  @media (max-width: 620px){
    .row2,.choice-grid{grid-template-columns:1fr;}
    .logi-grid{grid-template-columns:1fr;}
    .guide-grid{grid-template-columns:1fr;}
    .foot-grid{grid-template-columns:1fr;}
    section{padding:50px 0;}
    .wrap{padding:0 20px;}
    .topbar .wrap, header.main .wrap{padding-left:20px;padding-right:20px;}
    .mobile-panel .wrap{padding:14px 20px 20px;}
  }
