.baby-page {
    --maroon: #990022;
    --maroon-dark: #700018;
    --gold: #c9933d;
    --gold-soft: #e6c47d;
    --ivory: #fffdf7;
    --cream: #fbf4e7;
    --ink: #443537;
    --muted: #76696a;
    --line: #dfbd80;
    --serif: "Poppins", Arial, sans-serif;
    --sans: "Inter", Arial, sans-serif;
}
.baby-page * {
    box-sizing: border-box;
}
.baby-page {
    scroll-behavior: smooth;
}
.baby-page {
    margin: 0;
    background: var(--ivory);
    color: var(--ink);
    font-family: var(--sans);
    font-size: 16px;
}
.baby-page .page-shell {
    max-width: 1180px;
}
.baby-page .topbar {
    background: rgba(255, 253, 247, 0.96);
    border-top: 5px solid var(--maroon);
    position: sticky;
    top: 0;
    z-index: 1030;
    backdrop-filter: blur(12px);
    box-shadow: 0 2px 18px rgba(74, 39, 20, 0.05);
}
.baby-page .brand {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    text-decoration: none;
}
.baby-page .brand-orb {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: block;
    position: relative;
    background: radial-gradient(
        circle at 68% 32%,
        #fff4bd 0 7%,
        #e1a338 19%,
        #92112b 55%,
        #4a0a18 100%
    );
    box-shadow:
        inset 0 0 0 2px #efce86,
        0 0 0 2px #a85f2c;
}
.baby-page .brand-orb:after {
    content: "";
    position: absolute;
    width: 36px;
    height: 12px;
    border: 2px solid #ffe5a2;
    border-left: 0;
    border-right: 0;
    transform: rotate(-35deg);
    left: 8px;
    top: 20px;
    border-radius: 50%;
}
.baby-page .brand-copy strong {
    display: block;
    color: var(--maroon);
    font: 700 1.28rem/1 var(--serif);
}
.baby-page .brand-copy small {
    display: block;
    color: #7e6e67;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    font-size: 0.6rem;
    margin-top: 0.35rem;
}
.baby-page .contact-pills {
    display: flex;
    gap: 0.65rem;
}
.baby-page .contact-pills a {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    border: 1px solid #e2c993;
    border-radius: 999px;
    padding: 0.58rem 0.95rem;
    text-decoration: none;
    color: var(--maroon);
    font-weight: 700;
    font-family: var(--serif);
    font-size: 0.8rem;
    background: #fff;
}
.baby-page .contact-pills a:hover {
    background: var(--maroon);
    color: #fff;
}
.baby-page .hero {
    min-height: 460px;
    position: relative;
    overflow: hidden;
    background: #fcf7ec;
}
.baby-page .hero-image {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(
            90deg,
            rgba(255, 253, 247, 1) 0%,
            rgba(255, 253, 247, 0.97) 28%,
            rgba(255, 253, 247, 0.34) 53%,
            rgba(255, 253, 247, 0) 72%
        ),
        url("baby-hero.png");
    background-size: cover;
    background-position: center;
}
.baby-page .hero:after {
    content: "";
    position: absolute;
    right: 5%;
    top: 7%;
    width: 260px;
    height: 260px;
    border: 2px solid rgba(201, 147, 61, 0.42);
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-radius: 50%;
    transform: rotate(-12deg);
    pointer-events: none;
}
.baby-page .hero-inner {
    min-height: 460px;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 1;
}
.baby-page .hero-copy {
    width: 58%;
    padding: 2.5rem 0;
}
.baby-page .gold-mark {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    color: var(--gold);
    width: 180px;
    margin-bottom: 1.1rem;
}
.baby-page .gold-mark span {
    height: 1px;
    background: var(--gold-soft);
    flex: 1;
}
.baby-page .hero h1 {
    margin: 0;
    color: var(--maroon);
    font: 700 clamp(2.55rem, 5.3vw, 4.65rem)/1.08 var(--serif);
    letter-spacing: -0.04em;
}
.baby-page .hero p {
    margin: 1rem 0 0;
    color: var(--gold);
    font: italic 400 clamp(1.45rem, 3vw, 2.25rem)/1.45 var(--serif);
}
.baby-page .month-wrap {
    background: linear-gradient(180deg, #f9f0df 0, #fffdf7 45%);
    padding: 2.7rem 0 4.4rem;
    position: relative;
}
.baby-page .month-wrap:after,
.baby-page .results-section:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 78px;
    background:
        linear-gradient(
            168deg,
            transparent 45%,
            rgba(234, 213, 177, 0.22) 46% 54%,
            transparent 55%
        ),
        linear-gradient(192deg, transparent 40%, rgba(225, 196, 145, 0.15) 41% 55%, transparent 56%);
    pointer-events: none;
}
.baby-page .month-panel {
    position: relative;
    z-index: 1;
    background: rgba(255, 255, 255, 0.73);
    border: 1px solid var(--line);
    border-radius: 25px;
    padding: 2.5rem 3rem 2.6rem;
    box-shadow: 0 18px 45px rgba(117, 69, 31, 0.08);
    text-align: center;
}
.baby-page .lotus-divider,
.baby-page .card-emblem,
.baby-page .closing-line {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
    color: var(--gold);
    margin: 0 auto 1.2rem;
}
.baby-page .lotus-divider span,
.baby-page .card-emblem span {
    width: 46px;
    height: 1px;
    background: var(--gold-soft);
}
.baby-page .lotus-divider i {
    font-size: 1.8rem;
}
.baby-page .month-panel h2 {
    color: var(--maroon);
    font: 700 clamp(1.8rem, 4vw, 3rem)/1.25 var(--serif);
    margin: 0;
}
.baby-page .month-panel > p {
    color: var(--muted);
    font: 1.03rem var(--serif);
    margin: 0.8rem 0 1.75rem;
}
.baby-page .year-row {
    display: flex;
    align-items: center;
    gap: 1rem;
    max-width: 940px;
    margin: auto;
}
.baby-page .year-row strong {
    color: var(--maroon);
    font: 700 1.7rem var(--serif);
}
.baby-page .year-row span {
    height: 1px;
    flex: 1;
    background: #d8ba83;
}
.baby-page .month-buttons {
    display: grid;
    grid-template-columns: repeat(3, minmax(130px, 1fr));
    gap: 0.8rem;
    max-width: 570px;
    margin: 1rem auto 1.8rem;
}
.baby-page .month-btn {
    border: 1px solid #dcbf89;
    border-radius: 10px;
    min-height: 58px;
    background: #fffdf9;
    color: var(--maroon);
    font: 700 1rem var(--serif);
    box-shadow: 0 7px 15px rgba(94, 56, 22, 0.05);
    transition: 0.2s;
}
.baby-page .month-btn:hover,
.baby-page .month-btn.active {
    background: linear-gradient(135deg, #a80028, #8a001f);
    color: #fff;
    border-color: var(--maroon);
    box-shadow: 0 10px 20px rgba(153, 0, 34, 0.2);
    transform: translateY(-2px);
}
.baby-page .brand-button {
    border: 0;
    border-radius: 999px;
    background: linear-gradient(90deg, #a80028, #87001d);
    color: #fff;
    min-height: 54px;
    padding: 0.8rem 2rem;
    font-weight: 700;
    font-family: var(--serif);
    box-shadow: 0 12px 24px rgba(153, 0, 34, 0.16);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.7rem;
}
.baby-page .brand-button:hover {
    background: var(--maroon-dark);
    color: #fff;
}
.baby-page .month-panel > .brand-button {
    min-width: 330px;
}
.baby-page .results-section {
    position: relative;
    background: linear-gradient(180deg, #fffdf8, #fbf2e5);
    padding: 4.5rem 0 2rem;
}
.baby-page .results-heading {
    text-align: left;
    max-width: 910px;
    margin: 0 auto 2.2rem;
}
.baby-page .results-heading > span {
    color: var(--maroon);
    font: 700 clamp(2rem, 4vw, 3.3rem) var(--serif);
    display: block;
}
.baby-page .results-heading h2 {
    color: var(--maroon);
    font: 700 clamp(2rem, 4vw, 3.3rem)/1.08 var(--serif);
    margin: 0;
}
.baby-page .results-heading p {
    font: 1rem/1.65 var(--serif);
    max-width: 720px;
    margin: 1rem 0 0.7rem;
    color: #514547;
}
.baby-page .results-heading blockquote {
    color: var(--gold);
    font: italic 1.18rem var(--serif);
    margin: 0;
}
.baby-page .results-heading cite {
    font-size: 0.85em;
}
.baby-page .offer-row {
    align-items: stretch;
}
.baby-page .main-card {
    background: rgba(255, 255, 255, 0.68);
    border: 1px solid var(--line);
    border-radius: 22px;
    padding: 2rem;
    box-shadow: 0 12px 35px rgba(90, 53, 26, 0.06);
    display: flex;
    flex-direction: column;
}
.baby-page .card-emblem {
    margin-bottom: 0.7rem;
}
.baby-page .card-emblem i {
    font-size: 1.55rem;
}
.baby-page .main-card h3 {
    text-align: center;
    color: var(--maroon);
    font: 700 clamp(1.35rem, 2.2vw, 2rem)/1.25 var(--serif);
    margin: 0;
}
.baby-page .card-intro {
    text-align: center;
    font: 1rem/1.5 var(--serif);
    color: var(--muted);
    max-width: 520px;
    margin: 0.55rem auto 1.2rem;
}
.baby-page .date-table-wrap {
    border: 1px solid #d9b878;
    border-radius: 16px;
    overflow: hidden;
    background: #fffaf1;
}
.baby-page .date-table-wrap h4 {
    text-align: center;
    color: var(--maroon);
    font: 700 1.15rem var(--serif);
    padding: 0.8rem;
    margin: 0;
    border-bottom: 1px solid #e2c890;
}
.baby-page .date-table {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.baby-page .table-head {
    text-align: center;
    color: #6f1023;
    font: 700 0.76rem/1.3 var(--serif);
    padding: 0.65rem 0.25rem;
    border-right: 1px solid #ead6b1;
    background: #fff6e8;
}
.baby-page .table-head:nth-child(3) {
    border-right: 0;
}
.baby-page .powerful-list {
    display: contents;
}
.baby-page .date-row {
    display: contents;
}
.baby-page .date-cell {
    min-height: 36px;
    display: grid;
    place-items: center;
    border-top: 1px solid #eadac0;
    border-right: 1px solid #eadac0;
    font-family: var(--serif);
    font-size: 0.82rem;
}
.baby-page .date-row .date-cell:nth-child(3) {
    border-right: 0;
}
.baby-page .date-cell.locked {
    color: var(--gold);
    background: rgba(246, 226, 192, 0.25);
}
.baby-page .tick-list {
    list-style: none;
    padding: 1rem 0 0.6rem;
    margin: auto 0;
}
.baby-page .tick-list li {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    margin: 0.68rem 0;
    font: 1rem var(--serif);
}
.baby-page .tick-list i {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #ddb66c;
    color: #fff;
    font-size: 0.95rem;
}
.baby-page .main-card > .brand-button {
    margin-top: auto;
}
.baby-page .feature-list {
    list-style: none;
    padding: 0.4rem 0;
    margin: 0;
}
.baby-page .feature-list li {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 1.05rem 0;
    font: 1rem/1.35 var(--serif);
}
.baby-page .feature-list i {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    color: var(--maroon);
    background: #fbe5e2;
    font-size: 1.25rem;
}
.baby-page .share-box {
    display: flex;
    gap: 1rem;
    border: 1px solid #e1c590;
    border-radius: 14px;
    background: #fff7e9;
    padding: 1rem 1.1rem;
    margin: 0.35rem 0 1.15rem;
}
.baby-page .share-box > i {
    font-size: 1.7rem;
    color: var(--gold);
}
.baby-page .share-box strong {
    display: block;
    color: var(--maroon);
    font: 700 1rem var(--serif);
}
.baby-page .share-box ol {
    margin: 0.45rem 0 0;
    padding-left: 1.35rem;
    font: 0.88rem/1.65 var(--serif);
}
.baby-page .important-note {
    display: flex;
    gap: 1.4rem;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.65);
    padding: 1.25rem 1.5rem;
    margin-top: 1.5rem;
}
.baby-page .shield {
    width: 72px;
    height: 72px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #fbedd6;
    color: var(--gold);
    display: grid;
    place-items: center;
    font-size: 2.1rem;
}
.baby-page .important-note h3 {
    color: var(--maroon);
    font: 700 1.3rem var(--serif);
    margin: 0;
}
.baby-page .important-note p {
    font: 0.82rem/1.55 var(--serif);
    margin: 0.25rem 0 0;
}
.baby-page .closing-line {
    margin: 2rem 0 0;
    gap: 1rem;
}
.baby-page .closing-line span {
    height: 1px;
    background: #d9b978;
    flex: 1;
}
.baby-page .closing-line strong {
    color: var(--maroon);
    font: 700 0.95rem var(--serif);
    text-align: center;
}
.baby-page footer {
    background: #fffdf8;
    border-bottom: 5px solid var(--maroon);
    padding: 1.1rem 0;
}
.baby-page footer a {
    color: var(--maroon);
    text-decoration: none;
    font: 700 0.82rem var(--serif);
}
.baby-page footer div div {
    display: flex;
    gap: 1rem;
    align-items: center;
}
.baby-page footer div div span {
    height: 22px;
    width: 1px;
    background: #d0ad70;
}
.baby-page .nv-modal {
    border: 0;
    border-radius: 20px;
    overflow: hidden;
    background: #fffdf8;
}
.baby-page .nv-modal .modal-header {
    background: #fff5e6;
    border-bottom: 1px solid #ead1a0;
    padding: 1.25rem 1.35rem;
}
.baby-page .nv-modal .modal-header small {
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 700;
}
.baby-page .nv-modal h2 {
    font: 700 1.55rem var(--serif);
    color: var(--maroon);
    margin: 0.2rem 0 0;
}
.baby-page .nv-modal .modal-body {
    padding: 1.35rem;
}
.baby-page .form-label {
    font-weight: 700;
    color: #674e51;
}
.baby-page .form-label span {
    font-weight: 400;
    color: #978487;
}
.baby-page .form-control,
.baby-page .form-select {
    min-height: 48px;
    border-radius: 10px;
    border-color: #dbc59d;
}
.baby-page .form-control:focus,
.baby-page .form-select:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 0.2rem rgba(201, 147, 61, 0.15);
}
.baby-page .code-select {
    max-width: 100px;
}
.baby-page .consent {
    margin-top: 1rem;
    background: #fff5e5;
    border: 1px solid #e3ca9c;
    border-radius: 10px;
    padding: 1rem 1rem 1rem 2.5rem;
}
.baby-page .form-check-input:checked {
    background-color: var(--maroon);
    border-color: var(--maroon);
}
.baby-page .whatsapp-note {
    display: flex;
    gap: 0.7rem;
    background: #edf8ef;
    color: #32603a;
    border: 1px solid #cfe4d2;
    border-radius: 10px;
    padding: 0.8rem;
    margin-top: 1rem;
    font-size: 0.8rem;
}
.baby-page .nv-modal .modal-footer {
    justify-content: space-between;
    padding: 1rem 1.35rem;
    background: #fff;
    border-color: #eadbc1;
}
.baby-page .modal-footer small {
    display: block;
    color: var(--muted);
    text-transform: uppercase;
    font-size: 0.63rem;
}
.baby-page .modal-footer strong {
    display: block;
    color: var(--maroon);
    font: 700 1.25rem var(--serif);
}
.baby-page .modal-footer .brand-button {
    min-height: 46px;
    padding: 0.65rem 1.2rem;
}
.baby-page .success-toast {
    background: #eff9f0;
    border: 1px solid #c4ddc6;
    color: #265d2c;
}
@media (max-width: 991.98px) {
    .baby-page .hero {
        min-height: 410px;
    }
    .baby-page .hero-inner {
        min-height: 410px;
    }
    .baby-page .hero-copy {
        width: 62%;
    }
    .baby-page .main-card {
        padding: 1.5rem;
    }
    .baby-page .results-heading {
        text-align: center;
    }
    .baby-page .offer-row > div + div {
        margin-top: 0.25rem;
    }
}
@media (max-width: 767.98px) {
    .baby-page .topbar {
        position: relative;
    }
    .baby-page .brand-orb {
        width: 44px;
        height: 44px;
    }
    .baby-page .brand-copy strong {
        font-size: 1.05rem;
    }
    .baby-page .contact-pills a {
        width: 40px;
        height: 40px;
        padding: 0;
        justify-content: center;
    }
    .baby-page .contact-pills span {
        display: none;
    }
    .baby-page .hero {
        min-height: 560px;
    }
    .baby-page .hero-image {
        background-image:
            linear-gradient(
                180deg,
                rgba(255, 253, 247, 0.98) 0%,
                rgba(255, 253, 247, 0.86) 34%,
                rgba(255, 253, 247, 0) 63%
            ),
            url("baby-hero.png");
        background-position: 67% center;
    }
    .baby-page .hero-inner {
        min-height: 560px;
        align-items: flex-start;
    }
    .baby-page .hero-copy {
        width: 100%;
        padding-top: 2.5rem;
        text-align: center;
    }
    .baby-page .gold-mark {
        margin-inline: auto;
    }
    .baby-page .hero h1 {
        font-size: 2.5rem;
    }
    .baby-page .hero p {
        font-size: 1.35rem;
    }
    .baby-page .month-wrap {
        padding: 1.4rem 0 3rem;
    }
    .baby-page .month-panel {
        padding: 1.6rem 1rem;
        border-radius: 18px;
    }
    .baby-page .month-panel h2 {
        font-size: 1.65rem;
    }
    .baby-page .month-buttons {
        grid-template-columns: repeat(3, 1fr);
        gap: 0.5rem;
    }
    .baby-page .month-btn {
        min-width: 0;
        min-height: 52px;
    }
    .baby-page .month-panel > .brand-button {
        min-width: min(100%, 300px);
    }
    .baby-page .results-section {
        padding: 3rem 0 1.5rem;
    }
    .baby-page .results-heading > span,
    .baby-page .results-heading h2 {
        font-size: 2rem;
    }
    .baby-page .results-heading p {
        font-size: 0.92rem;
    }
    .baby-page .main-card {
        padding: 1.15rem;
        border-radius: 17px;
    }
    .baby-page .main-card h3 {
        font-size: 1.35rem;
    }
    .baby-page .date-table-wrap h4 {
        font-size: 1rem;
    }
    .baby-page .table-head {
        font-size: 0.68rem;
    }
    .baby-page .tick-list li,
    .baby-page .feature-list li {
        font-size: 0.9rem;
    }
    .baby-page .important-note {
        align-items: flex-start;
        padding: 1rem;
        gap: 0.8rem;
    }
    .baby-page .shield {
        width: 48px;
        height: 48px;
        font-size: 1.4rem;
    }
    .baby-page .closing-line strong {
        font-size: 0.8rem;
    }
    .baby-page .closing-line span {
        display: none;
    }
    .baby-page .modal-dialog {
        margin: 0.5rem;
    }
    .baby-page .nv-modal {
        max-height: calc(100vh - 1rem);
    }
    .baby-page .nv-modal .modal-body {
        padding: 1rem;
    }
    .baby-page .nv-modal .modal-footer {
        gap: 0.7rem;
    }
    .baby-page .modal-footer .brand-button {
        font-size: 0.78rem;
        padding: 0.65rem 0.85rem;
    }
}
@media (max-width: 420px) {
    .baby-page .brand-copy small {
        font-size: 0.5rem;
    }
    .baby-page .hero h1 {
        font-size: 2.2rem;
    }
    .baby-page .month-panel h2 {
        font-size: 1.45rem;
    }
    .baby-page .year-row strong {
        font-size: 1.35rem;
    }
    .baby-page .date-table {
        grid-template-columns: 1.05fr 1fr 1.15fr;
    }
    .baby-page .table-head {
        padding: 0.55rem 0.12rem;
        font-size: 0.61rem;
    }
    .baby-page .date-cell {
        font-size: 0.74rem;
    }
    .baby-page .brand-button {
        font-size: 0.82rem;
        padding: 0.72rem 1rem;
    }
    .baby-page .important-note p {
        font-size: 0.75rem;
    }
}
@media (prefers-reduced-motion: reduce) {
    .baby-page * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
.baby-page .topbar .page-shell {
    padding-top: 0.55rem !important;
    padding-bottom: 0.55rem !important;
}
.baby-page .brand-logo {
    display: block;
    width: 230px;
    max-width: 48vw;
    height: auto;
}
.baby-page .hero,
.baby-page .hero-inner {
    min-height: 285px;
}
.baby-page .hero-copy {
    padding: 1.35rem 0;
}
.baby-page .hero h1 {
    font-size: clamp(2.2rem, 4.3vw, 3.85rem);
}
.baby-page .hero p {
    font-size: clamp(1.2rem, 2.2vw, 1.75rem);
    line-height: 1.35;
}
.baby-page .gold-mark {
    margin-bottom: 0.65rem;
}
.baby-page .hero:after {
    width: 205px;
    height: 205px;
}
.baby-page .month-wrap {
    padding: 1.15rem 0 2.8rem;
}
.baby-page .month-panel {
    padding: 1.35rem 2.4rem 1.5rem;
}
.baby-page .lotus-divider {
    margin-bottom: 0.55rem;
}
.baby-page .lotus-divider i {
    font-size: 1.35rem;
}
.baby-page .month-panel h2 {
    font-size: clamp(1.55rem, 3vw, 2.25rem);
}
.baby-page .month-panel > p {
    margin: 0.4rem 0 0.8rem;
    font-size: 0.93rem;
}
.baby-page .year-row strong {
    font-size: 1.35rem;
}
.baby-page .month-buttons {
    margin: 0.65rem auto 1rem;
}
.baby-page .month-btn {
    min-height: 48px;
}
.baby-page .month-panel > .brand-button {
    min-height: 48px;
}
.baby-page .nv-modal {
    border: 1px solid #e5c98f;
    box-shadow: 0 24px 70px rgba(76, 28, 31, 0.22);
}
.baby-page .nv-modal .modal-header {
    position: relative;
    justify-content: center;
    text-align: center;
    padding: 0.75rem 3.2rem;
    background: linear-gradient(135deg, #fff8ed, #fbecd1);
}
.baby-page .nv-modal .modal-header > div {
    width: 100%;
}
.baby-page .nv-modal .modal-header small {
    font-size: 0.62rem;
    letter-spacing: 0.14em;
}
.baby-page .nv-modal h2 {
    font-size: 1.25rem;
    margin: 0.12rem 0 0;
}
.baby-page .nv-modal .modal-header .btn-close {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
}
.baby-page .nv-modal .modal-body {
    background: #fcf8f0;
    padding: 1.1rem 1.25rem;
}
.baby-page .form-label {
    font-size: 0.82rem;
    margin-bottom: 0.35rem;
}
.baby-page .form-control,
.baby-page .form-select {
    min-height: 44px;
    background: #fff;
    border-color: #dfc696;
}
.baby-page .consent {
    background: #fff;
    border-style: dashed;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}
.baby-page .whatsapp-note {
    margin-top: 0.75rem;
    background: #f3faf3;
}
.baby-page .nv-modal .modal-footer {
    padding: 0.75rem 1.25rem;
}
.baby-page .modal-footer .brand-button {
    min-height: 43px;
}
@media (max-width: 767.98px) {
    .baby-page .brand-logo {
        width: 185px;
        max-width: 58vw;
    }
    .baby-page .topbar .page-shell {
        padding-top: 0.45rem !important;
        padding-bottom: 0.45rem !important;
    }
    .baby-page .hero,
    .baby-page .hero-inner {
        min-height: 345px;
    }
    .baby-page .hero-copy {
        padding-top: 1.2rem;
    }
    .baby-page .hero h1 {
        font-size: 2rem;
        line-height: 1.06;
    }
    .baby-page .hero p {
        font-size: 1.08rem;
        margin-top: 0.55rem;
    }
    .baby-page .hero-image {
        background-image:
            linear-gradient(
                180deg,
                rgba(255, 253, 247, 0.98) 0%,
                rgba(255, 253, 247, 0.77) 35%,
                rgba(255, 253, 247, 0) 62%
            ),
            url("baby-hero.png");
        background-position: 67% center;
    }
    .baby-page .month-wrap {
        padding: 0.75rem 0 2.2rem;
    }
    .baby-page .month-panel {
        padding: 1rem 0.85rem 1.15rem;
    }
    .baby-page .lotus-divider {
        margin-bottom: 0.35rem;
    }
    .baby-page .month-panel h2 {
        font-size: 1.3rem;
    }
    .baby-page .month-panel > p {
        font-size: 0.82rem;
        margin: 0.3rem 0 0.6rem;
    }
    .baby-page .year-row strong {
        font-size: 1.12rem;
    }
    .baby-page .month-buttons {
        margin: 0.5rem auto 0.75rem;
    }
    .baby-page .month-btn {
        min-height: 43px;
    }
    .baby-page .month-panel > .brand-button {
        min-height: 44px;
    }
    .baby-page .nv-modal .modal-header {
        padding: 0.65rem 2.8rem;
    }
    .baby-page .nv-modal h2 {
        font-size: 1.12rem;
    }
    .baby-page .nv-modal .modal-body {
        padding: 0.85rem;
    }
    .baby-page .form-control,
    .baby-page .form-select {
        min-height: 42px;
    }
    .baby-page .nv-modal .modal-footer {
        padding: 0.65rem 0.85rem;
    }
}
.baby-page .topbar {
    border-top: 0;
    border-bottom: 1px solid rgba(201, 147, 61, 0.4);
    box-shadow: 0 8px 28px rgba(76, 38, 25, 0.08);
}
.baby-page .topbar:before {
    content: "";
    display: block;
    height: 4px;
    background: linear-gradient(90deg, var(--maroon-dark), var(--maroon) 46%, var(--gold) 100%);
}
.baby-page .brand-logo {
    width: 208px;
}
.baby-page .header-context {
    align-items: center;
    gap: 0.7rem;
    padding-left: 1.4rem;
    border-left: 1px solid #e5cda2;
    margin-left: auto;
    margin-right: auto;
}
.baby-page .header-context-icon {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #fff4df;
    color: var(--gold);
    border: 1px solid #e5c589;
}
.baby-page .header-context small,
.baby-page .header-context strong {
    display: block;
}
.baby-page .header-context small {
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #a47a44;
    font-size: 0.58rem;
    font-weight: 700;
}
.baby-page .header-context strong {
    color: var(--maroon);
    font: 700 0.83rem var(--serif);
    margin-top: 0.08rem;
}
.baby-page .contact-pills a {
    padding: 0.52rem 0.82rem;
    box-shadow: 0 4px 12px rgba(99, 54, 26, 0.05);
}
.baby-page .contact-pills .call-pill {
    background: #fffaf1;
}
.baby-page .contact-pills .whatsapp-pill {
    background: var(--maroon);
    color: #fff;
    border-color: var(--maroon);
}
.baby-page .contact-pills .whatsapp-pill:hover {
    background: var(--maroon-dark);
}
.baby-page .month-wrap {
    z-index: 5;
    padding-top: 0;
}
.baby-page .month-panel {
    margin-top: -24px;
    border-color: #ddb66d;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(255, 249, 238, 0.96));
    box-shadow: 0 24px 60px rgba(97, 54, 26, 0.13);
}
.baby-page .month-panel:before {
    content: "";
    position: absolute;
    inset: 7px;
    border: 1px solid rgba(219, 183, 112, 0.35);
    border-radius: 19px;
    pointer-events: none;
}
.baby-page .month-kicker {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 0.13em;
    font-size: 0.68rem;
    font-weight: 800;
    margin-bottom: 0.42rem;
}
.baby-page .month-panel h2 {
    position: relative;
    letter-spacing: -0.025em;
}
.baby-page .month-panel > p {
    position: relative;
}
.baby-page .year-row {
    position: relative;
    max-width: 760px;
}
.baby-page .year-row > div {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}
.baby-page .year-row small {
    color: #a0876b;
    font-size: 0.56rem;
    letter-spacing: 0.14em;
    font-weight: 800;
}
.baby-page .year-row em {
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.6rem;
    font-weight: 800;
    color: #a0876b;
    white-space: nowrap;
}
.baby-page .month-buttons {
    position: relative;
    max-width: 760px;
    gap: 0.7rem;
}
.baby-page .month-btn {
    min-height: 62px;
    padding: 0.55rem 0.7rem;
    display: flex;
    align-items: center;
    text-align: left;
    gap: 0.65rem;
    border-radius: 13px;
    background: linear-gradient(180deg, #fff, #fffaf0);
}
.baby-page .month-icon {
    width: 36px;
    height: 36px;
    flex: 0 0 auto;
    border-radius: 10px;
    display: grid;
    place-items: center;
    background: #fff2d9;
    color: var(--gold);
    font-size: 1rem;
    border: 1px solid #eed3a1;
}
.baby-page .month-name {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}
.baby-page .month-name strong {
    font: 700 0.9rem var(--serif);
}
.baby-page .month-name small {
    font-size: 0.6rem;
    letter-spacing: 0.08em;
    margin-top: 0.2rem;
    color: #a08978;
}
.baby-page .month-check {
    margin-left: auto;
    color: transparent;
    font-size: 1rem;
}
.baby-page .month-btn.active .month-icon {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.25);
}
.baby-page .month-btn.active .month-name small {
    color: #f5d9df;
}
.baby-page .month-btn.active .month-check {
    color: #f3d48e;
}
.baby-page .month-panel > .brand-button {
    position: relative;
    min-width: 300px;
}
@media (max-width: 767.98px) {
    .baby-page .brand-logo {
        width: 175px;
    }
    .baby-page .topbar:before {
        height: 3px;
    }
    .baby-page .contact-pills {
        gap: 0.4rem;
    }
    .baby-page .header-context {
        display: none !important;
    }
    .baby-page .month-panel {
        margin-top: -15px;
        border-radius: 17px;
    }
    .baby-page .month-panel:before {
        inset: 5px;
        border-radius: 13px;
    }
    .baby-page .month-kicker {
        font-size: 0.58rem;
        margin-bottom: 0.3rem;
    }
    .baby-page .year-row {
        padding-inline: 0.15rem;
    }
    .baby-page .year-row > div {
        gap: 0.3rem;
    }
    .baby-page .year-row small {
        display: none;
    }
    .baby-page .year-row em {
        font-size: 0.52rem;
    }
    .baby-page .month-buttons {
        gap: 0.42rem;
    }
    .baby-page .month-btn {
        min-height: 52px;
        padding: 0.45rem 0.35rem;
        justify-content: center;
        text-align: center;
    }
    .baby-page .month-icon,
    .baby-page .month-check {
        display: none;
    }
    .baby-page .month-name strong {
        font-size: 0.76rem;
    }
    .baby-page .month-name small {
        font-size: 0.52rem;
    }
    .baby-page .month-panel > .brand-button {
        min-width: min(100%, 270px);
        font-size: 0.78rem;
    }
}
.baby-page .hero-combined {
    min-height: 0;
    padding: 1.35rem 0 1.8rem;
    background: linear-gradient(135deg, #fffdf8 0%, #f8ecd7 100%);
}
.baby-page .hero-combined:after {
    display: none;
}
.baby-page .hero-split {
    display: grid;
    grid-template-columns: 1.08fr 0.92fr;
    overflow: hidden;
    border: 1px solid #dfbd80;
    border-radius: 28px;
    background: #fffdf8;
    box-shadow: 0 24px 65px rgba(92, 51, 26, 0.14);
}
.baby-page .hero-left {
    padding: 1.8rem 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: linear-gradient(145deg, #fffdf8, #fff8eb);
}
.baby-page .hero-combined .hero-copy {
    width: 100%;
    padding: 0;
    margin-bottom: 1.15rem;
}
.baby-page .hero-combined .gold-mark {
    width: 125px;
    margin-bottom: 0.55rem;
}
.baby-page .hero-combined h1 {
    font-size: clamp(2.1rem, 3.5vw, 3.25rem);
    line-height: 1.07;
}
.baby-page .hero-combined .hero-copy p {
    font-size: 1.08rem;
    line-height: 1.35;
    margin: 0.55rem 0 0;
}
.baby-page .hero-photo-panel {
    position: relative;
    min-height: 540px;
    background-image:
        linear-gradient(180deg, rgba(255, 255, 255, 0) 70%, rgba(82, 25, 30, 0.45) 100%),
        url("baby-hero.png");
    background-size: cover;
    background-position: 63% center;
}
.baby-page .hero-photo-panel:before {
    content: "";
    position: absolute;
    inset: 26px;
    border: 1px solid rgba(214, 169, 89, 0.55);
    border-radius: 50% 50% 45% 48%;
    pointer-events: none;
}
.baby-page .photo-caption {
    position: absolute;
    left: 1.3rem;
    right: 1.3rem;
    bottom: 1.1rem;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    font-size: 0.62rem;
    font-weight: 700;
}
.baby-page .hero-month-panel {
    margin: 0;
    padding: 1.05rem 1.15rem 1.15rem;
    border-radius: 18px;
    box-shadow: none;
    background: #fff;
    border-color: #e0bf82;
}
.baby-page .hero-month-panel:before {
    inset: 5px;
    border-radius: 14px;
}
.baby-page .hero-month-panel .month-kicker {
    font-size: 0.57rem;
    margin-bottom: 0.25rem;
}
.baby-page .hero-month-panel h2 {
    font-size: 1.35rem;
    line-height: 1.22;
}
.baby-page .hero-month-panel > p {
    font-size: 0.8rem;
    margin: 0.25rem 0 0.55rem;
}
.baby-page .hero-month-panel .year-row {
    max-width: none;
}
.baby-page .hero-month-panel .year-row strong {
    font-size: 1.05rem;
}
.baby-page .hero-month-panel .month-buttons {
    max-width: none;
    margin: 0.45rem 0 0.65rem;
    gap: 0.45rem;
}
.baby-page .hero-month-panel .month-btn {
    min-height: 49px;
    padding: 0.4rem 0.5rem;
}
.baby-page .hero-month-panel .month-icon {
    width: 30px;
    height: 30px;
}
.baby-page .hero-month-panel .month-name strong {
    font-size: 0.76rem;
}
.baby-page .hero-month-panel .month-name small {
    font-size: 0.5rem;
}
.baby-page .hero-month-panel > .brand-button {
    min-width: 0;
    width: 100%;
    min-height: 44px;
    font-size: 0.78rem;
}
.baby-page .results-heading {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 1.35rem;
    padding: 0.9rem 1.2rem 1rem;
    border-bottom: 1px solid #e3c992;
}
.baby-page .results-heading > span {
    font-size: clamp(1.3rem, 2.4vw, 1.85rem);
}
.baby-page .results-heading h2 {
    font-size: clamp(1.45rem, 2.6vw, 2rem);
    margin-top: 0.05rem;
}
.baby-page .results-heading p {
    font-size: 0.85rem;
    line-height: 1.5;
    margin: 0.45rem auto 0.35rem;
    max-width: 620px;
}
.baby-page .results-heading blockquote {
    font-size: 0.92rem;
}
.baby-page .results-section {
    padding-top: 2.5rem;
}
@media (max-width: 991.98px) {
    .baby-page .hero-split {
        grid-template-columns: 1fr 0.8fr;
    }
    .baby-page .hero-left {
        padding: 1.4rem;
    }
    .baby-page .hero-photo-panel {
        min-height: 510px;
    }
    .baby-page .hero-month-panel .month-icon {
        display: none;
    }
    .baby-page .hero-month-panel .month-check {
        display: none;
    }
    .baby-page .hero-month-panel .month-btn {
        justify-content: center;
        text-align: center;
    }
}
@media (max-width: 767.98px) {
    .baby-page .hero-combined {
        padding: 0.65rem 0 1rem;
    }
    .baby-page .hero-split {
        grid-template-columns: 1fr;
        border-radius: 18px;
    }
    .baby-page .hero-left {
        padding: 1rem;
    }
    .baby-page .hero-combined .hero-copy {
        text-align: center;
        margin-bottom: 0.75rem;
    }
    .baby-page .hero-combined .gold-mark {
        margin-inline: auto;
    }
    .baby-page .hero-combined h1 {
        font-size: 1.8rem;
    }
    .baby-page .hero-combined .hero-copy p {
        font-size: 0.92rem;
    }
    .baby-page .hero-month-panel {
        margin: 0;
        padding: 0.85rem 0.75rem 1rem;
    }
    .baby-page .hero-month-panel h2 {
        font-size: 1.15rem;
    }
    .baby-page .hero-month-panel > p {
        font-size: 0.74rem;
    }
    .baby-page .hero-photo-panel {
        min-height: 220px;
        background-position: 62% 48%;
    }
    .baby-page .hero-photo-panel:before {
        inset: 12px;
    }
    .baby-page .photo-caption {
        bottom: 0.7rem;
    }
    .baby-page .results-section {
        padding-top: 1.8rem;
    }
    .baby-page .results-heading {
        padding: 0.55rem 0.7rem 0.75rem;
        margin-bottom: 1rem;
    }
    .baby-page .results-heading > span {
        font-size: 1.15rem;
    }
    .baby-page .results-heading h2 {
        font-size: 1.3rem;
    }
    .baby-page .results-heading p {
        font-size: 0.76rem;
        line-height: 1.42;
        margin: 0.32rem auto;
    }
    .baby-page .results-heading blockquote {
        font-size: 0.8rem;
    }
}
.baby-page .hero-full {
    min-height: 465px;
    padding: 1.2rem 0 1.4rem;
    background-color: #fbf4e7;
    background-image:
        linear-gradient(
            90deg,
            #fffdf8 0%,
            rgba(255, 253, 248, 0.98) 25%,
            rgba(255, 250, 241, 0.83) 47%,
            rgba(255, 248, 237, 0.2) 66%,
            rgba(255, 248, 237, 0.03) 100%
        ),
        url("baby-hero.png");
    background-size: cover;
    background-position: 62% 48%;
    isolation: isolate;
}
.baby-page .hero-full:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(102, 44, 39, 0.04));
    z-index: -1;
    pointer-events: none;
}
.baby-page .hero-full:after {
    display: block;
    right: 7%;
    top: 12%;
    width: 330px;
    height: 330px;
    border-color: rgba(201, 147, 61, 0.35);
    border-left-color: transparent;
    border-bottom-color: transparent;
    z-index: -1;
}
.baby-page .hero-full-inner {
    position: relative;
    z-index: 2;
}
.baby-page .hero-content {
    width: min(650px, 58%);
}
.baby-page .hero-full .hero-copy {
    width: 100%;
    padding: 0;
    margin-bottom: 0.75rem;
}
.baby-page .hero-full .gold-mark {
    width: 120px;
    margin-bottom: 0.42rem;
}
.baby-page .hero-full h1 {
    font-size: clamp(2.05rem, 3.45vw, 3.25rem);
    line-height: 1.04;
    text-shadow: 0 2px 18px rgba(255, 255, 255, 0.58);
}
.baby-page .hero-full .hero-copy p {
    font-size: clamp(0.98rem, 1.35vw, 1.2rem);
    margin: 0.42rem 0 0;
    color: #ad7a2e;
}
.baby-page .hero-full .hero-month-panel {
    margin: 0;
    width: 100%;
    padding: 0.92rem 1.2rem 1rem;
    border-radius: 20px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.94), rgba(255, 249, 237, 0.88));
    border: 1px solid rgba(207, 157, 73, 0.62);
    box-shadow: 0 22px 55px rgba(92, 51, 26, 0.16);
    backdrop-filter: blur(12px);
}
.baby-page .hero-full .hero-month-panel:before {
    inset: 6px;
    border-radius: 15px;
}
.baby-page .hero-full .hero-month-panel h2 {
    font-size: clamp(1.25rem, 2vw, 1.6rem);
}
.baby-page .hero-full .hero-month-panel > p {
    font-size: 0.78rem;
    margin: 0.2rem 0 0.45rem;
}
.baby-page .hero-full .hero-month-panel .year-row {
    max-width: none;
}
.baby-page .hero-full .hero-month-panel .month-buttons {
    max-width: none;
    margin: 0.38rem 0 0.55rem;
    gap: 0.55rem;
}
.baby-page .hero-full .hero-month-panel .month-btn {
    min-height: 48px;
    padding: 0.38rem 0.52rem;
}
.baby-page .hero-full .hero-month-panel > .brand-button {
    min-width: 0;
    width: 100%;
    min-height: 43px;
}
.baby-page .hero-signature {
    position: absolute;
    right: 4.5%;
    bottom: 1.1rem;
    display: flex;
    align-items: center;
    gap: 0.55rem;
    color: rgba(112, 0, 24, 0.78);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-size: 0.62rem;
    font-weight: 800;
    z-index: 2;
}
.baby-page .hero-signature i {
    color: var(--gold);
    font-size: 1rem;
}
.baby-page .nv-modal .modal-body {
    background: linear-gradient(180deg, #fffdf9, #fbf4e7);
}
.baby-page .nv-modal .form-label {
    letter-spacing: 0.01em;
}
.baby-page .nv-modal .form-control,
.baby-page .nv-modal .form-select {
    border: 1px solid #ddc38f;
    background-color: rgba(255, 255, 255, 0.92);
    box-shadow: inset 0 1px 2px rgba(91, 52, 30, 0.03);
}
.baby-page .nv-modal .form-control::placeholder {
    color: #ad9e9f;
}
.baby-page .nv-modal .modal-footer {
    background: linear-gradient(90deg, #fff, #fff9ee);
}
@media (max-width: 991.98px) {
    .baby-page .hero-full {
        min-height: 490px;
        background-position: 67% center;
    }
    .baby-page .hero-content {
        width: min(600px, 66%);
    }
    .baby-page .hero-full h1 {
        font-size: 2.55rem;
    }
    .baby-page .hero-signature {
        right: 2rem;
    }
    .baby-page .results-section {
        padding-top: 1.65rem;
    }
}
@media (max-width: 767.98px) {
    .baby-page .hero-full {
        min-height: 0;
        padding: 1rem 0 4.35rem;
        background-image:
            linear-gradient(
                180deg,
                #fffdf8 0%,
                rgba(255, 253, 248, 0.96) 34%,
                rgba(255, 250, 241, 0.78) 62%,
                rgba(255, 248, 237, 0.3) 100%
            ),
            url("baby-hero.png");
        background-position: 64% center;
        background-size: cover;
    }
    .baby-page .hero-full:after {
        width: 190px;
        height: 190px;
        right: -1rem;
        top: 55%;
    }
    .baby-page .hero-content {
        width: 100%;
    }
    .baby-page .hero-full .hero-copy {
        text-align: center;
        margin-bottom: 0.7rem;
    }
    .baby-page .hero-full .gold-mark {
        margin-inline: auto;
    }
    .baby-page .hero-full h1 {
        font-size: 1.82rem;
    }
    .baby-page .hero-full .hero-copy p {
        font-size: 0.9rem;
        margin-top: 0.32rem;
    }
    .baby-page .hero-full .hero-month-panel {
        padding: 0.82rem 0.75rem 0.9rem;
        border-radius: 18px;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: 1.1rem;
    }
    .baby-page .hero-full .hero-month-panel > p {
        font-size: 0.7rem;
    }
    .baby-page .hero-full .hero-month-panel .year-row em {
        font-size: 0.48rem;
    }
    .baby-page .hero-full .hero-month-panel .month-buttons {
        gap: 0.4rem;
    }
    .baby-page .hero-full .hero-month-panel .month-btn {
        min-height: 46px;
    }
    .baby-page .hero-signature {
        right: 50%;
        transform: translateX(50%);
        bottom: 0.65rem;
        white-space: nowrap;
        color: #7e2440;
    }
    .baby-page .results-section {
        padding-top: 1.2rem;
    }
    .baby-page .nv-modal .modal-body {
        padding: 0.9rem;
    }
}
@media (max-width: 420px) {
    .baby-page .hero-full {
        min-height: 0;
        padding-top: 0.85rem;
        padding-bottom: 4rem;
        background-position: 62% center;
    }
    .baby-page .hero-full h1 {
        font-size: 1.68rem;
    }
    .baby-page .hero-full .hero-copy p {
        font-size: 0.84rem;
    }
    .baby-page .hero-full .hero-month-panel {
        padding: 0.72rem 0.6rem 0.82rem;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: 1.02rem;
    }
    .baby-page .hero-full .hero-month-panel .month-name strong {
        font-size: 0.7rem;
    }
    .baby-page .hero-full .hero-month-panel .month-name small {
        font-size: 0.48rem;
    }
}
.baby-page .month-select-shell {
    position: relative;
    display: grid;
    grid-template-columns: 48px 1fr 24px;
    align-items: center;
    gap: 0.75rem;
    margin: 0.75rem 0 0.45rem;
    padding: 0.55rem 0.85rem;
    border: 1px solid #d5ac61;
    border-radius: 14px;
    background: linear-gradient(180deg, #fff, #fff9ee);
    box-shadow: 0 8px 22px rgba(95, 54, 26, 0.08);
    text-align: left;
}
.baby-page .month-select-shell .select-calendar {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, var(--maroon), #b22a45);
    color: #fff;
    font-size: 1.1rem;
    box-shadow: 0 7px 15px rgba(153, 0, 34, 0.18);
}
.baby-page .month-select-shell > div {
    min-width: 0;
}
.baby-page .month-select-shell label {
    display: block;
    color: #9a7a55;
    font-size: 0.6rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 0.08rem;
}
.baby-page .main-month-select {
    width: 100%;
    border: 0;
    outline: 0;
    appearance: none;
    background: transparent;
    color: var(--maroon);
    font: 700 1rem var(--serif);
    padding: 0.1rem 0;
    cursor: pointer;
}
.baby-page .select-chevron {
    color: var(--gold);
    pointer-events: none;
}
.baby-page .month-availability {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 22px;
    margin-bottom: 0.45rem;
    font-size: 0.7rem;
    font-weight: 700;
}
.baby-page .month-availability.is-available {
    color: #397345;
}
.baby-page .month-availability.is-consultation {
    color: #9a641b;
}
.baby-page .date-unavailable {
    grid-column: 1/-1;
    min-height: 170px;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--maroon);
    background: #fffaf1;
    border-top: 1px solid #eadac0;
}
.baby-page .date-unavailable i {
    font-size: 1.8rem;
    color: var(--gold);
    margin-bottom: 0.45rem;
}
.baby-page .date-unavailable strong {
    font: 700 1rem var(--serif);
}
.baby-page .date-unavailable span {
    font-size: 0.76rem;
    color: var(--muted);
    margin-top: 0.3rem;
}
.baby-page .results-section {
    padding-top: 1.5rem;
}
.baby-page .main-card > .card-emblem + .card-intro {
    margin-top: 0;
}
@media (max-width: 767.98px) {
    .baby-page .month-select-shell {
        grid-template-columns: 42px 1fr 18px;
        gap: 0.55rem;
        padding: 0.45rem 0.6rem;
        margin: 0.55rem 0 0.35rem;
    }
    .baby-page .month-select-shell .select-calendar {
        width: 38px;
        height: 38px;
    }
    .baby-page .main-month-select {
        font-size: 0.88rem;
    }
    .baby-page .month-select-shell label {
        font-size: 0.54rem;
    }
    .baby-page .month-availability {
        font-size: 0.64rem;
        margin-bottom: 0.35rem;
    }
    .baby-page .results-section {
        padding-top: 1rem;
    }
}
.baby-page .hero-full h1 {
    font-family: var(--serif);
    font-size: clamp(1.9rem, 3vw, 2.85rem);
    font-weight: 400;
    letter-spacing: -0.025em;
    line-height: 0.98;
}
.baby-page .month-dropdown {
    margin: 0.55rem 0 0.42rem;
}
.baby-page .month-dropdown-toggle {
    width: 100%;
    display: grid;
    grid-template-columns: 48px 1fr auto 20px;
    align-items: center;
    gap: 0.75rem;
    padding: 0.58rem 0.8rem;
    border: 1px solid #d2a657;
    border-radius: 15px;
    background: linear-gradient(135deg, #fff 0%, #fff8e9 58%, #fae9c8 100%);
    box-shadow: 0 10px 26px rgba(99, 55, 27, 0.12);
    text-align: left;
    color: var(--maroon);
    transition: 0.2s;
}
.baby-page .month-dropdown-toggle:hover,
.baby-page .month-dropdown-toggle[aria-expanded="true"] {
    border-color: var(--gold);
    box-shadow: 0 13px 30px rgba(99, 55, 27, 0.17);
    transform: translateY(-1px);
}
.baby-page .month-dropdown .select-calendar {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #b10c32, var(--maroon-dark));
    color: #fff;
    font-size: 1.08rem;
    box-shadow: 0 7px 16px rgba(153, 0, 34, 0.2);
}
.baby-page .selected-month-copy {
    min-width: 0;
}
.baby-page .selected-month-copy small {
    display: block;
    color: #9a7a55;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.56rem;
    font-weight: 800;
}
.baby-page .selected-month-copy strong {
    display: block;
    font: 700 1.08rem/1.15 var(--serif);
    margin-top: 0.12rem;
}
.baby-page .selected-year-badge {
    padding: 0.32rem 0.58rem;
    border-radius: 999px;
    background: #fff1d6;
    border: 1px solid #e1bd78;
    color: var(--maroon);
    font: 700 0.72rem var(--serif);
}
.baby-page .month-dropdown-menu {
    width: 100%;
    padding: 0.8rem;
    border: 1px solid #ddb66f;
    border-radius: 16px;
    background: rgba(255, 253, 248, 0.98);
    box-shadow: 0 20px 45px rgba(77, 39, 24, 0.2);
    max-height: 320px;
    overflow: auto;
}
.baby-page .dropdown-year-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0.15rem 0.2rem 0.5rem;
    padding-bottom: 0.35rem;
    border-bottom: 1px solid #ead3aa;
}
.baby-page .dropdown-year-label span {
    color: var(--maroon);
    font: 700 0.95rem var(--serif);
}
.baby-page .dropdown-year-label small {
    color: #9d7c51;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.52rem;
    font-weight: 800;
}
.baby-page .dropdown-year-label:not(:first-child) {
    margin-top: 0.8rem;
}
.baby-page .month-option-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.38rem;
}
.baby-page .month-option {
    min-height: 38px;
    border: 1px solid #ead4ac;
    border-radius: 9px;
    background: #fff;
    color: #6e4e50;
    font: 700 0.7rem var(--serif);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.32rem;
    transition: 0.18s;
}
.baby-page .month-option i {
    font-size: 0.6rem;
    color: var(--gold);
}
.baby-page .month-option:hover,
.baby-page .month-option.active {
    background: linear-gradient(135deg, #a80028, #7d001b);
    border-color: var(--maroon);
    color: #fff;
}
.baby-page .month-option:hover i,
.baby-page .month-option.active i {
    color: #f1d38d;
}
.baby-page .month-dropdown .select-chevron {
    transition: 0.2s;
}
.baby-page .month-dropdown-toggle[aria-expanded="true"] .select-chevron {
    transform: rotate(180deg);
}
@media (max-width: 767.98px) {
    .baby-page .hero-full h1 {
        font-size: 1.62rem;
        line-height: 1;
    }
    .baby-page .month-dropdown {
        margin: 0.52rem 0 0.32rem;
    }
    .baby-page .month-dropdown-toggle {
        grid-template-columns: 42px 1fr auto 18px;
        gap: 0.52rem;
        padding: 0.48rem 0.58rem;
    }
    .baby-page .month-dropdown .select-calendar {
        width: 38px;
        height: 38px;
    }
    .baby-page .selected-month-copy strong {
        font-size: 0.92rem;
    }
    .baby-page .selected-month-copy small {
        font-size: 0.5rem;
    }
    .baby-page .selected-year-badge {
        font-size: 0.64rem;
        padding: 0.27rem 0.45rem;
    }
    .baby-page .month-dropdown-menu {
        max-height: 285px;
        padding: 0.65rem;
    }
    .baby-page .month-option-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 0.3rem;
    }
    .baby-page .month-option {
        min-height: 36px;
        font-size: 0.65rem;
    }
}
.baby-page .hero-full {
    overflow: visible;
    z-index: 20;
}
.baby-page .hero-full-inner,
.baby-page .hero-content,
.baby-page .hero-full .hero-month-panel {
    position: relative;
    z-index: 3;
}
.baby-page .month-dropdown {
    position: relative;
    z-index: 40;
}
.baby-page .month-dropdown-menu {
    z-index: 1100;
}
.baby-page .results-section {
    z-index: 1;
}
@media (min-width: 992px) {
    .baby-page .hero-full .hero-copy {
        width: min(920px, 82vw);
    }
    .baby-page .hero-full h1 {
        font-size: clamp(2.75rem, 3.6vw, 3.4rem);
        white-space: nowrap;
        letter-spacing: -0.035em;
    }
}
@media (max-width: 991.98px) {
    .baby-page .hero-full h1 {
        white-space: normal;
    }
}
.baby-page .hero-full {
    min-height: 0;
    padding-bottom: 1rem;
}
@media (max-width: 991.98px) {
    .baby-page .hero-full {
        min-height: 0;
        padding-bottom: 1rem;
    }
}
@media (max-width: 767.98px) {
    .baby-page .hero-full {
        min-height: 0;
        padding-bottom: 0.9rem;
    }
}
@media (max-width: 420px) {
    .baby-page .hero-full {
        min-height: 0;
        padding-bottom: 0.8rem;
    }
}
.baby-page {
    font-family: var(--sans);
}
.baby-page .brand-logo {
    width: 220px;
}
.baby-page .important-note {
    position: relative;
    gap: 1.65rem;
    padding: 1.15rem 1.45rem;
    background: rgba(255, 253, 248, 0.92);
    border: 1px solid #dfbd80;
    border-radius: 17px;
    box-shadow: 0 9px 25px rgba(103, 60, 29, 0.06);
}
.baby-page .important-note .shield {
    position: relative;
    width: 76px;
    height: 76px;
    background: linear-gradient(145deg, #fff8e9, #f8ead1);
    border: 0;
    color: var(--gold);
    font-size: 2.15rem;
}
.baby-page .important-note .shield:after {
    content: "";
    position: absolute;
    right: -0.85rem;
    top: 7px;
    width: 1px;
    height: 62px;
    background: #dcb873;
}
.baby-page .important-note h3 {
    font-family: var(--serif);
    font-size: 1.4rem;
    letter-spacing: -0.02em;
    margin-bottom: 0.18rem;
}
.baby-page .important-note p {
    font-family: var(--sans);
    font-size: 0.78rem;
    line-height: 1.55;
    color: #615354;
    margin: 0;
}
@media (max-width: 767.98px) {
    .baby-page .brand-logo {
        width: 176px;
    }
    .baby-page .important-note {
        gap: 1rem;
        padding: 1rem;
    }
    .baby-page .important-note .shield {
        width: 58px;
        height: 58px;
        font-size: 1.65rem;
    }
    .baby-page .important-note .shield:after {
        right: -0.55rem;
        top: 5px;
        height: 48px;
    }
    .baby-page .important-note h3 {
        font-size: 1.18rem;
    }
    .baby-page .important-note p {
        font-size: 0.73rem;
    }
}
@media (max-width: 420px) {
    .baby-page .brand-logo {
        width: 158px;
    }
    .baby-page .important-note {
        align-items: flex-start;
    }
    .baby-page .important-note .shield {
        width: 50px;
        height: 50px;
        font-size: 1.45rem;
    }
    .baby-page .important-note .shield:after {
        display: none;
    }
}
.baby-page,
.baby-page .form-control,
.baby-page .form-select,
.baby-page .form-label,
.baby-page .month-kicker,
.baby-page .header-context,
.baby-page .contact-pills a {
    font-family: var(--sans);
}
.baby-page h1,
.baby-page h2,
.baby-page h3,
.baby-page h4,
.baby-page .results-heading > span,
.baby-page .date-table-wrap h4,
.baby-page .important-note h3 {
    font-family: var(--serif);
    font-weight: 600 !important;
}
.baby-page .brand-button,
.baby-page .month-option,
.baby-page .month-btn,
.baby-page .selected-year-badge {
    font-family: var(--sans);
    font-weight: 600;
}
.baby-page .selected-month-copy strong {
    font-family: var(--serif);
    font-weight: 400;
}
.baby-page .main-card h3,
.baby-page .month-panel h2 {
    letter-spacing: -0.025em;
}
.baby-page .main-card h3 {
    line-height: 1.18;
}
.baby-page .card-intro,
.baby-page .feature-list li,
.baby-page .tick-list li,
.baby-page .important-note p {
    font-family: var(--sans);
    letter-spacing: -0.01em;
}
.baby-page .hero-full h1 {
    font-family: var(--serif);
    font-weight: 700 !important;
    letter-spacing: -0.035em;
    line-height: 1.08;
}
.baby-page .month-panel h2,
.baby-page .main-card h3,
.baby-page .important-note h3 {
    line-height: 1.25;
    letter-spacing: -0.025em;
}
.baby-page .selected-month-copy strong {
    font-weight: 600;
}
.baby-page .date-table-wrap h4 {
    letter-spacing: -0.01em;
}
.baby-page .table-head {
    font-family: var(--sans);
    font-weight: 700;
}
.baby-page .card-intro,
.baby-page .feature-list li,
.baby-page .tick-list li,
.baby-page .important-note p {
    line-height: 1.6;
}
.baby-page {
    --maroon: #750f22;
    --maroon-dark: #630414;
    --cta: #851a2b;
    --cta-dark: #6d0c1e;
    --gold: #d79a35;
    --gold-soft: #c98627;
    --ivory: #fbf7f0;
    --cream: #faede7;
    --ink: #4b4848;
    --muted: #8e8783;
    --line: #dfc5aa;
    --surface: #fefcf8;
    --serif: "Cormorant Garamond", Georgia, serif;
    --sans: "Lora", Georgia, serif;
}
.baby-page {
    background: var(--ivory);
    color: var(--ink);
    font-family: var(--sans);
}
.baby-page .topbar {
    position: absolute;
    inset: 0 0 auto;
    z-index: 1030;
    background: transparent;
    border: 0;
    box-shadow: none;
    backdrop-filter: none;
}
.baby-page .topbar:before {
    display: none;
}
.baby-page .topbar .page-shell {
    padding-top: 1rem !important;
    padding-bottom: 0.65rem !important;
}
.baby-page .brand-logo {
    width: 225px;
}
.baby-page .header-context {
    display: none !important;
}
.baby-page .contact-pills a {
    background: rgba(254, 252, 248, 0.82);
    border-color: var(--line);
    color: var(--maroon);
    font-family: var(--sans);
    font-size: 0.82rem;
    box-shadow: none;
}
.baby-page .contact-pills .whatsapp-pill {
    background: rgba(254, 252, 248, 0.82);
    color: var(--maroon);
    border-color: var(--line);
}
.baby-page .contact-pills a:hover,
.baby-page .contact-pills .whatsapp-pill:hover {
    background: var(--maroon);
    color: #fff;
}
.baby-page .hero-full {
    min-height: 0;
    padding: 7.1rem 0 2.2rem;
    overflow: visible;
    background-color: var(--ivory);
    background-image:
        linear-gradient(
            90deg,
            rgba(251, 247, 240, 0.98) 0%,
            rgba(251, 247, 240, 0.9) 35%,
            rgba(251, 247, 240, 0.24) 64%,
            rgba(251, 247, 240, 0.02) 100%
        ),
        url("baby-hero.png");
    background-position: 64% center;
    background-size: cover;
}
.baby-page .hero-full:before {
    background: linear-gradient(180deg, rgba(254, 252, 248, 0.02), rgba(251, 247, 240, 0.12));
}
.baby-page .hero-full:after {
    border-color: rgba(215, 154, 53, 0.35);
    border-left-color: transparent;
    border-bottom-color: transparent;
}
.baby-page .hero-content {
    width: 100%;
}
.baby-page .hero-full .hero-copy {
    width: min(760px, 62%);
    margin: 0;
    padding: 1.1rem 0 0;
}
.baby-page .hero-full .gold-mark {
    display: none;
}
.baby-page .hero-full h1 {
    font-family: var(--serif);
    font-size: clamp(2.9rem, 4vw, 3.4rem);
    font-weight: 700 !important;
    line-height: 0.92;
    letter-spacing: -0.025em;
    color: var(--maroon);
    white-space: normal;
    text-shadow: none;
}
.baby-page .hero-full h1 span {
    display: block;
}
.baby-page .hero-full .hero-month-panel {
    width: min(800px, 82%);
    margin: 5rem auto 0;
    padding: 1.45rem 2rem 1.55rem;
    border: 1px solid var(--line);
    border-radius: 24px;
    background: rgba(254, 252, 248, 0.91);
    box-shadow: 0 18px 45px rgba(99, 4, 20, 0.09);
    backdrop-filter: blur(10px);
}
.baby-page .hero-full .hero-month-panel:before {
    inset: 6px;
    border-color: rgba(223, 197, 170, 0.55);
    border-radius: 18px;
}
.baby-page .form-ornament {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.7rem;
    color: var(--gold);
    margin-bottom: 0.45rem;
}
.baby-page .form-ornament span {
    width: 68px;
    height: 1px;
    background: var(--line);
}
.baby-page .form-ornament i {
    font-size: 1.55rem;
}
.baby-page .hero-full .hero-month-panel h2 {
    font-family: var(--serif);
    font-size: clamp(1.9rem, 2.6vw, 2.25rem);
    font-weight: 600 !important;
    line-height: 1.1;
    color: var(--maroon);
    letter-spacing: -0.015em;
}
.baby-page .month-selector-fields {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
    margin: 1.15rem auto 1.2rem;
    text-align: left;
}
.baby-page .selector-field label {
    display: block;
    margin: 0 0 0.42rem;
    color: var(--ink);
    font: 600 1rem var(--sans);
}
.baby-page .native-select-wrap {
    position: relative;
}
.baby-page .native-select-wrap select {
    width: 100%;
    min-height: 56px;
    appearance: none;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: var(--surface);
    color: var(--ink);
    font: 400 1.05rem var(--sans);
    padding: 0.75rem 2.8rem 0.75rem 1rem;
    outline: 0;
}
.baby-page .native-select-wrap select:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 0.2rem rgba(215, 154, 53, 0.14);
}
.baby-page .native-select-wrap i {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--ink);
    pointer-events: none;
}
.baby-page .hero-full .hero-month-panel > .brand-button {
    width: min(385px, 100%);
    min-height: 56px;
    margin: auto;
    background: linear-gradient(90deg, var(--cta), var(--cta-dark));
    font: 700 1.1rem var(--sans);
    box-shadow: 0 10px 24px rgba(117, 15, 34, 0.17);
}
.baby-page .brand-button {
    background: linear-gradient(90deg, var(--cta), var(--cta-dark));
    font-family: var(--sans);
}
.baby-page .brand-button:hover {
    background: var(--maroon-dark);
}
.baby-page .main-card,
.baby-page .important-note {
    background: rgba(254, 252, 248, 0.84);
    border-color: var(--line);
}
.baby-page .results-section {
    background: linear-gradient(180deg, var(--ivory), var(--cream));
    padding-top: 1.5rem;
}
.baby-page .date-table-wrap {
    border-color: var(--line);
    background: var(--surface);
}
.baby-page .table-head {
    background: #faede7;
    color: var(--maroon);
}
.baby-page .tick-list i {
    background: var(--gold);
}
.baby-page .feature-list i {
    color: var(--maroon);
    background: var(--cream);
}
.baby-page .share-box {
    border-color: var(--line);
    background: var(--surface);
}
.baby-page footer {
    background: var(--surface);
}
.baby-page,
.baby-page .form-control,
.baby-page .form-select,
.baby-page .form-label,
.baby-page .contact-pills a,
.baby-page .brand-button,
.baby-page .selector-field label,
.baby-page .native-select-wrap select {
    font-family: var(--sans);
}
.baby-page h1,
.baby-page h2,
.baby-page h3,
.baby-page h4,
.baby-page .date-table-wrap h4,
.baby-page .important-note h3 {
    font-family: var(--serif);
}
.baby-page .nv-modal {
    background: var(--surface);
    border-color: var(--line);
}
.baby-page .nv-modal .modal-header {
    background: linear-gradient(135deg, var(--surface), var(--cream));
    border-color: var(--line);
}
.baby-page .nv-modal .modal-body {
    background: linear-gradient(180deg, var(--surface), var(--ivory));
}
.baby-page .nv-modal .modal-footer {
    background: var(--surface);
    border-color: var(--line);
}
.baby-page .nv-modal h2,
.baby-page .modal-footer strong {
    color: var(--maroon);
}
.baby-page .form-control,
.baby-page .form-select {
    background: var(--surface);
    border-color: var(--line);
    color: var(--ink);
}
.baby-page .form-control::placeholder {
    color: var(--muted);
}
.baby-page .form-control:focus,
.baby-page .form-select:focus {
    border-color: var(--gold);
    box-shadow: 0 0 0 0.2rem rgba(215, 154, 53, 0.14);
}
.baby-page .consent {
    background: var(--ivory);
    border-color: var(--line);
}
.baby-page .important-note .shield {
    background: var(--cream);
    color: var(--gold);
}
.baby-page .closing-line,
.baby-page .closing-line strong,
.baby-page footer a {
    color: var(--maroon);
}
@media (max-width: 767.98px) {
    .baby-page .topbar .page-shell {
        padding-top: 0.8rem !important;
    }
    .baby-page .brand-logo {
        width: 185px;
    }
    .baby-page .contact-pills {
        display: none;
    }
    .baby-page .hero-full {
        padding: 5.9rem 0 1.2rem;
        background-image:
            linear-gradient(
                180deg,
                rgba(251, 247, 240, 0.96) 0%,
                rgba(251, 247, 240, 0.72) 36%,
                rgba(251, 247, 240, 0.16) 61%,
                rgba(251, 247, 240, 0.72) 100%
            ),
            url("baby-hero.png");
        background-position: 67% top;
    }
    .baby-page .hero-full .hero-copy {
        width: 100%;
        padding-top: 1rem;
        text-align: left;
    }
    .baby-page .hero-full h1 {
        font-size: clamp(2.4rem, 11vw, 2.75rem);
        line-height: 0.93;
        max-width: 360px;
    }
    .baby-page .hero-full .hero-month-panel {
        width: 100%;
        margin-top: 8.5rem;
        padding: 1.2rem 1rem 1.25rem;
        border-radius: 20px;
    }
    .baby-page .form-ornament {
        margin-bottom: 0.35rem;
    }
    .baby-page .form-ornament span {
        width: 45px;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: clamp(1.65rem, 7vw, 1.9rem);
        line-height: 1.05;
    }
    .baby-page .month-selector-fields {
        grid-template-columns: 1fr;
        gap: 0.8rem;
        margin: 0.95rem 0 1rem;
    }
    .baby-page .selector-field label {
        font-size: 0.95rem;
    }
    .baby-page .native-select-wrap select {
        min-height: 54px;
        font-size: 1rem;
    }
    .baby-page .hero-full .hero-month-panel > .brand-button {
        min-height: 54px;
        font-size: 1rem;
    }
    .baby-page .results-section {
        padding-top: 1rem;
    }
}
@media (max-width: 420px) {
    .baby-page .brand-logo {
        width: 168px;
    }
    .baby-page .hero-full {
        padding-top: 5.4rem;
        background-position: 68% top;
    }
    .baby-page .hero-full h1 {
        font-size: 2.3rem;
        max-width: 315px;
    }
    .baby-page .hero-full .hero-month-panel {
        margin-top: 7.4rem;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: 1.58rem;
    }
}
.baby-page .hero-copy {
    position: relative;
    z-index: 3;
}
.baby-page .hero-tagline {
    max-width: 620px;
    margin: 0.8rem 0 0 !important;
    color: var(--gold-soft) !important;
    font-family: var(--serif) !important;
    font-size: clamp(1.4rem, 2vw, 1.8rem) !important;
    font-style: italic;
    font-weight: 500;
    line-height: 1.12 !important;
    letter-spacing: -0.01em;
    text-shadow: 0 1px 10px rgba(251, 247, 240, 0.9);
}
.baby-page .title-ornament {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    width: 170px;
    margin: 0.85rem 0 0;
    color: var(--gold);
}
.baby-page .title-ornament span {
    height: 1px;
    flex: 1;
    background: linear-gradient(90deg, transparent, var(--gold));
}
.baby-page .title-ornament span:last-child {
    background: linear-gradient(90deg, var(--gold), transparent);
}
.baby-page .title-ornament i {
    font-size: 1.18rem;
}
.baby-page .hero-celestial {
    position: absolute;
    z-index: 2;
    right: 11%;
    top: 8.4rem;
    width: 118px;
    height: 108px;
    color: var(--gold);
    pointer-events: none;
    filter: drop-shadow(0 2px 5px rgba(99, 4, 20, 0.08));
}
.baby-page .celestial-moon {
    position: absolute;
    right: 17px;
    top: 4px;
    font-size: 2.3rem;
    transform: rotate(-23deg);
}
.baby-page .celestial-spark {
    position: absolute;
    left: 3px;
    top: 34px;
    font-size: 1.35rem;
}
.baby-page .celestial-star {
    position: absolute;
    font-family: Georgia, serif;
    line-height: 1;
}
.baby-page .star-one {
    left: 42px;
    top: 5px;
    font-size: 1.05rem;
}
.baby-page .star-two {
    right: 1px;
    top: 56px;
    font-size: 1.35rem;
}
.baby-page .star-three {
    left: 25px;
    bottom: 7px;
    font-size: 0.78rem;
}
.baby-page .hero-full .hero-month-panel {
    margin-top: 3rem;
}
@media (max-width: 991.98px) {
    .baby-page .hero-celestial {
        right: 5%;
        top: 7.6rem;
    }
    .baby-page .hero-full .hero-month-panel {
        margin-top: 2.5rem;
    }
}
@media (max-width: 767.98px) {
    .baby-page .topbar .page-shell {
        padding-top: 0.55rem !important;
        padding-bottom: 0.3rem !important;
    }
    .baby-page .brand-logo {
        width: 174px;
    }
    .baby-page .hero-full {
        padding: 4.8rem 0 0.9rem;
        background-image:
            linear-gradient(
                180deg,
                rgba(251, 247, 240, 0.96) 0%,
                rgba(251, 247, 240, 0.78) 25%,
                rgba(251, 247, 240, 0.1) 52%,
                rgba(251, 247, 240, 0.7) 76%,
                rgba(251, 247, 240, 0.98) 100%
            ),
            url("baby-hero.png");
        background-size:
            100% 100%,
            auto 385px;
        background-position:
            center top,
            69% 4.2rem;
        background-repeat: no-repeat;
    }
    .baby-page .hero-full:after {
        width: 170px;
        height: 170px;
        right: -1.6rem;
        top: 7.3rem;
        opacity: 0.65;
    }
    .baby-page .hero-content {
        width: 100%;
    }
    .baby-page .hero-full .hero-copy {
        width: 100%;
        min-height: 305px;
        padding-top: 0.45rem;
        text-align: left;
    }
    .baby-page .hero-full h1 {
        max-width: 58%;
        font-size: clamp(2rem, 9.3vw, 2.48rem);
        line-height: 0.92;
        letter-spacing: -0.03em;
    }
    .baby-page .title-ornament {
        width: 112px;
        margin: 0.58rem 0 0;
        gap: 0.35rem;
    }
    .baby-page .title-ornament i {
        font-size: 0.9rem;
    }
    .baby-page .hero-tagline {
        max-width: 57%;
        margin: 0.48rem 0 0 !important;
        font-size: clamp(1.13rem, 5.6vw, 1.42rem) !important;
        line-height: 1.05 !important;
    }
    .baby-page .hero-celestial {
        right: 7%;
        top: 5.65rem;
        width: 82px;
        height: 78px;
    }
    .baby-page .celestial-moon {
        right: 9px;
        font-size: 1.65rem;
    }
    .baby-page .celestial-spark {
        top: 28px;
        font-size: 0.95rem;
    }
    .baby-page .star-one {
        left: 30px;
        font-size: 0.78rem;
    }
    .baby-page .star-two {
        top: 43px;
        font-size: 0.95rem;
    }
    .baby-page .star-three {
        left: 18px;
        font-size: 0.62rem;
    }
    .baby-page .hero-full .hero-month-panel {
        width: 100%;
        margin-top: 0;
        padding: 1rem 0.85rem 1.05rem;
        border-radius: 19px;
    }
    .baby-page .form-ornament {
        margin-bottom: 0.22rem;
    }
    .baby-page .form-ornament span {
        width: 38px;
    }
    .baby-page .form-ornament i {
        font-size: 1.25rem;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: clamp(1.42rem, 6.6vw, 1.72rem);
        line-height: 1.03;
    }
    .baby-page .month-selector-fields {
        grid-template-columns: 1fr;
        gap: 0.66rem;
        margin: 0.75rem 0 0.82rem;
    }
    .baby-page .selector-field label {
        margin-bottom: 0.3rem;
        font-size: 0.87rem;
    }
    .baby-page .native-select-wrap select {
        min-height: 49px;
        font-size: 0.94rem;
    }
    .baby-page .hero-full .hero-month-panel > .brand-button {
        min-height: 50px;
        font-size: 0.96rem;
    }
}
.baby-page .address-heading {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    margin: 0.7rem 0 0.35rem;
    padding: 0.45rem 0.6rem;
    border-left: 3px solid var(--gold);
    border-radius: 0 8px 8px 0;
    background: linear-gradient(90deg, #fff0dc, rgba(255, 240, 220, 0.22));
}
.baby-page .address-heading > i {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--maroon);
    color: #fff;
    font-size: 0.78rem;
}
.baby-page .address-heading strong {
    display: block;
    color: var(--maroon);
    font: 700 0.92rem/1.05 var(--serif);
}
.baby-page .address-heading small {
    display: block;
    margin-top: 0.1rem;
    color: var(--muted);
    font: 0.62rem/1.2 var(--sans);
}
.baby-page .location-grid {
    margin-top: 0;
}
.baby-page .reference-modal .choices__inner {
    display: flex;
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
    background: linear-gradient(180deg, #fff, #fffcf7);
    transition:
        border-color 0.2s,
        box-shadow 0.2s;
}
.baby-page .reference-modal .choices__list--single {
    display: flex;
    align-items: center;
    height: 100%;
    min-width: 0;
}
.baby-page .reference-modal .choices.is-focused .choices__inner,
.baby-page .reference-modal .choices.is-open .choices__inner {
    border-color: var(--gold);
    box-shadow: 0 0 0 0.18rem rgba(215, 154, 53, 0.13);
}
.baby-page .address-heading {
    margin: 0.6rem 0 0.28rem;
    padding: 0.22rem 0 0.3rem;
    gap: 0.35rem;
    border: 0;
    border-bottom: 1px solid #eadcc8;
    border-radius: 0;
    background: transparent;
}
.baby-page .address-heading > i {
    width: auto;
    height: auto;
    flex: 0 0 auto;
    border-radius: 0;
    background: transparent;
    color: var(--gold);
    font-size: 0.78rem;
}
.baby-page .address-heading strong {
    font: 700 0.8rem/1.1 var(--serif);
    color: #5f4a4c;
}
.baby-page .address-heading small {
    display: inline;
    margin: 0 0 0 0.35rem;
    font: 0.58rem/1.1 var(--sans);
    color: var(--muted);
}
.baby-page #consultModal .consent {
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    margin-top: 0.65rem;
    padding: 0.65rem !important;
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: center;
    gap: 0.55rem;
}
.baby-page #consultModal .consent .form-check-input {
    position: static !important;
    float: none !important;
    inset: auto !important;
    width: 18px;
    height: 18px;
    margin: 0 !important;
    box-sizing: border-box;
    cursor: pointer;
}
.baby-page #consultModal .consent .form-check-label {
    min-width: 0;
    margin: 0;
    font-size: 0.72rem;
    line-height: 1.35;
    cursor: pointer;
}
@media (max-width: 767.98px) {
    .baby-page .address-heading {
        margin: 0.45rem 0 0.22rem;
        padding: 0.16rem 0 0.24rem;
    }
    .baby-page .address-heading strong {
        font-size: 0.72rem;
    }
    .baby-page .address-heading small {
        font-size: 0.53rem;
    }
    .baby-page #consultModal .consent {
        margin-top: 0.45rem;
        padding: 0.55rem !important;
    }
}
.baby-page #unlockModal .modal-footer {
    justify-content: flex-start;
    gap: 0.7rem;
}
.baby-page #unlockModal .modal-footer > div {
    flex: 0 0 auto;
    min-width: 82px;
}
.baby-page #unlockModal .modal-footer > .brand-button {
    flex: 1 1 auto;
    max-width: 360px;
}
@media (max-width: 767.98px) {
    .baby-page .address-heading {
        margin: 0.5rem 0 0.28rem;
        padding: 0.35rem 0.45rem;
        gap: 0.4rem;
    }
    .baby-page .address-heading > i {
        width: 24px;
        height: 24px;
        flex-basis: 24px;
        font-size: 0.68rem;
    }
    .baby-page .address-heading strong {
        font-size: 0.78rem;
    }
    .baby-page .address-heading small {
        font-size: 0.56rem;
    }
    .baby-page #unlockModal .modal-footer {
        gap: 0.45rem;
    }
    .baby-page #unlockModal .modal-footer > div {
        min-width: 72px;
    }
    .baby-page #unlockModal .modal-footer > .brand-button {
        max-width: none;
    }
}
@media (max-width: 420px) {
    .baby-page .brand-logo {
        width: 158px;
    }
    .baby-page .hero-full {
        padding-top: 4.3rem;
        background-size:
            100% 100%,
            auto 345px;
        background-position:
            center top,
            70% 4rem;
    }
    .baby-page .hero-full .hero-copy {
        min-height: 276px;
        padding-top: 0.4rem;
    }
    .baby-page .hero-full h1 {
        max-width: 59%;
        font-size: clamp(1.82rem, 9.2vw, 2.12rem);
    }
    .baby-page .hero-tagline {
        max-width: 58%;
        font-size: clamp(1.02rem, 5.1vw, 1.22rem) !important;
    }
    .baby-page .title-ornament {
        width: 96px;
        margin-top: 0.48rem;
    }
    .baby-page .hero-celestial {
        right: 4%;
        top: 5rem;
        transform: scale(0.88);
    }
    .baby-page .hero-full .hero-month-panel {
        margin-top: 0;
        padding: 0.9rem 0.72rem 1rem;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: 1.42rem;
    }
}
@media (max-width: 360px) {
    .baby-page .hero-full h1 {
        font-size: 1.72rem;
    }
    .baby-page .hero-full .hero-copy {
        min-height: 260px;
    }
    .baby-page .hero-tagline {
        font-size: 1rem !important;
    }
    .baby-page .hero-full {
        background-size:
            100% 100%,
            auto 325px;
    }
    .baby-page .hero-celestial {
        right: 1%;
        transform: scale(0.78);
    }
}
.baby-page .hero-celestial {
    display: none;
}
.baby-page .hero-full {
    padding: 6.35rem 0 1.2rem;
    background-image:
        linear-gradient(
            90deg,
            rgba(251, 247, 240, 0.96) 0%,
            rgba(251, 247, 240, 0.72) 35%,
            rgba(251, 247, 240, 0.05) 63%,
            rgba(251, 247, 240, 0) 100%
        ),
        url("baby-hero-lotus-v2.png");
    background-position: center;
    background-size: cover;
}
.baby-page .hero-full .hero-copy {
    padding-top: 0.35rem;
}
.baby-page .hero-full .hero-month-panel {
    margin-top: 1.45rem;
}
.baby-page .hero-full h1 {
    font-size: clamp(2.75rem, 3.85vw, 3.3rem);
}
.baby-page .hero-tagline {
    margin-top: 0.55rem !important;
}
.baby-page .title-ornament {
    margin-top: 0.55rem;
}
@media (max-width: 991.98px) {
    .baby-page .hero-full .hero-month-panel {
        margin-top: 1.1rem;
    }
}
@media (max-width: 767.98px) {
    .baby-page .topbar .page-shell {
        padding-top: 0.42rem !important;
        padding-bottom: 0.15rem !important;
    }
    .baby-page .brand-logo {
        width: 158px;
    }
    .baby-page .hero-full {
        padding: 4.05rem 0 0.65rem;
        background-image:
            linear-gradient(
                180deg,
                rgba(251, 247, 240, 0.96) 0%,
                rgba(251, 247, 240, 0.6) 25%,
                rgba(251, 247, 240, 0.03) 55%,
                rgba(251, 247, 240, 0.74) 78%,
                rgba(251, 247, 240, 0.98) 100%
            ),
            url("baby-hero-mobile-v2.png");
        background-size: 100% auto;
        background-position: center top;
        background-repeat: no-repeat;
    }
    .baby-page .hero-full:after {
        display: none;
    }
    .baby-page .hero-full .hero-copy {
        min-height: 248px;
        padding-top: 0.25rem;
    }
    .baby-page .hero-full h1 {
        max-width: 57%;
        font-size: clamp(1.82rem, 8.9vw, 2.18rem);
        line-height: 0.9;
    }
    .baby-page .title-ornament {
        width: 94px;
        margin-top: 0.42rem;
    }
    .baby-page .hero-tagline {
        max-width: 56%;
        margin-top: 0.36rem !important;
        font-size: clamp(1rem, 4.9vw, 1.18rem) !important;
        line-height: 1.03 !important;
    }
    .baby-page .hero-full .hero-month-panel {
        margin-top: -0.2rem;
        padding: 0.82rem 0.76rem 0.9rem;
        background: rgba(254, 252, 248, 0.93);
        box-shadow: 0 12px 30px rgba(99, 4, 20, 0.08);
    }
    .baby-page .form-ornament {
        margin-bottom: 0.12rem;
    }
    .baby-page .form-ornament i {
        font-size: 1.12rem;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: clamp(1.28rem, 6vw, 1.52rem);
    }
    .baby-page .month-selector-fields {
        gap: 0.52rem;
        margin: 0.62rem 0 0.68rem;
    }
    .baby-page .selector-field label {
        font-size: 0.82rem;
        margin-bottom: 0.22rem;
    }
    .baby-page .native-select-wrap select {
        min-height: 46px;
        font-size: 0.9rem;
        padding-top: 0.55rem;
        padding-bottom: 0.55rem;
    }
    .baby-page .hero-full .hero-month-panel > .brand-button {
        min-height: 47px;
        font-size: 0.92rem;
    }
}
@media (max-width: 420px) {
    .baby-page .brand-logo {
        width: 148px;
    }
    .baby-page .hero-full {
        padding-top: 3.78rem;
    }
    .baby-page .hero-full .hero-copy {
        min-height: 226px;
    }
    .baby-page .hero-full h1 {
        max-width: 58%;
        font-size: clamp(1.66rem, 8.6vw, 1.94rem);
    }
    .baby-page .hero-tagline {
        max-width: 57%;
        font-size: clamp(0.94rem, 4.7vw, 1.08rem) !important;
    }
    .baby-page .title-ornament {
        width: 82px;
        margin-top: 0.34rem;
    }
    .baby-page .hero-full .hero-month-panel {
        padding: 0.75rem 0.65rem 0.82rem;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: 1.3rem;
    }
    .baby-page .month-selector-fields {
        gap: 0.45rem;
        margin: 0.55rem 0 0.62rem;
    }
    .baby-page .native-select-wrap select {
        min-height: 44px;
    }
}
@media (max-width: 360px) {
    .baby-page .brand-logo {
        width: 138px;
    }
    .baby-page .hero-full {
        padding-top: 3.55rem;
    }
    .baby-page .hero-full .hero-copy {
        min-height: 208px;
    }
    .baby-page .hero-full h1 {
        font-size: 1.55rem;
    }
    .baby-page .hero-tagline {
        font-size: 0.9rem !important;
    }
    .baby-page .hero-full .hero-month-panel h2 {
        font-size: 1.2rem;
    }
}
.baby-page .dates-card {
    padding-top: 1.35rem;
}
.baby-page .dates-card .date-table-wrap {
    margin-bottom: 1rem;
}
.baby-page .date-table-wrap h4 {
    font-size: 1.65rem;
    padding: 0.7rem;
}
.baby-page .table-head {
    min-height: 84px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.12rem;
    padding: 0.45rem 0.2rem;
}
.baby-page .table-head > i {
    font-size: 1.15rem;
    color: var(--gold);
}
.baby-page .table-head strong {
    font: 700 0.84rem/1.1 var(--serif);
}
.baby-page .table-head small {
    font: 500 0.68rem/1.1 var(--sans);
    color: #766a67;
}
.baby-page .premium-head {
    background: #f8ecd3;
}
.baby-page .powerful-head {
    background: #fae5e0;
}
.baby-page .avoid-head {
    background: #efede9;
}
.baby-page .date-cell {
    min-height: 42px;
    background: #fbf0da;
}
.baby-page .date-row .date-cell:nth-child(2) {
    background: #f9e6e1;
}
.baby-page .date-row .date-cell:nth-child(3) {
    background: #efede9;
}
.baby-page .date-cell.locked {
    color: #c58b2d;
}
.baby-page .dates-card > .brand-button {
    margin-top: 0;
}
.baby-page .consultation-card h3 {
    font-size: 2rem;
}
.baby-page .compact-features {
    padding: 0.2rem 0 0.55rem;
}
.baby-page .compact-features li {
    margin: 0.65rem 0;
}
.baby-page .compact-features i {
    width: 38px;
    height: 38px;
    background: #fbedd6;
    color: var(--gold);
}
.baby-page .consult-cta {
    border: 0;
    border-radius: 10px;
    min-height: 54px;
    background: #f8dfdc;
    color: var(--maroon);
    font: 700 1rem var(--sans);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
}
.baby-page .consult-cta:hover {
    background: var(--maroon);
    color: #fff;
}
.baby-page .consult-details {
    margin-top: 1rem;
    padding: 1rem;
    border-radius: 12px;
    background: #fff6eb;
}
.baby-page .consult-details h4 {
    margin: 0 0 0.55rem;
    color: var(--maroon);
    font-size: 1.12rem;
}
.baby-page .consult-details ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.baby-page .consult-details li {
    display: grid;
    grid-template-columns: 24px 1fr;
    gap: 0.5rem;
    margin: 0.35rem 0;
    font: 0.85rem/1.35 var(--sans);
}
.baby-page .consult-details i {
    color: var(--gold);
}
.baby-page .consult-details li span {
    grid-column: 2;
    color: var(--muted);
}
.baby-page .consult-note {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.75rem;
    padding: 0.85rem;
    border: 1px solid #edd7b8;
    border-radius: 12px;
    background: #fff8ef;
}
.baby-page .consult-note > i {
    color: var(--gold);
    font-size: 1.3rem;
}
.baby-page .consult-note strong {
    color: var(--maroon);
    font-family: var(--serif);
    font-size: 1rem;
}
.baby-page .consult-note p {
    margin: 0.15rem 0 0;
    font: 0.76rem/1.4 var(--sans);
}
.baby-page .form-modal-dialog {
    max-width: 870px;
}
.baby-page .consult-modal-dialog {
    max-width: 900px;
}
.baby-page .reference-modal {
    border-radius: 24px;
    background: var(--surface);
}
.baby-page .modal-visual {
    position: relative;
    min-height: 220px;
    padding: 2rem 2.8rem;
    display: flex;
    align-items: flex-end;
    background-color: var(--ivory);
    background-image:
        linear-gradient(
            90deg,
            rgba(251, 247, 240, 0.96),
            rgba(251, 247, 240, 0.45) 52%,
            rgba(251, 247, 240, 0.05)
        ),
        url("baby-hero-lotus-v2.png");
    background-size: cover;
    background-position: center 32%;
    overflow: hidden;
}
.baby-page .modal-visual:after {
    content: "";
    position: absolute;
    left: -5%;
    right: -5%;
    bottom: -48px;
    height: 88px;
    border-radius: 50%;
    background: var(--surface);
}
.baby-page .modal-visual .btn-close {
    position: absolute;
    z-index: 3;
    right: 1.25rem;
    top: 1.25rem;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.9);
    opacity: 1;
}
.baby-page .modal-visual h2 {
    position: relative;
    z-index: 2;
    max-width: 430px;
    margin: 0 0 0.5rem;
    color: var(--maroon);
    font-size: clamp(2.35rem, 4vw, 3.4rem);
    line-height: 0.92;
}
.baby-page .consult-visual {
    min-height: 290px;
    align-items: center;
}
.baby-page .consult-visual h2 {
    max-width: 390px;
}
.baby-page .modal-moon {
    position: absolute;
    z-index: 2;
    left: 2.8rem;
    top: 1.35rem;
    color: var(--gold);
    font-size: 1.2rem;
}
.baby-page .modal-moon i {
    font-size: 2.1rem;
    margin-right: 0.6rem;
}
.baby-page .reference-modal .modal-body {
    padding: 1rem 2.5rem 1.5rem;
}
.baby-page .reference-modal .form-ornament {
    margin-top: -0.2rem;
}
.baby-page .modal-intro {
    margin: 0 0 1rem;
    color: var(--ink);
    font: 500 1.2rem var(--serif);
}
.baby-page .reference-modal .form-label,
.baby-page .field-heading strong,
.baby-page .month-choice label,
.baby-page .birth-panel legend {
    font-family: var(--serif);
    font-weight: 700;
    color: #2e2827;
}
.baby-page .reference-modal em {
    color: #d00000;
    font-style: normal;
}
.baby-page .name-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
}
.baby-page .phone-grid {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 0.75rem;
}
.baby-page .reference-modal .form-control,
.baby-page .reference-modal .form-select {
    min-height: 54px;
    border-radius: 9px;
    background: #fff;
    border-color: #d7d0c7;
    font-family: var(--serif);
}
.baby-page .field-heading {
    margin-top: 1.25rem;
}
.baby-page .field-heading strong {
    display: block;
    font-size: 1.18rem;
}
.baby-page .field-heading p {
    margin: 0.15rem 0 0.65rem;
    font: 0.8rem/1.35 var(--sans);
    color: #655f5c;
}
.baby-page .month-choice {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 0.75rem;
    align-items: start;
    margin: 0.65rem 0;
    padding: 0.8rem;
    border: 1px solid #eee0cc;
    border-radius: 12px;
    background: #fffaf4;
}
.baby-page .month-choice > span {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #e7ae56, #c98627);
    color: #fff;
    font-weight: 700;
}
.baby-page .month-choice label {
    display: block;
    margin: 0.12rem 0 0.45rem;
}
.baby-page .two-selects {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.65rem;
}
.baby-page .plan-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.8rem;
    margin: 1rem 0;
}
.baby-page .plan-card {
    position: relative;
    min-height: 100px;
    padding: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    border: 1px solid #e8c991;
    border-radius: 12px;
    background: #fffaf3;
    cursor: pointer;
}
.baby-page .plan-card:has(input:checked) {
    border-color: var(--maroon);
    background: #fff0ed;
}
.baby-page .plan-card input {
    position: absolute;
    opacity: 0;
}
.baby-page .plan-card > span {
    width: 30px;
    height: 30px;
    border: 2px solid #dfb873;
    border-radius: 50%;
    position: relative;
}
.baby-page .plan-card input:checked + span {
    border-color: var(--maroon);
}
.baby-page .plan-card input:checked + span:after {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 50%;
    background: var(--maroon);
}
.baby-page .plan-card strong {
    color: var(--maroon);
    font: 700 2rem/1 var(--serif);
}
.baby-page .plan-card small {
    display: block;
    margin-top: 0.35rem;
    font-size: 1rem;
}
.baby-page .reference-modal .consent {
    margin-top: 0.65rem;
}
.baby-page .reference-modal .modal-footer {
    padding: 1rem 2.5rem;
    background: var(--surface);
}
.baby-page .birth-panel {
    margin-top: 1.2rem;
    padding: 1rem;
    border: 1px solid #eee0cc;
    border-radius: 14px;
    background: #fffaf4;
}
.baby-page .birth-panel legend {
    float: none;
    width: auto;
    margin: 0 0 0.75rem;
    color: var(--maroon);
    font-size: 1.25rem;
}
.baby-page .birth-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
}
.baby-page .birth-grid label > span,
.baby-page .wide-field > span {
    display: flex;
    align-items: center;
    gap: 0.38rem;
    margin-bottom: 0.35rem;
    font: 600 0.82rem var(--sans);
}
.baby-page .birth-grid i,
.baby-page .wide-field i {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #faecd5;
    color: #b5781d;
}
.baby-page .wide-field {
    display: block;
    margin-top: 0.9rem;
}
.baby-page .date-range {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 0.55rem;
    align-items: center;
}
.baby-page .wide-field > small {
    display: block;
    margin-top: 0.3rem;
    color: var(--muted);
    font-size: 0.72rem;
}
.baby-page .popup-note {
    display: flex;
    gap: 0.8rem;
    margin-top: 1rem;
    padding: 0.8rem;
    border: 1px solid #edd7b8;
    border-radius: 11px;
    background: #fff8ef;
}
.baby-page .popup-note > i {
    color: var(--gold);
    font-size: 1.3rem;
}
.baby-page .popup-note strong {
    color: var(--maroon);
    font-family: var(--serif);
    font-size: 1.05rem;
}
.baby-page .popup-note p {
    margin: 0.15rem 0 0;
    font: 0.75rem/1.42 var(--sans);
}
.baby-page .consult-footer {
    display: block !important;
}
@media (max-width: 767.98px) {
    .baby-page .date-table-wrap h4 {
        font-size: 1.4rem;
    }
    .baby-page .table-head {
        min-height: 76px;
    }
    .baby-page .table-head strong {
        font-size: 0.72rem;
    }
    .baby-page .table-head small {
        font-size: 0.6rem;
    }
    .baby-page .consultation-card h3 {
        font-size: 1.65rem;
    }
    .baby-page .modal-dialog.form-modal-dialog {
        margin: 0.35rem;
    }
    .baby-page .reference-modal {
        border-radius: 18px;
    }
    .baby-page .modal-visual {
        min-height: 185px;
        padding: 1.25rem 1.25rem;
        background-image:
            linear-gradient(
                90deg,
                rgba(251, 247, 240, 0.92),
                rgba(251, 247, 240, 0.3) 58%,
                rgba(251, 247, 240, 0)
            ),
            url("baby-hero-mobile-v2.png");
        background-position: center 25%;
    }
    .baby-page .consult-visual {
        min-height: 225px;
    }
    .baby-page .modal-visual h2 {
        font-size: 2rem;
        max-width: 58%;
        line-height: 0.94;
    }
    .baby-page .consult-visual h2 {
        font-size: 1.85rem;
    }
    .baby-page .modal-moon {
        left: 1.25rem;
        top: 0.8rem;
    }
    .baby-page .modal-moon i {
        font-size: 1.5rem;
    }
    .baby-page .modal-visual .btn-close {
        right: 0.7rem;
        top: 0.7rem;
    }
    .baby-page .reference-modal .modal-body {
        padding: 0.65rem 0.85rem 1rem;
    }
    .baby-page .reference-modal .modal-footer {
        padding: 0.8rem 0.85rem;
    }
    .baby-page .name-grid {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    .baby-page .phone-grid {
        grid-template-columns: 100px 1fr;
        gap: 0.5rem;
    }
    .baby-page .reference-modal .form-control,
    .baby-page .reference-modal .form-select {
        min-height: 48px;
    }
    .baby-page .two-selects {
        gap: 0.45rem;
    }
    .baby-page .plan-grid {
        gap: 0.5rem;
    }
    .baby-page .plan-card {
        min-height: 82px;
        padding: 0.65rem;
        gap: 0.55rem;
    }
    .baby-page .plan-card > span {
        width: 24px;
        height: 24px;
    }
    .baby-page .plan-card strong {
        font-size: 1.5rem;
    }
    .baby-page .plan-card small {
        font-size: 0.78rem;
    }
    .baby-page .birth-grid {
        grid-template-columns: 1fr;
    }
    .baby-page .date-range {
        grid-template-columns: 1fr;
    }
    .baby-page .date-range b {
        text-align: center;
    }
    .baby-page .field-heading strong {
        font-size: 1.05rem;
    }
    .baby-page .birth-panel {
        padding: 0.75rem;
    }
    .baby-page .popup-note p {
        font-size: 0.7rem;
    }
}
@media (max-width: 420px) {
    .baby-page .modal-visual {
        min-height: 165px;
    }
    .baby-page .modal-visual h2 {
        font-size: 1.7rem;
    }
    .baby-page .consult-visual h2 {
        font-size: 1.58rem;
    }
    .baby-page .plan-grid {
        grid-template-columns: 1fr 1fr;
    }
    .baby-page .plan-card {
        flex-direction: column;
    }
    .baby-page .month-choice {
        grid-template-columns: 34px 1fr;
        padding: 0.65rem;
    }
    .baby-page .month-choice > span {
        width: 32px;
        height: 32px;
    }
    .baby-page .two-selects {
        grid-template-columns: 1fr;
    }
    .baby-page .reference-modal .modal-footer > div {
        min-width: 92px;
    }
    .baby-page .reference-modal .modal-footer .brand-button {
        font-size: 0.78rem;
    }
}
.baby-page .date-cell.premium-date {
    color: var(--maroon);
    background: #fbf0da;
    font-weight: 700;
}
.baby-page .reference-modal {
    max-height: calc(100dvh - 1rem);
    overflow: hidden;
}
.baby-page .reference-modal form {
    min-height: 0;
    display: flex;
    flex-direction: column;
}
.baby-page .reference-modal form > .modal-body {
    overflow-y: auto;
    overscroll-behavior: contain;
}
.baby-page .modal-visual:after {
    display: none;
}
.baby-page .reference-modal .modal-footer {
    position: sticky;
    bottom: 0;
    z-index: 5;
    flex: 0 0 auto;
    border-top: 1px solid var(--line);
    box-shadow: 0 -8px 22px rgba(99, 4, 20, 0.06);
}
.baby-page .reference-modal .form-control,
.baby-page .reference-modal .form-select {
    font-family: var(--sans);
    font-size: 0.92rem;
}
.baby-page .reference-modal .form-label {
    font-size: 1rem;
}
.baby-page .month-choice label {
    font-size: 0.96rem;
}
.baby-page .consult-modal-dialog .modal-visual {
    background-position: center 29%;
}
@media (max-width: 767.98px) {
    .baby-page .modal-dialog.form-modal-dialog {
        width: calc(100% - 0.75rem);
        max-width: none;
        margin: 0.375rem auto;
        height: calc(100dvh - 0.75rem);
    }
    .baby-page .modal-dialog.form-modal-dialog .reference-modal {
        height: 100%;
        max-height: 100%;
        border-radius: 17px;
    }
    .baby-page .modal-visual {
        flex: 0 0 148px;
        min-height: 148px;
        padding: 0.8rem 1.05rem;
        background-position: center 29%;
    }
    .baby-page .consult-visual {
        flex-basis: 176px;
        min-height: 176px;
        background-position: center 23%;
    }
    .baby-page .modal-visual h2 {
        max-width: 61%;
        font-size: 1.55rem;
        line-height: 0.95;
        margin-bottom: 0.1rem;
    }
    .baby-page .consult-visual h2 {
        font-size: 1.48rem;
    }
    .baby-page .reference-modal .modal-body {
        padding: 0.9rem 0.9rem 1.15rem;
    }
    .baby-page .reference-modal .form-ornament {
        margin: 0.05rem 0 0.55rem;
    }
    .baby-page .reference-modal .form-label {
        margin-bottom: 0.35rem;
    }
    .baby-page .name-grid {
        gap: 0.55rem;
    }
    .baby-page .phone-grid {
        grid-template-columns: 92px 1fr;
        gap: 0.55rem;
    }
    .baby-page .reference-modal .form-control,
    .baby-page .reference-modal .form-select {
        min-height: 49px;
        font-size: 0.9rem;
    }
    .baby-page .month-choice {
        grid-template-columns: 36px 1fr;
        gap: 0.55rem;
        padding: 0.75rem;
    }
    .baby-page .month-choice > span {
        width: 34px;
        height: 34px;
    }
    .baby-page .two-selects {
        grid-template-columns: 1fr 1fr;
        gap: 0.5rem;
    }
    .baby-page .plan-card {
        min-height: 88px;
    }
    .baby-page .reference-modal .modal-footer {
        padding: 0.75rem 0.9rem;
    }
    .baby-page .birth-panel {
        margin-top: 1rem;
    }
    .baby-page .birth-grid {
        gap: 0.65rem;
    }
    .baby-page .popup-note {
        margin-bottom: 0.2rem;
    }
}
@media (max-width: 420px) {
    .baby-page .modal-visual {
        flex-basis: 136px;
        min-height: 136px;
    }
    .baby-page .consult-visual {
        flex-basis: 164px;
        min-height: 164px;
    }
    .baby-page .modal-visual h2 {
        font-size: 1.42rem;
    }
    .baby-page .consult-visual h2 {
        font-size: 1.34rem;
    }
    .baby-page .modal-moon {
        top: 0.5rem;
    }
    .baby-page .modal-moon i {
        font-size: 1.2rem;
    }
    .baby-page .two-selects {
        grid-template-columns: 1fr 1fr;
    }
    .baby-page .plan-card {
        flex-direction: row;
        min-height: 78px;
    }
    .baby-page .plan-card strong {
        font-size: 1.35rem;
    }
    .baby-page .plan-card small {
        font-size: 0.72rem;
    }
    .baby-page .reference-modal .modal-footer {
        display: flex;
        flex-wrap: nowrap;
    }
    .baby-page .reference-modal .modal-footer .brand-button {
        min-width: 0;
        padding: 0.65rem 0.75rem;
    }
}
@media (max-width: 360px) {
    .baby-page .modal-visual {
        flex-basis: 124px;
        min-height: 124px;
    }
    .baby-page .consult-visual {
        flex-basis: 150px;
        min-height: 150px;
    }
    .baby-page .modal-visual h2 {
        font-size: 1.3rem;
    }
    .baby-page .consult-visual h2 {
        font-size: 1.22rem;
    }
    .baby-page .phone-grid {
        grid-template-columns: 82px 1fr;
    }
    .baby-page .plan-grid {
        grid-template-columns: 1fr;
    }
    .baby-page .plan-card {
        min-height: 68px;
    }
    .baby-page .two-selects {
        grid-template-columns: 1fr;
    }
}
.baby-page .form-modal-dialog {
    max-width: 700px;
}
.baby-page .consult-modal-dialog {
    max-width: 750px;
}
.baby-page .reference-modal {
    max-height: calc(100dvh - 2rem);
    border-radius: 18px;
}
.baby-page .modal-visual {
    min-height: 155px;
    padding: 1.15rem 1.7rem;
}
.baby-page .consult-visual {
    min-height: 185px;
}
.baby-page .modal-visual h2 {
    font-size: 2rem;
    line-height: 0.95;
}
.baby-page .consult-visual h2 {
    font-size: 1.9rem;
}
.baby-page .modal-moon {
    left: 1.7rem;
    top: 0.85rem;
}
.baby-page .modal-moon i {
    font-size: 1.5rem;
}
.baby-page .modal-visual .btn-close {
    width: 28px;
    height: 28px;
    right: 0.8rem;
    top: 0.8rem;
}
.baby-page .reference-modal .modal-body {
    padding: 0.7rem 1.35rem 1rem;
}
.baby-page .reference-modal .form-ornament {
    margin-bottom: 0.3rem;
}
.baby-page .modal-intro {
    font-size: 1rem;
    margin-bottom: 0.65rem;
}
.baby-page .reference-modal .form-control,
.baby-page .reference-modal .form-select {
    min-height: 45px;
    font-size: 0.85rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.baby-page .reference-modal .form-label {
    font-size: 0.9rem;
    margin-bottom: 0.25rem;
}
.baby-page .name-grid,
.baby-page .phone-grid,
.baby-page .two-selects,
.baby-page .birth-grid {
    gap: 0.5rem;
}
.baby-page .field-heading {
    margin-top: 0.85rem;
}
.baby-page .field-heading strong {
    font-size: 1rem;
}
.baby-page .field-heading p {
    font-size: 0.72rem;
    margin-bottom: 0.45rem;
}
.baby-page .month-choice {
    margin: 0.45rem 0;
    padding: 0.55rem;
}
.baby-page .month-choice > span {
    width: 31px;
    height: 31px;
    font-size: 0.85rem;
}
.baby-page .month-choice label {
    font-size: 0.86rem;
    margin-bottom: 0.3rem;
}
.baby-page .plan-grid {
    margin: 0.7rem 0;
    gap: 0.55rem;
}
.baby-page .plan-card {
    min-height: 72px;
    padding: 0.55rem;
}
.baby-page .plan-card > span {
    width: 23px;
    height: 23px;
}
.baby-page .plan-card strong {
    font-size: 1.4rem;
}
.baby-page .plan-card small {
    font-size: 0.72rem;
}
.baby-page .reference-modal .consent {
    margin-top: 0.4rem;
    padding: 0.55rem;
}
.baby-page .reference-modal .modal-footer {
    padding: 0.6rem 1.35rem;
}
.baby-page .reference-modal .modal-footer .brand-button {
    min-height: 46px;
}
.baby-page .birth-panel {
    margin-top: 0.75rem;
    padding: 0.7rem;
}
.baby-page .birth-panel legend {
    font-size: 1.05rem;
    margin-bottom: 0.5rem;
}
.baby-page .birth-grid label > span,
.baby-page .wide-field > span {
    font-size: 0.74rem;
    margin-bottom: 0.25rem;
}
.baby-page .birth-grid i,
.baby-page .wide-field i {
    width: 27px;
    height: 27px;
}
.baby-page .wide-field {
    margin-top: 0.65rem;
}
.baby-page .popup-note {
    margin-top: 0.7rem;
    padding: 0.65rem;
}
.baby-page .popup-note p {
    font-size: 0.68rem;
}
.baby-page .popup-note strong {
    font-size: 0.95rem;
}
@media (max-width: 767.98px) {
    .baby-page .modal-dialog.form-modal-dialog {
        width: calc(100% - 1rem);
        height: calc(100dvh - 1.5rem);
        margin: 0.75rem auto;
    }
    .baby-page .modal-dialog.form-modal-dialog .reference-modal {
        height: 100%;
        max-height: 100%;
        border-radius: 15px;
    }
    .baby-page .modal-visual {
        flex-basis: 112px;
        min-height: 112px;
        padding: 0.55rem 0.85rem;
        background-position: center 28%;
    }
    .baby-page .consult-visual {
        flex-basis: 132px;
        min-height: 132px;
    }
    .baby-page .modal-visual h2 {
        font-size: 1.25rem;
        max-width: 58%;
    }
    .baby-page .consult-visual h2 {
        font-size: 1.18rem;
    }
    .baby-page .modal-moon {
        left: 0.85rem;
        top: 0.35rem;
        font-size: 0.8rem;
    }
    .baby-page .modal-moon i {
        font-size: 1rem;
    }
    .baby-page .modal-visual .btn-close {
        width: 23px;
        height: 23px;
        right: 0.45rem;
        top: 0.45rem;
    }
    .baby-page .reference-modal .modal-body {
        padding: 0.55rem 0.7rem 0.8rem;
    }
    .baby-page .reference-modal .form-ornament {
        margin-bottom: 0.2rem;
    }
    .baby-page .reference-modal .form-ornament i {
        font-size: 1rem;
    }
    .baby-page .reference-modal .form-control,
    .baby-page .reference-modal .form-select {
        min-height: 43px;
        font-size: 0.82rem;
    }
    .baby-page .reference-modal .form-label {
        font-size: 0.86rem;
    }
    .baby-page .reference-modal .modal-footer {
        padding: 0.5rem 0.7rem;
    }
    .baby-page .reference-modal .modal-footer .brand-button {
        min-height: 44px;
    }
    .baby-page .field-heading {
        margin-top: 0.7rem;
    }
    .baby-page .month-choice {
        padding: 0.5rem;
    }
    .baby-page .birth-panel {
        padding: 0.55rem;
    }
    .baby-page .popup-note {
        padding: 0.55rem;
    }
}
@media (max-width: 420px) {
    .baby-page .modal-dialog.form-modal-dialog {
        height: calc(100dvh - 1rem);
        margin: 0.5rem auto;
    }
    .baby-page .modal-visual {
        flex-basis: 102px;
        min-height: 102px;
    }
    .baby-page .consult-visual {
        flex-basis: 120px;
        min-height: 120px;
    }
    .baby-page .modal-visual h2 {
        font-size: 1.12rem;
    }
    .baby-page .consult-visual h2 {
        font-size: 1.05rem;
    }
    .baby-page .plan-card {
        min-height: 64px;
    }
    .baby-page .plan-card strong {
        font-size: 1.2rem;
    }
}
.baby-page .range-selector {
    position: relative;
    display: flex;
    align-items: center;
}
.baby-page .range-selector > .bi-calendar3 {
    position: absolute;
    z-index: 2;
    left: 0.9rem;
    color: var(--gold);
    pointer-events: none;
}
.baby-page .range-selector > .bi-chevron-down {
    position: absolute;
    z-index: 2;
    right: 0.9rem;
    color: var(--maroon);
    font-size: 0.78rem;
    pointer-events: none;
}
.baby-page .range-selector .form-control {
    padding-left: 2.45rem;
    padding-right: 2.2rem;
    cursor: pointer;
    background: #fff;
}
.baby-page .flatpickr-calendar {
    font-family: var(--sans);
    border: 1px solid #ead5b6;
    box-shadow: 0 14px 36px rgba(99, 4, 20, 0.16);
}
.baby-page .flatpickr-day.selected,
.baby-page .flatpickr-day.startRange,
.baby-page .flatpickr-day.endRange,
.baby-page .flatpickr-day.selected:hover,
.baby-page .flatpickr-day.startRange:hover,
.baby-page .flatpickr-day.endRange:hover {
    background: var(--maroon);
    border-color: var(--maroon);
}
.baby-page .flatpickr-day.inRange {
    background: #fae9e6;
    border-color: #fae9e6;
    box-shadow:
        -5px 0 0 #fae9e6,
        5px 0 0 #fae9e6;
}
@media (max-width: 767.98px) {
    .baby-page .reference-modal .birth-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.35rem;
    }
    .baby-page .reference-modal .birth-grid label {
        min-width: 0;
    }
    .baby-page .reference-modal .birth-grid label > span {
        min-height: 34px;
        align-items: flex-start;
        gap: 0.2rem;
        font-size: 0.61rem;
        line-height: 1.08;
    }
    .baby-page .reference-modal .birth-grid label > span i {
        width: 21px;
        height: 21px;
        flex: 0 0 21px;
        font-size: 0.68rem;
    }
    .baby-page .reference-modal .birth-grid .form-control {
        width: 100%;
        min-width: 0;
        min-height: 40px;
        height: 40px;
        padding: 0.35rem 0.28rem;
        font-size: 0.66rem;
    }
    .baby-page .reference-modal .birth-grid input[type="date"],
    .baby-page .reference-modal .birth-grid input[type="time"] {
        padding-right: 0.1rem;
    }
    .baby-page .reference-modal .birth-grid input::-webkit-calendar-picker-indicator {
        width: 13px;
        height: 13px;
        margin: 0;
        padding: 0;
    }
    .baby-page .range-selector .form-control {
        padding-left: 2.2rem;
        padding-right: 1.9rem;
        font-size: 0.78rem;
    }
}
@media (max-width: 380px) {
    .baby-page .reference-modal .birth-grid {
        gap: 0.24rem;
    }
    .baby-page .reference-modal .birth-grid label > span {
        min-height: 29px;
        font-size: 0.56rem;
    }
    .baby-page .reference-modal .birth-grid label > span i {
        display: none;
    }
    .baby-page .reference-modal .birth-grid .form-control {
        font-size: 0.6rem;
        padding-inline: 0.15rem;
    }
}
.baby-page .address-heading + .location-grid {
    margin-top: 0;
}
.baby-page .reference-modal .choices__inner {
    display: flex;
    align-items: center;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: linear-gradient(180deg, #fff, #fffcf7);
}
.baby-page .reference-modal .choices[data-type*="select-one"] .choices__inner {
    padding-bottom: 0 !important;
}
.baby-page .reference-modal .choices__list--single {
    display: flex;
    align-items: center;
    height: 43px;
    padding-top: 0;
    padding-bottom: 0;
}
.baby-page .reference-modal .choices.is-focused .choices__inner,
.baby-page .reference-modal .choices.is-open .choices__inner {
    border-color: var(--gold);
    box-shadow: 0 0 0 0.18rem rgba(215, 154, 53, 0.13);
}
.baby-page .reference-modal .choices {
    min-width: 0;
    margin: 0;
    font-family: var(--sans);
}
.baby-page .reference-modal .choices__inner {
    min-height: 45px;
    padding: 0.55rem 1.75rem 0.45rem 0.65rem;
    border: 1px solid #d7d0c7;
    border-radius: 9px;
    background: #fff;
    font-size: 0.8rem;
    line-height: 1.2;
}
.baby-page .reference-modal .choices[data-type*="select-one"] .choices__inner {
    padding-bottom: 0.45rem;
}
.baby-page .reference-modal .choices[data-type*="select-one"]:after {
    right: 0.7rem;
    border-color: var(--maroon) transparent transparent;
}
.baby-page .reference-modal .choices.is-open[data-type*="select-one"]:after {
    border-color: transparent transparent var(--maroon);
}
.baby-page .reference-modal .choices__list--single {
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.baby-page .reference-modal .choices__list--dropdown,
.baby-page .reference-modal .choices__list[aria-expanded] {
    z-index: 40;
    width: 260px;
    max-width: calc(100vw - 2rem);
    border-color: #d7d0c7;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(99, 4, 20, 0.14);
}
.baby-page .reference-modal .choices__input {
    margin: 0;
    border-bottom: 1px solid #eadcc8;
    background: #fff;
    font-size: 0.8rem;
}
.baby-page .reference-modal .choices__list--dropdown .choices__list,
.baby-page .reference-modal .choices__list[aria-expanded] .choices__list {
    max-height: 210px;
}
.baby-page .reference-modal .choices__item--choice {
    font-size: 0.76rem;
    padding: 0.55rem 0.7rem;
}
.baby-page .reference-modal .choices__item--choice.is-highlighted {
    background: #fff0ed;
    color: var(--maroon);
}
@media (max-width: 767.98px) {
    .baby-page .reference-modal .choices__inner {
        min-height: 43px;
        padding: 0.55rem 1.3rem 0.4rem 0.35rem;
        font-size: 0.64rem;
    }
    .baby-page .reference-modal .choices[data-type*="select-one"]:after {
        right: 0.45rem;
    }
    .baby-page .reference-modal .phone-grid .choices__list--dropdown,
    .baby-page .reference-modal .phone-grid .choices__list[aria-expanded] {
        width: 220px;
    }
    .baby-page .reference-modal .location-grid .choices__list--dropdown,
    .baby-page .reference-modal .location-grid .choices__list[aria-expanded] {
        width: 230px;
    }
}
@media (max-width: 767.98px) {
    .baby-page #unlockModal .two-selects {
        grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
        gap: 0.35rem;
    }
    .baby-page #unlockModal .plan-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.4rem;
    }
    .baby-page #unlockModal .plan-card {
        min-width: 0;
        min-height: 70px;
        padding: 0.5rem;
        flex-direction: row;
        gap: 0.42rem;
    }
    .baby-page #unlockModal .plan-card > span {
        width: 21px;
        height: 21px;
        flex: 0 0 21px;
    }
    .baby-page #unlockModal .plan-card strong {
        font-size: 1.25rem;
        white-space: nowrap;
    }
    .baby-page #unlockModal .plan-card small {
        font-size: 0.68rem;
    }
    .baby-page #unlockModal .consent {
        display: grid;
        grid-template-columns: 18px minmax(0, 1fr);
        align-items: start;
        gap: 0.5rem;
        padding: 0.65rem !important;
    }
    .baby-page #unlockModal .consent .form-check-input {
        float: none;
        width: 18px;
        height: 18px;
        margin: 0.08rem 0 0;
        cursor: pointer;
    }
    .baby-page #unlockModal .consent .form-check-label {
        font-size: 0.72rem;
        line-height: 1.35;
        cursor: pointer;
    }
}
@media (max-width: 767.98px) {
    .baby-page .reference-modal .name-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 0.35rem;
    }
    .baby-page .reference-modal .name-grid .form-control {
        min-width: 0;
        padding-left: 0.5rem;
        padding-right: 0.35rem;
        font-size: 0.74rem;
    }
}
@media (max-width: 380px) {
    .baby-page .reference-modal .name-grid {
        gap: 0.25rem;
    }
    .baby-page .reference-modal .name-grid .form-control {
        padding-left: 0.35rem;
        padding-right: 0.2rem;
        font-size: 0.68rem;
    }
}
.baby-page .identity-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
    gap: 0.65rem;
    align-items: end;
}
.baby-page .location-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.65rem;
    margin-top: 0.65rem;
}
.baby-page .form-field {
    min-width: 0;
}
.baby-page .form-field .form-label {
    display: block;
}
.baby-page .identity-row .phone-grid {
    grid-template-columns: minmax(120px, 0.9fr) minmax(0, 1.25fr);
    gap: 0.4rem;
}
.baby-page .identity-row .code-select {
    max-width: none;
}
.baby-page #unlockModal .consent {
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    padding: 0.65rem !important;
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: center;
    gap: 0.55rem;
}
.baby-page #unlockModal .consent .form-check-input {
    position: static !important;
    float: none !important;
    inset: auto !important;
    width: 18px;
    height: 18px;
    margin: 0 !important;
    box-sizing: border-box;
    cursor: pointer;
}
.baby-page #unlockModal .consent .form-check-label {
    min-width: 0;
    margin: 0;
    line-height: 1.35;
    cursor: pointer;
}
@media (max-width: 767.98px) {
    .baby-page .identity-row {
        grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.42fr);
        gap: 0.35rem;
    }
    .baby-page .location-grid {
        gap: 0.35rem;
        margin-top: 0.45rem;
    }
    .baby-page .identity-row .phone-grid {
        grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
        gap: 0.25rem;
    }
    .baby-page .identity-row .form-control,
    .baby-page .identity-row .form-select,
    .baby-page .location-grid .form-control,
    .baby-page .location-grid .form-select {
        min-width: 0;
        padding-left: 0.42rem;
        padding-right: 0.25rem;
        font-size: 0.7rem;
    }
    .baby-page .identity-row .form-label,
    .baby-page .location-grid .form-label {
        font-size: 0.7rem;
        margin-bottom: 0.2rem;
        white-space: nowrap;
    }
    .baby-page #unlockModal .consent .form-check-label {
        font-size: 0.72rem;
    }
}
@media (max-width: 380px) {
    .baby-page .identity-row {
        grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.48fr);
        gap: 0.25rem;
    }
    .baby-page .location-grid {
        gap: 0.25rem;
    }
    .baby-page .identity-row .form-control,
    .baby-page .identity-row .form-select,
    .baby-page .location-grid .form-control,
    .baby-page .location-grid .form-select {
        font-size: 0.64rem;
        padding-left: 0.3rem;
        padding-right: 0.15rem;
    }
    .baby-page .identity-row .form-label,
    .baby-page .location-grid .form-label {
        font-size: 0.64rem;
    }
}
.baby-page .address-heading + .location-grid {
    margin-top: 0;
}
.baby-page .reference-modal .choices__inner {
    display: flex;
    align-items: center;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: linear-gradient(180deg, #fff, #fffcf7);
}
.baby-page .reference-modal .choices[data-type*="select-one"] .choices__inner {
    padding-bottom: 0 !important;
}
.baby-page .reference-modal .choices__list--single {
    display: flex;
    align-items: center;
    height: 43px;
    padding-top: 0;
    padding-bottom: 0;
}
.baby-page .reference-modal .choices.is-focused .choices__inner,
.baby-page .reference-modal .choices.is-open .choices__inner {
    border-color: var(--gold);
    box-shadow: 0 0 0 0.18rem rgba(215, 154, 53, 0.13);
}
.baby-page .address-heading {
    margin: 0.55rem 0 0.24rem;
    padding: 0.18rem 0 0.28rem;
    gap: 0.32rem;
    border: 0;
    border-bottom: 1px solid #eadcc8;
    border-radius: 0;
    background: transparent;
}
.baby-page .address-heading > i {
    width: auto;
    height: auto;
    flex: 0 0 auto;
    border-radius: 0;
    background: transparent;
    color: var(--gold);
    font-size: 0.76rem;
}
.baby-page .address-heading strong {
    display: inline;
    color: #5f4a4c;
    font: 700 0.78rem/1.1 var(--serif);
}
.baby-page .address-heading small {
    display: inline;
    margin-left: 0.3rem;
    color: var(--muted);
    font: 0.56rem/1.1 var(--sans);
}
.baby-page #consultModal .consent {
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    margin-top: 0.55rem;
    padding: 0.6rem !important;
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: center;
    gap: 0.5rem;
}
.baby-page #consultModal .consent .form-check-input {
    position: static !important;
    float: none !important;
    inset: auto !important;
    width: 18px;
    height: 18px;
    margin: 0 !important;
    box-sizing: border-box;
    cursor: pointer;
}
.baby-page #consultModal .consent .form-check-label {
    min-width: 0;
    margin: 0;
    font-size: 0.72rem;
    line-height: 1.35;
    cursor: pointer;
}
@media (max-width: 767.98px) {
    .baby-page .address-heading {
        margin: 0.4rem 0 0.2rem;
        padding: 0.14rem 0 0.22rem;
    }
    .baby-page .address-heading > i {
        font-size: 0.68rem;
    }
    .baby-page .address-heading strong {
        font-size: 0.7rem;
    }
    .baby-page .address-heading small {
        font-size: 0.5rem;
    }
    .baby-page #consultModal .consent {
        margin-top: 0.4rem;
        padding: 0.52rem !important;
    }
}
.baby-page .reference-modal form > .modal-body {
    position: relative;
    z-index: 10;
}
.baby-page .reference-modal .choices.is-open {
    position: relative;
    z-index: 2050;
}
.baby-page .reference-modal .choices__list--dropdown,
.baby-page .reference-modal .choices__list[aria-expanded] {
    z-index: 2060 !important;
}
.baby-page .reference-modal .modal-footer {
    z-index: 4;
}
.baby-page .reference-modal form > .modal-body.choices-menu-open {
    overflow: visible !important;
    z-index: 2100;
}
.baby-page .reference-modal form:has(.choices-menu-open) .modal-footer {
    z-index: 1;
}
@media (max-width: 767.98px) {
    .baby-page .reference-modal .choices__list--dropdown .choices__list,
    .baby-page .reference-modal .choices__list[aria-expanded] .choices__list {
        max-height: 150px;
    }
}
.baby-page {
    --maroon: #65100f;
    --maroon-dark: #3b1714;
    --gold: #b6873b;
    --serif: Georgia, "Times New Roman", serif;
    --sans: Arial, Helvetica, sans-serif;
    font-family: var(--sans);
}
.baby-page .hero:before,
.baby-page .hero:after {
    display: none;
}
.baby-page .hero {
    isolation: auto;
    min-height: 0;
}
.baby-page .hero-copy {
    width: auto;
    padding-bottom: 0;
}
.baby-page h1,
.baby-page h2,
.baby-page h3,
.baby-page h4 {
    font-family: var(--serif);
}
.baby-page .form-modal .modal-content {
    overflow: hidden;
}
.baby-page .modal-body {
    font-family: Arial, Helvetica, sans-serif;
}
.baby-page .results-section {
    padding-bottom: 45px;
}

/* Restore source typefaces: Georgia fallback was making the content look heavier. */
.baby-page {
    --serif: "Cormorant Garamond", Georgia, serif;
    --sans: "Lora", Georgia, serif;
}
.baby-page .hero-full h1 {
    font-weight: 600 !important;
    line-height: 1.05;
}
.baby-page h2,
.baby-page h3,
.baby-page h4 {
    font-weight: 500 !important;
}
.baby-page .form-label,
.baby-page .field-heading strong,
.baby-page .month-choice label,
.baby-page .consult-details h4 {
    font-weight: 500 !important;
}
.baby-page .brand-button,
.baby-page .table-head,
.baby-page .table-head strong {
    font-weight: 600;
}
.baby-page .card-intro,
.baby-page .feature-list,
.baby-page .consult-details ul,
.baby-page .important-note p {
    font-weight: 400;
}
.baby-page .modal-body {
    font-family: var(--sans);
}
