/*
Theme Name: AUTO Logistik
Theme URI: https://www.autologistik.co.id
Description: Custom WordPress theme for PT. AUTO Logistik — B2B automotive logistics. Landing page, blog, and Klien Terpercaya CPT.
Author: PT. AUTO Logistik
Version: 1.0.0
Text Domain: auto-logistik
*/

/* AUTO LOGISTIK v4 | Perbaikan navbar sticky top, active state, layout sejajar, semua konten utuh */
    *, *::before, *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    :root {
      --navy: #004D8D;
      --navy-deep: #003669;
      --navy-dark: #00213F;
      --navy-900: #001428;
      --red: #A51016;
      --red-dk: #7D0B10;
      --g50: #F8F9FB;
      --g100: #EFF1F5;
      --g200: #DDE1EA;
      --g400: #9BA5B5;
      --g500: #6E7D91;
      --g600: #4E5D6E;
      --g800: #253040;
      --fh: 'Manrope', sans-serif;
      --fb: 'Inter', sans-serif;
      --mw: 1240px;
      --nh: 72px;
      --r: 6px;
      --rl: 12px;
      --s1: 0 1px 4px rgba(0, 0, 0, .06);
      --s2: 0 4px 16px rgba(0, 0, 0, .09);
      --s3: 0 10px 36px rgba(0, 0, 0, .11);
      --t: .22s ease;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: var(--fb);
      font-size: 15px;
      color: var(--g800);
      background: #fff;
      overflow-x: hidden;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
      padding-top: 0;
    }

    a {
      color: inherit;
      text-decoration: none;
    }

    ul {
      list-style: none;
    }

    .container {
      max-width: var(--mw);
      margin: 0 auto;
      padding: 0 40px;
    }

    .sec {
      padding: 100px 0;
    }

    .tag {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: var(--fb);
      font-size: 11.5px;
      font-weight: 600;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--red);
      margin-bottom: 12px;
    }

    .tag::before {
      content: '';
      width: 18px;
      height: 2px;
      background: var(--red);
    }

    .h2 {
      font-family: var(--fh);
      font-size: clamp(26px, 3.6vw, 40px);
      font-weight: 800;
      line-height: 1.18;
      letter-spacing: -.025em;
      color: var(--navy-dark);
    }

    .sub {
      font-size: 15.5px;
      color: var(--g500);
      line-height: 1.72;
      max-width: 540px;
      margin-top: 12px;
    }

    .btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: var(--fb);
      font-size: 14px;
      font-weight: 600;
      border-radius: var(--r);
      padding: 13px 26px;
      cursor: pointer;
      border: none;
      transition: var(--t);
      white-space: nowrap;
    }

    .btn-red {
      background: var(--red);
      color: #fff;
      box-shadow: 0 3px 14px rgba(165, 16, 22, .28);
    }

    .btn-red:hover {
      background: var(--red-dk);
      transform: translateY(-1px);
    }

    .btn-ghost {
      background: transparent;
      color: #fff;
      border: 1.5px solid rgba(255, 255, 255, .3);
    }

    .btn-ghost:hover {
      border-color: rgba(255, 255, 255, .65);
      background: rgba(255, 255, 255, .07);
    }

    .btn-navy {
      background: var(--navy);
      color: #fff;
    }

    .btn-navy:hover {
      background: var(--navy-deep);
      transform: translateY(-1px);
    }

    .btn-wa {
      background: #25D366;
      color: #fff;
      box-shadow: 0 3px 14px rgba(37, 211, 102, .28);
    }

    .btn-wa:hover {
      background: #1ebe59;
      transform: translateY(-1px);
    }

    /* NAVBAR - sticky mentok di atas (top:0) */
    nav.mn {
      position: sticky;
      top: 0;
      z-index: 1000;
      height: var(--nh);
      background: #004D8D;
      border-bottom: 1px solid rgba(255,255,255,.18);
      transition: box-shadow .2s ease;
    }

    .ni {
      height: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .nl {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .ng {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--navy), #0066BB);
      border: 2px solid rgba(255, 255, 255, .12);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .nw {
      display: flex;
      flex-direction: column;
      line-height: 1;
      gap: 3px;
    }

    .nwa {
      font-family: var(--fh);
      font-size: 20px;
      font-weight: 800;
      letter-spacing: .04em;
      color: var(--red);
      line-height: 1;
    }

    .nwl {
      font-family: var(--fb);
      font-size: 9.5px;
      font-weight: 500;
      letter-spacing: .22em;
      color: rgba(255, 255, 255, .4);
      text-transform: uppercase;
    }

    .nls {
      display: flex;
      align-items: center;
      gap: 2px;
    }

    .na {
      font-family: var(--fb);
      font-size: 13.5px;
      font-weight: 500;
      color: rgba(255, 255, 255, .92);
      padding: 7px 13px;
      border-radius: var(--r);
      transition: var(--t);
      cursor: pointer;
    }

    .na:hover,
    .na.active {
      color: #fff;
      background: rgba(255, 255, 255, .07);
    }

    /* hero */
    .hero {
      min-height: 700px;
      position: relative;
      overflow: hidden;
      display: flex;
      align-items: center;
      background: var(--navy-900);
    }

    .hbg {
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 75% 60% at 55% 40%, rgba(0, 77, 141, .7) 0%, transparent 65%),
                  radial-gradient(ellipse 35% 35% at 8% 80%, rgba(165, 16, 22, .12) 0%, transparent 55%),
                  linear-gradient(150deg, #001428 0%, #00213F 55%, #001428 100%);
    }

    .hgr {
      position: absolute;
      inset: 0;
      background-image: linear-gradient(rgba(255, 255, 255, .025) 1px, transparent 1px),
                        linear-gradient(90deg, rgba(255, 255, 255, .025) 1px, transparent 1px);
      background-size: 56px 56px;
    }

    .hr1 {
      position: absolute;
      right: -100px;
      top: -100px;
      width: 600px;
      height: 600px;
      border-radius: 50%;
      border: 1px solid rgba(0, 102, 187, .1);
    }

    .hr2 {
      position: absolute;
      right: 40px;
      top: 40px;
      width: 420px;
      height: 420px;
      border-radius: 50%;
      border: 1px solid rgba(0, 102, 187, .07);
    }

    .hln {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 2px;
      background: linear-gradient(90deg, var(--red) 0%, rgba(165, 16, 22, .2) 45%, transparent 70%);
    }

    .hero .container {
      position: relative;
      z-index: 2;
      padding: 60px 40px;
      max-width: 720px;
    }

    .hey {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-family: var(--fb);
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .14em;
      color: rgba(255, 255, 255, .45);
      text-transform: uppercase;
      margin-bottom: 22px;
    }

    .hey i {
      width: 22px;
      height: 1.5px;
      background: rgba(255, 255, 255, .3);
      display: block;
      font-style: normal;
    }

    .hh1 {
      font-family: var(--fh);
      font-size: clamp(34px, 5vw, 54px);
      font-weight: 800;
      line-height: 1.1;
      letter-spacing: -.03em;
      color: #fff;
      margin-bottom: 20px;
    }

    .hh1 em {
      font-style: normal;
      color: var(--red);
    }

    .hd {
      font-size: 16px;
      line-height: 1.78;
      color: rgba(255, 255, 255, .80);
      margin-bottom: 34px;
      max-width: 480px;
    }

    .hac {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
    }

    .hst {
      display: flex;
      gap: 36px;
      margin-top: 48px;
      padding-top: 36px;
      border-top: 1px solid rgba(255, 255, 255, .08);
      flex-wrap: wrap;
    }

    .hsn {
      font-family: var(--fh);
      font-size: 28px;
      font-weight: 800;
      color: #fff;
      line-height: 1;
      letter-spacing: -.02em;
    }

    .hsn sup {
      font-size: 16px;
      color: var(--red);
    }

    .hsl {
      font-size: 11.5px;
      color: rgba(255, 255, 255, .65);
      margin-top: 4px;
      text-transform: uppercase;
      letter-spacing: .08em;
    }

    /* services */
    .sg {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
    }

    .sc {
      border: 1px solid var(--g200);
      border-radius: var(--rl);
      padding: 32px 28px;
      transition: var(--t);
      position: relative;
      overflow: hidden;
      background: #fff;
    }

    .sc::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 2px;
      background: var(--navy);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform .3s;
    }

    .sc:hover {
      border-color: rgba(0, 77, 141, .25);
      box-shadow: var(--s2);
    }

    .sc:hover::after {
      transform: scaleX(1);
      background: var(--red);
    }

    .si {
      width: 48px;
      height: 48px;
      background: var(--g50);
      border: 1px solid var(--g200);
      border-radius: var(--r);
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 20px;
      transition: var(--t);
    }

    .si svg {
      width: 22px;
      height: 22px;
      color: var(--navy);
    }

    .sc:hover .si {
      background: rgba(0, 77, 141, .06);
      border-color: rgba(0, 77, 141, .18);
    }

    .sn {
      font-family: var(--fh);
      font-size: 16px;
      font-weight: 700;
      color: var(--navy-dark);
      margin-bottom: 8px;
    }

    .sd {
      font-size: 13.5px;
      color: var(--g500);
      line-height: 1.65;
    }

    .sl {
      display: inline-block;
      margin-top: 16px;
      font-size: 10.5px;
      font-weight: 600;
      letter-spacing: .09em;
      text-transform: uppercase;
      color: var(--g400);
    }

    /* why */
    .why {
      background: var(--g50);
    }

    .whyw {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: center;
    }

    .wyc {
      background: var(--navy-dark);
      border-radius: var(--rl);
      padding: 40px;
      color: #fff;
      position: relative;
      overflow: hidden;
    }

    .wyc::before {
      content: '';
      position: absolute;
      top: -80px;
      right: -80px;
      width: 240px;
      height: 240px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(0, 77, 141, .45) 0%, transparent 70%);
    }

    .wyt {
      font-family: var(--fh);
      font-size: 20px;
      font-weight: 800;
      line-height: 1.25;
      color: #fff;
      margin-top: 10px;
      margin-bottom: 28px;
    }

    .wkg {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }

    .wk {
      padding: 18px;
      background: rgba(255, 255, 255, .05);
      border: 1px solid rgba(255, 255, 255, .07);
      border-radius: var(--r);
    }

    .wkn {
      font-family: var(--fh);
      font-size: 30px;
      font-weight: 800;
      color: #fff;
      line-height: 1;
    }

    .wkn sup {
      font-size: 16px;
      color: var(--red);
      vertical-align: super;
    }

    .wkl {
      font-size: 11px;
      color: rgba(255, 255, 255, .65);
      margin-top: 4px;
      text-transform: uppercase;
      letter-spacing: .07em;
    }

    .wnote {
      margin-top: 22px;
      padding: 14px 16px;
      background: rgba(165, 16, 22, .1);
      border: 1px solid rgba(165, 16, 22, .18);
      border-radius: var(--r);
      font-size: 13px;
      color: rgba(255, 255, 255, .88);
      line-height: 1.55;
    }

    .wnote strong {
      color: #fff;
    }

    .wlist {
      display: flex;
      flex-direction: column;
      gap: 28px;
    }

    .wit {
      display: flex;
      gap: 18px;
      align-items: flex-start;
    }

    .win {
      font-family: var(--fb);
      font-size: 11px;
      font-weight: 600;
      color: var(--red);
      letter-spacing: .06em;
      min-width: 26px;
      padding-top: 3px;
    }

    .witt {
      font-family: var(--fh);
      font-size: 16.5px;
      font-weight: 700;
      color: var(--navy-dark);
      margin-bottom: 5px;
    }

    .witd {
      font-size: 14px;
      color: var(--g500);
      line-height: 1.68;
    }

    /* fleet */
    .fleet {
      background: var(--navy-dark);
    }

    .fg {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 48px;
    }

    .fc {
      background: rgba(255, 255, 255, .04);
      border: 1px solid rgba(255, 255, 255, .07);
      border-radius: var(--rl);
      padding: 26px 24px;
      transition: var(--t);
      position: relative;
      overflow: hidden;
    }

    .fc::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 2px;
      background: var(--red);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform .28s;
    }

    .fc:hover {
      border-color: rgba(0, 102, 187, .25);
      background: rgba(0, 77, 141, .1);
    }

    .fc:hover::before {
      transform: scaleX(1);
    }

    .ftt {
      font-family: var(--fb);
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .12em;
      color: rgba(255, 255, 255, .52);
      text-transform: uppercase;
      margin-bottom: 6px;
      display: block;
    }

    .fn {
      font-family: var(--fh);
      font-size: 20px;
      font-weight: 800;
      color: #fff;
      margin-bottom: 8px;
      letter-spacing: -.01em;
    }

    .fd {
      font-size: 13px;
      color: rgba(255, 255, 255, .75);
      line-height: 1.6;
    }

    .fsp {
      display: flex;
      gap: 18px;
      margin-top: 18px;
      padding-top: 16px;
      border-top: 1px solid rgba(255, 255, 255, .06);
    }

    .fs {
      font-size: 12px;
      color: rgba(255, 255, 255, .58);
      line-height: 1.4;
    }

    .fs strong {
      color: rgba(255, 255, 255, .90);
      font-weight: 600;
      display: block;
    }

    /* coverage */
    .ccg {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 14px;
      margin-top: 40px;
    }

    .cc {
      border: 1px solid var(--g200);
      border-radius: var(--rl);
      padding: 20px 22px;
      transition: var(--t);
      cursor: default;
    }

    .cc:hover {
      border-color: var(--navy);
      box-shadow: var(--s1);
    }

    .cc:hover .ccd {
      background: var(--red);
      box-shadow: 0 0 8px rgba(165, 16, 22, .35);
    }

    .cct {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 4px;
    }

    .ccd {
      width: 9px;
      height: 9px;
      border-radius: 50%;
      flex-shrink: 0;
      background: var(--navy);
      transition: var(--t);
    }

    .ccd.hub {
      background: var(--red);
      box-shadow: 0 0 8px rgba(165, 16, 22, .3);
    }

    .ccn {
      font-family: var(--fh);
      font-size: 15px;
      font-weight: 700;
      color: var(--navy-dark);
    }

    .cct2 {
      font-size: 12.5px;
      color: var(--g500);
      line-height: 1.5;
      padding-left: 19px;
    }

    .ccp {
      margin-top: 10px;
      margin-left: 19px;
      display: inline-block;
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .07em;
      text-transform: uppercase;
      padding: 3px 8px;
      border-radius: 4px;
    }

    .ccp.hub {
      background: rgba(165, 16, 22, .07);
      color: var(--red);
      border: 1px solid rgba(165, 16, 22, .15);
    }

    .ccp.branch {
      background: rgba(0, 77, 141, .06);
      color: var(--navy);
      border: 1px solid rgba(0, 77, 141, .12);
    }

    /* warehouse */
    .whs {
      background: var(--g50);
    }

    .whg {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 18px;
    }

    .whc {
      background: #fff;
      border: 1px solid var(--g200);
      border-radius: var(--rl);
      overflow: hidden;
      transition: var(--t);
      box-shadow: var(--s1);
    }

    .whc:hover {
      box-shadow: var(--s3);
      transform: translateY(-3px);
    }

    .whh {
      padding: 20px 22px;
      position: relative;
    }

    .whh.c1 {
      background: linear-gradient(135deg, #004D8D, #006EC4);
    }

    .whh.c2 {
      background: linear-gradient(135deg, #004D8D, #006EC4);
    }

    .whh.c3 {
      background: linear-gradient(135deg, #004D8D, #006EC4);
    }

    .whh.c4 {
      background: linear-gradient(135deg, #004D8D, #006EC4);
    }

    .whcn {
      font-family: var(--fh);
      font-size: 19px;
      font-weight: 800;
      color: #fff;
    }

    .whr {
      font-size: 11px;
      color: rgba(255, 255, 255, .5);
      margin-top: 2px;
      text-transform: uppercase;
      letter-spacing: .09em;
    }

    .whic {
      position: absolute;
      right: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 34px;
      height: 34px;
      background: rgba(255, 255, 255, .1);
      border-radius: 7px;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .whb {
      padding: 20px 22px;
    }

    .whrow {
      display: flex;
      gap: 8px;
      align-items: flex-start;
      margin-bottom: 9px;
    }

    .whk {
      font-size: 10px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .08em;
      color: var(--g400);
      min-width: 52px;
      padding-top: 1.5px;
    }

    .whv {
      font-size: 13px;
      color: var(--g800);
      line-height: 1.5;
    }

    .whtg {
      display: flex;
      flex-wrap: wrap;
      gap: 5px;
      margin-top: 12px;
      padding-top: 12px;
      border-top: 1px solid var(--g100);
    }

    .wht {
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .05em;
      text-transform: uppercase;
      background: var(--g100);
      color: var(--g600);
      border-radius: 3px;
      padding: 3px 7px;
    }

    /* testi */
    .tg {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 22px;
    }

    .tc {
      background: #fff;
      border: 1px solid var(--g200);
      border-radius: var(--rl);
      padding: 30px;
      box-shadow: var(--s1);
      transition: var(--t);
    }

    .tc:hover {
      box-shadow: var(--s2);
      border-color: rgba(0, 77, 141, .2);
    }

    .tst {
      display: flex;
      gap: 3px;
      margin-bottom: 14px;
    }

    .tst span {
      color: #F59E0B;
      font-size: 13px;
    }

    .tt {
      font-size: 14px;
      color: var(--g600);
      line-height: 1.78;
    }

    .tsep {
      height: 1px;
      background: var(--g100);
      margin: 20px 0 16px;
    }

    .tau {
      display: flex;
      align-items: center;
      gap: 11px;
    }

    .tav {
      width: 38px;
      height: 38px;
      border-radius: 50%;
      flex-shrink: 0;
      background: linear-gradient(135deg, var(--navy), #0066BB);
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: var(--fh);
      font-size: 13px;
      font-weight: 700;
      color: #fff;
    }

    .tan {
      font-family: var(--fh);
      font-size: 13.5px;
      font-weight: 700;
      color: var(--navy-dark);
    }

    .tar {
      font-size: 12px;
      color: var(--g400);
      margin-top: 1px;
    }

    .tbdg {
      margin-left: auto;
      display: flex;
      align-items: center;
      gap: 4px;
      font-size: 10px;
      font-weight: 600;
      letter-spacing: .07em;
      color: #2ecc71;
      text-transform: uppercase;
    }

    .tbdg::before {
      content: '';
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: #2ecc71;
    }

    /* trusted marquee - seamless infinite loop */
    .trs {
      background: var(--g50);
      border-top: 1px solid var(--g200);
      padding: 48px 0;
      overflow: hidden;
    }

    .trl {
      text-align: center;
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--g400);
      margin-bottom: 28px;
    }

    .marquee-wrapper {
      overflow: hidden;
      position: relative;
      width: 100%;
    }

    .marquee-track {
      display: flex;
      gap: 56px;
      align-items: center;
      animation: marqueeScroll 999s linear infinite;
      width: max-content;
      will-change: transform;
    }
    .marquee-track:hover {
      animation-play-state: paused;
    }
    @keyframes marqueeScroll {
      0%   { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }

    .trust-item {
      display: flex;
      align-items: center;
      flex-shrink: 0;
      transition: transform .2s;
      cursor: default;
    }

    .trust-item:hover {
      transform: scale(1.04);
    }

    /* blog */
    .blog {
      background: #fff;
    }

    .bg {
      display: grid;
      grid-template-columns: 1.5fr 1fr 1fr;
      gap: 22px;
    }

    .bc {
      background: #fff;
      border: 1px solid var(--g200);
      border-radius: var(--rl);
      overflow: hidden;
      transition: var(--t);
      display: flex;
      flex-direction: column;
    }

    .bc:hover {
      box-shadow: var(--s2);
      transform: translateY(-2px);
    }

    .bth {
      position: relative;
      overflow: hidden;
      background: linear-gradient(135deg, var(--navy-dark), var(--navy));
    }

    .bth.big {
      height: 200px;
    }

    .bth.sm {
      height: 130px;
    }

    .bgrid {
      position: absolute;
      inset: 0;
      background-image: linear-gradient(rgba(255, 255, 255, .035) 1px, transparent 1px),
                        linear-gradient(90deg, rgba(255, 255, 255, .035) 1px, transparent 1px);
      background-size: 28px 28px;
    }

    .bcat {
      position: absolute;
      top: 12px;
      left: 12px;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .09em;
      text-transform: uppercase;
      background: var(--red);
      color: #fff;
      border-radius: 3px;
      padding: 3px 8px;
    }

    .bbd {
      padding: 20px;
      flex: 1;
      display: flex;
      flex-direction: column;
    }

    .bm {
      display: flex;
      gap: 12px;
      margin-bottom: 9px;
    }

    .bmi {
      font-size: 11.5px;
      color: var(--g400);
      display: flex;
      align-items: center;
      gap: 4px;
    }

    .btit {
      font-family: var(--fh);
      font-size: 15.5px;
      font-weight: 700;
      color: var(--navy-dark);
      line-height: 1.38;
      margin-bottom: 8px;
    }

    .bc.main .btit {
      font-size: 19px;
    }

    .bex {
      font-size: 13px;
      color: var(--g500);
      line-height: 1.65;
      flex: 1;
    }

    .bft {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-top: 16px;
      padding-top: 14px;
      border-top: 1px solid var(--g100);
    }

    .bau {
      display: flex;
      align-items: center;
      gap: 7px;
    }

    .bav {
      width: 26px;
      height: 26px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--navy), #0066BB);
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: var(--fh);
      font-size: 9px;
      font-weight: 700;
      color: #fff;
    }

    .ban {
      font-size: 11.5px;
      font-weight: 600;
      color: var(--g600);
    }

    .bmore {
      font-size: 12px;
      font-weight: 600;
      color: var(--navy);
      display: flex;
      align-items: center;
      gap: 4px;
      transition: gap .18s;
    }

    .bmore:hover {
      gap: 8px;
    }

    /* CTA - Dua Kolom Sejajar (Kiri dan Kanan) */
    .ctas {
      background: var(--navy-dark);
      padding: 100px 0;
      position: relative;
      overflow: hidden;
    }

    .ctas::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 55% 75% at 75% 50%, rgba(0, 77, 141, .45) 0%, transparent 60%),
                  radial-gradient(ellipse 38% 50% at 15% 30%, rgba(165, 16, 22, .07) 0%, transparent 50%);
    }

    .ctai {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 72px;
      align-items: center;
    }

    .ctatg {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 11px;
      font-weight: 600;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, .35);
      margin-bottom: 14px;
    }

    .ctatg::before {
      content: '';
      width: 18px;
      height: 1.5px;
      background: var(--red);
    }

    .ctah {
      font-family: var(--fh);
      font-size: clamp(26px, 3.8vw, 40px);
      font-weight: 800;
      line-height: 1.15;
      letter-spacing: -.025em;
      color: #fff;
      margin-bottom: 14px;
    }

    .ctad {
      font-size: 15.5px;
      color: rgba(255, 255, 255, .78);
      line-height: 1.72;
      margin-bottom: 32px;
    }

    .ctaac {
      display: flex;
      gap: 12px;
      flex-wrap: wrap;
    }

    /* Kanan: info kontak sejajar */
    .ctaif {
      display: flex;
      flex-direction: column;
      gap: 18px;
    }

    .ctabx {
      background: rgba(255, 255, 255, .04);
      border: 1px solid rgba(255, 255, 255, .07);
      border-radius: var(--r);
      padding: 18px 24px;
    }

    .ctalb {
      font-size: 10px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .1em;
      color: rgba(255, 255, 255, .60);
      margin-bottom: 6px;
    }

    .ctavl {
      font-size: 15px;
      font-weight: 500;
      color: #fff;
      word-break: break-word;
    }

    .ctavl a {
      color: rgba(255, 255, 255, .8);
      text-decoration: underline;
    }

/* ── Social media icons ───────────────────────────────────── */
.soc-links {
  display: flex;
  gap: 10px;
  margin-top: 8px;
  flex-wrap: wrap;
}

.soc-icon {
  width: 40px;
  height: 40px;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--t);
  color: #fff;
  font-size: 17px;
  text-decoration: none;
}

.soc-icon:hover            { transform: translateY(-2px); border-color: transparent; }
.soc-linkedin:hover        { background: #0A66C2; }
.soc-youtube:hover         { background: #FF0000; }
.soc-instagram:hover       { background: radial-gradient(circle at 30% 110%, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.soc-tiktok:hover          { background: #010101; }

/* ── Trusted logo: foto asli berwarna, background putih ──── */
.trust-logo-wrap {
  height: 52px;
  max-width: 160px;
  min-width: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid var(--g200);
  border-radius: 8px;
  padding: 8px 18px;
  opacity: .75;
  transition: opacity .2s, box-shadow .2s, border-color .2s;
  overflow: hidden;
}

.trust-logo-wrap img {
  max-width: 130px;
  max-height: 34px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.trust-item:hover .trust-logo-wrap {
  opacity: 1;
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
  border-color: var(--g400);
}

/* Fallback teks jika tidak ada featured image */
.trust-logo-text {
  gap: 8px;
  font-family: var(--fh);
  font-size: 13px;
  font-weight: 700;
  color: var(--g500);
  letter-spacing: .04em;
  white-space: nowrap;
  background: rgba(255,255,255,.07);
  border-color: rgba(255,255,255,.15);
}

    /* footer - hanya copyright */
    footer {
      background: var(--navy-900);
      border-top: 1px solid rgba(255, 255, 255, .04);
      padding: 24px 0;
    }

    .fbot {
      text-align: center;
    }

    .fcp {
      font-size: 12.5px;
      color: rgba(255, 255, 255, .22);
    }

    /* anim */
    .fu {
      opacity: 0;
      transform: translateY(22px);
      transition: opacity .5s ease, transform .5s ease;
    }

    .fu.in {
      opacity: 1;
      transform: translateY(0);
    }

    /* responsive */
    @media (max-width: 1024px) {
      .whyw,
      .ctai {
        grid-template-columns: 1fr;
        gap: 44px;
      }

      .fg,
      .whg,
      .tg,
      .bg,
      .sg,
      .ccg {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    @media (max-width: 640px) {
      .container {
        padding: 0 20px;
      }

      .sec {
        padding: 72px 0;
      }

      .fg,
      .whg,
      .tg,
      .bg,
      .sg,
      .ccg {
        grid-template-columns: 1fr;
      }

      .nls {
        display: none;
      }
    }


/* ═══════════════════════════════════════════════════════════
   WORDPRESS BLOG STYLES
   Archive (listing), Single post, Sidebar
═══════════════════════════════════════════════════════════ */

/* ── Blog Archive ─────────────────────────────────────────── */
.blog-archive-wrap { max-width: var(--mw); margin: 0 auto; padding: 80px 40px; }
.blog-archive-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }

.blog-post-card {
  background: #fff; border: 1px solid var(--g200); border-radius: var(--rl);
  overflow: hidden; transition: var(--t); display: flex; flex-direction: column;
  text-decoration: none; color: inherit;
}
.blog-post-card:hover { box-shadow: var(--s2); transform: translateY(-3px); border-color: rgba(0,77,141,.2); }

.blog-post-thumb {
  height: 200px; position: relative; overflow: hidden;
  background: linear-gradient(135deg, var(--navy-dark), var(--navy)); flex-shrink: 0;
}
.blog-post-thumb img { width:100%; height:100%; object-fit:cover; transition: transform .4s ease; display:block; }
.blog-post-card:hover .blog-post-thumb img { transform: scale(1.04); }
.blog-post-thumb-grid {
  position:absolute; inset:0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size: 28px 28px;
}
.blog-post-cat {
  position:absolute; top:14px; left:14px; font-size:10px; font-weight:700;
  letter-spacing:.09em; text-transform:uppercase;
  background:var(--red); color:#fff; border-radius:3px; padding:3px 9px;
}
.blog-post-body { padding: 24px; flex:1; display:flex; flex-direction:column; }
.blog-post-meta { display:flex; gap:14px; margin-bottom:10px; }
.blog-post-meta-item { font-size:11.5px; color:var(--g400); display:flex; align-items:center; gap:5px; }
.blog-post-title { font-family:var(--fh); font-size:17px; font-weight:700; color:var(--navy-dark); line-height:1.38; margin-bottom:10px; }
.blog-post-excerpt { font-size:13.5px; color:var(--g500); line-height:1.68; flex:1; }
.blog-post-footer { display:flex; align-items:center; justify-content:space-between; margin-top:18px; padding-top:14px; border-top:1px solid var(--g100); }
.blog-post-author { display:flex; align-items:center; gap:8px; }
.blog-post-av { width:28px; height:28px; border-radius:50%; background:linear-gradient(135deg,var(--navy),#0066BB); display:flex; align-items:center; justify-content:center; font-family:var(--fh); font-size:9px; font-weight:700; color:#fff; flex-shrink:0; }
.blog-post-author-name { font-size:12px; font-weight:600; color:var(--g600); }
.blog-read-more { font-size:12.5px; font-weight:600; color:var(--navy); display:flex; align-items:center; gap:4px; transition:gap .18s; text-decoration:none; }
.blog-read-more:hover { gap: 8px; }

.blog-pagination { display:flex; justify-content:center; gap:8px; margin-top:56px; padding-top:40px; border-top:1px solid var(--g200); }
.blog-pagination .page-numbers { width:40px; height:40px; border-radius:var(--r); border:1px solid var(--g200); display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:500; color:var(--g600); text-decoration:none; transition:var(--t); }
.blog-pagination .page-numbers:hover, .blog-pagination .page-numbers.current { background:var(--navy); border-color:var(--navy); color:#fff; }

/* ── Single Post ───────────────────────────────────────────── */
.single-post-hero { background:var(--navy-dark); padding:72px 0 60px; position:relative; overflow:hidden; }
.single-post-hero::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size:48px 48px; }
.single-post-hero .container { position:relative; z-index:2; }
.single-post-breadcrumb { display:flex; align-items:center; gap:8px; font-size:12.5px; color:rgba(255,255,255,.4); margin-bottom:20px; }
.single-post-breadcrumb a { color:rgba(255,255,255,.5); transition:color .2s; }
.single-post-breadcrumb a:hover { color:#fff; }
.single-post-breadcrumb span { color:rgba(255,255,255,.25); }
.single-post-cat { display:inline-block; font-size:10.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; background:var(--red); color:#fff; border-radius:3px; padding:4px 10px; margin-bottom:16px; text-decoration:none; }
.single-post-title { font-family:var(--fh); font-size:clamp(26px,4vw,44px); font-weight:800; line-height:1.15; letter-spacing:-.025em; color:#fff; margin-bottom:20px; max-width:760px; }
.single-post-meta-bar { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.single-post-meta-item { display:flex; align-items:center; gap:7px; font-size:13px; color:rgba(255,255,255,.55); }
.single-post-meta-item svg { flex-shrink:0; }
.single-post-author-av { width:32px; height:32px; border-radius:50%; background:linear-gradient(135deg,var(--navy),#0066BB); display:flex; align-items:center; justify-content:center; font-family:var(--fh); font-size:10px; font-weight:700; color:#fff; flex-shrink:0; }

.single-post-featured { width:100%; max-width:var(--mw); margin:-40px auto 0; padding:0 40px; position:relative; z-index:10; }
.single-post-featured img { width:100%; max-height:480px; object-fit:cover; border-radius:var(--rl); box-shadow:var(--s3); display:block; }

.single-post-layout { max-width:var(--mw); margin:0 auto; padding:56px 40px 80px; display:grid; grid-template-columns:1fr 300px; gap:60px; align-items:flex-start; }
.single-post-content { min-width:0; }

.post-body p { font-size:16px; line-height:1.85; color:var(--g800); margin-bottom:24px; }
.post-body h2 { font-family:var(--fh); font-size:26px; font-weight:800; color:var(--navy-dark); margin:40px 0 16px; letter-spacing:-.02em; }
.post-body h3 { font-family:var(--fh); font-size:20px; font-weight:700; color:var(--navy-dark); margin:32px 0 12px; }
.post-body ul, .post-body ol { margin:0 0 24px 24px; color:var(--g800); }
.post-body li { font-size:15.5px; line-height:1.8; margin-bottom:6px; }
.post-body a { color:var(--navy); text-decoration:underline; text-decoration-color:rgba(0,77,141,.3); }
.post-body a:hover { text-decoration-color:var(--navy); }
.post-body blockquote { margin:32px 0; padding:20px 24px; border-left:3px solid var(--red); background:var(--g50); border-radius:0 var(--r) var(--r) 0; font-size:16.5px; font-style:italic; color:var(--g600); line-height:1.7; }
.post-body img { max-width:100%; border-radius:var(--r); margin:24px 0; }

.post-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:40px; padding-top:32px; border-top:1px solid var(--g200); }
.post-tag { font-size:11.5px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; padding:5px 12px; border-radius:4px; background:var(--g100); color:var(--g600); text-decoration:none; transition:var(--t); border:1px solid var(--g200); }
.post-tag:hover { background:rgba(0,77,141,.08); color:var(--navy); border-color:rgba(0,77,141,.2); }

.post-share { margin-top:32px; padding:20px 24px; background:var(--g50); border:1px solid var(--g200); border-radius:var(--r); display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.post-share-label { font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--g400); }
.post-share-btns { display:flex; gap:8px; }
.post-share-btn { display:flex; align-items:center; gap:6px; font-size:12.5px; font-weight:600; padding:7px 14px; border-radius:var(--r); text-decoration:none; transition:var(--t); color:#fff; }
.post-share-btn.wa { background:#25D366; }
.post-share-btn.wa:hover { background:#1ebe59; }
.post-share-btn.li { background:#0077B5; }
.post-share-btn.li:hover { background:#005e8f; }
.post-share-btn svg { width:14px; height:14px; }

/* ── Sidebar ───────────────────────────────────────────────── */
.single-post-sidebar { position:sticky; top:88px; }
.sidebar-widget { background:var(--g50); border:1px solid var(--g200); border-radius:var(--rl); padding:24px; margin-bottom:20px; }
.sidebar-widget-title { font-family:var(--fh); font-size:13px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--g400); margin-bottom:16px; padding-bottom:12px; border-bottom:1px solid var(--g200); }
.sidebar-recent-post { display:flex; gap:12px; padding:10px 0; border-bottom:1px solid var(--g100); text-decoration:none; color:inherit; transition:var(--t); }
.sidebar-recent-post:last-child { border-bottom:none; }
.sidebar-recent-post:hover .srp-title { color:var(--navy); }
.srp-thumb { width:52px; height:52px; border-radius:var(--r); background:linear-gradient(135deg,var(--navy-dark),var(--navy)); flex-shrink:0; overflow:hidden; }
.srp-thumb img { width:100%; height:100%; object-fit:cover; }
.srp-title { font-family:var(--fh); font-size:13px; font-weight:600; color:var(--navy-dark); line-height:1.4; transition:color .2s; }
.srp-date { font-size:11px; color:var(--g400); margin-top:3px; }
.sidebar-cat-link { display:flex; justify-content:space-between; align-items:center; padding:9px 0; border-bottom:1px solid var(--g100); font-size:13.5px; color:var(--g600); text-decoration:none; transition:color .2s; }
.sidebar-cat-link:last-child { border-bottom:none; }
.sidebar-cat-link:hover { color:var(--navy); }
.sidebar-cat-count { font-size:11px; font-weight:700; background:var(--g200); color:var(--g500); border-radius:4px; padding:1px 7px; }
.sidebar-cta-box { background:var(--navy-dark); border-radius:var(--rl); padding:24px; margin-bottom:20px; position:relative; overflow:hidden; }
.sidebar-cta-box::before { content:""; position:absolute; top:-40px; right:-40px; width:120px; height:120px; border-radius:50%; background:radial-gradient(circle,rgba(0,77,141,.5) 0%,transparent 70%); }
.sidebar-cta-title { font-family:var(--fh); font-size:16px; font-weight:800; color:#fff; margin-bottom:8px; position:relative; }
.sidebar-cta-desc { font-size:13px; color:rgba(255,255,255,.55); line-height:1.6; margin-bottom:16px; position:relative; }
.sidebar-cta-btn { display:inline-flex; align-items:center; gap:7px; font-size:13px; font-weight:600; padding:10px 18px; background:#25D366; color:#fff; border-radius:var(--r); text-decoration:none; transition:var(--t); position:relative; }
.sidebar-cta-btn:hover { background:#1ebe59; }
.sidebar-cta-btn svg { width:14px; height:14px; }

/* ── Related Posts ─────────────────────────────────────────── */
.related-posts { max-width:var(--mw); margin:0 auto; padding:0 40px 80px; border-top:1px solid var(--g200); padding-top:56px; }
.related-posts-title { font-family:var(--fh); font-size:22px; font-weight:800; color:var(--navy-dark); margin-bottom:28px; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }

/* trust-icon--img: superseded by .trust-logo-wrap */

/* ── Responsive blog ───────────────────────────────────────── */
@media (max-width:1024px) {
  .blog-archive-grid, .related-grid { grid-template-columns: repeat(2,1fr); }
  .single-post-layout { grid-template-columns:1fr; gap:40px; }
  .single-post-sidebar { position:static; }
  .single-post-featured { margin-top:-24px; }
}
@media (max-width:640px) {
  .blog-archive-wrap { padding:56px 20px; }
  .blog-archive-grid, .related-grid { grid-template-columns:1fr; }
  .single-post-layout { padding:40px 20px 60px; }
  .single-post-featured { padding:0 20px; }
  .single-post-hero { padding:48px 0 50px; }
}
