/* =========================================================
   WEBARTY TEMPLATES — OPTIONAL SETUP SERVICES
   COMPLETE CSS FOR REPLACEMENT
   Buttons aligned with webarty.org Hero
   Version: 2026-08-27 18:15
   ========================================================= */

.wa-tpl-support,
.wa-tpl-support *,
.wa-tpl-support *::before,
.wa-tpl-support *::after {
    box-sizing: border-box;
}

.wa-tpl-support h2,
.wa-tpl-support p,
.wa-tpl-support small {
    margin: 0;
    padding: 0;
}

.wa-tpl-support a,
.wa-tpl-support a:hover,
.wa-tpl-support a:focus,
.wa-tpl-support a:visited {
    text-decoration: none !important;
}

.wa-tpl-support {
    --wa-sp-dark: #17223c;
    --wa-sp-teal: #00a78e;
    --wa-sp-teal-hover: #008f7a;
    --wa-sp-green: #36c88a;

    width: 100%;
    padding: 100px 0 106px;
    background: #f3f7f7;
    font-family: var(--e-global-typography-text-font-family, "Roboto"), Arial, sans-serif;
}

.wa-tpl-support__inner {
    width: min(calc(100% - 128px), 1380px);
    max-width: 1380px;
    margin: 0 auto;
}

.wa-tpl-support__panel {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(360px, .86fr) minmax(0, 1.14fr);
    align-items: center;
    gap: clamp(56px, 6vw, 96px);
    overflow: hidden;
    padding: 58px 58px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 26px;
    color: #ffffff;
    background:
        radial-gradient(circle at 90% 10%, rgba(0, 167, 142, .23) 0%, rgba(0, 167, 142, 0) 36%),
        linear-gradient(125deg, #111b31 0%, #1d2945 52%, #164d57 100%);
    box-shadow: 0 22px 52px rgba(24, 38, 60, .13);
}

.wa-tpl-support__panel::before,
.wa-tpl-support__panel::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
}

.wa-tpl-support__panel::before {
    top: -330px;
    right: -230px;
    width: 620px;
    height: 620px;
    border: 1px solid rgba(255, 255, 255, .06);
}

.wa-tpl-support__panel::after {
    bottom: -330px;
    left: -250px;
    width: 560px;
    height: 560px;
    border: 1px solid rgba(54, 200, 138, .09);
}

.wa-tpl-support__copy {
    min-width: 0;
    max-width: 590px;
}

.wa-tpl-support__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    color: #8de1ca;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: .085em;
    text-transform: uppercase;
}

.wa-tpl-support__eyebrow-line {
    display: block;
    flex: 0 0 33px;
    width: 33px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--wa-sp-teal), var(--wa-sp-green));
}

.wa-tpl-support__title {
    max-width: 650px;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: clamp(39px, 3.45vw, 53px) !important;
    font-weight: 800 !important;
    line-height: 1.08 !important;
    letter-spacing: -.043em !important;
    text-transform: none !important;
}

.wa-tpl-support__intro {
    max-width: 570px;
    margin-top: 23px !important;
    color: rgba(255, 255, 255, .72) !important;
    font-size: 16.5px;
    font-weight: 400;
    line-height: 1.7;
}

.wa-tpl-support__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    margin-top: 28px;
}

/* Same geometry as the two webarty.org Hero buttons. */
.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button,
.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button:visited {
    display: inline-flex !important;
    min-width: 0 !important;
    min-height: 58px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 15px 23px !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .035em !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    transform: none !important;
    transition:
        color .2s ease,
        border-color .2s ease,
        background-color .2s ease,
        box-shadow .2s ease !important;
}

.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--primary,
.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--primary:visited {
    border: 1px solid var(--wa-sp-teal) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: var(--wa-sp-teal) !important;
    box-shadow: 0 12px 26px rgba(0, 167, 142, .20) !important;
}

.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--primary:hover,
.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--primary:focus-visible {
    border-color: var(--wa-sp-teal-hover) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: var(--wa-sp-teal-hover) !important;
}

/* ASK A QUESTION — exact visual treatment of "View our work" in webarty.org Hero. */
.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--secondary,
.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--secondary:visited {
    border: 1px solid rgba(255, 255, 255, .26) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: rgba(255, 255, 255, .055) !important;
    box-shadow: none !important;
}

.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--secondary:hover,
.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button--secondary:focus-visible {
    border-color: rgba(111, 225, 205, .55) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: rgba(0, 167, 142, .11) !important;
}

.wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button:focus-visible {
    outline: 3px solid rgba(101, 218, 197, .28) !important;
    outline-offset: 4px;
}

.wa-tpl-support__services {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 14px;
}

.wa-tpl-support__service {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    align-items: start;
    gap: 15px;
    min-width: 0;
    padding: 21px 20px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 18px;
    background: rgba(255, 255, 255, .065);
    box-shadow: none;
    transform: none !important;
    transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.wa-tpl-support__service:hover,
.wa-tpl-support__service:focus-within {
    border-color: rgba(85, 220, 202, .36);
    background: rgba(255, 255, 255, .105);
    box-shadow: 0 14px 32px rgba(5, 14, 31, .10);
    transform: none !important;
}

.wa-tpl-support__service > span {
    display: inline-flex;
    width: 50px;
    height: 50px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(85, 220, 202, .24);
    border-radius: 14px;
    color: #75e0ce;
    background: rgba(0, 167, 142, .13);
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    transition: color .2s ease, border-color .2s ease, background-color .2s ease;
}

.wa-tpl-support__service:hover > span,
.wa-tpl-support__service:focus-within > span {
    border-color: var(--wa-sp-teal);
    color: #ffffff;
    background: var(--wa-sp-teal);
}

.wa-tpl-support__service strong {
    display: block;
    color: #ffffff;
    font-size: 16.5px;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.015em;
}

.wa-tpl-support__service small {
    display: block;
    margin-top: 6px;
    color: rgba(255, 255, 255, .66);
    font-size: 13.25px;
    font-weight: 400;
    line-height: 1.58;
}

@media (min-width: 1201px) and (max-width: 1320px) {
    .wa-tpl-support {
        padding: 88px 0 94px;
    }
}

@media (max-width: 1200px) {
    .wa-tpl-support {
        padding: 88px 0 94px;
    }

    .wa-tpl-support__inner {
        width: min(calc(100% - 56px), 1380px);
    }

    .wa-tpl-support__panel {
        gap: 46px;
        padding: 50px 46px;
    }
}

@media (max-width: 1080px) {
    .wa-tpl-support__inner {
        width: min(calc(100% - 48px), 1380px);
    }

    .wa-tpl-support__panel {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .wa-tpl-support {
        padding: 72px 0 78px;
    }

    .wa-tpl-support__inner {
        width: calc(100% - 48px);
    }

    .wa-tpl-support__panel {
        padding: 38px 24px;
        border-radius: 22px;
    }

    .wa-tpl-support__eyebrow {
        gap: 10px;
        margin-bottom: 16px;
        font-size: 11px;
    }

    .wa-tpl-support__eyebrow-line {
        flex-basis: 27px;
        width: 27px;
        height: 2px;
    }

    .wa-tpl-support__title {
        font-size: clamp(31px, 8.1vw, 38px) !important;
        line-height: 1.09 !important;
    }

    .wa-tpl-support__intro {
        margin-top: 20px !important;
        font-size: 15px;
        line-height: 1.65;
    }

    .wa-tpl-support__actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        margin-top: 24px;
    }

    .wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button,
    .wa-tpl-support .wa-tpl-support__actions > a.wa-tpl-support__button:visited {
        width: 100% !important;
        min-height: 58px !important;
        padding: 15px 23px !important;
        font-size: 12.5px !important;
    }

    .wa-tpl-support__services {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .wa-tpl-support__service {
        padding: 19px 18px;
    }
}

@media (max-width: 390px) {
    .wa-tpl-support__inner {
        width: calc(100% - 40px);
    }

    .wa-tpl-support__panel {
        padding: 34px 20px;
    }
}

@media (min-width: 1920px) {
    .wa-tpl-support {
        padding: 112px 0 118px;
    }

    .wa-tpl-support__inner {
        width: min(calc(100% - 160px), 1560px);
        max-width: 1560px;
    }

    .wa-tpl-support__panel {
        padding: 64px 66px;
    }

    .wa-tpl-support__title {
        font-size: 54px !important;
    }

    .wa-tpl-support__intro {
        font-size: 17px;
    }

    .wa-tpl-support__service {
        padding: 23px 22px;
    }

    .wa-tpl-support__service strong {
        font-size: 17px;
    }

    .wa-tpl-support__service small {
        font-size: 13.5px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wa-tpl-support *,
    .wa-tpl-support *::before,
    .wa-tpl-support *::after {
        transition: none !important;
        animation: none !important;
    }
}
