 /* ===== Scope: #stickyTopbar only ===== */
    #stickyTopbar{
      --brand:#13b5a3;
      --accent:#11a292;
      --muted:#556070;
      --ink:#0b1220;
      --line:#e8ecef;
      position:relative;
      z-index:9999;
    }

    /* ===== Topbar 기본 ===== */
    #stickyTopbar .topbar{
      position:fixed;
      top:0;
      left:50%;
      transform:translate(-50%, 0);
      width:100%;
      max-width:1200px;
      display:flex; align-items:center; justify-content:space-between;
      gap:16px;
      font-family:Pretendard, "Noto Sans KR", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
      font-size:.95rem; color:var(--muted);
      padding:10px 14px;
      border-radius:14px;
      background:rgba(255,255,255,.86);
      backdrop-filter:saturate(130%) blur(10px);
      box-shadow:0 10px 24px rgba(0,0,0,.08);
      transition:transform .32s ease, background-color .25s ease, color .25s ease;
      will-change:transform;
    }

    /* 왼쪽 영역: 로고(1줄) + 로테이트 텍스트(아래칸) 수직 스택 */
    #stickyTopbar .left{
      display:flex; flex-direction:column; align-items:flex-start;
      gap:2px; padding-left:18px;
    }

    /* 브랜드 라벨 (첫 줄) */
    #stickyTopbar .brand{
      font-weight:800; line-height:1; white-space:nowrap;
      font-size:20px; color:var(--ink);
      display:block;
    }

    /* ====== 한 줄씩 페이드 교대 텍스트 (둘째 줄) ====== */
    #stickyTopbar .fade-rotator{
      position:relative;
      height:1.35em; /* 한 줄 높이 고정 */
      line-height:1.35;
      /* overflow:hidden; */
      margin-top:2px; /* 로고 아래 여백 */
      width:100%;
      max-width:520px; /* 필요 시 조절 */
    }
    /* 시각적으로 겹치되 스크린리더 중복 읽힘 방지(필요 시 사용) */
    #stickyTopbar .fade-rotator .sr-only{
      position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
      clip:rect(0,0,0,0);white-space:nowrap;border:0;
    }

    #stickyTopbar .fade-rotator .line{
      position:absolute; inset:0 auto auto 0;
      width:100%;min-width:200px; opacity:0; transform:translateY(10%);
      will-change:opacity, transform;
      animation:none; /* .play에서만 활성화 */
    }
    #stickyTopbar .fade-rotator.play .line{ animation: fadeLoop 6s infinite; }
    #stickyTopbar .fade-rotator.play .line:nth-child(1){ animation-delay:0s; }
    #stickyTopbar .fade-rotator.play .line:nth-child(2){ animation-delay:3s; }

    @keyframes fadeLoop{
      0%   { opacity:0; transform:translateY(10%); }
      10%  { opacity:1; transform:translateY(0); }
      40%  { opacity:1; transform:translateY(0); }
      50%  { opacity:0; transform:translateY(-10%); }
      100% { opacity:0; transform:translateY(-10%); }
    }

    /* 버튼 */
    #stickyTopbar .tel{
      font-weight:800; color:#fff; background:var(--brand);
      border:1.5px solid var(--brand); padding:9px 18px; border-radius:999px;
      font-size:.98rem; box-shadow:0 4px 12px rgba(19,181,163,.25);
      text-decoration:none; transition:transform .18s ease, box-shadow .2s ease, background-color .2s ease, border-color .2s ease;
      margin-right:10px; white-space:nowrap;
    }
    #stickyTopbar .tel:hover{
      background:var(--accent); border-color:var(--accent);
      box-shadow:0 8px 20px rgba(19,181,163,.40); transform:translateY(-1px);
    }

    /* 접근성: 모션 최소화 환경 */
    @media (prefers-reduced-motion: reduce){
      #stickyTopbar .topbar{ transition:none; }
      #stickyTopbar .fade-rotator .line{ animation:none !important; opacity:1; transform:none; }
      #stickyTopbar .fade-rotator{ height:auto; }
    }

    /* 반응형 */
    @media (max-width:720px){
      #stickyTopbar .topbar{ border-radius:0; max-width:100%; }
      #stickyTopbar .brand{ font-size:18px; margin-left:10px; }
      #stickyTopbar .fade-rotator{ margin-left:10px; max-width:78vw; }
      #stickyTopbar .tel{ padding:8px 14px; font-size:.9rem; }
    }


     /* ================= Scope: #legalDBHero only ================= */
    #legalDBHero {
      --ink: #0b1220;
      --muted: #556070;
      --brand: #13b5a3;
      --line: #e8ecef;
      --bg: #f6f8fa;
      --radius: 18px;
      --shadow: 0 16px 40px rgba(0, 0, 0, .1);
      --soft: 0 1px 3px rgba(19,181,163,.12), 0 1px 2px rgba(0,0,0,.04);
      --soft-hover: 0 6px 16px rgba(19,181,163,.16), 0 2px 4px rgba(0,0,0,.05);
      --accent: #11a292;
      --bubble:#e9f5f3;
      --hdr-space: 92px; /* 헤더 높이만큼 여유(스크립트에서 보정) */

      font-family: Pretendard, "Noto Sans KR", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
      background:#fff; color:var(--ink);
      padding:60px 20px;
      position:relative; overflow:hidden; isolation:isolate;
    }
    #legalDBHero .wrap { max-width:1200px; margin:0 auto; display:flex; flex-direction:column; gap:40px; }

    /* 🔹 라이트 버블 */
    #legalDBHero .bg-bubble{position:absolute; border-radius:50%; background:var(--bubble); filter:blur(.2px); opacity:.7; z-index:0;}
    #legalDBHero .b1{width:520px; height:520px; left:-180px; top:-160px; z-index:-1;}
    #legalDBHero .b2{width:440px; height:440px; right:-140px; bottom:20px; opacity:.55; z-index:-1;}
    #legalDBHero .b3{width:380px; height:380px; right:20%; top:50%; translate:0 -50%; opacity:.45; z-index:-1;}
    @media (max-width:980px){
      #legalDBHero .b1{width:340px; height:340px; left:-120px; top:-120px;}
      #legalDBHero .b2{width:150px; height:150px; right:-80px; bottom:10px;}
      #legalDBHero .b3{display:none;}
    }

    /* 타이틀 (헤더 공간만큼 아래에서 시작) */
    #legalDBHero .headline { text-align:center; margin-top:var(--hdr-space); }
    #legalDBHero .headline .tag { display:inline-block; background:var(--bg); color:var(--brand); padding:4px 12px; font-size:.85rem; border-radius:50px; margin-bottom:14px; font-weight:600; }
    #legalDBHero .headline h2 { font-size:clamp(1.8rem,3.2vw,2.4rem); line-height:1.4; margin:0 0 12px; font-weight:800; }
    #legalDBHero .headline h2 b { color:var(--brand); }
    #legalDBHero .headline p { margin:0; font-size:1rem; color:var(--muted); }

    /* 본문 박스 */
    #legalDBHero .content { display:flex; flex-wrap:wrap; gap:32px; background:#fff; border-radius:var(--radius); box-shadow:var(--shadow); padding:40px; align-items:stretch; }

    /* ========= Left: DB 스택 티커 ========= */
    #legalDBHero .left { flex:1 1 50%; min-width:100px; position:relative; }
    #legalDBHero .content .left { box-shadow:0 6px 16px rgba(19,181,163,.09), 0 2px 4px rgba(0,0,0,.01); border-radius:10px; }
    #legalDBHero .left::before { content:""; position:absolute; inset:auto -10% -20% -10%; height:360px; pointer-events:none; }

    #legalDBHero .dbStack { position:relative; width:min(560px,96%); height:370px; overflow:hidden; margin:0 auto; }
    #legalDBHero .dbTrack { display:flex; flex-direction:column; gap:10px; will-change:transform; }
    #legalDBHero .dbTrack.is-shifting { transition:transform .55s cubic-bezier(.22,.75,.16,1); }

    /* 카드 */
    #legalDBHero .db-card {
      border:1.2px solid #00000011; border-radius:12px; box-shadow:var(--soft);
      padding:14px 20px; display:flex; gap:14px; align-items:center; height:78px; box-sizing:border-box;
      opacity:1; transform:translateY(0);
    }
    #legalDBHero .db-card.enter { opacity:0; transform:translateY(16px); }
    #legalDBHero .db-card.enter.is-in { transition:opacity .55s ease, transform .55s ease; opacity:1; transform:translateY(0); }

    /* 아바타 */
    #legalDBHero .db-avatar {
      flex:0 0 44px; height:44px; border:1px solid #11a29233; border-radius:50%;
      background:#13b5a353; display:grid; place-items:center; color:#fff; font-weight:700; font-size:1.5rem;
      box-shadow:inset 0 0 0 2px rgba(255,255,255,.7);
    }
    #legalDBHero .db-avatar::before { content:'👤'; font-size:20px; color:#fff; }

    #legalDBHero .db-main { flex:1 1 auto; }
    #legalDBHero .db-title { margin:0 0 4px; font-size:1.05rem; font-weight:800; letter-spacing:-.01em; }
    #legalDBHero .db-sub { margin:0; font-size:.92rem; color:var(--muted); }

    /* 말풍선 */
    #legalDBHero .left .bubble { position:absolute; background:#fff; box-shadow:0 4px 20px rgba(0,0,0,.08); border-radius:12px; padding:8px 14px; font-size:.85rem; white-space:nowrap; font-weight:500; }
    #legalDBHero .bubble1 { top:8px; left:8px; }
    #legalDBHero .bubble2 { bottom:10px; left:0; }
    #legalDBHero .bubble3 { top:28%; right:0; }

    /* ========= Right ========= */
    #legalDBHero .right { flex:1 1 45%; min-width:280px; display:flex; flex-direction:column; justify-content:space-between; }
    #legalDBHero .right h3 { font-size:1.25rem; font-weight:700; margin-bottom:18px; }
    #legalDBHero .right ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:0; }
    #legalDBHero .right ul li { padding:12px 0; background:none; border-radius:0; font-size:.98rem; border-bottom:1px dashed var(--line); }
    #legalDBHero .right ul li:last-child { border-bottom:none; }
    #legalDBHero .right ul li:before { content:"✓"; color:var(--brand); font-weight:800; margin-right:10px; font-size:1.1em; }

    /* 버튼 */
    #legalDBHero .actions { margin-top:25px; display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
    #legalDBHero .actions .btn-outline, #legalDBHero .actions .btn-fill {
      border:none; cursor:pointer; font-size:1rem; font-weight:700; padding:12px 20px; border-radius:50px; transition:all .2s; text-decoration:none; display:inline-block; text-align:center;
    }
    #legalDBHero .actions .btn-outline { background:#fff; border:1.5px solid var(--brand); color:var(--brand); }
    #legalDBHero .actions .btn-fill { background:var(--brand); color:#fff; box-shadow:0 6px 15px rgba(19,181,163,.35); }
    #legalDBHero .actions .btn-fill:hover { background:var(--accent); }
    .border1{display:none;}

    /* 반응형 */
    @media(max-width:768px){
      #legalDBHero { padding:40px 10px; }
      #legalDBHero .content { flex-direction:column; padding:20px; gap:20px; }
      #legalDBHero .left { margin-top:0; }
      #legalDBHero .right { order:1; min-width:100%; }
      #legalDBHero .headline h2 { font-size:1.6rem; }
      #legalDBHero .headline p { font-size:.95rem; }
      #legalDBHero .dbStack { width:100%; height:370px; }
      #legalDBHero .db-card { padding:12px 16px; height:75px; }
      #legalDBHero .db-title { font-size:1rem; }
      #legalDBHero .db-sub { font-size:.85rem; }
      #legalDBHero .left .bubble { display:none; }
      #legalDBHero .right h3 { font-size:1.35rem; margin-top:10px; margin-bottom:15px; }
      #legalDBHero .right ul li { font-size:1.1rem; padding:10px 0; }
      #legalDBHero .actions { flex-direction:column; gap:8px; }
      #legalDBHero .actions .btn-outline, #legalDBHero .actions .btn-fill { width:100%; max-width:200px; font-size:.95rem; }
      .border1{display:block;}
    }


      /* ===== Scope: #whoCanPartner only ===== */
    #whoCanPartner{
      /* --ink:#0b1220; */
      --sub:#475569;
      /* 기존 팔레트 유지 + 민트 포인트 추가 */
      --brand:#0b4a8b;    /* 기존 블루(그대로 유지) */
      --brand-2:#184a7d;  /* 바 배경 블루(그대로 유지) */
      --mint:#13b5a3;     /* 🔹 톤앤매너 포인트 색 */
      --accent:#11a292;   /* 🔹 호버/보조 */
      --hl:#d6f7f1;       /* 🔹 하이라이트 밑줄(민트톤으로 변경) */
      --line:#e5e7eb;
      --card:#ffffff;
      --thumb-bg:#fff6e8;
      --tag-shadow:0 6px 16px rgba(19,181,163,.28);
      font-family: Pretendard, "Noto Sans KR", "Noto Sans", system-ui, -apple-system, Segoe UI, Roboto, Apple SD Gothic Neo, sans-serif;
      color:var(--ink);
      max-width: 1080px;
      margin: 0 auto;
      padding: 36px 16px 56px;
      background:#fff !important;
    }

    /* ===== 상단 배너형 헤더 ===== */
    #whoCanPartner .hero{ text-align:center; max-width:820px; margin:0 auto 28px; }
    

   #whoCanPartner .hero .tag{display:inline-block; background:#f6f8fa; color:#13b5a3; padding:6px 14px; border-radius:999px; font-weight:700; font-size:.86rem; }


    #whoCanPartner .hero .headline{
      font-weight:900; font-size:40px; line-height:1.2; letter-spacing:-.4px;
      color:#0f172a;
    }
    /* 하이라이트를 민트 톤으로 */
    #whoCanPartner .hero .headline .hl{
      display:inline-block; color:var(--mint);
      background:linear-gradient(transparent 66%, var(--hl) 66% 100%);
      border-radius:2px; padding:0 .04em;
    }
    #whoCanPartner .hero .sub{ margin-top:12px; font-size:22px; font-weight:800; color:#111827; }
    #whoCanPartner .hero .note{ margin-top:8px; font-size:14px; color:#94a3b8; }

    /* 포인트 3분할 바 (기존 색 유지) */
    #whoCanPartner .points{
      margin:26px auto 34px; background:var(--brand-2); color:#fff;
      border-radius:12px; padding:22px 16px;
      box-shadow:0 8px 18px rgba(24,74,125,.16);
      max-width:920px;
    }
    #whoCanPartner .points .wrap{ display:grid; grid-template-columns:repeat(3,1fr); align-items:center; text-align:center; }
    #whoCanPartner .points .col{ padding:6px 10px; }
    #whoCanPartner .points .label{ font-size:16px; color:#cfe3fb; font-weight:600; }
    #whoCanPartner .points .value{ font-size:28px; font-weight:900; letter-spacing:-.3px; }
    #whoCanPartner .points .col:not(:last-child){ position:relative; }
    #whoCanPartner .points .col:not(:last-child::after){
      content:""; position:absolute; right:0; top:50%; transform:translateY(-50%);
      width:2px; height:44px; border-radius:1px;
      background:linear-gradient(180deg, rgba(255,255,255,.25), rgba(255,255,255,.65), rgba(255,255,255,.25));
    }

    /* 기존 타이틀/부제는 사용 안 함 */
    #whoCanPartner .head{ display:none; }

    /* ===== 카드 그리드 이하 기존 스타일 유지 ===== */
    #whoCanPartner .grid{ display:grid; grid-template-columns: 1fr 1fr; gap:18px; }
    @media (max-width:630px){ #whoCanPartner .grid{ grid-template-columns:1fr; } }

    #whoCanPartner .card{
      background:var(--card); border:1px solid var(--line); border-radius:18px;
      box-shadow:0 1px 0 rgba(16,24,40,.04), 0 1px 2px rgba(16,24,40,.06);
      overflow:hidden; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
      text-decoration:none; color:inherit; display:block;
    }
    /* 호버시 테두리에 민트 기운 살짝 */
    #whoCanPartner .card:hover{ transform:translateY(-2px); border-color:rgba(19,181,163,.35); box-shadow:0 10px 24px rgba(16,24,40,.12); }

    #whoCanPartner .thumb{ position:relative; background:var(--thumb-bg); aspect-ratio:5/2; overflow:hidden; }
    #whoCanPartner .thumb img{ width:100%; height:100%; object-fit:cover; display:block; transition: transform .45s ease, filter .35s ease; }
    #whoCanPartner .card:hover .thumb img{ transform:scale(1.03); filter:saturate(1.02); }


    #whoCanPartner .tag.left{ left:16px; }
    #whoCanPartner .tag.right{ right:16px; } /* 누수 방지용 범위 스코프 */

    /* 카드 텍스트 포인트 컬러를 민트로 보정 */
    #whoCanPartner .info{ text-align:center; padding:14px 12px 18px; }
    #whoCanPartner .info .leading{ font-weight:900; font-size:22px; color:var(--mint); margin-bottom:6px; }
    #whoCanPartner .info .desc{ font-size:17px; color:#1f2937; }

    /* FadeIn */
    #whoCanPartner .card.reveal{ opacity:0; transform:translateY(16px); transition:opacity .6s ease, transform .6s cubic-bezier(.2,.65,.25,1); }
    #whoCanPartner .card.reveal.show{ opacity:1; transform:none; }
    #whoCanPartner .grid .card.reveal:nth-child(2n){ transition-delay:.06s; }
    #whoCanPartner .grid .card.reveal:nth-child(3n){ transition-delay:.12s; }
    @media (prefers-reduced-motion:reduce){ #whoCanPartner .card.reveal{ opacity:1; transform:none; } }



      /* ================= Scope: #carLoanPlus only ================= */
    #carLoanPlus{
      --ink:#0b1220;               /* 본문 텍스트 */
      --muted:#556070;             /* 보조 텍스트 */
      --brand:#13b5a3;             /* 포인트(청록) */
      --bg:#f6f8fa;                /* 연한 배경 */
      --line:#e8ecef;              /* 구분선 */
      --radius:18px;
      --shadow:0 16px 40px rgba(0,0,0,.10);
      --soft:0 1px 3px rgba(19,181,163,.12), 0 1px 2px rgba(0,0,0,.04);
      --soft-hover:0 6px 16px rgba(19,181,163,.16), 0 2px 4px rgba(0,0,0,.05);
      --accent:#11a292;            /* hover 진한 색 */
      font-family:Pretendard, "Noto Sans KR", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
      background:#fff; color:var(--ink);
      padding:64px 20px;
    }
    #carLoanPlus .wrap{max-width:1200px; margin:0 auto; display:flex; flex-direction:column; gap:34px;}

/* 상단 일러스트 (선형 SVG) */
#carLoanPlus .illu{display:flex; justify-content:center;}
#carLoanPlus .illu svg{width:min(420px,60vw); height:auto; filter:drop-shadow(0 8px 20px rgba(19,181,163,.12));}
#carLoanPlus .illu line,
#carLoanPlus .illu path{stroke:var(--brand)}

/* 헤드라인 – legalDBHero 톤 */
#carLoanPlus .headline{text-align:center}
#carLoanPlus .headline .tag{display:inline-block; background:var(--bg); color:var(--brand); padding:6px 14px; border-radius:999px; font-weight:700; font-size:.86rem; margin-bottom:14px}
#carLoanPlus .headline h2{margin:0 0 10px; font-size:clamp(1.7rem,3.2vw,2.3rem); line-height:1.35; font-weight:800; letter-spacing:-.01em}
#carLoanPlus .headline h2 b{color:var(--brand)}
#carLoanPlus .headline p{margin:0; color:var(--muted); font-size:1rem}

/* 옵션 원 카드 4EA */
#carLoanPlus .steps{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; align-items:stretch;justify-content: center;}
#carLoanPlus .step{position:relative; background:var(--bg); border:1px solid #00000010; border-radius:999px; box-shadow:var(--soft); display:flex; flex-direction:column; align-items:center; justify-content:center; padding:1rem; transition:.28s ease; text-align:center}
#carLoanPlus .step:hover{transform:translateY(-4px); box-shadow:var(--soft-hover)}
#carLoanPlus .no{position:absolute; top:10px; left:14px; width:32px; height:32px; border-radius:50%; background:#fff; border:1px solid var(--line); display:grid; place-items:center; font-weight:800; color:var(--brand); box-shadow:0 4px 10px rgba(0,0,0,.05)}
#carLoanPlus .label{font-size:1.06rem; font-weight:800; letter-spacing:-.01em; margin-bottom:.2rem}
#carLoanPlus .em{display:block; font-weight:900; color:var(--brand)}

/* 하단 보조 라인 (이미지의 양옆 얇은 라인 느낌) */
#carLoanPlus .baseline{display:flex; align-items:center; justify-content:center; gap:14px; margin-top:6px}
#carLoanPlus .baseline .dash{flex:0 1 38px; height:2px; background:linear-gradient(90deg, transparent, var(--line), transparent)}

/* 반응형 */
@media (max-width:1200px){
  #carLoanPlus .steps{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:500px){
  #carLoanPlus .steps{grid-template-columns:repeat(1,1fr)}
}


@media (max-width:560px){
  #carLoanPlus{padding:44px 14px}
  #carLoanPlus .steps{gap:14px}
  #carLoanPlus .label{font-size:1rem}
  #carLoanPlus .illu svg{width:min(340px,84vw)}
}


  /* ---------- Scope: #eventList only ---------- */
    #eventList{
      /* Light tone tokens */
      --bg:#f7f8fa;
      --panel:#ffffff;
      --line:#e2e6ec;
      --ink:#111827;
      --muted:#6b7280;
      --blue:#13b5a3;     /* 메인 민트 */
      --blue-2:#11a292;   /* 보조 민트 */
      --hl:#d6f7f1;       /* 하이라이트 밑줄 (민트톤) */
      --radius:12px;

      font-family: Pretendard, "Noto Sans KR", sans-serif;
      background: radial-gradient(80% 130% at 50% 0%, #fff 0%, var(--bg) 80%);
      padding:40px 20px;
      color:var(--ink);
      max-width:960px;
      margin:0 auto;
    }

    /* ===== 상단 헤더 (배너 레이아웃) ===== */
    #eventList .hero{
      text-align:center;
      max-width:760px;
      margin:0 auto 28px;
    }
    #eventList .hero .headline{
      font-size:40px;
      font-weight:900;
      letter-spacing:-.4px;
      line-height:1.2;
      color:var(--ink);
    }
    #eventList .hero .headline .hl{
      position:relative;
      display:inline-block;
      color:var(--blue-2); /* 민트 포인트 컬러 */
      /* 밑줄 하이라이트 */
      background: linear-gradient(transparent 65%, var(--hl) 65% 100%);
      padding:0 .06em;
      border-radius:2px;
    }
    #eventList .hero .sub{
      margin-top:12px;
      font-size:17px;
      font-weight:800;
      color:var(--ink);
    }
    #eventList .hero .note{
      margin-top:8px;
      font-size:14px;
      color:var(--muted);
    }

    /* 포인트 3개 바 */
    #eventList .points{
      margin:26px auto 34px;
      background:var(--blue);     /* 민트로 변경 */
      color:#fff;
      border-radius:10px;
      padding:22px 16px;
      box-shadow:0 6px 14px rgba(19,181,163,.15); /* 민트 그림자 */
    }
    #eventList .points .wrap{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:0;
      max-width:860px;
      margin:0 auto;
      align-items:center;
      text-align:center;
    }
    #eventList .points .col{
      padding:8px 10px;
      display:flex;
      flex-direction:column;
      gap:6px;
    }
    #eventList .points .label{
      font-size:16px;
      color:#cdeee9; /* 민트 계열 라벨 색 */
      font-weight:600;
    }
    #eventList .points .value{
      font-size:26px;
      font-weight:900;
      letter-spacing:-.3px;
    }
    /* 세로 구분선 */
    #eventList .points .col:not(:last-child){
      position:relative;
    }
    #eventList .points .col:not(:last-child)::after{
      content:"";
      position:absolute; right:0; top:50%; transform:translateY(-50%);
      width:2px; height:42px;
      background:linear-gradient(180deg, rgba(255,255,255,.25), rgba(255,255,255,.6), rgba(255,255,255,.25));
      border-radius:1px;
    }

    /* ===== 기존 카드 리스트 (밝은 톤 유지) ===== */
    #eventList .item{
      display:flex;
      justify-content:space-between;
      align-items:center;
      background:linear-gradient(180deg, var(--panel) 0%, #f5f7fb 100%);
      border:1px solid var(--line);
      border-radius:var(--radius);
      padding:20px;
      margin-bottom:14px;
      transition:background .45s ease, transform .35s ease, box-shadow .35s ease, border-color .35s ease;
      box-shadow:0 4px 12px rgba(0,0,0,.06);
    }
    #eventList .item:last-child{ margin-bottom:0; }

    #eventList .item .txt{
      font-size:24px;
      font-weight:700;
      line-height:1.45;
      color:var(--ink);
    }
    #eventList .item .txt strong{
      color:var(--blue-2); /* 보조 민트 */
      font-size:26px;
      font-weight:900;
    }
    #eventList .item img{
      max-width:90px;
      height:auto;
      border-radius:8px;
      margin-left:16px;
      transition: transform .35s ease, filter .35s ease;
      border:1px solid var(--line);
      background:#fff;
    }

    /* 자동 강조(액티브) – 민트 포커스 */
    #eventList .item.active{
      background:
        linear-gradient(135deg, #fff 0%, #e9fbf8 50%, #d2f5ef 75%, #b9efe8 100%); /* 민트 톤 그라데이션 */
      border-color:#9ee5db; /* 민트 테두리 */
      transform:translateY(-2px);
      box-shadow:0 10px 22px rgba(19,181,163,.18); /* 민트 그림자 */
    }
    #eventList .item.active .txt{ color:#0b3b36; } /* 딥 틸 텍스트 */
    #eventList .item.active .txt strong{ color:#13b5a3; text-shadow:0 0 8px rgba(19,181,163,.12); }
    #eventList .item.active img{ transform:scale(1.05); filter:saturate(1.05) brightness(1.05); }

    /* 반응형 */
    @media (max-width:640px){
      #eventList .hero .headline{ font-size:34px; }
      #eventList .points .value{ font-size:24px; }
    }
    @media (max-width:520px){
        #eventList .hero .headline{ font-size:24px; }
      #eventList .points .wrap{ grid-template-columns:1fr; gap:12px; }
      #eventList .points .col:not(:last-child)::after{ display:none; }
      #eventList .item .txt{ font-size:17px; }
      #eventList .item .txt strong{ font-size:17px; }
    }


     /* ===== Scope: #applyMintForm only ===== */
    #applyMintForm{
      --ink:#0b1220;
      --muted:#556070;
      --brand:#13b5a3;   /* 포인트 민트 */
      --accent:#11a292;  /* 호버/진한 민트 */
      --bg:#f6f8fa;      /* 연한 배경 */
      --bubble:#e9f5f3;  /* 라이트 버블 */
      --line:#e8ecef;
      --card:#ffffff;
      --radius:18px;
      --shadow:0 16px 40px rgba(0,0,0,.10);
      --soft:0 1px 3px rgba(19,181,163,.12), 0 1px 2px rgba(0,0,0,.04);
      --soft-hover:0 6px 16px rgba(19,181,163,.16), 0 2px 4px rgba(0,0,0,.05);
      font-family:Pretendard, "Noto Sans KR", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
      color:var(--ink);
      background:#fff;
      position:relative; isolation:isolate; overflow:hidden;
      padding:120px 16px;
    }
    #applyMintForm .wrap{max-width:960px; margin:0 auto; display:grid; grid-template-columns:1fr; gap:min(5vw,48px); align-items:stretch;}
    @media (max-width:940px){ #applyMintForm .wrap{grid-template-columns:1fr; gap:24px;} }

    /* 라이트 버블 배경 */
    #applyMintForm .bg-bubble{position:absolute; border-radius:50%; background:var(--bubble); filter:blur(.2px); opacity:.75; z-index:0;}
    #applyMintForm .b1{width:520px; height:520px; left:-160px; top:-160px; z-index:-1;}
    #applyMintForm .b2{width:420px; height:420px; right:-120px; bottom:-120px; opacity:.55; z-index:-1;}
    #applyMintForm .b3{width:360px; height:360px; right:40%; top:52%; translate:50% -50%; opacity:.45; z-index:-1;}
    @media (max-width:940px){ #applyMintForm .b3{display:none;} }

    /* 좌측 카피 + 포인트 */
    #applyMintForm .copy{align-self:center}
    #applyMintForm .tag{display:inline-block; background:var(--bg); color:var(--brand); padding:6px 14px; border-radius:999px; font-weight:700; font-size:.88rem; margin-bottom:12px; border:1px solid rgba(19,181,163,.28); box-shadow:0 1px 0 rgba(255,255,255,.6) inset;}
    #applyMintForm .headline{margin:.2em 0 .45em; line-height:1.25; letter-spacing:-.02em; font-weight:900; font-size:clamp(28px,4.2vw,44px);}
    #applyMintForm .headline b{color:var(--brand)}
    #applyMintForm .sub{color:var(--muted); font-weight:600;}
    #applyMintForm .points{display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:18px}
    @media screen and (max-width:550px){
      #applyMintForm .points{grid-template-columns:1fr}
    }
    #applyMintForm .chip{display:flex; align-items:center; justify-content:center; gap:8px; padding:10px 12px; border-radius:12px; background:#fff; border:1px solid var(--line); font-weight:800; font-size:.95rem; box-shadow:var(--soft)}

    /* 우측 폼 카드 */
    #applyMintForm .card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); padding:26px; position:relative;}
    #applyMintForm .card h3{margin:0 0 14px; font-size:1.25rem; font-weight:900; letter-spacing:-.01em}
    #applyMintForm .help{margin:-6px 0 16px; font-size:.92rem; color:var(--muted)}

    #applyMintForm .grid{display:grid; grid-template-columns:1fr 1fr; gap:14px}
    #applyMintForm .grid .full{grid-column:1/-1}
    @media (max-width:560px){ #applyMintForm .grid{grid-template-columns:1fr} }

    #applyMintForm .field{display:flex; flex-direction:column; gap:8px}
    #applyMintForm label{font-size:.95rem; font-weight:800; color:#2c313a}
    #applyMintForm input[type="text"],
    #applyMintForm input[type="tel"],
    #applyMintForm input[type="number"],
    #applyMintForm select,
    #applyMintForm textarea{
      appearance:none; -webkit-appearance:none; -moz-appearance:none;
      width:100%; padding:12px 14px; border-radius:12px; border:1.5px solid var(--line); background:#fff;
      font-size:1rem; color:var(--ink); outline:none; transition:border-color .2s ease, box-shadow .2s ease;
    }
    #applyMintForm textarea{min-height:92px; resize:vertical}
    #applyMintForm input:focus, #applyMintForm select:focus, #applyMintForm textarea:focus{border-color:rgba(19,181,163,.55); box-shadow:0 0 0 4px rgba(19,181,163,.15)}

    /* 인라인 어시스트 */
    #applyMintForm .assist{font-size:.82rem; color:var(--muted)}

    /* 칩 선택 – 유형 빠른 선택 */
    #applyMintForm .case-chips{display:flex; flex-wrap:wrap; gap:8px}
    #applyMintForm .case-chips button{border:none; cursor:pointer; padding:8px 12px; border-radius:999px; font-weight:800; font-size:.92rem; background:var(--bg); color:var(--brand); border:1px solid rgba(19,181,163,.3); transition:all .2s}
    #applyMintForm .case-chips button[aria-pressed="true"]{background:var(--brand); color:#fff; border-color:var(--brand); box-shadow:0 8px 18px rgba(19,181,163,.28)}

    /* 액션 */
    #applyMintForm .actions{display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:4px}
    #applyMintForm .btn{display:inline-flex; width:100%; margin:20px 0 0; align-items:center; justify-content:center; gap:8px; padding:12px 18px; border-radius:999px; font-weight:900; cursor:pointer; text-decoration:none; border:1.5px solid transparent; transition:all .2s}
    #applyMintForm .btn-fill{background:var(--brand); color:#fff; box-shadow:0 8px 18px rgba(19,181,163,.35)}
    #applyMintForm .btn-fill:hover{background:var(--accent)}
    #applyMintForm .btn-outline{background:#fff; color:var(--brand); border-color:var(--brand)}

    /* 약관 */
    #applyMintForm .agree{display:flex; gap:10px; align-items:flex-start; font-size:.92rem; color:var(--muted)}
    #applyMintForm .agree input{margin-top:3px}

    /* 제출 상태 메시지 */
    #applyMintForm .toast{display:none; margin-top:12px; padding:12px 14px; border-radius:12px; background:#ecfbf7; color:#0f3c36; border:1px solid #b8efe6; font-weight:700}
    #applyMintForm .toast.show{display:block}

     #applyMintForm[data-modal-open="true"]{ overflow:hidden; }
    #applyMintForm .terms-overlay{ position:fixed; inset:0; display:grid; place-items:center; background:rgba(17,24,39,.55); padding:24px; z-index:9999; overscroll-behavior:contain; touch-action:none; min-height:100vh; min-height:100svh; min-height:100dvh; }
    #applyMintForm .terms-overlay[hidden]{ display:none; }
    #applyMintForm .terms-sheet{ width:min(820px,90vw); max-height:min(82vh,840px); max-height:min(82dvh,840px); background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); display:grid; grid-template-rows:auto 1fr auto; overflow:hidden; animation:termsPop .24s ease-out; }
    #applyMintForm .terms-header{ display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-bottom:1px solid var(--line); }
    #applyMintForm .terms-title{ margin:0; font-size:1.1rem; font-weight:900; color:var(--ink); }
    #applyMintForm .terms-close-x{ border:none; background:transparent; font-size:20px; cursor:pointer; line-height:1; padding:6px; border-radius:8px; }
    #applyMintForm .terms-close-x:hover{ background:var(--bg); }
    #applyMintForm .terms-body{ padding:16px 18px; overflow:auto; -webkit-overflow-scrolling:touch; line-height:1.65; color:var(--muted); }
    #applyMintForm .terms-body h4{ margin:14px 0 8px; font-size:1rem; font-weight:800; color:var(--ink); }
    #applyMintForm .terms-body ul{ padding-left:18px; margin:6px 0 12px; }
    #applyMintForm .terms-footer{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; border-top:1px solid var(--line); background:#fff; }
    #applyMintForm .terms-link{ margin-left:8px; border:none; background:transparent; color:var(--brand); font-weight:800; cursor:pointer; text-decoration:underline; text-underline-offset:2px; }
    #applyMintForm .terms-link:focus{ outline:none; box-shadow:0 0 0 3px rgba(19,181,163,.3); border-radius:6px; }
    #applyMintForm .agree-mini{ display:flex; align-items:flex-start; gap:8px; font-size:.92rem; color:var(--muted); }

    @keyframes termsPop{ from{ transform:scale(.98); opacity:.0 } to{ transform:scale(1); opacity:1 } }

    @media (max-width:420px){
      #applyMintForm .terms-overlay{ padding:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)); align-items:flex-end; }
      #applyMintForm .terms-sheet{ width:100%; border-radius:16px 16px 0 0; max-height:calc(100dvh - max(10px, env(safe-area-inset-bottom)) - 10px); animation:sheetSlideUp .28s cubic-bezier(.2,.7,.2,1); }
      #applyMintForm .terms-header{ padding:12px 14px; position:relative; }
      #applyMintForm .terms-header::before{ content:""; position:absolute; top:6px; left:50%; transform:translateX(-50%); width:44px; height:4px; border-radius:999px; background:#e5e7eb; }
      #applyMintForm .terms-title{ font-size:1rem; }
      #applyMintForm .terms-body{ padding:12px 14px; font-size:.95rem; }
      #applyMintForm .terms-footer{ padding:12px 14px; gap:10px; }
      #applyMintForm .terms-footer .btn{ min-height:44px; }
    }
    @keyframes sheetSlideUp{ from{ transform:translateY(12px); opacity:.0 } to{ transform:translateY(0); opacity:1 } }

    @media (max-width:370px){
      #applyMintForm .terms-title{ font-size:.98rem; }
      #applyMintForm .terms-body{ padding:10px 12px; font-size:.94rem; }
      #applyMintForm .terms-footer{ flex-direction:column; align-items:stretch; gap:8px; }
      #applyMintForm .terms-footer .btn{ width:100%; }
      #applyMintForm .agree-mini{ font-size:.9rem; }
    }

    @media (prefers-reduced-motion:reduce){
      #applyMintForm .terms-sheet{ animation:none; }
    }


       /* ===== Scope: #kakaoFloating only ===== */
    #kakaoFloating{
      --kakao:#ffeb3a;           /* 카카오 옐로우 */
      --bubble:#3B1E1E;          /* 카카오 브라운 (SVG 사용 시 아이콘 색) */
      --shadow:0 10px 22px rgba(0,0,0,.22), 0 2px 6px rgba(0,0,0,.12);
      --ring:rgba(254,229,0,.45);
      position:fixed; inset:auto;
      right:clamp(12px,2vw,20px);
      bottom:calc(clamp(12px,2.5vw,20px) + env(safe-area-inset-bottom, 0px));
      z-index:9999;
      -webkit-tap-highlight-color:transparent;
      isolation:isolate;
      font-family:Pretendard, "Noto Sans KR", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
    }

    /* 버튼 */
    #kakaoFloating .fab{
      width:60px; height:60px; border-radius:50%;
      background:var(--kakao);
      box-shadow:var(--shadow);
      display:grid; place-items:center;
      text-decoration:none;
      position:relative;
      overflow:visible;
      outline:none;
      transition:transform .18s ease, box-shadow .18s ease;
    }
    #kakaoFloating .fab:hover{ transform:translateY(-2px); }
    #kakaoFloating .fab:active{ transform:translateY(0); }
    #kakaoFloating .fab:focus-visible{
      box-shadow:0 0 0 4px rgba(17,24,39,.3), var(--shadow);
    }

    /* 접근성용 숨김 텍스트 */
    #kakaoFloating .sr-only{
      position:absolute; width:1px; height:1px; padding:0; margin:-1px;
      overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
    }

    /* 아이콘 공통 (SVG/IMG 모두 적용) */
    #kakaoFloating .ico{
      width:34px; height:34px; display:block;
      object-fit:contain;
    }
    /* SVG를 사용할 때는 currentColor로 제어 */
    #kakaoFloating svg.ico{ color:var(--bubble); }
    /* IMG를 사용할 때는 원본 색을 유지 (필요하면 filter로 조정 가능) */
    #kakaoFloating img.ico{ image-rendering:auto; }

    /* 라벨 (호버 시) */
    #kakaoFloating .label{
      position:absolute; right:72px; bottom:50%;
      transform:translateY(50%);
      background:#111827; color:#fff; font-size:13px; font-weight:800;
      padding:8px 10px; border-radius:10px; white-space:nowrap;
      box-shadow:0 8px 18px rgba(0,0,0,.25);
      opacity:0; pointer-events:none; transition:opacity .18s ease, transform .18s ease;
    }
    #kakaoFloating .label::after{
      content:""; position:absolute; right:-6px; top:50%; transform:translateY(-50%) rotate(45deg);
      width:12px; height:12px; background:#111827; border-radius:2px;
    }
    #kakaoFloating .fab:hover + .label,
    #kakaoFloating .fab:focus + .label{
      opacity:1; transform:translateY(50%) translateX(-2px);
    }

    /* 펄스 링 */
    #kakaoFloating .fab::after{
      content:""; position:absolute; inset:0; border-radius:inherit;
      box-shadow:0 0 0 0 var(--ring);
      animation:kakaoPulse 1.8s ease-out infinite;
    }
    @keyframes kakaoPulse{
      0%{ box-shadow:0 0 0 0 var(--ring); }
      70%{ box-shadow:0 0 0 16px rgba(254,229,0,0); }
      100%{ box-shadow:0 0 0 0 rgba(254,229,0,0); }
    }

    /* 모션 최소화 환경 배려 */
    @media (prefers-reduced-motion: reduce){
      #kakaoFloating .fab{ transition:none; }
      #kakaoFloating .fab::after{ animation:none; }
      #kakaoFloating .label{ transition:none; }
    }

    /* 작은 화면 라벨 숨김(터치 환경) */
    @media (max-width:640px){
      #kakaoFloating .label{ display:none; }
    }

     /* ===== Scope: #siteFooter only ===== */
    #siteFooter{
      --bg:#0f172a;        /* 다크 배경 */
      --panel:#0b1323;     /* 더 어두운 패널 */
      --ink:#e5e7eb;       /* 본문 글자 */
      --muted:#94a3b8;     /* 보조 글자 */
      --line:#1f2937;      /* 경계선 */
      --brand:#13b5a3;     /* 포인트 민트(절제) */
      --accent:#11a292;
      --radius:14px;
      font-family:Pretendard, "Noto Sans KR", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
      background:var(--bg);
      color:var(--ink);
      border-top:1px solid #0b1220;
      position:relative;
      z-index:0;
    }
    #siteFooter .wrap{
      max-width:1200px; margin:0 auto; padding:28px 16px 22px;
      display:flex; flex-direction:column; gap:22px;
    }

    /* 상단: 로고 + 약관 링크 */
    #siteFooter .head{
      display:flex; align-items:center; justify-content:space-between; gap:16px;
      border-bottom:1px solid var(--line); padding-bottom:14px;
    }
    #siteFooter .brand{
      display:flex; align-items:center; gap:10px; min-height:32px;
    }
    #siteFooter .brand .logo{
      width:auto; height:26px; display:block; object-fit:contain;
      filter:drop-shadow(0 0 0 rgba(0,0,0,0)); /* 크로스브라우저 안정 */
    }
    #siteFooter .policy{
      display:flex; align-items:center; gap:12px; flex-wrap:wrap; font-weight:700;
    }
    #siteFooter .policy a{
      color:var(--ink); text-decoration:none; opacity:.9;
    }
    #siteFooter .policy a:hover{ color:#fff; opacity:1; text-decoration:underline; text-underline-offset:2px; }
    #siteFooter .bar{ opacity:.35; }

    /* 회사 정보 블록 */
    #siteFooter .corp{
      display:flex; flex-direction:column; gap:8px; line-height:1.7;
    }
    #siteFooter .corp .ko-name{
      font-weight:900; color:#fff; letter-spacing:-.01em; margin-top:6px;
    }
    #siteFooter .row{
      color:var(--muted); font-weight:700;
    }
    #siteFooter .row b{ color:#cbd5e1; font-weight:800; }
    #siteFooter address{
      font-style:normal; color:var(--muted); font-weight:700;
    }

    /* 하단 바: 카피라이트 + 바로가기 */
    #siteFooter .legal{
      display:flex; align-items:center; justify-content:space-between; gap:12px;
      color:#8aa1b6; font-size:.92rem; border-top:1px solid var(--line);
      padding-top:12px; margin-top:6px;
      flex-wrap:wrap;
    }
    #siteFooter .legal .links{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
    #siteFooter .legal a{ color:var(--brand); font-weight:800; text-decoration:none; }
    #siteFooter .legal a:hover{ color:#17c8b3; text-decoration:underline; text-underline-offset:2px; }

    /* 맨 위로 버튼 (푸터 내부 좌하단 고정 느낌) */
    #siteFooter .toTop{
      position:fixed; left:12px; bottom:12px; z-index:50;
      width:44px; height:44px; border-radius:12px; border:1px solid #263343;
      background:linear-gradient(180deg, #0f1a2a 0%, #0b1323 100%);
      box-shadow:0 8px 18px rgba(0,0,0,.35);
      display:grid; place-items:center; cursor:pointer;
      transition:transform .18s ease, box-shadow .18s ease, opacity .2s ease;
      opacity:.95;
    }
    #siteFooter .toTop:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(0,0,0,.45); }
    #siteFooter .toTop:active{ transform:translateY(0); }
    #siteFooter .toTop img{ width:18px; height:18px; display:block; object-fit:contain; }

    /* 반응형 */
    @media (max-width:640px){
      #siteFooter .head{ flex-direction:column; align-items:flex-start; gap:10px; }
      #siteFooter .policy{ gap:10px; }
    }

    /* 모션 최소화 환경 */
    @media (prefers-reduced-motion:reduce){
      #siteFooter .toTop{ transition:none; }
    }