.partner-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(4.5rem, 9vw, 8rem) 1.5rem;
    background:
        radial-gradient(circle at 78% 18%, rgba(126, 23, 30, .28), transparent 28rem),
        linear-gradient(135deg, rgba(10,10,10,.98), rgba(25,17,17,.96));
}

.partner-hero::after {
    content: "";
    position: absolute;
    inset: auto -8% -55% auto;
    width: 32rem;
    height: 32rem;
    border: 1px solid rgba(214, 192, 155, .16);
    border-radius: 50%;
    box-shadow: 0 0 0 3rem rgba(214,192,155,.025), 0 0 0 6rem rgba(214,192,155,.02);
}

.partner-hero-inner,
.partner-content > section {
    width: min(1180px, 100%);
    margin-inline: auto;
}

.partner-hero-inner { position: relative; z-index: 1; text-align: center; }
.partner-hero h1 { max-width: 850px; margin: .25rem auto 1rem; }
.partner-hero p:not(.section-kicker) { max-width: 760px; margin-inline: auto; font-size: clamp(1.05rem, 2vw, 1.3rem); line-height: 1.65; }
.partner-hero-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 1.35rem; align-items: center; margin-top: 2rem; }
.partner-text-link { font-weight: 700; text-decoration: none; }

.partner-content { padding-bottom: 5rem; }
.partner-content > section { padding: clamp(3.5rem, 7vw, 6rem) 1.25rem; }
.partner-content h2 { margin: .25rem 0 .8rem; font-size: clamp(2rem, 4vw, 3.25rem); }
.partner-section-heading { max-width: 760px; margin-bottom: 2.2rem; }
.partner-section-heading > p:last-child,
.partner-intro > p:last-of-type { max-width: 800px; line-height: 1.7; }

.partner-benefits {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 2.4rem;
}

.partner-benefits article,
.package-card,
.partner-form-panel {
    border: 1px solid rgba(128, 128, 128, .24);
    border-radius: 18px;
    background: rgba(255,255,255,.035);
    box-shadow: 0 18px 50px rgba(0,0,0,.12);
}

.partner-benefits article { padding: 1.4rem; }
.partner-benefits article > span { display: inline-block; font-size: .82rem; font-weight: 800; letter-spacing: .12em; opacity: .55; }
.partner-benefits h3 { margin: .7rem 0 .45rem; }
.partner-benefits p { margin: 0; line-height: 1.55; }

.partner-packages { border-block: 1px solid rgba(128,128,128,.16); }
.package-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; align-items: stretch; }
.package-card { position: relative; padding: 1.7rem; display: flex; flex-direction: column; }
.package-featured { border-color: rgba(139, 31, 38, .78); transform: translateY(-.35rem); }
.package-featured::before { content: "POPULAR"; position: absolute; top: -12px; right: 18px; padding: .3rem .65rem; border-radius: 999px; background: #7b1e26; color: #fff; font-size: .68rem; font-weight: 900; letter-spacing: .12em; }
.package-label { margin: 0; text-transform: uppercase; letter-spacing: .1em; font-size: .8rem; font-weight: 800; opacity: .7; }
.package-card h3 { margin: .55rem 0; font-size: 2.4rem; }
.package-card h3 small { font-size: .9rem; font-weight: 600; opacity: .7; }
.package-summary { min-height: 3rem; line-height: 1.55; }
.package-card ul { padding-left: 1.15rem; line-height: 1.75; margin-bottom: 1.5rem; }
.package-button { margin-top: auto; text-align: center; }
.package-note { margin: 1.5rem 0 0; text-align: center; }

.partner-how ol { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.1rem; }
.partner-how li { display: flex; gap: .9rem; align-items: flex-start; }
.partner-how li > span { width: 2.45rem; height: 2.45rem; flex: 0 0 2.45rem; border: 1px solid rgba(139,31,38,.6); border-radius: 50%; display: grid; place-items: center; font-weight: 900; }
.partner-how h3 { margin: .1rem 0 .4rem; }
.partner-how p { margin: 0; line-height: 1.55; }

.partner-faq { max-width: 980px !important; }
.partner-faq details { border-top: 1px solid rgba(128,128,128,.24); padding: 1.1rem 0; }
.partner-faq details:last-child { border-bottom: 1px solid rgba(128,128,128,.24); }
.partner-faq summary { cursor: pointer; font-size: 1.05rem; font-weight: 800; }
.partner-faq details p { max-width: 800px; margin-bottom: .2rem; line-height: 1.65; }

.partner-form-section { display: grid; grid-template-columns: minmax(0,.75fr) minmax(420px,1.25fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.partner-form-copy { position: sticky; top: 2rem; }
.partner-form-help { margin-top: 1.5rem; font-weight: 800; letter-spacing: .04em; }
.partner-form-panel { padding: clamp(1.25rem, 3vw, 2rem); }
.partner-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.partner-form-grid label { display: flex; flex-direction: column; gap: .45rem; font-weight: 700; }
.partner-form-grid .full-field { grid-column: 1 / -1; }
.partner-form-grid input,
.partner-form-grid select,
.partner-form-grid textarea { width: 100%; box-sizing: border-box; }
.optional { font-weight: 400; opacity: .65; }

.package-choice { margin: .5rem 0 0; padding: 1rem; border: 1px solid rgba(128,128,128,.25); border-radius: 14px; }
.package-choice legend { padding-inline: .35rem; font-weight: 800; }
.package-choice label { display: flex; flex-direction: row; align-items: center; gap: .75rem; padding: .7rem .5rem; border-radius: 10px; cursor: pointer; }
.package-choice label:hover { background: rgba(128,128,128,.08); }
.package-choice input { width: auto; margin: 0; }
.package-choice span { display: flex; justify-content: space-between; width: 100%; gap: 1rem; }
.package-choice small { opacity: .7; }
.partner-submit { margin-top: 1.2rem; width: 100%; }
.partner-privacy { text-align: center; font-size: .86rem; opacity: .65; margin-bottom: 0; }
.partner-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.partner-success { text-align: center; padding: 2rem .5rem; }
.partner-success h3 { font-size: 1.8rem; margin-top: 0; }
.partner-success p { max-width: 520px; margin: 0 auto 1.5rem; line-height: 1.65; }

@media (max-width: 900px) {
    .partner-benefits,
    .partner-how ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .package-grid { grid-template-columns: 1fr; }
    .package-featured { transform: none; }
    .partner-form-section { grid-template-columns: 1fr; }
    .partner-form-copy { position: static; }
}

@media (max-width: 620px) {
    .partner-benefits,
    .partner-how ol,
    .partner-form-grid { grid-template-columns: 1fr; }
    .partner-form-grid .full-field { grid-column: auto; }
    .partner-hero-actions .button { width: 100%; text-align: center; }
    .package-choice span { flex-direction: column; gap: .1rem; }
}


/* Founding Partner launch offer */
.founding-offer-banner {
    width: min(760px, 100%);
    margin: 1.6rem auto 0;
    padding: 1rem 1.25rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: baseline;
    gap: .45rem 1rem;
    border: 1px solid rgba(214, 192, 155, .62);
    border-radius: 14px;
    background: rgba(123, 30, 38, .22);
    box-shadow: 0 14px 35px rgba(0,0,0,.18);
    text-align: center;
}
.founding-offer-banner strong { width: 100%; font-size: 1.12rem; letter-spacing: .035em; }
.founding-offer-banner span { font-size: .98rem; }
.founding-offer-banner small { width: 100%; opacity: .72; }
.founding-annual { margin: -.35rem 0 .15rem; font-size: 1.08rem; }
.founding-regular { margin: 0 0 .65rem; font-size: .88rem; opacity: .68; }
.founding-deadline-note {
    max-width: 820px;
    margin: 1.6rem auto 0;
    padding: .9rem 1.1rem;
    border: 1px solid rgba(214,192,155,.35);
    border-radius: 12px;
    text-align: center;
    background: rgba(214,192,155,.055);
    line-height: 1.55;
}
.package-featured::before { content: "FOUNDING PRICE"; }

@media (max-width: 620px) {
    .founding-offer-banner { align-items: center; flex-direction: column; gap: .25rem; }
}
