:root{--surface:#121110;--surface-container-lowest:#0c0b0a;--surface-container:#1c1a18;--on-surface:#edece8;--on-surface-variant:#cfccc4;--outline-variant:#4a463f;--primary:#ff8a4a;--on-primary:#2b1204;--secondary-container:#d8d5cd;--tertiary:#d8d5cd;--ease:cubic-bezier(.22,.61,.36,1);--wrap:min(1200px,calc(100vw - 96px))}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Plus Jakarta Sans","Noto Sans KR",system-ui,sans-serif;background:radial-gradient(circle at 18% 0%,rgba(255,110,40,.07),transparent 36%),var(--surface);color:var(--on-surface);word-break:keep-all;letter-spacing:-.018em;line-height:1.6}
a{text-decoration:none;color:inherit}
.wrap{width:var(--wrap);margin:0 auto}
.nav{height:68px;background:rgba(12,11,10,.72);backdrop-filter:blur(22px);border-bottom:1px solid rgba(74,70,63,.42);position:sticky;top:0;z-index:100}
.nav-inner{width:var(--wrap);height:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{font-size:19px;font-weight:800;letter-spacing:-.04em}
.nav-links{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:700}
.nav-links a{color:var(--on-surface-variant)}.nav-links a:hover,.nav-links a.active{color:var(--primary)}
.nav-cta{padding:9px 16px;border-radius:8px;background:var(--primary);color:var(--on-primary)!important}

/* === 복원 규칙 (미디어쿼리보다 앞에 위치해야 반응형이 정상 동작) === */
/* === about 누락 규칙 복원 (v18) === */
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
.timeline{position:relative;margin-top:8px;padding-left:28px}
.op-box{padding:10px 0 34px;margin-bottom:36px}
.fn{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:22px;position:relative;z-index:1}
.cov-field{position:relative;height:720px;margin-top:-8px}

/* === v20: partners/resources/faq 누락 규칙 복원 === */
/* partners */
.r-sec{padding:96px 0;border-top:1px solid rgba(74,70,63,.28)}
.pv{display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;border-top:1px solid rgba(74,70,63,.4);border-bottom:1px solid rgba(74,70,63,.4)}
.marquee{overflow:hidden;position:relative;margin-top:44px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
/* resources */
.res-search{position:relative;max-width:640px;margin:0 0 22px}
.case-list{max-width:900px}
/* faq */
.faq-search{position:relative;max-width:640px;margin:0 0 44px}
.faq-list{display:flex;flex-direction:column;gap:14px;max-width:900px}

@media(max-width:900px){.nav-links{display:none}}
.btn{display:inline-flex;align-items:center;height:48px;padding:0 24px;border-radius:9px;font-size:15px;font-weight:800;transition:.25s var(--ease)}
.btn.primary{background:var(--primary);color:var(--on-primary)}.btn.primary:hover{transform:translateY(-2px);box-shadow:none}
.btn.secondary{border:1px solid rgba(150,146,136,.4);color:var(--on-surface)}.btn.secondary:hover{border-color:var(--primary);color:var(--primary)}
.page-hero{padding:84px 0 40px}
.eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.06em;color:var(--primary);padding:7px 14px;border:1px solid rgba(255,138,74,.3);border-radius:999px;margin-bottom:24px}
.page-hero h1{font-size:clamp(32px,5vw,56px);line-height:1.12;letter-spacing:-.05em;margin-bottom:22px}
.page-hero p{max-width:700px;color:rgba(207,204,196,.78);font-size:18px;line-height:1.75;margin-bottom:30px}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.sol{padding:72px 0;border-top:1px solid rgba(74,70,63,.28);background:var(--surface)}
.sol .num{font-size:14px;font-weight:800;color:var(--secondary-container);letter-spacing:.06em;margin-bottom:14px}
.sol h2{font-size:clamp(24px,3.4vw,36px);line-height:1.28;letter-spacing:-.04em;margin-bottom:18px}
.sol .lead{max-width:760px;color:rgba(207,204,196,.75);font-size:17px;line-height:1.75;margin-bottom:36px}
.subhead{font-size:15px;font-weight:800;color:var(--on-surface);letter-spacing:-.02em;margin:36px 0 16px;display:flex;align-items:center;gap:8px}
.subhead::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary)}
.icon-badge{width:46px;height:46px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,138,74,.12);color:var(--primary);margin-bottom:16px}
.icon-badge svg{width:24px;height:24px}
.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}
.card{border:1px solid rgba(150,146,136,.2);border-radius:18px;padding:26px;background:rgba(28,26,24,.5);transition:.3s var(--ease)}
.card:hover{border-color:rgba(255,138,74,.45);transform:translateY(-5px);box-shadow:0 16px 40px -30px rgba(255,138,74,.5)}
.card h3{font-size:18px;line-height:1.35;letter-spacing:-.03em;margin-bottom:10px}
.card p{font-size:14.5px;line-height:1.7;color:rgba(207,204,196,.72)}
/* segment columns */
.seg-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.seg-col{border:1px solid rgba(150,146,136,.2);border-radius:16px;padding:24px;background:rgba(28,26,24,.5);transition:.3s var(--ease)}
.seg-col:hover{border-color:rgba(255,138,74,.45);transform:translateY(-5px);box-shadow:0 16px 40px -30px rgba(255,138,74,.5)}
.seg-col .si{width:40px;height:40px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,138,74,.12);color:var(--primary);margin-bottom:14px}
.seg-col .si svg{width:22px;height:22px}
.seg-col h4{font-size:17px;margin-bottom:4px}
.seg-col .sub{font-size:13px;color:rgba(207,204,196,.6);margin-bottom:14px}
.seg-tags{display:flex;flex-wrap:wrap;gap:8px}
.seg-tag{font-size:12.5px;font-weight:600;padding:6px 11px;border-radius:999px;background:rgba(255,138,74,.09);color:var(--on-surface-variant);border:1px solid rgba(150,146,136,.2)}
.stat-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.stat{flex:1;min-width:130px;border:1px solid rgba(150,146,136,.2);border-radius:14px;padding:16px;background:rgba(28,26,24,.4)}
.stat b{display:block;font-size:24px;color:var(--primary);letter-spacing:-.03em}
.stat span{font-size:12.5px;color:rgba(207,204,196,.7)}
.more-link{display:inline-flex;align-items:center;gap:8px;margin-top:34px;font-size:15px;font-weight:800;color:var(--primary);transition:.25s var(--ease)}
.more-link:hover{gap:12px;text-decoration:underline}
.src-note{margin-top:18px;font-size:12.5px;color:var(--on-surface-variant);opacity:.75}
/* 도판 이미지 (소개서·세미나 원본) */
.fig-img{display:block;width:100%;height:auto;border-radius:16px;border:1px solid rgba(150,146,136,.22)}
.fig-img.light{background:#fdfaf5;padding:0}
.fig-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
@media(max-width:860px){.fig-duo{grid-template-columns:1fr}}
.case-link{display:block}
.case-link .tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--secondary-container);border:1px solid rgba(216,213,205,.35);border-radius:999px;padding:5px 12px;margin-bottom:14px}
.case-link h3{margin-bottom:10px}
.case-link .go{display:inline-block;margin-top:14px;font-size:14px;font-weight:800;color:var(--primary)}
.case-link:hover .go{text-decoration:underline}
.alt{background:var(--surface-container-lowest)}
/* cross-device infographic */
.xdev-fig{margin:8px 0 26px;border:none;border-radius:20px;background:transparent;padding:22px 6px 6px}
.xdev-fig:hover{}
.xdev-fig svg{display:block;width:100%;height:auto;max-width:860px;margin:0 auto}
.xdev-fig figcaption{margin-top:12px;text-align:center;font-size:13px;color:rgba(207,204,196,.6)}
/* cross-device diagram (HTML/CSS) */
.xd{position:relative;max-width:840px;margin:8px auto 4px;padding:86px 8px}
.xd-row{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1.15fr auto 1fr;gap:10px;align-items:stretch}
.xd-node{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:28px 16px 22px;border-radius:22px;background:rgba(28,26,24,.55);border:1px solid rgba(150,146,136,.2)}
.xd-tv{box-shadow:inset 0 0 0 1px rgba(255,138,74,.14)}
.xd-mobile{box-shadow:inset 0 0 0 1px rgba(216,213,205,.14)}
.xd-node-label{font-size:15.5px;font-weight:800;letter-spacing:-.02em}
.xd-node-sub{font-size:12px;color:rgba(207,204,196,.6);margin-top:-10px}
/* TV monitor */
.xd-tv-screen{position:relative;width:136px;height:86px;border-radius:10px;background:linear-gradient(152deg,rgba(255,138,74,.24),rgba(255,138,74,.04));border:2px solid rgba(255,138,74,.55);margin-bottom:14px}
.xd-tv-screen::after{content:"";position:absolute;left:50%;bottom:-14px;transform:translateX(-50%);width:48px;height:6px;border-radius:3px;background:rgba(255,138,74,.55);box-shadow:0 -5px 0 -1px rgba(255,138,74,.6)}
/* phone */
.xd-phone{position:relative;width:62px;height:112px;border-radius:16px;background:linear-gradient(160deg,rgba(216,213,205,.2),rgba(216,213,205,.03));border:2px solid rgba(216,213,205,.55)}
.xd-phone::before{content:"";position:absolute;top:9px;left:50%;transform:translateX(-50%);width:22px;height:4px;border-radius:2px;background:rgba(216,213,205,.65)}
/* center hub */
.xd-hub{display:flex;align-items:center;justify-content:center}
.xd-hub-inner{text-align:center;padding:26px 22px;border-radius:24px;background:radial-gradient(circle at 50% -10%,rgba(255,138,74,.14),rgba(28,26,24,.65));border:1.5px dashed rgba(255,138,74,.42);position:relative}
.xd-hub-title{font-size:15px;font-weight:800;color:var(--primary);letter-spacing:-.02em}
.xd-hub-desc{font-size:13px;line-height:1.55;color:rgba(228,225,233,.92);margin-top:8px}
/* horizontal sync connectors */
.xd-conn{display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.xd-conn .ln{position:relative;width:52px;height:2.5px;border-radius:2px;background:currentColor}
.xd-conn-l{color:var(--primary)}
.xd-conn-r{color:var(--secondary-container)}
.xd-conn .ln::before{content:"";position:absolute;left:0;top:50%;transform:translate(-100%,-50%);width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:10px solid currentColor}
.xd-conn .ln::after{content:"";position:absolute;right:0;top:50%;transform:translate(100%,-50%);width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid currentColor}
.xd-conn-l .ln{box-shadow:0 0 16px -3px rgba(255,138,74,.7)}
.xd-conn-r .ln{box-shadow:0 0 16px -3px rgba(216,213,205,.65)}
.xd-conn-l .ln::after{display:none}
.xd-conn-r .ln::before{display:none}
/* direction captions */
.xd-cap{text-align:center;font-size:13.5px;font-weight:800;letter-spacing:-.02em}
.xd-cap-top{color:var(--primary)}
.xd-cap-bot{color:var(--secondary-container)}
.xd-cap b{color:var(--on-surface);font-weight:800}
.xd-hub-tag{display:inline-block;white-space:nowrap;margin-top:13px;font-size:11.5px;font-weight:700;color:var(--secondary-container);padding:5px 12px;border-radius:999px;background:rgba(216,213,205,.1);border:1px solid rgba(216,213,205,.3)}
/* connector rails */
.xd-rail{position:absolute;left:16%;right:16%;height:56px;z-index:1;pointer-events:none}
.xd-rail-top{top:26px;border:2.5px solid var(--primary);border-bottom:none;border-radius:20px 20px 0 0}
.xd-rail-bot{bottom:26px;border:2.5px solid var(--secondary-container);border-top:none;border-radius:0 0 20px 20px}
.xd-rail-top::after{content:"";position:absolute;right:-8px;bottom:-8px;width:0;height:0;border:8px solid transparent;border-top-color:var(--primary)}
.xd-rail-bot::after{content:"";position:absolute;left:-8px;top:-8px;width:0;height:0;border:8px solid transparent;border-bottom-color:var(--secondary-container)}
.xd-flow-label{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:13.5px;font-weight:800;letter-spacing:-.02em;background:transparent;padding:0}
.xd-rail-top .xd-flow-label{top:-24px;color:var(--primary)}
.xd-rail-bot .xd-flow-label{bottom:-24px;color:var(--secondary-container)}
.xd-flow-label b{color:var(--on-surface);font-weight:800}
/* case cards with photo backgrounds (CC0) — 실제 캠페인 스틸컷 확보 시 assets 이미지만 교체 */
.case-card{position:relative;overflow:hidden}
.case-card .case-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.case-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;filter:saturate(.8);transition:.4s var(--ease)}
.case-card:hover .case-bg img{opacity:.65;transform:scale(1.05)}
.case-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(12,11,10,.96) 30%,rgba(12,11,10,.78) 60%,rgba(12,11,10,.4))}
.case-card>*:not(.case-bg){position:relative;z-index:1}
.cta-final{text-align:center;padding:90px 0}
.cta-final h2{font-size:clamp(25px,3.6vw,38px);letter-spacing:-.04em;margin-bottom:14px}
.cta-final p{max-width:640px;margin:0 auto 30px;color:rgba(207,204,196,.75);font-size:17px}
.cta-final .actions{justify-content:center}
footer{background:var(--surface-container-lowest);border-top:1px solid rgba(74,70,63,.36);padding:70px 0 38px;color:rgba(207,204,196,.62)}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;padding-bottom:54px;border-bottom:1px solid rgba(74,70,63,.36)}
.footer-grid h4{font-size:16px;color:var(--on-surface);margin-bottom:16px}
.footer-grid p,.footer-grid a{display:block;font-size:14px;line-height:1.9;color:rgba(207,204,196,.62)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding-top:30px;font-size:13px}
.footer-inline-right{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
footer select{height:38px;border-radius:10px;background:#1c1a18;color:var(--on-surface);border:1px solid rgba(150,146,136,.24);padding:0 12px;font-family:inherit}
@media(max-width:960px){.g3{grid-template-columns:repeat(2,1fr)}.seg-cols{grid-template-columns:1fr}}
@media(max-width:640px){.g2,.g3{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}.sol{padding:56px 0}}
@media(max-width:640px){
  .xd{display:flex;flex-direction:column;padding:4px 0;gap:6px}
  .xd-rail{position:static;left:auto;right:auto;height:auto;border:none!important;box-shadow:none;display:flex;justify-content:center;padding:6px 0}
  .xd-rail::after{display:none}
  .xd-rail-top{order:1}.xd-row{order:2}.xd-rail-bot{order:3}
  .xd-flow-label{position:static;transform:none;white-space:normal;text-align:center;border-radius:999px;padding:8px 16px;border:1px solid currentColor;background:transparent}
  .xd-row{grid-template-columns:1fr;gap:14px}
  .xd-conn{display:none}
}

/* ===== Solutions 허브 & 상세 공통 추가 ===== */
.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:8px}
@media(max-width:760px){.hub-grid{grid-template-columns:1fr}}
.hub-card{display:flex;flex-direction:column;border:1px solid rgba(150,146,136,.2);border-radius:20px;padding:34px 32px;background:rgba(28,26,24,.5);transition:.3s var(--ease)}
.hub-card:hover{border-color:rgba(255,138,74,.45);transform:translateY(-5px);box-shadow:0 16px 40px -30px rgba(255,138,74,.5)}
.hub-card .num{font-size:13px;font-weight:800;color:var(--secondary-container);letter-spacing:.06em;margin-bottom:16px}
.hub-card h2{font-size:clamp(21px,2.6vw,26px);line-height:1.3;letter-spacing:-.035em;margin-bottom:12px}
.hub-card p{font-size:15px;line-height:1.72;color:rgba(207,204,196,.75);margin-bottom:24px;flex:1}
.hub-card .go{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:800;color:var(--primary);transition:.25s var(--ease)}
.hub-card:hover .go{gap:12px}
/* breadcrumb */
.breadcrumb{padding:26px 0 0}
.breadcrumb .wrap{display:flex;align-items:center;gap:9px;font-size:13.5px;font-weight:700;color:rgba(207,204,196,.55)}
.breadcrumb a{color:rgba(207,204,196,.75)}
.breadcrumb a:hover{color:var(--primary)}
.breadcrumb .sep{opacity:.5}
.breadcrumb .cur{color:var(--primary)}
/* next-solution nav */
.next-sol{border-top:1px solid rgba(74,70,63,.36);padding:56px 0}
.next-sol .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.next-sol .nl{font-size:13px;font-weight:800;letter-spacing:.05em;color:rgba(207,204,196,.55);margin-bottom:8px;display:block}
.next-sol .nt{font-size:clamp(19px,2.4vw,24px);font-weight:800;letter-spacing:-.03em}
.next-sol a.np{display:inline-flex;align-items:center;gap:8px;color:var(--primary);transition:.25s var(--ease)}
.next-sol a.np:hover{gap:12px}

/* ===== Solutions 드롭다운 서브메뉴 ===== */
.nav-dd{position:relative;display:inline-flex;align-items:center;height:68px}
.nav-dd>a{display:inline-flex;align-items:center;gap:5px}
.nav-dd>a::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);transition:.25s var(--ease);opacity:.7}
.nav-dd:hover>a::after{transform:rotate(45deg) translateY(1px);opacity:1}
.nav-sub{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(6px);min-width:190px;padding:8px;background:rgba(22,20,18,.98);backdrop-filter:blur(26px);border:1px solid rgba(74,70,63,.55);border-radius:16px;box-shadow:0 30px 70px -26px rgba(0,0,0,.8);opacity:0;visibility:hidden;pointer-events:none;transition:.22s var(--ease);z-index:130}
.nav-dd::after{content:"";position:absolute;top:100%;left:-16px;right:-16px;height:1px}
.nav-dd:hover .nav-sub,.nav-dd:focus-within .nav-sub{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-sub a{display:block;padding:11px 14px;border-radius:10px;font-size:13.5px;font-weight:700;color:var(--on-surface-variant);white-space:nowrap;transition:.18s var(--ease)}
.nav-sub a:hover{background:rgba(255,138,74,.1);color:var(--primary)}
.nav-sub a .sd{display:block;font-size:11.5px;font-weight:500;color:rgba(207,204,196,.5);margin-top:3px;letter-spacing:-.01em}
.nav-sub a:hover .sd{color:rgba(255,138,74,.6)}
@media(max-width:900px){.nav-sub{display:none}}

/* ===================== about.html 고유 스타일 ===================== */
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
.hstat{border:1px solid rgba(150,146,136,.2);border-radius:16px;padding:20px 22px;background:rgba(28,26,24,.5);transition:.3s var(--ease)}
.hstat:hover{border-color:rgba(216,213,205,.45);transform:translateY(-5px);box-shadow:0 24px 60px -34px rgba(216,213,205,.5)}
.hstat b{display:block;font-size:26px;letter-spacing:-.03em;color:var(--secondary-container);margin-bottom:4px}
.hstat span{font-size:13px;color:rgba(207,204,196,.72);line-height:1.5;display:block}
.g4{grid-template-columns:repeat(4,1fr)}
.card .tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--secondary-container);border:1px solid rgba(216,213,205,.3);border-radius:999px;padding:5px 11px;margin-bottom:14px}
.timeline::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--primary),rgba(216,213,205,.5))}
.tl-item{position:relative;padding:0 0 30px 18px}
.tl-item::before{content:"";position:absolute;left:-27px;top:7px;width:12px;height:12px;border-radius:50%;background:var(--surface);border:2.5px solid var(--primary);transition:.3s var(--ease)}
.tl-item:hover::before{background:var(--primary);box-shadow:0 0 18px -2px var(--primary)}
.tl-item .year{font-size:14px;font-weight:800;color:var(--secondary-container);letter-spacing:.05em;margin-bottom:5px}
.tl-item h3{font-size:17px;line-height:1.4;letter-spacing:-.03em;margin-bottom:5px}
.tl-item p{font-size:14px;line-height:1.7;color:rgba(207,204,196,.7);max-width:640px}
.op-box h3{font-size:22px;letter-spacing:-.03em;margin-bottom:40px}
.op-box .op-link{display:inline-flex;align-items:center;gap:6px;margin-top:34px;font-size:14px;font-weight:800;color:var(--primary)}
.op-box .op-link:hover{text-decoration:underline}
.fn-col{position:relative;border:1px solid rgba(150,146,136,.24);border-radius:14px;padding:28px 24px 24px;background:linear-gradient(180deg,rgba(40,40,49,.9),rgba(22,22,28,.86));box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 40px -28px rgba(0,0,0,.7);transition:.3s var(--ease)}
.fn-col::before{content:"";position:absolute;top:0;left:16px;right:16px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--acc),transparent);opacity:.85}
.fn-col:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--acc) 50%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 24px 50px -28px color-mix(in srgb,var(--acc) 35%,transparent)}
.fn-prod{display:flex;align-items:center;gap:9px;font-size:17px;font-weight:800;letter-spacing:-.03em}
.fn-prod::before{content:"";width:8px;height:8px;border-radius:3px;background:var(--acc);box-shadow:0 0 12px -1px var(--acc);flex:0 0 auto}
.fn-desc{display:block;font-size:12.5px;font-weight:600;color:rgba(207,204,196,.55);margin-top:7px;line-height:1.5}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.info-card{border:1px solid rgba(150,146,136,.2);border-radius:16px;padding:22px;background:rgba(28,26,24,.5);transition:.3s var(--ease)}
.info-card:hover{border-color:rgba(255,138,74,.45);transform:translateY(-5px);box-shadow:0 16px 40px -30px rgba(255,138,74,.5)}
.info-card .k{font-size:12.5px;font-weight:800;letter-spacing:.05em;color:var(--secondary-container);margin-bottom:8px}
.info-card .v{font-size:16px;font-weight:700;line-height:1.5}
.info-card .v a{color:var(--primary)}
.cov-stage{position:absolute;left:50%;top:0;width:1052px;height:720px;transform:translateX(-50%)}
.cov-ring{position:absolute;left:50%;top:350px;transform:translate(-50%,-50%);border-radius:50%}
.cov-core{position:absolute;left:50%;top:350px;transform:translate(-50%,-50%);text-align:center}
.cov-core b{display:block;font-size:27px;font-weight:800;letter-spacing:-.035em;text-shadow:0 0 40px rgba(255,138,74,.35)}
.cov-core span{display:block;font-size:12.5px;font-weight:700;letter-spacing:.04em;color:rgba(207,204,196,.55);margin-top:6px}
.cov-inv{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:7px}
.cov-inv i{width:6px;height:6px;border-radius:50%;background:var(--primary);box-shadow:0 0 10px 0 rgba(255,138,74,.5)}
.cov-inv b{font-size:15px;font-weight:800;color:var(--primary);letter-spacing:-.02em;white-space:nowrap}
.cov-pt{position:absolute;transform:translate(-50%,-50%);font-size:12.5px;font-weight:600;color:rgba(207,204,196,.4);white-space:nowrap}
.tl-item h3 em.first{font-style:normal;color:var(--primary);text-shadow:0 0 18px rgba(255,138,74,.45)}
.nav-dd{align-self:stretch}
@media(max-width:900px){.nav-links{display:none}}
@media(max-width:860px){.fn{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.fn{grid-template-columns:1fr}}
@media(max-width:1100px){.cov-stage{transform:translateX(-50%) scale(.8);transform-origin:top center}.cov-field{height:580px}}
@media(max-width:860px){.cov-stage{transform:translateX(-50%) scale(.62)}.cov-field{height:450px}}
@media(max-width:640px){.cov-stage{transform:translateX(-50%) scale(.45)}.cov-field{height:330px}}
@media(max-width:960px){.g3,.g4,.info-grid{grid-template-columns:repeat(2,1fr)}.hero-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.g2,.g3,.g4,.info-grid,.hero-stats{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}.sol{padding:56px 0}}
@media(max-width:900px){.nav-sub{display:none}}

/* ===================== partners.html 고유 스타일 ===================== */
.btn{display:inline-flex;align-items:center;height:48px;padding:0 24px;border-radius:9px;font-size:15px;font-weight:800;transition:.25s var(--ease);white-space:nowrap}
.eyebrow{display:inline-block;white-space:nowrap;font-size:13px;font-weight:800;letter-spacing:.06em;color:var(--primary);padding:7px 14px;border:1px solid rgba(255,138,74,.3);border-radius:999px;margin-bottom:24px}
.page-hero p{max-width:720px;color:rgba(207,204,196,.78);font-size:18px;line-height:1.75;margin-bottom:30px}
.r-sec .sec-eyebrow{display:block;font-size:13px;font-weight:800;letter-spacing:.08em;color:var(--secondary-container);margin-bottom:16px}
.r-sec h2{font-size:clamp(26px,3.6vw,40px);line-height:1.22;letter-spacing:-.045em;margin-bottom:20px;text-wrap:balance;max-width:26ch}
.r-sec .lead{color:rgba(207,204,196,.75);font-size:17px;line-height:1.8;max-width:680px}
.pv-m{padding:34px 36px 32px 0}
.pv-m + .pv-m{padding-left:36px;border-left:1px solid rgba(74,70,63,.32)}
.pv-m:last-child{padding-right:0}
.pv-top{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.pv-n{font-size:14px;font-weight:800;letter-spacing:.06em;color:var(--secondary-container)}
.pv-k{font-size:11px;font-weight:800;letter-spacing:.18em;color:rgba(255,138,74,.6)}
.pv-m h3{font-size:clamp(19px,1.8vw,22px);letter-spacing:-.035em;line-height:1.35;margin-bottom:10px;min-height:2.7em;display:flex;align-items:flex-start}
.pv-m>p{font-size:14px;line-height:1.7;color:rgba(207,204,196,.62)}
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chip{white-space:nowrap;font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;background:rgba(216,213,205,.07);color:rgba(207,204,196,.8);border:1px solid rgba(216,213,205,.22)}
.marquee-track{display:flex;width:max-content;animation:pt-scroll 60s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
from{transform:translateX(0)}
to{transform:translateX(-50%)}
.pmark{display:flex;align-items:center;justify-content:center;min-width:220px;min-height:96px;padding:24px 34px;margin-right:16px;border:1px solid rgba(150,146,136,.2);border-radius:16px;background:rgba(28,26,24,.5);transition:border-color .3s var(--ease)}
.pmark:hover{border-color:rgba(216,213,205,.45)}
.pmark img{max-width:150px;max-height:40px;width:auto;height:auto;object-fit:contain}
.pmark img.tall{max-height:60px}
.pmark img.up{height:28px;max-width:none}
.cta-final{text-align:center;padding:90px 0;border-top:1px solid rgba(74,70,63,.28)}
@media(max-width:900px){.nav-links{display:none}}
@media(max-width:860px){.pv{grid-template-columns:1fr}.pv-m,.pv-m + .pv-m{padding:26px 0 24px;border-left:none}.pv-m + .pv-m{border-top:1px solid rgba(74,70,63,.32)}.pv-m h3{min-height:0}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none;flex-wrap:wrap;width:auto}}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}.r-sec{padding:64px 0}}
@media(max-width:900px){.nav-sub{display:none}}

/* ===================== resources.html 고유 스타일 ===================== */
.sol .lead{max-width:760px;color:rgba(207,204,196,.75);font-size:17px;line-height:1.75;margin-bottom:16px}
.res-search svg{position:absolute;left:20px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:rgba(207,204,196,.55);pointer-events:none}
.res-search input{width:100%;height:58px;border-radius:999px;border:1.5px solid rgba(150,146,136,.35);background:rgba(28,26,24,.7);color:var(--on-surface);font-family:inherit;font-size:15.5px;padding:0 110px 0 52px;transition:.25s var(--ease);letter-spacing:-.01em}
.res-search input::placeholder{color:rgba(207,204,196,.45)}
.res-search input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 30px -10px var(--primary)}
.res-count{position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:13px;font-weight:700;color:var(--secondary-container);pointer-events:none}
.res-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}
.res-tab{height:40px;padding:0 18px;border-radius:999px;border:1px solid rgba(150,146,136,.32);background:transparent;color:var(--on-surface-variant);font-family:inherit;font-size:13.5px;font-weight:800;cursor:pointer;transition:.25s var(--ease)}
.res-tab:hover{border-color:var(--primary);color:var(--primary)}
.res-tab.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}
.cat{border-radius:999px;padding:4px 11px;font-weight:800}
.cat-cases{color:var(--secondary-container);border:1px solid rgba(216,213,205,.32)}
.cat-report{color:var(--primary);border:1px solid rgba(255,138,74,.35)}
.cat-insight{color:var(--tertiary);border:1px solid rgba(255,177,195,.35)}
.cat-overview{color:var(--secondary-container);border:1px solid rgba(216,213,205,.32)}
.cat-default{color:var(--on-surface-variant);border:1px solid rgba(150,146,136,.4)}
.case-row.hide{display:none}
.pager{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:34px;flex-wrap:wrap}
.pager button{min-width:40px;height:40px;padding:0 12px;border-radius:12px;border:1px solid rgba(150,146,136,.32);background:transparent;color:var(--on-surface-variant);font-family:inherit;font-size:13.5px;font-weight:800;cursor:pointer;transition:.25s var(--ease)}
.pager button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}
.pager button.cur{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}
.pager button:disabled{opacity:.35;cursor:default}
.res-noresult{display:none;max-width:900px;border:1px dashed rgba(150,146,136,.35);border-radius:16px;padding:30px;text-align:center;color:rgba(207,204,196,.65);font-size:15px;margin-top:6px}
.case-row{display:flex;align-items:center;gap:30px;padding:26px 6px;border-bottom:1px solid rgba(74,70,63,.34);transition:.25s var(--ease)}
.case-body{flex:1;min-width:0}
.case-thumb{flex:0 0 232px;height:140px;border-radius:14px;overflow:hidden;background:rgba(28,26,24,.7);border:1px solid rgba(74,70,63,.4)}
.case-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:.35s var(--ease)}
.case-row:hover .case-thumb img{transform:scale(1.05)}
.thumb-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;letter-spacing:-.03em;color:var(--primary);background:linear-gradient(135deg,rgba(255,138,74,.16),rgba(190,120,50,.08));text-shadow:0 0 24px rgba(255,138,74,.5)}
.case-row:first-child{border-top:1px solid rgba(74,70,63,.34)}
.case-row:hover{background:rgba(255,138,74,.04)}
.case-meta{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:12.5px;font-weight:700}
.case-meta .ind{color:var(--secondary-container);border:1px solid rgba(216,213,205,.3);border-radius:999px;padding:4px 11px}
.case-meta .date{color:rgba(207,204,196,.5)}
.case-row h3{font-size:19px;line-height:1.45;letter-spacing:-.03em;margin-bottom:10px;transition:.25s var(--ease)}
.case-row:hover h3{color:var(--primary)}
.case-row p{font-size:14.5px;line-height:1.75;color:rgba(207,204,196,.74);max-width:820px;margin-bottom:12px}
.case-row .go{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:800;color:var(--primary)}
.case-row:hover .go{text-decoration:underline}
.nav-dd{align-self:stretch}

@media(max-width:900px){.nav-links{display:none}}
@media(max-width:640px){.case-row{flex-direction:column-reverse;align-items:stretch;gap:16px}.case-thumb{flex:none;width:100%;height:180px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}.sol{padding:56px 0}}
@media(max-width:900px){.nav-sub{display:none}}

/* ===================== faq.html 고유 스타일 ===================== */
.faq-search svg{position:absolute;left:20px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:rgba(207,204,196,.55);pointer-events:none}
.faq-search input{width:100%;height:58px;border-radius:999px;border:1.5px solid rgba(150,146,136,.35);background:rgba(28,26,24,.7);color:var(--on-surface);font-family:inherit;font-size:15.5px;padding:0 130px 0 52px;transition:.25s var(--ease);letter-spacing:-.01em}
.faq-search input::placeholder{color:rgba(207,204,196,.45)}
.faq-search input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 30px -10px var(--primary)}
.faq-count{position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:13px;font-weight:700;color:var(--secondary-container);pointer-events:none}
.faq-noresult{display:none;max-width:900px;border:1px dashed rgba(150,146,136,.35);border-radius:16px;padding:30px;text-align:center;color:rgba(207,204,196,.65);font-size:15px}
.faq-noresult a{color:var(--primary);font-weight:800}
.faq-item{border:1px solid rgba(150,146,136,.2);border-radius:16px;background:rgba(28,26,24,.5);transition:.3s var(--ease);overflow:hidden}
.faq-item:hover{border-color:rgba(255,138,74,.45)}
.faq-item[open]{border-color:rgba(255,138,74,.45);box-shadow:0 16px 40px -30px rgba(255,138,74,.5)}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary h3{font-size:16.5px;line-height:1.45;letter-spacing:-.02em;font-weight:800}
.faq-item summary .q-icon{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:rgba(255,138,74,.1);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;transition:.3s var(--ease)}
.faq-item summary .q-icon svg{width:14px;height:14px;transition:transform .3s var(--ease)}
.faq-item[open] summary .q-icon{background:rgba(255,138,74,.2)}
.faq-item[open] summary .q-icon svg{transform:rotate(180deg)}
.faq-item .a{padding:0 24px 22px;font-size:14.5px;line-height:1.8;color:rgba(207,204,196,.78);max-width:820px}
.faq-item .a b{color:var(--on-surface)}
.faq-item.hide{display:none}
.sol.hide{display:none}
.nav-dd{align-self:stretch}
@media(max-width:900px){.nav-links{display:none}}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}.sol{padding:56px 0}.faq-search input{padding-right:90px}}
@media(max-width:900px){.nav-sub{display:none}}

/* partners marquee animation */
@keyframes pt-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ===== index.css → .page-index ===== */
body.page-index{--surface: #121110;
      --surface-container-lowest: #0c0b0a;
      --surface-container-low: #1b1b20;
      --surface-container: #1c1a18;
      --on-surface: #edece8;
      --on-surface-variant: #cfccc4;
      --outline: #9a8ca0;
      --outline-variant: #4a463f;
      --primary: #ff8a4a;
      --on-primary: #2b1204;
      --secondary-fixed: #7df4ff;
      --secondary-container: #d8d5cd;
      --tertiary: #d8d5cd;
      --ease: cubic-bezier(.22, .61, .36, 1);
      --wrap: min(1200px, calc(100vw - 96px));
      --wrap-mobile: calc(100vw - 32px)}
html{scroll-behavior: smooth;
      background: var(--surface)}
body.page-index{font-family: "Plus Jakarta Sans", "Noto Sans KR", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
      background: radial-gradient(circle at 16% 4%, rgba(255, 110, 40, .18), transparent 30%), radial-gradient(circle at 84% 10%, rgba(216, 213, 205, .12), transparent 34%), var(--surface);
      color: var(--on-surface);
      overflow-x: hidden;
      word-break: keep-all;
      letter-spacing: -.018em}
.page-index #progress{position: fixed;
      left: 0;
      top: 0;
      height: 2px;
      width: 0;
      background: linear-gradient(90deg, var(--primary), var(--secondary-container));
      z-index: 9999}
.page-index .nav{position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 1000;
      height: 72px;
      background: rgba(12, 11, 10, .72);
      backdrop-filter: blur(22px);
      -webkit-backdrop-filter: blur(22px);
      border-bottom: 1px solid rgba(74, 70, 63, .42)}
.page-index .nav-inner{width: var(--wrap);
      height: 100%;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 32px}
.page-index .brand{display: flex;
      align-items: center;
      gap: 12px;
      min-width: 260px}
.page-index .brand-icon{width: 28px;
      height: 28px;
      border-radius: 9px;
      background: linear-gradient(135deg, var(--primary), var(--secondary-container));
      box-shadow: 0 0 36px -8px var(--primary);
      position: relative}
.page-index .brand-icon:after{content: "";
      position: absolute;
      inset: 8px;
      border-radius: 50%;
      background: var(--surface-container-lowest)}
.page-index .brand-main{font-size: 20px;
      font-weight: 800;
      letter-spacing: -.04em;
      color: var(--on-surface)}
.page-index .brand-sub{font-size: 11px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
      color: rgba(207, 204, 196, .72);
      border-left: 1px solid rgba(150, 146, 136, .38);
      padding-left: 12px}
.page-index .nav-links{display: flex;
      align-items: center;
      gap: 30px;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: -.018em;
      color: rgba(207, 204, 196, .74)}
.page-index .nav-links a{transition: .25s var(--ease)}
.page-index .nav-links a:hover{color: var(--primary)}
.page-index .nav-cta{height: 40px;
      padding: 0 18px;
      border-radius: 8px;
      background: var(--primary);
      color: var(--on-primary) !important;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 0 40px -10px var(--primary)}
.page-index .hero{position: relative;
      min-height: 100vh;
      padding-top: 72px;
      overflow: hidden;
      background: radial-gradient(circle at 25% 20%, rgba(255, 110, 40, .32), transparent 32%), radial-gradient(circle at 78% 18%, rgba(216, 213, 205, .20), transparent 34%), linear-gradient(180deg, var(--surface-container-lowest), var(--surface) 88%)}
.page-index .hero:before{content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      background: linear-gradient(180deg, rgba(12, 11, 10, .08), rgba(19, 19, 24, .90) 96%), radial-gradient(circle at 50% 40%, transparent 42%, rgba(0, 0, 0, .28))}
.page-index .hero-grid{min-height: calc(100vh - 72px);
      display: grid;
      grid-template-columns: minmax(420px, 760px) 1fr;
      gap: 64px;
      align-items: center;
      position: relative;
      z-index: 3;
      padding: 64px 0 54px}
.page-index .eyebrow{display: inline-flex;
      align-items: center;
      gap: 12px;
      color: var(--primary);
      font-size: 14px;
      font-weight: 800;
      letter-spacing: .12em;
      text-transform: uppercase;
      margin-bottom: 28px}
.page-index .eyebrow:before{content: "";
      width: 42px;
      height: 1px;
      background: linear-gradient(90deg, var(--primary), transparent)}
.page-index .hero h1{font-size: clamp(48px, 6vw, 92px);
      line-height: 1.02;
      font-weight: 800;
      letter-spacing: -.055em;
      max-width: 11ch;
      margin-bottom: 30px;
      color: var(--on-surface)}
.page-index .gradient-text{background: linear-gradient(90deg, #fff 0%, var(--primary) 45%, var(--secondary-container) 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent}
.page-index .hero-copy{max-width: 720px;
      color: rgba(207, 204, 196, .82);
      font-size: 18px;
      line-height: 1.7;
      margin-bottom: 36px}
.page-index .hero-actions{display: flex;
      gap: 14px;
      flex-wrap: wrap}
.page-index .btn{height: 54px;
      min-width: 190px;
      border-radius: 9px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 0 24px;
      font-size: 14px;
      font-weight: 800;
      transition: .25s var(--ease);
      border: 1px solid transparent}
.page-index .btn.primary{background: var(--primary);
      color: var(--on-primary);
      box-shadow: none}
.page-index .btn.secondary{background: rgba(28, 26, 24, .58);
      border-color: rgba(150, 146, 136, .28);
      color: var(--on-surface);
      backdrop-filter: blur(16px)}
.page-index .btn:hover{transform: translateY(-4px)}
.page-index .hero-visual{position: relative;
      min-height: 560px;
      border-radius: 32px;
      border: 1px solid rgba(150, 146, 136, .22);
      background: rgba(28, 26, 24, .44);
      backdrop-filter: blur(24px);
      overflow: hidden;
      box-shadow: 0 60px 120px rgba(0, 0, 0, .36), inset 0 1px 0 rgba(255, 255, 255, .08)}
.page-index .hero-visual:before{content: "";
      position: absolute;
      inset: -20%;
      background: radial-gradient(circle at 45% 30%, rgba(255, 138, 74, .22), transparent 28%), radial-gradient(circle at 76% 18%, rgba(216, 213, 205, .20), transparent 30%);
      filter: blur(2px)}
.page-index .tv-frame{position: absolute;
      left: 9%;
      right: 9%;
      top: 9%;
      height: 48%;
      border-radius: 28px;
      border: 1px solid rgba(255, 255, 255, .14);
      background: linear-gradient(135deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .02)), radial-gradient(circle at 75% 30%, rgba(216, 213, 205, .22), transparent 32%), #0c0b0a;
      overflow: hidden;
      box-shadow: 0 34px 80px rgba(0, 0, 0, .36)}
.page-index .tv-frame:after{content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(112deg, transparent 0%, transparent 45%, rgba(255, 255, 255, .12) 50%, transparent 58%);
      animation: sweep 8s ease-in-out infinite}
@keyframes sweep {

      0%,
      35% {
        transform: translateX(-70%);
        opacity: 0
      }

      48% {
        opacity: 1
      }

      78%,
      100% {
        transform: translateX(70%);
        opacity: 0
      }
    }
.page-index .tv-copy{position: absolute;
      left: 34px;
      bottom: 32px}
.page-index .tv-copy span{display: block;
      color: var(--secondary-fixed);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .12em;
      margin-bottom: 10px}
.page-index .tv-copy strong{font-size: 46px;
      line-height: .92;
      letter-spacing: -.06em}
.page-index .tv-badge{position: absolute;
      right: 28px;
      bottom: 30px;
      border-radius: 999px;
      background: var(--primary);
      color: var(--on-primary);
      height: 38px;
      padding: 0 15px;
      display: flex;
      align-items: center;
      font-size: 12px;
      font-weight: 800}
.page-index .phone{position: absolute;
      left: 10%;
      bottom: 8%;
      width: 176px;
      height: 318px;
      border-radius: 38px;
      background: #050507;
      border: 1px solid rgba(255, 255, 255, .16);
      padding: 12px;
      transform: rotate(-7deg);
      box-shadow: 0 34px 80px rgba(0, 0, 0, .52)}
.page-index .phone-screen{width: 100%;
      height: 100%;
      border-radius: 28px;
      background: linear-gradient(180deg, rgba(255, 138, 74, .18), rgba(216, 213, 205, .06)), #121110;
      border: 1px solid rgba(255, 255, 255, .08);
      padding: 18px;
      display: flex;
      flex-direction: column;
      justify-content: space-between}
.page-index .phone-screen .bar{width: 80px;
      height: 7px;
      border-radius: 999px;
      background: rgba(255, 255, 255, .18)}
.page-index .phone-screen h3{font-size: 22px;
      line-height: 1.05;
      letter-spacing: -.05em}
.page-index .phone-screen p{font-size: 11px;
      line-height: 1.4;
      color: rgba(207, 204, 196, .7)}
.page-index .data-panel{position: absolute;
      right: 8%;
      bottom: 11%;
      width: 55%;
      min-height: 230px;
      border-radius: 28px;
      border: 1px solid rgba(150, 146, 136, .20);
      background: rgba(12, 11, 10, .62);
      backdrop-filter: blur(18px);
      padding: 24px}
.page-index .data-panel h3{font-size: 20px;
      margin-bottom: 22px}
.page-index .bar-row{display: grid;
      grid-template-columns: 88px 1fr 46px;
      gap: 12px;
      align-items: center;
      margin: 15px 0;
      color: rgba(207, 204, 196, .72);
      font-size: 12px;
      font-weight: 700}
.page-index .bar-track{height: 9px;
      border-radius: 999px;
      background: rgba(255, 255, 255, .08);
      overflow: hidden}
.page-index .bar-fill{height: 100%;
      border-radius: 999px;
      background: linear-gradient(90deg, var(--primary), var(--secondary-container));
      box-shadow: 0 0 20px -5px var(--secondary-container)}
.page-index .connector{position: absolute;
      left: 23%;
      top: 58%;
      width: 45%;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--secondary-container), transparent);
      transform: rotate(-9deg);
      opacity: .75}
.page-index .section{padding: 124px 0;
      border-top: 1px solid rgba(74, 70, 63, .32);
      background: var(--surface)}
.page-index .section.alt{background: linear-gradient(180deg, var(--surface-container-lowest), var(--surface))}
.page-index .section-head{max-width: 940px;
      margin-bottom: 66px}
.page-index .section-num{display: flex;
      align-items: center;
      gap: 12px;
      color: rgba(207, 204, 196, .64);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .06em;
      text-transform: uppercase;
      margin-bottom: 22px}
.page-index .section-num:before{content: "";
      width: 36px;
      height: 1px;
      background: linear-gradient(90deg, var(--primary), transparent)}
.page-index .section-title{font-size: clamp(42px, 4.8vw, 76px);
      line-height: 1.04;
      font-weight: 800;
      letter-spacing: -.052em;
      margin-bottom: 24px}
.page-index .section-sub{max-width: 780px;
      color: rgba(207, 204, 196, .72);
      font-size: 18px;
      line-height: 1.68}
.page-index .problem-grid{display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px}
.page-index .glass-card{background: rgba(28, 26, 24, .58);
      border: 1px solid rgba(150, 146, 136, .22);
      border-radius: 24px;
      backdrop-filter: blur(18px);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
      transition: .32s var(--ease);
      overflow: hidden;
      position: relative}
.page-index .glass-card:hover{transform: translateY(-6px);
      border-color: rgba(255, 138, 74, .46);
      box-shadow: none}
.page-index .problem-card{padding: 30px;
      min-height: 310px;
      display: flex;
      flex-direction: column;
      justify-content: space-between}
.page-index .idx{color: rgba(207, 204, 196, .46);
      font-size: 13px;
      font-weight: 800}
.page-index .problem-card h3{font-size: 28px;
      line-height: 1.18;
      letter-spacing: -.045em;
      margin-bottom: 18px}
.page-index .problem-card p{color: rgba(207, 204, 196, .72);
      font-size: 15px;
      line-height: 1.72}
.page-index .solution-panel{border-top: 1px solid rgba(150, 146, 136, .24);
      border-bottom: 1px solid rgba(150, 146, 136, .24)}
.page-index .solution-row{display: grid;
      grid-template-columns: 88px 1fr minmax(340px, 520px);
      gap: 32px;
      align-items: start;
      padding: 34px 0;
      border-bottom: 1px solid rgba(150, 146, 136, .14);
      transition: .25s var(--ease)}
.page-index .solution-row:last-child{border-bottom: 0}
.page-index .solution-row:hover{padding-left: 18px;
      background: linear-gradient(90deg, rgba(255, 138, 74, .055), transparent)}
.page-index .solution-row h3{font-size: 31px;
      line-height: 1.12;
      letter-spacing: -.048em}
.page-index .solution-row p{font-size: 16px;
      line-height: 1.72;
      color: rgba(207, 204, 196, .72)}
.page-index .solution-num{font-size: 14px;
      color: var(--primary);
      font-weight: 800}
.page-index .metric-grid{display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px}
.page-index .metric-card{padding: 34px;
      min-height: 360px;
      display: flex;
      flex-direction: column;
      justify-content: space-between}
.page-index .metric-card strong{font-size: clamp(54px, 6.4vw, 100px);
      line-height: .92;
      letter-spacing: -.08em;
      background: linear-gradient(90deg, #fff, var(--primary), var(--secondary-container));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent}
.page-index .metric-card span{font-size: 13px;
      color: rgba(207, 204, 196, .58);
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .08em}
.page-index .metric-card p{font-size: 16px;
      line-height: 1.7;
      color: rgba(207, 204, 196, .72)}
.page-index .resource-grid{display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px}
.page-index .resource-card{padding: 30px;
      min-height: 360px;
      display: flex;
      flex-direction: column;
      justify-content: space-between}
.page-index .tag{display: inline-flex;
      align-self: flex-start;
      padding: 8px 12px;
      border-radius: 999px;
      background: rgba(255, 138, 74, .12);
      color: var(--primary);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .08em;
      margin-bottom: 26px}
.page-index .resource-card h3{font-size: 28px;
      line-height: 1.15;
      letter-spacing: -.05em;
      margin-bottom: 16px}
.page-index .resource-card p{font-size: 15px;
      line-height: 1.7;
      color: rgba(207, 204, 196, .72)}
.page-index .resource-action{font-size: 14px;
      font-weight: 800;
      color: var(--secondary-fixed);
      margin-top: 28px}
.page-index .cta{padding: 136px 0;
      text-align: center;
      background: radial-gradient(circle at 50% 0%, rgba(255, 110, 40, .22), transparent 32%), var(--surface-container-lowest)}
.page-index .cta .section-num{justify-content: center}
.page-index .cta-inner{max-width: 900px;
      margin: 0 auto}
.page-index .cta h2{font-size: clamp(44px, 5vw, 84px);
      line-height: 1.02;
      letter-spacing: -.055em;
      margin-bottom: 24px}
.page-index .cta p{font-size: 18px;
      line-height: 1.68;
      color: rgba(207, 204, 196, .72);
      margin: 0 auto 34px;
      max-width: 760px}
.page-index .cta-actions{display: flex;
      gap: 14px;
      justify-content: center;
      flex-wrap: wrap}
.page-index .footer-grid h3{font-size: 17px;
      color: var(--on-surface);
      margin-bottom: 18px}
.page-index .footer-grid p,.page-index .footer-grid a{display: block;
      font-size: 14px;
      line-height: 1.9;
      color: rgba(207, 204, 196, .62)}
.page-index .footer-bottom{display: flex;
      justify-content: space-between;
      gap: 24px;
      align-items: center;
      padding-top: 30px;
      font-size: 13px}
.page-index .family-select{display: flex;
      gap: 10px;
      align-items: center}
.page-index select{height: 38px;
      border-radius: 10px;
      background: var(--surface-container-low);
      color: var(--on-surface);
      border: 1px solid rgba(150, 146, 136, .24);
      padding: 0 12px}
.page-index .reveal{opacity: 0;
      transform: translateY(28px);
      transition: opacity .8s var(--ease), transform .8s var(--ease)}
.page-index .reveal.in{opacity: 1;
      transform: translateY(0)}
@media(max-width:1024px) {
body.page-index{--wrap: min(1200px, calc(100vw - 96px))}
.page-index .hero-grid{grid-template-columns: 1fr;
        gap: 36px}
.page-index .hero-visual{min-height: 500px}
.page-index .problem-grid,.page-index .metric-grid,.page-index .resource-grid{grid-template-columns: 1fr}
.page-index .solution-row{grid-template-columns: 64px 1fr}
.page-index .solution-row p{grid-column: 2}
.page-index .nav-links a:not(.nav-cta){display: none}
}
@media(max-width:768px) {
body.page-index{--wrap: min(1200px, calc(100vw - 96px))}
.page-index .nav{height: 62px}
.page-index .brand-sub{display: none}
.page-index .hero{padding-top: 62px}
.page-index .hero-grid{padding: 54px 0 70px}
.page-index .hero h1{font-size: 48px}
.page-index .hero-copy,.page-index .section-sub{font-size: 16px}
.page-index .hero-actions,.page-index .cta-actions{flex-direction: column}
.page-index .btn{width: 100%}
.page-index .hero-visual{min-height: 440px;
        border-radius: 24px}
.page-index .tv-frame{left: 5%;
        right: 5%;
        top: 7%}
.page-index .phone{width: 132px;
        height: 240px}
.page-index .data-panel{right: 5%;
        bottom: 8%;
        width: 64%;
        padding: 18px}
.page-index .bar-row{grid-template-columns: 64px 1fr 34px}
.page-index .section{padding: 92px 0}
.page-index .section-title{font-size: 39px}
.page-index .solution-row{grid-template-columns: 1fr}
.page-index .solution-row p{grid-column: auto}
.page-index .footer-grid{grid-template-columns: 1fr}
.page-index .footer-bottom{flex-direction: column;
        align-items: flex-start}
}
.page-index .success-grid{display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 24px;}
.page-index .success-card{min-height: 620px;
      padding: 34px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      background:
        radial-gradient(circle at 18% 0%, rgba(255, 138, 74, .18), transparent 32%),
        radial-gradient(circle at 92% 18%, rgba(216, 213, 205, .12), transparent 34%),
        rgba(28, 26, 24, .58);}
.page-index .success-card:nth-child(2){background:
        radial-gradient(circle at 18% 0%, rgba(255, 138, 74, .16), transparent 32%),
        radial-gradient(circle at 92% 18%, rgba(255, 110, 40, .16), transparent 34%),
        rgba(28, 26, 24, .58);}
.page-index .success-card h3{font-size: clamp(34px, 3vw, 48px);
      line-height: 1.08;
      letter-spacing: -.055em;
      margin-bottom: 18px;}
.page-index .success-copy{max-width: 560px;
      color: rgba(207, 204, 196, .72);
      font-size: 15px;
      line-height: 1.72;}
.page-index .success-metrics{display: grid;
      gap: 0;
      margin: 44px 0 28px;
      border-top: 1px solid rgba(150, 146, 136, .22);}
.page-index .metric-line{display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      padding: 18px 0;
      border-bottom: 1px solid rgba(150, 146, 136, .18);
      color: rgba(207, 204, 196, .72);
      font-size: 15px;
      line-height: 1.45;}
.page-index .metric-line strong{color: var(--on-surface);
      font-size: clamp(28px, 3.2vw, 46px);
      line-height: 1;
      letter-spacing: -.06em;
      white-space: nowrap;
      background: linear-gradient(90deg, #fff, var(--primary), var(--secondary-container));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;}
.page-index .success-btn{width: max-content;
      min-width: 220px;}
.page-index .resource-teaser{margin-top: 30px;
      padding: 28px 30px;
      border: 1px solid rgba(150, 146, 136, .22);
      border-radius: 24px;
      background: rgba(12, 11, 10, .48);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;}
.page-index .resource-teaser p{color: rgba(207, 204, 196, .72);
      font-size: 16px;
      line-height: 1.6;}
@media(max-width:1024px) {
.page-index .success-grid{grid-template-columns: 1fr}
.page-index .resource-teaser{flex-direction: column;
        align-items: flex-start}
}
@media(max-width:768px) {
.page-index .success-card{min-height: auto;
        padding: 26px}
.page-index .metric-line{align-items: flex-start;
        flex-direction: column;
        gap: 10px}
.page-index .success-btn{width: 100%}
.page-index .resource-teaser .btn{width: 100%}
}
.page-index .hero.hero-poster{min-height: auto !important;
      padding-top: 72px !important;
      overflow: hidden !important;
      background:
        radial-gradient(circle at 18% 0%, rgba(255, 110, 40, .18), transparent 34%),
        radial-gradient(circle at 78% 8%, rgba(216, 213, 205, .10), transparent 32%),
        var(--surface-container-lowest) !important;}
.page-index .hero.hero-poster::before{display: none !important;
      content: none !important;}
.page-index .hero-image-stage{position: relative;
      width: 100vw;
      height: clamp(520px, 62vw, 850px);
      max-height: calc(100vh - 72px);
      min-height: 520px;
      overflow: hidden;
      background: #050507;
      isolation: isolate;
      border-bottom: 1px solid rgba(74, 70, 63, .36);}
.page-index .hero-image-stage img{position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center center;
      display: block;
      filter: brightness(.58) saturate(.92) contrast(1.03);
      transform: scale(1.01);
      z-index: 0;}
.page-index .hero-image-overlay{position: absolute;
      inset: 0;
      z-index: 1;
      pointer-events: none;
      background:
        linear-gradient(180deg,
          rgba(12, 11, 10, .30) 0%,
          rgba(12, 11, 10, .08) 36%,
          rgba(12, 11, 10, .34) 72%,
          var(--surface-container-lowest) 100%),
        radial-gradient(circle at 50% 38%, transparent 38%, rgba(0, 0, 0, .36) 100%);}
.page-index .floating-benefit{position: absolute;
      z-index: 3;
      min-width: 220px;
      padding: 18px 20px 18px 18px;
      border-radius: 18px;
      border: 1px solid rgba(255, 138, 74, .26);
      background: rgba(12, 11, 10, .50);
      backdrop-filter: blur(18px);
      -webkit-backdrop-filter: blur(18px);
      box-shadow:
        0 18px 60px rgba(0, 0, 0, .34),
        0 0 36px -18px var(--primary),
        inset 0 1px 0 rgba(255, 255, 255, .08);
      display: grid;
      grid-template-columns: 44px 1fr;
      grid-template-rows: auto auto;
      column-gap: 14px;
      align-items: center;
      animation: floatBenefit 5.8s ease-in-out infinite;}
.page-index .floating-benefit strong{color: var(--on-surface);
      font-size: 16px;
      line-height: 1.15;
      letter-spacing: -.035em;
      font-weight: 800;}
.page-index .floating-benefit small{grid-column: 2;
      display: block;
      margin-top: 6px;
      color: rgba(207, 204, 196, .76);
      font-size: 12px;
      line-height: 1.45;
      font-weight: 600;}
.page-index .benefit-icon{grid-row: 1 / span 2;
      width: 44px;
      height: 44px;
      border-radius: 14px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--secondary-container);
      background: linear-gradient(135deg, rgba(255, 138, 74, .20), rgba(216, 213, 205, .10));
      border: 1px solid rgba(216, 213, 205, .22);
      font-size: 22px;
      font-weight: 800;
      box-shadow: 0 0 30px -12px var(--secondary-container);}
.page-index .fb-left-1{left: 10.5%;
      top: 24%;
      animation-delay: 0s}
.page-index .fb-left-2{left: 12%;
      top: 48%;
      animation-delay: 1.1s}
.page-index .fb-right-1{right: 10.5%;
      top: 28%;
      animation-delay: .55s}
.page-index .fb-right-2{right: 12%;
      top: 52%;
      animation-delay: 1.65s}
@keyframes floatBenefit {

      0%,
      100% {
        transform: translate3d(0, 0, 0)
      }

      50% {
        transform: translate3d(0, -12px, 0)
      }
    }
.page-index .hero-message-below{position: relative;
      z-index: 5;
      padding: 72px 0 90px;
      display: block;}
.page-index .hero-message-below .hero-copyblock{max-width: 920px;}
.page-index .hero-message-below h1{max-width: 12.5ch;
      font-size: clamp(48px, 5.8vw, 88px);
      line-height: 1.02;
      margin-bottom: 28px;}
.page-index .hero-message-below .hero-copy{max-width: 780px;}
@media(max-width:1180px) {
.page-index .floating-benefit{min-width: 190px;
        padding: 15px 16px;}
.page-index .fb-left-1{left: 5%;
        top: 22%}
.page-index .fb-left-2{left: 5%;
        top: 50%}
.page-index .fb-right-1{right: 5%;
        top: 24%}
.page-index .fb-right-2{right: 5%;
        top: 52%}
}
@media(max-width:900px) {
.page-index .hero-image-stage{height: 62vh;
        min-height: 520px;}
.page-index .floating-benefit{transform: scale(.88);
        transform-origin: center;
        min-width: 176px;}
.page-index .fb-left-1{left: 18px;
        top: 18%}
.page-index .fb-left-2{left: 18px;
        top: 43%}
.page-index .fb-right-1{right: 18px;
        top: 20%}
.page-index .fb-right-2{right: 18px;
        top: 45%}
}
@media(max-width:768px) {
.page-index .hero.hero-poster{padding-top: 62px !important;}
.page-index .hero-image-stage{height: 58vh;
        min-height: 460px;}
.page-index .hero-image-stage img{object-position: center center;
        filter: brightness(.50) saturate(.88) contrast(1.05);}
.page-index .floating-benefit{display: none;}
.page-index .hero-message-below{padding: 54px 0 72px;}
.page-index .hero-message-below h1{font-size: 42px;
        max-width: 12ch;}
}
.page-index .hero-tv-logo-overlay{position: absolute;
      left: 50%;
      bottom: 14%;
      transform: translateX(-50%);
      z-index: 4;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
      pointer-events: none;
      text-align: center;
      mix-blend-mode: normal;}
.page-index .hero-tv-logo-overlay .logo-main{font-size: clamp(42px, 4vw, 76px);
      line-height: 1;
      font-weight: 800;
      letter-spacing: -.06em;
      color: #ffffff;
      text-shadow:
        0 4px 30px rgba(0, 0, 0, .42),
        0 0 24px rgba(255, 138, 74, .28);}
.page-index .hero-tv-logo-overlay .logo-main span{display: inline-block;
      padding-right: .08em;
      background: linear-gradient(90deg, var(--primary), var(--secondary-container));
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      text-shadow: none;}
.page-index .hero-tv-logo-overlay .logo-sub{font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, .72);
      font-weight: 700;}
@media(max-width:768px) {
.page-index .hero-tv-logo-overlay{bottom: 10%;}
.page-index .hero-tv-logo-overlay .logo-main{font-size: 38px;}
.page-index .hero-tv-logo-overlay .logo-sub{font-size: 10px;
        letter-spacing: .12em;}
}
.page-index .metric-desc{margin-top: 12px;
      color: #8f8f8f;
      font-size: 12px;
      line-height: 1.5;
      letter-spacing: -0.01em;}
.page-index .footer-legal-links{display: flex;
      align-items: center;
      gap: 12px;
      margin-top: 18px;
      color: #8f8f8f;
      font-size: 13px;}
.page-index .footer-legal-links a{transition: opacity .2s ease;}
.page-index .footer-legal-links a:hover{opacity: .7;}
.page-index .footer-legal-links{width: 100%;
      margin-top: 24px;
      padding-top: 20px;
      border-top: 1px solid rgba(255, 255, 255, 0.06);
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 12px;
      color: #8f8f8f;
      font-size: 13px;}
.page-index .footer-legal-links a{color: #8f8f8f;
      transition: opacity .2s ease;}
.page-index .footer-legal-links a:hover{opacity: .7;}
.page-index .brand-icon{display: none !important;}
.page-index .footer-right{display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 24px;
      flex-wrap: wrap;}
.page-index .footer-legal-links{display: flex;
      align-items: center;
      gap: 10px;
      color: rgba(207, 204, 196, .62);
      font-size: 13px;
      white-space: nowrap;}
.page-index .footer-legal-links a{color: rgba(207, 204, 196, .62);
      transition: color .2s ease, opacity .2s ease;}
.page-index .footer-legal-links a:hover{color: var(--on-surface);
      opacity: .9;}
@media(max-width:768px) {
.page-index .footer-right{justify-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        gap: 14px;}
}
.page-index .footer-bottom{display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 24px;
      flex-wrap: wrap;}
.page-index .footer-inline-right{display: flex;
      align-items: center;
      gap: 28px;
      flex-wrap: wrap;}
.page-index .footer-legal-inline{display: flex;
      align-items: center;
      gap: 10px;
      color: rgba(207, 204, 196, .62);
      font-size: 13px;
      white-space: nowrap;}
.page-index .footer-legal-inline a{color: rgba(207, 204, 196, .62);
      transition: opacity .2s ease;}
.page-index .footer-legal-inline a:hover{opacity: .8;}
@media(max-width:768px) {
.page-index .footer-bottom{align-items: flex-start;
        flex-direction: column;}
.page-index .footer-inline-right{width: 100%;
        justify-content: space-between;}
}
.page-index .hero-video-section{position: relative !important;
      width: 100vw !important;
      height: 100vh !important;
      min-height: 680px !important;
      padding: 0 !important;
      margin: 0 !important;
      overflow: hidden !important;
      background: #050507 !important;
      display: block !important;
      isolation: isolate;}
.page-index .hero-video-section::before,.page-index .hero-video-section::after{display: none !important;
      content: none !important;}
.page-index .hero-video{position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center center;
      z-index: 1;
      background: #050507;}
.page-index .hero-video-overlay{position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background:
        linear-gradient(180deg,
          rgba(0, 0, 0, .10) 0%,
          rgba(0, 0, 0, .05) 42%,
          rgba(0, 0, 0, .30) 100%),
        radial-gradient(circle at 50% 42%, transparent 38%, rgba(0, 0, 0, .20) 100%);}
.page-index .replay-btn{position: absolute;
      right: 48px;
      bottom: 52px;
      z-index: 30;
      display: none;
      align-items: center;
      justify-content: center;
      gap: 8px;
      height: 48px;
      padding: 0 18px;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, .24);
      background: rgba(8, 10, 18, .36);
      color: #fff;
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      box-shadow: 0 14px 44px rgba(0, 0, 0, .28);
      cursor: pointer;
      font-family: inherit;
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .02em;
      transition: transform .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);}
.page-index .replay-btn:hover{transform: translateY(-3px);
      background: rgba(255, 255, 255, .13);
      border-color: rgba(255, 255, 255, .42);}
.page-index .replay-icon{display: inline-flex;
      font-size: 18px;
      line-height: 1;}
.page-index .replay-text{display: inline-flex;
      line-height: 1;}
.page-index .scroll-indicator{position: absolute;
      left: 50%;
      bottom: 38px;
      z-index: 28;
      transform: translateX(-50%);
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 9px;
      color: rgba(255, 255, 255, .82);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .18em;
      text-transform: uppercase;
      animation: scrollFloat 2.2s ease-in-out infinite;
      text-decoration: none;}
.page-index .scroll-indicator i{width: 12px;
      height: 12px;
      border-right: 2px solid rgba(255, 255, 255, .82);
      border-bottom: 2px solid rgba(255, 255, 255, .82);
      transform: rotate(45deg);
      display: block;}
@keyframes scrollFloat {

      0%,
      100% {
        transform: translateX(-50%) translateY(0)
      }

      50% {
        transform: translateX(-50%) translateY(10px)
      }
    }
@media(max-width:768px) {
.page-index .hero-video-section{min-height: 620px !important;}
.page-index .replay-btn{right: 20px;
        bottom: 74px;
        height: 44px;
        padding: 0 15px;}
.page-index .scroll-indicator{bottom: 28px;}
}
.page-index .hero-video-section{position: relative !important;
      width: 100vw !important;
      height: 100vh !important;
      min-height: 720px !important;
      padding: 0 !important;
      margin: 0 !important;
      overflow: hidden !important;
      background: #050507 !important;
      display: block !important;
      isolation: isolate;}
.page-index .hero-video{position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center center;
      z-index: 1;
      background: #050507;}
.page-index .hero-video-overlay{position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background:
        linear-gradient(90deg,
          rgba(5, 5, 7, .78) 0%,
          rgba(5, 5, 7, .58) 30%,
          rgba(5, 5, 7, .18) 62%,
          rgba(5, 5, 7, .08) 100%),
        linear-gradient(180deg,
          rgba(0, 0, 0, .06) 0%,
          rgba(0, 0, 0, .08) 48%,
          rgba(0, 0, 0, .45) 100%);}
.page-index .hero-copy-overlay{position: absolute;
      left: max(48px, calc((100vw - 1280px) / 2 + 32px));
      bottom: clamp(96px, 12vh, 150px);
      z-index: 12;
      max-width: 720px;
      color: #fff;}
.page-index .hero-copy-overlay .eyebrow{color: rgba(255, 255, 255, .72);
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .14em;
      text-transform: uppercase;
      margin-bottom: 20px;}
.page-index .hero-copy-overlay h1{font-size: clamp(46px, 5.3vw, 84px);
      line-height: 1.06;
      letter-spacing: -.065em;
      margin: 0 0 24px;
      font-weight: 800;
      color: #fff;
      text-shadow: 0 10px 44px rgba(0, 0, 0, .34);}
.page-index .hero-copy-overlay p{max-width: 700px;
      color: rgba(255, 255, 255, .74);
      font-size: clamp(15px, 1.25vw, 18px);
      line-height: 1.72;
      margin: 0 0 34px;
      word-break: keep-all;}
.page-index .hero-copy-overlay .hero-actions{display: flex;
      align-items: center;
      gap: 14px;
      flex-wrap: wrap;}
.page-index .hero-copy-overlay .btn{display: inline-flex;
      align-items: center;
      justify-content: center;
      height: 48px;
      padding: 0 22px;
      border-radius: 9px;
      font-size: 14px;
      font-weight: 800;
      letter-spacing: -.02em;
      transition: transform .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);}
.page-index .hero-copy-overlay .btn.primary{background: #fff;
      color: #08080c;
      border: 1px solid rgba(255, 255, 255, .88);}
.page-index .hero-copy-overlay .btn.secondary{background: rgba(255, 255, 255, .08);
      color: #fff;
      border: 1px solid rgba(255, 255, 255, .24);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);}
.page-index .hero-copy-overlay .btn:hover{transform: translateY(-3px);}
.page-index .replay-btn{position: absolute !important;
      right: 48px !important;
      bottom: 52px !important;
      z-index: 30 !important;}
.page-index .scroll-indicator{position: absolute !important;
      left: 50% !important;
      bottom: 38px !important;
      z-index: 28 !important;}
@media(max-width:1024px) {
.page-index .hero-copy-overlay{left: 32px;
        right: 32px;
        bottom: 112px;
        max-width: 680px;}
.page-index .hero-video-overlay{background:
          linear-gradient(90deg,
            rgba(5, 5, 7, .82) 0%,
            rgba(5, 5, 7, .52) 48%,
            rgba(5, 5, 7, .16) 100%),
          linear-gradient(180deg,
            rgba(0, 0, 0, .06) 0%,
            rgba(0, 0, 0, .10) 50%,
            rgba(0, 0, 0, .50) 100%);}
}
@media(max-width:768px) {
.page-index .hero-video-section{min-height: 680px !important;}
.page-index .hero-copy-overlay{left: 22px;
        right: 22px;
        bottom: 118px;}
.page-index .hero-copy-overlay h1{font-size: 40px;}
.page-index .hero-copy-overlay p{font-size: 14px;
        line-height: 1.65;}
.page-index .hero-copy-overlay .btn{width: 100%;}
.page-index .replay-btn{right: 20px !important;
        bottom: 74px !important;}
}
.page-index .geo-sec{padding:88px 0}
.page-index .geo-sec.alt{background:var(--surface-container-lowest)}
.page-index .geo-label{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--secondary-container);margin-bottom:18px}
.page-index .geo-sec h2{font-size:clamp(26px,3.6vw,40px);line-height:1.28;letter-spacing:-.04em;margin-bottom:22px}
.page-index .geo-lead{max-width:760px;color:rgba(207,204,196,.75);font-size:17px;line-height:1.75;margin-bottom:40px}
.page-index .geo-grid{display:grid;gap:20px;margin-top:12px}
.page-index .geo-grid.g2{grid-template-columns:repeat(2,1fr)}
.page-index .geo-grid.g3{grid-template-columns:repeat(3,1fr)}
.page-index .geo-grid.g4{grid-template-columns:repeat(4,1fr)}
.page-index .geo-card{border:1px solid rgba(150,146,136,.2);border-radius:20px;padding:28px;background:rgba(28,26,24,.5);transition:.3s var(--ease)}
.page-index .geo-card:hover{border-color:rgba(255,138,74,.42);transform:translateY(-4px)}
.page-index .geo-num{display:inline-block;font-size:13px;font-weight:800;color:var(--primary);margin-bottom:12px;letter-spacing:.02em}
.page-index .geo-card h3{font-size:19px;line-height:1.35;letter-spacing:-.03em;margin-bottom:10px}
.page-index .geo-card p{font-size:14.5px;line-height:1.7;color:rgba(207,204,196,.72)}
.page-index .geo-card p b{color:inherit;font-weight:800}
.page-index .geo-grid.g2 .geo-card h3{min-height:2.7em;display:flex;align-items:flex-start;margin-bottom:0}
@media(max-width:900px){
.page-index .geo-grid.g2 .geo-card h3{min-height:0;margin-bottom:10px}
}
.page-index .inv-card{display:flex;align-items:center;justify-content:center;text-align:center;padding:22px 18px;min-height:78px}
.page-index .inv-card h3{margin:0;font-size:17px;letter-spacing:-.02em}
.page-index .case-card{padding:34px 32px}
.page-index .case-tag{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.04em;color:rgba(207,204,196,.6);margin-bottom:22px}
.page-index .case-hero{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:6px}

.page-index .case-hero .unit{font-size:20px;font-weight:800;color:var(--secondary-container)}
.page-index .case-heroline{font-size:15px;font-weight:700;color:rgba(207,204,196,.82);margin-bottom:26px;letter-spacing:-.01em}
.page-index .case-stats{display:grid;gap:0;border-top:1px solid rgba(150,146,136,.18)}
.page-index .case-stat{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid rgba(150,146,136,.13)}
.page-index .case-stat .lbl{font-size:13.5px;color:rgba(207,204,196,.62);letter-spacing:-.01em}
.page-index .case-stat .val{font-size:18px;font-weight:800;color:var(--on-surface,#edece8);letter-spacing:-.02em;white-space:nowrap}
.page-index .case-stat .val em{font-style:normal;color:inherit}
.page-index .geo-more{display:inline-flex;align-items:center;gap:6px;color:var(--secondary-container);font-weight:800;font-size:15px;margin-top:28px}
.page-index .geo-faq{display:flex;flex-direction:column;gap:14px;max-width:820px}
.page-index .geo-qa{border:1px solid rgba(150,146,136,.2);border-radius:16px;padding:24px 26px;background:rgba(28,26,24,.5)}
.page-index .geo-qa h3{font-size:17px;letter-spacing:-.02em;margin-bottom:10px}
.page-index .geo-qa p{font-size:15px;line-height:1.75;color:rgba(207,204,196,.75)}
@media(max-width:960px){
.page-index .geo-grid.g3,.page-index .geo-grid.g4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
.page-index .geo-grid.g2,.page-index .geo-grid.g3,.page-index .geo-grid.g4{grid-template-columns:1fr}
.page-index .geo-sec{padding:60px 0}
}
.page-index .hero-copy-section{padding: 90px 0 80px;
      background: #fff;}
.page-index .hero-copy-section .container{max-width: 1280px;
      margin: 0 auto;
      padding: 0 32px;}
.page-index .hero-copy-section .eyebrow{font-size: 13px;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: #6b7280;
      margin-bottom: 20px;}
.page-index .hero-copy-section h1{font-size: clamp(42px, 5vw, 78px);
      line-height: 1.08;
      letter-spacing: -.05em;
      margin-bottom: 28px;}
.page-index .hero-copy-section p{max-width: 880px;
      font-size: 18px;
      line-height: 1.8;
      color: #4b5563;
      margin-bottom: 36px;}
.page-index .hero-copy-section .hero-actions{display: flex;
      gap: 14px;
      flex-wrap: wrap;}
.page-index header,.page-index .header,.page-index nav{border-bottom: none !important;
      box-shadow: none !important;}
.page-index header:after,.page-index .header:after,.page-index nav:after{display: none !important;
      content: none !important;}
.page-index header,.page-index .header{background: rgba(8, 10, 18, .45) !important;
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);}
.page-index .hero-video-overlay{background: rgba(0, 0, 0, .04) !important;}
.page-index .scroll-indicator{position: fixed !important;
      right: 36px !important;
      bottom: 36px !important;
      left: auto !important;
      z-index: 999 !important;
      transform: none !important;}
.page-index .hero-copy-section{background: #080b12 !important;
      position: relative;
      overflow: hidden;}
.page-index .hero-copy-section:before{content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 20% 20%, rgba(76, 130, 255, .18), transparent 40%),
        radial-gradient(circle at 80% 60%, rgba(0, 255, 220, .10), transparent 40%);
      pointer-events: none;}
.page-index .hero-copy-section .container{position: relative;
      z-index: 2;}
.page-index .hero-copy-section .eyebrow{color: #9db8ff !important;}
.page-index .hero-copy-section h1{color: #fff !important;
      background: linear-gradient(90deg, #ffffff, #8db8ff, #76ffe1);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;}
.page-index .hero-copy-section p{color: rgba(255, 255, 255, .72) !important;}
.page-index .hero-copy-section .btn.primary{background: linear-gradient(135deg, #7aa7ff, #5ff0dc) !important;
      color: #07111f !important;
      border: none !important;
      box-shadow: 0 0 30px rgba(95, 240, 220, .25);}
.page-index .hero-copy-section .btn.secondary{color: #fff !important;
      border: 1px solid rgba(255, 255, 255, .24) !important;
      background: rgba(255, 255, 255, .05) !important;}
.page-index .hero-video-section{margin-top: 80px !important;
      height: calc(100vh - 80px) !important;}
.page-index .scroll-indicator{position: fixed !important;
      left: 50% !important;
      right: auto !important;
      bottom: 28px !important;
      transform: translateX(-50%) !important;}
.page-index .hero-copy-section{background: #0b0f14 !important;}
.page-index .hero-copy-section:before{display: none !important;}
.page-index .hero-copy-section .eyebrow{color: #8fa0b8 !important;}
.page-index .hero-copy-section h1{background: none !important;
      -webkit-text-fill-color: #ffffff !important;
      color: #ffffff !important;}
.page-index .hero-copy-section p{color: rgba(255, 255, 255, .70) !important;}
.page-index .hero-copy-section .btn.primary{background: linear-gradient(135deg, #f5f7fb, #d8dde8) !important;
      color: #111827 !important;
      box-shadow: none !important;}
.page-index .hero-video-section{margin-top: 80px !important;
      height: calc(100vh - 80px) !important;}
.page-index .hero-video-overlay{background: rgba(0, 0, 0, 0) !important;}
.page-index .scroll-indicator{position: fixed !important;
      left: 50% !important;
      right: auto !important;
      bottom: 28px !important;
      transform: translateX(-50%) !important;
      z-index: 999 !important;}
.page-index .hero-copy-section{padding: 86px 0 92px !important;
      background: #090A10 !important;
      position: relative !important;
      overflow: hidden !important;}
.page-index .hero-copy-section:before{content: "" !important;
      display: block !important;
      position: absolute !important;
      inset: 0 !important;
      pointer-events: none !important;
      background:
        radial-gradient(circle at 12% 96%, rgba(206, 135, 255, .22), transparent 28%),
        radial-gradient(circle at 78% 40%, rgba(43, 224, 255, .08), transparent 34%),
        linear-gradient(180deg, #090A10 0%, #090A10 100%) !important;}
.page-index .hero-copy-section .container{position: relative !important;
      z-index: 2 !important;
      max-width: 1280px !important;
      margin: 0 auto !important;
      padding: 0 80px !important;}
.page-index .hero-copy-section .eyebrow{display: flex !important;
      align-items: center !important;
      gap: 20px !important;
      color: #F0A8FF !important;
      font-size: 22px !important;
      font-weight: 900 !important;
      letter-spacing: .10em !important;
      text-transform: uppercase !important;
      margin-bottom: 44px !important;}
.page-index .hero-copy-section .eyebrow:before{content: "" !important;
      width: 60px !important;
      height: 1px !important;
      background: rgba(240, 168, 255, .7) !important;
      display: block !important;}
.page-index .hero-copy-section h1{margin: 0 0 42px !important;
      font-size: clamp(40px, 4.6vw, 66px) !important;
      line-height: 1.14 !important;
      letter-spacing: -.045em !important;
      font-weight: 900 !important;
      color: #F4F1FA !important;
      background: none !important;
      -webkit-text-fill-color: initial !important;}
.page-index .hero-copy-section h1 br{display: block !important;}

.page-index .hero-copy-section p{max-width: 1120px !important;
      margin: 0 0 58px !important;
      color: #C6C0D0 !important;
      font-size: clamp(20px, 2.1vw, 30px) !important;
      line-height: 1.75 !important;
      letter-spacing: -.045em !important;
      word-break: keep-all !important;}
.page-index .hero-copy-section .hero-actions{display: flex !important;
      gap: 20px !important;
      flex-wrap: wrap !important;
      align-items: center !important;}
.page-index .hero-copy-section .btn{min-width: 286px !important;
      height: 82px !important;
      padding: 0 36px !important;
      border-radius: 9px !important;
      font-size: 20px !important;
      font-weight: 900 !important;
      letter-spacing: -.035em !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      text-decoration: none !important;}
.page-index .hero-copy-section .btn.primary{background: #E3A8FF !important;
      color: #42006A !important;
      border: 0 !important;
      box-shadow: 0 0 38px rgba(214, 146, 255, .52) !important;}
.page-index .hero-copy-section .btn.secondary{background: rgba(255, 255, 255, .035) !important;
      color: #E9E6EF !important;
      border: 1px solid rgba(255, 255, 255, .20) !important;
      box-shadow: none !important;}
@media(max-width:768px) {
.page-index .hero-copy-section .container{padding: 0 24px !important;}
.page-index .hero-copy-section .eyebrow{font-size: 13px !important;
        margin-bottom: 28px !important;}
.page-index .hero-copy-section .eyebrow:before{width: 36px !important;}
.page-index .hero-copy-section h1{font-size: 50px !important;}
.page-index .hero-copy-section p{font-size: 16px !important;}
.page-index .hero-copy-section .btn{width: 100% !important;
        min-width: 0 !important;
        height: 58px !important;
        font-size: 16px !important;}
}
.page-index .hero-copy-section{padding: 72px 0 84px !important;
      background: #090A10 !important;
      position: relative !important;
      overflow: hidden !important;}
.page-index .hero-copy-section .container{width: min(1180px, calc(100% - 48px)) !important;
      max-width: 1180px !important;
      margin: 0 auto !important;
      padding: 0 !important;}
.page-index .hero-copy-section .eyebrow{display: flex !important;
      align-items: center !important;
      gap: 16px !important;
      color: #F0A8FF !important;
      font-size: 14px !important;
      font-weight: 900 !important;
      letter-spacing: .12em !important;
      text-transform: uppercase !important;
      margin-bottom: 26px !important;}
.page-index .hero-copy-section .eyebrow:before{content: "" !important;
      width: 54px !important;
      height: 1px !important;
      background: rgba(240, 168, 255, .70) !important;
      display: block !important;
      flex: 0 0 auto !important;}
.page-index .hero-copy-section h1{margin: 0 0 28px !important;
      font-size: clamp(38px, 4.4vw, 62px) !important;
      line-height: 1.16 !important;
      letter-spacing: -.045em !important;
      font-weight: 900 !important;
      color: #F4F1FA !important;
      background: none !important;
      -webkit-text-fill-color: initial !important;}

.page-index .hero-copy-section p{max-width: 980px !important;
      margin: 0 0 40px !important;
      color: #C6C0D0 !important;
      font-size: clamp(17px, 1.55vw, 21px) !important;
      line-height: 1.72 !important;
      letter-spacing: -.035em !important;
      word-break: keep-all !important;}
.page-index .hero-copy-section .hero-actions{display: flex !important;
      gap: 16px !important;
      flex-wrap: wrap !important;
      align-items: center !important;}
.page-index .hero-copy-section .btn{min-width: 210px !important;
      height: 58px !important;
      padding: 0 28px !important;
      border-radius: 9px !important;
      font-size: 16px !important;
      font-weight: 900 !important;
      letter-spacing: -.035em !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      text-decoration: none !important;}
.page-index .hero-copy-section .btn.primary{background: #E3A8FF !important;
      color: #42006A !important;
      border: 0 !important;
      box-shadow: 0 0 30px rgba(214, 146, 255, .40) !important;}
.page-index .hero-copy-section .btn.secondary{background: rgba(255, 255, 255, .035) !important;
      color: #E9E6EF !important;
      border: 1px solid rgba(255, 255, 255, .20) !important;
      box-shadow: none !important;}
.page-index .scroll-indicator{position: fixed !important;
      left: 50% !important;
      right: auto !important;
      bottom: 28px !important;
      transform: translateX(-50%) !important;
      z-index: 2147483000 !important;
      pointer-events: auto !important;
      opacity: 1 !important;
      visibility: visible !important;
      mix-blend-mode: normal !important;}
.page-index .scroll-indicator span,.page-index .scroll-indicator i{position: relative !important;
      z-index: 2147483001 !important;}
body.page-index .section,body.page-index main,body.page-index footer{position: relative;}
@media(max-width:768px) {
.page-index .hero-copy-section{padding: 56px 0 70px !important;}
.page-index .hero-copy-section .container{width: min(100% - 40px, 1180px) !important;}
.page-index .hero-copy-section .eyebrow{font-size: 12px !important;
        margin-bottom: 22px !important;}
.page-index .hero-copy-section .eyebrow:before{width: 34px !important;}
.page-index .hero-copy-section h1{font-size: 42px !important;}
.page-index .hero-copy-section p{font-size: 15px !important;}
.page-index .hero-copy-section .btn{width: 100% !important;
        min-width: 0 !important;
        height: 54px !important;
        font-size: 15px !important;}
}
.page-index .hero-video-section{margin-top: 72px !important;
      height: calc(100vh - 72px) !important;}
.page-index .hero-video-overlay{background: rgba(0, 0, 0, 0) !important;}
.page-index .scroll-indicator{position: fixed !important;
      left: 50% !important;
      right: auto !important;
      bottom: 32px !important;
      transform: translateX(-50%) !important;
      z-index: 2147483647 !important;
      pointer-events: auto !important;
      opacity: 1 !important;
      visibility: visible !important;}
.page-index .hero-copy-section{position: relative !important;
      z-index: 5 !important;
      padding: 72px 0 90px !important;
      display: block !important;
      background:
        radial-gradient(circle at 18% 0%, rgba(255, 110, 40, .18), transparent 34%),
        radial-gradient(circle at 78% 8%, rgba(216, 213, 205, .10), transparent 32%),
        var(--surface-container-lowest) !important;
      overflow: hidden !important;}
.page-index .hero-copy-section:before{display: none !important;
      content: none !important;}
.page-index .hero-copy-section .container{width: var(--wrap) !important;
      max-width: var(--wrap) !important;
      margin: 0 auto !important;
      padding: 0 !important;
      position: relative !important;
      z-index: 2 !important;}
.page-index .hero-copy-section .eyebrow{display: inline-flex !important;
      align-items: center !important;
      gap: 12px !important;
      color: var(--primary) !important;
      font-size: 14px !important;
      font-weight: 800 !important;
      letter-spacing: .12em !important;
      text-transform: uppercase !important;
      margin-bottom: 28px !important;}
.page-index .hero-copy-section .eyebrow:before{content: "" !important;
      width: 42px !important;
      height: 1px !important;
      background: linear-gradient(90deg, var(--primary), transparent) !important;
      display: block !important;
      flex: 0 0 auto !important;}
.page-index .hero-copy-section h1{max-width: 22ch !important;
      font-size: clamp(38px, 4.4vw, 62px) !important;
      line-height: 1.16 !important;
      font-weight: 800 !important;
      letter-spacing: -.045em !important;
      margin: 0 0 28px !important;
      color: var(--on-surface) !important;
      background: none !important;
      -webkit-text-fill-color: initial !important;}

.page-index .hero-copy-section p{max-width: 780px !important;
      color: rgba(207, 204, 196, .82) !important;
      font-size: 18px !important;
      line-height: 1.7 !important;
      letter-spacing: -.018em !important;
      margin: 0 0 36px !important;
      word-break: keep-all !important;}
.page-index .hero-copy-section .hero-actions{display: flex !important;
      gap: 14px !important;
      flex-wrap: wrap !important;
      align-items: center !important;}
.page-index .hero-copy-section .btn{height: 54px !important;
      min-width: 190px !important;
      border-radius: 9px !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 8px !important;
      padding: 0 24px !important;
      font-size: 14px !important;
      font-weight: 800 !important;
      transition: .25s var(--ease) !important;
      border: 1px solid transparent !important;
      text-decoration: none !important;}
.page-index .hero-copy-section .btn.primary{background: var(--primary) !important;
      color: var(--on-primary) !important;
      box-shadow: none !important;
      border-color: transparent !important;}
.page-index .hero-copy-section .btn.secondary{background: rgba(28, 26, 24, .58) !important;
      border-color: rgba(150, 146, 136, .28) !important;
      color: var(--on-surface) !important;
      backdrop-filter: blur(16px) !important;
      -webkit-backdrop-filter: blur(16px) !important;
      box-shadow: none !important;}
.page-index .hero-copy-section .btn:hover{transform: translateY(-4px) !important;}
@media(max-width:768px) {
.page-index .hero-video-section{margin-top: 62px !important;
        height: calc(100vh - 62px) !important;}
.page-index .hero-copy-section{padding: 54px 0 72px !important;}
.page-index .hero-copy-section .container{width: var(--wrap) !important;
        max-width: var(--wrap) !important;}
.page-index .hero-copy-section h1{font-size: clamp(22px, 6.4vw, 30px) !important;
        max-width: 22ch !important;}
.page-index .hero-copy-section p{font-size: 16px !important;}
.page-index .hero-copy-section .hero-actions{flex-direction: column !important;}
.page-index .hero-copy-section .btn{width: 100% !important;}
}
@media(max-width:768px) {
.page-index .hero-video-section{height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 16 / 9;}
.page-index .hero-video-section .scroll-indicator{display: none !important;}
.page-index .hero-video-section .replay-btn{bottom: 12px !important; right: 12px !important; height: 38px !important; padding: 0 12px !important; font-size: 12px !important;}
}
.page-index .nl-form{max-width:860px;margin-top:30px;display:flex;flex-direction:column;gap:10px}
.page-index .nl-form input[type="email"],.page-index .nl-form input[type="text"]{height:50px;border-radius:13px;border:1.5px solid rgba(150,146,136,.35);background:rgba(12,11,10,.6);color:var(--on-surface,#edece8);font-family:inherit;font-size:14.5px;padding:0 17px;letter-spacing:-.01em;width:100%;min-width:0}
.page-index .nl-form input::placeholder{color:rgba(207,204,196,.5)}
.page-index .nl-form input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 24px -10px var(--primary)}
.page-index .nl-row3{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px}
.page-index .nl-policy{display:flex;align-items:flex-start;gap:9px;margin-top:2px;font-size:13px;color:rgba(207,204,196,.75);cursor:pointer;line-height:1.6}
.page-index .nl-policy input{width:16px;height:16px;margin-top:2px;accent-color:var(--primary);cursor:pointer;flex:0 0 auto}
.page-index .nl-policy-link{background:none;border:none;padding:0;font:inherit;color:var(--primary);text-decoration:underline;cursor:pointer}
.page-index .nl-policy-text{padding:13px 15px;border:1px solid rgba(150,146,136,.28);border-radius:12px;background:rgba(12,11,10,.5);font-size:12.5px;line-height:1.7;color:rgba(207,204,196,.7)}
.page-index .nl-error{font-size:13px;font-weight:700;color:var(--tertiary,#d8d5cd);min-height:0}
.page-index .nl-error:empty{display:none}
.page-index .nl-form .btn{align-self:flex-start;margin-top:2px}
@media(max-width:760px){
.page-index .nl-row3{grid-template-columns:1fr 1fr}
.page-index .nl-row3 input[name="email"]{grid-column:1/-1}
}
@media(max-width:480px){
.page-index .nl-row3{grid-template-columns:1fr}
}
.page-index #home-popups{position: fixed; inset: 0; z-index: 99999; display: none; align-items: center; justify-content: center; gap: 20px; flex-wrap: wrap; padding: 24px; pointer-events: none}
.page-index #home-popups.show{display: flex}
.page-index #home-popups .hp-card{pointer-events: auto; display: flex; flex-direction: column; width: 440px; max-width: calc(100vw - 40px); max-height: calc(100vh - 48px); border-radius: 18px; overflow: hidden; background: #1c1a18; border: 1px solid rgba(150,146,136,.28); box-shadow: 0 30px 80px -16px rgba(0,0,0,.85)}
.page-index #home-popups .hp-card .hp-link{display: block; line-height: 0}
.page-index #home-popups .hp-card img{display: block; width: 100%; height: auto; max-height: 72vh; object-fit: contain; background: #0c0b0a}
.page-index #home-popups .hp-card .hp-bar{display: flex; align-items: center; justify-content: space-between; background: rgba(12,11,10,.96); padding: 10px 14px; flex: 0 0 auto}
.page-index #home-popups .hp-card .hp-bar button{background: transparent; border: none; color: rgba(207,204,196,.85); font-family: inherit; font-size: 13px; font-weight: 700; cursor: pointer; padding: 6px 8px; letter-spacing: -.01em}
.page-index #home-popups .hp-card .hp-bar button:hover{color: #ff8a4a}
.page-index .nav-dd{position:relative;display:inline-flex;align-items:center;height:72px}
@media(max-width:900px){
.page-index .nav-sub{display:none}
}

/* ===== solutions.css → .page-solutions ===== */
.page-solutions .hub-card{padding:30px 30px 28px}
.page-solutions .hub-card .icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(255,138,74,.07);border:1px solid rgba(255,138,74,.16);margin-bottom:22px}
.page-solutions .hub-card .icon svg{width:24px;height:24px;display:block}
.page-solutions .hub-card h2{margin-bottom:10px}
.page-solutions .hub-card p{margin-bottom:22px}
.page-solutions .hub-grid[data-cols="1열"]{grid-template-columns:1fr}
.page-solutions .hub-grid[data-cols="4열"]{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){
.page-solutions .hub-grid[data-cols]{grid-template-columns:1fr}
}

/* ===== solution-reach.css → .page-reach ===== */
.page-reach .btn{white-space:nowrap}
.page-reach .r-hero{padding:72px 0 80px}
.page-reach .r-hero .wrap>div{max-width:800px}
.page-reach .r-hero h1{font-size:clamp(32px,4.6vw,52px);line-height:1.14;letter-spacing:-.05em;margin-bottom:26px}
.page-reach .r-hero .lead{color:rgba(207,204,196,.78);font-size:17.5px;line-height:1.8;margin-bottom:36px}
.page-reach .r-sec h2{font-size:clamp(26px,3.6vw,40px);line-height:1.22;letter-spacing:-.045em;margin-bottom:20px;text-wrap:balance}
.page-reach .r-sec .lead{color:rgba(207,204,196,.75);font-size:17px;line-height:1.8;max-width:620px}
.page-reach .split{display:grid;grid-template-columns:13fr 7fr;gap:64px;align-items:center;margin-top:56px}
.page-reach .split.rev{grid-template-columns:.95fr 1.05fr}
.page-reach .chart-module{border:1px solid rgba(150,146,136,.22);border-radius:22px;background:rgba(28,26,24,.45);padding:30px 28px 24px}
.page-reach .chart-module .cm-title{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800;letter-spacing:-.01em;color:var(--on-surface);margin-bottom:22px}
.page-reach .chart-module .cm-title::before{content:"";width:5px;height:16px;border-radius:3px;background:var(--primary)}
.page-reach .chart-module svg{display:block;width:100%;height:auto}
.page-reach .cm-legend{display:flex;gap:22px;justify-content:center;margin-top:18px;font-size:13px;font-weight:700;color:rgba(207,204,196,.75)}
.page-reach .cm-legend i{display:inline-block;width:18px;height:3px;border-radius:2px;vertical-align:middle;margin-right:8px}
.page-reach .cm-note{margin-top:14px;font-size:12px;color:rgba(207,204,196,.5);text-align:center}
.page-reach .flist{list-style:none;display:flex;flex-direction:column;gap:28px}
.page-reach .flist li{display:flex;align-items:flex-start;gap:16px}
.page-reach .flist .fi{flex:0 0 auto;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(255,138,74,.09);border:1px solid rgba(255,138,74,.16)}
.page-reach .flist .fi svg{width:20px;height:20px}
.page-reach .flist b{display:block;font-size:16.5px;letter-spacing:-.02em;margin-bottom:4px}
.page-reach .flist p{font-size:13.5px;line-height:1.6;color:rgba(207,204,196,.65)}
.page-reach .donut-duo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.page-reach .donut-card{border:1px solid rgba(150,146,136,.2);border-radius:20px;background:rgba(28,26,24,.45);padding:28px 20px 24px;text-align:center}
.page-reach .donut-card .dc-label{font-size:13px;font-weight:800;letter-spacing:.04em;color:rgba(207,204,196,.65);margin-bottom:18px}
.page-reach .donut-wrap{position:relative;width:170px;height:170px;margin:0 auto}
.page-reach .donut-wrap svg{display:block;width:100%;height:100%}
.page-reach .donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}
.page-reach .donut-center span{font-size:12px;font-weight:700;color:rgba(207,204,196,.65);line-height:1.4}
.page-reach .donut-center b{font-size:26px;letter-spacing:-.04em}
.page-reach .donut-card.c1 .donut-center b{color:var(--primary)}
.page-reach .donut-card.c2 .donut-center b{color:var(--secondary-container)}
.page-reach .blind{position:relative;padding:12px 0 0}
.page-reach .blind-net{position:absolute;inset:-30px -20px auto;z-index:0;pointer-events:none;opacity:.5}
.page-reach .blind>*:not(.blind-net){position:relative;z-index:1}
.page-reach .blind .bl-eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.05em;color:var(--tertiary);padding:6px 13px;border:1px solid rgba(255,177,195,.3);border-radius:999px;margin-bottom:22px}
.page-reach .blind .bl-num{font-size:clamp(38px,4.2vw,52px);font-weight:800;letter-spacing:-.05em;line-height:1.05;background:linear-gradient(100deg,var(--primary),var(--secondary-container));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:10px}
.page-reach .blind .bl-sub{font-size:14.5px;font-weight:700;color:rgba(207,204,196,.6);margin-bottom:22px}
.page-reach .blind .bl-copy{font-size:16.5px;line-height:1.8;color:rgba(228,225,233,.88);max-width:420px}
.page-reach .src-line{margin-top:48px;padding-top:22px;border-top:1px solid rgba(74,70,63,.3);font-size:12.5px;line-height:1.9;color:rgba(207,204,196,.68)}
.page-reach .src-line b{font-weight:800;color:rgba(207,204,196,.65);margin-right:10px}
@media(max-width:960px){
.page-reach .r-hero .wrap,.page-reach .split,.page-reach .split.rev{grid-template-columns:1fr;gap:44px}
.page-reach .donut-duo{max-width:520px}
}
@media(max-width:560px){
.page-reach .donut-duo{grid-template-columns:1fr}
}

/* ===== solution-targeting.css → .page-targeting ===== */
.page-targeting .btn{white-space:nowrap}
.page-targeting .case-link .tag{white-space:nowrap}
.page-targeting .cs-card{display:flex;flex-direction:column;border:1px solid rgba(160,146,128,.2);border-radius:18px;background:rgba(28,26,24,.5);padding:32px 32px 16px;transition:.3s var(--ease)}
.page-targeting .cs-card:hover{border-color:rgba(255,138,74,.4);transform:translateY(-4px)}
.page-targeting .cs-meta{font-size:13px;font-weight:700;color:rgba(207,204,196,.55);margin-bottom:20px}
.page-targeting 
.page-targeting .cs-sub{font-size:15px;font-weight:800;letter-spacing:-.02em;margin-top:12px}
.page-targeting .cs-rows{margin-top:28px;border-top:1px solid rgba(74,70,63,.4)}
.page-targeting .cs-note{margin-top:auto}
.page-targeting .cs-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:14px 0;border-bottom:1px solid rgba(74,70,63,.28);font-size:14px}
.page-targeting .cs-row span{color:rgba(207,204,196,.7)}
.page-targeting .cs-row .rsub{display:block;font-style:normal;font-size:11.5px;color:rgba(207,204,196,.5);margin-top:2px}
.page-targeting .cs-row b{font-weight:800;white-space:nowrap;text-align:right}
.page-targeting .cs-note{padding:13px 0 6px;font-size:12px;color:rgba(207,204,196,.5)}
.page-targeting .cs-more{display:inline-flex;align-items:center;gap:8px;margin-top:28px;font-size:15px;font-weight:800;color:var(--secondary-container);transition:.25s var(--ease)}
.page-targeting .cs-more:hover{gap:12px;text-decoration:underline}
.page-targeting .r-hero{padding:72px 0 80px}
.page-targeting .r-hero .wrap>div{max-width:800px}
.page-targeting .r-hero h1{font-size:clamp(32px,4.6vw,52px);line-height:1.14;letter-spacing:-.05em;margin-bottom:26px}
.page-targeting .r-hero .lead{color:rgba(207,204,196,.78);font-size:17.5px;line-height:1.8;margin-bottom:36px}
.page-targeting .seg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}
.page-targeting .seg-mod{border:1px solid rgba(150,146,136,.18);border-radius:16px;padding:26px 24px;background:rgba(28,26,24,.42);transition:.3s var(--ease)}
.page-targeting .seg-mod:hover{border-color:rgba(255,138,74,.4)}
.page-targeting .seg-mod .mi{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(255,138,74,.09);border:1px solid rgba(255,138,74,.16);margin-bottom:16px}
.page-targeting .seg-mod .mi svg{width:19px;height:19px}
.page-targeting .seg-mod h3{font-size:17px;letter-spacing:-.02em;margin-bottom:6px}
.page-targeting .seg-mod .def{font-size:13.5px;line-height:1.65;color:rgba(207,204,196,.68);margin-bottom:18px;min-height:44px}
.page-targeting .seg-mod .tags{display:flex;flex-wrap:wrap;gap:7px}
.page-targeting .seg-mod .tag{font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;background:rgba(255,138,74,.06);color:rgba(207,204,196,.8);border:1px solid rgba(150,146,136,.2)}
.page-targeting .dyn-stage{margin-top:48px}
.page-targeting .chips-title{text-align:center;font-size:15px;font-weight:800;letter-spacing:-.02em;color:var(--on-surface);margin-bottom:16px}
.page-targeting .env-chips{display:flex;flex-wrap:nowrap;justify-content:center;gap:8px;margin:0 auto 56px}
@media(max-width:900px){
.page-targeting .env-chips{flex-wrap:wrap;max-width:520px}
}
.page-targeting .dchip{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:11.5px;font-weight:700;color:rgba(228,225,233,.85);padding:5px 10px;border-radius:999px;border:1px solid rgba(150,146,136,.22);background:rgba(28,26,24,.45)}
.page-targeting .dchip.w{border-color:rgba(216,213,205,.26);background:rgba(216,213,205,.05)}
.page-targeting .dchip.e{border-color:rgba(255,138,74,.28);background:rgba(255,138,74,.05)}
.page-targeting .dchip svg{flex:0 0 auto;width:14px;height:14px}
.page-targeting .maprow{position:relative;display:grid;grid-template-columns:1fr minmax(300px,430px) 1fr;gap:22px 36px;align-items:center}
.page-targeting #linkLayer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.page-targeting .kr-map{position:relative}
.page-targeting .kr-map svg{display:block;width:100%;height:auto}
.page-targeting .mnode{position:absolute;transform:translate(-50%,-50%);z-index:2}
.page-targeting .mnode .dot{width:10px;height:10px;border-radius:50%;background:var(--secondary-container);border:2px solid rgba(12,11,10,.9);box-shadow:0 0 0 6px rgba(216,213,205,.25);margin:0 auto}
.page-targeting .mnode .tag{margin-top:7px;white-space:nowrap;background:rgba(12,11,10,.82);border:1px solid rgba(216,213,205,.22);border-radius:9px;padding:7px 10px;text-align:left}
.page-targeting .mnode .tag b{display:block;font-size:12px;letter-spacing:-.02em}
.page-targeting .mnode .tag b i{font-style:normal;color:var(--secondary-container);margin-left:5px;font-weight:700;font-size:11px}
.page-targeting .mnode .tag > span{display:block;font-size:10.5px;color:rgba(207,204,196,.68);margin-top:2px}
.page-targeting .mnode.flip .tag{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);margin-top:0}
.page-targeting .colL{display:flex;flex-direction:column;gap:26px;align-items:flex-end;justify-content:center}
.page-targeting .colR{display:flex;align-items:center;justify-content:flex-start}
.page-targeting .adv{position:relative;width:min(300px,100%);margin:0}
.page-targeting .adv .shot{position:relative;aspect-ratio:16/9;border-radius:7px;overflow:hidden;border:3px solid #17171d;outline:1px solid rgba(150,146,136,.3);background:#101018;box-shadow:0 10px 26px rgba(0,0,0,.4)}
.page-targeting .adv .shot::after{content:"";position:absolute;inset:0;border-radius:4px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.45);pointer-events:none}
.page-targeting .adv::after{content:"";position:absolute;left:50%;bottom:-5px;transform:translateX(-50%);width:34px;height:2.5px;border-radius:999px;background:rgba(150,146,136,.4)}
.page-targeting .adv .shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-targeting .adv .cond{position:absolute;top:9px;right:10px;white-space:nowrap;font-size:9.5px;font-weight:800;padding:3px 9px;border-radius:999px;background:rgba(10,10,16,.6);border:1px solid rgba(216,213,205,.4);color:var(--secondary-container)}
@media(max-width:1020px){
.page-targeting .maprow{display:flex;flex-direction:column;gap:20px;align-items:stretch}
.page-targeting .kr-map{order:0;width:min(430px,100%);margin:0 auto}
.page-targeting .colL{order:1;align-items:center;width:100%}
.page-targeting .colR{order:2;justify-content:center;width:100%}
.page-targeting .adv{width:min(300px,90vw)}
.page-targeting #linkLayer{display:none}
}
.page-targeting .dyn-cap{margin-top:18px;text-align:center;font-size:12.5px;color:rgba(207,204,196,.62)}
@media(max-width:1020px){
.page-targeting .dyn-flow{grid-template-columns:1fr;row-gap:14px}
.page-targeting .conn{display:none}
}
@media(max-width:960px){
.page-targeting .seg-grid{grid-template-columns:1fr}
.page-targeting .seg-mod .def{min-height:0}
}

/* ===== solution-crossdevice.css → .page-crossdevice ===== */
.page-crossdevice .xj{max-width:1080px;margin:0 auto;padding:34px 10px 8px}
.page-crossdevice .xj-head{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:10px}
.page-crossdevice .xj-head .ln{flex:0 1 120px;height:1px;background:linear-gradient(90deg,transparent,rgba(150,146,136,.5))}
.page-crossdevice .xj-head .ln.r{background:linear-gradient(90deg,rgba(150,146,136,.5),transparent)}
.page-crossdevice .xj-title{white-space:nowrap;font-size:14px;font-weight:800;letter-spacing:.14em;color:var(--on-surface)}
.page-crossdevice .xj-title b{color:var(--secondary-container)}
.page-crossdevice .xj-sub{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12.5px;font-weight:700;color:rgba(207,204,196,.65);margin-bottom:34px}
.page-crossdevice .xj-sub .who{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;border:1px solid rgba(216,213,205,.3);color:var(--secondary-container);background:rgba(216,213,205,.05)}
.page-crossdevice .xj-sub .who svg{width:12px;height:12px}
.page-crossdevice .xj-track{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:0 22px}
.page-crossdevice .xj-track::before{content:"";position:absolute;left:calc(12.5% - 8px);right:calc(12.5% - 8px);top:9px;height:1.5px;background:linear-gradient(90deg,var(--secondary-container),var(--primary) 38%,var(--primary) 62%,var(--secondary-container));opacity:.55}

.page-crossdevice .xj-stop{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.page-crossdevice .xj-node{position:relative;z-index:1;width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--secondary-container);box-shadow:0 0 0 4px rgba(216,213,205,.12);margin-bottom:16px}
.page-crossdevice .xj-stop.mo .xj-node{border-color:var(--primary);box-shadow:0 0 0 4px rgba(255,138,74,.12)}
.page-crossdevice .xj-time{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--on-surface);line-height:1}
.page-crossdevice .xj-phase{font-size:11px;font-weight:800;letter-spacing:.12em;color:rgba(207,204,196,.6);margin:7px 0 14px}
.page-crossdevice .xj-scene{position:relative;width:100%;aspect-ratio:2/3;border-radius:12px;overflow:hidden;border:1px solid rgba(150,146,136,.25);background:#101018}
.page-crossdevice .xj-scene img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-crossdevice .xj-dev{position:absolute;z-index:2;top:8px;left:8px;pointer-events:none;font-size:10px;font-weight:800;letter-spacing:.08em;padding:3px 9px;border-radius:999px;background:rgba(10,10,16,.72);color:var(--secondary-container);border:1px solid rgba(216,213,205,.4)}
.page-crossdevice .xj-stop.mo .xj-dev{color:var(--primary);border-color:rgba(255,138,74,.45)}
.page-crossdevice .xj-ad{position:absolute;z-index:2;left:8px;right:8px;bottom:8px;pointer-events:none;display:flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;color:rgba(228,225,233,.92);padding:5px 9px;border-radius:8px;background:rgba(10,10,16,.72);border:1px solid rgba(150,146,136,.3)}
.page-crossdevice .xj-ad::before{content:"";flex:0 0 auto;width:6px;height:6px;border-radius:2px;background:linear-gradient(135deg,var(--secondary-container),var(--primary))}
.page-crossdevice .xj-touch{margin-top:13px;font-size:13px;font-weight:800;letter-spacing:-.02em;color:var(--secondary-container)}
.page-crossdevice .xj-stop.mo .xj-touch{color:var(--primary)}
.page-crossdevice .xj-place{margin-top:3px;font-size:12px;color:rgba(207,204,196,.6)}
@media(max-width:860px){
.page-crossdevice .xj-track{grid-template-columns:repeat(2,1fr);gap:30px 18px}
.page-crossdevice .xj-track::before{display:none}
.page-crossdevice .xj-node{display:none}
}
@media(max-width:480px){
.page-crossdevice .xj-track{grid-template-columns:1fr}
}
.page-crossdevice .cs-card{display:flex;flex-direction:column;border:1px solid rgba(160,146,128,.2);border-radius:18px;background:rgba(28,26,24,.5);padding:32px 32px 16px;transition:.3s var(--ease)}
.page-crossdevice .cs-card:hover{border-color:rgba(255,138,74,.4);transform:translateY(-4px)}
.page-crossdevice .cs-meta{font-size:13px;font-weight:700;color:rgba(207,204,196,.55);margin-bottom:20px}
.page-crossdevice 
.page-crossdevice .cs-sub{font-size:15px;font-weight:800;letter-spacing:-.02em;margin-top:12px}
.page-crossdevice .cs-rows{margin-top:28px;border-top:1px solid rgba(74,70,63,.4)}
.page-crossdevice .cs-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:14px 0;border-bottom:1px solid rgba(74,70,63,.28);font-size:14px}
.page-crossdevice .cs-row span{color:rgba(207,204,196,.7)}
.page-crossdevice .cs-row b{font-weight:800;white-space:nowrap;text-align:right}
.page-crossdevice .cs-note{margin-top:auto;padding:13px 0 6px;font-size:12px;line-height:1.7;color:rgba(207,204,196,.5);text-align:left}
.page-crossdevice .cs-note p{margin:0}
.page-crossdevice .cs-more{display:inline-flex;align-items:center;gap:8px;margin-top:28px;font-size:15px;font-weight:800;color:var(--secondary-container);transition:.25s var(--ease)}
.page-crossdevice .cs-more:hover{gap:12px;text-decoration:underline}
.page-crossdevice .xdev-fig figcaption.xj-takeaway{margin-top:38px;margin-bottom:14px;font-size:clamp(18px,2.2vw,23px);font-weight:800;letter-spacing:-.03em;line-height:1.55;color:var(--on-surface)}
.page-crossdevice .xj-fig-gap{height:0;margin-bottom:52px}

/* ===== solution-measurement.css → .page-measurement ===== */
.page-measurement .btn{white-space:nowrap}
.page-measurement .fw-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:52px;border:1px solid rgba(150,146,136,.22);border-radius:20px;background:rgba(28,26,24,.5);overflow:hidden}
.page-measurement .fw-col{padding:30px 28px 22px;border-left:1px solid rgba(74,70,63,.32);display:flex;flex-direction:column}
.page-measurement .fw-col:first-child{border-left:none}
.page-measurement .fw-col .fn{font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--secondary-container);margin-bottom:14px}
.page-measurement .fw-col .fe{display:block;font-size:15.5px;font-weight:800;letter-spacing:.05em;color:var(--on-surface)}
.page-measurement .fw-col .fk{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;font-weight:700;color:rgba(207,204,196,.62);margin:5px 0 14px}
.page-measurement .fw-col .fk i{font-style:normal;font-size:11px;font-weight:800;letter-spacing:.04em;color:var(--primary);padding:3px 10px;border-radius:999px;border:1px solid rgba(255,138,74,.32);background:rgba(255,138,74,.05)}
.page-measurement .fw-col .fd{font-size:13px;line-height:1.65;color:rgba(207,204,196,.65);margin-bottom:18px}
.page-measurement .fw-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 0 15px;border-top:1px solid rgba(74,70,63,.28)}
.page-measurement .fw-row .rt{font-size:14px;font-weight:800;letter-spacing:-.02em;color:var(--on-surface)}
.page-measurement .fw-row .ri{margin-top:5px;font-size:12.5px;line-height:1.6;color:rgba(207,204,196,.62)}
.page-measurement .fw-row .tk{flex:0 0 auto;white-space:nowrap;font-size:10.5px;font-weight:800;letter-spacing:.08em;color:var(--secondary-container);padding:3px 9px;border-radius:999px;border:1px solid rgba(216,213,205,.3);background:rgba(216,213,205,.05)}
@media(max-width:920px){
.page-measurement .fw-grid{grid-template-columns:1fr}
.page-measurement .fw-col{border-left:none;border-top:1px solid rgba(74,70,63,.32)}
.page-measurement .fw-col:first-child{border-top:none}
}
.page-measurement .fw-join{display:flex;flex-direction:column;align-items:center;margin:0 auto}
.page-measurement .fw-join .jl{width:1.5px;height:26px;background:linear-gradient(rgba(150,146,136,.5),rgba(150,146,136,.2))}
.page-measurement .fw-join .jt{font-size:11px;font-weight:800;letter-spacing:.16em;color:rgba(207,204,196,.55);margin:8px 0}
.page-measurement .fw-base{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(150,146,136,.22);border-top:2px solid rgba(216,213,205,.35);border-radius:16px;background:rgba(12,11,10,.6);overflow:hidden}
.page-measurement .fw-m{padding:24px 26px 26px;border-left:1px solid rgba(74,70,63,.3)}
.page-measurement .fw-m:first-child{border-left:none}
.page-measurement .fw-m .mn{font-size:14px;font-weight:800;letter-spacing:.08em;color:var(--secondary-container)}
.page-measurement .fw-m .me{font-size:10.5px;font-weight:700;letter-spacing:.06em;color:rgba(207,204,196,.45);margin:2px 0 8px}
.page-measurement .fw-m .md{font-size:12px;font-weight:700;color:rgba(207,204,196,.55);margin-bottom:9px}
.page-measurement .fw-m .mr{font-size:13px;line-height:1.65;color:rgba(228,225,233,.82)}
.page-measurement .fw-m .mmp{margin-top:10px;font-size:11.5px;color:rgba(207,204,196,.45)}
@media(max-width:860px){
.page-measurement .fw-base{grid-template-columns:1fr}
.page-measurement .fw-m{border-left:none;border-top:1px solid rgba(74,70,63,.3)}
.page-measurement .fw-m:first-child{border-top:none}
}
.page-measurement .cs-card{display:flex;flex-direction:column;border:1px solid rgba(160,146,128,.2);border-radius:18px;background:rgba(28,26,24,.5);padding:32px 32px 16px;transition:.3s var(--ease)}
.page-measurement .cs-card:hover{border-color:rgba(255,138,74,.4);transform:translateY(-4px)}
.page-measurement .cs-meta{font-size:13px;font-weight:700;color:rgba(207,204,196,.55);margin-bottom:20px}
.page-measurement .cs-kpi-desc{margin-top:10px;font-size:12.5px;line-height:1.6;color:rgba(207,204,196,.55)}
.page-measurement 
.page-measurement .cs-sub{font-size:15px;font-weight:800;letter-spacing:-.02em;margin-top:12px}
.page-measurement .cs-rows{margin-top:28px;border-top:1px solid rgba(74,70,63,.4)}
.page-measurement .cs-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:14px 0;border-bottom:1px solid rgba(74,70,63,.28);font-size:14px}
.page-measurement .cs-row span{color:rgba(207,204,196,.7);font-weight:700}
.page-measurement .cs-row b{flex:0 0 auto;font-weight:800;white-space:nowrap;text-align:right;font-size:16px}
.page-measurement .cs-row .rc{display:block;margin-top:4px;font-size:12px;line-height:1.55;font-weight:400;color:rgba(207,204,196,.5)}
.page-measurement .cs-note{margin-top:auto;padding:13px 0 6px;font-size:12px;line-height:1.7;color:rgba(207,204,196,.5);text-align:left}
.page-measurement .cs-note p{margin:0}
.page-measurement .cs-more{display:inline-flex;align-items:center;gap:8px;margin-top:28px;font-size:15px;font-weight:800;color:var(--secondary-container);transition:.25s var(--ease)}
.page-measurement .cs-more:hover{gap:12px;text-decoration:underline}
/* ===== v25: 모바일 가로 스크롤 제거 ===== */
/* about — 커버리지 필드(고정 폭 1052px 스테이지)를 좁은 화면에서 더 축소해 뷰포트 안에 수용 */
@media(max-width:600px){
  /* 방사형 배치를 풀고 읽을 수 있는 칩 목록으로 전환 (4px 축소 텍스트 방지) */
  .cov-field{height:auto;margin-top:0;overflow:visible}
  .cov-stage{position:static;width:auto;height:auto;transform:none;display:flex;flex-wrap:wrap;justify-content:center;gap:9px}
  .cov-ring{display:none}
  .cov-core{position:static;transform:none;width:100%;margin-bottom:6px}
  .cov-core b{font-size:21px}
  .cov-inv{position:static;transform:none;flex-direction:row;gap:7px;padding:8px 13px;border:1px solid rgba(255,138,74,.3);border-radius:999px;background:rgba(255,138,74,.07)}
  .cov-inv b{font-size:13px}
  .cov-pt{position:static;transform:none;padding:7px 12px;border:1px solid rgba(150,146,136,.24);border-radius:999px;font-size:12px;color:rgba(207,204,196,.62)}
}
/* solution-reach — 장식용 net SVG가 viewBox 고유 폭(420px)으로 렌더되어 넘치는 문제 */
@media(max-width:640px){
  .page-reach .blind-net{width:calc(100% + 40px);height:auto}
}

/* ===== v27: 모바일 햄버거 메뉴 ===== */
.nav-toggle{display:none;position:relative;width:42px;height:42px;flex:0 0 auto;margin-left:auto;border:1px solid rgba(150,146,136,.28);border-radius:11px;background:rgba(28,26,24,.6);cursor:pointer;padding:0}
.nav-toggle span{position:absolute;left:11px;width:20px;height:1.8px;border-radius:2px;background:var(--on-surface);transition:.28s var(--ease)}
.nav-toggle span:nth-child(1){top:14px}
.nav-toggle span:nth-child(2){top:20px}
.nav-toggle span:nth-child(3){top:26px}
.nav-toggle[aria-expanded="true"] span:nth-child(1){top:20px;transform:rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){top:20px;transform:rotate(-45deg)}

.mnav{position:fixed;left:0;right:0;top:var(--navh,68px);bottom:0;z-index:99;background:rgba(11,10,9,.97);backdrop-filter:blur(20px);overflow-y:auto;-webkit-overflow-scrolling:touch;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .24s var(--ease),transform .24s var(--ease),visibility .24s}
.mnav[hidden]{display:none}
.mnav.open{opacity:1;visibility:visible;transform:translateY(0)}
.mnav-inner{display:flex;flex-direction:column;padding:14px 20px 40px}
.mnav-inner>a,.mnav-acc{display:flex;align-items:center;justify-content:space-between;width:100%;padding:17px 4px;font-family:inherit;font-size:17px;font-weight:800;letter-spacing:-.02em;color:var(--on-surface);border:0;border-bottom:1px solid rgba(74,70,63,.32);background:none;text-align:left;cursor:pointer}
.mnav-inner>a.mcur,.mnav-acc.mcur{color:var(--primary)}
.mnav-acc i{width:8px;height:8px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:.25s var(--ease);opacity:.65}
.mnav-group.open .mnav-acc i{transform:rotate(-135deg) translateY(-2px);opacity:1}
.mnav-sub{display:none;padding:6px 0 12px}
.mnav-group.open .mnav-sub{display:block}
.mnav-sub a{display:block;padding:13px 14px;font-size:14.5px;font-weight:700;color:rgba(207,204,196,.78);border-radius:10px}
.mnav-sub a.mcur{color:var(--primary);background:rgba(255,138,74,.08)}
.mnav-inner>a.mnav-cta{margin-top:26px;justify-content:center!important;border-bottom:0!important;height:52px;border-radius:10px;background:var(--primary);color:var(--on-primary)!important;font-size:16px;font-weight:800}
body.menu-open{overflow:hidden}

@media(max-width:900px){
  .nav-toggle{display:block}
  .nav-inner{gap:12px}
}
@media(min-width:901px){
  .mnav{display:none!important}
}
/* index는 모바일 nav 높이가 62px */
.page-index{--navh:62px}
/* index는 모바일에서 CTA만 남기고 있었으나, 햄버거 메뉴 도입으로 nav-links 전체를 숨김 (문의하기는 패널에 포함) */
@media(max-width:900px){
  .page-index .nav-links{display:none}
}

/* WHAT IS CTV: 본문 문단 크기·간격 보정 (다른 섹션과 시각적 크기 통일) */
.page-index #what .geo-lead{margin-bottom:0;font-size:16px}
@media(max-width:760px){
  .page-index #what .geo-lead{font-size:14.5px;line-height:1.72}
  .page-index #what .geo-lead[style*="margin-top:36px"]{margin-top:26px!important}
}

/* 강조 숫자·하이라이트 단색화 */
.page-targeting .cs-num,.page-crossdevice .cs-num,.page-measurement .cs-num{font-size:clamp(44px,5vw,60px);font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--on-surface,#edece8)}
.page-index .case-hero .big{font-size:clamp(42px,6vw,58px);font-weight:800;line-height:1;letter-spacing:-.04em;color:#fff}
.page-index .hero-copy-section h1 .gradient-word{color:#ff8a4a}
/* 지도 노드 날씨 아이콘 */
.page-targeting .mnode .tag .wic{width:13px;height:13px;display:inline-block;vertical-align:-2px;margin-right:4px;color:#ff8a4a}

/* 지도 노드: 태그를 핀 옆에 배치(핀이 위치를 정확히 가리키도록) */
.page-targeting .mnode.side-r .tag{position:absolute;left:14px;top:50%;transform:translateY(-50%);margin-top:0}
.page-targeting .mnode.side-l .tag{position:absolute;right:14px;left:auto;top:50%;transform:translateY(-50%);margin-top:0}

/* DC 인터폴레이션 스팬 복원 */
.page-targeting .mnode .tag b span{display:inline;font-size:inherit;margin:0}

/* 빈 케이스스터디 행 숨김 */
.cs-row:has(> b:empty){display:none}

/* index 버튼 전역 통일 */
.page-index .btn,.page-index .hero-copy-section .btn{height:48px!important;min-width:0!important;padding:0 24px!important;border-radius:9px!important;font-size:15px!important;box-shadow:none!important}
.page-index .btn.primary,.page-index .hero-copy-section .btn.primary{background:var(--primary)!important;color:var(--on-primary)!important;border:1px solid transparent!important}
.page-index .btn.secondary,.page-index .hero-copy-section .btn.secondary{background:transparent!important;border:1px solid rgba(150,146,136,.4)!important;color:var(--on-surface)!important;backdrop-filter:none!important}
.page-index .btn:hover,.page-index .hero-copy-section .btn:hover{transform:translateY(-2px)!important}
.page-index .btn.secondary:hover,.page-index .hero-copy-section .btn.secondary:hover{border-color:var(--primary)!important;color:var(--primary)!important}
@media(max-width:768px){.page-index .btn,.page-index .hero-copy-section .btn{width:100%!important}}

/* 전 페이지 버튼 호버 통일: index처럼 살짝 떠오름 */
.btn:hover{transform:translateY(-2px)}

/* ===== page-solution-measurement: 인라인에서 이동 (v35) ===== */
.cs-mini-link:hover{background:rgba(255,138,74,.09)!important;border-color:rgba(255,138,74,.45)!important;transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.35)}
