/* ==========================================================
   IRCPode — Información y soporte
   ========================================================== */

.page-ircpode-support {
    --is-cyan: #29d9f5;
    --is-green: #7be83f;
    --is-blue: #5c98ff;
    --is-purple: #b97aff;
    --is-yellow: #ffd34f;
    --is-pink: #ff7499;

    --is-text: #f4f8ff;
    --is-muted: #a5b6c8;
    --is-line: rgba(130, 181, 218, .21);

    min-height: 100%;
    overflow-x: hidden;

    color: var(--is-text);

    background:
        radial-gradient(
            circle at 10% 0%,
            rgba(41, 217, 245, .09),
            transparent 32rem
        ),
        radial-gradient(
            circle at 90% 8%,
            rgba(123, 232, 63, .065),
            transparent 30rem
        ),
        linear-gradient(
            180deg,
            #020914,
            #04111c 52%,
            #020914
        );
}

.page-ircpode-support .container {
    width: min(calc(100% - 46px), 1380px);
}

.page-ircpode-support .site-header {
    background: rgba(2, 9, 20, .93);
    backdrop-filter: blur(20px);
}

.is-hero {
    position: relative;
    min-height: 600px;
    overflow: hidden;

    padding: 66px 0 60px;

    border-bottom: 1px solid var(--is-line);

    isolation: isolate;
}

.is-grid-background {
    position: absolute;
    inset: 0;
    z-index: -3;

    background-image:
        linear-gradient(
            rgba(70, 169, 219, .035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(70, 169, 219, .035) 1px,
            transparent 1px
        );

    background-size: 58px 58px;

    opacity: .55;

    mask-image:
        linear-gradient(
            to bottom,
            black,
            transparent 95%
        );
}

.is-orb {
    position: absolute;
    z-index: -2;

    border-radius: 50%;

    filter: blur(65px);
    pointer-events: none;
}

.is-orb-one {
    top: 50px;
    left: -170px;

    width: 470px;
    height: 470px;

    background: rgba(38, 214, 242, .14);

    animation: isOrbOne 13s ease-in-out infinite alternate;
}

.is-orb-two {
    top: 25px;
    right: -150px;

    width: 450px;
    height: 450px;

    background: rgba(111, 230, 60, .10);

    animation: isOrbTwo 15s ease-in-out infinite alternate;
}

.is-hero-layout {
    display: grid;
    grid-template-columns:
        minmax(520px, 1fr)
        minmax(390px, .70fr);

    align-items: center;
    gap: clamp(50px, 7vw, 105px);
}

.is-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;

    margin-bottom: 32px;

    color: #8196ac;
    font-size: .76rem;
}

.is-breadcrumbs a {
    color: #9eb0c4;
}

.is-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 17px;

    color: var(--is-cyan);

    font-size: .74rem;
    font-weight: 850;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.is-eyebrow::before {
    width: 8px;
    height: 8px;

    border-radius: 50%;
    background: var(--is-cyan);

    box-shadow:
        0 0 0 5px rgba(41, 217, 245, .08),
        0 0 18px rgba(41, 217, 245, .58);

    content: "";
}

.is-hero h1 {
    max-width: 850px;
    margin: 0;

    color: transparent;

    background:
        linear-gradient(
            112deg,
            #ffffff,
            #dfeafb 34%,
            #ffffff 50%,
            #a5ef76 67%,
            #ffffff 83%
        );

    background-clip: text;
    -webkit-background-clip: text;
    background-size: 220% auto;

    font-size: clamp(3.3rem, 5.8vw, 5.7rem);
    font-weight: 900;
    line-height: .99;
    letter-spacing: -.058em;

    animation: isTitle 9s ease-in-out infinite;
}

.is-lead {
    max-width: 780px;
    margin: 25px 0 0;

    color: #d0dce9;

    font-size: clamp(1.04rem, 1.45vw, 1.24rem);
    line-height: 1.65;
}

.is-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;

    margin-top: 30px;
}

.is-button {
    display: inline-flex;
    min-height: 51px;

    align-items: center;
    justify-content: center;
    gap: 10px;

    padding: 0 22px;

    border: 1px solid transparent;
    border-radius: 13px;

    font-size: .88rem;
    font-weight: 830;

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.is-button:hover {
    transform: translateY(-3px);
}

.is-button-primary {
    color: #071009;

    background:
        linear-gradient(
            135deg,
            #8ced43,
            #65d638
        );

    box-shadow:
        0 15px 38px rgba(103, 224, 57, .18);
}

.is-button-secondary {
    border-color: rgba(144, 187, 220, .31);

    color: #f1f7ff;
    background: rgba(7, 22, 37, .76);
}

.is-button-secondary:hover {
    border-color: var(--is-cyan);
}

.is-product-card {
    padding: 27px;

    border: 1px solid rgba(42, 208, 237, .29);
    border-radius: 21px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 31, 49, .95),
            rgba(3, 15, 28, .98)
        );

    box-shadow:
        0 33px 82px rgba(0,0,0,.49),
        0 0 39px rgba(40, 211, 239, .07);

    animation: isCardFloat 7s ease-in-out infinite;
}

.is-product-head {
    display: flex;
    align-items: center;
    gap: 17px;

    padding-bottom: 20px;

    border-bottom: 1px solid var(--is-line);
}

.is-product-head img {
    width: 92px;
    height: 92px;

    border-radius: 21px;

    box-shadow:
        0 20px 42px rgba(0,0,0,.46);
}

.is-product-head span,
.is-product-head small {
    display: block;

    color: #8ea3b8;
    font-size: .70rem;
}

.is-product-head strong {
    display: block;

    margin: 3px 0;

    color: #f2f7ff;
    font-size: 1.45rem;
}

.is-product-card ul {
    display: grid;
    gap: 11px;

    margin: 20px 0 0;
    padding: 0;

    list-style: none;
}

.is-product-card li {
    display: flex;
    align-items: center;
    gap: 10px;

    color: #afbfce;
    font-size: .78rem;
}

.is-product-card li::before {
    width: 7px;
    height: 7px;

    flex: 0 0 auto;

    border-radius: 50%;
    background: var(--is-green);

    content: "";
}

.is-section {
    padding: 74px 0;
}

.is-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;

    margin-bottom: 33px;
}

.is-heading h2 {
    max-width: 820px;
    margin: 0;

    color: var(--is-text);

    font-size: clamp(2rem, 3.6vw, 3.5rem);
    line-height: 1.05;
    letter-spacing: -.045em;
}

.is-heading > p {
    max-width: 510px;
    margin: 0;

    color: var(--is-muted);

    font-size: .88rem;
    line-height: 1.62;
    text-align: right;
}

.is-options-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
}

.is-option-card {
    position: relative;

    min-height: 275px;
    padding: 25px;

    border: 1px solid var(--is-line);
    border-radius: 18px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 26, 43, .89),
            rgba(4, 15, 27, .94)
        );

    transition:
        border-color .22s ease,
        box-shadow .22s ease,
        transform .22s ease;
}

.is-option-card:hover {
    border-color: rgba(42, 210, 239, .41);

    box-shadow:
        0 24px 53px rgba(0,0,0,.39),
        0 0 30px rgba(40, 211, 240, .055);

    transform: translateY(-6px);
}

.is-option-number {
    position: absolute;
    top: 21px;
    right: 22px;

    color: rgba(164, 190, 215, .18);

    font-size: 1.3rem;
    font-weight: 900;
}

.is-option-icon {
    display: grid;
    width: 49px;
    height: 49px;

    place-items: center;

    border: 1px solid currentColor;
    border-radius: 14px;

    font-size: .95rem;
    font-weight: 900;
}

.is-cyan { color: var(--is-cyan); }
.is-green { color: var(--is-green); }
.is-blue { color: var(--is-blue); }
.is-purple { color: var(--is-purple); }
.is-yellow { color: var(--is-yellow); }
.is-pink { color: var(--is-pink); }

.is-option-card h3 {
    margin: 19px 0 10px;

    color: var(--is-text);

    font-size: 1.07rem;
}

.is-option-card p {
    margin: 0 0 20px;

    color: var(--is-muted);

    font-size: .79rem;
    line-height: 1.59;
}

.is-option-card a {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    overflow-wrap: anywhere;

    color: var(--is-cyan);

    font-size: .74rem;
    font-weight: 820;
}

.is-before-contact {
    border-block:
        1px solid rgba(131, 179, 216, .12);

    background:
        linear-gradient(
            180deg,
            rgba(5, 19, 32, .55),
            rgba(4, 14, 25, .20)
        );
}

.is-contact-checklist {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 44px;

    padding: 34px;

    border: 1px solid var(--is-line);
    border-radius: 20px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 29, 46, .92),
            rgba(4, 15, 28, .96)
        );
}

.is-contact-checklist h2 {
    margin: 0 0 12px;

    font-size: clamp(1.8rem, 3vw, 3rem);
    line-height: 1.08;
}

.is-contact-checklist p {
    margin: 0;

    color: var(--is-muted);
    line-height: 1.6;
}

.is-contact-checklist ol {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 11px;

    margin: 0;
    padding: 0;

    list-style: none;
}

.is-contact-checklist li {
    display: flex;
    align-items: center;
    gap: 12px;

    padding: 14px;

    border: 1px solid rgba(132, 181, 217, .13);
    border-radius: 12px;

    background: rgba(255,255,255,.022);
}

.is-contact-checklist li > span {
    display: grid;
    width: 34px;
    height: 34px;

    flex: 0 0 auto;
    place-items: center;

    border: 1px solid rgba(42, 211, 240, .28);
    border-radius: 10px;

    color: var(--is-cyan);

    font-size: .70rem;
    font-weight: 850;
}

.is-contact-checklist strong {
    display: block;

    color: #edf4fd;
    font-size: .76rem;
}

.is-contact-checklist small {
    display: block;
    margin-top: 2px;

    color: #8499b0;
    font-size: .65rem;
}

.is-faq-list {
    display: grid;
    gap: 10px;
}

.is-faq details {
    overflow: hidden;

    border: 1px solid var(--is-line);
    border-radius: 15px;

    background: rgba(7, 22, 37, .73);

    transition:
        border-color .20s ease,
        background .20s ease,
        box-shadow .20s ease;
}

.is-faq details:hover,
.is-faq details[open] {
    border-color: rgba(42, 211, 240, .36);

    background: rgba(8, 28, 45, .87);

    box-shadow:
        0 18px 40px rgba(0,0,0,.24);
}

.is-faq summary {
    display: flex;
    min-height: 70px;

    align-items: center;
    justify-content: space-between;
    gap: 20px;

    padding: 16px 19px;

    color: #eef5ff;

    font-size: .84rem;
    font-weight: 790;
    line-height: 1.4;

    cursor: pointer;
    list-style: none;
}

.is-faq summary::-webkit-details-marker {
    display: none;
}

.is-faq summary span {
    display: grid;
    width: 31px;
    height: 31px;

    flex: 0 0 auto;
    place-items: center;

    border: 1px solid rgba(42, 211, 240, .28);
    border-radius: 50%;

    color: var(--is-cyan);

    transition:
        transform .18s ease,
        background .18s ease;
}

.is-faq details[open] summary span {
    color: #061019;
    background: var(--is-cyan);
    transform: rotate(45deg);
}

.is-faq details > div {
    padding: 0 19px 20px;

    color: var(--is-muted);

    font-size: .79rem;
    line-height: 1.65;
}

.is-faq details p {
    margin: 0;
}

.is-faq details a {
    display: inline-block;
    margin-top: 10px;

    color: var(--is-cyan);
    font-weight: 800;
}

.is-final {
    padding-top: 24px;
}

.is-final-panel {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 34px;

    padding: 36px;

    border: 1px solid rgba(45, 201, 233, .31);
    border-radius: 21px;

    background:
        radial-gradient(
            circle at 90% 15%,
            rgba(109, 230, 57, .10),
            transparent 24rem
        ),
        linear-gradient(
            145deg,
            rgba(8, 31, 48, .95),
            rgba(4, 16, 29, .98)
        );

    box-shadow:
        0 28px 70px rgba(0,0,0,.40);
}

.is-final-panel h2 {
    margin: 0 0 10px;

    font-size: clamp(1.85rem, 3vw, 3rem);
}

.is-final-panel p {
    max-width: 720px;
    margin: 0;

    color: var(--is-muted);
    line-height: 1.6;
}

@keyframes isOrbOne {
    from {
        transform: translate3d(-3%, 0, 0) scale(.95);
    }

    to {
        transform: translate3d(5%, 2%, 0) scale(1.06);
    }
}

@keyframes isOrbTwo {
    from {
        transform: translate3d(3%, 1%, 0) scale(.96);
    }

    to {
        transform: translate3d(-5%, 3%, 0) scale(1.05);
    }
}

@keyframes isTitle {
    0%,
    35% {
        background-position: 100% center;
    }

    65%,
    100% {
        background-position: -75% center;
    }
}

@keyframes isCardFloat {
    0%,
    100% {
        translate: 0 0;
    }

    50% {
        translate: 0 -8px;
    }
}

@media (max-width: 1050px) {
    .is-options-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 820px) {
    .page-ircpode-support .container {
        width: min(calc(100% - 28px), 1380px);
    }

    .is-hero {
        min-height: auto;
        padding: 50px 0;
    }

    .is-hero-layout {
        grid-template-columns: 1fr;
    }

    .is-hero h1 {
        font-size: clamp(3rem, 12vw, 4.8rem);
    }

    .is-heading {
        display: block;
    }

    .is-heading > p {
        margin-top: 14px;
        text-align: left;
    }

    .is-contact-checklist {
        grid-template-columns: 1fr;
    }

    .is-final-panel {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .is-options-grid {
        grid-template-columns: 1fr;
    }

    .is-contact-checklist ol {
        grid-template-columns: 1fr;
    }

    .is-hero-actions,
    .is-hero-actions .is-button,
    .is-final-panel .is-button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .page-ircpode-support *,
    .page-ircpode-support *::before,
    .page-ircpode-support *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
    }
}
