/* Family offers reuse the newborn card; only their stacked spacing differs. */
:is(#main, .editor-styles-wrapper) .gf-family-pricing-section > .gf-newborn-pricing-card + .gf-newborn-pricing-card {
    margin-top: 24px;
}

:is(#main, .editor-styles-wrapper) .gf-family-pricing-section .gf-newborn-pricing-copy h3 {
    margin-top: 0;
}

/* Price overview only; the newborn card is the visual reference. */
:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card {
    background: #26382C;
    color: #F4EBDD;
    border: 0;
    border-top: 3px solid #C75A38;
    border-radius: 3px 3px 44px 3px;
    padding: 36px;
    --gf-action-bg: #D29A45;
    --gf-action-text: #26382C;
    --gf-action-hover-bg: #F4EBDD;
    --gf-action-hover-text: #26382C;
    --gf-action-focus: #F4EBDD;
}

:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card :is(h3, p, ul, li) {
    color: #F4EBDD;
}

:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card h3 em,
:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card .da-price {
    color: #D29A45;
}

/* Keep readable links if the owner adds one to the editable copy. */
:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card a {
    color: #D29A45;
}

:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card a:hover {
    color: #F4EBDD;
}

:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card .wp-block-buttons {
    padding-top: 24px;
    border-top: 1px solid #D29A45;
}

/* Override the old cream secondary-button treatment inside these cards only. */
:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card .wp-block-button__link {
    background: #D29A45;
    border-color: #D29A45;
    color: #26382C !important;
}

:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card .wp-block-button__link:hover {
    background: #F4EBDD;
    border-color: #F4EBDD;
    color: #26382C !important;
}

:is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card a:focus-visible {
    outline: 2px solid #F4EBDD;
    outline-offset: 4px;
}

@media (max-width: 1000px) {
    :is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card {
        padding: 30px 28px;
    }
}

@media (max-width: 690px) {
    :is(#main, .editor-styles-wrapper) .gf-price-page .gf-price-grid > .gf-price-card {
        padding: 28px 24px;
        border-radius: 3px 3px 32px 3px;
    }
}

/* Wedding packages retain their cream surface, borders and popular badge. */
:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-grid > .gf-wedding-main-card {
    padding: 36px 28px 28px;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-grid > .gf-wedding-main-card.gf-wedding-popular {
    padding: 34px 26px 26px;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card .gf-wedding-card-head {
    text-align: center;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card .gf-wedding-card-head .da-kicker {
    min-height: 0;
    margin: 0 0 10px !important;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card .gf-wedding-card-head h3 {
    min-height: 0;
    margin: 0 0 14px;
    font-weight: 700;
    text-align: center;
    text-wrap: balance;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card .gf-wedding-card-head .da-price {
    margin: 0 0 22px !important;
    color: #C75A38;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-style: italic !important;
    font-weight: 400 !important;
    font-size: 36px !important;
    line-height: 1.2 !important;
    letter-spacing: -.035em;
    text-align: center;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card > p:not(.da-popular-badge) {
    min-height: 0;
    margin: 0 0 18px !important;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card .da-list {
    margin-bottom: 0;
}

@media (min-width: 821px) and (max-width: 1000px) {
    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-grid > .gf-wedding-main-card {
        padding: 34px 20px 26px;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-grid > .gf-wedding-main-card.gf-wedding-popular {
        padding: 32px 18px 24px;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card .gf-wedding-card-head .da-price {
        font-size: 32px !important;
    }
}

@media (max-width: 820px) {
    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-grid > .gf-wedding-main-card {
        padding: 30px 26px 26px;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-grid > .gf-wedding-main-card.gf-wedding-popular {
        padding: 30px 24px 24px;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-main-card .gf-wedding-card-head .da-price {
        font-size: 35px !important;
    }
}

/* The one-hour portrait offer stays secondary to the three main packages. */
:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-offer {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px 40px;
    align-items: start;
    max-width: 920px;
    margin: 30px auto 0 !important;
    padding: 24px 0 4px;
    border: 0;
    border-top: 1px solid rgba(244, 235, 221, .26);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-copy {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: 18px;
    row-gap: 0;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-label {
    flex: 0 0 100%;
    margin: 0 0 8px !important;
    font-size: 10px !important;
    letter-spacing: .06em;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-copy h3 {
    margin: 0 !important;
    color: #F4EBDD;
    font-size: 26px;
    font-weight: 600;
    line-height: 1.25;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-copy .da-kicker {
    margin: 0 !important;
    font-size: 10px !important;
    line-height: 1.6 !important;
    letter-spacing: .05em;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-copy > p:not(.da-kicker):not(.gf-wedding-short-label) {
    flex: 0 0 100%;
    max-width: 100%;
    margin: 9px 0 0 !important;
    font-size: 14px;
    line-height: 1.65;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-details {
    flex: 0 0 100%;
    min-width: 0;
    margin: 8px 0 0 !important;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-details summary {
    width: fit-content;
    max-width: 100%;
    color: #F4EBDD;
    text-decoration-color: rgba(244, 235, 221, .45);
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-details summary:hover {
    text-decoration-color: #D29A45;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-action {
    align-self: start;
    padding-top: 26px;
    text-align: right;
}

:is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-action .da-price {
    margin: 0 !important;
    color: #F4EBDD;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: 28px !important;
    font-style: italic !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    letter-spacing: -.025em;
    white-space: nowrap;
}

@media (max-width: 690px) {
    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-offer {
        gap: 16px 20px;
        margin-top: 26px !important;
        padding-top: 22px;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-copy {
        display: block;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-copy h3 {
        margin: 0 0 6px !important;
        font-size: 25px;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-action .da-price {
        font-size: 25px !important;
    }
}

@media (max-width: 420px) {
    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-offer {
        column-gap: 16px;
    }

    :is(#main, .editor-styles-wrapper) .gf-wedding-offers .gf-wedding-short-action .da-price {
        font-size: 23px !important;
    }
}
