/* =========================================================
   MAMAHOOD — ADVERTISING REGISTRATION
   ========================================================= */
/*
 * Public Gravity Forms presentation for the single unified
 * Advertising Registration page.
 *
 * Scope is deliberately limited to the body class added by the
 * Mamahood Site Styles loader for /advertising-registration/.
 * Payment logic, conditional logic, policy rendering and form data
 * remain owned by Gravity Forms / Mamahood Business Desk.
 */

body.mh-advertising-registration-page {
    --mh-reg-navy: #073570;
    --mh-reg-raspberry: #F23883;
    --mh-reg-raspberry-dark: #D92D70;
    --mh-reg-beige: #F0E5D9;
    --mh-reg-blush: #FFF4F8;
    --mh-reg-soft: #FAF7F3;
    --mh-reg-line: rgba(7, 53, 112, 0.14);
    --mh-reg-line-strong: rgba(7, 53, 112, 0.22);
    --mh-reg-text: #26374F;
    --mh-reg-muted: #687588;
}

/* =========================================================
   FORM SHELL
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper {
    width: 100% !important;
    max-width: 1040px !important;
    margin: 0 auto 70px !important;
    font-family: "DM Sans", sans-serif !important;
}

body.mh-advertising-registration-page .gform_wrapper form {
    margin: 0 !important;
    padding: 38px 40px 42px !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(7, 53, 112, 0.10) !important;
    border-radius: 22px !important;
    box-shadow: 0 14px 38px rgba(7, 53, 112, 0.065) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gform_heading {
    margin: 0 0 28px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gform_title {
    margin: 0 0 8px !important;
    color: var(--mh-reg-navy) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: clamp(30px, 3vw, 40px) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.03em !important;
}

body.mh-advertising-registration-page .gform_wrapper .gform_description,
body.mh-advertising-registration-page .gform_wrapper .gform_required_legend {
    color: var(--mh-reg-muted) !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
}

body.mh-advertising-registration-page .gform_wrapper .gform_fields {
    row-gap: 22px !important;
    column-gap: 20px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield {
    min-width: 0 !important;
    margin: 0 !important;
}

/* =========================================================
   SECTION HEADINGS — conversational chapter rhythm
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .gsection {
    margin: 12px 0 0 !important;
    padding: 34px 0 2px !important;
    border: 0 !important;
    border-top: 1px solid rgba(7, 53, 112, 0.10) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gform_fields > .gsection:first-of-type {
    margin-top: 0 !important;
    padding-top: 2px !important;
    border-top: 0 !important;
}

body.mh-advertising-registration-page .gform_wrapper .gsection_title {
    margin: 0 0 7px !important;
    color: var(--mh-reg-navy) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: clamp(25px, 2.5vw, 32px) !important;
    font-weight: 700 !important;
    line-height: 1.16 !important;
    letter-spacing: -0.025em !important;
}

body.mh-advertising-registration-page .gform_wrapper .gsection_description {
    max-width: 760px !important;
    margin: 0 !important;
    color: var(--mh-reg-muted) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

/* =========================================================
   FIELD LABELS + HELP TEXT
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .gfield_label,
body.mh-advertising-registration-page .gform_wrapper legend.gfield_label {
    margin: 0 0 8px !important;
    color: var(--mh-reg-navy) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_required,
body.mh-advertising-registration-page .gform_wrapper .gfield_required_text {
    color: var(--mh-reg-raspberry) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_description,
body.mh-advertising-registration-page .gform_wrapper .instruction,
body.mh-advertising-registration-page .gform_wrapper .ginput_complex label {
    color: var(--mh-reg-muted) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 12.5px !important;
    line-height: 1.5 !important;
}

body.mh-advertising-registration-page .gform_wrapper .ginput_complex label {
    margin-top: 6px !important;
}

/* =========================================================
   INPUTS
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper input[type="text"],
body.mh-advertising-registration-page .gform_wrapper input[type="email"],
body.mh-advertising-registration-page .gform_wrapper input[type="tel"],
body.mh-advertising-registration-page .gform_wrapper input[type="url"],
body.mh-advertising-registration-page .gform_wrapper input[type="number"],
body.mh-advertising-registration-page .gform_wrapper input[type="password"],
body.mh-advertising-registration-page .gform_wrapper select,
body.mh-advertising-registration-page .gform_wrapper textarea {
    width: 100% !important;
    min-height: 52px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 13px 15px !important;
    background: #FFFFFF !important;
    border: 1px solid var(--mh-reg-line-strong) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    color: var(--mh-reg-text) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease !important;
}

body.mh-advertising-registration-page .gform_wrapper textarea {
    min-height: 130px !important;
    resize: vertical !important;
}

body.mh-advertising-registration-page .gform_wrapper input:focus,
body.mh-advertising-registration-page .gform_wrapper select:focus,
body.mh-advertising-registration-page .gform_wrapper textarea:focus {
    outline: none !important;
    border-color: var(--mh-reg-raspberry) !important;
    box-shadow: 0 0 0 3px rgba(242, 56, 131, 0.09) !important;
}

body.mh-advertising-registration-page .gform_wrapper input::placeholder,
body.mh-advertising-registration-page .gform_wrapper textarea::placeholder {
    color: #97A1AF !important;
    opacity: 1 !important;
}

body.mh-advertising-registration-page .gform_wrapper .ginput_counter {
    margin-top: 5px !important;
    color: #8A95A4 !important;
    font-size: 11px !important;
}

/* =========================================================
   PLAN + BILLING RADIO CARDS
   The form currently contains one plan radio field and two
   conditional Product radio fields. No field IDs are required.
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .gfield_radio {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin: 0 !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_radio .gchoice {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

/*
 * A visible selection control makes the difference between
 * "recommended" and "actually chosen" unmistakable.
 */
body.mh-advertising-registration-page .gform_wrapper .gfield_radio .gchoice::before {
    content: "";
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 3;
    width: 20px;
    height: 20px;
    box-sizing: border-box;
    background: #FFFFFF;
    border: 2px solid rgba(7, 53, 112, 0.42);
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(7, 53, 112, 0.08);
    pointer-events: none;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_radio .gchoice:has(input[type="radio"]:checked)::before {
    background: var(--mh-reg-raspberry);
    border-color: var(--mh-reg-raspberry);
    box-shadow: inset 0 0 0 4px #FFFFFF, 0 1px 3px rgba(7, 53, 112, 0.10);
}

body.mh-advertising-registration-page .gform_wrapper .gfield_radio input[type="radio"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_radio .gchoice label {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 92px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 20px 54px 20px 22px !important;
    background: #FFFFFF !important;
    border: 1px solid var(--mh-reg-line) !important;
    border-radius: 16px !important;
    box-shadow: 0 5px 16px rgba(7, 53, 112, 0.035) !important;
    color: var(--mh-reg-navy) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_radio .gchoice label:hover {
    border-color: rgba(242, 56, 131, 0.55) !important;
    box-shadow: 0 9px 22px rgba(7, 53, 112, 0.07) !important;
    transform: translateY(-1px) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_radio input[type="radio"]:focus-visible + label {
    outline: 3px solid rgba(242, 56, 131, 0.18) !important;
    outline-offset: 3px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_radio input[type="radio"]:checked + label {
    background: var(--mh-reg-blush) !important;
    border-color: var(--mh-reg-raspberry) !important;
    box-shadow: 0 0 0 2px rgba(242, 56, 131, 0.08), 0 9px 22px rgba(7, 53, 112, 0.06) !important;
    color: #A9235C !important;
}

/* Plan cards — move the visible card onto the full choice wrapper so the radio indicator sits inside the card just like the billing cards. */
body.mh-advertising-registration-page .gform_wrapper .gfield:not(.gfield--type-product) .gfield_radio .gchoice {
    min-height: 92px !important;
    background: #FFFFFF !important;
    border: 1px solid var(--mh-reg-line) !important;
    border-radius: 16px !important;
    box-shadow: 0 5px 16px rgba(7, 53, 112, 0.035) !important;
    overflow: hidden !important;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield:not(.gfield--type-product) .gfield_radio .gchoice:hover {
    border-color: rgba(242, 56, 131, 0.55) !important;
    box-shadow: 0 9px 22px rgba(7, 53, 112, 0.07) !important;
    transform: translateY(-1px) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield:not(.gfield--type-product) .gfield_radio .gchoice:has(input[type="radio"]:checked) {
    background: var(--mh-reg-blush) !important;
    border-color: var(--mh-reg-raspberry) !important;
    box-shadow: 0 0 0 2px rgba(242, 56, 131, 0.08), 0 9px 22px rgba(7, 53, 112, 0.06) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield:not(.gfield--type-product) .gfield_radio .gchoice label {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: none !important;
    inline-size: auto !important;
    max-inline-size: none !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 20px 54px 20px 22px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--mh-reg-navy) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: none !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield:not(.gfield--type-product) .gfield_radio .gchoice label:hover {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield:not(.gfield--type-product) .gfield_radio input[type="radio"]:checked + label {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #A9235C !important;
}

/* Billing Product cards — two true half-width cards across the full available row. */
body.mh-advertising-registration-page .gform_wrapper .gfield--type-product,
body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .ginput_container,
body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .ginput_container_product,
body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio {
    width: 100% !important;
    max-width: none !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

/*
 * Gravity Forms applies extra sizing to Product choice labels. Build the visual
 * card on the full grid item instead, then stretch the clickable label over it.
 * This keeps Monthly/Annual balanced and places the radio indicator inside the card.
 */
body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice {
    min-height: 148px !important;
    background: #FFFFFF !important;
    border: 1px solid var(--mh-reg-line) !important;
    border-radius: 16px !important;
    box-shadow: 0 5px 16px rgba(7, 53, 112, 0.035) !important;
    overflow: hidden !important;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:hover {
    border-color: rgba(242, 56, 131, 0.55) !important;
    box-shadow: 0 9px 22px rgba(7, 53, 112, 0.07) !important;
    transform: translateY(-1px) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:has(input[type="radio"]:checked) {
    background: var(--mh-reg-blush) !important;
    border-color: var(--mh-reg-raspberry) !important;
    box-shadow: 0 0 0 2px rgba(242, 56, 131, 0.08), 0 9px 22px rgba(7, 53, 112, 0.06) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice label {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: none !important;
    inline-size: auto !important;
    max-inline-size: none !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 26px 54px 48px 24px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--mh-reg-navy) !important;
    font-size: 19px !important;
    line-height: 1.3 !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice label:hover {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Monthly supporting copy. */
body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:nth-child(1) label::after {
    content: "Keep it flexible month to month.";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 18px;
    color: var(--mh-reg-muted);
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.4;
}

/*
 * Annual is recommended, not pre-selected. The badge supplies the
 * recommendation signal while the neutral card waits for a real click.
 */
body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:nth-child(2) {
    background: #FFFCFD !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:nth-child(2) label {
    padding-top: 44px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:nth-child(2)::after {
    content: "Best value";
    position: absolute;
    top: 14px;
    left: 16px;
    z-index: 3;
    padding: 6px 10px;
    background: var(--mh-reg-raspberry);
    border-radius: 999px;
    color: #FFFFFF;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .02em;
    text-transform: uppercase;
    pointer-events: none;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:nth-child(2) label::after {
    content: "Go annual. Get more than 5 months on us.";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 18px;
    color: #A9235C;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.4;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio input[type="radio"]:checked + label {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #A9235C !important;
}

/* =========================================================
   AMOUNT DUE TODAY
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .gfield--type-total {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 17px 19px !important;
    background: #F8FAFD !important;
    border: 1px solid rgba(7, 53, 112, 0.11) !important;
    border-radius: 14px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-total .gfield_label {
    margin: 0 !important;
    font-size: 14px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-total .ginput_container_total {
    margin: 0 !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-total .ginput_total {
    width: auto !important;
    min-width: 110px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--mh-reg-raspberry) !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-align: right !important;
}

/* =========================================================
   CANONICAL ADVERTISING POLICY — compact form presentation
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .mh-registration-advertising-policy {
    max-height: 390px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
    padding: 20px 21px !important;
    background: var(--mh-reg-soft) !important;
    border: 1px solid rgba(7, 53, 112, 0.13) !important;
    border-radius: 16px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.8) !important;
    color: var(--mh-reg-text) !important;
    scrollbar-color: rgba(7, 53, 112, 0.28) transparent;
    scrollbar-width: thin;
}

body.mh-advertising-registration-page .gform_wrapper .mh-registration-advertising-policy:focus {
    outline: 3px solid rgba(242, 56, 131, 0.13) !important;
    outline-offset: 3px !important;
}

body.mh-advertising-registration-page .gform_wrapper .mh-registration-advertising-policy::-webkit-scrollbar {
    width: 9px;
}

body.mh-advertising-registration-page .gform_wrapper .mh-registration-advertising-policy::-webkit-scrollbar-thumb {
    background: rgba(7, 53, 112, 0.24);
    border: 2px solid var(--mh-reg-soft);
    border-radius: 999px;
}

body.mh-advertising-registration-page .gform_wrapper .mh-registration-advertising-policy::-webkit-scrollbar-track {
    background: transparent;
}

/* Flatten the full public-policy card system only inside the registration box. */
body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy,
body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy-intro,
body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy-section {
    width: 100% !important;
    max-width: none !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy-intro,
body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy-section {
    margin: 0 0 18px !important;
    padding: 0 0 18px !important;
    border-bottom: 1px solid rgba(7, 53, 112, 0.10) !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy-section:last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy-section::before {
    content: none !important;
    display: none !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy h2,
body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-public-policy-section-heading {
    margin: 0 0 12px !important;
    color: var(--mh-reg-navy) !important;
    font-size: 19px !important;
    line-height: 1.25 !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy h3,
body.mh-advertising-registration-page .mh-registration-advertising-policy h4 {
    margin: 20px 0 7px !important;
    color: var(--mh-reg-navy) !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy p,
body.mh-advertising-registration-page .mh-registration-advertising-policy li {
    color: #4B586A !important;
    font-size: 12.5px !important;
    line-height: 1.58 !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy p {
    margin: 0 0 10px !important;
}

body.mh-advertising-registration-page .mh-registration-advertising-policy ul,
body.mh-advertising-registration-page .mh-registration-advertising-policy ol {
    margin: 0 0 12px !important;
    padding-left: 1.25em !important;
}

/* Keep policy question dividers compact inside the scroll box. */
body.mh-advertising-registration-page .mh-registration-advertising-policy .mamahood-advertising-policy-question {
    margin-top: 16px !important;
    padding-top: 16px !important;
}

/* =========================================================
   AGREEMENT CHECKBOX
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .gfield--type-checkbox {
    padding: 18px 19px !important;
    background: var(--mh-reg-blush) !important;
    border: 1px solid rgba(242, 56, 131, 0.24) !important;
    border-radius: 15px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield--type-checkbox .gfield_label {
    margin-bottom: 10px !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_checkbox .gchoice {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: start !important;
    margin: 0 !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_checkbox input[type="checkbox"] {
    width: 19px !important;
    height: 19px !important;
    margin: 2px 0 0 !important;
    accent-color: var(--mh-reg-raspberry) !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_checkbox label {
    max-width: none !important;
    margin: 0 !important;
    color: var(--mh-reg-text) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
}

/* =========================================================
   SUBMIT
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .gform_footer,
body.mh-advertising-registration-page .gform_wrapper .gform_page_footer {
    display: flex !important;
    justify-content: center !important;
    margin: 30px 0 0 !important;
    padding: 28px 0 0 !important;
    border-top: 1px solid rgba(7, 53, 112, 0.10) !important;
}

body.mh-advertising-registration-page .gform_wrapper input[type="submit"].gform_button,
body.mh-advertising-registration-page .gform_wrapper button.gform_button,
body.mh-advertising-registration-page .gform_wrapper .gform_next_button {
    width: auto !important;
    min-width: 280px !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 14px 28px !important;
    background: var(--mh-reg-raspberry) !important;
    border: 1px solid var(--mh-reg-raspberry) !important;
    border-radius: 10px !important;
    box-shadow: 0 9px 22px rgba(242, 56, 131, 0.19) !important;
    color: #FFFFFF !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: background .16s ease, border-color .16s ease, transform .16s ease, box-shadow .16s ease !important;
}

body.mh-advertising-registration-page .gform_wrapper input[type="submit"].gform_button:hover,
body.mh-advertising-registration-page .gform_wrapper button.gform_button:hover,
body.mh-advertising-registration-page .gform_wrapper .gform_next_button:hover {
    background: var(--mh-reg-raspberry-dark) !important;
    border-color: var(--mh-reg-raspberry-dark) !important;
    box-shadow: 0 12px 26px rgba(242, 56, 131, 0.23) !important;
    transform: translateY(-1px) !important;
}

body.mh-advertising-registration-page .gform_wrapper input[type="submit"].gform_button:focus-visible,
body.mh-advertising-registration-page .gform_wrapper button.gform_button:focus-visible {
    outline: 3px solid rgba(242, 56, 131, 0.20) !important;
    outline-offset: 3px !important;
}

/* =========================================================
   VALIDATION
   ========================================================= */

body.mh-advertising-registration-page .gform_wrapper .gform_validation_errors {
    margin: 0 0 24px !important;
    padding: 16px 18px !important;
    background: #FFF8FA !important;
    border: 1px solid rgba(201, 40, 88, 0.25) !important;
    border-radius: 14px !important;
    box-shadow: none !important;
}

body.mh-advertising-registration-page .gform_wrapper .gfield_error input,
body.mh-advertising-registration-page .gform_wrapper .gfield_error select,
body.mh-advertising-registration-page .gform_wrapper .gfield_error textarea {
    border-color: #C92858 !important;
}

body.mh-advertising-registration-page .gform_wrapper .validation_message,
body.mh-advertising-registration-page .gform_wrapper .gfield_validation_message {
    color: #B5224C !important;
    font-size: 12px !important;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 1023px) {

    body.mh-advertising-registration-page .gform_wrapper form {
        padding: 32px 30px 36px !important;
        border-radius: 20px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice {
        min-height: 150px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice label {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    body.mh-advertising-registration-page .gform_wrapper {
        margin-bottom: 42px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper form {
        padding: 24px 18px 28px !important;
        border-radius: 18px !important;
        box-shadow: 0 8px 24px rgba(7, 53, 112, 0.05) !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gform_fields {
        row-gap: 19px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gsection {
        padding-top: 28px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gsection_title {
        font-size: 25px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield_radio {
        grid-template-columns: 1fr !important;
        gap: 11px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield_radio .gchoice label {
        min-height: 74px !important;
        padding: 17px 50px 17px 16px !important;
        font-size: 15px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield_radio .gchoice::before {
        top: 14px;
        right: 14px;
        width: 19px;
        height: 19px;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice {
        min-height: 126px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice label {
        padding: 20px 50px 44px 16px !important;
        font-size: 17px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-product .gfield_radio .gchoice:nth-child(2) label {
        padding-top: 39px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-total {
        grid-template-columns: 1fr auto !important;
        padding: 15px 16px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-total .ginput_total {
        min-width: 92px !important;
        font-size: 21px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .mh-registration-advertising-policy {
        max-height: 340px !important;
        padding: 17px 16px !important;
        border-radius: 14px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gfield--type-checkbox {
        padding: 16px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper .gform_footer,
    body.mh-advertising-registration-page .gform_wrapper .gform_page_footer {
        padding-top: 24px !important;
    }

    body.mh-advertising-registration-page .gform_wrapper input[type="submit"].gform_button,
    body.mh-advertising-registration-page .gform_wrapper button.gform_button,
    body.mh-advertising-registration-page .gform_wrapper .gform_next_button {
        width: 100% !important;
        min-width: 0 !important;
    }

}
