.leenana-page {
    padding-bottom: 40px;
    color: #6d4b60;
    background:
        radial-gradient(circle at top left, rgba(255, 227, 239, 0.72), transparent 28%),
        radial-gradient(circle at 88% 10%, rgba(214, 241, 255, 0.64), transparent 24%),
        linear-gradient(180deg, #fff9fc 0%, #fff5fb 42%, #fffaf6 100%);
}

.leenana-hero {
    padding: 52px 0 26px;
}

.leenana-hero-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
    gap: 24px;
    padding: 44px;
    border-radius: 36px;
    border: 1px solid rgba(240, 190, 212, 0.72);
    background:
        radial-gradient(circle at 12% 16%, rgba(255, 210, 225, 0.95), transparent 28%),
        radial-gradient(circle at 86% 20%, rgba(218, 243, 255, 0.85), transparent 24%),
        radial-gradient(circle at 74% 88%, rgba(255, 232, 189, 0.64), transparent 22%),
        linear-gradient(135deg, rgba(255, 251, 253, 0.98) 0%, rgba(255, 242, 248, 0.96) 52%, rgba(244, 250, 255, 0.96) 100%);
    box-shadow: 0 30px 80px rgba(243, 194, 214, 0.32);
    align-items: stretch;
}

.leenana-hero-copy,
.leenana-hero-panel {
    display: flex;
    flex-direction: column;
}

.leenana-eyebrow,
.leenana-float-card span,
.leenana-section-head span,
.leenana-path-label,
.leenana-cta-shell span,
.leenana-purchase-copy span,
.leenana-family-card small {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255, 237, 244, 0.92);
    border: 1px solid rgba(240, 195, 216, 0.72);
    color: #b26f8e;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.leenana-hero-copy h1 {
    margin-top: 16px;
    font-size: clamp(38px, 6vw, 68px);
    line-height: 0.98;
    letter-spacing: -0.05em;
    color: #9e597c;
}

.leenana-hero-copy h1 span {
    display: block;
    margin-top: 12px;
    font-size: clamp(20px, 2.6vw, 28px);
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #c982a3;
}

.leenana-lead,
.leenana-float-card p,
.leenana-card p,
.leenana-path-card li,
.leenana-section-head p,
.leenana-purchase-copy p,
.leenana-cta-shell p,
.leenana-family-card span {
    color: #8c6880;
    font-size: 15px;
    line-height: 1.9;
}

.leenana-lead {
    margin-top: 20px;
    max-width: 760px;
    font-size: 18px;
    line-height: 1.95;
}

.leenana-hero-actions,
.leenana-cta-actions,
.leenana-hero-notes,
.leenana-purchase-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.leenana-hero-actions {
    margin-top: 28px;
}

.leenana-hero-notes {
    margin-top: 18px;
}

.leenana-hero-copy > .leenana-float-card {
    margin-top: auto;
}

.leenana-hero-panel > .leenana-float-card {
    margin-top: auto;
}

.leenana-hero-notes span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(242, 207, 223, 0.86);
    color: #bb7598;
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 12px 24px rgba(243, 197, 216, 0.18);
}

.leenana-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 0 22px;
    border-radius: 999px;
    border: 1px solid rgba(236, 188, 209, 0.85);
    font-size: 15px;
    font-weight: 800;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.leenana-btn:hover {
    transform: translateY(-1px);
}

.leenana-btn-primary {
    border-color: transparent;
    background: linear-gradient(135deg, #ff9fc5 0%, #ffb1d3 48%, #ffc8a7 100%);
    color: #fff7fb;
    box-shadow: 0 20px 34px rgba(255, 171, 202, 0.3);
}

.leenana-btn-secondary {
    background: rgba(255, 255, 255, 0.84);
    color: #b26f8e;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.96);
}

.leenana-btn-secondary:hover,
.leenana-btn-soft:hover {
    border-color: rgba(229, 171, 198, 0.96);
    box-shadow: 0 14px 26px rgba(245, 199, 218, 0.26);
}

.leenana-btn-soft {
    background: linear-gradient(135deg, rgba(214, 241, 255, 0.95), rgba(255, 238, 244, 0.98));
    color: #9f6f91;
}

.leenana-grid {
    display: grid;
    gap: 18px;
}

.leenana-hero-panel {
    gap: 18px;
}

.leenana-hero-figure,
.leenana-float-card,
.leenana-card,
.leenana-path-card,
.leenana-qr-card,
.leenana-family-card,
.leenana-cta-shell,
.leenana-purchase-shell {
    border-radius: 28px;
    border: 1px solid rgba(241, 198, 217, 0.86);
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 24px 50px rgba(244, 199, 218, 0.22);
}

.leenana-hero-figure {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 438px;
    margin: 0;
    padding: 28px;
    background:
        radial-gradient(circle at 50% 14%, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.4) 42%, rgba(255, 255, 255, 0) 66%),
        linear-gradient(180deg, rgba(247, 236, 255, 0.92) 0%, rgba(255, 241, 247, 0.96) 56%, rgba(237, 248, 255, 0.92) 100%);
    overflow: hidden;
}

.leenana-hero-figure::before,
.leenana-hero-figure::after {
    content: "";
    position: absolute;
    border-radius: 999px;
    filter: blur(6px);
    opacity: 0.82;
}

.leenana-hero-figure::before {
    width: 148px;
    height: 148px;
    top: 22px;
    right: 10px;
    background: rgba(255, 211, 226, 0.72);
}

.leenana-hero-figure::after {
    width: 132px;
    height: 132px;
    bottom: 24px;
    left: 12px;
    background: rgba(205, 233, 255, 0.66);
}

.leenana-hero-figure img {
    position: relative;
    z-index: 1;
    display: block;
    width: min(100%, 300px);
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 26px 36px rgba(205, 152, 182, 0.22));
}

.leenana-float-card,
.leenana-card,
.leenana-path-card {
    padding: 28px 24px;
}

.leenana-float-card strong,
.leenana-card h3,
.leenana-path-card h3,
.leenana-purchase-copy h2,
.leenana-cta-shell h2,
.leenana-family-card strong,
.leenana-section-head h2 {
    color: #a46083;
    letter-spacing: -0.03em;
}

.leenana-float-card strong {
    display: block;
    margin-top: 14px;
    font-size: 25px;
    line-height: 1.2;
}

.leenana-float-card p,
.leenana-card p {
    margin-top: 14px;
}

.leenana-section {
    padding: 28px 0 0;
}

.leenana-section-alt {
    margin-top: 26px;
    padding: 42px 0;
    background: linear-gradient(180deg, rgba(255, 240, 246, 0.84), rgba(255, 250, 246, 0.7));
    border-top: 1px solid rgba(240, 198, 216, 0.6);
    border-bottom: 1px solid rgba(240, 198, 216, 0.6);
}

.leenana-section-head {
    max-width: 860px;
}

.leenana-section-head h2 {
    margin-top: 14px;
    font-size: clamp(30px, 4vw, 44px);
    line-height: 1.15;
}

.leenana-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.leenana-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.leenana-card h3,
.leenana-path-card h3 {
    font-size: 24px;
    line-height: 1.25;
}

.leenana-card-contrast {
    background: linear-gradient(160deg, rgba(255, 255, 255, 0.88), rgba(255, 244, 248, 0.94));
}

.leenana-path-card h3 {
    margin-top: 14px;
}

.leenana-path-card ul {
    margin-top: 16px;
    padding-left: 20px;
}

.leenana-path-card li + li {
    margin-top: 10px;
}

.leenana-section-purchase {
    padding-top: 34px;
}

.leenana-purchase-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.72fr);
    gap: 24px;
    padding: 30px;
    background:
        radial-gradient(circle at 14% 18%, rgba(255, 220, 232, 0.86), transparent 30%),
        radial-gradient(circle at 90% 84%, rgba(222, 244, 255, 0.72), transparent 30%),
        linear-gradient(145deg, rgba(255, 251, 253, 0.98) 0%, rgba(255, 244, 249, 0.96) 100%);
}

.leenana-purchase-copy h2 {
    margin-top: 12px;
    font-size: clamp(28px, 4vw, 40px);
    line-height: 1.16;
}

.leenana-purchase-points {
    margin-top: 18px;
    padding-left: 20px;
    color: #8c6880;
}

.leenana-purchase-points li {
    line-height: 1.9;
}

.leenana-purchase-points li + li {
    margin-top: 8px;
}

.leenana-purchase-actions {
    margin-top: 20px;
}

.leenana-qr-card {
    margin: 0;
    padding: 24px;
    text-align: center;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 244, 248, 0.94));
}

.leenana-qr-card img {
    display: block;
    width: min(100%, 280px);
    height: auto;
    margin: 0 auto;
    border-radius: 22px;
    box-shadow: 0 20px 40px rgba(242, 191, 215, 0.24);
}

.leenana-qr-card figcaption {
    margin-top: 14px;
    color: #b67b98;
    font-size: 14px;
    line-height: 1.7;
}

.leenana-bottom-cta {
    padding-bottom: 10px;
}

.leenana-cta-shell {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 28px;
    background:
        radial-gradient(circle at 12% 18%, rgba(255, 216, 230, 0.78), transparent 28%),
        radial-gradient(circle at 82% 80%, rgba(214, 241, 255, 0.72), transparent 26%),
        linear-gradient(145deg, #fffdfd 0%, #fff1f7 46%, #fff9f3 100%);
}

.leenana-family-section {
    padding-bottom: 4px;
}

.leenana-family-grid {
    margin-top: 24px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.leenana-family-card {
    display: block;
    padding: 22px;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    background:
        radial-gradient(circle at top right, rgba(214, 241, 255, 0.44), transparent 34%),
        linear-gradient(160deg, rgba(255, 255, 255, 0.94), rgba(255, 244, 248, 0.9));
}

.leenana-family-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 28px 48px rgba(242, 190, 214, 0.26);
    border-color: rgba(233, 175, 201, 0.94);
}

.leenana-family-card strong {
    display: block;
    margin-top: 12px;
    font-size: 25px;
    line-height: 1.18;
}

.leenana-family-card span {
    display: block;
    margin-top: 12px;
}

@media (max-width: 1024px) {
    .leenana-hero-shell,
    .leenana-grid-3,
    .leenana-grid-2,
    .leenana-purchase-shell,
    .leenana-family-grid {
        grid-template-columns: 1fr;
    }

    .leenana-cta-shell {
        display: grid;
    }
}

@media (max-width: 768px) {
    .leenana-hero {
        padding-top: 32px;
    }

    .leenana-hero-shell,
    .leenana-purchase-shell {
        padding: 28px 20px;
        border-radius: 26px;
    }

    .leenana-lead {
        font-size: 16px;
        line-height: 1.85;
    }

    .leenana-card,
    .leenana-path-card,
    .leenana-float-card,
    .leenana-cta-shell,
    .leenana-hero-figure,
    .leenana-qr-card,
    .leenana-family-card {
        border-radius: 22px;
    }

    .leenana-cta-shell {
        padding: 22px 18px;
    }

    .leenana-hero-figure {
        min-height: 340px;
        padding: 20px 16px;
    }

    .leenana-btn {
        width: 100%;
    }
}
