/* Shared site typography, header and footer; portal behaviour remains unchanged. */
[hidden]{display:none!important}
.partner-utility{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:24px;font-size:13px;color:var(--ink-2)}
.partner-login{color:var(--red-2);font-weight:700;white-space:nowrap}
#partner-root{min-height:60vh}
#partner-root .pp{padding:28px var(--gutter) 16px;background:var(--bg);color:var(--ink);font-family:var(--font-body);min-height:0}
#partner-root .pp-wrap{max-width:calc(var(--maxw) - 2 * var(--gutter))}
#partner-root .pp-head,#partner-root .pp-footer{display:none}
#partner-root h1,#partner-root h2,#partner-root h3{font-family:var(--font-head);font-weight:800;letter-spacing:-.035em}
#partner-root .pp-landing h1{font-size:clamp(36px,4.4vw,64px);line-height:1.12;letter-spacing:-.045em;color:var(--ink)}
#partner-root .pp-landing h1 em{color:var(--red-2)}
#partner-root .pp-section h2{font-size:clamp(26px,3vw,38px);line-height:1.2}
#partner-root .pp-section{scroll-margin-top:calc(var(--header-h) + 24px)}
#partner-root .pp-intro{grid-template-columns:1.25fr 1fr;min-height:470px;gap:24px}
#partner-root .pp-intro-copy>p{color:var(--ink-2);font-size:17px}
#partner-root .pp-art{min-height:400px;background:none}
#partner-root .pp-art img{width:100%;max-width:440px}
#partner-root .pp-art-mark{display:none}
#partner-root .pp-eyebrow{color:var(--red-2);font-family:var(--font-head);font-weight:700;letter-spacing:.1em}
#partner-root .pp button{font-family:var(--font-body);border-radius:14px;font-size:15px;padding:14px 22px;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
#partner-root .pp .pp-primary{background:linear-gradient(180deg,#cf1113,#a80a0c);border-color:transparent;box-shadow:var(--sh-btn);color:#fff;font-weight:700}
#partner-root .pp .pp-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--sh-btn-hover)}
#partner-root .pp input,#partner-root .pp select,#partner-root .pp textarea{border-radius:12px;border-color:var(--line-2);padding:13px 14px;font-family:var(--font-body)}
#partner-root .pp input:focus,#partner-root .pp textarea:focus,#partner-root .pp select:focus{outline-color:var(--red-2)}
#partner-root .pp .pp-check input{padding:0;flex:0 0 18px;width:18px;height:18px;accent-color:var(--red-2)}
#partner-root .pp-band{background:#2a2b2f;border-radius:var(--r);margin-bottom:72px}
#partner-root .pp-product,#partner-root .pp-level,#partner-root .pp-calculator,#partner-root .pp-value>div{border-radius:var(--r);border-color:var(--line);box-shadow:var(--sh-card)}
#partner-root .pp-product i{color:var(--red-2);background:var(--red-soft)}
#partner-root .pp-product a,#partner-root .pp-result strong,#partner-root .pp-step b{color:var(--red-2)}
#partner-root .pp-level.featured{background:linear-gradient(160deg,#cf1113,#a80a0c);border-color:var(--red)}
#partner-root .pp-join{background:#2a2b2f;border-radius:var(--r-lg)}
#partner-root .pp-join h2{color:#fff}
.partner-offers{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;padding-block:16px}
.partner-offers a{text-decoration:underline}
.hdr a:focus-visible,.footer a:focus-visible,.burger:focus-visible{outline:3px solid var(--red);outline-offset:4px}
@media(max-width:900px){#partner-root .pp-products{grid-template-columns:repeat(2,minmax(0,1fr))}#partner-root .pp-intro{grid-template-columns:1fr 1fr}#partner-root .pp-art{min-height:300px}#partner-root .pp-join{gap:24px;padding:28px}#partner-root .pp-section-head{align-items:start}}
@media(max-width:650px){#partner-root .pp{padding-top:28px}#partner-root .pp-intro{display:flex;min-height:0}#partner-root .pp-art{height:260px;min-height:260px;margin:0}#partner-root .pp-art img{width:280px;max-height:260px;object-fit:contain}#partner-root .pp-landing h1{font-size:clamp(32px,8.7vw,43px)}#partner-root .pp-band{grid-template-columns:1fr;margin:20px 0 48px}#partner-root .pp-band>div{border-right:0;border-bottom:1px solid #48484b;padding:18px 22px}#partner-root .pp-band>div:last-child{border-bottom:0}#partner-root .pp-section{margin-bottom:48px}#partner-root .pp-join{padding:22px;grid-template-columns:1fr}#partner-root .pp-result strong{font-size:clamp(25px,7vw,34px)}#partner-root .pp-section-head{display:block}#partner-root .pp-steps{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){#partner-root .pp button{transition:none}}
