    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; scrollbar-gutter: stable; overflow-y: scroll; }
    ::-webkit-scrollbar { width: 6px; }
    ::-webkit-scrollbar-track { background: transparent; }
    ::-webkit-scrollbar-thumb { background: rgba(0,0,0,0); border-radius: 6px; transition: background 0.4s; }
    html:hover::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.18); }
    html:hover::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,0.3); }

    :root {
      --bg:         #F7F6F4;
      --bg-card:    #FFFFFF;
      --bg-section: #F1F0EE;
      --fg:         #0A0A0A;
      --fg-2:       #1A1A1A;
      --fg-muted:   #64748B;
      --fg-subtle:  #94A3B8;
      --red:        #CC0033;
      --red-dk:     #A8002A;
      --red-alpha:  rgba(204,0,51,0.08);
      --border:     rgba(0,0,0,0.07);
      --border-md:  rgba(0,0,0,0.11);
      --shadow-sm:  0 1px 3px rgba(0,0,0,0.05), 0 0 0 1px rgba(0,0,0,0.05);
      --shadow-md:  0 4px 20px rgba(0,0,0,0.07), 0 0 0 1px rgba(0,0,0,0.05);
      --font:       'Inter', system-ui, -apple-system, sans-serif;
      --ease:       cubic-bezier(0.16, 1, 0.3, 1);
      --nav-h:      88px;
    }

    body {
      background: var(--bg); color: var(--fg);
      font-family: var(--font); font-size: 15px; line-height: 1.6;
      -webkit-font-smoothing: antialiased; overflow-x: hidden;
    }

    code {
      font-family: 'SF Mono', ui-monospace, 'Courier New', monospace;
      font-size: 0.82em; background: var(--red-alpha); color: var(--red);
      padding: 1px 6px; border-radius: 4px; border: 1px solid rgba(204,0,51,0.12);
    }

    /* ── AMBIENT BG ── */
    .page-bg {
      position: fixed; inset: 0; z-index: -1; overflow: hidden;
      background:
        radial-gradient(ellipse 100% 60% at 50% -10%, rgba(255,210,220,0.38) 0%, transparent 55%),
        radial-gradient(ellipse 60% 40% at 90% 90%, rgba(220,228,255,0.22) 0%, transparent 50%),
        var(--bg);
    }
    .blob { position: absolute; border-radius: 50%; pointer-events: none; }
    .blob-1 { width:900px; height:600px; top:-250px; left:50%; transform:translateX(-50%); background:rgba(204,0,51,0.04); filter:blur(130px); animation:fa 14s ease-in-out infinite; }
    .blob-2 { width:600px; height:500px; top:30%; left:-180px; background:rgba(255,200,180,0.08); filter:blur(110px); animation:fb 16s ease-in-out infinite; }
    @keyframes fa { 0%,100%{transform:translateX(-50%) translateY(0);} 50%{transform:translateX(-50%) translateY(-22px);} }
    @keyframes fb { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-14px);} }

    /* ── NAV ── */
    nav#nav {
      position: fixed; top:0; left:0; right:0; z-index:200; height:88px;
      display:flex; align-items:center; justify-content:space-between;
      padding: 0 clamp(20px, 9vw, 180px);
      transition: background 0.3s var(--ease), border-color 0.3s, box-shadow 0.3s;
      border-bottom: 1px solid transparent;
    }
    nav#nav.scrolled {
      background: rgba(247,246,244,0.92);
      backdrop-filter: blur(20px) saturate(160%);
      -webkit-backdrop-filter: blur(20px) saturate(160%);
      border-bottom-color: var(--border);
      box-shadow: 0 1px 0 rgba(0,0,0,0.04);
    }
    .nav-logo { text-decoration:none; font-size:26px; font-weight:800; letter-spacing:-0.03em; color:var(--fg); }
    .nav-logo span { color:var(--red); }
    .nav-links { position:absolute; left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:4px; list-style:none; }
    .nav-links a {
      display:inline-flex; align-items:center; gap:7px;
      font-size:15px; font-weight:500; text-decoration:none; color:var(--fg-muted);
      padding:9px 14px; border-radius:8px;
      transition:color 0.2s, background 0.2s;
    }
    .nav-links a svg { opacity:0.6; transition:opacity 0.2s, transform 0.2s var(--ease); flex-shrink:0; }
    .nav-links a:hover { color:var(--fg); background:rgba(0,0,0,0.05); }
    .nav-links a:hover svg { opacity:1; transform:scale(1.08); }
    .btn-nav {
      font-size:15px; font-weight:600; text-decoration:none;
      padding:11px 22px; text-align:center;
      background:var(--fg); color:#fff; border-radius:10px;
      box-shadow:0 1px 3px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.08);
      transition:background 0.2s,transform 0.15s var(--ease),box-shadow 0.2s,filter 0.3s ease;
    }
    .btn-nav:hover { transform:scale(1.06); }
    .nav-hamburger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
    .nav-hamburger span { display:block; width:22px; height:2px; background:var(--fg); border-radius:1px; transition:all 0.26s var(--ease); }
    .nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
    .nav-hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0);}
    .nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
    .nav-mobile {
      display:none; position:fixed; top:88px; left:0; right:0;
      background:rgba(247,246,244,0.96); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
      border-bottom:1px solid var(--border); flex-direction:column; z-index:199; padding:8px 0 16px;
    }
    .nav-mobile.open { display:flex; }
    .nav-mobile a {
      display:flex; align-items:center; gap:12px;
      color:var(--fg-muted); text-decoration:none;
      font-size:14px; font-weight:500; padding:12px 24px;
      transition:color 0.18s,background 0.18s;
    }
    .nav-mobile a svg { opacity:0.55; flex-shrink:0; transition:opacity 0.18s; }
    .nav-mobile a:hover { color:var(--fg); background:rgba(0,0,0,0.03); }
    .nav-mobile a:hover svg { opacity:1; }
    .nav-mobile .m-cta svg { opacity:0.95; }
    .nav-mobile .m-cta { margin:8px 16px 0; background:var(--red); color:#fff!important; border-radius:8px; text-align:center; padding:12px 24px!important; font-weight:600!important; }
    .nav-mobile .m-cta:hover { }

    /* ── PAGE HEADER ── */
    .page-header {
      padding: calc(var(--nav-h) + 72px) clamp(20px, 5vw, 80px) 56px;
      max-width: 900px; margin: 0 auto;
      border-bottom: 1px solid var(--border);
    }
    .page-eyebrow {
      font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase;
      color: var(--red); margin-bottom: 16px;
      display: flex; align-items: center; gap: 10px;
    }
    .page-eyebrow::before { content:''; width:28px; height:1px; background:var(--red); flex-shrink:0; }
    .page-title {
      font-size: clamp(42px, 6vw, 68px); font-weight: 800; letter-spacing: -0.04em;
      line-height: 1.05; margin-bottom: 16px; color: var(--fg);
    }
    .page-title .accent { color: var(--red); }
    .page-meta { font-size: 12px; color: var(--fg-muted); }

    /* ── CONTENT ── */
    .content { max-width: 900px; margin: 0 auto; padding: 64px clamp(20px, 5vw, 80px) 100px; }

    .policy-section {
      margin-bottom: 56px; padding-bottom: 56px;
      border-bottom: 1px solid var(--border);
    }
    .policy-section:last-child { border-bottom: none; margin-bottom: 0; }

    .section-num { font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--red); margin-bottom: 6px; }
    .section-heading { font-size: 20px; font-weight: 700; letter-spacing: -0.02em; margin-bottom: 20px; color: var(--fg); }

    .policy-text { font-size: 14px; color: var(--fg-muted); line-height: 1.85; margin-bottom: 14px; }
    .policy-text:last-child { margin-bottom: 0; }
    .policy-text a { color: var(--red); text-decoration: none; }
    .policy-text a:hover { color: var(--red-dk); text-decoration: underline; }
    .policy-text.mt-16 { margin-top: 16px; }

    .sub-label {
      font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;
      color: var(--fg-2); margin-bottom: 8px; margin-top: 24px;
    }
    .sub-label:first-child { margin-top: 0; }

    .data-list { list-style: none; margin: 16px 0; display: flex; flex-direction: column; gap: 8px; }
    .data-list li {
      display: flex; gap: 14px; align-items: flex-start;
      background: var(--bg-card); border: 1px solid var(--border);
      border-left: 2px solid var(--red); padding: 12px 16px; border-radius: 8px;
      font-size: 13px; color: var(--fg-muted); line-height: 1.7;
      box-shadow: var(--shadow-sm);
    }
    .data-list li strong { color: var(--fg); font-weight: 600; white-space: nowrap; flex-shrink: 0; min-width: 150px; }
    .data-list li a { color: var(--red); text-decoration: none; }
    .data-list li a:hover { text-decoration: underline; }

    .note-box {
      background: var(--red-alpha); border: 1px solid rgba(204,0,51,0.14);
      border-radius: 10px; padding: 14px 18px;
      margin: 18px 0; font-size: 13px; color: var(--fg-muted); line-height: 1.75;
    }
    .note-box strong { color: var(--fg); }

    /* ── TABLE ── */
    .policy-table { width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 13px; border-radius: 10px; overflow: hidden; box-shadow: var(--shadow-sm); }
    .policy-table th {
      text-align: left; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase;
      color: var(--fg); padding: 12px 18px; background: var(--bg-section);
      border-bottom: 1px solid var(--border-md);
    }
    .policy-table td { padding: 12px 18px; color: var(--fg-muted); border-bottom: 1px solid var(--border); line-height: 1.6; background: var(--bg-card); }
    .policy-table tr:last-child td { border-bottom: none; }
    .policy-table td:first-child { color: var(--fg); font-weight: 600; white-space: nowrap; }
    .policy-table tr:hover td { background: rgba(204,0,51,0.025); }

    .contact-box { display: flex; gap: 10px; margin-top: 20px; flex-wrap: wrap; }
    .contact-item {
      display: flex; align-items: center; gap: 9px;
      background: var(--bg-card); border: 1px solid var(--border);
      border-radius: 9px; padding: 11px 16px; font-size: 13px; color: var(--fg);
      text-decoration: none; transition: border-color 0.2s, box-shadow 0.2s;
      box-shadow: var(--shadow-sm);
    }
    .contact-item:hover { border-color: var(--border-md); box-shadow: var(--shadow-md); }
    .contact-item svg { color: var(--red); flex-shrink: 0; }

    /* ── FOOTER ── */
    footer {
      background: var(--bg-card);
      border-top: 1px solid var(--border);
      padding: 60px 40px 40px;
    }
    .foot-grid {
      max-width: 1200px; margin: 0 auto;
      display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; gap: 48px;
      padding-bottom: 32px; margin-bottom: 0;
    }
    .foot-brand-logo { font-size: 17px; font-weight: 800; letter-spacing: -0.03em; text-decoration: none; color: var(--fg); display: inline-block; margin-bottom: 12px; }
    .foot-brand-logo span { color: var(--red); }
    .foot-brand-desc { font-size: 13px; color: var(--fg-muted); line-height: 1.6; max-width: 220px; }
    .foot-col-title { font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--fg); margin-bottom: 16px; }
    .foot-col-links { display: flex; flex-direction: column; gap: 10px; }
    .foot-col-links a { font-size: 13px; color: var(--fg-muted); text-decoration: none; display: flex; align-items: center; gap: 5px; transition: color 0.2s; }
    .foot-col-links a:hover { color: var(--fg); }
    .foot-bottom {
      max-width: 1200px; margin: 0 auto;
      display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px;
    }
    .foot-copy { font-size: 12px; color: var(--fg-muted); }

    @media (max-width: 1024px) {
      .foot-grid { grid-template-columns: 1fr 1fr 1fr; }
      .foot-brand { grid-column: span 3; }
    }
    @media (max-width: 900px) {
      nav#nav { padding: 0 20px; }
      .nav-links { display: none; }
      .btn-nav { display: none; }
      .nav-hamburger { display: flex; }
      .foot-grid { grid-template-columns: 1fr 1fr; }
      .foot-brand { grid-column: span 2; }
      footer { padding: 48px 20px 32px; }
    }
    @media (max-width: 600px) {
      .page-title { font-size: 38px; }
      .section-heading { font-size: 18px; }
      .data-list li { flex-direction: column; gap: 6px; }
      .data-list li strong { min-width: auto; white-space: normal; }
      .contact-box { flex-direction: column; }
      .policy-table th, .policy-table td { padding: 10px 12px; }
      .policy-table td:first-child { white-space: normal; }
      .foot-grid { grid-template-columns: 1fr 1fr; }
      .foot-brand { grid-column: span 2; }
    }
  
