.partners-page .site-header nav { gap:24px; }
.partner-hero { background:var(--cream); overflow:hidden; }
.partner-hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:center; padding-block:64px 72px; }
.partner-hero-copy { min-width:0; }
.partner-hero h1 { font-size:clamp(42px,4.35vw,62px); line-height:1.08; letter-spacing:-.035em; font-weight:700; }
.partner-intro { font-size:17px; line-height:1.7; max-width:495px; margin:24px 0 28px; }
.partner-audience { font-size:12px; max-width:380px; margin-top:22px; }
.partner-preview { min-width:0; margin:0; background:#fff; border:1px solid var(--line); border-radius:24px; padding:24px; box-shadow:0 16px 50px #081d3f0a; }
.partner-preview-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.partner-preview-top>span:first-child { display:flex; align-items:center; gap:12px; }
.partner-preview-top img { width:67px; height:auto; }
.partner-preview-top strong { font-size:12px; font-weight:600; padding-left:12px; border-left:1px solid var(--line); }
.partner-example { color:var(--muted); background:#f3f5f8; border-radius:6px; padding:4px 7px; font-size:10px; line-height:1.4; }
.partner-referral-link { display:flex; align-items:center; gap:14px; padding:20px 0; }
.partner-qr { display:grid; place-items:center; width:64px; height:64px; flex:0 0 auto; background:var(--pale); border-radius:14px; color:var(--ink); font-size:38px; }
.partner-referral-link>div { min-width:0; }
.partner-referral-link>div>span { display:block; font-size:8px; letter-spacing:.1em; color:var(--green); font-weight:650; margin-bottom:5px; }
.partner-referral-link strong { display:block; font-size:15px; font-weight:600; line-height:1.35; }
.partner-referral-link p { margin-top:5px; font-size:11px; line-height:1.5; }
.partner-referral-link>.bi { margin-left:auto; font-size:18px; color:var(--green); }
.partner-preview-flow { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.partner-preview-flow li { position:relative; display:flex; align-items:center; gap:12px; padding:16px; border:1px solid var(--line); border-radius:12px; background:white; }
.partner-preview-flow li:not(:last-child)::after { content:""; position:absolute; left:36px; top:100%; height:11px; width:1px; background:#bcd6cf; }
.partner-preview-icon { display:grid; place-items:center; width:38px; height:38px; flex:0 0 auto; background:#f0f5f7; border-radius:10px; color:var(--ink); font-size:21px; }
.partner-preview-flow li:nth-child(2) .partner-preview-icon { background:var(--pale); color:var(--green); }
.partner-preview-flow li>div { min-width:0; }
.partner-preview-flow strong { display:block; font-size:14px; font-weight:600; }
.partner-preview-flow p { margin-top:4px; font-size:11px; line-height:1.5; }
.partner-flow-number { font-size:10px; color:var(--muted); margin-left:auto; align-self:flex-start; }
.partner-preview-footer { display:flex; align-items:center; gap:10px; font-size:11px; line-height:1.6; margin-top:18px; color:var(--muted); }
.partner-preview-footer i { color:var(--green); font-size:18px; }
.partner-section-head { max-width:680px; margin-bottom:36px; }
.partner-section-head>p:last-child:not(.eyebrow) { font-size:17px; line-height:1.65; margin-top:18px; max-width:630px; }
.partner-program-icon { display:grid; place-items:center; width:44px; height:44px; flex:0 0 auto; border-radius:12px; background:var(--pale); font-size:23px; color:var(--green); }
.partner-earnings { border:1px solid var(--line); border-radius:24px; overflow:hidden; background:#fff; }
.partner-earnings-heading { padding:28px 32px; border-bottom:1px solid var(--line); }
.partner-earnings-heading h3 { font-size:25px; font-weight:600; letter-spacing:-.02em; }
.partner-earnings-heading p { font-size:14px; line-height:1.65; margin-top:8px; }
.partner-earnings-heading strong { font-weight:600; color:var(--ink); }
.partner-earnings-grid { display:grid; grid-template-columns:1.15fr 1fr; }
.partner-earnings-inputs { padding:32px; min-width:0; }
.partner-client-group + .partner-client-group { border-top:1px solid var(--line); padding-top:28px; margin-top:24px; }
.partner-client-heading { display:flex; align-items:center; gap:14px; }
.partner-client-heading>div { min-width:0; flex:1; }
.partner-client-heading label { display:block; color:var(--ink); font-size:17px; font-weight:600; line-height:1.4; }
.partner-client-heading p { font-size:12px; line-height:1.5; margin-top:5px; }
.partner-client-rate { display:grid; gap:2px; color:var(--green); font-size:28px; line-height:1.1; font-weight:600; text-align:right; }
.partner-client-rate span { font-size:11px; color:var(--muted); font-weight:500; }
.partner-client-controls { display:flex; align-items:center; gap:22px; margin-top:20px; }
.partner-client-controls input[type=range] { flex:1; min-width:0; height:40px; margin:0; accent-color:var(--green); cursor:pointer; }
.partner-client-controls input[type=number] { width:76px; height:46px; border:1px solid var(--line); border-radius:10px; background:#fff; color:var(--ink); text-align:center; font:600 20px/1.2 Inter,Arial,sans-serif; padding:8px; }
.partner-client-controls input:focus-visible { outline:2px solid var(--green); outline-offset:3px; }
.partner-slider-limits { display:flex; justify-content:space-between; padding-right:98px; color:var(--muted); font-size:11px; }
.partner-earnings-rule { font-size:12px; line-height:1.65; margin-top:24px; }
.partner-earnings-summary { padding:32px; background:var(--pale); border-left:1px solid var(--line); }
.partner-summary-label { color:var(--ink); font-size:15px; font-weight:600; }
.partner-summary-amount { margin-top:12px; color:var(--ink); }
.partner-summary-amount output { display:block; font-size:clamp(42px,4.7vw,64px); font-weight:650; letter-spacing:-.04em; line-height:1.1; font-variant-numeric:tabular-nums; }
.partner-summary-amount>span { display:block; font-size:13px; margin-top:6px; }
.partner-summary-clients { font-size:13px; margin-top:18px; }
.partner-summary-clients output { font-weight:600; color:var(--ink); }
.partner-earnings-breakdown { display:grid; gap:12px; padding-top:20px; margin:20px 0 12px; border-top:1px solid #b9d9ce; }
.partner-earnings-breakdown>div { display:flex; justify-content:space-between; gap:16px; font-size:14px; }
.partner-earnings-breakdown dd { margin:0; font-weight:600; color:var(--ink); font-variant-numeric:tabular-nums; }
.partner-example-result { font-size:11px; line-height:1.65; }
.partner-earnings-summary>.button { width:100%; margin:24px 0 12px; }
.partner-earnings-summary>.button + p { text-align:center; }
.partner-commission-note { max-width:990px; font-size:12px; line-height:1.7; margin-top:20px; }
.partner-process { background:#f7f9fb; }
.partner-process-grid { padding:0; margin:0; list-style:none; display:grid; grid-template-columns:repeat(4,1fr); gap:28px; counter-reset:partner-step; }
.partner-process-grid li { position:relative; counter-increment:partner-step; }
.partner-process-grid li:not(:last-child)::after { content:""; position:absolute; top:24px; left:66px; right:-8px; height:1px; background:var(--line); }
.partner-step-icon { position:relative; display:grid; place-items:center; width:48px; height:48px; border:1px solid var(--line); border-radius:14px; background:#fff; font-size:23px; color:var(--green); margin-bottom:20px; }
.partner-step-icon::after { content:counter(partner-step); position:absolute; top:-6px; right:-6px; display:grid; place-items:center; width:19px; height:19px; background:var(--ink); color:white; border-radius:50%; font:500 10px/1 Inter,Arial,sans-serif; }
.partner-process-grid h3 { font-size:20px; line-height:1.3; letter-spacing:-.02em; font-weight:600; }
.partner-process-grid p { margin-top:12px; font-size:14px; line-height:1.75; }
.partner-contact { background:var(--ink); }
.partner-contact-grid { display:grid; grid-template-columns:1fr 1.05fr; gap:80px; align-items:center; }
.partner-contact-copy { padding:0; }
.partner-contact-copy .eyebrow { color:var(--mint); }
.partner-contact-copy h2 { color:#fff; font-size:clamp(36px,3.6vw,51px); line-height:1.12; }
.partner-contact-copy h2 span { color:var(--mint); }
.partner-contact-copy>p:not(.eyebrow) { color:#d4deeb; }
.partner-contact-benefits { display:grid; gap:16px; margin:28px 0 0; padding:0; list-style:none; color:#fff; }
.partner-contact-benefits li { display:flex; align-items:center; gap:12px; font-size:14px; line-height:1.5; }
.partner-contact-benefits .bi { color:var(--mint); font-size:21px; }
.partner-contact .partner-whatsapp-note { color:#d4deeb; border-top:1px solid #ffffff26; padding-top:24px; max-width:390px; }
.partner-contact .partner-whatsapp-note i,.partner-contact .partner-whatsapp-note strong { color:var(--mint); }
.partner-contact-copy>p:not(.eyebrow) { font-size:16px; line-height:1.7; margin-top:22px; max-width:450px; }
.partner-whatsapp-note { display:flex; align-items:center; gap:14px; font-size:12px; line-height:1.7; margin-top:28px; color:var(--muted); }
.partner-whatsapp-note i { font-size:28px; color:var(--green); }
.partner-whatsapp-note strong { font-weight:600; color:var(--ink); }
.partner-form { background:white; border:1px solid var(--line); border-radius:24px; padding:32px; display:grid; gap:20px; }
.partner-form label { display:grid; gap:8px; font-size:13px; font-weight:600; color:var(--ink); }
.partner-form label .optional { font-size:12px; color:var(--muted); font-weight:400; display:contents; }
.partner-form input:not([type=checkbox]),.partner-form textarea { font:inherit; font-weight:400; font-size:14px; width:100%; min-width:0; border:1px solid var(--line); border-radius:11px; color:var(--ink); background:white; padding:12px 14px; line-height:1.5; }
.partner-form textarea { resize:vertical; }
.partner-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.partner-legal { font-size:11px; }
.partner-legal a { text-decoration:underline; color:var(--green); }
.partner-form>.button { width:100%; gap:12px; }
.partner-form-note { font-size:11px; line-height:1.65; text-align:center; max-width:420px; margin:-8px auto 0; }
.partner-form-status { font-size:12px; }
.partner-form-status[hidden] { display:none; }
.partners-page #preguntas { padding-bottom:90px; }
.partner-form textarea:focus-visible { outline:3px solid var(--green); outline-offset:4px; }
@media(max-width:1100px) {
 .partner-hero-grid { gap:30px; }
 .partner-preview { padding:20px; }
 .partner-preview-top { align-items:flex-start; }
 .partner-preview-top>span:first-child { flex-direction:column; align-items:flex-start; gap:5px; }
 .partner-preview-top strong { border:0; padding:0; }
 .partner-referral-link { gap:10px; }
 .partner-referral-link>div>span { font-size:7px; }
 .partner-qr { width:50px; height:50px; font-size:30px; }
 .partner-hero .actions { gap:10px; }
 .partner-hero .actions>.button { font-size:12px; padding:14px 18px; gap:10px; }
 .partner-contact-grid { gap:36px; }
 .partner-form { padding:26px; }
 .partner-fields { grid-template-columns:1fr; }
}
@media(max-width:900px) {
 .partner-contact-grid { grid-template-columns:1fr; gap:32px; }
 .partner-contact-copy { max-width:620px; }
 .partner-form { max-width:680px; width:100%; }
 .partner-contact-benefits { gap:12px; }

 .partner-earnings-grid { grid-template-columns:1fr; }
 .partner-earnings-summary { border-left:0; border-top:1px solid var(--line); }
 .partner-earnings-summary>.button { max-width:440px; }
 .partner-earnings-summary>.button + p { text-align:left; }

 .partner-hero-grid { grid-template-columns:1fr; gap:32px; padding-block:44px 54px; }
 .partner-hero-copy { max-width:660px; }
 .partner-hero h1 { font-size:clamp(40px,6.5vw,58px); max-width:660px; }
 .partner-intro { max-width:640px; }
 .partner-preview { width:100%; max-width:620px; justify-self:center; }
 .partner-preview-top>span:first-child { flex-direction:row; align-items:center; gap:12px; }
 .partner-preview-top strong { border-left:1px solid var(--line); padding-left:12px; }
 .partner-referral-link>div>span { font-size:8px; }
 .partner-process-grid { grid-template-columns:repeat(2,1fr); gap:32px; }
 .partner-process-grid li:nth-child(2)::after { display:none; }
}
@media(max-width:720px) {
 .partner-earnings { border-radius:18px; }
 .partner-earnings-heading,.partner-earnings-inputs,.partner-earnings-summary { padding:24px 20px; }
 .partner-earnings-heading h3 { font-size:23px; }
 .partner-earnings-heading p { font-size:13px; }
 .partner-client-heading { gap:10px; }
 .partner-client-heading label { font-size:15px; }
 .partner-client-heading p { font-size:11px; }
 .partner-program-icon { width:34px; height:34px; font-size:19px; border-radius:9px; }
 .partner-client-rate { font-size:24px; }
 .partner-summary-amount output { font-size:48px; }
 .partner-earnings-breakdown>div { font-size:13px; }

 .partners-page :is(.partner-programs,.partner-process,.partner-contact,#preguntas) { padding-block:54px; }
 .partner-intro { font-size:16px; margin:22px 0 24px; }
 .partner-audience { margin-top:20px; }
 .partner-preview { padding:18px; border-radius:18px; }
 .partner-preview-top { gap:8px; }
 .partner-preview-top img { width:57px; }
 .partner-preview-top strong { font-size:11px; }
 .partner-example { font-size:9px; }
 .partner-preview-flow li { padding:14px 12px; gap:10px; }
 .partner-preview-flow li::after { left:32px!important; }
 .partner-preview-flow strong { font-size:13px; }
 .partner-flow-number { display:none; }
 .partner-section-head { margin-bottom:28px; }
 .partner-section-head>p:last-child:not(.eyebrow) { font-size:15px; margin-top:16px; }
 .partner-commission-note { font-size:11px; line-height:1.8; }
 .partner-process-grid { gap:28px 20px; }
 .partner-process-grid h3 { font-size:18px; }
 .partner-process-grid p { font-size:13px; line-height:1.65; }
 .partner-step-icon { margin-bottom:16px; }
 .partner-contact-grid { grid-template-columns:1fr; gap:28px; }
 .partner-contact-copy { padding:0; }
 .partner-contact-benefits li { font-size:13px; }
 .partner-contact-copy>p:not(.eyebrow) { font-size:15px; margin-top:18px; }
 .partner-whatsapp-note { margin-top:20px; }
 .partner-form { padding:24px; border-radius:20px; }
 .partner-fields { gap:20px; }
 .partner-form input:not([type=checkbox]),.partner-form textarea { font-size:16px; }
 .partners-page #preguntas .faq-grid { gap:24px; }
}
@media(max-width:380px) {
 .partner-preview-top>span:first-child { flex-direction:column; align-items:flex-start; gap:4px; }
 .partner-preview-top strong { border:0; padding:0; }
 .partner-referral-link>.bi { display:none; }
 .partner-form { padding:20px; }
}
