:root{
      --theme:#0B3D91;
      --ink:#11213d;
      --muted:#64748b;
      --line:#dbe4ef;
      --paper:#ffffff;
      --soft:#f4f8fc;
      --red:#e63946;
      --blue:#1687d9;
      --green:#1c9b72;
      --yellow:#f2b134;
      --purple:#7657c5;
      --shadow:0 18px 50px rgba(15,43,78,.12);
      --radius:18px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button{font:inherit}
    .container{width:min(1180px,calc(100% - 40px));margin:auto}
    .topbar{background:#092650;color:#dceaff;font-size:13px}
    .topbar .container{display:flex;justify-content:space-between;align-items:center;min-height:36px;gap:20px}
    .topbar-links{display:flex;gap:20px;flex-wrap:wrap}
    .topbar a:hover{color:#fff}
    .header{position:relative;background:#fff;border-bottom:1px solid var(--line);z-index:20}
    .header-inner{display:flex;align-items:center;min-height:76px;gap:28px}
    .logo{display:flex;align-items:center;gap:10px;font-weight:800;white-space:nowrap;color:var(--theme);font-size:19px}
    .logo img{width:34px;height:34px;object-fit:contain}
    .main-nav{flex:1}
    .nav-list{display:flex;align-items:center;justify-content:center;gap:4px;list-style:none;margin:0;padding:0}
    .nav-item{position:relative}
    .nav-link{display:flex;align-items:center;gap:5px;padding:27px 12px;font-weight:650;font-size:14px;color:#263852}
    .nav-link:hover,.nav-item:focus-within>.nav-link{color:var(--theme)}
    .nav-link.has-arrow:after{content:"⌄";font-size:12px;color:var(--muted)}
    .dropdown-panel,.mega-menu{position:absolute;top:calc(100% - 1px);left:50%;transform:translateX(-50%);width:310px;padding:20px;background:#fff;border:1px solid var(--line);border-radius:0 0 16px 16px;box-shadow:var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease}
    .mega-menu{width:min(850px,calc(100vw - 32px));padding:24px}
    .nav-item:hover>.dropdown-panel,.nav-item:focus-within>.dropdown-panel,.nav-item:hover>.mega-menu,.nav-item:focus-within>.mega-menu{opacity:1;visibility:visible;pointer-events:auto}
    .dropdown-panel:before,.mega-menu:before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
    .panel-title{font-weight:800;margin:0 0 12px;color:var(--theme)}
    .panel-list{display:grid;gap:9px}
    .panel-list a{font-size:14px;color:#40536e}
    .panel-list a:hover{color:var(--theme)}
    .mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
    .mega-card{border:1px solid var(--line);padding:14px;border-radius:12px;background:#fbfdff}
    .mega-card img{width:32px;height:32px;object-fit:contain;margin-bottom:8px}
    .mega-card strong{display:block;font-size:14px}
    .mega-card small{display:block;color:var(--muted);font-size:12px;line-height:1.45;margin-top:4px}
    .mega-footer{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);color:var(--theme);font-size:14px;font-weight:750}
    .header-btns{display:flex;align-items:center;gap:10px;white-space:nowrap}
    .member-btn,.account-btn{border-radius:9px;padding:10px 14px;font-weight:750;font-size:13px}
    .member-btn{color:var(--theme);border:1px solid #b9cbe4}
    .account-btn{background:var(--theme);color:#fff}
    .hamburger{display:none;border:0;background:transparent;width:42px;height:42px;padding:9px;cursor:pointer}
    .hamburger span{display:block;height:2px;background:var(--ink);margin:5px 0;transition:.2s}
    .drawer-overlay{position:fixed;inset:0;background:rgba(5,21,45,.55);opacity:0;visibility:hidden;transition:.25s;z-index:40}
    .drawer-overlay.open{opacity:1;visibility:visible}
    .mobile-drawer{position:fixed;right:0;top:0;bottom:0;width:min(380px,90vw);background:#fff;z-index:41;transform:translateX(100%);transition:.3s ease;overflow:auto}
    .mobile-drawer.open{transform:translateX(0)}
    .drawer-head{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid var(--line);color:var(--theme);font-weight:800}
    .drawer-head>a{margin-left:auto;background:var(--theme);color:#fff;padding:8px 12px;border-radius:8px;font-size:13px}
    .drawer-close{border:0;background:transparent;font-size:28px;color:var(--muted);cursor:pointer}
    .drawer-menu{padding:12px 20px 30px}
    .drawer-link,.drawer-toggle{display:block;width:100%;padding:14px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;font-weight:700;color:var(--ink);cursor:pointer}
    .drawer-toggle:after{content:"+";float:right;color:var(--theme);font-size:20px}
    .drawer-toggle.active:after{content:"−"}
    .drawer-submenu{display:none;padding:7px 0 8px 14px;border-bottom:1px solid var(--line)}
    .drawer-submenu.open{display:grid}
    .drawer-submenu a{padding:7px 0;color:var(--muted);font-size:14px}
    .footer{background:#092650;color:#d7e5f7;margin-top:70px}
    .footer-main{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:35px;padding:52px 0 38px}
    .footer-brand strong{display:block;color:#fff;font-size:20px;margin-bottom:12px}
    .footer-brand p,.footer-col p{color:#a9bfda;font-size:14px;margin:0 0 12px}
    .footer-col h3{color:#fff;font-size:15px;margin:0 0 14px}
    .footer-links{display:grid;gap:8px;font-size:14px}
    .footer-links a:hover{color:#fff}
    .footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding:18px 0;font-size:13px;color:#9cb4d0;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
    .hero{background:#fff;overflow:hidden}
    .hero-layout-40{padding:72px 0 58px}
    .station-heading{text-align:center;max-width:820px;margin:0 auto 40px}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--theme);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
    .eyebrow:before{content:"";width:22px;height:3px;background:var(--yellow);border-radius:3px}
    .station-heading h1{font-size:clamp(42px,7vw,82px);line-height:1.02;margin:15px 0 14px;letter-spacing:-.055em;color:#102b55}
    .station-heading p{font-size:18px;color:var(--muted);max-width:680px;margin:auto}
    .metro-map{position:relative;max-width:1120px;margin:auto;padding:30px 12px 16px;border:1px solid #d8e3ee;border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbfe);box-shadow:var(--shadow)}
    .metro-line{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:24px 18px 34px;margin:0 0 16px}
    .metro-line:before{content:"";position:absolute;left:38px;right:38px;top:43px;height:8px;border-radius:8px;background:var(--line-color)}
    .metro-line:after{content:"";position:absolute;left:38px;right:38px;top:43px;height:8px;border-radius:8px;background:var(--line-color);opacity:.16}
    .line-main{--line-color:var(--red)}
    .line-blue{--line-color:var(--blue)}
    .line-green{--line-color:var(--green)}
    .line-purple{--line-color:var(--purple)}
    .station{position:relative;z-index:2;min-width:110px;text-align:center}
    .station-dot{width:25px;height:25px;background:#fff;border:7px solid var(--line-color);border-radius:50%;margin:0 auto 12px;box-shadow:0 0 0 4px #fff}
    .station.transfer .station-dot{width:34px;height:34px;border-width:8px;margin-top:-5px}
    .station strong{display:block;font-size:14px;color:#1b3558}
    .station small{display:block;color:var(--muted);font-size:12px;margin-top:3px}
    .station.transfer strong{color:var(--theme)}
    .metro-legend{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;border-top:1px solid var(--line);padding:18px 10px 4px;color:var(--muted);font-size:13px}
    .legend-item{display:flex;align-items:center;gap:7px}
    .legend-item i{width:22px;height:5px;border-radius:5px;background:var(--legend)}
    .metro-cta{text-align:center;margin-top:28px}
    .primary-btn,.secondary-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:12px 19px;font-weight:800;font-size:14px}
    .primary-btn{background:var(--theme);color:#fff;box-shadow:0 8px 18px rgba(11,61,145,.22)}
    .secondary-btn{border:1px solid #b9cbe4;color:var(--theme);background:#fff}
    .section{padding:72px 0}
    .section-heading{text-align:center;max-width:720px;margin:0 auto 30px}
    .section-heading h2{font-size:clamp(27px,4vw,42px);line-height:1.12;margin:9px 0;color:#122e56}
    .section-heading p{margin:0;color:var(--muted)}
    .service-grid,.broker-grid,.product-grid,.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .info-card,.broker-card,.product-card,.video-card,.faq-item{border:1px solid var(--line);border-radius:16px;background:#fff;padding:22px;box-shadow:0 8px 25px rgba(25,55,90,.05)}
    .info-card{border-top:4px solid var(--accent)}
    .info-card .number{font-size:13px;color:var(--accent);font-weight:800}
    .info-card h3,.broker-card h3,.product-card h3,.video-card h3{margin:8px 0;font-size:19px}
    .info-card p,.broker-card p,.product-card p,.video-card p{color:var(--muted);font-size:14px;margin:0}
    .broker-card,.product-card,.video-card{padding:0;overflow:hidden}
    .broker-card img,.product-card img,.video-card img{height:170px;width:100%;object-fit:cover;background:var(--soft)}
    .card-body{padding:18px}
    .meta{font-size:12px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
    .light-section{background:var(--soft)}
    .faq-list{max-width:840px;margin:auto;display:grid;gap:12px}
    .faq-item summary{font-weight:800;cursor:pointer;color:#18365e}
    .faq-item p{color:var(--muted);margin:12px 0 0;font-size:14px}
    .cta-panel{background:var(--theme);border-radius:22px;padding:42px;color:#fff;text-align:center}
    .cta-panel h2{margin:0 0 10px;font-size:32px}
    .cta-panel p{color:#dceaff;margin:0 auto 22px;max-width:620px}
    .cta-panel .primary-btn{background:#fff;color:var(--theme)}
    @media(max-width:1050px){
      .nav-link{padding-left:7px;padding-right:7px;font-size:13px}
      .header-inner{gap:12px}
      .mega-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:820px){
      .topbar .container{padding:8px 0;align-items:flex-start;flex-direction:column;gap:2px}
      .main-nav{display:none}
      .hamburger{display:block}
      .footer-main{grid-template-columns:repeat(2,1fr)}
      .service-grid,.broker-grid,.product-grid,.video-grid{grid-template-columns:repeat(2,1fr)}
      .metro-map{border-radius:16px;overflow-x:auto}
      .metro-line{min-width:720px}
    }
    @media(max-width:560px){
      .container{width:min(100% - 28px,1180px)}
      .header-inner{min-height:66px}
      .member-btn{display:none}
      .hero-layout-40{padding:50px 0 35px}
      .station-heading h1{font-size:48px}
      .station-heading p{font-size:15px}
      .service-grid,.broker-grid,.product-grid,.video-grid,.footer-main{grid-template-columns:1fr}
      .metro-map{margin-left:-7px;margin-right:-7px}
      .section{padding:52px 0}
    }

/* === cashback-id product mega/aside compact fix === */
.mega-menu .product-grid .mega-card,
.mega-menu .mega-card[href*="/product"],
.nav-item .mega-menu .mega-card {
  min-width: 0 !important;
  align-content: start !important;
}
.mega-menu .product-grid .mega-card img,
.mega-menu .mega-card img {
  width: 40px !important;
  height: 40px !important;
  max-height: 40px !important;
  object-fit: contain !important;
  margin-bottom: 6px !important;
}
.mega-menu .product-grid .mega-card strong,
.mega-menu .mega-card strong {
  display: block !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.mega-menu .product-grid .mega-card small,
.mega-menu .mega-card small {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  overflow: hidden !important;
  max-height: 2.8em !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  margin-top: 4px !important;
}

.product-layout {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 300px) !important;
}
.product-aside {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
.product-aside .aside-item {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  padding: 12px 0 !important;
}
.product-aside .aside-item strong {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: 14px !important;
  margin-bottom: 4px !important;
}
.product-aside .aside-item small {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  overflow: hidden !important;
  max-height: 2.8em !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  word-break: break-word !important;
}

.related-products .related-card,
.related-grid .related-card {
  min-width: 0 !important;
  overflow: hidden !important;
}
.related-products .related-card-body,
.related-grid .related-card-body,
.related-products p,
.related-card small,
.related-card p {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  line-clamp: 2 !important;
  overflow: hidden !important;
  word-break: break-word !important;
}
.product-body,
.product-article,
.ea-content-stack .product-body {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: auto !important;
}
.product-body table,
.product-body img,
.product-body iframe {
  max-width: 100% !important;
}
/* === end cashback-id product mega/aside compact fix === */