/* =========================================================
   DONATIONS / PRECIOS
========================================================= */
.donations-shell {
    width: min(1240px, 96%);
    margin: 0 auto;
    padding: 132px 0 72px;
}
.donations-panel {
    width: 100%;
}
/* =========================================================
   HERO
========================================================= */
.donations-hero {
    position: relative;
    overflow: hidden;
    min-height: 360px;
    display: flex;
    align-items: flex-end;
    padding: 54px;
    border: 1px solid
        rgba(167,65,34,.35);
    background:
        linear-gradient(
            125deg,
            rgba(12,8,7,.96),
            rgba(32,10,7,.88)
        ),
        radial-gradient(
            circle at 80% 20%,
            rgba(188,43,18,.28),
            transparent 38%
        );
    box-shadow:
        0 35px 90px rgba(0,0,0,.42);
}
.donations-hero::after {
    content: "";
    position: absolute;
    right: -70px;
    top: -120px;
    width: 420px;
    height: 420px;
    border:
        1px solid
        rgba(230,95,48,.16);
    transform: rotate(45deg);
}
.donations-hero-glow {
    position: absolute;
    inset:
        auto -10% -70% 35%;
    height: 320px;
    background:
        radial-gradient(
            circle,
            rgba(192,42,17,.2),
            transparent 64%
        );
    filter: blur(10px);
}
.donations-hero-content {
    position: relative;
    z-index: 1;
    max-width: 860px;
}
.donations-eyebrow {
    display: inline-flex;
    border-left:
        3px solid #c33b21;
    padding-left: 12px;
    color: #d7a55d;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .22em;
}
.donations-hero h1 {
    margin: 18px 0 12px;
    color: #fff8ef;
    font-family:
        var(--title-font, "Cinzel"), serif;
    font-size:
        clamp(42px, 7vw, 82px);
    line-height: .98;
    letter-spacing: -.045em;
}
.donations-hero p {
    max-width: 760px;
    margin: 0;
    color: #cdbfae;
    font-size: 20px;
    line-height: 1.65;
}
/* =========================================================
   INTRO
========================================================= */
.donations-intro {
    margin-top: 28px;
    padding: 32px 36px;
    border:
        1px solid #30231e;
    background:
        linear-gradient(
            180deg,
            rgba(24,18,16,.95),
            rgba(13,10,9,.96)
        );
}
.donations-intro p {
    margin: 0;
    color: #c9bfb5;
    font-size: 17px;
    line-height: 1.8;
}
/* =========================================================
   LISTA DE PRECIOS
========================================================= */
.price-list {
    display: grid;
    grid-template-columns:
        1fr 1fr;
    gap: 36px;
    margin-top: 22px;
}
.price-col {
    min-width: 0;
}
/* =========================================================
   TÍTULOS
========================================================= */
.price-heading {
    margin: 26px 0 10px;
    padding-bottom: 8px;
    border-bottom:
        1px solid #493126;
    color:
        var(
            --primary-color,
            #e6a65c
        );
    font-size: 20px;
    letter-spacing: .02em;
    text-transform: uppercase;
}
.price-col >
.price-heading:first-child {
    margin-top: 0;
}
.price-feature
.price-heading {
    margin-top: 0;
}
/* =========================================================
   FILAS
========================================================= */
.price-rows {
    list-style: none;
    margin: 0;
    padding: 0;
}
.price-rows li {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 14px;
    padding: 8px 0;
    border-bottom:
        1px dashed
        rgba(255,255,255,.08);
    font-size: 15px;
}
.price-rows li span {
    color: #d9cfc2;
}
.price-rows li b {
    color:
        var(
            --primary-color,
            #e6a65c
        );
    font-weight: 800;
    white-space: nowrap;
}
/* =========================================================
   IMÁGENES
========================================================= */
.price-image {
    display: block;
    max-width: 100%;
    height: auto;
    margin:
        16px auto 6px;
    border-radius: 12px;
}
/* =========================================================
   ELITE SETS
========================================================= */
.price-feature {
    padding: 20px;
    border:
        1px solid #62451f;
    border-radius: 12px;
    background:
        linear-gradient(
            180deg,
            rgba(33,25,13,.6),
            rgba(18,14,9,.6)
        );
}
.price-feature-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}
.price-tag {
    background:
        var(
            --primary-color,
            #c33b21
        );
    color: #fff;
    padding:
        5px 14px;
    border-radius: 20px;
    font-size: 15px;
    white-space: nowrap;
}
.price-note {
    margin:
        6px 0 0;
    color: #b8ada3;
    font-size: 13.5px;
}
/* =========================================================
   RESERVAS
========================================================= */
.price-reservation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 28px;
    padding:
        18px 22px;
    border-radius: 12px;
    background:
        linear-gradient(
            135deg,
            #c89440,
            #916423
        );
}
.price-reservation-label {
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #1a1005;
    background:
        rgba(0,0,0,.15);
    padding:
        6px 14px;
    border-radius: 8px;
    font-size: 13px;
}
.price-reservation a {
    color: #1a1005;
    font-weight: 900;
    font-size: 17px;
    text-decoration: none;
}
.price-reservation a:hover {
    text-decoration: underline;
}
/* =========================================================
   INFORMACIÓN
========================================================= */
.donations-info {
    margin-top: 28px;
    padding: 32px 36px;
    border:
        1px solid #30231e;
    background:
        linear-gradient(
            180deg,
            rgba(24,18,16,.95),
            rgba(13,10,9,.96)
        );
}
.donations-info h2 {
    margin:
        0 0 12px;
    color:
        var(
            --primary-color,
            #e6a65c
        );
    font-family:
        var(--title-font, "Cinzel"), serif;
}
.donations-info p {
    margin: 0;
    color: #b8ada3;
    line-height: 1.7;
}
/* =========================================================
   RESPONSIVE
========================================================= */
@media(max-width:820px) {
    .price-list {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .price-reservation {
        flex-direction: column;
        align-items: flex-start;
    }
}
@media(max-width:900px) {
    .donations-shell {
        padding-top: 108px;
    }
    .donations-hero {
        padding: 34px;
        min-height: 300px;
    }
}
@media(max-width:560px) {
    .donations-shell {
        width: 92%;
    }
    .donations-hero {
        padding: 28px 22px;
    }
    .donations-hero h1 {
        font-size: 45px;
    }
    .donations-hero p {
        font-size: 16px;
    }
    .donations-intro,
    .donations-info {
        padding:
            24px 20px;
    }
}