:root {
    --ink:#101117;
    --muted:#60636d;
    --paper:#f5f3ef;
    --night:#08090d;
    --night-soft:#111219;
    --line:rgba(16,17,23,.12);
    --red:#e92d47;
    --red-deep:#b7112b;
    --mint:#38d8b0;
    --radius-lg:28px;
    --radius-md:18px;
    --container:1180px;
}

*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:92px; }
body {
    margin:0;
    color:var(--ink);
    background:var(--paper);
    font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo",Inter,Arial,sans-serif;
    font-size:16px;
    line-height:1.7;
    word-break:keep-all;
    -webkit-font-smoothing:antialiased;
}
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.container { width:min(var(--container),calc(100% - 48px)); margin:0 auto; }
.skip-link {
    position:fixed;
    z-index:1000;
    top:12px;
    left:12px;
    padding:10px 16px;
    border-radius:10px;
    color:#000;
    background:#fff;
    transform:translateY(-150%);
}
.skip-link:focus { transform:translateY(0); }

.site-header {
    position:sticky;
    z-index:100;
    top:0;
    border-bottom:1px solid rgba(255,255,255,.08);
    color:#fff;
    background:rgba(8,9,13,.9);
    backdrop-filter:blur(18px);
}
.route-bar {
    position:sticky;
    z-index:95;
    top:78px;
    border-bottom:1px solid rgba(16,17,23,.1);
    color:#4a4a4a;
    background:#d3d3d0;
}
.route-bar-inner {
    display:flex;
    width:min(1320px,calc(100% - 48px));
    min-height:34px;
    padding:5px 0;
    margin:0 auto;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:3px 8px;
    font-size:12px;
    line-height:1.35;
}
.route-bar span { color:#666; }
.route-bar strong,.route-bar b { color:#28282c; font-weight:850; }
.route-bar i,.route-bar em { font-style:normal; }
.route-bar i { color:#929292; }
.route-modal-trigger {
    display:inline-flex;
    padding:0;
    margin-left:6px;
    border:0;
    color:var(--red-deep);
    background:transparent;
    align-items:center;
    cursor:pointer;
    gap:5px;
    font:inherit;
    font-weight:900;
}
.route-modal-trigger:hover,.route-modal-trigger:focus-visible { text-decoration:underline; }
.header-inner {
    display:flex;
    width:min(1320px,calc(100% - 48px));
    min-height:78px;
    margin:0 auto;
    align-items:center;
    gap:38px;
}
.brand { display:inline-flex; flex:0 0 auto; align-items:center; gap:12px; }
.brand-mark {
    display:grid;
    width:42px;
    height:42px;
    border-radius:13px;
    color:#fff;
    background:linear-gradient(145deg,var(--red),var(--red-deep));
    box-shadow:0 10px 28px rgba(233,45,71,.28);
    font-size:23px;
    font-weight:900;
    line-height:1;
    place-items:center;
}
.brand-copy { display:flex; flex-direction:column; line-height:1.05; }
.brand-copy strong { font-size:20px; letter-spacing:-.04em; }
.brand-copy small {
    margin-top:5px;
    color:rgba(255,255,255,.5);
    font-size:9px;
    font-weight:700;
    letter-spacing:.22em;
}
.primary-nav {
    display:flex;
    margin-left:auto;
    align-items:center;
    gap:30px;
}
.primary-nav a {
    position:relative;
    color:rgba(255,255,255,.72);
    font-size:14px;
    font-weight:650;
    white-space:nowrap;
}
.primary-nav a::after {
    position:absolute;
    right:0;
    bottom:-9px;
    left:0;
    height:2px;
    background:var(--red);
    content:"";
    transform:scaleX(0);
    transform-origin:right;
    transition:transform .25s ease;
}
.primary-nav a:hover,.primary-nav a:focus-visible { color:#fff; }
.primary-nav a:hover::after,.primary-nav a:focus-visible::after { transform:scaleX(1); transform-origin:left; }
.header-cta {
    padding:11px 19px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:999px;
    font-size:14px;
    font-weight:750;
    transition:border-color .2s ease,background .2s ease;
}
.header-cta:hover,.header-cta:focus-visible { border-color:var(--red); background:var(--red); }

.hero {
    position:relative;
    min-height:760px;
    overflow:hidden;
    color:#fff;
    background:
        linear-gradient(115deg,rgba(255,255,255,.025) 1px,transparent 1px) 0 0/46px 46px,
        linear-gradient(25deg,#08090d 8%,#101118 62%,#17131a 100%);
}
.hero::after {
    position:absolute;
    right:-120px;
    bottom:-260px;
    width:680px;
    height:680px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:50%;
    box-shadow:0 0 0 80px rgba(255,255,255,.015),0 0 0 160px rgba(255,255,255,.01);
    content:"";
}
.hero-glow { position:absolute; border-radius:50%; pointer-events:none; }
.hero-glow-one {
    top:-220px;
    right:12%;
    width:560px;
    height:560px;
    background:radial-gradient(circle,rgba(233,45,71,.25),rgba(233,45,71,0) 68%);
}
.hero-glow-two {
    bottom:-250px;
    left:25%;
    width:500px;
    height:500px;
    background:radial-gradient(circle,rgba(56,216,176,.12),rgba(56,216,176,0) 70%);
}
.hero-grid {
    position:relative;
    z-index:2;
    display:grid;
    min-height:680px;
    padding:80px 0;
    align-items:center;
    grid-template-columns:minmax(0,1.15fr) minmax(360px,.75fr);
    gap:80px;
}
.eyebrow,.section-kicker {
    margin:0 0 18px;
    color:var(--red);
    font-size:12px;
    font-weight:850;
    letter-spacing:.18em;
}
.hero h1 {
    margin:0;
    font-size:clamp(64px,8.2vw,114px);
    font-weight:900;
    letter-spacing:-.07em;
    line-height:.92;
}
.hero h1 span { color:var(--red); }
.hero-lead {
    max-width:640px;
    margin:34px 0 0;
    color:rgba(255,255,255,.72);
    font-size:19px;
    line-height:1.75;
}
.hero-actions { display:flex; margin-top:38px; flex-wrap:wrap; gap:12px; }
.button {
    display:inline-flex;
    min-height:54px;
    padding:0 24px;
    border:0;
    border-radius:999px;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    font-family:inherit;
    font-size:15px;
    font-weight:800;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.button:hover,.button:focus-visible { transform:translateY(-2px); }
.button-primary { color:#fff; background:var(--red); box-shadow:0 16px 40px rgba(233,45,71,.28); }
.button-primary:hover,.button-primary:focus-visible { background:#f23a53; box-shadow:0 20px 48px rgba(233,45,71,.4); }
.button-secondary { border:1px solid rgba(255,255,255,.18); color:#fff; background:rgba(255,255,255,.035); }
.button-secondary:hover,.button-secondary:focus-visible { background:rgba(255,255,255,.09); }
.hero-note { margin:18px 0 0; color:rgba(255,255,255,.42); font-size:13px; }
.hero-panel {
    position:relative;
    padding:34px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    border-radius:var(--radius-lg);
    background:rgba(255,255,255,.055);
    box-shadow:0 30px 90px rgba(0,0,0,.34);
    backdrop-filter:blur(16px);
}
.hero-panel::before {
    position:absolute;
    top:-62px;
    right:-18px;
    color:rgba(255,255,255,.025);
    content:"P";
    font-size:280px;
    font-weight:950;
    line-height:1;
}
.panel-heading,.quick-list,.panel-link { position:relative; z-index:1; }
.panel-heading {
    display:flex;
    padding-bottom:24px;
    border-bottom:1px solid rgba(255,255,255,.1);
    flex-direction:column;
}
.panel-heading span { color:var(--red); font-size:10px; font-weight:850; letter-spacing:.2em; }
.panel-heading strong { margin-top:8px; font-size:25px; letter-spacing:-.04em; }
.quick-list { padding:10px 0; margin:0; list-style:none; }
.quick-list li {
    display:grid;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
    align-items:start;
    grid-template-columns:42px 1fr;
    gap:13px;
}
.quick-list>li>span { color:var(--red); font-size:12px; font-weight:900; }
.quick-list div { display:flex; flex-direction:column; }
.quick-list strong { font-size:15px; }
.quick-list small { margin-top:3px; color:rgba(255,255,255,.48); font-size:12px; }
.panel-link,.text-link {
    display:inline-flex;
    margin-top:22px;
    align-items:center;
    gap:10px;
    font-size:14px;
    font-weight:800;
}
.panel-link span,.text-link span,.product-body a span { transition:transform .2s ease; }
.panel-link:hover span,.text-link:hover span,.product-body a:hover span { transform:translateX(5px); }

.trust-strip { color:#fff; background:var(--red); }
.trust-grid { display:grid; min-height:122px; align-items:center; grid-template-columns:repeat(3,1fr); }
.trust-grid div {
    display:flex;
    min-height:58px;
    padding:0 36px;
    border-right:1px solid rgba(255,255,255,.22);
    flex-direction:column;
    justify-content:center;
}
.trust-grid div:first-child { padding-left:0; }
.trust-grid div:last-child { padding-right:0; border-right:0; }
.trust-grid strong { font-size:16px; }
.trust-grid span { margin-top:2px; color:rgba(255,255,255,.72); font-size:13px; }

.section { padding:120px 0; }
.section-light { background:var(--paper); }
.section-dark { color:#fff; background:var(--night-soft); }
.split-layout,.faq-layout {
    display:grid;
    grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);
    gap:90px;
}
.section-intro h2,.section-heading h2,.shipping-section h2,.contact-card h2 {
    margin:0;
    font-size:clamp(38px,5vw,64px);
    letter-spacing:-.055em;
    line-height:1.08;
}
.about-lead {
    margin:0;
    font-size:clamp(23px,3vw,34px);
    font-weight:750;
    letter-spacing:-.04em;
    line-height:1.45;
}
.about-content>p:not(.about-lead) { max-width:740px; margin:24px 0 0; color:var(--muted); font-size:17px; }
.principle-grid { display:grid; margin-top:54px; grid-template-columns:repeat(3,1fr); gap:16px; }
.principle-grid article {
    min-height:260px;
    padding:28px;
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    background:rgba(255,255,255,.52);
}
.principle-grid article>span { color:var(--red); font-size:12px; font-weight:900; }
.principle-grid h3 { margin:48px 0 10px; font-size:20px; letter-spacing:-.035em; }
.principle-grid p { margin:0; color:var(--muted); font-size:14px; }
.identity-panel {
    display:grid;
    margin-top:18px;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:var(--radius-md);
    background:#111219;
    grid-template-columns:repeat(2,1fr);
}
.identity-panel div { display:flex; min-height:90px; padding:20px 24px; border-right:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); flex-direction:column; justify-content:center; }
.identity-panel div:nth-child(2n) { border-right:0; }
.identity-panel div:nth-last-child(-n+2) { border-bottom:0; }
.identity-panel span { color:var(--red); font-size:10px; font-weight:850; letter-spacing:.08em; }
.identity-panel strong { margin-top:5px; color:#fff; font-size:15px; }
.section-heading { max-width:760px; margin-bottom:54px; }
.section-heading.centered { margin-right:auto; margin-left:auto; text-align:center; }
.section-heading>p:last-child { margin:18px 0 0; color:var(--muted); }
.section-dark .section-heading>p:last-child { color:rgba(255,255,255,.58); }

.official-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.official-card {
    position:relative;
    display:flex;
    min-height:430px;
    padding:34px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    border-radius:var(--radius-lg);
    color:#fff;
    background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
    flex-direction:column;
}
.official-card-primary { color:var(--ink); background:var(--paper); }
.official-card>span { color:var(--red); font-size:10px; font-weight:900; letter-spacing:.14em; }
.official-mark {
    display:grid;
    width:82px;
    height:82px;
    margin:54px 0 28px;
    border-radius:25px;
    color:#fff;
    background:linear-gradient(145deg,var(--red),var(--red-deep));
    box-shadow:0 18px 46px rgba(233,45,71,.28);
    font-size:42px;
    font-weight:950;
    line-height:1;
    place-items:center;
}
.official-mark-contact { color:#191a1f; background:#fee500; box-shadow:0 18px 46px rgba(254,229,0,.16); }
.official-card h3 { margin:0; font-size:clamp(28px,3vw,40px); letter-spacing:-.05em; line-height:1.1; }
.official-card p { max-width:470px; margin:18px 0 0; color:rgba(255,255,255,.56); font-size:14px; }
.official-card-primary p { color:var(--muted); }
.channel-state,.channel-link {
    display:flex;
    min-height:48px;
    padding:0 17px;
    margin-top:auto;
    border-radius:13px;
    align-items:center;
    justify-content:space-between;
    font-size:13px;
    font-weight:850;
}
.channel-state { width:max-content; border:1px solid rgba(16,17,23,.13); color:var(--ink); background:#fff; }
.channel-link { color:var(--ink); background:#fff; transition:color .2s ease,background .2s ease,transform .2s ease; }
.channel-link:hover,.channel-link:focus-visible { color:#fff; background:var(--red); transform:translateY(-2px); }
.channel-link b { color:var(--red); font-size:18px; transition:color .2s ease,transform .2s ease; }
.channel-link:hover b,.channel-link:focus-visible b { color:#fff; transform:translateX(4px); }
.domain-notice {
    display:grid;
    padding:30px 32px;
    margin-top:20px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:var(--radius-md);
    background:rgba(255,255,255,.035);
    grid-template-columns:170px 1fr;
    gap:24px;
}
.domain-notice>span { color:var(--mint); font-size:10px; font-weight:900; letter-spacing:.14em; }
.domain-notice strong { display:block; color:#fff; font-size:19px; letter-spacing:-.03em; }
.domain-notice p { margin:7px 0 0; color:rgba(255,255,255,.52); font-size:13px; }

.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.product-card {
    display:flex;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    border-radius:24px;
    background:linear-gradient(160deg,#191a22,#121319);
    box-shadow:0 18px 45px rgba(0,0,0,.16);
    flex-direction:column;
    transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.product-card:hover { border-color:rgba(233,45,71,.52); box-shadow:0 28px 70px rgba(0,0,0,.3); transform:translateY(-5px); }
.product-image {
    display:grid;
    aspect-ratio:4/3;
    padding:18px;
    overflow:hidden;
    border-bottom:1px solid rgba(16,17,23,.08);
    background:radial-gradient(circle at 50% 35%,#fff 0,#f7f5f1 56%,#e8e5df 100%);
    place-items:center;
}
.product-image img { width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; mix-blend-mode:multiply; transition:transform .4s ease; }
.product-card:hover .product-image img { transform:scale(1.045); }
.product-body { display:flex; min-height:286px; padding:25px; flex:1; flex-direction:column; }
.product-body>span { color:var(--red); font-size:10px; font-weight:900; letter-spacing:.14em; }
.product-body h3 { margin:10px 0 0; color:#fff; font-size:18px; font-weight:780; letter-spacing:-.045em; line-height:1.35; white-space:nowrap; }
.product-body p { margin:0; color:rgba(255,255,255,.52); font-size:13px; }
.product-disclaimer { margin:28px 0 0; color:rgba(255,255,255,.38); font-size:12px; text-align:center; }
.product-meta { display:flex; min-height:24px; margin:18px 0 10px; align-items:center; flex-wrap:wrap; gap:7px; }
.product-meta small { padding:3px 8px; border:1px solid rgba(255,255,255,.12); border-radius:999px; color:rgba(255,255,255,.62); font-size:10px; }
.product-meta .is-available { border-color:rgba(56,216,176,.28); color:var(--mint); }
.product-meta .is-unavailable { border-color:rgba(233,45,71,.35); color:#ff8494; }
.product-body .product-price { min-height:0; color:#fff; font-size:13px; }
.product-price strong { margin-right:2px; font-size:30px; letter-spacing:-.05em; }
.product-body .product-cta {
    display:flex;
    min-height:48px;
    padding:0 16px;
    margin-top:auto;
    border-radius:13px;
    color:#111219;
    background:#fff;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    font-size:13px;
    font-weight:850;
    transition:color .2s ease,background .2s ease,transform .2s ease;
}
.product-body .product-cta:hover,.product-body .product-cta:focus-visible { color:#fff; background:var(--red); transform:translateY(-2px); }
.product-cta b { color:var(--red); font-size:17px; transition:color .2s ease,transform .2s ease; }
.product-cta:hover b,.product-cta:focus-visible b { color:#fff; transform:translateX(4px); }
.product-fallback { color:rgba(16,17,23,.2); font-size:92px; font-weight:950; }
.catalog-unavailable { padding:46px; border:1px solid rgba(255,255,255,.12); border-radius:var(--radius-md); text-align:center; background:#171820; }
.catalog-unavailable strong { font-size:20px; }
.catalog-unavailable p { margin:10px 0 0; color:rgba(255,255,255,.52); }

.process-grid {
    display:grid;
    padding:0;
    margin:0;
    border-top:1px solid var(--line);
    list-style:none;
    grid-template-columns:repeat(4,1fr);
}
.process-grid li { min-height:270px; padding:30px 28px 0; border-right:1px solid var(--line); }
.process-grid li:first-child { padding-left:0; }
.process-grid li:last-child { padding-right:0; border-right:0; }
.step-number { color:var(--red); font-size:13px; font-weight:900; }
.process-grid h3 { margin:80px 0 12px; font-size:20px; letter-spacing:-.035em; }
.process-grid p { margin:0; color:var(--muted); font-size:14px; }

.shipping-section {
    position:relative;
    padding:110px 0;
    overflow:hidden;
    color:#fff;
    background:linear-gradient(120deg,#8f0d20,var(--red) 52%,#f34f63);
}
.shipping-section::after {
    position:absolute;
    top:-280px;
    right:-120px;
    width:680px;
    height:680px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
    box-shadow:0 0 0 80px rgba(255,255,255,.035),0 0 0 160px rgba(255,255,255,.02);
    content:"";
}
.shipping-grid {
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,.75fr);
    gap:90px;
}
.shipping-section .section-kicker { color:rgba(255,255,255,.62); }
.shipping-section p:not(.section-kicker) { max-width:650px; margin:24px 0 0; color:rgba(255,255,255,.75); }
.shipping-list { padding:0; margin:0; border-top:1px solid rgba(255,255,255,.24); list-style:none; }
.shipping-list li {
    display:grid;
    padding:22px 0;
    border-bottom:1px solid rgba(255,255,255,.24);
    grid-template-columns:54px 1fr;
    gap:12px;
}
.shipping-list strong { font-size:12px; }
.shipping-list span { color:rgba(255,255,255,.82); font-size:14px; }
.delivery-facts {
    position:relative;
    z-index:1;
    display:grid;
    margin-top:64px;
    border-top:1px solid rgba(255,255,255,.24);
    grid-template-columns:repeat(3,1fr);
}
.delivery-facts article {
    min-height:190px;
    padding:28px 34px 0;
    border-right:1px solid rgba(255,255,255,.24);
}
.delivery-facts article:first-child { padding-left:0; }
.delivery-facts article:last-child { padding-right:0; border-right:0; }
.delivery-facts span {
    display:block;
    color:rgba(255,255,255,.58);
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
}
.delivery-facts strong {
    display:block;
    margin-top:8px;
    font-size:21px;
    letter-spacing:-.035em;
}
.delivery-facts p {
    margin:12px 0 0;
    color:rgba(255,255,255,.7);
    font-size:13px;
}

.support-section { padding:110px 0; background:#e9e6e0; }
.support-shell {
    display:grid;
    grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);
    gap:70px;
    align-items:start;
}
.support-intro h2 { margin:0; font-size:clamp(38px,5vw,64px); letter-spacing:-.055em; line-height:1.08; }
.support-intro>p:not(.section-kicker) { max-width:540px; margin:24px 0 0; color:var(--muted); }
.support-channel {
    position:relative;
    display:flex;
    min-height:190px;
    padding:28px;
    margin-top:38px;
    overflow:hidden;
    border-radius:var(--radius-md);
    color:#fff;
    background:radial-gradient(circle at 100% 0,rgba(56,216,176,.18),transparent 40%),var(--night-soft);
    box-shadow:0 22px 55px rgba(16,17,23,.15);
    flex-direction:column;
    justify-content:flex-end;
    transition:transform .25s ease,box-shadow .25s ease;
}
.support-channel:hover,.support-channel:focus-visible { box-shadow:0 28px 68px rgba(16,17,23,.24); transform:translateY(-4px); }
.support-channel>span { position:absolute; top:25px; left:28px; color:var(--mint); font-size:10px; font-weight:900; letter-spacing:.14em; }
.support-channel strong { padding-right:48px; font-size:22px; letter-spacing:-.035em; }
.support-channel small { margin-top:8px; color:rgba(255,255,255,.52); font-size:12px; }
.support-channel b { position:absolute; right:28px; bottom:50px; color:var(--red); font-size:24px; transition:transform .2s ease; }
.support-channel:hover b,.support-channel:focus-visible b { transform:translateX(5px); }
.support-facts { border-top:1px solid var(--ink); }
.support-facts article {
    display:grid;
    min-height:142px;
    padding:26px 0;
    border-bottom:1px solid var(--line);
    grid-template-columns:52px 1fr;
    gap:16px;
}
.support-facts article>span { padding-top:3px; color:var(--red); font-size:12px; font-weight:900; }
.support-facts h3 { margin:0; font-size:19px; letter-spacing:-.035em; }
.support-facts p { max-width:620px; margin:8px 0 0; color:var(--muted); font-size:14px; }

.reviews-section { color:#fff; background:#0d0e13; }
.review-heading>p:last-child { color:rgba(255,255,255,.56); }
.review-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.review-card {
    display:flex;
    min-height:270px;
    padding:28px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:var(--radius-md);
    background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
    flex-direction:column;
}
.review-meta { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.review-meta span { color:var(--red); font-size:11px; font-weight:850; letter-spacing:.08em; }
.review-meta small { color:rgba(255,255,255,.32); font-size:11px; }
.review-card blockquote { margin:38px 0 26px; color:rgba(255,255,255,.86); font-size:17px; font-weight:650; line-height:1.75; }
.review-card>p { margin:auto 0 0; color:rgba(255,255,255,.32); font-size:11px; }

.faq-intro>p:last-child { margin-top:20px; color:var(--muted); }
.faq-list { border-top:1px solid var(--ink); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary {
    position:relative;
    padding:25px 48px 25px 0;
    cursor:pointer;
    font-size:18px;
    font-weight:750;
    letter-spacing:-.025em;
    list-style:none;
}
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after {
    position:absolute;
    top:50%;
    right:10px;
    width:24px;
    height:24px;
    color:var(--red);
    content:"+";
    font-size:24px;
    line-height:1;
    text-align:center;
    transform:translateY(-50%);
}
.faq-list details[open] summary::after { content:"−"; }
.faq-list details p { max-width:760px; padding:0 48px 26px 0; margin:0; color:var(--muted); font-size:14px; }

.contact-section { padding:0 0 90px; background:var(--paper); }
.contact-card {
    display:flex;
    min-height:300px;
    padding:58px 64px;
    border-radius:var(--radius-lg);
    color:#fff;
    background:radial-gradient(circle at 85% 20%,rgba(233,45,71,.24),transparent 35%),var(--night);
    box-shadow:0 28px 80px rgba(9,10,14,.15);
    align-items:center;
    justify-content:space-between;
    gap:40px;
}
.contact-card h2 { font-size:clamp(34px,4vw,54px); }
.contact-card p:not(.section-kicker) { margin:18px 0 0; color:rgba(255,255,255,.56); }
.button-light { flex:0 0 auto; color:var(--night); background:#fff; }
.contact-actions { display:flex; flex:0 0 auto; flex-wrap:wrap; justify-content:flex-end; gap:10px; }
.button-outline-light { border:1px solid rgba(255,255,255,.22); color:#fff; background:rgba(255,255,255,.035); }
.button-outline-light:hover,.button-outline-light:focus-visible { border-color:var(--red); background:var(--red); }

.mobile-quick-contact { display:none; }
.modal-open { overflow:hidden; }
.address-modal {
    position:fixed;
    z-index:200;
    inset:0;
    display:grid;
    padding:24px;
    place-items:center;
}
.address-modal[hidden] { display:none; }
.address-modal-backdrop {
    position:absolute;
    inset:0;
    background:rgba(5,6,9,.72);
    backdrop-filter:blur(8px);
}
.address-modal-dialog {
    position:relative;
    width:min(100%,520px);
    padding:42px;
    border:1px solid rgba(16,17,23,.12);
    border-radius:26px;
    color:var(--ink);
    background:#fff;
    box-shadow:0 32px 100px rgba(0,0,0,.34);
}
.address-modal-close {
    position:absolute;
    top:15px;
    right:15px;
    display:grid;
    width:38px;
    height:38px;
    padding:0;
    border:1px solid var(--line);
    border-radius:50%;
    color:#5d6068;
    background:var(--paper);
    cursor:pointer;
    font:inherit;
    font-size:25px;
    line-height:1;
    place-items:center;
}
.address-modal-close:hover,.address-modal-close:focus-visible { color:#fff; background:var(--red); }
.address-modal-kicker { margin:0; color:var(--red); font-size:9px; font-weight:900; letter-spacing:.17em; }
.address-modal-dialog h2 { margin:10px 0 0; font-size:clamp(30px,4vw,42px); letter-spacing:-.055em; line-height:1.1; }
.address-modal-dialog>p:not(.address-modal-kicker) { margin:18px 0 0; color:var(--muted); font-size:14px; line-height:1.8; }
.address-modal-channel {
    display:flex;
    min-height:54px;
    padding:0 20px;
    margin-top:28px;
    border-radius:15px;
    color:#fff;
    background:var(--red);
    align-items:center;
    justify-content:space-between;
    gap:18px;
    font-size:14px;
    font-weight:850;
    transition:transform .2s ease,background .2s ease;
}
.address-modal-channel:hover,.address-modal-channel:focus-visible { background:var(--red-deep); transform:translateY(-2px); }
.address-modal-channel span { font-size:20px; }
.address-modal-dialog>small { display:block; margin-top:14px; color:#8a8d94; font-size:11px; line-height:1.6; }

.site-footer { padding:70px 0 30px; color:#fff; background:#050609; }
.footer-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.footer-brand { margin-bottom:18px; }
.footer-grid>div>p { max-width:460px; margin:0; color:rgba(255,255,255,.42); font-size:13px; }
.footer-links { display:flex; align-items:flex-start; justify-content:flex-end; flex-wrap:wrap; gap:14px 24px; }
.footer-links a { color:rgba(255,255,255,.62); font-size:13px; }
.footer-links a:hover,.footer-links a:focus-visible { color:#fff; }
.knowledge-section { background:#f4f2ec; }
.community-section { color:var(--ink); background:#fff; }
.community-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.75fr); gap:52px; align-items:end; }
.community-heading h2 { max-width:700px; margin:12px 0 0; font-size:clamp(38px,5vw,62px); line-height:1.08; letter-spacing:-.06em; }
.community-heading>p { margin:0; color:var(--muted); font-size:16px; line-height:1.8; }
.community-top-grid { display:grid; margin-top:48px; grid-template-columns:1.15fr .85fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.notice-panel,.faq-panel { min-width:0; padding:34px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.community-panel-heading { display:flex; margin-bottom:24px; align-items:center; justify-content:space-between; gap:20px; }
.community-panel-heading h3 { margin:0; font-size:24px; letter-spacing:-.04em; }
.community-panel-heading span { color:var(--red); font-size:12px; font-weight:900; letter-spacing:.12em; }
.notice-list>a { display:grid; min-height:92px; padding:18px 0; color:var(--ink); border-top:1px solid var(--line); grid-template-columns:62px minmax(0,1fr) 20px; gap:16px; align-items:start; }
.notice-list>a>span { color:var(--red); font-size:12px; font-weight:900; }
.notice-list strong { display:block; font-size:16px; line-height:1.5; }
.notice-list p { display:-webkit-box; margin:7px 0 0; overflow:hidden; color:var(--muted); font-size:14px; line-height:1.6; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.notice-list b { font-size:18px; }
.community-faq-list details { border-top:1px solid var(--line); }
.community-faq-list summary { padding:17px 28px 17px 0; font-size:15px; font-weight:800; line-height:1.5; cursor:pointer; }
.community-faq-list p { margin:0 0 18px; color:var(--muted); font-size:15px; line-height:1.7; }
.community-more { display:inline-block; margin-top:22px; color:var(--red); font-size:14px; font-weight:900; }
.community-empty { padding:24px; margin:0; color:var(--muted); background:#f4f2ec; font-size:15px; line-height:1.7; }
.verified-reviews { padding:44px; margin-top:22px; color:#fff; background:var(--ink); }
.review-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; }
.review-heading h3 { margin:10px 0 0; font-size:34px; letter-spacing:-.05em; }
.review-heading>p { max-width:420px; margin:0; color:rgba(255,255,255,.62); font-size:15px; line-height:1.7; }
.verified-review-grid { display:grid; margin-top:30px; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.verified-review-card { display:flex; min-height:280px; padding:24px; color:var(--ink); background:#fff; flex-direction:column; }
.verified-review-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.verified-review-meta span { padding:5px 8px; color:#255e06; background:#dfff9d; font-size:11px; font-weight:900; }
.verified-review-meta time { color:var(--muted); font-size:12px; }
.verified-review-card h4 { margin:28px 0 12px; font-size:17px; line-height:1.5; }
.verified-review-card>p { margin:0; color:var(--muted); font-size:15px; line-height:1.75; }
.verified-review-card footer { display:flex; padding-top:20px; margin-top:auto; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid var(--line); }
.verified-review-card footer strong,.verified-review-card footer a { font-size:12px; }
.verified-review-card footer a { color:var(--red); font-weight:800; }
.community-empty-dark { color:rgba(255,255,255,.7); background:rgba(255,255,255,.08); }
.knowledge-heading { max-width:760px; }
.knowledge-inline-link { display:inline-flex; min-height:46px; padding:0 20px; margin-top:24px; color:#fff; background:var(--ink); font-size:14px; font-weight:800; align-items:center; gap:16px; }
.knowledge-inline-link:hover,.knowledge-inline-link:focus-visible { color:var(--ink); background:var(--mint); }
.knowledge-grid { display:grid; margin-top:48px; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.knowledge-card { min-height:285px; padding:34px; color:var(--ink); background:#fff; border-right:1px solid var(--line); border-bottom:1px solid var(--line); transition:transform .2s ease,background .2s ease; }
.knowledge-card:hover,.knowledge-card:focus-visible { position:relative; z-index:1; background:var(--mint); transform:translateY(-4px); }
.knowledge-card>span { color:var(--red); font-size:12px; font-weight:900; letter-spacing:.14em; }
.knowledge-card h3 { margin:54px 0 12px; font-size:25px; letter-spacing:-.04em; }
.knowledge-card p { margin:0; color:var(--muted); font-size:15px; line-height:1.75; }
.knowledge-card strong { display:block; margin-top:24px; font-size:13px; }
.content-page { background:#f4f2ec; }
.subpage-hero { padding:98px 0 82px; color:#fff; background:radial-gradient(circle at 78% 20%,rgba(209,255,90,.14),transparent 25%),linear-gradient(135deg,#08090d,#171923); }
.subpage-breadcrumb { display:flex; margin-bottom:52px; color:rgba(255,255,255,.58); font-size:14px; align-items:center; gap:10px; }
.subpage-breadcrumb a { color:rgba(255,255,255,.78); }
.subpage-breadcrumb strong { color:var(--mint); }
.subpage-hero h1 { max-width:850px; margin:16px 0 24px; font-size:clamp(44px,6vw,76px); line-height:1.05; letter-spacing:-.065em; }
.subpage-hero>div>p:last-child { max-width:760px; margin:0; color:rgba(255,255,255,.7); font-size:18px; line-height:1.8; }
.subpage-body { padding:84px 0 110px; }
.subpage-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:54px; align-items:start; }
.subpage-main { min-width:0; }
.content-section { position:relative; padding:48px; margin-bottom:24px; background:#fff; border:1px solid var(--line); }
.content-number { color:var(--red); font-size:12px; font-weight:900; letter-spacing:.14em; }
.content-section h2 { margin:18px 0 20px; font-size:34px; letter-spacing:-.05em; }
.content-section>p { margin:0 0 14px; color:var(--muted); font-size:17px; line-height:1.85; }
.content-list { display:grid; margin-top:30px; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.content-list article { padding:26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.content-list h3 { margin:0 0 9px; font-size:17px; }
.content-list p { margin:0; color:var(--muted); font-size:15px; line-height:1.7; }
.subpage-aside { position:sticky; top:108px; display:grid; gap:16px; }
.aside-card { padding:26px; background:#fff; border:1px solid var(--line); }
.aside-card-dark { color:#fff; background:var(--ink); border-color:var(--ink); }
.aside-card-dark>span { color:var(--mint); font-size:10px; font-weight:900; letter-spacing:.14em; }
.aside-card-dark>strong { display:block; margin:14px 0 12px; font-size:25px; }
.aside-card-dark p { margin:0; color:rgba(255,255,255,.62); font-size:14px; line-height:1.7; }
.aside-card h2 { margin:0 0 18px; font-size:18px; }
.aside-card>a { display:flex; min-height:44px; color:var(--ink); font-size:14px; font-weight:700; border-top:1px solid var(--line); align-items:center; justify-content:space-between; }
.aside-card>a[aria-current="page"] { color:var(--red); }
.aside-button { width:100%; }
.related-section { padding:54px 0 0; }
.related-section h2 { margin:12px 0 28px; font-size:32px; letter-spacing:-.04em; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.related-grid a { display:flex; min-height:138px; padding:24px; color:var(--ink); background:var(--mint); flex-direction:column; justify-content:space-between; }
.related-grid strong { font-size:18px; }
.related-grid span { font-size:12px; font-weight:800; }
.faq-list-page { margin-top:28px; }
.community-updated { display:block; margin-top:8px; color:var(--muted); font-size:12px; }
.footer-disclaimer { padding:24px 0 0; margin-top:36px; border-top:1px solid rgba(255,255,255,.08); }
.footer-disclaimer strong { display:block; margin-bottom:8px; color:rgba(255,255,255,.72); font-size:13px; }
.footer-disclaimer p { max-width:920px; margin:0; color:rgba(255,255,255,.4); font-size:12px; line-height:1.75; }
.footer-bottom {
    display:flex;
    padding-top:28px;
    margin-top:54px;
    border-top:1px solid rgba(255,255,255,.08);
    justify-content:space-between;
    gap:30px;
}
.footer-bottom p { margin:0; color:rgba(255,255,255,.3); font-size:11px; }
:focus-visible { outline:3px solid var(--mint); outline-offset:4px; }

@media (max-width:1080px) {
    .primary-nav { gap:20px; }
    .hero-grid { grid-template-columns:1fr 380px; gap:42px; }
    .product-grid { grid-template-columns:repeat(2,1fr); }
    .product-body p { min-height:48px; }
    .review-grid { grid-template-columns:repeat(2,1fr); }
    .knowledge-grid { grid-template-columns:repeat(2,1fr); }
    .subpage-layout { grid-template-columns:minmax(0,1fr) 270px; gap:32px; }
    .verified-review-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:820px) {
    html { scroll-padding-top:70px; }
    body { padding-bottom:76px; }
    .route-bar { top:70px; }
    .route-bar-inner { width:min(100% - 32px,var(--container)); }
    .container,.header-inner { width:min(100% - 32px,var(--container)); }
    .header-inner { min-height:70px; gap:16px; }
    .brand-mark { width:36px; height:36px; border-radius:11px; font-size:19px; }
    .brand-copy strong { font-size:17px; }
    .brand-copy small { display:none; }
    .header-cta { padding:9px 15px; font-size:12px; }
    .primary-nav { margin-left:auto; overflow-x:auto; gap:18px; scrollbar-width:none; }
    .primary-nav::-webkit-scrollbar { display:none; }
    .primary-nav a { font-size:12px; }
    .hero { min-height:auto; }
    .hero-grid { min-height:auto; padding:86px 0 70px; grid-template-columns:1fr; gap:46px; }
    .hero h1 { font-size:clamp(60px,18vw,92px); }
    .hero-panel { max-width:580px; }
    .trust-grid { min-height:auto; padding:26px 0; grid-template-columns:1fr; }
    .trust-grid div,.trust-grid div:first-child,.trust-grid div:last-child {
        min-height:0;
        padding:13px 0;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.18);
    }
    .trust-grid div:last-child { border-bottom:0; }
    .section { padding:88px 0; }
    .split-layout,.faq-layout,.shipping-grid { grid-template-columns:1fr; gap:48px; }
    .principle-grid { grid-template-columns:1fr; }
    .principle-grid article { min-height:0; }
    .principle-grid h3 { margin-top:28px; }
    .identity-panel { grid-template-columns:1fr; }
    .identity-panel div,.identity-panel div:nth-child(2n),.identity-panel div:nth-last-child(-n+2) { border-right:0; border-bottom:1px solid rgba(255,255,255,.08); }
    .identity-panel div:last-child { border-bottom:0; }
    .official-grid { grid-template-columns:1fr; }
    .official-card { min-height:390px; }
    .domain-notice { grid-template-columns:1fr; gap:10px; }
    .product-grid { grid-template-columns:1fr; }
    .product-card { display:grid; grid-template-columns:minmax(210px,42%) 1fr; }
    .product-image { min-height:270px; aspect-ratio:auto; border-right:1px solid rgba(16,17,23,.08); border-bottom:0; }
    .product-body { min-width:0; min-height:270px; }
    .process-grid { grid-template-columns:repeat(2,1fr); }
    .process-grid li,.process-grid li:first-child,.process-grid li:last-child {
        min-height:240px;
        padding:28px;
        border-right:1px solid var(--line);
        border-bottom:1px solid var(--line);
    }
    .process-grid li:nth-child(2n) { border-right:0; }
    .process-grid h3 { margin-top:55px; }
    .shipping-section { padding:88px 0; }
    .delivery-facts { margin-top:48px; grid-template-columns:1fr; }
    .delivery-facts article,.delivery-facts article:first-child,.delivery-facts article:last-child {
        min-height:0;
        padding:24px 0;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.2);
    }
    .delivery-facts article:last-child { border-bottom:0; }
    .support-section { padding:88px 0; }
    .support-shell { grid-template-columns:1fr; gap:54px; }
    .support-intro>p:not(.section-kicker) { max-width:650px; }
    .review-card { min-height:230px; }
    .contact-card { min-height:0; padding:48px; align-items:flex-start; flex-direction:column; }
    .contact-actions { justify-content:flex-start; }
    .mobile-quick-contact {
        position:fixed;
        z-index:120;
        right:12px;
        bottom:12px;
        left:12px;
        display:flex;
        min-height:58px;
        padding:9px 18px;
        border:1px solid rgba(255,255,255,.18);
        border-radius:18px;
        color:#fff;
        background:linear-gradient(135deg,var(--red),var(--red-deep));
        box-shadow:0 18px 48px rgba(9,10,14,.34);
        align-items:center;
        justify-content:space-between;
        gap:18px;
    }
    .mobile-quick-contact span { display:flex; flex-direction:column; line-height:1.2; }
    .mobile-quick-contact small { color:rgba(255,255,255,.66); font-size:8px; font-weight:800; letter-spacing:.15em; }
    .mobile-quick-contact strong { margin-top:3px; font-size:14px; }
    .mobile-quick-contact b { font-size:21px; }
    .footer-grid { grid-template-columns:1fr; }
    .footer-links { justify-content:flex-start; }
    .subpage-hero { padding:72px 0 64px; }
    .subpage-layout { grid-template-columns:1fr; }
    .subpage-aside { position:static; grid-template-columns:repeat(2,1fr); }
    .aside-button { grid-column:1/-1; }
    .community-heading,.community-top-grid { grid-template-columns:1fr; }
    .review-heading { align-items:flex-start; flex-direction:column; }
}

@media (max-width:560px) {
    body { word-break:normal; }
    .header-inner { overflow:hidden; }
    .primary-nav { display:none; }
    .header-cta { display:inline-flex; margin-left:auto; }
    .hero-grid { padding-top:68px; }
    .hero h1 { font-size:58px; }
    .hero-lead { margin-top:26px; font-size:16px; }
    .hero-actions { align-items:stretch; flex-direction:column; }
    .button { width:100%; }
    .route-bar-inner { width:calc(100% - 24px); min-height:40px; gap:2px 6px; font-size:10px; }
    .route-modal-trigger { margin-left:2px; }
    .address-modal { padding:16px; }
    .address-modal-dialog { padding:36px 24px 26px; border-radius:22px; }
    .hero-panel { padding:26px; }
    .section-intro h2,.section-heading h2,.shipping-section h2,.support-intro h2,.contact-card h2 { font-size:36px; word-break:keep-all; }
    .about-lead { font-size:24px; }
    .official-card { min-height:360px; padding:26px; }
    .official-mark { width:70px; height:70px; margin:40px 0 24px; border-radius:21px; font-size:34px; }
    .official-card h3 { font-size:30px; }
    .domain-notice { padding:24px; }
    .product-grid,.process-grid { grid-template-columns:1fr; }
    .product-card { display:flex; }
    .product-image { min-height:0; aspect-ratio:4/3; border-right:0; border-bottom:1px solid rgba(16,17,23,.08); }
    .product-body { min-height:270px; }
    .product-body h3 { font-size:15px; }
    .review-grid { grid-template-columns:1fr; }
    .product-body p { min-height:0; }
    .process-grid li,.process-grid li:first-child,.process-grid li:last-child,.process-grid li:nth-child(2n) {
        min-height:0;
        padding:26px 0 30px;
        border-right:0;
    }
    .process-grid h3 { margin-top:32px; }
    .contact-section { padding-bottom:56px; }
    .contact-card { width:calc(100% - 24px); padding:36px 24px; border-radius:22px; }
    .contact-actions { width:100%; flex-direction:column; }
    .contact-actions .button { width:100%; }
    .support-channel { min-height:210px; }
    .support-facts article { min-height:0; }
    .footer-grid,.footer-bottom { gap:30px; }
    .footer-bottom { align-items:flex-start; flex-direction:column; }
    .knowledge-grid,.content-list,.related-grid,.subpage-aside { grid-template-columns:1fr; }
    .knowledge-card { min-height:0; padding:28px; }
    .knowledge-card h3 { margin-top:32px; }
    .subpage-hero h1 { font-size:44px; }
    .subpage-hero>div>p:last-child { font-size:16px; }
    .content-section { padding:30px 24px; }
    .content-section h2 { font-size:28px; }
    .aside-button { grid-column:auto; }
    .verified-reviews { padding:30px 20px; }
    .verified-review-grid { grid-template-columns:1fr; }
    .verified-review-card { min-height:240px; }
}

@media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; }
}
