/* ============================================================
   theme/45 — AIMOTION (원본: AI 동작분석 스포츠 플랫폼) 개별 흡수
   브랜드: #2563EB / #3B82F6 / 네이비 #0C1A3D
   본문은 Tailwind utility 중심, 본 CSS는 보조(레이아웃/배경/아이콘 정렬).
   ============================================================ */

:root{
  --brand:#2563EB; --brand2:#3B82F6; --sky:#60A5FA;
  --ink:#0C1A3D; --ink2:#14306B;
  --hero:url("https://images.unsplash.com/photo-1517649763962-0c623066013b?auto=format&fit=crop&w=1800&q=80");
  --about:url("https://images.unsplash.com/photo-1599058917212-d750089bc07e?auto=format&fit=crop&w=1200&q=80");
  --comp:url("https://images.unsplash.com/photo-1526506118085-60ce8714f8c5?auto=format&fit=crop&w=1600&q=80");
}

html{font-family:'Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;overflow-x:hidden;scroll-behavior:smooth;}
body{word-break:keep-all;overflow-x:hidden;}

/* 컨테이너 */
.theme-area{max-width:80rem;margin:0 auto;padding-left:1.25rem;padding-right:1.25rem;}
@media (min-width:1024px){.theme-area{padding-left:2rem;padding-right:2rem;}}

/* ── 아이콘 정렬 고정 (밀림 방지) ───────────────────────── */
.ico{width:1.25rem;height:1.25rem;display:inline-block;vertical-align:middle;stroke-width:2;flex:none;}
.ico-sm{width:1rem;height:1rem;}
[class^="fa-"],[class*=" fa-"]{display:inline-block;line-height:1;vertical-align:middle;}

/* ── 공통 컴포넌트 ──────────────────────────────────────── */
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-weight:900;font-size:.8rem;letter-spacing:.2em;color:var(--brand);}
.text-grad{background:linear-gradient(100deg,#7dd3fc,#3b82f6 60%,#a5b4fc);-webkit-background-clip:text;background-clip:text;color:transparent;}

.btn-primary{display:inline-flex;align-items:center;gap:.5rem;height:3.25rem;padding:0 1.6rem;border-radius:999rem;background:var(--brand);color:#fff;font-weight:900;font-size:.95rem;box-shadow:0 .7rem 1.6rem rgba(37,99,235,.32);transition:.22s ease;}
.btn-primary:hover{background:var(--brand2);transform:translateY(-2px);box-shadow:0 1rem 2rem rgba(37,99,235,.42);}
.btn-primary:active{transform:translateY(0);}
.btn-primary.btn-dark{background:var(--ink);box-shadow:0 .7rem 1.6rem rgba(12,26,61,.28);}
.btn-primary.btn-dark:hover{background:var(--ink2);}
.btn-ghost{display:inline-flex;align-items:center;gap:.5rem;height:3.25rem;padding:0 1.6rem;border-radius:999rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.32);color:#fff;font-weight:900;font-size:.95rem;transition:.22s ease;}
.btn-ghost:hover{background:rgba(255,255,255,.2);gap:.7rem;}
.btn-light{align-items:center;gap:.5rem;height:3.25rem;padding:0 1.6rem;border-radius:999rem;background:#fff;color:var(--ink);font-weight:900;font-size:.95rem;display:inline-flex;transition:.22s ease;box-shadow:0 .6rem 1.4rem rgba(0,0,0,.18);}
.btn-light:hover{transform:translateY(-2px);gap:.7rem;color:var(--brand);}

/* 헤더 */
#siteHeader.scrolled{box-shadow:0 .4rem 1.4rem rgba(15,23,42,.08);}
.brand-mark{width:2.3rem;height:2.3rem;border-radius:.8rem;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;display:grid;place-items:center;box-shadow:0 .4rem 1rem rgba(37,99,235,.4);}
.brand-mark .ico{width:1.3rem;height:1.3rem;}
.nav-link{position:relative;padding:.35rem 0;transition:color .2s;}
.nav-link::after{content:"";position:absolute;left:0;bottom:-.1rem;width:0;height:2px;background:var(--brand);transition:width .25s;}
.nav-link:hover{color:var(--brand);}
.nav-link:hover::after{width:100%;}

/* ── HERO ───────────────────────────────────────────────── */
.hero{background:var(--ink);}
.hero-bg{position:absolute;inset:0;background-image:var(--hero);background-size:cover;background-position:center 30%;opacity:.45;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(8,17,33,.94) 0%,rgba(12,26,61,.82) 42%,rgba(20,48,107,.55) 100%);}
.hero-grid-fx{position:absolute;inset:0;background-image:linear-gradient(rgba(96,165,250,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(96,165,250,.08) 1px,transparent 1px);background-size:3rem 3rem;mask-image:radial-gradient(circle at 70% 40%,#000,transparent 75%);}
.hero-chip{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(.6rem);border-radius:1.1rem;padding:1.1rem 1.15rem;display:flex;flex-direction:column;gap:.15rem;transition:.22s ease;}
.hero-chip:hover{background:rgba(255,255,255,.14);transform:translateY(-3px);}
.hero-chip-ico{width:2.4rem;height:2.4rem;border-radius:.7rem;background:rgba(96,165,250,.18);color:var(--sky);display:grid;place-items:center;margin-bottom:.5rem;font-size:1.1rem;}
.hero-chip-ico .ico{width:1.3rem;height:1.3rem;}
.hero-chip b{font-size:1.35rem;font-weight:900;color:#fff;line-height:1.1;letter-spacing:-.02em;}
.hero-chip small{font-size:.78rem;color:rgba(255,255,255,.62);font-weight:600;}

/* ── STATS BAND ─────────────────────────────────────────── */
.stat-num{display:block;font-size:1.9rem;font-weight:900;color:var(--brand);letter-spacing:-.03em;line-height:1.1;}
@media (min-width:768px){.stat-num{font-size:2.5rem;}}
.stat-label{display:block;margin-top:.4rem;font-size:.85rem;font-weight:700;color:#64748b;}

/* ── ABOUT ──────────────────────────────────────────────── */
.about-mini{border-radius:1rem;background:#f8fafc;border:1px solid rgba(15,23,42,.06);padding:1rem 1.1rem;}
.about-mini b{display:block;font-size:1.3rem;font-weight:900;color:var(--ink);line-height:1.1;}
.about-mini span{display:block;margin-top:.25rem;font-size:.8rem;font-weight:600;color:#64748b;}
.about-photo{aspect-ratio:4/4.4;border-radius:1.75rem;background-image:var(--about);background-size:cover;background-position:center;box-shadow:0 1.5rem 3.5rem rgba(15,23,42,.18);}
.about-badge{position:absolute;left:-.8rem;bottom:1.4rem;display:flex;align-items:center;gap:.8rem;background:#fff;border-radius:1.1rem;padding:.9rem 1.1rem;box-shadow:0 1rem 2.5rem rgba(15,23,42,.16);}
.about-badge-ico{width:2.6rem;height:2.6rem;border-radius:.8rem;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;display:grid;place-items:center;}

/* TECH 다크 섹션 */
.tech-dark{position:relative;background:radial-gradient(120% 90% at 80% 0%,#14306B 0%,#0C1A3D 55%,#080F21 100%);}
.tech-dark::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(96,165,250,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(96,165,250,.05) 1px,transparent 1px);background-size:3rem 3rem;mask-image:radial-gradient(circle at 50% 0%,#000,transparent 70%);}

/* ── TECH 6단계 플로우 ──────────────────────────────────── */
.step-flow{display:flex;align-items:stretch;gap:.5rem;flex-wrap:wrap;justify-content:center;}
.step-card{flex:1 1 0;min-width:8.5rem;background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:1.1rem;padding:1.2rem .8rem;text-align:center;box-shadow:0 .5rem 1.4rem rgba(15,23,42,.05);transition:.22s ease;}
.step-card:hover{transform:translateY(-4px);border-color:rgba(37,99,235,.4);box-shadow:0 .9rem 2rem rgba(37,99,235,.14);}
.step-no{display:block;font-size:.66rem;font-weight:900;letter-spacing:.12em;color:var(--brand);}
.step-ico{width:3rem;height:3rem;margin:.6rem auto .5rem;border-radius:.9rem;background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(59,130,246,.12));color:var(--brand);display:grid;place-items:center;}
.step-ico .ico{width:1.5rem;height:1.5rem;}
.step-card b{font-size:1rem;font-weight:900;color:var(--ink);}
.step-arrow{color:#cbd5e1;font-size:1.1rem;align-self:center;}
@media (max-width:767px){.step-arrow{display:none;}.step-card{flex:1 1 40%;}}

/* TECH 카드 */
.tech-card{background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:1.5rem;padding:2rem 1.75rem;box-shadow:0 1rem 2.6rem rgba(15,23,42,.06);transition:.25s ease;}
.tech-card:hover{transform:translateY(-5px);box-shadow:0 1.5rem 3rem rgba(37,99,235,.12);}
.tech-ico{width:3.4rem;height:3.4rem;border-radius:1rem;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;display:grid;place-items:center;margin-bottom:1.3rem;box-shadow:0 .6rem 1.4rem rgba(37,99,235,.32);}
.tech-ico .ico{width:1.6rem;height:1.6rem;}
.tech-card h3{font-size:1.4rem;font-weight:900;letter-spacing:-.03em;color:var(--ink);}
.tech-card ul{margin-top:1.1rem;display:grid;gap:.7rem;}
.tech-card li{display:flex;align-items:flex-start;gap:.6rem;font-size:.92rem;font-weight:600;color:#475569;line-height:1.45;}
.tech-card li i{color:var(--brand);font-size:.78rem;margin-top:.28rem;}

/* ── PLATFORM 카드 ──────────────────────────────────────── */
.platform-card{background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:1.3rem;padding:1.6rem 1.4rem;transition:.25s ease;position:relative;overflow:hidden;}
.platform-card::before{content:"";position:absolute;inset:0 0 auto 0;height:.28rem;background:linear-gradient(90deg,var(--brand),var(--brand2));transform:scaleX(0);transform-origin:left;transition:transform .28s;}
.platform-card:hover{transform:translateY(-5px);box-shadow:0 1.2rem 2.6rem rgba(15,23,42,.12);}
.platform-card:hover::before{transform:scaleX(1);}
.platform-ico{width:3rem;height:3rem;border-radius:.9rem;background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(59,130,246,.12));color:var(--brand);display:grid;place-items:center;font-size:1.25rem;margin-bottom:1rem;}
.platform-ico .ico{width:1.5rem;height:1.5rem;}
.platform-card h3{font-size:1.2rem;font-weight:900;letter-spacing:-.03em;color:var(--ink);}
.platform-card p{margin-top:.45rem;font-size:.86rem;font-weight:600;color:#64748b;line-height:1.5;}

/* ── COMPETITION ────────────────────────────────────────── */
.comp{background:var(--ink);}
.comp-bg{position:absolute;inset:0;background-image:var(--comp);background-size:cover;background-position:center;opacity:.32;}
.comp-overlay{position:absolute;inset:0;background:linear-gradient(115deg,rgba(8,17,33,.95),rgba(20,48,107,.7));}
.comp-feat{display:flex;align-items:center;gap:.7rem;font-size:.95rem;font-weight:600;color:rgba(255,255,255,.88);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:.8rem;padding:.8rem 1rem;}
.comp-stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:1.1rem;padding:1.3rem 1.2rem;backdrop-filter:blur(.5rem);}
.comp-stat b{display:block;font-size:1.8rem;font-weight:900;color:#fff;letter-spacing:-.03em;line-height:1.1;}
.comp-stat b small{font-size:1rem;color:var(--sky);}
.comp-stat span{display:block;margin-top:.3rem;font-size:.82rem;font-weight:600;color:rgba(255,255,255,.6);}

/* ── NETWORK ────────────────────────────────────────────── */
.net-col{background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:1.3rem;padding:1.6rem 1.5rem;box-shadow:0 .8rem 2rem rgba(15,23,42,.05);transition:.22s ease;}
.net-col:hover{transform:translateY(-4px);box-shadow:0 1.2rem 2.6rem rgba(15,23,42,.1);}
.net-head{display:flex;align-items:center;gap:.6rem;font-size:1.15rem;font-weight:900;color:var(--ink);letter-spacing:-.02em;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid #eef2f7;}
.net-ico{width:2.4rem;height:2.4rem;border-radius:.7rem;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;display:grid;place-items:center;font-size:1rem;}
.net-ico .ico{width:1.25rem;height:1.25rem;}
.net-col ul{display:grid;gap:.7rem;}
.net-col li{display:flex;align-items:center;gap:.55rem;font-size:.9rem;font-weight:600;color:#475569;}
.net-col li::before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--brand2);flex:none;}

/* ── REVENUE ────────────────────────────────────────────── */
.rev-band{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(15,23,42,.07);border:1px solid rgba(15,23,42,.07);border-radius:1.3rem;overflow:hidden;}
@media (min-width:768px){.rev-band{grid-template-columns:repeat(5,minmax(0,1fr));}}
.rev-band-item{background:#fff;padding:1.5rem 1rem;text-align:center;}
.rev-band-item b{display:block;font-size:1.7rem;font-weight:900;color:var(--brand);letter-spacing:-.03em;}
.rev-band-item span{display:block;margin-top:.3rem;font-size:.82rem;font-weight:700;color:#64748b;}
.rev-card{background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:1.4rem;padding:1.9rem 1.7rem;box-shadow:0 1rem 2.6rem rgba(15,23,42,.06);transition:.25s ease;}
.rev-card:hover{transform:translateY(-5px);box-shadow:0 1.4rem 3rem rgba(37,99,235,.12);}
.rev-ico{width:3.3rem;height:3.3rem;border-radius:1rem;background:linear-gradient(135deg,var(--ink),var(--ink2));color:#fff;display:grid;place-items:center;font-size:1.3rem;margin-bottom:1.2rem;}
.rev-ico .ico{width:1.55rem;height:1.55rem;}
.rev-card h3{font-size:1.3rem;font-weight:900;letter-spacing:-.03em;color:var(--ink);}
.rev-card p{margin-top:.7rem;font-size:.92rem;font-weight:500;color:#64748b;line-height:1.65;}
.rev-tag{display:inline-block;margin-top:1.1rem;font-size:.8rem;font-weight:800;color:var(--brand);background:rgba(37,99,235,.08);border-radius:999rem;padding:.4rem .9rem;}
.rev-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;}
@media (min-width:768px){.rev-summary{grid-template-columns:repeat(4,minmax(0,1fr));}}
.rev-summary div{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-radius:1.2rem;padding:1.5rem 1.2rem;text-align:center;box-shadow:0 .9rem 2rem rgba(37,99,235,.28);}
.rev-summary b{display:block;font-size:1.8rem;font-weight:900;letter-spacing:-.03em;}
.rev-summary span{display:block;margin-top:.3rem;font-size:.82rem;font-weight:600;opacity:.85;}

/* ── CTA ────────────────────────────────────────────────── */
.cta-band{background:linear-gradient(120deg,var(--brand) 0%,var(--brand2) 55%,var(--sky) 120%);position:relative;}
.cta-ico{width:4.5rem;height:4.5rem;border-radius:1.4rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#fff;display:inline-grid;place-items:center;font-size:1.8rem;}

/* ── FOOTER ─────────────────────────────────────────────── */
.footer-h{display:block;color:#fff;font-weight:900;font-size:1rem;letter-spacing:-.02em;}
.footer-link{color:rgba(255,255,255,.6);transition:color .2s;}
.footer-link:hover{color:#fff;}
.sns-btn{width:2.4rem;height:2.4rem;border-radius:.7rem;background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);display:grid;place-items:center;transition:.2s;}
.sns-btn:hover{background:var(--brand);color:#fff;}
.footer-select{width:100%;height:3rem;border-radius:.8rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff;padding:0 1rem;font-weight:700;font-size:.88rem;cursor:pointer;outline:none;}
.footer-select option{color:#0f172a;}
.footer-select:focus{border-color:var(--sky);}

/* ── MOBILE DRAWER ──────────────────────────────────────── */
#mobileDrawer.open{display:block;}
.drawer-panel{transform:translateX(100%);transition:transform .26s ease;}
#mobileDrawer.open .drawer-panel{transform:translateX(0);}
.drawer-link{padding:.95rem .25rem;border-bottom:1px solid #f1f5f9;transition:color .2s;}
.drawer-link:hover{color:var(--brand);}
.drawer-cta{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:3.1rem;border-radius:999rem;background:var(--brand);color:#fff;font-weight:900;transition:background .2s;}
.drawer-cta:hover{background:var(--brand2);}

/* ── POPUP ──────────────────────────────────────────────── */
.popup-wrap{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:rgba(8,17,33,.55);padding:1rem;}
.popup-wrap.hidden{display:none;}
.popup-card{position:relative;width:min(92vw,24rem);border-radius:1.5rem;background:#fff;overflow:hidden;box-shadow:0 2rem 5rem rgba(8,17,33,.4);animation:popIn .3s ease;}
@keyframes popIn{from{opacity:0;transform:translateY(1rem) scale(.97);}to{opacity:1;transform:none;}}
.popup-close{position:absolute;right:.8rem;top:.8rem;z-index:2;width:2.4rem;height:2.4rem;border-radius:999rem;background:rgba(255,255,255,.85);color:#0f172a;display:grid;place-items:center;backdrop-filter:blur(.3rem);}
.popup-thumb{height:9rem;background-image:var(--comp);background-size:cover;background-position:center;position:relative;}
.popup-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,26,61,.2),rgba(12,26,61,.7));}
.popup-badge{position:absolute;left:1rem;bottom:.9rem;z-index:1;display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:900;letter-spacing:.06em;color:#fff;background:var(--brand);border-radius:999rem;padding:.35rem .8rem;}
.popup-body{padding:1.4rem 1.5rem 0;}
.popup-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:900;color:var(--brand);transition:gap .2s;}
.popup-link:hover{gap:.7rem;}
.popup-foot{margin-top:1.4rem;display:grid;grid-template-columns:1fr auto;border-top:1px solid #f1f5f9;}
.popup-today{padding:1rem;font-size:.85rem;font-weight:700;color:#94a3b8;text-align:left;transition:color .2s;}
.popup-today:hover{color:#475569;}
.popup-foot .popup-ok{padding:1rem 1.5rem;font-size:.9rem;font-weight:900;color:var(--brand);}

/* ── TOP BUTTON ─────────────────────────────────────────── */
#topBtn.show{opacity:1;visibility:visible;}
#topBtn:hover{background:var(--brand2);}

/* ── AOS 폴백(미발동 시 표시 보장) ──────────────────────── */
.aos-init-fallback [data-aos]{opacity:1!important;transform:none!important;}

/* ── 반응형 보정 ────────────────────────────────────────── */
@media (max-width:479px){
  .hero-chip b{font-size:1.15rem;}
  .stat-num{font-size:1.6rem;}
  .rev-band-item b,.rev-summary b{font-size:1.45rem;}
  .comp-stat b{font-size:1.5rem;}
}
@media (max-width:319px){
  .theme-area{padding-left:.85rem;padding-right:.85rem;}
  .hero-chip{padding:.85rem .8rem;}
}
