/* From DFG's index.html, unchanged. */
*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --navy:#0C1B2E;--navy2:#0f2138;--navy3:#152a45;--navy4:#1a3355;
  --blue:#1a4a8a;--bluem:#1d5299;
  --gold:#C8A84B;--goldl:#DDB96A;
  --white:#ffffff;--cream:#f8f6f1;
  --txt:rgba(255,255,255,0.68);--txtd:rgba(255,255,255,0.38);
  --grey:#f4f5f7;--greyd:#e8eaed;--txtgrey:#4a5568;--txtlg:#6b7280;
  --bdr:rgba(200,168,75,0.22);--bdr2:rgba(255,255,255,0.1);--bdrg:rgba(0,0,0,0.08);
  --red:#e53e3e;
}
html{scroll-behavior:smooth;font-size:17px;}
body{font-family:'Roboto',sans-serif;background:var(--navy);color:var(--white);overflow-x:hidden;font-size:1rem;line-height:1.7;}

/* ── NAV ── */
#nav{position:fixed;top:0;left:0;right:0;z-index:999;background:rgba(12,27,46,0.0);transition:background 0.4s,border 0.4s;}
#nav.scr{background:rgba(12,27,46,0.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--bdr2);}
.nw{max-width:1280px;margin:0 auto;padding:0 2.5rem;min-height:72px;display:flex;align-items:center;flex-wrap:nowrap;}
.logo-wrap{display:flex;align-items:center;gap:0.75rem;cursor:pointer;text-decoration:none;}
.logo-img{width:36px;height:36px;object-fit:contain;}
.logo-txt{font-family:'Roboto Slab',serif;font-size:1.4rem;font-weight:400;color:var(--white);letter-spacing:0.02em;}
.logo-txt span{color:var(--gold);}
.nm{display:flex;align-items:center;gap:0;margin-left:1.75rem;}
.nm a{color:rgba(255,255,255,0.8);text-decoration:none;font-size:0.85rem;font-weight:500;letter-spacing:0.05em;text-transform:uppercase;padding:0.4rem 1rem;transition:color 0.2s;cursor:pointer;}
.nm a:hover,.nm a.act{color:var(--white);}
.nav-right{display:flex;align-items:center;gap:1.25rem;margin-left:auto;}
.ncta{background:var(--gold)!important;color:var(--navy)!important;padding:0.48rem 1.2rem!important;font-weight:600!important;transition:background 0.2s!important;cursor:pointer!important;}
.ncta:hover{background:var(--goldl)!important;}
/* Language dropdown */
.lang-sw{position:relative;}
.lang-sw-btn{display:flex;align-items:center;gap:0.45rem;background:transparent;border:none;color:var(--txtd);font-family:'Roboto',sans-serif;font-size:0.82rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;padding:0.35rem 0;transition:color 0.2s;}
.lang-sw-btn:hover,.lang-sw.open .lang-sw-btn{color:var(--white);}
.lang-sw-arrow{display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform 0.2s;}
.lang-sw.open .lang-sw-arrow{transform:rotate(-135deg) translateY(-2px);}
.lang-sw-drop{position:absolute;top:calc(100% + 0.75rem);right:0;background:var(--navy2);border:1px solid var(--bdr2);min-width:110px;display:none;flex-direction:column;z-index:200;}
.lang-sw.open .lang-sw-drop{display:flex;}
.lang-sw-opt{background:transparent;border:none;color:var(--txtd);font-family:'Roboto',sans-serif;font-size:0.82rem;font-weight:500;letter-spacing:0.05em;padding:0.65rem 1rem;text-align:left;cursor:pointer;transition:all 0.15s;white-space:nowrap;}
.lang-sw-opt:hover{background:var(--navy3);color:var(--white);}
.lang-sw-opt.active{color:var(--gold);}

/* ── PAGE SYSTEM ── */
.pg{display:none;}
.pg.on{display:block;}

/* ── LAYOUT ── */
.ctr{max-width:1280px;margin:0 auto;padding:0 2.5rem;}
.sec{padding:4.5rem 0;}
.pghw + .ctr > .sec{padding-top:2.5rem;}
.secsm{padding:3rem 0;}

/* ── TYPOGRAPHY ── */
.eyebrow{font-size:0.84rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;display:flex;align-items:center;gap:0.77rem;}
.eyebrow::before{content:'';width:1.8rem;height:2px;background:var(--gold);flex-shrink:0;}
.eyebrow-no-bar::before{display:none;}
h1{font-family:'Roboto Slab',serif;font-size:clamp(2.8rem,5vw,4.4rem);font-weight:300;line-height:1.1;color:var(--white);}
h2{font-family:'Roboto Slab',serif;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:300;line-height:1.15;color:var(--white);}
h3{font-family:'Roboto',sans-serif;font-size:1.1rem;font-weight:600;color:var(--white);letter-spacing:0.02em;}
.lead{font-size:1.05rem;line-height:1.85;color:var(--txt);margin-top:1rem;font-weight:300;}
em{font-style:italic;color:var(--goldl);}
.btn-p{background:var(--gold);color:var(--navy);border:none;padding:0.88rem 2.2rem;font-family:'Roboto';font-size:0.85rem;letter-spacing:0.08em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background 0.2s;text-decoration:none;display:inline-flex;align-items:center;gap:0.65rem;}
.btn-p:hover{background:var(--goldl);}
.btn-s{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,0.35);padding:0.86rem 2rem;font-family:'Roboto';font-size:0.85rem;letter-spacing:0.08em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:all 0.2s;text-decoration:none;display:inline-flex;align-items:center;gap:0.65rem;}
.btn-s:hover{border-color:var(--gold);color:var(--gold);}
.divl{height:1px;background:var(--bdr2);max-width:1280px;margin:0 auto;}

/* ── HERO ── */
.hero-wrap{position:relative;height:100vh;min-height:700px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;}
.hero-bg{position:absolute;inset:0;background:
  linear-gradient(to bottom,rgba(12,27,46,0.18) 0%,rgba(12,27,46,0.52) 40%,rgba(12,27,46,0.96) 100%),
  url('https://images.unsplash.com/photo-1525625293386-3f8f99389edd?w=1800&q=80') center/cover no-repeat;}
.hero-content{position:relative;z-index:2;padding:0 2.5rem 5.5rem;max-width:1280px;margin:0 auto;width:100%;}
.hero-h1{font-family:'Roboto Slab',serif;font-size:clamp(2.6rem,4.5vw,4rem);font-weight:300;line-height:1.12;color:#fff;max-width:800px;margin-bottom:0.85rem;}
.hero-sub{font-size:1.1rem;line-height:1.88;color:rgba(255,255,255,0.75);max-width:680px;margin-bottom:2rem;font-weight:300;}
.hero-scroll{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:0.4rem;color:rgba(255,255,255,0.3);font-size:0.72rem;letter-spacing:0.15em;text-transform:uppercase;}
.hero-line{width:1px;height:2.5rem;background:linear-gradient(to bottom,var(--gold),transparent);margin-bottom:0.2rem;}
.hero-headline-row{display:flex;flex-direction:row;align-items:flex-start;gap:1.5rem;margin-bottom:0.85rem;}
.hero-text-col{flex:0 0 52%;min-width:0;}
.hero-text-col .hero-h1{max-width:none;margin-bottom:0;}
.hero-video-col{flex:0 0 45%;min-width:0;}
.hero-video-wrap{position:relative;width:100%;aspect-ratio:16/9;border-radius:8px;border:1.5px solid var(--gold);overflow:hidden;}
.hero-video-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;}
.hero-mute-btn{position:absolute;bottom:0.75rem;right:0.75rem;z-index:10;width:2.2rem;height:2.2rem;border-radius:50%;background:rgba(12,27,46,0.78);border:1px solid rgba(200,168,75,0.45);color:rgba(255,255,255,0.85);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:border-color 0.2s,color 0.2s;}
.hero-mute-btn:hover{border-color:var(--gold);color:var(--gold);}
.hero-mute-btn svg{width:1rem;height:1rem;flex-shrink:0;}

/* ── SERVICES STRIP (home) ── */
.svc-strip{background:var(--navy2);}
.svc-strip-hdr{text-align:center;padding:3rem 0 2rem;border-bottom:1px solid var(--bdr2);}
.svc-strip-ttl{font-family:'Roboto Slab',serif;font-size:1.7rem;font-weight:400;color:var(--white);}
.svc-strip-sub{font-size:0.92rem;color:var(--txtd);margin-top:0.4rem;}
.svc-home-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--bdr2);}
.svc-home-card{background:var(--navy3);padding:2rem 1.75rem;cursor:pointer;transition:background 0.2s;border-top:2px solid transparent;}
.svc-home-card:hover{background:var(--navy4);border-top-color:var(--gold);}
.shc-icon{font-size:1.6rem;margin-bottom:0.85rem;}
.shc-title{font-size:0.88rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--white);line-height:1.4;margin-bottom:0.3rem;}
.shc-sub{font-size:0.92rem;color:var(--txtd);line-height:1.6;}

/* ── WAVE ── */
.wv{background:var(--navy2);overflow:hidden;line-height:0;}

/* ── SOLUTIONS PAGE ── */
.sol-nav{background:var(--navy3);border-top:1px solid rgba(255,255,255,0.05);border-bottom:1px solid var(--bdr2);position:sticky;top:72px;z-index:100;}
.sol-nav-inner{max-width:1280px;margin:0 auto;padding:0 2.5rem;display:flex;gap:0;overflow-x:auto;}
.sol-nav-inner::-webkit-scrollbar{display:none;}
.snav-btn{background:transparent;border:none;color:var(--txtd);font-family:'Roboto';font-size:0.78rem;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;padding:1rem 1.25rem;cursor:pointer;border-bottom:2px solid transparent;transition:all 0.2s;white-space:nowrap;}
.snav-btn:hover,.snav-btn.active{color:var(--gold);border-bottom-color:var(--gold);}
.sol-section{padding:4rem 0;border-bottom:1px solid var(--bdr2);}
.sol-section:last-child{border-bottom:none;}
.sol-section h2{font-family:'Roboto Slab',serif;font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:400;color:var(--white);margin-bottom:1rem;}
.sol-section .sol-intro{font-size:1rem;line-height:1.9;color:var(--txt);margin-bottom:0.85rem;}
.sol-section .sol-sub-intro{font-size:0.97rem;line-height:1.9;color:var(--txt);margin-bottom:2rem;}
.sol-delivers{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--bdr2);margin-top:2rem;}
.sdel-col{background:var(--navy3);padding:2rem 2.25rem;}
.sdel-col-t{font-size:0.85rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem;padding-bottom:0.77rem;border-bottom:1px solid var(--bdr2);font-weight:600;}
.sdel-list{display:flex;flex-direction:column;gap:0.75rem;}
.sdel-item{display:flex;align-items:flex-start;gap:0.82rem;font-size:0.92rem;color:var(--txt);line-height:1.6;}
.sdel-item::before{content:'•';color:var(--gold);flex-shrink:0;font-size:1rem;line-height:1.4;}
.sdel-single{background:var(--navy3);padding:2rem 2.25rem;margin-top:2rem;}
.sol-challenges{background:var(--navy3);border-left:3px solid var(--gold);padding:1.75rem 2.25rem;margin:1.5rem 0;}
.sol-challenges-t{font-size:0.85rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin-bottom:0.9rem;font-weight:600;}

/* ── PAGE HERO (inner) ── */
.pghw{position:relative;padding-top:82px;height:48vh;min-height:340px;display:flex;align-items:flex-start;overflow:hidden;}
.pgh-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--navy) 0%,var(--navy4) 100%);}
.pgh-glow{position:absolute;top:-80px;right:-80px;width:550px;height:550px;background:radial-gradient(circle,rgba(200,168,75,0.09) 0%,transparent 65%);pointer-events:none;}
.pgh-content{position:relative;z-index:2;padding:1.5rem 2.5rem;max-width:1280px;margin:0 auto;width:100%;}
.pgh1{font-family:'Roboto Slab',serif;font-size:clamp(2.4rem,3.4vw,3.6rem);font-weight:400;line-height:1.15;color:#fff;margin:0.35rem 0 0.55rem;}
.pgh-sub{font-size:1.15rem;line-height:1.8;color:var(--txt);max-width:580px;font-weight:300;}

/* ── ABOUT PAGE ── */
.ab-intro{font-size:1rem;line-height:1.95;color:var(--txt);font-weight:300;}
.ab-two{display:grid;grid-template-columns:3fr 2fr;gap:5rem;align-items:start;margin:2.5rem 0;}
.ab-cred-list{display:flex;flex-direction:column;gap:1px;background:var(--bdr2);margin-top:2.5rem;}
.ab-cred-i{background:var(--navy3);padding:1.35rem 1.75rem;display:flex;gap:1rem;align-items:flex-start;}
.ab-cred-dot{width:7px;height:7px;background:var(--gold);border-radius:50%;flex-shrink:0;margin-top:0.35rem;}
.ab-cred-tx{font-size:0.92rem;line-height:1.7;color:var(--txt);}
.ab-val-list{display:flex;flex-direction:column;gap:1px;background:var(--bdr2);}
.ab-val-i{background:var(--navy3);padding:1.5rem 1.75rem;}
.ab-val-t{font-size:0.92rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold);margin-bottom:0.35rem;font-weight:600;}
.ab-val-b{font-size:0.88rem;line-height:1.72;color:var(--txtd);}
/* LEADERSHIP */
.leader-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;background:transparent;margin-top:3rem;}
.lc{background:var(--navy3);overflow:hidden;border:1px solid var(--bdr2);}
.lc-photo{width:65%;max-width:180px;aspect-ratio:3/4;object-fit:cover;object-position:top center;display:block;margin:1.75rem auto 0;border-radius:2px;}
.lc-body{padding:1.75rem 1.75rem 2rem;}
.lc-name{font-family:'Roboto Slab',serif;font-size:1.4rem;font-weight:400;color:#fff;margin-bottom:0.2rem;}
.lc-role{font-size:0.88rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:1rem;padding-bottom:0.90rem;border-bottom:1px solid var(--bdr2);}
.lc-bio{font-size:0.9rem;line-height:1.78;color:var(--txt);}
/* CLIENTS LIST */
.cl-list{display:grid;grid-template-columns:1fr 1fr;gap:0.65rem 2rem;margin-top:1rem;}
.cl-item{font-size:0.95rem;color:var(--txt);display:flex;align-items:flex-start;gap:0.75rem;}
.cl-item::before{content:'—';color:var(--gold);flex-shrink:0;}

/* ── CASE STUDIES ── */
.case-list{display:flex;flex-direction:column;gap:1px;background:var(--bdr2);margin:3rem 0;}
.case-card{background:var(--navy3);padding:3rem;border-top:2px solid var(--bdr2);transition:border-top-color 0.2s;}
.case-card:hover{border-top-color:var(--gold);}
.case-num{font-size:0.84rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:0.85rem;}
.case-title{font-family:'Roboto Slab',serif;font-size:1.4rem;font-weight:400;color:#fff;margin-bottom:2rem;line-height:1.3;}
.case-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2.5rem;align-items:start;}
.case-col-lbl{font-size:0.84rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:0.77rem;border-bottom:1px solid var(--bdr2);padding-bottom:0.65rem;}
.case-col-txt{font-size:0.92rem;line-height:1.85;color:var(--txt);}
.case-col-out{font-size:0.92rem;line-height:1.85;color:var(--goldl);}

/* ── WHO WE SERVE ── */
.sv-list{display:flex;flex-direction:column;gap:1px;background:var(--bdr2);margin:3rem 0;}
.sv-item{background:var(--navy3);padding:2.5rem 3rem;display:grid;grid-template-columns:80px 1fr;gap:2.5rem;align-items:start;transition:background 0.2s;}
.sv-item:hover{background:var(--navy4);}
.sv-num{font-family:'Roboto Slab',serif;font-size:2.5rem;font-weight:300;color:var(--gold);opacity:0.3;line-height:1;}
.sv-title{font-size:0.92rem;letter-spacing:0.08em;text-transform:uppercase;color:#fff;margin-bottom:0.70rem;font-weight:700;}
.sv-body{font-size:0.97rem;line-height:1.85;color:var(--txt);}

/* ── CONTACT ── */
.co-grid{display:grid;grid-template-columns:1fr 1.7fr;gap:5rem;margin:3rem 0;}
.co-info-item{margin-bottom:2rem;}
.co-il{font-size:0.84rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:0.4rem;}
.co-iv{font-size:0.95rem;color:#fff;line-height:1.65;}
.fg{margin-bottom:1.35rem;}
.fg label{display:block;font-size:0.85rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--txtd);margin-bottom:0.45rem;font-weight:500;}
.fg input,.fg select,.fg textarea{width:100%;background:var(--navy3);border:1px solid var(--bdr2);color:#fff;font-family:'Roboto';font-size:0.95rem;padding:0.85rem 1rem;outline:none;transition:border-color 0.2s;}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--gold);}
.fg select option{background:var(--navy2);}
.fg textarea{resize:vertical;min-height:100px;}
.fr2{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.sub-btn{background:var(--gold);color:var(--navy);border:none;padding:0.9rem;font-family:'Roboto';font-size:0.88rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background 0.2s;width:100%;margin-top:0.65rem;}
.sub-btn:hover{background:var(--goldl);}
.co-info-box{background:var(--navy3);border-left:3px solid var(--gold);padding:1.75rem 2rem;margin-top:2rem;}

/* ── FOOTER ── */
#foot{background:var(--navy2);border-top:1px solid var(--bdr2);padding:2.5rem 0;}
.fi{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem;}
.fll{display:flex;gap:1.5rem;flex-wrap:wrap;}
.fll a{font-size:0.85rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--txtd);text-decoration:none;cursor:pointer;transition:color 0.2s;}
.fll a:hover{color:var(--gold);}
.fcp{font-size:0.85rem;color:var(--txtd);}

/* ── ANIMATIONS ── */
@keyframes fu{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}
.pg.on .a1{animation:fu 0.55s ease 0.05s both;}
.pg.on .a2{animation:fu 0.55s ease 0.15s both;}
.pg.on .a3{animation:fu 0.55s ease 0.25s both;}
.pg.on .a4{animation:fu 0.55s ease 0.35s both;}

/* ── GDIV ── */
.gdiv{display:flex;align-items:center;gap:1.5rem;padding:2.5rem 0;opacity:0.4;}
.gdiv::before,.gdiv::after{content:'';flex:1;height:1px;background:var(--gold);}
.gdiv span{font-size:0.73rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);white-space:nowrap;}

/* ── LANGUAGE SYSTEM ── */
.en-text{display:block;}
.zh-text{display:none !important;}
.en-inline{display:inline;}
.zh-inline{display:none !important;}
body.zh .en-text{display:none !important;}
body.zh .zh-text{display:block !important;}
body.zh .en-inline{display:none !important;}
body.zh .zh-inline{display:inline !important;}

/* ════════════════════════════════
   RESPONSIVE SYSTEM — PROFESSIONAL
════════════════════════════════ */

/* Always hide mobile-only elements on desktop */
.mob-menu-btn { display: none !important; }
.mob-nav { display: none !important; }
.mob-nav.open { display: block !important; }

/* ── TABLET: 1024px ── */
@media (max-width: 1024px) {
  html { font-size: 16px; }
  .ctr { padding: 0 2rem; }
  .nw { padding: 0 2rem; }
  
  .nm a { font-size: 0.88rem; padding: 0.4rem 0.82rem; }
  
  /* Grids */
  .svc-home-grid { grid-template-columns: repeat(2, 1fr); }
  .leader-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
  .tg { grid-template-columns: 1fr 1fr; }
  .wg { grid-template-columns: repeat(2, 1fr); }
  .sg { grid-template-columns: 1fr; }
  .sovg { grid-template-columns: 1fr; }
  .ab-two { gap: 3rem; }
  
  /* Hero */
  .hero-h1 { font-size: clamp(2.2rem, 5vw, 3.5rem); }
  .hero-sub { font-size: 1rem; }
  .pgh-content { padding-left: 2rem; padding-right: 2rem; }

  /* Solutions */
  .sol-delivers { grid-template-columns: 1fr; }
}

/* ── MOBILE: 768px ── */
@media (max-width: 768px) {
  html { font-size: 16px; }

  /* NAV — hide desktop links, show hamburger */
  .nm { display: none !important; }
  .nav-right .ncta { display: none !important; }

  .mob-menu-btn { 
    display: flex !important; 
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    padding: 0.65rem;
    margin-left: 0.65rem;
    background: none;
    border: none;
  }
  .mob-menu-btn span {
    display: block;
    width: 22px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: transform 0.3s ease, opacity 0.3s ease;
    transform-origin: center;
  }
  .mob-nav {
    display: none;
    position: fixed;
    top: 72px;
    left: 0;
    right: 0;
    background: rgba(12,27,46,0.99);
    backdrop-filter: blur(20px);
    border-top: 1px solid var(--bdr2);
    z-index: 998;
    flex-direction: column;
    padding: 0.65rem 0 2rem;
  }
  .mob-nav.open { display: flex; }
  .mob-nav a {
    color: rgba(255,255,255,0.9);
    text-decoration: none;
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing:0.06em;
    text-transform: uppercase;
    padding: 1.25rem 2rem;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    cursor: pointer;
    display: block;
    -webkit-tap-highlight-color: rgba(200,168,75,0.15);
    transition: color 0.15s, background 0.15s;
  }
  .mob-nav a:active {
    color: var(--gold);
    background: rgba(200,168,75,0.08);
  }
  .mob-nav a.mob-sub {
    font-size: 0.82rem;
    padding: 0.85rem 2rem 0.85rem 3rem;
    color: rgba(255,255,255,0.6);
    border-left: 2px solid rgba(200,168,75,0.35);
    margin-left: 1.5rem;
    letter-spacing: 0.06em;
  }
  .mob-nav a.mob-sub:active { color: var(--gold); }
  .mob-nav a.ncta {
    background: var(--gold);
    color: var(--navy) !important;
    margin: 1rem 1.5rem;
    text-align: center;
    border: none !important;
    font-weight: 700;
    padding: 1rem 1.5rem;
    font-size: 1rem;
    letter-spacing: 0.1em;
  }

  /* LAYOUT */
  .ctr { padding: 0 1.25rem; }
  .nw { padding: 0 1.25rem; min-height: 64px; }
  .sec { padding: 3.5rem 0; }
  .secsm { padding: 2.5rem 0; }

  /* HERO */
  .hero-wrap { min-height: 100svh; min-height: 100vh; }
  .hero-content { padding: 0 1.25rem 4rem; }
  .hero-h1 { font-size: clamp(1.9rem, 7.5vw, 2.8rem); margin-bottom: 1rem; }
  .hero-sub { font-size: 0.95rem; max-width: 100%; }
  .hero-scroll { display: none; }
  .hero-eyebrow { font-size: 0.77rem; }
  .hero-headline-row { flex-direction: column; align-items: flex-start; gap: 1.25rem; }
  .hero-video-col { width: 100%; flex: none; }
  .hero-text-col .hero-h1 { margin-bottom: 0; }

  /* PAGE HERO */
  .pghw { height: auto; min-height: 42vh; padding-top: 64px; }
  .pgh-content { padding: 1.25rem 1.25rem; }
  .pgh1 { font-size: clamp(2.4rem, 6.5vw, 3.2rem); }
  .pgh-sub { font-size: 1rem; }

  /* TYPOGRAPHY */
  h2 { font-size: clamp(1.5rem, 5.5vw, 2rem); }
  h3 { font-size: 1rem; }
  .eyebrow { font-size: 0.77rem; }

  /* SERVICES STRIP */
  .svc-home-grid { grid-template-columns: 1fr 1fr; }
  .svc-strip-hdr { padding: 2rem 1.25rem 1.5rem; }
  .svc-strip-ttl { font-size: 1.3rem; }
  .svc-home-card { padding: 1.5rem 1.25rem; }
  .shc-icon { font-size: 1.3rem; margin-bottom: 0.65rem; }
  .shc-title { font-size: 0.88rem; }
  .shc-sub { font-size: 0.84rem; }

  /* SOLUTIONS NAV */
  .sol-nav { top: 64px; overflow-x: auto; }
  .sol-nav::-webkit-scrollbar { display: none; }
  .sol-nav { scrollbar-width: none; }
  .sol-nav-inner { padding: 0 1.25rem; }
  .snav-btn { font-size: 0.80rem; padding: 0.85rem 0.85rem; white-space: nowrap; }

  /* GRIDS → SINGLE COLUMN */
  .wg { grid-template-columns: 1fr; }
  .sg { grid-template-columns: 1fr; }
  .sovg { grid-template-columns: 1fr; }
  .pg2 { grid-template-columns: 1fr; }
  .tg { grid-template-columns: 1fr; }
  .sol-delivers { grid-template-columns: 1fr; }

  /* VS TABLE */
  .vs-l { grid-template-columns: 1fr; gap: 2rem; }
  .vst { font-size: 0.88rem; }
  .vst th, .vst td { padding: 0.75rem 0.85rem; }
  .vst th:first-child { display: none; }
  .vst td:first-child { display: none; }

  /* ABOUT */
  .ab-two { grid-template-columns: 1fr; gap: 2.5rem; }
  .leader-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .lc-photo { width: 55%; max-width: 180px; }
  .cl-list { grid-template-columns: 1fr; gap: 0.4rem; }

  /* CASE STUDIES */
  .case-cols { grid-template-columns: 1fr; gap: 1.5rem; }
  .case-cols > div { min-width: 0; }
  .case-header { padding: 1.5rem 1.25rem 1.25rem; }
  .case-body { padding: 1.25rem 1.25rem 1.75rem; }
  .case-num { font-size: 0.62rem; }
  .case-title { font-size: 1.1rem; }

  /* WHO WE SERVE */
  .sv-item { grid-template-columns: 44px 1fr; gap: 1rem; padding: 1.5rem 1.25rem; }
  .sv-num { font-size: 1.6rem; }

  /* CONTACT */
  .co-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .fr2 { grid-template-columns: 1fr; }
  .fg input, .fg select, .fg textarea { font-size: 16px; } /* Prevent iOS zoom */

  /* FOOTER */
  .fi { flex-direction: column; align-items: flex-start; gap: 1.25rem; }
  .fll { gap: 0.85rem; flex-wrap: wrap; }
  .fll a { font-size: 0.85rem; }

  /* CTA BAND */
  .ctab { padding: 4rem 0; }
  .ctab h2 { font-size: clamp(1.5rem, 5.5vw, 2.2rem); }
  .ctab p { font-size: 0.88rem; }

  /* BUTTONS */
  .btn-p, .btn-s { padding: 0.85rem 1.6rem; font-size: 0.92rem; }

  /* SOL SECTION */
  .sdel-single { padding: 1.5rem; }
  .sdel-col { padding: 1.5rem; }

  /* ── SOLUTIONS PAGE ── */
  .sol-section { padding: 2.5rem 0; }
  .sol-section h2 { font-size: clamp(1.4rem, 5.5vw, 1.9rem); }
  .sol-section .sol-intro { font-size: 0.88rem; }
  .sol-section .sol-sub-intro { font-size: 0.85rem; }
  .sdel-col-t { font-size: 0.7rem; }
  .sdel-item { font-size: 0.82rem; }

  /* ── ABOUT PAGE ── */
  .ab-intro { font-size: 0.88rem; }
  .lc-body { padding: 1.25rem; }
  .lc-name { font-size: 1.1rem; }
  .lc-role { font-size: 0.7rem; }
  .lc-bio { font-size: 0.82rem; }
  .lc-photo { width: 60%; max-width: 200px; margin-top: 1.25rem; }
  .ab-cred-i { padding: 1.1rem 1.25rem; }
  .ab-cred-tx { font-size: 0.82rem; }
  .ab-val-i { padding: 1.1rem 1.25rem; }
  .ab-val-t { font-size: 0.75rem; }
  .ab-val-b { font-size: 0.78rem; }

  /* ── CASE STUDIES ── */
  .case-card { border-top-width: 2px; }
  .case-col-lbl { font-size: 0.65rem; }
  .case-col-txt { font-size: 0.82rem; }
  .case-col-out { font-size: 0.82rem; }

  /* ── WHO WE SERVE ── */
  .sv-list { margin: 2rem 0; }
  .sv-title { font-size: 0.78rem; }
  .sv-body { font-size: 0.8rem; }
  .sv-num { font-size: 1.5rem; opacity: 0.25; }

  /* ── CONTACT ── */
  .co-info-item { margin-bottom: 1.25rem; }
  .co-il { font-size: 0.65rem; }
  .co-iv { font-size: 0.85rem; }
  .co-info-box { padding: 1.25rem; }
  .fg label { font-size: 0.68rem; }
  .sub-btn { font-size: 0.82rem; padding: 1rem; min-height: 52px; }

  /* ── TESTIMONIALS ── */
  .tc { padding: 1.75rem 1.25rem; }
  .tq { font-size: 1.1rem; }
  .tt { font-size: 0.8rem; }
  .ts { font-size: 0.65rem; }

  /* ── WHO GRID ── */
  .wc { padding: 1.75rem 1.25rem; }
  .wct { font-size: 0.75rem; }
  .wcb { font-size: 0.8rem; }
  .wcn { font-size: 1.1rem; }

  /* ── HOME SERVICE CARDS ── */
  .svc-home-card:last-child { padding: 1.5rem 1.25rem; }

  /* ── WAVE ── */
  canvas.wave { height: 100px; }

  /* ── FOOTER ── */
  .fi { padding: 0.5rem 0; }
  .fcp { font-size: 0.7rem; }
  .logo-txt { font-size: 1rem; }

  /* ── VS TABLE — hide on very small screens, show stacked ── */
  .vs-l > div:last-child { overflow-x: auto; -webkit-overflow-scrolling: touch; }

  /* ── FPA MODULES ── */
  .fpa-g { grid-template-columns: 1fr; }
  .fpam { padding: 1.5rem 1.25rem; }
  .fpamt { font-size: 0.7rem; }
  .fpamb { font-size: 0.8rem; }
  .fpam li { font-size: 0.75rem; }

  /* ── BUTTONS — full width on mobile ── */
  .hero-btns { flex-direction: column; gap: 0.75rem; }
  .hero-btns .btn-p, .hero-btns .btn-s { width: 100%; justify-content: center; }

  /* ── SECTION DIVIDERS ── */
  .gdiv { padding: 1.5rem 0; }
  .gdiv span { font-size: 0.6rem; }

  /* ── ABOUT WHO WE ARE section header ── */
  .ab-two > div > div[style*="padding:3rem"] { padding: 1.5rem 0 1rem !important; margin-bottom: 1.5rem !important; }

}


/* ── SMALL MOBILE: 480px ── */
@media (max-width: 480px) {
  html { font-size: 15px; }
  .svc-home-grid { grid-template-columns: 1fr; }
  .nw { padding: 0 1rem; min-height: 58px; }
  .mob-nav { top: 58px; max-height: calc(100vh - 58px); }
  .sol-nav { top: 58px; }
  .ctr { padding: 0 1rem; }
  .hero-content { padding: 0 1rem 3rem; }
  .pgh-content { padding: 1.75rem 1rem 2rem; }
  .pghw { padding-top: 58px; height: auto; min-height: 38vh; }
  .pgh1 { font-size: clamp(1.8rem, 7.5vw, 2.4rem); }
  .pgh-sub { font-size: 0.9rem; }
  .hero-h1 { font-size: clamp(1.6rem, 8vw, 2.2rem); }
  .hero-sub { font-size: 0.88rem; }
  .tg { grid-template-columns: 1fr; }
  .logo-txt { font-size: 0.95rem; }
  .logo-img { width: 28px; height: 28px; }
  .sv-item { grid-template-columns: 36px 1fr; gap: 0.75rem; padding: 1.25rem 1rem; }
  .lc-photo { width: 65%; }
  .case-body { padding: 1rem; }
  .case-header { padding: 1.25rem 1rem; }
  .fpa-g { gap: 1px; }
  .sec { padding: 3rem 0; }
  .svc-strip-ttl { font-size: 1.1rem; }
  h2 { font-size: clamp(1.35rem, 5.5vw, 1.8rem); }
  .blog-list-content { padding: 1.25rem 1rem; }
  .blog-list-title { font-size: 1.1rem; }
  .art-head { padding: 3.5rem 0 1.75rem; }

  /* Quote form — extra-small */
  .qf-branch-btn { padding: 1.1rem 1rem; gap: 0.5rem; }
  .qf-branch-icon svg { width: 36px; height: 36px; }
  .qf-branch-title { font-size: 1rem; }
  .qf-branch-sub { font-size: 0.8rem; }
  .qf-step-q { font-size: 1.1rem; }
  .qf-step-hint { font-size: 0.83rem; margin-bottom: 1.25rem; }
  .qf-opt { padding: 0.9rem 1.1rem; font-size: 0.9rem; }
  .qf-check-item { padding: 0.9rem 1.1rem; font-size: 0.9rem; }

  /* Split section tighter on small phones */
  .split-content { padding: 2rem 1.25rem; }

  /* Footer — 6 links need slightly more breathing room */
  .fll { gap: 0.75rem; }
}

/* ── PAYROLLPRO PAGE ── */
.pp-country-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--bdr2);margin:2.5rem 0;}
.pp-country{background:var(--navy3);padding:1.75rem 1.5rem;text-align:center;transition:background 0.2s;}
.pp-country:hover{background:var(--navy4);}
.pp-country.soon{opacity:0.55;}
.pp-country-flag{font-size:2rem;margin-bottom:0.6rem;}
.pp-country-name{font-size:0.85rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--white);margin-bottom:0.2rem;}
.pp-country-regs{font-size:0.72rem;color:var(--gold);letter-spacing:0.05em;line-height:1.5;}
.pp-country-badge{display:inline-block;font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;background:rgba(200,168,75,0.12);color:var(--gold);border:1px solid var(--bdr);padding:0.18rem 0.55rem;margin-top:0.55rem;border-radius:2px;}
.pp-diff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bdr2);margin:2.5rem 0;}
.pp-diff-card{background:var(--navy3);padding:2.5rem 2rem;border-top:2px solid transparent;transition:border-color 0.2s,background 0.2s;}
.pp-diff-card:hover{border-top-color:var(--gold);background:var(--navy4);}
.pp-diff-icon{font-size:2rem;margin-bottom:1rem;}
.pp-diff-title{font-family:'Roboto Slab',serif;font-size:1.1rem;font-weight:400;color:var(--white);margin-bottom:0.65rem;}
.pp-diff-body{font-size:0.9rem;line-height:1.8;color:var(--txt);}
.pp-quote{background:var(--navy3);border-left:3px solid var(--gold);padding:1.75rem 2.25rem;margin:2.5rem 0;font-family:'Roboto Slab',serif;font-size:1.05rem;font-weight:300;color:var(--txtd);font-style:italic;line-height:1.7;}

/* ── SCREENSHOTS ── */
.ss-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2.5rem 0;}
.ss-wrap{position:relative;overflow:hidden;border:1px solid var(--bdr2);background:var(--navy4);border-radius:2px;}
.ss-wrap.full{grid-column:1/-1;}
.ss-wrap img{width:100%;display:block;border-radius:2px 2px 0 0;}
.ss-mask{position:absolute;left:0;right:0;background:linear-gradient(to bottom,transparent 0%,rgba(9,17,33,0.88) 35%,rgba(9,17,33,0.98) 100%);pointer-events:none;}
.pp-ss-img{width:100%;height:auto;display:block;border:1px solid var(--bdr2);}
.ss-label{padding:0.85rem 1.25rem;background:var(--navy2);border-top:1px solid var(--bdr2);}
.ss-label-title{font-size:0.78rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);margin-bottom:0.2rem;}
.ss-label-desc{font-size:0.76rem;color:var(--txtd);line-height:1.5;}

/* ── RESOURCES PAGE ── */
.art-item{padding:3.5rem 0 2.5rem;}
.art-byline{font-size:0.95rem;font-style:italic;color:var(--txtd);margin:0.4rem 0 2rem;line-height:1.6;}
.art-divider{border:none;border-top:1px solid var(--bdr2);margin:0;}
.art-item h3{font-family:'Roboto Slab',serif;font-size:1.2rem;font-weight:500;color:var(--white);margin:2rem 0 0.6rem;padding-left:0.9rem;border-left:2px solid var(--gold);}
.art-compare{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--bdr2);border:1px solid var(--bdr2);margin:1.75rem 0 2.25rem;overflow:hidden;}
.art-compare-col{background:var(--navy3);padding:1.5rem 1.75rem;}
.art-compare-label{font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:700;margin-bottom:0.9rem;}
.art-compare-item{font-size:0.88rem;color:var(--txt);line-height:1.9;}
/* ── SPLIT PHOTO SECTIONS ── */
.split-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:420px;}
.split-photo{position:relative;overflow:hidden;min-height:380px;}
.split-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.split-photo::after{content:'';position:absolute;inset:0;background:rgba(12,27,46,0.18);pointer-events:none;}
.split-content{padding:4.5rem 4rem;display:flex;flex-direction:column;justify-content:center;background:var(--navy2);}
.split-content h2{font-family:'Roboto Slab',serif;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:400;color:var(--white);margin-bottom:1.25rem;line-height:1.25;}
.split-content p{font-size:1rem;line-height:1.9;color:var(--txt);}
.split-content .eyebrow{margin-bottom:0.75rem;}
/* ── BLOG LIST (horizontal cards with cover image) ── */
.blog-list{display:flex;flex-direction:column;gap:2rem;margin:3rem 0;}
.blog-list-card{display:grid;grid-template-columns:260px 1fr;gap:0;background:var(--navy3);border:1px solid var(--bdr2);overflow:hidden;cursor:pointer;transition:border-color 0.2s,background 0.2s;}
.blog-list-card:hover{border-color:var(--gold);background:var(--navy4);}
.blog-list-img{width:100%;height:100%;object-fit:cover;display:block;min-height:200px;}
.blog-list-content{padding:2rem 2.25rem;display:flex;flex-direction:column;}
.blog-list-tag{font-size:0.68rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:0.75rem;}
.blog-list-title{font-family:'Roboto Slab',serif;font-size:1.25rem;font-weight:400;color:var(--white);line-height:1.3;margin-bottom:0.85rem;}
.blog-list-excerpt{font-size:0.9rem;color:var(--txt);line-height:1.78;flex:1;}
.blog-list-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;margin-top:1.25rem;border-top:1px solid var(--bdr2);}
.blog-list-date{font-size:0.75rem;color:var(--txtd);}
.blog-list-cta{font-size:0.72rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);text-decoration:none;}
/* ── PAGE PHOTO STRIP ── */
.page-photo-strip{width:100%;height:320px;overflow:hidden;position:relative;}
.page-photo-strip img{width:100%;height:100%;object-fit:cover;display:block;}
.page-photo-strip::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(12,27,46,0.6) 0%,rgba(12,27,46,0.1) 100%);}
/* ── BLOG & NEWS LISTING ── */
.blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:3rem 0;}
.blog-card{background:var(--navy3);border:1px solid var(--bdr2);padding:2rem 2rem 1.75rem;display:flex;flex-direction:column;cursor:pointer;transition:border-color 0.2s,background 0.2s;}
.blog-card:hover{border-color:var(--gold);background:var(--navy4);}
.blog-card-tag{font-size:0.68rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:0.9rem;}
.blog-card-title{font-family:'Roboto Slab',serif;font-size:1.22rem;font-weight:400;color:var(--white);line-height:1.3;margin-bottom:0.85rem;}
.blog-card-excerpt{font-size:0.9rem;color:var(--txt);line-height:1.78;flex:1;margin-bottom:1.5rem;}
.blog-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--bdr2);}
.blog-card-date{font-size:0.75rem;color:var(--txtd);letter-spacing:0.04em;}
.blog-card-cta{font-size:0.72rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold);}
/* ── ARTICLE INDIVIDUAL PAGE ── */
.art-head{background:var(--navy2);border-bottom:1px solid var(--bdr2);padding:4.5rem 0 2.5rem;}
.art-back{font-size:0.72rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);cursor:pointer;display:inline-flex;align-items:center;gap:0.45rem;margin-bottom:2rem;transition:color 0.2s,gap 0.2s;border:1px solid rgba(200,168,75,0.3);padding:0.45rem 0.9rem 0.45rem 0.7rem;background:rgba(200,168,75,0.06);}
.art-back:hover{color:var(--white);border-color:rgba(255,255,255,0.25);background:rgba(255,255,255,0.05);gap:0.65rem;}
.art-bps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bdr2);border:1px solid var(--bdr2);margin:1.75rem 0 2.25rem;overflow:hidden;}
.art-bps-card{background:var(--navy3);padding:1.25rem 1.1rem;}
.art-bps-client{font-size:0.68rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;color:var(--gold);margin-bottom:0.6rem;}
.art-bps-prob{font-size:0.8rem;color:var(--txtd);line-height:1.65;margin-bottom:0.75rem;}
.art-bps-sol{font-size:0.8rem;color:var(--white);line-height:1.65;}
.art-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--bdr2);border:1px solid var(--bdr2);margin:1.75rem 0 2.25rem;overflow:hidden;}
.art-stage{background:var(--navy3);padding:1.1rem 0.9rem;text-align:center;}
.art-stage-label{font-size:0.68rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;color:var(--gold);margin-bottom:0.6rem;}
.art-stage-items{font-size:0.78rem;color:var(--txt);line-height:1.8;}

/* ── RESPONSIVE: new pages ── */
@media (max-width: 1024px) {
  .pp-country-grid { grid-template-columns: repeat(3,1fr); }
  .pp-diff-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 768px) {
  .pp-country-grid { grid-template-columns: 1fr 1fr; }
  .pp-diff-grid { grid-template-columns: 1fr; }
  .ss-grid { grid-template-columns: 1fr; }
  .art-compare { grid-template-columns: 1fr; }
  .art-bps-grid { grid-template-columns: 1fr; }
  .art-stages { grid-template-columns: 1fr 1fr; }
  .blog-grid { grid-template-columns: 1fr; }
  .pp-quote { padding: 1.25rem 1.5rem; font-size: 0.92rem; }
  .split-wrap { grid-template-columns: 1fr; }
  .pghw-photo-row { flex-direction: column; }
  .pghw-img-side { display: none; }
  .pghw-photo .pgh-content { padding-right: 0; }
  .split-photo { min-height: 260px; }
  .split-content { padding: 3rem 2rem; }
  .blog-list-card { grid-template-columns: 1fr; }
  .blog-list-img { min-height: 200px; max-height: 220px; object-position: top center; }
  .pdf-viewer { display: none; }
  .pdf-mobile-btn { display: block; }
}

/* ── WIDE SCREENS: 1440px+ ── */
@media (min-width: 1440px) {
  html { font-size: 18px; }
  .ctr { max-width: 1400px; }
  .nw { max-width: 1400px; }
  .pgh-content { max-width: 1400px; }
}


/* ── DROPDOWN NAV ── */
.has-drop{position:relative;display:inline-block;}
.has-drop > a{display:flex;align-items:center;gap:0.35rem;cursor:pointer;}
.has-drop > a::after{
  content:'';display:inline-block;
  width:0;height:0;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-top:5px solid rgba(255,255,255,0.55);
  transition:transform 0.2s;
  margin-top:1px;
}
.has-drop:hover > a::after{transform:rotate(180deg);}

.drop-menu{
  visibility:hidden;
  opacity:0;
  position:absolute;
  top:100%;
  left:50%;
  transform:translateX(-50%);
  background:rgba(9,17,33,0.99);
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
  border:1px solid rgba(200,168,75,0.25);
  border-top:2px solid var(--gold);
  min-width:300px;
  z-index:1000;
  box-shadow:0 16px 48px rgba(0,0,0,0.5);
  transition:opacity 0.18s ease, visibility 0.18s ease;
  /* Extend hitbox upward so mouse movement doesn't break hover */
  padding-top:2px;
  margin-top:0;
}
/* Invisible hover bridge between nav item and dropdown */
.has-drop::after{
  content:'';
  position:absolute;
  top:100%;
  left:0;
  right:0;
  height:4px;
  background:transparent;
}
.has-drop:hover .drop-menu,
.drop-menu:hover{
  visibility:visible;
  opacity:1;
}
#nav .drop-menu a{
  display:flex;
  align-items:center;
  gap:0.5rem;
  color:rgba(255,255,255,0.72);
  font-size:0.73rem;
  letter-spacing:0.07em;
  text-transform:uppercase;
  padding:0.9rem 1.5rem;
  border-bottom:1px solid rgba(255,255,255,0.06);
  transition:all 0.15s;
  cursor:pointer;
  font-weight:500;
  white-space:nowrap;
  background:transparent;
  text-decoration:none;
}
#nav .drop-menu a:last-child{border-bottom:none;}
#nav .drop-menu a:hover{
  color:#fff;
  background:rgba(200,168,75,0.1);
  padding-left:1.85rem;
}
.drop-arrow{color:var(--gold);font-size:0.9rem;flex-shrink:0;}
.drop-menu a span.drop-arrow{color:var(--gold);margin-right:0.5rem;font-size:0.65rem;}

/* ── PDF ARTICLE VIEWER ── */
.pdf-viewer-wrap{background:#f0f0f0;border-top:1px solid var(--bdr2);padding:2rem 0;}
.pdf-viewer{width:100%;height:90vh;min-height:600px;border:none;display:block;}
.pdf-mobile-btn{display:none;padding:2.5rem 1rem;text-align:center;}
.pdf-mobile-btn a{display:inline-flex;align-items:center;gap:0.65rem;background:var(--navy);color:var(--gold);border:1px solid var(--gold);padding:1rem 2rem;font-size:0.88rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;}
/* ── SPLIT PAGE HERO ── */
.pghw-photo{flex-direction:column;overflow:hidden;align-items:stretch;}
.pghw-photo-row{position:relative;z-index:2;display:flex;align-items:stretch;gap:0;width:100%;box-sizing:border-box;flex:1;}
.pghw-text-col{flex:1;display:flex;align-items:flex-start;overflow:hidden;min-width:0;}
.pghw-photo .pgh-content{max-width:none;margin:0;padding:1.5rem 2.5rem 1.5rem 0;width:auto;}
.pghw-img-side{width:34%;flex-shrink:0;position:relative;overflow:hidden;align-self:stretch;}
.pghw-img-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.pghw-img-side::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(12,27,46,0.7) 0%,rgba(12,27,46,0.2) 45%,transparent 100%);}

/* ── ARTICLE OVERLAY ── */
.art-overlay{position:fixed;inset:0;z-index:1001;background:var(--navy);display:flex;flex-direction:column;transform:translateY(100%);transition:transform 0.38s cubic-bezier(0.4,0,0.2,1);overflow:hidden;}
.art-overlay.open{transform:translateY(0);}
.art-ov-head{background:var(--navy2);border-bottom:1px solid var(--bdr2);padding:5rem 2.5rem 2rem;flex-shrink:0;}
.art-ov-head-inner{max-width:1280px;margin:0 auto;}
.art-ov-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.75rem;flex-wrap:wrap;gap:0.75rem;}
.art-ov-back{display:inline-flex;align-items:center;gap:0.45rem;font-size:0.72rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);cursor:pointer;border:1px solid rgba(200,168,75,0.3);padding:0.45rem 0.9rem 0.45rem 0.7rem;background:rgba(200,168,75,0.06);transition:all 0.2s;font-family:'Roboto',sans-serif;}
.art-ov-back:hover{color:var(--white);border-color:rgba(255,255,255,0.25);background:rgba(255,255,255,0.05);}
.art-ov-actions{display:flex;align-items:center;gap:0.75rem;}
.art-ov-dl{display:inline-flex;align-items:center;gap:0.45rem;font-size:0.72rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--txtd);text-decoration:none;border:1px solid var(--bdr2);padding:0.45rem 0.9rem;transition:all 0.2s;}
.art-ov-dl:hover{color:var(--white);border-color:rgba(255,255,255,0.3);}
.art-ov-close{background:none;border:1px solid var(--bdr2);color:var(--txtd);width:2rem;height:2rem;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all 0.2s;font-family:'Roboto',sans-serif;}
.art-ov-close:hover{color:var(--white);border-color:rgba(255,255,255,0.3);}
.art-ov-eyebrow{font-size:0.84rem;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:0.65rem;display:flex;align-items:center;gap:0.75rem;}
.art-ov-eyebrow::before{content:'';width:1.8rem;height:2px;background:var(--gold);flex-shrink:0;}
.art-ov-h1{font-family:'Roboto Slab',serif;font-size:clamp(1.6rem,2.8vw,2.4rem);font-weight:400;color:var(--white);margin:0.4rem 0 0.6rem;line-height:1.25;}
.art-ov-sub{font-size:1rem;color:var(--txt);max-width:680px;}
.art-ov-body{display:flex;align-items:stretch;flex:1;overflow:hidden;}
.art-ov-text{flex:0 0 42%;max-width:42%;padding:2.5rem 3rem 4rem;overflow-y:auto;border-right:1px solid var(--bdr2);}
.art-ov-text p{color:var(--txt);margin-bottom:1.4rem;font-size:0.97rem;}
.art-ov-text h3{font-family:'Roboto Slab',serif;font-size:1.15rem;font-weight:500;color:var(--white);margin:2.2rem 0 0.65rem;padding-left:0.9rem;border-left:2px solid var(--gold);}
.art-ov-text ul{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0;}
.art-ov-text ul li{background:var(--navy3);padding:1rem 1.25rem;border-left:3px solid var(--gold);}
.art-ov-text ul li strong{color:var(--white);display:block;margin-bottom:0.2rem;}
.art-ov-text ul li span{font-size:0.88rem;color:var(--txt);}
.art-ov-pdf{flex:0 0 58%;max-width:58%;background:var(--navy3);display:flex;flex-direction:column;}
.art-ov-pdf iframe{width:100%;flex:1;border:none;display:block;}
.art-ov-mob{display:none;padding:3rem 1.5rem;text-align:center;}
.art-ov-mob a{display:inline-flex;align-items:center;gap:0.65rem;color:var(--gold);border:1px solid var(--gold);padding:1rem 2rem;font-size:0.88rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;background:rgba(200,168,75,0.06);transition:all 0.2s;}
@media(max-width:900px){
  .art-ov-body{flex-direction:column;overflow-y:auto;}
  .art-ov-text{flex:none;max-width:100%;border-right:none;border-bottom:1px solid var(--bdr2);overflow-y:visible;}
  .art-ov-pdf{flex:none;max-width:100%;height:70vh;}
  .art-ov-pdf iframe{height:100%;}
}
@media(max-width:768px){
  .art-ov-head{padding:4rem 1.25rem 1.75rem;}
  .art-ov-text{padding:2rem 1.25rem 3rem;}
  .art-ov-text ul{grid-template-columns:1fr;}
  .art-ov-pdf iframe{display:none;}
  .art-ov-mob{display:block;}
}

/* ── QUOTE PAGE ── */
.qf-branch-wrap{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:760px;margin:2.5rem auto 0;}
.qf-branch-btn{background:var(--navy3);border:2px solid var(--bdr2);padding:2.5rem 2rem;cursor:pointer;text-align:center;transition:border-color 0.2s,background 0.2s;display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;}
.qf-branch-btn:hover{border-color:var(--gold);background:var(--navy4);}
.qf-branch-icon{display:flex;align-items:center;justify-content:center;}
.qf-branch-title{font-family:'Roboto Slab',serif;font-size:1.15rem;font-weight:400;color:var(--white);}
.qf-branch-sub{font-size:0.85rem;color:var(--txtd);line-height:1.6;}
.qf-branch-badge{margin-top:auto;display:inline-block;color:var(--gold);border:1px solid rgba(200,168,75,0.35);background:transparent;border-radius:20px;padding:3px 10px;font-size:11px;letter-spacing:0.08em;font-weight:500;}
.qf-progress-wrap{max-width:680px;margin:0 auto 2.5rem;}
.qf-progress-bar{height:3px;background:var(--bdr2);border-radius:2px;overflow:hidden;margin-bottom:0.55rem;}
.qf-progress-fill{height:100%;background:var(--gold);border-radius:2px;transition:width 0.35s ease;}
.qf-progress-label{font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--txtd);}
.qf-step{max-width:680px;margin:0 auto;}
.qf-step-q{font-family:'Roboto Slab',serif;font-size:1.5rem;font-weight:300;color:var(--white);margin-bottom:0.4rem;line-height:1.3;}
.qf-step-hint{font-size:0.88rem;color:var(--txtd);margin-bottom:1.75rem;line-height:1.6;}
.qf-options{display:flex;flex-direction:column;gap:0.65rem;}
.qf-opt{background:var(--navy3);border:1.5px solid var(--bdr2);padding:1rem 1.5rem;cursor:pointer;text-align:left;display:flex;align-items:center;gap:1rem;transition:border-color 0.2s,background 0.2s;font-family:'Roboto',sans-serif;font-size:0.95rem;color:var(--white);width:100%;letter-spacing:0.01em;}
.qf-opt:hover{border-color:var(--gold);background:var(--navy4);}
.qf-opt.sel{border-color:var(--gold);background:rgba(200,168,75,0.08);}
.qf-radio{width:18px;height:18px;border:2px solid var(--bdr2);border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all 0.2s;}
.qf-opt.sel .qf-radio{border-color:var(--gold);}
.qf-radio-dot{width:8px;height:8px;background:var(--gold);border-radius:50%;display:none;}
.qf-opt.sel .qf-radio-dot{display:block;}
.qf-check-grid{display:flex;flex-direction:column;gap:0.65rem;}
.qf-check-item{background:var(--navy3);border:1.5px solid var(--bdr2);padding:1rem 1.5rem;cursor:pointer;display:flex;align-items:center;gap:1rem;transition:border-color 0.2s,background 0.2s;font-family:'Roboto',sans-serif;font-size:0.95rem;color:var(--white);}
.qf-check-item:hover{border-color:var(--gold);background:var(--navy4);}
.qf-check-item.sel{border-color:var(--gold);background:rgba(200,168,75,0.08);}
.qf-checkbox{width:18px;height:18px;border:2px solid var(--bdr2);border-radius:2px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all 0.2s;}
.qf-check-item.sel .qf-checkbox{border-color:var(--gold);background:var(--gold);}
.qf-checkmark{font-size:11px;color:var(--navy);display:none;font-weight:700;}
.qf-check-item.sel .qf-checkmark{display:block;}
.qf-input-field{width:100%;background:var(--navy3);border:1.5px solid var(--bdr2);color:#fff;font-family:'Roboto',sans-serif;font-size:1rem;padding:0.9rem 1.1rem;outline:none;transition:border-color 0.2s;border-radius:0;}
.qf-input-field:focus{border-color:var(--gold);}
.qf-input-label{display:block;font-size:0.78rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--txtd);margin-bottom:0.4rem;font-weight:500;}
.qf-fg{margin-bottom:1.1rem;}
.qf-nav{display:flex;gap:1rem;margin-top:2rem;align-items:center;flex-wrap:wrap;}
.qf-back{background:transparent;border:1px solid var(--bdr2);color:var(--txtd);font-family:'Roboto',sans-serif;font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase;padding:0.75rem 1.5rem;cursor:pointer;transition:all 0.2s;}
.qf-back:hover{border-color:rgba(255,255,255,0.3);color:var(--white);}
.qf-next{background:var(--gold);color:var(--navy);border:none;font-family:'Roboto',sans-serif;font-size:0.82rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;padding:0.78rem 2rem;cursor:pointer;transition:background 0.2s;}
.qf-next:hover:not(:disabled){background:var(--goldl);}
.qf-result{max-width:760px;margin:0 auto;}
.qf-result-hd{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--bdr2);}
.qf-result-lbl{font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:0.35rem;}
.qf-result-title{font-family:'Roboto Slab',serif;font-size:1.7rem;font-weight:300;color:var(--white);margin-bottom:0.3rem;}
.qf-result-date{font-size:0.8rem;color:var(--txtd);}
.qf-table-block{background:var(--navy3);padding:1.5rem 2rem;margin-bottom:1.5rem;}
.qf-table-head{font-size:0.76rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:1rem;padding-bottom:0.6rem;border-bottom:1px solid var(--bdr2);}
.qf-table{width:100%;border-collapse:collapse;font-size:0.88rem;}
.qf-table tr{border-bottom:1px solid rgba(255,255,255,0.06);}
.qf-table tr:last-child{border-bottom:none;}
.qf-table td{padding:0.65rem 0;color:var(--txt);line-height:1.4;vertical-align:top;}
.qf-table td:last-child{text-align:right;color:var(--white);font-weight:500;white-space:nowrap;padding-left:1rem;vertical-align:middle;}
.qf-table-note{font-size:0.72rem;color:var(--txtd);display:block;margin-top:0.15rem;}
.qf-table-total td{color:var(--gold)!important;font-weight:700!important;font-size:0.95rem;padding-top:0.85rem!important;border-top:2px solid rgba(200,168,75,0.3);}
.qf-remark{border-left:3px solid var(--gold);background:rgba(200,168,75,0.07);padding:1rem 1.5rem;font-size:0.88rem;color:var(--txtd);line-height:1.75;margin-bottom:1.5rem;}
.qf-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--bdr2);}
.qf-btn-dl{background:var(--gold);color:var(--navy);border:none;font-family:'Roboto',sans-serif;font-size:0.82rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;padding:0.85rem 1.75rem;cursor:pointer;transition:background 0.2s;display:inline-flex;align-items:center;gap:0.5rem;}
.qf-btn-dl:hover{background:var(--goldl);}
.qf-btn-ob{display:inline-flex;align-items:center;gap:0.5rem;background:transparent;border:1px solid var(--gold);color:var(--gold);font-family:'Roboto',sans-serif;font-size:0.82rem;letter-spacing:0.1em;text-transform:uppercase;font-weight:600;padding:0.85rem 1.75rem;cursor:pointer;transition:all 0.2s;text-decoration:none;}
.qf-btn-ob:hover{background:var(--gold);color:var(--navy);}
.qf-btn-restart{background:transparent;border:1px solid var(--bdr2);color:var(--txtd);font-family:'Roboto',sans-serif;font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase;padding:0.85rem 1.5rem;cursor:pointer;transition:all 0.2s;}
.qf-btn-restart:hover{border-color:rgba(255,255,255,0.3);color:var(--white);}
.qf-email-note{font-size:0.82rem;color:var(--gold);margin-top:1.25rem;display:flex;align-items:center;gap:0.4rem;}
@media(max-width:768px){
  .qf-branch-wrap{grid-template-columns:1fr;max-width:100%;}
  .qf-branch-btn{padding:1.75rem 1.25rem;gap:0.75rem;}
  .qf-step-q{font-size:1.25rem;}
  .qf-result-title{font-size:1.35rem;}
  .qf-nav{flex-direction:column;gap:0.65rem;}
  .qf-next,.qf-back{width:100%;text-align:center;box-sizing:border-box;}
  .qf-input-field{font-size:16px;}
  .qf-table-block{padding:1.25rem 1.25rem;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .qf-table{font-size:0.82rem;}
  .qf-table td:last-child{white-space:normal;min-width:80px;}
  .qf-remark{padding:0.85rem 1.1rem;font-size:0.84rem;}
  .qf-actions{flex-direction:column;}
  .qf-actions>*{width:100%;justify-content:center;text-align:center;}
  .qf-progress-wrap{margin-bottom:1.5rem;}
}
