/**
 * Asia Cycling Tours — prominent homepage hero CTA buttons.
 * Scoped to the homepage hero so other sitewide buttons remain unchanged.
 */

body.page-template-page-global-cycling-home .gct-hero .gct-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
    margin-top: 30px;
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn {
    position: relative;
    isolation: isolate;
    min-width: 190px;
    min-height: 58px;
    padding: 16px 54px 16px 27px;
    border-width: 1px;
    border-radius: 999px;
    font-size: .92rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: .045em;
    text-transform: uppercase;
    text-decoration: none;
    overflow: hidden;
    transform: translateZ(0);
    transition:
        color .22s ease,
        background-color .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        transform .22s ease;
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn::after {
    position: absolute;
    top: 50%;
    right: 22px;
    display: grid;
    width: 29px;
    height: 29px;
    place-items: center;
    border-radius: 50%;
    content: "→";
    font-size: 1.02rem;
    font-weight: 950;
    line-height: 1;
    transform: translateY(-50%);
    transition: transform .22s ease, background-color .22s ease, color .22s ease;
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn::before {
    position: absolute;
    z-index: -1;
    top: -55%;
    left: -48%;
    width: 42%;
    height: 210%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .48), transparent);
    content: "";
    transform: rotate(18deg);
    transition: left .55s ease;
    pointer-events: none;
}

/* Primary CTA — high-contrast Saffron accent. */
body.page-template-page-global-cycling-home .gct-hero .gct-btn--primary {
    color: #132c1d;
    border-color: rgba(255, 239, 187, .82);
    background: linear-gradient(135deg, #ffd86f 0%, #efb632 48%, #d99511 100%);
    box-shadow:
        0 0 0 5px rgba(255, 255, 255, .10),
        0 17px 38px rgba(7, 27, 15, .38),
        0 7px 16px rgba(171, 106, 5, .28),
        inset 0 1px 0 rgba(255, 255, 255, .68);
    text-shadow: 0 1px 0 rgba(255, 255, 255, .34);
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn--primary::after {
    color: #fff;
    background: #273469;
    box-shadow: 0 5px 12px rgba(9, 38, 22, .28);
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn--primary:hover,
body.page-template-page-global-cycling-home .gct-hero .gct-btn--primary:focus-visible {
    color: #102719;
    border-color: #fff0b7;
    background: linear-gradient(135deg, #ffe28b 0%, #f5c44b 48%, #e4a31b 100%);
    box-shadow:
        0 0 0 6px rgba(255, 210, 90, .16),
        0 22px 45px rgba(5, 25, 13, .43),
        0 9px 20px rgba(181, 113, 5, .34),
        inset 0 1px 0 rgba(255, 255, 255, .76);
    transform: translateY(-3px) scale(1.015);
}

/* Secondary CTA — bright frosted-glass button. */
body.page-template-page-global-cycling-home .gct-hero .gct-btn--light {
    color: #273469;
    border-color: rgba(255, 255, 255, .92);
    background: linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(244, 249, 245, .84));
    box-shadow:
        0 0 0 1px rgba(23, 61, 40, .08),
        0 15px 34px rgba(4, 22, 11, .31),
        inset 0 1px 0 rgba(255, 255, 255, .92);
    -webkit-backdrop-filter: blur(12px) saturate(1.12);
    backdrop-filter: blur(12px) saturate(1.12);
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn--light::after {
    color: #fff;
    background: #E3A72F;
    box-shadow: 0 5px 12px rgba(57, 109, 26, .25);
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn--light:hover,
body.page-template-page-global-cycling-home .gct-hero .gct-btn--light:focus-visible {
    color: #fff;
    border-color: rgba(255, 255, 255, .98);
    background: linear-gradient(135deg, #23613e 0%, #123d27 100%);
    box-shadow:
        0 0 0 6px rgba(255, 255, 255, .11),
        0 21px 42px rgba(4, 22, 11, .40),
        inset 0 1px 0 rgba(255, 255, 255, .16);
    transform: translateY(-3px) scale(1.015);
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn--light:hover::after,
body.page-template-page-global-cycling-home .gct-hero .gct-btn--light:focus-visible::after {
    color: #273469;
    background: #f2c85d;
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn:hover::before,
body.page-template-page-global-cycling-home .gct-hero .gct-btn:focus-visible::before {
    left: 118%;
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn:hover::after,
body.page-template-page-global-cycling-home .gct-hero .gct-btn:focus-visible::after {
    transform: translate(3px, -50%);
}

body.page-template-page-global-cycling-home .gct-hero .gct-btn:focus-visible {
    outline: 3px solid rgba(255, 214, 111, .58);
    outline-offset: 4px;
}

@media (max-width: 768px) {
    body.page-template-page-global-cycling-home .gct-hero .gct-actions {
        gap: 12px;
        margin-top: 25px;
    }

    body.page-template-page-global-cycling-home .gct-hero .gct-btn {
        min-width: 176px;
        min-height: 56px;
        padding: 15px 50px 15px 22px;
        font-size: .84rem;
    }

    body.page-template-page-global-cycling-home .gct-hero .gct-btn::after {
        right: 18px;
        width: 27px;
        height: 27px;
    }
}

@media (max-width: 520px) {
    body.page-template-page-global-cycling-home .gct-hero .gct-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: min(100%, 390px);
    }

    body.page-template-page-global-cycling-home .gct-hero .gct-btn {
        width: 100%;
        min-width: 0;
        min-height: 57px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.page-template-page-global-cycling-home .gct-hero .gct-btn,
    body.page-template-page-global-cycling-home .gct-hero .gct-btn::before,
    body.page-template-page-global-cycling-home .gct-hero .gct-btn::after {
        transition: none;
    }

    body.page-template-page-global-cycling-home .gct-hero .gct-btn:hover,
    body.page-template-page-global-cycling-home .gct-hero .gct-btn:focus-visible {
        transform: none;
    }
}
