.babyplus-page .mostra1,
.babyplus-page .mostra2 { display:none; }

body.babyplus-page {
    background:#fffdfb;
    color:#253438;
    font-family:'Ubuntu', sans-serif;
}
.babyplus-page * { box-sizing:border-box; }
.babyplus-page .bp-container {
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding-left:24px;
    padding-right:24px;
}
.babyplus-page .bp-topbar {
    padding:12px 0;
    background:#00bad1;
    display:flex;
    align-items:center;
    justify-content:center;
}
.babyplus-page .bp-topbar img { max-width:170px; height:auto; }
.babyplus-page .bp-hero {
    padding:50px 0;
    background:linear-gradient(135deg, #fff8f2 0%, #f4fcfb 52%, #f7f5ff 100%);
    overflow:hidden;
}
.babyplus-page .bp-hero-grid {
    display:flex;
    align-items:center;
    gap:70px;
}
.babyplus-page .bp-hero-copy,
.babyplus-page .bp-hero-visual { width:50%; }
.babyplus-page .bp-kicker {
    display:inline-block;
    margin-bottom:20px;
    color:#0797aa;
    font-size:14px;
    font-weight:700;
    letter-spacing:1.6px;
    text-transform:uppercase;
}
.babyplus-page .bp-hero h1 {
    margin:0 0 24px;
    color:#173f46;
    font-size:52px;
    line-height:1.08;
    font-weight:700;
    letter-spacing:-1.2px;
}
.babyplus-page .bp-hero p {
    max-width:560px;
    margin:0 0 34px;
    color:#5b6d72;
    font-size:19px;
    line-height:1.65;
}
.babyplus-page .bp-primary-btn {
    display:inline-block;
    padding:16px 30px;
    border:1px solid #00aabd;
    border-radius:8px;
    background:#00bad1;
    color:#fff !important;
    font-size:16px;
    font-weight:700;
    text-decoration:none !important;
    box-shadow:0 12px 28px rgba(0,186,209,.18);
    transition:background .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.babyplus-page .bp-primary-btn:hover {
    background:#049aae;
    border-color:#049aae;
    transform:translateY(-2px);
}
.babyplus-page .bp-hero-note {
    margin-top:20px;
    color:#708086;
    font-size:14px;
}
.babyplus-page .bp-hero-visual img {
    display:block;
    width:100%;
    border-radius:26px;
    box-shadow:0 28px 55px rgba(31,78,86,.15);
}
.babyplus-page .bp-section { padding:50px 0; }
.babyplus-page .bp-section-soft { background:#e6f5f5; }
.babyplus-page #escolha-estado { background:#fffdfb; }
.babyplus-page #bercarios { background:linear-gradient(180deg, #f8fcfc 0%, #fff 100%); }
.babyplus-page .bp-section-head {
    max-width:720px;
    margin:0 auto 38px;
    text-align:center;
}
.babyplus-page .bp-section-head h2 {
    margin:0 0 16px;
    color:#173f46;
    font-size:36px;
    line-height:1.2;
    font-weight:700;
}
.babyplus-page .bp-section-head p {
    margin:0;
    color:#6b7b80;
    font-size:17px;
    line-height:1.65;
}
.babyplus-page .bp-states {
    display:flex;
    justify-content:center;
    gap:18px;
    flex-wrap:wrap;
}
.babyplus-page .bp-state {
    position:relative;
    min-width:245px;
    padding:24px 58px 24px 24px;
    border:1px solid rgba(23,63,70,.08);
    border-radius:16px;
    color:#173f46 !important;
    font-size:16px;
    font-weight:700;
    text-align:left;
    text-decoration:none !important;
    box-shadow:0 12px 26px rgba(34,73,80,.08);
    overflow:hidden;
    transition:background .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.babyplus-page .bp-state:before {
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:6px;
    height:100%;
    border-radius:16px 0 0 16px;
    transition:width .25s ease;
}
.babyplus-page .bp-state:after {
    content:'→';
    position:absolute;
    right:18px;
    top:50%;
    transform:translateY(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:rgba(255,255,255,.78);
    font-size:18px;
    font-weight:400;
    box-shadow:0 6px 14px rgba(34,73,80,.08);
    transition:all .25s ease;
}
.babyplus-page .bp-state:hover,
.babyplus-page .bp-state.active {
    transform:translateY(-4px);
    box-shadow:0 17px 34px rgba(34,73,80,.13);
}
.babyplus-page .bp-state:hover:before,
.babyplus-page .bp-state.active:before {
    width:10px;
}
.babyplus-page .bp-state:hover:after,
.babyplus-page .bp-state.active:after {
    transform:translateY(-50%) translateX(3px);
}
.babyplus-page .bp-state:nth-child(1) {
    background:linear-gradient(135deg,#eaf9ff 0%,#f8fdff 100%);
    border-color:#ccebf6;
}
.babyplus-page .bp-state:nth-child(1):before { background:#33aecd; }
.babyplus-page .bp-state:nth-child(1):after { color:#2398b7; }
.babyplus-page .bp-state:nth-child(2) {
    background:linear-gradient(135deg,#fff0e7 0%,#fffaf7 100%);
    border-color:#f1d2bf;
}
.babyplus-page .bp-state:nth-child(2):before { background:#ef9465; }
.babyplus-page .bp-state:nth-child(2):after { color:#dc7c4a; }
.babyplus-page .bp-state:nth-child(3) {
    background:linear-gradient(135deg,#f0edff 0%,#fbfaff 100%);
    border-color:#d9d2f4;
}
.babyplus-page .bp-state:nth-child(3):before { background:#8f7fd2; }
.babyplus-page .bp-state:nth-child(3):after { color:#7565bb; }
.babyplus-page .bp-about-grid {
    display:flex;
    align-items:center;
    gap:70px;
}
.babyplus-page .bp-about-copy,
.babyplus-page .bp-about-visual { width:50%; }
.babyplus-page .bp-about-copy h2 {
    margin:0 0 22px;
    color:#173f46;
    font-size:36px;
    line-height:1.2;
}
.babyplus-page .bp-about-copy p {
    margin:0 0 18px;
    color:#627278;
    font-size:17px;
    line-height:1.75;
}
.babyplus-page .bp-about-visual img {
    width:100%;
    border-radius:22px;
    box-shadow:0 22px 45px rgba(31,78,86,.12);
}

.babyplus-page .bp-benefits-section {
    background:linear-gradient(180deg,#fffaf7 0%,#fff 100%);
}
.babyplus-page .bp-benefits {
    display:flex;
    gap:20px;
}
.babyplus-page .bp-benefit-card {
    position:relative;
    flex:1;
    min-height:230px;
    padding:30px 24px 28px;
    border:1px solid transparent;
    border-radius:20px;
    overflow:hidden;
    text-align:left;
    box-shadow:0 14px 30px rgba(34,73,80,.08);
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.babyplus-page .bp-benefit-card:after {
    content:'';
    position:absolute;
    right:-34px;
    bottom:-40px;
    width:110px;
    height:110px;
    border-radius:50%;
    opacity:.34;
    pointer-events:none;
}
.babyplus-page .bp-benefit-card:hover {
    transform:translateY(-5px);
    box-shadow:0 20px 38px rgba(34,73,80,.13);
}
.babyplus-page .bp-benefit-card:nth-child(1) {
    background:linear-gradient(145deg,#e8f8fd 0%,#f8fdff 100%);
    border-color:#c8e8f1;
}
.babyplus-page .bp-benefit-card:nth-child(1):after { background:#7ed0e5; }
.babyplus-page .bp-benefit-card:nth-child(2) {
    background:linear-gradient(145deg,#ffecef 0%,#fff8f9 100%);
    border-color:#f3ccd4;
}
.babyplus-page .bp-benefit-card:nth-child(2):after { background:#f3a1b0; }
.babyplus-page .bp-benefit-card:nth-child(3) {
    background:linear-gradient(145deg,#fff3d8 0%,#fffaf0 100%);
    border-color:#efdca9;
}
.babyplus-page .bp-benefit-card:nth-child(3):after { background:#edc861; }
.babyplus-page .bp-benefit-card:nth-child(4) {
    background:linear-gradient(145deg,#ece9ff 0%,#faf9ff 100%);
    border-color:#d7d0f2;
}
.babyplus-page .bp-benefit-card:nth-child(4):after { background:#aa9be3; }
.babyplus-page .bp-benefit-icon {
    position:relative;
    z-index:2;
    display:inline-flex;
    width:54px;
    height:54px;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    border-radius:16px;
    background:#fff;
    font-size:23px;
    box-shadow:0 10px 20px rgba(34,73,80,.10);
}
.babyplus-page .bp-benefit-card:nth-child(1) .bp-benefit-icon {
    color:#219dbc;
    background:#f7fdff;
}
.babyplus-page .bp-benefit-card:nth-child(2) .bp-benefit-icon {
    color:#df6f84;
    background:#fff9fa;
}
.babyplus-page .bp-benefit-card:nth-child(3) .bp-benefit-icon {
    color:#c9972f;
    background:#fffdf7;
}
.babyplus-page .bp-benefit-card:nth-child(4) .bp-benefit-icon {
    color:#7968be;
    background:#fbfaff;
}
.babyplus-page .bp-benefit-card h3 {
    position:relative;
    z-index:2;
    margin:0 0 11px;
    color:#173f46;
    font-size:19px;
    line-height:1.32;
    font-weight:700;
}
.babyplus-page .bp-benefit-card p {
    position:relative;
    z-index:2;
    margin:0;
    color:#65777c;
    font-size:14px;
    line-height:1.65;
}
.babyplus-page .bp-steps {
    display:flex;
    gap:20px;
}
.babyplus-page .bp-step {
    position:relative;
    flex:1;
    min-height:220px;
    padding:28px 24px 26px;
    border:1px solid #dcecef;
    border-radius:18px;
    background:linear-gradient(180deg,#ffffff 0%,#f8fcfc 100%);
    box-shadow:0 12px 28px rgba(34,73,80,.07);
    overflow:hidden;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.babyplus-page .bp-step:before {
    content:'';
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,#00bad1 0%,#54c9b4 100%);
}
.babyplus-page .bp-step:after {
    content:'';
    position:absolute;
    right:-32px;
    bottom:-38px;
    width:110px;
    height:110px;
    border-radius:50%;
    background:rgba(0,186,209,.07);
}
.babyplus-page .bp-step:hover {
    transform:translateY(-4px);
    border-color:#bfe4e9;
    box-shadow:0 18px 36px rgba(34,73,80,.11);
}
.babyplus-page .bp-step-number {
    position:relative;
    z-index:2;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    margin-bottom:20px;
    border-radius:16px;
    background:linear-gradient(135deg,#00bad1 0%,#31c5b1 100%);
    color:#fff;
    font-size:22px;
    line-height:1;
    font-weight:700;
    box-shadow:0 10px 22px rgba(0,186,209,.20);
}
.babyplus-page .bp-step h3 {
    position:relative;
    z-index:2;
    margin:0 0 12px;
    color:#173f46;
    font-size:19px;
    line-height:1.35;
    font-weight:700;
}
.babyplus-page .bp-step p {
    position:relative;
    z-index:2;
    margin:0;
    color:#6e7f84;
    font-size:14px;
    line-height:1.65;
}
.babyplus-page .bp-step:nth-child(2):before {
    background:linear-gradient(90deg,#f38aa0 0%,#f2b26d 100%);
}
.babyplus-page .bp-step:nth-child(2) .bp-step-number {
    background:linear-gradient(135deg,#f38aa0 0%,#ef9d6c 100%);
    box-shadow:0 10px 22px rgba(243,138,160,.22);
}
.babyplus-page .bp-step:nth-child(2):after {
    background:rgba(243,138,160,.08);
}
.babyplus-page .bp-step:nth-child(3):before {
    background:linear-gradient(90deg,#f1c15e 0%,#ef9f5b 100%);
}
.babyplus-page .bp-step:nth-child(3) .bp-step-number {
    background:linear-gradient(135deg,#f1c15e 0%,#ef9f5b 100%);
    box-shadow:0 10px 22px rgba(241,193,94,.22);
}
.babyplus-page .bp-step:nth-child(3):after {
    background:rgba(241,193,94,.09);
}
.babyplus-page .bp-step:nth-child(4):before {
    background:linear-gradient(90deg,#8f7fd2 0%,#b393dc 100%);
}
.babyplus-page .bp-step:nth-child(4) .bp-step-number {
    background:linear-gradient(135deg,#8f7fd2 0%,#ae8ed8 100%);
    box-shadow:0 10px 22px rgba(143,127,210,.22);
}
.babyplus-page .bp-step:nth-child(4):after {
    background:rgba(143,127,210,.08);
}
.babyplus-page .bp-listing-head {
    margin-bottom:38px;
    text-align:center;
}
.babyplus-page .bp-listing-head h2 {
    margin:0 0 10px;
    color:#173f46;
    font-size:34px;
    font-weight:700;
}
.babyplus-page .bp-listing-head p {
    margin:0;
    color:#728186;
    font-size:16px;
}
.babyplus-page .bp-school-grid {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:24px;
}


.babyplus-page .bp-school-card:hover {
    transform:translateY(-4px);
    box-shadow:0 18px 36px rgba(34,73,80,.12);
}
.babyplus-page .bp-school-card > a { text-decoration:none !important; }
.babyplus-page .bp-school-logo {
    height:150px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:12px;
    margin-bottom:18px;
    border-radius:10px;
    background:#fafcfc;
}
.babyplus-page .bp-school-logo img {
    max-width:100%;
    max-height:126px;
    width:auto;
    height:auto;
}
.babyplus-page .bp-school-name {
    min-height:42px;
    margin:0 0 10px;
    color:#173f46;
    font-size:17px;
    line-height:1.35;
    font-weight:700;
}
.babyplus-page .bp-school-location {
    min-height:42px;
    margin-bottom:18px;
    color:#7a898e;
    font-size:13px;
    line-height:1.5;
}
.babyplus-page .bp-card-btn {
    display:block;
    width:100%;
    padding:12px 15px;
    border-radius:7px;
    background:#00bad1;
    color:#fff;
    font-size:14px;
    font-weight:700;
}
.babyplus-page .bp-empty {
    max-width:620px;
    margin:0 auto;
    padding:38px;
    border:1px solid #e0ebed;
    border-radius:12px;
    background:#fff;
    color:#65767b;
    text-align:center;
}
.babyplus-page .bp-secondary-actions {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    flex-wrap:wrap;
    margin-top:15px;
    text-align:center;
}
.babyplus-page .bp-action-btn,
.babyplus-page .bp-whatsapp-share {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-width:240px;
    height:48px;
    padding:0 22px;
    border:0;
    border-radius:10px;
    color:#fff !important;
    font-size:14px;
    font-weight:700;
    text-decoration:none !important;
    transition:background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.babyplus-page .bp-action-btn {
    background:#f36f8a;
    box-shadow:0 10px 22px rgba(243,111,138,.22);
}
.babyplus-page .bp-action-btn:hover {
    background:#e85f7d;
    transform:translateY(-2px);
}
.babyplus-page .bp-action-btn .glyphicon {
    font-size:18px;
}
.babyplus-page .bp-whatsapp-share {
    background:#25d366;
    box-shadow:0 10px 22px rgba(37,211,102,.22);
}
.babyplus-page .bp-whatsapp-share:hover {
    background:#1fbe5d;
    transform:translateY(-2px);
}
.babyplus-page .bp-whatsapp-share img {
    width:20px;
    height:20px;
    object-fit:contain;
}
.babyplus-page .bp-partner-link {
    width:100%;
    margin-top:6px;
    padding:7px 2px;
    color:#51656b !important;
    font-size:14px;
    font-weight:600;
    text-align:center;
    text-decoration:none !important;
}
.babyplus-page .bp-partner-link:hover {
    color:#00a6bb !important;
}
.babyplus-page .bp-final-cta {
    padding:62px 0;
    background:linear-gradient(135deg, #1f5057 0%, #285f63 100%);
    text-align:center;
}
.babyplus-page .bp-final-cta h2 {
    margin:0 0 14px;
    color:#fff;
    font-size:36px;
    font-weight:700;
}
.babyplus-page .bp-final-cta p {
    margin:0 0 30px;
    color:#c5d6d9;
    font-size:17px;
}
.babyplus-page .bp-final-cta .bp-primary-btn {
    box-shadow:none;
}
@media (max-width: 991px) {
    .babyplus-page .bp-hero { padding:50px 0 56px; }
    .babyplus-page .bp-hero-grid,
    .babyplus-page .bp-about-grid { gap:38px; }
    .babyplus-page .bp-hero h1 { font-size:42px; }
    .babyplus-page .bp-steps { gap:22px; }
}
@media (max-width: 767px) {
    .babyplus-page .bp-container { padding-left:18px; padding-right:18px; }
    .babyplus-page .bp-topbar { height:58px; }
    .babyplus-page .bp-hero { padding:38px 0 44px; }
    .babyplus-page .bp-hero-grid,
    .babyplus-page .bp-about-grid { display:block; }
    .babyplus-page .bp-hero-copy,
    .babyplus-page .bp-hero-visual,
    .babyplus-page .bp-about-copy,
    .babyplus-page .bp-about-visual { width:100%; }
    .babyplus-page .bp-hero-copy { margin-bottom:38px; }
    .babyplus-page .bp-hero h1 { font-size:37px; letter-spacing:-.5px; }
    .babyplus-page .bp-hero p { font-size:17px; }
    .babyplus-page .bp-primary-btn { width:100%; text-align:center; }
    .babyplus-page .bp-section { padding:40px 0; }
    .babyplus-page .bp-section-head h2,
    .babyplus-page .bp-about-copy h2,
    .babyplus-page .bp-listing-head h2,
    .babyplus-page .bp-final-cta h2 { font-size:29px; }
    .babyplus-page .bp-state { width:100%; min-width:0; padding:22px 56px 22px 22px; }
    .babyplus-page .bp-about-copy { margin-bottom:35px; }
    .babyplus-page .bp-benefits {
        display:block;
    }
    .babyplus-page .bp-benefit-card {
        min-height:0;
        margin-bottom:16px;
        padding:24px 22px;
    }
    .babyplus-page .bp-benefit-icon {
        width:50px;
        height:50px;
        border-radius:14px;
    }
    .babyplus-page .bp-steps { display:block; }
    .babyplus-page .bp-step {
        min-height:0;
        margin-bottom:16px;
        padding:24px 22px;
    }
    .babyplus-page .bp-step-number {
        width:48px;
        height:48px;
        margin-bottom:16px;
        border-radius:14px;
        font-size:20px;
    }
    .babyplus-page .bp-secondary-actions {
        display:flex;
        flex-direction:column;
        align-items:stretch;
    }
    .babyplus-page .bp-action-btn,
    .babyplus-page .bp-whatsapp-share {
        width:100%;
        min-width:0;
        max-width:340px;
        margin:0 auto;
    }
    .babyplus-page .bp-partner-link {
        display:block;
        margin-top:0;
    }
    .babyplus-page .bp-school-card { width:100%; max-width:340px; }
}

/* =========================================================
   PÁGINA BABY PLUS POR ESTADO
   ========================================================= */
.babyplus-estados-page .bp-state-hero {
    padding:42px 0 0;
    background:linear-gradient(180deg,#f7fbfb 0%,#fffdfb 100%);
    text-align:left;
}
.babyplus-estados-page .bp-state-hero-panel {
    position:relative;
    min-height:250px;
    display:flex;
    align-items:center;
    padding:48px 54px;
    border:1px solid rgba(0,186,209,.12);
    border-radius:28px;
    background:
        radial-gradient(circle at 88% 20%,rgba(143,127,210,.18) 0,rgba(143,127,210,0) 25%),
        radial-gradient(circle at 72% 95%,rgba(243,138,160,.18) 0,rgba(243,138,160,0) 28%),
        linear-gradient(135deg,#eefbfc 0%,#fff9f5 56%,#f8f5ff 100%);
    box-shadow:0 24px 60px rgba(34,73,80,.10);
    overflow:hidden;
}
.babyplus-estados-page .bp-state-hero-copy {
    position:relative;
    z-index:2;
    max-width:700px;
}
.babyplus-estados-page .bp-state-hero .bp-kicker {
    margin-bottom:14px;
    padding:7px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.78);
    box-shadow:0 8px 20px rgba(34,73,80,.07);
}
.babyplus-estados-page .bp-state-hero h1 {
    max-width:680px;
    margin:0 0 15px;
    color:#173f46;
    font-size:46px;
    line-height:1.15;
    font-weight:700;
    letter-spacing:-1.2px;
}
.babyplus-estados-page .bp-state-hero h1 strong {
    color:#00aabd;
    font-weight:700;
}
.babyplus-estados-page .bp-state-hero p {
    max-width:560px;
    margin:0;
    color:#627278;
    font-size:18px;
    line-height:1.65;
}
.babyplus-estados-page .bp-state-hero-decoration {
    position:absolute;
    right:48px;
    top:50%;
    width:180px;
    height:180px;
    transform:translateY(-50%);
}
.babyplus-estados-page .bp-decoration-shape {
    position:absolute;
    inset:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,.75);
    border-radius:44% 56% 48% 52%;
    background:linear-gradient(135deg,#00bad1 0%,#53c9b5 100%);
    color:#fff;
    font-size:42px;
    font-weight:700;
    box-shadow:0 24px 45px rgba(0,186,209,.22);
    transform:rotate(-7deg);
}
.babyplus-estados-page .bp-decoration-circle {
    position:absolute;
    display:block;
    border-radius:50%;
}
.babyplus-estados-page .bp-circle-one {
    width:42px;
    height:42px;
    right:4px;
    top:10px;
    background:#f38aa0;
}
.babyplus-estados-page .bp-circle-two {
    width:28px;
    height:28px;
    left:3px;
    bottom:12px;
    background:#f1c15e;
}
.babyplus-estados-page .bp-state-listing {
    min-height:470px;
    padding-top:58px;
    background:#fffdfb;
}
.babyplus-estados-page .bp-listing-head-state {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:28px;
    padding-bottom:20px;
    border-bottom:1px solid #e5eeee;
    text-align:left;
}
.babyplus-estados-page .bp-listing-eyebrow {
    display:block;
    margin-bottom:7px;
    color:#00aabd;
    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
}
.babyplus-estados-page .bp-listing-head-state h2 {
    margin:0;
    color:#173f46;
    font-size:31px;
    font-weight:700;
}
.babyplus-estados-page .bp-listing-head-state p {
    flex:0 0 auto;
    margin:0 0 3px;
    color:#728186;
    font-size:14px;
}
.babyplus-estados-page .bp-school-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:stretch;
    gap:22px;
}
.babyplus-estados-page .bp-school-card {
    position:relative;
    width:auto;
    min-width:0;
    height:372px;
    padding:0;
    border:1px solid #cde7ed;
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 30px rgba(34,73,80,.07);
    overflow:hidden;
    text-align:center;
    transition:transform .25s ease, box-shadow .25s ease;
}
.babyplus-estados-page .bp-school-card:before {
    content:'';
    position:absolute;
    left:0;
    top:0;
    z-index:2;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,#00bad1 0%,#53c9b5 100%);
}
.babyplus-estados-page .bp-school-card:hover {
    transform:translateY(-4px);
    box-shadow:0 18px 36px rgba(34,73,80,.12);
}
.babyplus-estados-page .bp-school-card > a {
    display:flex;
    flex-direction:column;
    height:100%;
    min-height:100%;
    padding:16px;
    color:inherit;
    text-decoration:none !important;
}
.babyplus-estados-page .bp-school-logo {
    display:flex;
    align-items:center;
    justify-content:center;
    height:154px;
    flex:0 0 auto;
    margin:0 0 17px;
    padding:18px;
    border:1px solid #97fffb;
    border-radius:14px;
    background:linear-gradient(145deg,#fbfdfd 0%,#defbfb 100%);
}
.babyplus-estados-page .bp-school-logo img {
    width:auto;
    height:auto;
    max-width:100%;
    max-height:116px;
    border-radius:20px;
}
.babyplus-estados-page .bp-school-name {
    display:-webkit-box;
    height:46px;
    min-height:46px;
    max-height:46px;
    margin:0 2px 10px;
    overflow:hidden;
    color:#173f46;
    font-size:17px;
    line-height:23px;
    font-weight:700;
    text-align:center;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}
.babyplus-estados-page .bp-school-location {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    justify-content:flex-start;
    gap:8px;
    height:44px;
    min-height:44px;
    max-height:44px;
    margin:0 2px 18px;
    overflow:hidden;
    color:#7a898e;
    font-size:13px;
    line-height:1.5;
    text-align:left;
}
.babyplus-estados-page .bp-school-location .glyphicon {
    flex:0 0 auto;
    margin-top:2px;
    color:#f38aa0;
    font-size:15px;
}
.babyplus-estados-page .bp-school-location span {
    display:block;
}
.babyplus-estados-page .bp-card-btn {
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    margin-top:auto;
    padding:13px 15px;
    border-radius:10px;
    background:#00bad1;
    color:#fff;
    font-size:14px;
    font-weight:700;
    transition:background .25s ease;
}
.babyplus-estados-page .bp-card-btn span {
    font-size:18px;
    font-weight:400;
    transition:transform .25s ease;
}
.babyplus-estados-page .bp-school-card:hover .bp-card-btn {
    background:#049aae;
}
.babyplus-estados-page .bp-school-card:hover .bp-card-btn span {
    transform:translateX(3px);
}
.babyplus-estados-page .bp-empty {
    grid-column:1 / -1;
}
.babyplus-estados-page .bp-empty h2,
.babyplus-estados-page .bp-empty h3 {
    margin:0 0 12px;
    color:#173f46;
    font-weight:700;
}
.babyplus-estados-page .bp-empty h2 { font-size:28px; }
.babyplus-estados-page .bp-empty h3 { font-size:21px; }
.babyplus-estados-page .bp-empty p {
    margin:0;
    font-size:15px;
    line-height:1.65;
}
.babyplus-estados-page .bp-empty-state {
    margin-top:15px;
}
.babyplus-estados-page .bp-state-selector {
    position:relative;
    z-index:3;
    display:flex;
    align-items:center;
    gap:18px;
    padding:18px 20px;
    border:1px solid #e2eded;
    border-radius:18px;
    background:#fff;
    box-shadow:0 16px 36px rgba(34,73,80,.10);
}
.babyplus-estados-page .bp-state-selector-bottom {
    margin:42px 0 0;
    padding:20px 22px;
    box-shadow:0 12px 30px rgba(34,73,80,.08);
}
.babyplus-estados-page .bp-state-selector-label {
    flex:0 0 auto;
    color:#6b7b80;
    font-size:13px;
    font-weight:700;
    letter-spacing:.7px;
    text-transform:uppercase;
}
.babyplus-estados-page .bp-state-selector .bp-states {
    flex:1;
    justify-content:flex-start;
    gap:10px;
}
.babyplus-estados-page .bp-states-compact .bp-state {
    min-width:0;
    padding:13px 42px 13px 16px;
    border-radius:12px;
    font-size:14px;
    box-shadow:none;
}
.babyplus-estados-page .bp-states-compact .bp-state:before {
    width:4px;
    border-radius:12px 0 0 12px;
}
.babyplus-estados-page .bp-states-compact .bp-state:after {
    right:10px;
    width:26px;
    height:26px;
    font-size:15px;
}
.babyplus-estados-page .bp-states-compact .bp-state:hover,
.babyplus-estados-page .bp-states-compact .bp-state.active {
    transform:translateY(-2px);
}

@media (max-width:991px) {
    .babyplus-estados-page .bp-school-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
    .babyplus-estados-page .bp-state-hero-copy {
        max-width:570px;
    }
    .babyplus-estados-page .bp-state-hero-decoration {
        right:26px;
        opacity:.65;
    }
}

@media (max-width:767px) {
    .babyplus-estados-page .bp-state-hero {
        padding:22px 0 0;
    }
    .babyplus-estados-page .bp-state-hero-panel {
        min-height:0;
        padding:34px 25px;
        border-radius:22px;
    }
    .babyplus-estados-page .bp-state-hero h1 {
        max-width:100%;
        font-size:34px;
        line-height:1.12;
        letter-spacing:-.4px;
    }
    .babyplus-estados-page .bp-state-hero p {
        max-width:88%;
        font-size:16px;
    }
    .babyplus-estados-page .bp-state-hero-decoration {
        right:14px;
        bottom:6px;
        top:auto;
        width:82px;
        height:82px;
        opacity:.7;
        transform:none;
    }
    .babyplus-estados-page .bp-decoration-shape {
        inset:14px;
        border-radius:18px;
        font-size:20px;
    }
    .babyplus-estados-page .bp-circle-one {
        width:20px;
        height:20px;
    }
    .babyplus-estados-page .bp-circle-two {
        width:14px;
        height:14px;
    }
    .babyplus-estados-page .bp-state-listing {
        padding-top:42px;
    }
    .babyplus-estados-page .bp-listing-head-state {
        display:block;
        margin-bottom:20px;
    }
    .babyplus-estados-page .bp-listing-head-state h2 {
        font-size:27px;
    }
    .babyplus-estados-page .bp-listing-head-state p {
        margin-top:8px;
    }
    .babyplus-estados-page .bp-school-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }
    .babyplus-estados-page .bp-school-card {
        width:100%;
        max-width:none;
        height:310px;
        margin:0;
        border-radius:16px;
        }
    .babyplus-estados-page .bp-school-card > a {
        padding:11px;
    }
    .babyplus-estados-page .bp-school-logo {
        height:112px;
        margin-bottom:12px;
        padding:10px;
        border-radius:11px;
    }
    .babyplus-estados-page .bp-school-logo img {
        max-height:90px;
    }
    .babyplus-estados-page .bp-school-name {
        height:40px;
        min-height:40px;
        max-height:40px;
        margin:0 0 8px;
        font-size:14px;
        line-height:20px;
    }
    .babyplus-estados-page .bp-school-location {
        height:38px;
        min-height:38px;
        max-height:38px;
        margin:0 0 12px;
        gap:5px;
        font-size:11px;
        line-height:1.45;
    }
    .babyplus-estados-page .bp-school-location .glyphicon {
        font-size:12px;
    }
    .babyplus-estados-page .bp-card-btn {
        padding:11px 10px;
        border-radius:8px;
        font-size:12px;
    }
    .babyplus-estados-page .bp-card-btn span {
        font-size:15px;
    }
    .babyplus-estados-page .bp-state-selector-bottom {
        display:block;
        margin:30px 0 0;
        padding:15px;
        border-radius:16px;
    }
    .babyplus-estados-page .bp-state-selector-label {
        display:block;
        margin-bottom:10px;
    }
    .babyplus-estados-page .bp-state-selector .bp-states {
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
    }
    .babyplus-estados-page .bp-states-compact .bp-state {
        width:100%;
        padding:14px 42px 14px 16px;
    }
}

@media (max-width:359px) {
    .babyplus-estados-page .bp-school-grid {
        gap:8px;
    }
    .babyplus-estados-page .bp-school-card > a {
        padding:9px;
    }
}

/* =========================================================
   PÁGINA BABY PLUS - EXIBIÇÃO DAS VAGAS
   ========================================================= */
.babyplus-lista-page .bp-vacancy-hero {
    padding:42px 0;
    background:linear-gradient(135deg,#eefbfc 0%,#fff8f3 58%,#f8f5ff 100%);
}
.babyplus-lista-page .bp-vacancy-hero-grid {
    display:grid;
    grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr);
    align-items:stretch;
    gap:30px;
}
.babyplus-lista-page .bp-vacancy-school {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:34px;
    border:1px solid rgba(0,186,209,.14);
    border-radius:24px;
    background:rgba(255,255,255,.86);
    box-shadow:0 20px 48px rgba(34,73,80,.10);
}
.babyplus-lista-page .bp-vacancy-school-logo {
    display:flex;
    align-items:center;
    justify-content:center;
    width:150px;
    height:150px;
    margin-bottom:24px;
    padding:15px;
    border:1px solid #dcebed;
    border-radius:22px;
    background:#fff;
}
.babyplus-lista-page .bp-vacancy-school-logo img {
    max-width:100%;
    max-height:118px;
    width:auto;
    height:auto;
}
.babyplus-lista-page .bp-vacancy-school-copy .bp-kicker {
    margin-bottom:10px;
}
.babyplus-lista-page .bp-vacancy-school-copy h1 {
    margin:0 0 13px;
    color:#173f46;
    font-size:36px;
    line-height:1.18;
    font-weight:700;
}
.babyplus-lista-page .bp-vacancy-school-copy p {
    margin:0 0 24px;
    color:#6d7d82;
    font-size:15px;
}
.babyplus-lista-page .bp-vacancy-school-copy p .glyphicon {
    margin-right:5px;
    color:#f38aa0;
}
.babyplus-lista-page .bp-vacancy-school-copy .bp-whatsapp-share {
    min-width:0;
    width:auto;
}
.babyplus-lista-page .bp-vacancy-gallery {
    min-width:0;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 20px 48px rgba(34,73,80,.12);
}
.babyplus-lista-page .bp-vacancy-gallery-item {
    height:390px;
    background:#edf5f5;
}
.babyplus-lista-page .bp-vacancy-gallery-item img {
    width:100%;
    height:100%;
    object-fit:cover;
}
.babyplus-lista-page .bp-vacancy-gallery .owl-dots {
    position:absolute;
    left:0;
    right:0;
    bottom:10px;
}
.babyplus-lista-page .bp-vacancy-listing {
    background:#fffdfb;
}
.babyplus-lista-page .bp-listing-eyebrow {
    display:block;
    margin-bottom:7px;
    color:#00aabd;
    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
}
.babyplus-lista-page .bp-vacancy-note {
    max-width:850px;
    margin:0 auto 28px;
    padding:20px 24px;
    border:1px solid #dfecee;
    border-left:5px solid #00bad1;
    border-radius:14px;
    background:#fff;
    color:#5f7176;
    font-size:15px;
    line-height:1.65;
    box-shadow:0 10px 26px rgba(34,73,80,.06);
}
.babyplus-lista-page .bp-vacancy-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
}
.babyplus-lista-page .bp-vacancy-card {
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:430px;
    padding:24px;
    border:1px solid #e0ebed;
    border-radius:20px;
    background:#fff;
    box-shadow:0 13px 30px rgba(34,73,80,.07);
    overflow:hidden;
    transition:transform .25s ease, box-shadow .25s ease;
}
.babyplus-lista-page .bp-vacancy-card:before {
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(90deg,#00bad1 0%,#53c9b5 100%);
}
.babyplus-lista-page .bp-vacancy-card:hover {
    transform:translateY(-4px);
    box-shadow:0 19px 38px rgba(34,73,80,.12);
}
.babyplus-lista-page .bp-vacancy-alert {
    align-self:flex-start;
    margin:3px 0 15px;
    padding:6px 10px;
    border-radius:999px;
    background:#fff0f3;
    color:#d85f77;
    font-size:11px;
    font-weight:700;
    letter-spacing:.5px;
    text-transform:uppercase;
}
.babyplus-lista-page .bp-vacancy-card-head h3 {
    margin:0 0 5px;
    color:#173f46;
    font-size:23px;
    font-weight:700;
}
.babyplus-lista-page .bp-vacancy-card-head > span {
    color:#00aabd;
    font-size:14px;
    font-weight:700;
}
.babyplus-lista-page .bp-vacancy-location {
    margin:17px 0;
    padding:10px 0;
    border-top:1px solid #edf2f3;
    border-bottom:1px solid #edf2f3;
    color:#78888d;
    font-size:13px;
}
.babyplus-lista-page .bp-vacancy-location .glyphicon {
    margin-right:4px;
    color:#f38aa0;
}
.babyplus-lista-page .bp-vacancy-price {
    display:flex;
    flex-direction:column;
    margin-bottom:13px;
}
.babyplus-lista-page .bp-vacancy-price > span {
    margin-bottom:3px;
    color:#7d8b90;
    font-size:13px;
}
.babyplus-lista-page .bp-vacancy-price strong {
    color:#173f46;
    font-size:31px;
    line-height:1.1;
}
.babyplus-lista-page .bp-vacancy-price small {
    margin-top:5px;
    color:#00aabd;
    font-size:14px;
    font-weight:700;
}
.babyplus-lista-page .bp-vacancy-saving {
    margin-bottom:13px;
    padding:10px 12px;
    border-radius:10px;
    background:#eaf8f8;
    color:#087f90;
    font-size:13px;
    font-weight:700;
    text-align:center;
}
.babyplus-lista-page .bp-vacancy-benefit {
    margin-bottom:20px;
    color:#5d7075;
    font-size:13px;
    line-height:1.5;
    text-align:center;
}
.babyplus-lista-page .bp-vacancy-benefit small {
    color:#7a8a8f;
}
.babyplus-lista-page .bp-vacancy-btn {
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    margin-top:auto;
    padding:14px 15px;
    border-radius:10px;
    background:#00bad1;
    color:#fff !important;
    font-size:14px;
    font-weight:700;
    text-decoration:none !important;
    transition:background .25s ease;
}
.babyplus-lista-page .bp-vacancy-btn:hover {
    background:#049aae;
}
.babyplus-lista-page .bp-vacancy-btn span {
    font-size:18px;
}
.babyplus-lista-page .bp-vacancy-actions {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    flex-wrap:wrap;
    margin-top:38px;
}
.babyplus-lista-page .bp-vacancy-actions .bp-primary-btn,
.babyplus-lista-page .bp-vacancy-actions .bp-action-btn {
    min-width:260px;
    text-align:center;
}
.babyplus-lista-page .bp-action-btn-secondary {
    background:#f38aa0;
}
.babyplus-lista-page .bp-action-btn-secondary:hover {
    background:#e87991;
}

@media (max-width:991px) {
    .babyplus-lista-page .bp-vacancy-hero-grid {
        grid-template-columns:1fr;
    }
    .babyplus-lista-page .bp-vacancy-school {
        flex-direction:row;
        align-items:center;
        gap:24px;
    }
    .babyplus-lista-page .bp-vacancy-school-logo {
        flex:0 0 140px;
        width:140px;
        height:140px;
        margin:0;
    }
    .babyplus-lista-page .bp-vacancy-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:767px) {
    .babyplus-lista-page .bp-vacancy-hero {
        padding:22px 0 32px;
    }
    .babyplus-lista-page .bp-vacancy-school {
        display:block;
        padding:24px;
        border-radius:20px;
        text-align:center;
    }
    .babyplus-lista-page .bp-vacancy-school-logo {
        width:120px;
        height:120px;
        margin:0 auto 18px;
    }
    .babyplus-lista-page .bp-vacancy-school-copy h1 {
        font-size:29px;
    }
    .babyplus-lista-page .bp-vacancy-school-copy .bp-whatsapp-share {
        width:100%;
        max-width:310px;
        margin:0 auto;
    }
    .babyplus-lista-page .bp-vacancy-gallery-item {
        height:260px;
    }
    .babyplus-lista-page .bp-vacancy-grid {
        grid-template-columns:1fr;
        gap:16px;
    }
    .babyplus-lista-page .bp-vacancy-card {
        min-height:0;
        padding:22px;
    }
    .babyplus-lista-page .bp-vacancy-actions {
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:14px;
        width:100%;
        margin-top:35px;
    }
    .babyplus-lista-page .bp-vacancy-actions .bp-primary-btn,
    .babyplus-lista-page .bp-vacancy-actions .bp-action-btn {
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        max-width:none;
        min-width:0;
        min-height:58px;
        margin:0;
        padding:14px 18px;
        line-height:1.3;
        text-align:center;
    }
}
