@charset "UTF-8";

/* ===== HERO ===== */
.hero{
    padding-top:72px;
    min-height:100vh;
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
}
.hero-bg{
    position:absolute;
    inset:0;
    z-index:0;
}
.hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
            to right,
            rgba(0,10,30,0.82) 0%,
            rgba(0,10,30,0.58) 45%,
            rgba(0,10,30,0.15) 100%
    );
    z-index:1;
}
/* 하단 블러 페이드 */
.hero::after{
    content:"";
    position:absolute;
    bottom:0;left:0;right:0;
    height:160px;
    background:linear-gradient(to top, rgba(0,0,0,0.35), transparent);
    z-index:1;
}
.hero-content{position:relative;z-index:2;color:#fff;width:100%;}
.hero-grid{padding:90px 0 100px;}
.hero-badge{display:inline-flex;flex-wrap:wrap;gap:8px;}
.hero-badge span{
    font-size:13px;font-weight:600;color:#111;
    background:#fff;padding:8px 16px;border-radius:100px;
    display:inline-flex;align-items:center;gap:6px;
    box-shadow:0 4px 14px rgba(0,0,0,0.12);
}
.hero-badge .dot{display:none;}
.hero-badge span svg{flex-shrink:0;}
.hero h1{
    font-size:clamp(44px,6vw,80px);
    font-weight:800;line-height:1.15;letter-spacing:-.03em;
    max-width:720px;
}
.hero h1 .accent{color:var(--main-color)}
.hero p.sub{
    font-size:clamp(17px,2vw,22px);
    color:rgba(255,255,255,0.88);
    margin-top:28px;max-width:640px;
    line-height:1.75;font-weight:400;
}
.c_sub_section p.sub-detail{
    font-size:1rem;color:rgba(255,255,255,0.6);
    margin-top:-20px;font-weight:500;
    letter-spacing:.04em;
    padding-bottom:2rem;
}
.hero-cta{display:flex;gap:14px;margin-top:44px;flex-wrap:wrap}
.btn-primary{
    background:var(--main-color);color:#fff;
    padding:17px 38px;border-radius:10px;
    font-weight:700;font-size:16px;text-decoration:none;
    display:inline-flex;align-items:center;gap:10px;
    transition:.25s;box-shadow:0 8px 24px rgba(0,102,255,0.35);
}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(0,102,255,0.45)}
.btn-primary .arrow{
    display:inline-block;
    transition:transform .25s;
}
.btn-primary:hover .arrow{transform:translateX(5px)}
.btn-ghost{
    background:rgba(255,255,255,0.1);color:#fff;
    padding:17px 36px;border-radius:10px;
    font-weight:700;font-size:16px;text-decoration:none;
    border:1px solid rgba(255,255,255,0.35);
    transition:.25s;backdrop-filter:blur(4px);
}
.btn-ghost:hover{background:rgba(255,255,255,0.2);border-color:#fff;transform:translateY(-2px)}

/* ===== JOURNEY SECTION ===== */
.journey-sec{background:linear-gradient(180deg,#F0FAF5 0%,#F5F7FB 100%);}
.process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-top:56px;
    position:relative;
}
/* 단계 연결 화살표 */
.process-card{
    position:relative;
    border-radius:20px;
    overflow:hidden;
    background:#111;
    box-shadow:0 20px 60px rgba(10,14,26,0.15);
    transition:transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s;
    cursor:pointer;
}
.process-card:hover{transform:translateY(-8px);box-shadow:0 32px 80px rgba(10,14,26,0.25);}
.process-card .pc-img{
    width:100%;
    aspect-ratio:3/4;
    object-fit:cover;
    display:block;
    transition:transform .55s cubic-bezier(.4,.2,.2,1);
}
.process-card:hover .pc-img{transform:scale(1.07);}
.process-card .pc-overlay{
    position:absolute;inset:0;
    background:linear-gradient(to top,rgba(0,0,0,0.9) 0%,rgba(0,0,0,0.35) 55%,rgba(0,0,0,0.05) 100%);
}
.process-card .pc-meta{
    position:absolute;left:0;right:0;bottom:0;
    padding:24px 22px 28px;z-index:2;
}
.pc-step{
    display:inline-flex;align-items:center;justify-content:center;
    font-size:1rem;font-weight:700;
    color:var(--main-color-cyan);
    background:rgba(0,242,255,0.14);
    border:1px solid rgba(0,242,255,0.4);
    padding:4px 10px;border-radius:7px;
    letter-spacing:.06em;margin-bottom:10px;
}
.pc-title{font-size:var(--fs-label-sub);font-weight:700;color:#fff;line-height:1.25;}
.pc-kpi{
    font-size:1rem;color:var(--main-color-cyan);
    margin-top:8px;font-weight:600;
    display:flex;align-items:center;gap:5px;
}
.pc-kpi::before{content:"✦";font-size:10px;}
.pc-desc{
    font-size:1rem;color:rgba(255,255,255,0.78);line-height:1.6;
    margin-top:10px;
    max-height:0;overflow:hidden;
    transition:max-height .45s ease, opacity .45s ease, margin .45s ease;
    opacity:0;
}
.process-card:hover .pc-desc{max-height:120px;opacity:1;margin-top:12px;}

@media(max-width:1024px){
    .process-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:600px){
    .process-grid{grid-template-columns:repeat(1,1fr);gap:14px;}
    .pc-title{font-size:17px;}
    .process-card .pc-img{ aspect-ratio:1; }
}

/* ===== MARKET ===== */
.market-sec{padding:120px 0;}
.market-sec .eyebrow{color:#2E7D5E;}
.risk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:64px}
.risk-card{
    text-align:center;background:#fff;border:1px solid #E6EAF2;
    border-radius:20px;padding:40px 32px;
    transition:.3s;position:relative;overflow:hidden;
}
.risk-card::after{
    content:"";position:absolute;top:0;left:0;
    width:100%;height:4px;
    background:linear-gradient(90deg,var(--main-color),var(--main-color-cyan));
    transform:scaleX(0);transform-origin:left;transition:.4s;
}
.risk-card:hover{box-shadow:0 18px 50px rgba(10,14,26,.1);transform:translateY(-4px)}
.risk-icon{width:80px;height:80px;margin:0 auto 20px auto;}
.risk-icon img{width:100%;height:100%;object-fit:contain;transition:transform .4s cubic-bezier(.2,.7,.2,1);}
.risk-card:hover .risk-icon img{transform:scale(1.1) translateY(-4px);}
.risk-card:hover::after{transform:scaleX(1)}
.risk-card h3{font-size:var(--fs-label-sub);font-weight:700;line-height:1.4;margin-bottom:16px}
.risk-card p{font-size:var(--fs-desc-sub);color:#4A5568;}
@media(max-width:900px){.risk-grid{grid-template-columns:1fr}}

/* ===== CERT ===== */
.cert{
    background:linear-gradient(165deg,#0A0E1A 0%,#0D1424 100%);
    color:#fff;overflow:hidden;
    padding:140px 0;
}
.cert .eyebrow{color:var(--main-color-cyan)}
.cert h2{color:#fff}
.cert .lead{color:rgba(255,255,255,.65)}
.cert-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:64px}
.cert-card{
    text-align:center;background:rgba(255,255,255,0.04);
    border:1px solid rgba(255,255,255,0.1);
    border-radius:24px;padding:48px 40px;transition:.3s;
    position:relative;overflow:hidden;
}
.cert-card::before{
    content:"";position:absolute;
    width:240px;height:240px;border-radius:50%;
    background:radial-gradient(circle,rgba(0,102,255,.2),transparent 70%);
    top:-80px;right:-60px;filter:blur(12px);
}
.cert-card:hover{border-color:rgba(0,242,255,.4);background:rgba(255,255,255,.06)}
.cert-icon{width:100px;height:100px;margin:0 auto 20px auto;position:relative;z-index:1;}
.cert-icon::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:150%;height:150%;border-radius:50%;background:radial-gradient(ellipse at center, rgba(255,255,255,0.3) 20%, rgba(255,255,255,0.15) 50%, rgba(13,20,36,0.05) 75%, transparent 100%);pointer-events:none;opacity: 0.8;z-index:-1;}
.cert-icon img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 12px rgba(0,242,255,0.5));transition:transform .4s cubic-bezier(.2,.7,.2,1);}
.cert-card:hover .cert-icon img{transform:scale(1.12) translateY(-4px);}
.cert-card h3{font-size:var(--fs-label-sub);font-weight:700;margin:0 0 18px;line-height:1.3;color:#fff;position:relative;z-index:1;}
.cert-card p{font-size:var(--fs-desc-sub);color:rgba(255,255,255,0.68);line-height:1.75;position:relative;z-index:1;}
@media(max-width:900px){.cert{padding:100px 0;}.cert-grid{grid-template-columns:1fr}}

/* ===== TRUST ===== */
.trust{background:#07184a;color:#fff;}
.trust .eyebrow{color:var(--main-color-cyan)}
.trust h2{color:#fff}
.gauge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:72px}
.gauge-card{
    text-align:center;
    background:rgba(255,255,255,0.03);
    border:1px solid rgba(255,255,255,0.08);
    padding:52px 28px;border-radius:28px;
    transition:.3s;
}
.gauge-card:hover{border-color:rgba(0,242,255,.3);background:rgba(255,255,255,.05);transform:translateY(-4px)}
.gauge-val{margin-bottom:18px}
.gauge-val .gv{font-size:60px;font-weight:800;color:#fff;line-height:1}
.gauge-val .gu{font-size:30px;color:rgba(255,255,255,0.45);font-weight:600}
.glabel{font-size:var(--fs-label-sub);font-weight:700;color:#fff;margin-bottom:10px;}
.gsub{font-size:var(--fs-desc-sub);color:rgba(255,255,255,0.5);line-height:1.55;}
.gsub .highlight{color:var(--main-color-cyan);font-weight:600;}
@media(max-width:900px){.trust{padding:80px 0;}.gauge-grid{grid-template-columns:1fr}}

/* ===== CTA ===== */
.cta{background:linear-gradient(135deg,var(--blue),#0040cc);color:#fff;text-align:center;padding:100px 0;}
.cta-in h2{ font-size: clamp(28px, 3.6vw, 46px);font-weight: 700;letter-spacing: -0.03em;color:#fff;margin-bottom:24px}
.cta-in .cta-sub{
    font-size:1.375rem;color:rgba(255,255,255,0.85);
    margin-bottom:14px;margin-left:auto;margin-right:auto;
    line-height:1.65;
}
.cta-in .cta-benefit{
    font-size:1.063rem;color:rgba(255,255,255,0.7);
    margin-bottom:44px;
    display:flex;align-items:center;justify-content:center;gap:6px;
}
.cta-in .cta-benefit::before{content:"🎁";font-size:18px;}
.btn-white{
    background:#fff;color:var(--main-color);
    padding:18px 44px;border-radius:14px;
    font-weight:800;font-size:1.063rem;text-decoration:none;
    display:inline-flex;align-items:center;gap:12px;transition:.3s;
}
.btn-white:hover{transform:translateY(-3px);box-shadow:0 18px 48px rgba(0,0,0,0.22)}
.btn-white .arrow{transition:transform .25s;}
.btn-white:hover .arrow{transform:translateX(6px)}
.cta-trust{display:flex;justify-content:center;gap:10px 28px;margin-top:40px;flex-wrap:wrap}
.ct{font-size:0.938rem;line-height:1;font-weight:600;color:rgba(255,255,255,0.85);display:flex;align-items:center;gap:8px;}
.ct::before{display:none;}
