/* ============================================================
   GWW CTA / WEBSITE / PRESS ACTION FINISH V1.23.3.36
   Accessible, visible CTAs across all profile tiers.
   ============================================================ */

.gww-profile-tier .gww336-cta,
body:has(.gww-profile-tier) .gww336-cta {
    box-sizing:border-box !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    min-height:40px !important;
    padding:10px 16px !important;
    border-radius:6px !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:.01em !important;
    text-decoration:none !important;
    text-align:center !important;
    cursor:pointer !important;
    opacity:1 !important;
    visibility:visible !important;
    transition:
        transform .16s ease,
        box-shadow .16s ease,
        background-color .16s ease,
        border-color .16s ease
        !important;
}

.gww-profile-tier .gww336-cta:hover,
body:has(.gww-profile-tier) .gww336-cta:hover {
    transform:translateY(-1px) !important;
    text-decoration:none !important;
}

.gww-profile-tier .gww336-cta:focus-visible,
body:has(.gww-profile-tier) .gww336-cta:focus-visible {
    outline:3px solid #ffd86a !important;
    outline-offset:3px !important;
}

/* ------------------------------------------------------------
   BASIC — strong royal blue primary / visible outline secondary
   ------------------------------------------------------------ */

@supports selector(body:has(.gww-profile-tier.gww-tier-basic)) {

    body:has(.gww-profile-tier.gww-tier-basic)
    .gww336-primary {
        color:#ffffff !important;
        background:#2456d9 !important;
        border:2px solid #2456d9 !important;
        box-shadow:0 7px 16px rgba(36,86,217,.22) !important;
    }

    body:has(.gww-profile-tier.gww-tier-basic)
    .gww336-primary:hover {
        color:#ffffff !important;
        background:#173fae !important;
        border-color:#173fae !important;
        box-shadow:0 10px 20px rgba(23,63,174,.28) !important;
    }

    body:has(.gww-profile-tier.gww-tier-basic)
    .gww336-secondary {
        color:#1947b8 !important;
        background:#ffffff !important;
        border:2px solid #285ed9 !important;
        box-shadow:0 5px 12px rgba(25,71,184,.10) !important;
    }

    body:has(.gww-profile-tier.gww-tier-basic)
    .gww336-secondary:hover {
        color:#ffffff !important;
        background:#2456d9 !important;
        border-color:#2456d9 !important;
    }
}

/* ------------------------------------------------------------
   INTERMEDIATE — deeper blue gradient + stronger separation
   ------------------------------------------------------------ */

@supports selector(body:has(.gww-profile-tier.gww-tier-intermediate)) {

    body:has(.gww-profile-tier.gww-tier-intermediate)
    .gww336-primary {
        color:#ffffff !important;
        background:
            linear-gradient(
                135deg,
                #286de8 0%,
                #174dbf 100%
            ) !important;
        border:2px solid #174dbf !important;
        box-shadow:0 8px 18px rgba(23,77,191,.28) !important;
    }

    body:has(.gww-profile-tier.gww-tier-intermediate)
    .gww336-primary:hover {
        color:#ffffff !important;
        background:
            linear-gradient(
                135deg,
                #174dbf 0%,
                #103c99 100%
            ) !important;
        border-color:#103c99 !important;
        box-shadow:0 11px 22px rgba(16,60,153,.30) !important;
    }

    body:has(.gww-profile-tier.gww-tier-intermediate)
    .gww336-secondary {
        color:#173f78 !important;
        background:#f8fbff !important;
        border:2px solid #4f78ce !important;
        box-shadow:0 6px 14px rgba(23,63,120,.10) !important;
    }

    body:has(.gww-profile-tier.gww-tier-intermediate)
    .gww336-secondary:hover {
        color:#ffffff !important;
        background:#285fca !important;
        border-color:#285fca !important;
    }
}

/* ------------------------------------------------------------
   ADVANCED — gold primary / gold-outline secondary
   ------------------------------------------------------------ */

@supports selector(body:has(.gww-profile-tier.gww-tier-advanced)) {

    body:has(.gww-profile-tier.gww-tier-advanced)
    .gww336-primary {
        color:#071521 !important;
        background:#e2b64f !important;
        border:2px solid #e8c46f !important;
        box-shadow:
            0 8px 18px rgba(0,0,0,.24),
            inset 0 1px 0 rgba(255,255,255,.24)
            !important;
    }

    body:has(.gww-profile-tier.gww-tier-advanced)
    .gww336-primary:hover {
        color:#071521 !important;
        background:#f0ca70 !important;
        border-color:#f6da91 !important;
        box-shadow:
            0 11px 22px rgba(0,0,0,.30),
            0 0 0 1px rgba(226,182,79,.20)
            !important;
    }

    body:has(.gww-profile-tier.gww-tier-advanced)
    .gww336-secondary {
        color:#f8e2ab !important;
        background:#071a2c !important;
        border:2px solid #d8ab4e !important;
        box-shadow:0 7px 16px rgba(0,0,0,.18) !important;
    }

    body:has(.gww-profile-tier.gww-tier-advanced)
    .gww336-secondary:hover {
        color:#071521 !important;
        background:#e2b64f !important;
        border-color:#e2b64f !important;
    }
}

/* ------------------------------------------------------------
   Website CTA — never show a raw member URL
   ------------------------------------------------------------ */

body:has(.gww-profile-tier)
:is(
    .gww-sidebar-card,
    .gww-business-contact-card,
    .gww-hero-copy,
    .gww-business-hero-copy,
    .gww-business-hero-actions
)
.gww336-website-cta {
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}

body:has(.gww-profile-tier)
:is(
    .gww-sidebar-card,
    .gww-business-contact-card
)
.gww336-website-cta {
    width:100% !important;
}

/* ------------------------------------------------------------
   Contact + map sidebars
   ------------------------------------------------------------ */

body:has(.gww-profile-tier)
:is(
    .gww-sidebar-card,
    .gww-business-contact-card
)
:is(
    .gww336-contact-cta,
    .gww336-map-cta
) {
    width:100% !important;
}

/* ------------------------------------------------------------
   Press CTAs — visible button in every tier when URL exists
   ------------------------------------------------------------ */

body:has(.gww-profile-tier)
.gww336-press-card
.gww336-press-cta {
    width:auto !important;
    min-width:190px !important;
    max-width:max-content !important;
    margin-top:12px !important;
    white-space:nowrap !important;
}

body:has(.gww-profile-tier.gww-tier-basic)
.gww336-press-card
.gww336-press-cta,
body:has(.gww-profile-tier.gww-tier-intermediate)
.gww336-press-card
.gww336-press-cta {
    clear:both !important;
}

/* Advanced: keep CTA aligned with the press text region. */
@supports selector(body:has(#gww-advanced-business-root)) {
    body:has(#gww-advanced-business-root)
    .gww336-press-card
    .gww336-press-cta {
        justify-self:start !important;
    }
}

/* ------------------------------------------------------------
   Actual form submit controls should also be obvious
   ------------------------------------------------------------ */

body:has(.gww-profile-tier)
:is(
    .gww-contact-form,
    .gww-business-bottom-contact,
    form
)
:is(
    button[type="submit"],
    input[type="submit"]
).gww336-cta {
    width:100% !important;
    min-height:44px !important;
}

/* ------------------------------------------------------------
   Disabled controls remain visibly disabled, not mistaken for CTA
   ------------------------------------------------------------ */

body:has(.gww-profile-tier)
.gww336-cta:disabled,
body:has(.gww-profile-tier)
.gww336-cta[aria-disabled="true"] {
    opacity:.52 !important;
    cursor:not-allowed !important;
    transform:none !important;
    box-shadow:none !important;
}

@media(max-width:720px) {
    body:has(.gww-profile-tier)
    .gww336-press-card
    .gww336-press-cta {
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
    }
}
