@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Lato:wght@400;700&display=swap');
/* ===== MIDNIGHT ROSE — Design System ===== */
:root {
    --ke5b0:        #B76E79;
    --a766c:  #D4A0A8;
    --m77c5:   #8E4F58;
    --c85b4:         #E8B4B8;
    --c10e5:         #B76E79;
    --g45ed:    #8E4F58;
    --l0957:         #B76E79;
    --p4693:    #8E4F58;
    --eaf82:           #08060A;
    --f57cf:         #100C14;
    --l32d6:         #18121C;
    --j22d9:         #201824;
    --bc40d:        #FFFFFF;
    --p0083:         #B8A8B4;
    --l6140:       #7E6E7A;
    --n6d5e:       #B8A8B4;
    --oe8d8:    'Cormorant Garamond', Georgia, serif;
    --i7cd7:    'Lato', sans-serif;
    --pa08b:       14px;
    --n8f96:    22px;
    --g9d0a:    8px;
    --i00db:        1100px;
    --pdc7e:       0 4px 28px rgba(0,0,0,.55);
    --ef9ec:         0 0 32px rgba(183,110,121,.25);
    --mauve:        #9B7FA0;
    --blush:        #E8B4B8;
}

/* ===== RESET & BASE ===== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
    font-family: var(--i7cd7);
    background: var(--eaf82);
    color: var(--bc40d);
    line-height: 1.75;
    font-size: 16px;
    overflow-x: hidden;
}
a { color: var(--a766c); text-decoration: none; transition: color .2s; }
a:hover { color: var(--c85b4); }
img { max-width: 100%; height: auto; display: block; }

.j9f519 { width: 92%; max-width: var(--i00db); margin: 0 auto; }

.g846c7 {
    position: absolute; width: 1px; height: 1px;
    padding: 0; margin: -1px; overflow: hidden;
    clip: rect(0,0,0,0); border: 0;
}

/* ===== SKIP LINK ===== */
.g41f5b {
    position: absolute; top: -100px; left: 50%;
    transform: translateX(-50%);
    background: var(--ke5b0); color: var(--bc40d);
    padding: 8px 16px; border-radius: var(--g9d0a);
    z-index: 999; transition: top .2s;
}
.g41f5b:focus { top: 10px; }

/* ===== SITE HEADER ===== */
.j4d6b5 {
    position: sticky; top: 0; z-index: 100;
    background: rgba(8,6,10,.94);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(183,110,121,.12);
}
.p7b29c {
    display: flex; align-items: center; justify-content: space-between;
    padding: 16px 0; gap: 16px;
}
.of609b {
    font-family: var(--oe8d8);
    font-size: clamp(1.05rem, 2.5vw, 1.4rem);
    font-weight: 700; color: var(--bc40d);
    white-space: nowrap; text-decoration: none;
    letter-spacing: .5px;
}
.of609b:hover { color: var(--a766c); }

/* Main Nav */
.m78827 { display: flex; align-items: center; gap: 20px; }
.b77e84 {
    display: flex; gap: 26px; list-style: none;
    font-size: .9rem; font-weight: 400; align-items: center;
    letter-spacing: .2px;
}
.b77e84 a {
    color: var(--p0083); padding: 4px 0;
    position: relative; transition: color .2s; text-decoration: none;
}
.b77e84 a:hover { color: var(--a766c); }

/* Language Select */
.ma4761 {
    background: var(--l32d6); color: var(--bc40d);
    border: 1px solid rgba(183,110,121,.2);
    border-radius: var(--g9d0a);
    padding: 6px 28px 6px 10px; font-size: .85rem;
    cursor: pointer; appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23B76E79'%3E%3Cpath d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 8px center;
    transition: border-color .2s;
}
.ma4761:hover, .ma4761:focus { border-color: var(--ke5b0); outline: none; }

/* Menu Toggle */
.l785e2 {
    display: none; background: none; border: none;
    cursor: pointer; padding: 6px; width: 36px; height: 36px;
    align-items: center; justify-content: center; position: relative;
}
.a55495, .a55495::before, .a55495::after {
    display: block; width: 24px; height: 2px;
    background: var(--bc40d); border-radius: 2px; transition: transform .3s, opacity .3s;
}
.a55495 { position: relative; }
.a55495::before, .a55495::after { content: ''; position: absolute; left: 0; }
.a55495::before { top: -7px; }
.a55495::after { top: 7px; }

/* Mobile Nav */
.eb148f {
    display: none; position: fixed; inset: 0;
    background: rgba(8,6,10,.97); z-index: 200;
    align-items: center; justify-content: center;
    flex-direction: column; padding: 60px 20px;
}
.eb148f.gf3f5c { display: flex; }
.o7926e {
    list-style: none; display: flex; flex-direction: column;
    align-items: center; gap: 28px;
}
.o7926e a {
    font-size: 1.2rem; font-weight: 700; color: var(--bc40d); text-decoration: none;
    font-family: var(--oe8d8); letter-spacing: .5px;
}
.o7926e a:hover { color: var(--a766c); }

/* ===== BUTTONS ===== */
.cd258b {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    font-family: var(--oe8d8); font-weight: 700; font-size: .95rem;
    padding: 13px 30px; border-radius: var(--pa08b); border: none;
    cursor: pointer; transition: transform .2s, box-shadow .2s, background .2s;
    text-decoration: none; white-space: nowrap; letter-spacing: .4px;
}
.btn-primary {
    background: linear-gradient(135deg, var(--ke5b0) 0%, var(--mauve) 100%);
    color: var(--bc40d); box-shadow: var(--ef9ec);
}
.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 44px rgba(183,110,121,.5);
    color: var(--bc40d);
}
.btn-secondary {
    background: transparent; color: var(--a766c);
    border: 2px solid var(--ke5b0);
}
.btn-secondary:hover { background: rgba(183,110,121,.08); color: var(--c85b4); }

/* Gold CTA — main call-to-action (Rose Gold) */
@keyframes pulse-glow {
    0%,100% { box-shadow: 0 0 22px rgba(183,110,121,.3); }
    50%      { box-shadow: 0 0 48px rgba(183,110,121,.6), 0 0 88px rgba(183,110,121,.15); }
}
.hd7f09 {
    background: linear-gradient(135deg, #D4A0A8 0%, #B76E79 55%, #8E4F58 100%);
    color: #12080A; font-weight: 700; font-size: 1rem;
    box-shadow: 0 0 28px rgba(183,110,121,.35);
    animation: pulse-glow 3s ease-in-out infinite;
}
.hd7f09:hover {
    transform: translateY(-3px) scale(1.03);
    box-shadow: 0 0 56px rgba(183,110,121,.65);
    color: #12080A; animation: none;
}

.mf7a95 { padding: 18px 44px; font-size: 1.1rem; border-radius: var(--n8f96); }
.geb290 { padding: 8px 18px; font-size: .85rem; border-radius: var(--g9d0a); }

/* Nav CTA in header */
.ca8aa1 {
    background: linear-gradient(135deg, #D4A0A8 0%, var(--ke5b0) 100%);
    color: #12080A !important; font-weight: 700;
    padding: 9px 22px; border-radius: var(--g9d0a);
    box-shadow: 0 0 16px rgba(183,110,121,.25);
    transition: transform .2s, box-shadow .2s;
}
.ca8aa1:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 30px rgba(183,110,121,.5);
    color: #12080A !important;
}

/* ===== PAGE HERO (subpages) ===== */
.h0c5f2 {
    padding: clamp(56px, 8vw, 96px) 0 clamp(48px, 6vw, 74px);
    text-align: center;
    background:
        radial-gradient(ellipse 80% 55% at 50% 0%, rgba(183,110,121,.12) 0%, transparent 65%),
        radial-gradient(ellipse 50% 40% at 50% 100%, rgba(155,127,160,.06) 0%, transparent 60%),
        var(--eaf82);
    position: relative; overflow: hidden;
}
.h0c5f2::before {
    content: '';
    position: absolute; inset: 0;
    background: url("data:image/svg+xml,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='40' cy='40' r='1.2' fill='rgba(183,110,121,0.04)'/%3E%3C/svg%3E");
    pointer-events: none;
}
.hc348c {
    font-family: var(--oe8d8);
    font-size: clamp(2rem, 4.5vw, 3.2rem);
    font-weight: 700; line-height: 1.15; margin-bottom: 18px;
    background: linear-gradient(135deg, #D4A0A8 0%, #B76E79 50%, #8E4F58 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.b00cfd {
    font-size: clamp(.97rem, 2vw, 1.12rem); color: var(--p0083);
    max-width: 640px; margin: 0 auto 34px; line-height: 1.75;
}

/* ===== HERO ===== */
.hero {
    position: relative;
    padding: clamp(68px, 10vw, 116px) 0 clamp(56px, 8vw, 92px);
    text-align: center; overflow: hidden;
    background:
        radial-gradient(ellipse 80% 60% at 50% 0%, rgba(183,110,121,.11) 0%, transparent 70%),
        radial-gradient(ellipse 60% 50% at 50% 100%, rgba(155,127,160,.07) 0%, transparent 60%),
        var(--eaf82);
}
.hero::before {
    content: '';
    position: absolute; inset: 0;
    background: url("data:image/svg+xml,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='40' cy='40' r='1.2' fill='rgba(183,110,121,0.03)'/%3E%3C/svg%3E");
    pointer-events: none;
}
.hero h1 {
    font-family: var(--oe8d8);
    font-size: clamp(2.2rem, 5vw, 3.6rem);
    font-weight: 700; line-height: 1.12; margin-bottom: 20px;
    background: linear-gradient(135deg, #D4A0A8 0%, #B76E79 45%, #8E4F58 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.hero-subtitle {
    font-size: clamp(1rem, 2vw, 1.15rem); color: var(--p0083);
    max-width: 660px; margin: 0 auto 30px; line-height: 1.75;
}
.hero-stats {
    display: flex; justify-content: center;
    gap: clamp(10px, 3vw, 32px); flex-wrap: wrap; margin-bottom: 34px;
}
.hero-stat {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: .92rem; color: var(--p0083);
    padding: 8px 16px;
    background: rgba(183,110,121,.06);
    border: 1px solid rgba(183,110,121,.14);
    border-radius: var(--g9d0a);
}
.hero-stat strong { color: var(--a766c); }

/* ===== SECTIONS ===== */
.ncd455 { padding: clamp(56px, 7vw, 84px) 0; }
.le281f { background: var(--f57cf); }
.section-tag {
    display: inline-block; font-size: .75rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 2px;
    color: var(--ke5b0); margin-bottom: 10px;
    font-family: var(--i7cd7);
}
.ncd455 h2, .g8a3ab {
    font-family: var(--oe8d8);
    font-size: clamp(1.55rem, 3.5vw, 2.2rem);
    font-weight: 700; margin-bottom: 18px; line-height: 1.22;
}
.ncd455 h3 {
    font-family: var(--oe8d8); font-size: 1.15rem; font-weight: 600;
    margin: 30px 0 10px; color: var(--a766c);
}
.ncd455 p, .section-desc {
    color: var(--p0083); font-size: .95rem; line-height: 1.75; margin-bottom: 14px;
}
.section-desc { max-width: 700px; margin-bottom: 38px; }
.ncd455 ul, .ncd455 ol {
    color: var(--p0083); font-size: .93rem; line-height: 1.75;
    padding-left: 20px; margin-bottom: 16px;
}
.ncd455 li { margin-bottom: 8px; }
.ncd455 li strong { color: var(--bc40d); }

/* ===== CARDS / GRID ===== */
.grid { display: grid; gap: 22px; }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-4 { grid-template-columns: repeat(4, 1fr); }

.card {
    background: linear-gradient(145deg, var(--l32d6), var(--j22d9));
    border: 1px solid rgba(183,110,121,.1);
    border-radius: var(--pa08b); padding: 30px 26px;
    transition: transform .25s, border-color .25s, box-shadow .25s;
}
.card:hover {
    transform: translateY(-4px);
    border-color: rgba(183,110,121,.28);
    box-shadow: var(--pdc7e);
}
.card-icon { font-size: 2rem; margin-bottom: 14px; display: block; }
.card h3 {
    font-family: var(--oe8d8); font-size: 1.1rem; font-weight: 700;
    margin-bottom: 10px; color: var(--bc40d);
}
.card p { color: var(--p0083); font-size: .9rem; line-height: 1.65; }

/* ===== INFO TABLE ===== */
.eb1912 { overflow-x: auto; margin: 24px 0; border-radius: var(--g9d0a); }
.n02d13 { width: 100%; border-collapse: collapse; font-size: .93rem; margin: 0; }
.n02d13 thead th {
    background: var(--j22d9); color: var(--bc40d); font-weight: 600;
    font-size: .88rem; text-align: left; padding: 14px 16px;
    border-bottom: 2px solid rgba(183,110,121,.18);
}
.n02d13 thead th:first-child { border-radius: var(--g9d0a) 0 0 0; }
.n02d13 thead th:last-child { border-radius: 0 var(--g9d0a) 0 0; }
.n02d13 tr { border-bottom: 1px solid rgba(255,255,255,.05); }
.n02d13 td { padding: 13px 16px; }
.n02d13 td:first-child { color: var(--p0083); font-weight: 500; width: 42%; }
.n02d13 td:last-child { color: var(--bc40d); font-weight: 600; }
.n02d13 tr:hover { background: rgba(183,110,121,.04); }

/* ===== STEPS ===== */
.steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 24px; counter-reset: step;
}
.step {
    text-align: center; padding: 26px 16px; counter-increment: step;
}
.step::before {
    content: counter(step);
    display: flex; align-items: center; justify-content: center;
    width: 50px; height: 50px; margin: 0 auto 18px;
    background: linear-gradient(135deg, var(--ke5b0), var(--mauve));
    border-radius: 50%; font-family: var(--oe8d8);
    font-size: 1.25rem; font-weight: 700; color: var(--bc40d);
}
.step h3 { font-size: .97rem; font-weight: 700; margin-bottom: 8px; font-family: var(--oe8d8); }
.step p { color: var(--p0083); font-size: .87rem; line-height: 1.6; }

/* ===== FAQ — details/summary ===== */
.m0fd58 { max-width: 800px; margin: 0 auto; }
details.k27028 { border-bottom: 1px solid rgba(255,255,255,.06); }
details.k27028 summary {
    display: block; list-style: none;
    color: var(--bc40d); font-family: var(--oe8d8);
    font-size: 1rem; font-weight: 600;
    padding: 22px 40px 22px 0;
    cursor: pointer; position: relative; transition: color .2s;
}
details.k27028 summary::-webkit-details-marker { display: none; }
details.k27028 summary::marker { display: none; content: ''; }
details.k27028 summary::after {
    content: '+'; position: absolute; right: 0; top: 50%;
    transform: translateY(-50%); font-size: 1.4rem;
    color: var(--ke5b0); transition: transform .3s;
}
details.k27028[open] summary::after { content: '\2212'; }
details.k27028 summary:hover { color: var(--a766c); }
details.k27028 > p { padding: 0 0 22px; color: var(--p0083); font-size: .9rem; line-height: 1.75; }
details.k27028 > div { padding: 0 0 22px; color: var(--p0083); font-size: .9rem; line-height: 1.75; }
.faq-section { background: var(--f57cf); }

/* ===== INFO GRID & CARDS ===== */
.pe355f {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 22px; margin-top: 26px;
}
.kf6a21 {
    background: linear-gradient(145deg, var(--l32d6), var(--j22d9));
    border: 1px solid rgba(183,110,121,.1); border-radius: var(--pa08b); padding: 30px 24px;
    transition: transform .25s, border-color .25s, box-shadow .25s;
}
.kf6a21:hover {
    transform: translateY(-5px);
    border-color: rgba(183,110,121,.3);
    box-shadow: var(--pdc7e);
}
.heddf0 { font-size: 2.2rem; margin-bottom: 14px; display: block; }
.kf6a21 h3 {
    font-family: var(--oe8d8); font-size: 1.1rem; font-weight: 700;
    margin-bottom: 10px; color: var(--bc40d);
}
.kf6a21 p { color: var(--p0083); font-size: .9rem; line-height: 1.65; }

/* ===== BONUS GRID & CARDS ===== */
.n89bf0 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 22px; margin-top: 26px;
}
.h341dc {
    background: linear-gradient(145deg, var(--l32d6), var(--j22d9));
    border: 1px solid rgba(183,110,121,.12); border-radius: var(--pa08b); padding: 30px 24px;
    transition: transform .25s, border-color .25s, box-shadow .25s;
}
.h341dc:hover { transform: translateY(-5px); border-color: rgba(183,110,121,.35); }
.h341dc h3 {
    font-family: var(--oe8d8); font-size: 1.1rem; font-weight: 700;
    margin-bottom: 10px; color: var(--ke5b0);
}
.h341dc p { color: var(--p0083); font-size: .9rem; line-height: 1.65; }

/* ===== STEPS GRID & CARDS ===== */
.j8521b {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 22px; margin-top: 26px;
}
.bca313 { text-align: center; padding: 24px 14px; }
.hbed55 {
    display: flex; align-items: center; justify-content: center;
    width: 52px; height: 52px; margin: 0 auto 16px;
    background: linear-gradient(135deg, var(--ke5b0), var(--mauve));
    border-radius: 50%; font-family: var(--oe8d8);
    font-size: 1.2rem; font-weight: 700; color: var(--bc40d);
    box-shadow: 0 0 24px rgba(183,110,121,.3);
}
.bca313 h3 {
    font-family: var(--oe8d8); font-size: 1rem; font-weight: 700;
    margin-bottom: 8px; color: var(--bc40d);
}
.bca313 p { color: var(--p0083); font-size: .87rem; line-height: 1.55; }

/* ===== REVIEW SCORE CARD ===== */
.jdc47b {
    background: linear-gradient(145deg, var(--l32d6), var(--j22d9));
    border: 1px solid rgba(183,110,121,.16); border-radius: var(--n8f96);
    padding: 38px 34px; text-align: center;
    max-width: 560px; margin: 0 auto 34px;
    box-shadow: 0 8px 44px rgba(0,0,0,.45);
}
.j49e74 { margin-top: 26px; }
.fc336f {
    display: grid; grid-template-columns: 1fr 140px auto;
    align-items: center; gap: 12px;
    padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.05);
    font-size: .9rem;
}
.fc336f > span:first-child { color: var(--p0083); text-align: left; }
.p8777d {
    height: 7px; background: rgba(255,255,255,.07);
    border-radius: 4px; overflow: hidden;
}
.d36081 {
    height: 100%;
    background: linear-gradient(90deg, var(--ke5b0) 0%, #D4A0A8 100%);
    border-radius: 4px;
}
.fc336f > span:last-child { color: var(--a766c); font-weight: 700; min-width: 28px; text-align: right; }

/* ===== PROS / CONS ===== */
.f0d3d6 { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 30px; }
.l521a1, .mc0386 {
    background: linear-gradient(145deg, var(--l32d6), var(--j22d9));
    border-radius: var(--pa08b); padding: 26px 24px;
}
.l521a1 { border-top: 3px solid var(--ke5b0); }
.mc0386 { border-top: 3px solid #8E4444; }
.l521a1 h3, .l521a1 h4 { color: var(--a766c); margin-bottom: 14px; font-size: 1.05rem; font-family: var(--oe8d8); }
.mc0386 h3, .mc0386 h4 { color: #C86060; margin-bottom: 14px; font-size: 1.05rem; font-family: var(--oe8d8); }
.l521a1 ul, .mc0386 ul { list-style: none; padding: 0; margin: 0; }
.l521a1 li::before { content: '\2713 '; color: var(--ke5b0); font-weight: 700; }
.mc0386 li::before { content: '\2717 '; color: #8E4444; font-weight: 700; }
.l521a1 li, .mc0386 li { padding: 6px 0; color: var(--p0083); font-size: .9rem; line-height: 1.55; }

/* ===== CTA BANNER ===== */
.l23691 {
    text-align: center; padding: clamp(56px, 7vw, 84px) 0;
    background:
        radial-gradient(ellipse 70% 60% at 50% 50%, rgba(183,110,121,.08) 0%, transparent 65%),
        radial-gradient(ellipse 80% 50% at 50% 50%, rgba(155,127,160,.06) 0%, transparent 70%),
        var(--f57cf);
    border-top: 1px solid rgba(183,110,121,.1);
    border-bottom: 1px solid rgba(183,110,121,.1);
}
.l23691 h2 {
    font-family: var(--oe8d8);
    font-size: clamp(1.6rem, 3.5vw, 2.4rem);
    font-weight: 700; margin-bottom: 14px;
    background: linear-gradient(135deg, #D4A0A8, #B76E79);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.l23691 p { color: var(--p0083); margin-bottom: 34px; font-size: .97rem; max-width: 560px; margin-left: auto; margin-right: auto; }

/* ===== HIGHLIGHT BOX ===== */
.highlight-box {
    background: linear-gradient(135deg, rgba(183,110,121,.07), rgba(155,127,160,.04));
    border: 1px solid rgba(183,110,121,.18); border-left: 4px solid var(--ke5b0);
    border-radius: var(--g9d0a); padding: 22px 26px; margin: 26px 0;
}
.highlight-box p { color: var(--p0083); font-size: .9rem; }
.highlight-box strong { color: var(--a766c); }

/* ===== BREADCRUMB ===== */
.ofeb37 { padding: 14px 0; font-size: .82rem; }
.k1aeee { display: flex; list-style: none; gap: 8px; flex-wrap: wrap; }
.k1aeee li + li::before { content: '\203A'; margin-right: 8px; color: var(--l6140); }
.ofeb37 a { color: var(--l6140); }
.ofeb37 a:hover { color: var(--a766c); }
.ofeb37 [aria-current] { color: var(--ke5b0); }

/* ===== SITE FOOTER ===== */
.f07097 {
    background: var(--eaf82); border-top: 1px solid rgba(255,255,255,.05);
    padding: 52px 0 30px; font-size: .85rem;
}
.footer-nav { margin-bottom: 26px; }
.f2f4e9 {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: 10px 26px; list-style: none;
}
.f2f4e9 a {
    color: var(--l6140); transition: color .2s;
    text-decoration: none; font-size: .88rem;
}
.f2f4e9 a:hover { color: var(--a766c); }

.d69fc3 {
    text-align: center; padding: 26px 0 18px;
    border-top: 1px solid rgba(255,255,255,.05); margin-top: 8px;
}
.d69fc3 p {
    color: var(--l6140); font-size: .8rem; line-height: 1.65;
    max-width: 700px; margin: 10px auto 0;
}
.d69fc3 a { color: var(--ke5b0); }
.od6553 { text-align: center; color: var(--l6140); font-size: .78rem; margin-top: 14px; }

/* ===== TEXT-CONTENT (SEO long-form) ===== */
.i08640 { max-width: 800px; margin: 0 auto; }
.i08640 p {
    color: var(--p0083); font-size: .95rem; line-height: 1.85;
    margin-bottom: 20px;
}
.i08640 p:last-child { margin-bottom: 0; }
.i08640 strong { color: var(--bc40d); }
.i08640 a { color: var(--a766c); text-decoration: underline; text-underline-offset: 3px; }
.i08640 a:hover { color: var(--c85b4); }

/* ===== IMAGE-TEXT (image + text side by side) ===== */
.g51957 {
    display: grid; grid-template-columns: 1fr 1fr; gap: 44px;
    align-items: center; margin-top: 26px;
}
.b2905b { direction: rtl; }
.b2905b > * { direction: ltr; }
.c5513b { border-radius: var(--n8f96); overflow: hidden; }
.c5513b img {
    width: 100%; height: auto; display: block;
    border-radius: var(--n8f96);
    border: 1px solid rgba(183,110,121,.12);
    box-shadow: 0 8px 36px rgba(0,0,0,.45);
}
.g7a8b2 { color: var(--p0083); font-size: .93rem; line-height: 1.75; }
.g7a8b2 strong { color: var(--bc40d); }
.g7a8b2 a { color: var(--a766c); }
@media (max-width: 768px) {
    .g51957 { grid-template-columns: 1fr; gap: 24px; }
    .b2905b { direction: ltr; }
}

/* ===== AGE BADGE ===== */
.age-badge {
    display: inline-flex; align-items: center; justify-content: center;
    width: 36px; height: 36px; border: 2px solid var(--m77c5);
    border-radius: 50%; font-weight: 700; font-size: .8rem;
    color: var(--m77c5); margin: 0 6px; vertical-align: middle;
}

/* ===== SCROLL TO TOP ===== */
.hfcefa {
    position: fixed; bottom: 28px; right: 28px;
    width: 44px; height: 44px; background: var(--ke5b0);
    color: var(--bc40d); border: none; border-radius: 50%;
    font-size: 1.2rem; cursor: pointer;
    opacity: 0; visibility: hidden;
    transition: opacity .3s, visibility .3s, transform .2s;
    z-index: 90; box-shadow: var(--pdc7e);
}
.hfcefa.l5258f { opacity: 1; visibility: visible; }
.hfcefa:hover { transform: translateY(-3px); background: var(--m77c5); }

/* ===== REVIEW SCORE (review page) ===== */
.j0631e {
    font-family: var(--oe8d8); font-size: 5rem; font-weight: 700;
    background: linear-gradient(135deg, #D4A0A8, #B76E79);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
    line-height: 1;
}
.score-stars { font-size: 1.8rem; color: var(--ke5b0); letter-spacing: 3px; margin: 10px 0; }
.score-table { width: 100%; border-collapse: collapse; margin-top: 22px; font-size: .9rem; }
.score-table td { padding: 10px 12px; border-bottom: 1px solid rgba(255,255,255,.05); }
.score-table td:first-child { color: var(--p0083); width: 55%; }
.score-table td:last-child { color: var(--a766c); font-weight: 600; text-align: right; }

/* ===== STICKY MOBILE CTA ===== */
.ef70c6 {
    display: none;
    position: fixed; bottom: 0; left: 0; right: 0; z-index: 95;
    padding: 12px 16px;
    background: rgba(8,6,10,.96);
    backdrop-filter: blur(12px);
    border-top: 1px solid rgba(183,110,121,.18);
    text-align: center;
    box-shadow: 0 -4px 28px rgba(0,0,0,.55);
}
.ef70c6 .cd258b { width: 100%; max-width: 360px; justify-content: center; }

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
    .grid-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .b77e84 { display: none; }
    .m78827 .ma4761 { display: none; }
    .l785e2 { display: flex; }
    .grid-3 { grid-template-columns: 1fr; }
    .grid-2 { grid-template-columns: 1fr; }
    .grid-4 { grid-template-columns: 1fr; }
    .f0d3d6 { grid-template-columns: 1fr; }
    section, .ncd455 { padding: clamp(36px, 6vw, 56px) 0; }
    .hero { padding: clamp(48px, 8vw, 80px) 0 clamp(36px, 6vw, 56px); }
    .f2f4e9 { gap: 8px 14px; }
    .steps { grid-template-columns: 1fr 1fr; }
    .j8521b { grid-template-columns: 1fr 1fr; }
    .pe355f { grid-template-columns: 1fr 1fr; }
    .fc336f { grid-template-columns: 1fr 100px auto; }
    .ef70c6 { display: block; }
    body { padding-bottom: 72px; }
}
@media (max-width: 480px) {
    body { font-size: 15px; }
    .mf7a95 { padding: 15px 30px; font-size: 1rem; }
    .steps { grid-template-columns: 1fr; }
    .j8521b { grid-template-columns: 1fr; }
    .pe355f { grid-template-columns: 1fr; }
    .p7b29c { padding: 10px 0; }
    .hero-stat { font-size: .83rem; padding: 5px 10px; }
    .j0631e { font-size: 3.5rem; }
    .fc336f { grid-template-columns: 1fr 80px auto; gap: 8px; }
    .f0d3d6 { grid-template-columns: 1fr; }
    .jdc47b { padding: 24px 18px; }
}

/* ===== LANGUAGE SWITCHER ===== */
.m4dd80 {
    position: relative;
    margin-left: 10px;
    flex-shrink: 0;
}
.m4dd80 summary.i72bb3 {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 5px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
    color: var(--bc40d);
    padding: 6px 11px;
    border-radius: var(--g9d0a);
    cursor: pointer;
    font-size: .82rem;
    font-family: var(--i7cd7);
    white-space: nowrap;
    transition: background .2s, border-color .2s;
    user-select: none;
}
.m4dd80 summary.i72bb3::-webkit-details-marker { display: none; }
.m4dd80 summary.i72bb3::marker { display: none; }
.m4dd80:hover summary.i72bb3,
.m4dd80[open] summary.i72bb3 {
    background: rgba(255,255,255,.1);
    border-color: rgba(183,110,121,.35);
    color: var(--a766c);
}
.je32cf { font-size: .7rem; opacity: .7; transition: transform .2s; }
.m4dd80[open] .je32cf { transform: rotate(180deg); }

.acea86 {
    display: none;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    background: var(--l32d6);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: var(--pa08b);
    padding: 6px;
    list-style: none;
    z-index: 300;
    box-shadow: 0 8px 36px rgba(0,0,0,.65);
    min-width: 160px;
}
.m4dd80[open] .acea86 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2px;
    animation: fadeInDown .15s ease;
}
@keyframes fadeInDown {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}
.acea86 li a {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    color: var(--n6d5e);
    border-radius: var(--g9d0a);
    font-size: .82rem;
    white-space: nowrap;
    transition: background .15s, color .15s;
}
.acea86 li a:hover,
.acea86 li a.f88fb4 {
    background: rgba(183,110,121,.1);
    color: var(--a766c);
}
.acea86 li a.f88fb4 { font-weight: 700; }

/* Mobile lang bar */
.m9ac21 {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 16px 20px 20px;
    border-top: 1px solid rgba(255,255,255,.06);
    margin-top: 8px;
}
.m9ac21 a {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: var(--g9d0a);
    color: var(--n6d5e);
    font-size: .78rem;
    transition: background .15s, color .15s;
}
.m9ac21 a:hover,
.m9ac21 a.m0da06 {
    background: rgba(183,110,121,.1);
    border-color: rgba(183,110,121,.28);
    color: var(--a766c);
}
.m9ac21 a.m0da06 { font-weight: 700; }

@media (max-width: 768px) {
    .m4dd80 { display: none; }
}


/* ===== STRUCTURAL VARIANT STYLES ===== */

/* info-grid variant B: list */
ul.pe355f, ul.kee0ef { list-style: none; padding: 0; margin: 0; }

/* info-grid variant C: 2-column wider */
.k92925 { grid-template-columns: repeat(2, 1fr) !important; }
@media (max-width: 600px) { .k92925 { grid-template-columns: 1fr !important; } }

/* steps-grid variant B: ordered list */
ol.j8521b, ol.ga5757 { list-style: none; padding: 0; margin: 0; counter-reset: step-counter; }
ol.ga5757 > li { counter-increment: step-counter; }
ol.ga5757 > li::before { content: counter(step-counter); font-weight: 700; font-size: 1.5rem; color: var(--ke5b0); display: block; margin-bottom: .5rem; }

/* steps-grid variant C: timeline */
.hb69e1 { display: flex; flex-direction: column; gap: 1.5rem; padding-left: 2rem; border-left: 3px solid var(--ke5b0); }
.a26946 { display: flex; align-items: flex-start; gap: 1rem; position: relative; }
.b63153 { width: 36px; height: 36px; border-radius: 50%; background: var(--ke5b0); color: var(--eaf82); display: flex; align-items: center; justify-content: center; font-weight: 700; flex-shrink: 0; margin-left: -2.55rem; }
.jfe1d8 h3 { margin-bottom: .25rem; }

/* info-table variant B: definition list */
dl.c27f98 { display: grid; grid-template-columns: 1fr; gap: 0; }
.f8bdfd { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid rgba(255,255,255,.08); }
.f8bdfd:last-child { border-bottom: none; }
.j3cb19 { font-weight: 600; padding: .75rem 1rem; color: var(--ke5b0); }
.m61db2 { padding: .75rem 1rem; }

/* faq variant B: accordion (div-based) */
.nf0762 .jde6d1 { cursor: pointer; width: 100%; text-align: left; background: none; border: none; color: inherit; font: inherit; padding: 1rem; }
.nf0762 .ob93de { display: none; }
.nf0762 .k27028.gf3f5c .ob93de { display: block; }

/* faq variant C: definition list */
dl.m0fd58 { display: grid; gap: 0; }
dl.m0fd58 dt.h52eec { cursor: pointer; padding: 1rem; font-weight: 600; border-bottom: 1px solid rgba(255,255,255,.08); }
dl.m0fd58 dd.ob93de { padding: .5rem 1rem 1rem; margin: 0; border-bottom: 1px solid rgba(255,255,255,.08); }


/* Promo Banner (SVG image banners) */
.promo-banner-wrap { margin: 1.5rem auto; text-align: center; max-width: 100%; display: flex; justify-content: center; }
.promo-banner-link { display: block; max-width: 800px; margin: 0 auto; width: 100%; transition: transform .2s ease, box-shadow .2s ease; border-radius: 12px; overflow: hidden; }
.promo-banner-link:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(0,0,0,0.3); }
.promo-banner-img { width: 100%; height: auto; display: block; }
/* Card icon (replaces emoji in info-grid) */
.card-icon { display: inline-block; vertical-align: middle; }
.info-icon .card-icon { width: 32px; height: 32px; }
