/* AWFlux partner recruitment landing page */
.partners-page { color: var(--gray-700); }
.partners-page .navbar { background: rgba(255,255,255,.96); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(229,231,235,.8); }
.partners-page .navbar-links > a:not(.btn) { color: var(--gray-700); }
.partners-page .navbar-links > a:not(.btn):hover { color: var(--brand); }
.partner-hero { padding: 112px 0 72px; background: radial-gradient(ellipse at 76% 44%, #24204a 0, #12142a 32%, #0b1020 70%); position: relative; overflow: hidden; color: white; }
.partner-hero:before { content:""; position:absolute; inset:0; opacity:.15; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:54px 54px; mask-image:linear-gradient(90deg,transparent,#000 52%,#000); }
.partner-hero-layout { position:relative; z-index:1; display:grid; grid-template-columns:1.02fr .98fr; align-items:center; gap:50px; }
.partner-hero-copy { max-width:610px; }
.partner-eyebrow { display:inline-flex; align-items:center; gap:10px; color:#b9a7ff; font-size:11px; font-weight:800; letter-spacing:1.7px; }
.partner-eyebrow > span { width:8px; height:8px; border-radius:50%; background:#9b7cff; box-shadow:0 0 18px #9b7cff; }
.partner-hero h1 { margin:23px 0 20px; color:#fff; font-size:clamp(42px,5.3vw,68px); line-height:1.06; letter-spacing:-2.8px; font-weight:800; }
.partner-gradient-text { background:linear-gradient(100deg,#c7baff 5%,#9c7bff 48%,#6ce7d5 100%); color:transparent; -webkit-background-clip:text; background-clip:text; }
.partner-hero-lead { max-width:540px; color:rgba(238,240,255,.72); font-size:17px; line-height:1.8; }
.partner-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:30px; }
.partner-cta { gap:11px; padding:16px 23px; border-radius:11px; color:white; box-shadow:0 12px 32px rgba(108,60,225,.36); }
.partner-cta svg { width:18px; height:18px; }
.partner-hero-note { display:inline-flex; align-items:center; gap:8px; color:rgba(238,240,255,.66); font-size:12px; }
.partner-hero-note svg { width:15px; height:15px; color:#81e6d4; }
.partner-trust-line { display:flex; align-items:center; gap:8px; margin-top:42px; color:rgba(238,240,255,.5); font-size:12px; }
.partner-trust-line svg { width:15px; color:#9d83ff; }
.partner-hero-orb { position:absolute; border-radius:50%; filter:blur(2px); pointer-events:none; }
.partner-hero-orb-one { width:420px; height:420px; top:-280px; left:8%; background:radial-gradient(circle,rgba(108,60,225,.27),transparent 68%); }
.partner-hero-orb-two { width:580px; height:580px; right:-300px; bottom:-370px; background:radial-gradient(circle,rgba(16,185,129,.14),transparent 68%); }
.partner-hero-bottom { position:absolute; bottom:0; left:0; right:0; height:3px; display:flex; opacity:.8; }
.partner-hero-bottom span { flex:1; background:linear-gradient(90deg,transparent,#8059f5,transparent); }
.partner-visual { height:460px; position:relative; display:flex; align-items:center; justify-content:center; }
.partner-visual-glow { position:absolute; width:370px; height:370px; border-radius:50%; background:radial-gradient(circle,rgba(108,60,225,.25),rgba(47,195,187,.08) 46%,transparent 72%); }
.partner-visual-grid { position:absolute; inset:22px 0; opacity:.21; background-image:radial-gradient(rgba(184,170,255,.55) 1px,transparent 1px); background-size:20px 20px; mask-image:radial-gradient(ellipse,#000 15%,transparent 73%); }
.partner-hub { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:146px; height:146px; border-radius:38px; display:flex; flex-direction:column; align-items:center; justify-content:center; background:linear-gradient(145deg,rgba(35,36,70,.96),rgba(20,24,47,.98)); border:1px solid rgba(183,164,255,.4); box-shadow:0 0 0 10px rgba(138,112,255,.05),0 0 70px rgba(108,60,225,.3),inset 0 1px rgba(255,255,255,.12); }
.partner-hub img { width:43px; height:43px; border-radius:12px; margin-bottom:8px; }
.partner-hub > span { color:white; font-size:14px; font-weight:800; letter-spacing:2px; }
.partner-hub small { margin-top:5px; color:#a9a5c8; font-size:7px; letter-spacing:1.1px; }
.partner-node { position:absolute; z-index:2; display:flex; align-items:center; gap:11px; min-width:197px; padding:13px 15px; border:1px solid rgba(190,184,232,.2); border-radius:14px; background:rgba(22,27,51,.88); box-shadow:0 14px 38px rgba(0,0,0,.25); backdrop-filter:blur(12px); }
.partner-node-you { top:60px; left:0; }.partner-node-business { right:0; bottom:96px; }
.partner-node-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; color:#b5a1ff; background:rgba(126,92,231,.16); }
.partner-node-icon svg { width:19px; }
.partner-node small,.partner-float-card small { display:block; color:#a59fc7; font-size:8px; letter-spacing:1px; font-weight:700; }
.partner-node strong,.partner-float-card strong { display:block; margin-top:4px; color:#fff; font-size:12px; }
.partner-connection { position:absolute; width:150px; height:110px; border-top:1px dashed rgba(167,147,255,.48); }
.partner-connection-one { top:136px; left:139px; transform:rotate(27deg); border-radius:0 70% 0 0; }
.partner-connection-two { right:130px; bottom:163px; transform:rotate(26deg); border-radius:0 70% 0 0; }
.partner-connection span { position:absolute; width:7px; height:7px; background:#68e1d2; border-radius:50%; box-shadow:0 0 14px #68e1d2; animation:partner-pulse 2.8s infinite; }
.partner-connection-one span { right:10px; top:-4px; }.partner-connection-two span { left:8px; top:-4px; animation-delay:1.3s; }
@keyframes partner-pulse { 0%,100%{opacity:.3;transform:scale(.8)} 50%{opacity:1;transform:scale(1.5)} }
.partner-float-card { position:absolute; z-index:3; right:4px; top:48px; display:flex; gap:10px; align-items:center; padding:11px 13px; border:1px solid rgba(129,230,212,.22); border-radius:12px; background:rgba(19,40,51,.92); box-shadow:0 15px 40px rgba(0,0,0,.22); }
.partner-float-icon { width:32px; height:32px; display:grid; place-items:center; color:#6de1cf; border-radius:9px; background:rgba(49,195,174,.12); }
.partner-float-icon svg,.partner-float-arrow { width:16px; height:16px; }.partner-float-arrow { color:#74d9c8; margin-left:5px; }
.partner-visual-caption { position:absolute; bottom:23px; color:rgba(228,231,255,.5); font-size:11px; letter-spacing:.15px; }
.section-padding { padding:100px 0; }
.partner-intro { background:#fff; }
.partner-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.partner-section-heading .section-label,.partner-difference-copy .section-label,.partner-faq-heading .section-label { display:inline-block; margin-bottom:17px; }
.partner-section-heading h2,.partner-difference-copy h2,.partner-faq-heading h2 { color:var(--dark); font-size:clamp(31px,3.6vw,46px); line-height:1.17; letter-spacing:-1.6px; font-weight:800; }
.partner-text-gradient { color:var(--brand); }
.partner-intro-copy p { margin-bottom:18px; color:var(--gray-600); font-size:16px; line-height:1.85; }
.partner-intro-copy strong { color:var(--dark); }
.partner-inline-link { display:inline-flex; align-items:center; gap:9px; margin-top:10px; color:var(--brand); font-weight:700; font-size:14px; }
.partner-inline-link svg { width:17px; height:17px; transition:transform .2s ease; }
.partner-inline-link:hover svg { transform:translate(3px,-2px); }
.partner-fit { background:linear-gradient(180deg,#f8f7fc 0%,#f5f4fa 100%); }
.partner-fit .section-header { max-width:680px; margin:0 auto 48px; }
.partner-fit .section-header > p { margin-top:14px; color:var(--gray-500); font-size:16px; }
.partner-fit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.partner-fit-card { position:relative; min-height:245px; padding:30px; overflow:hidden; border:1px solid #e9e7f1; border-radius:18px; background:#fff; box-shadow:0 8px 24px rgba(26,20,50,.035); transition:var(--transition); }
.partner-fit-card:hover { transform:translateY(-5px); border-color:#d8cff9; box-shadow:0 18px 42px rgba(65,43,126,.1); }
.partner-fit-icon { display:grid; width:48px; height:48px; margin-bottom:24px; place-items:center; border-radius:14px; background:#f0ebff; color:var(--brand); }
.partner-fit-icon svg { width:22px; height:22px; }
.partner-fit-card h3 { margin-bottom:10px; color:var(--dark); font-size:17px; line-height:1.4; }
.partner-fit-card p { color:var(--gray-500); font-size:14px; line-height:1.7; }
.partner-card-index { position:absolute; top:25px; right:27px; color:#d8d3e7; font-weight:800; font-size:13px; }
.partners-page #como-funciona { background:#111528; color:white; }
.partner-how-heading { display:flex; justify-content:space-between; align-items:end; gap:60px; margin-bottom:55px; }
.partner-how-heading h2 { margin-top:16px; color:#fff; font-size:clamp(34px,4vw,48px); line-height:1.12; letter-spacing:-1.7px; }
.partner-how-heading > p { max-width:430px; padding-bottom:5px; color:rgba(231,233,247,.64); line-height:1.8; font-size:15px; }
.partner-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:17px; }
.partner-step { position:relative; min-height:245px; padding:28px 23px; border:1px solid rgba(201,197,229,.13); border-radius:16px; background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018)); }
.partner-step:not(:last-child):after { content:""; position:absolute; top:50px; right:-18px; width:18px; border-top:1px dashed rgba(169,148,255,.42); }
.partner-step-number { position:absolute; top:24px; right:23px; color:rgba(255,255,255,.28); font-size:12px; font-weight:700; }
.partner-step-icon { width:46px; height:46px; margin-bottom:28px; display:grid; place-items:center; color:#c1b2ff; border:1px solid rgba(153,124,255,.25); border-radius:13px; background:rgba(128,92,234,.12); }
.partner-step-icon svg { width:21px; }
.partner-step h3 { margin-bottom:9px; color:#fff; font-size:15px; line-height:1.4; }
.partner-step p { color:rgba(226,228,243,.57); font-size:13px; line-height:1.7; }
.partner-account { overflow:hidden; background:linear-gradient(180deg,#f8f7fc 0%,#fff 100%); }
.partner-account-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:75px; align-items:center; }
.partner-account-copy h2 { color:var(--dark); font-size:clamp(33px,3.8vw,48px); line-height:1.14; letter-spacing:-1.7px; font-weight:800; }
.partner-account-copy > p { margin-top:18px; color:var(--gray-500); font-size:15px; line-height:1.8; }
.partner-account-list { display:grid; gap:13px; margin:23px 0 0; }
.partner-account-list li { display:flex; gap:11px; align-items:flex-start; color:var(--gray-700); font-size:14px; line-height:1.6; }
.partner-account-list svg { width:18px; height:18px; flex:0 0 18px; margin-top:2px; color:#0eaa87; }
.partner-account-copy .partner-account-footnote { margin-top:22px; font-size:12px; color:#9293a2; }
.partner-portal-preview { position:relative; padding:30px 0; }
.partner-portal-window { position:relative; z-index:1; overflow:hidden; padding:0 23px 17px; border:1px solid #e8e6f1; border-radius:18px; background:#fff; box-shadow:0 26px 75px rgba(35,26,76,.13); }
.partner-portal-window:before { content:""; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,#6c3ce1,#9b7bff,#55d4c2); }
.partner-portal-topbar { display:flex; align-items:center; justify-content:space-between; min-height:66px; border-bottom:1px solid #f0eef5; }
.partner-portal-brand { display:flex; align-items:center; gap:8px; color:#22243b; font-size:12px; font-weight:800; letter-spacing:1.1px; }
.partner-portal-brand img { width:25px; height:25px; border-radius:7px; }
.partner-portal-brand small { margin-left:7px; padding-left:13px; border-left:1px solid #e8e6ef; color:#9a98aa; font-size:8px; font-weight:700; letter-spacing:.8px; }
.partner-portal-avatar { display:grid; width:30px; height:30px; place-items:center; border-radius:50%; background:#f0ebff; color:#6942d0; }
.partner-portal-avatar svg { width:15px; }
.partner-portal-welcome { display:flex; align-items:center; justify-content:space-between; padding:22px 0 19px; }
.partner-portal-welcome small,.partner-portal-summary small,.partner-portal-payment small { display:block; color:#9896a9; font-size:8px; font-weight:700; letter-spacing:.9px; }
.partner-portal-welcome strong { display:block; margin-top:5px; color:#202239; font-size:17px; }
.partner-portal-status { display:flex; align-items:center; gap:6px; padding:6px 9px; border-radius:20px; background:#eaf8f3; color:#188268; font-size:9px; font-weight:700; }
.partner-portal-status i { width:6px; height:6px; border-radius:50%; background:#25b68e; }
.partner-portal-summary { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.partner-portal-summary > div { min-height:128px; padding:15px; border:1px solid #eeecf4; border-radius:12px; background:linear-gradient(145deg,#fff,#fbfaff); }
.partner-portal-summary > div > span { display:grid; width:30px; height:30px; margin-bottom:13px; place-items:center; border-radius:9px; background:#f0ebff; color:#704bd2; }
.partner-portal-summary > div > span svg { width:16px; }
.partner-portal-summary strong { display:block; margin-top:5px; color:#25253b; font-size:12px; }
.partner-portal-summary em,.partner-portal-payment em { display:block; margin-top:4px; color:#9997a8; font-size:9px; font-style:normal; }
.partner-portal-payment { display:flex; align-items:center; gap:12px; margin-top:12px; padding:13px; border:1px solid #eeecf4; border-radius:12px; }
.partner-portal-payment-icon { display:grid; width:34px; height:34px; flex:0 0 34px; place-items:center; border-radius:10px; color:#0b9b82; background:#e9f8f4; }
.partner-portal-payment-icon svg { width:16px; }
.partner-portal-payment strong { display:block; margin-top:4px; color:#25253b; font-size:11px; }
.partner-portal-arrow { width:16px; margin-left:auto; color:#8b83a8; }
.partner-portal-nav { display:flex; gap:18px; margin-top:17px; padding-top:13px; border-top:1px solid #f0eef5; color:#8b899c; }
.partner-portal-nav span { display:flex; align-items:center; gap:5px; font-size:8px; white-space:nowrap; }
.partner-portal-nav svg { width:12px; height:12px; }
.partner-portal-nav .active { color:#704bd2; font-weight:700; }
.partner-portal-caption { display:block; margin:12px 0 0; color:#9a98a8; font-size:10px; text-align:center; }
.partner-difference { background:#fff; }
.partner-difference-layout { display:grid; grid-template-columns:.88fr 1.12fr; gap:85px; align-items:center; }
.partner-difference-copy > p { margin-top:20px; color:var(--gray-500); font-size:15px; line-height:1.8; }
.partner-capabilities { padding:11px 26px; border:1px solid #eeecf4; border-radius:20px; background:#fff; box-shadow:0 18px 55px rgba(27,21,53,.07); }
.partner-capability { display:flex; align-items:center; gap:15px; padding:20px 0; border-bottom:1px solid #f0eef5; }
.partner-capability:last-child { border-bottom:0; }
.partner-capability > span { width:43px; height:43px; flex:0 0 43px; display:grid; place-items:center; border-radius:13px; color:#7350d8; background:#f3efff; }
.partner-capability > span svg { width:20px; }
.partner-capability div { flex:1; }
.partner-capability strong,.partner-capability small { display:block; }
.partner-capability strong { color:var(--dark); font-size:14px; }
.partner-capability small { margin-top:4px; color:var(--gray-500); font-size:12px; }
.partner-cap-check { width:17px; color:#16a783; }
.partner-faq { background:#f8f7fb; }
.partner-faq-layout { display:grid; grid-template-columns:.75fr 1.25fr; gap:95px; align-items:start; }
.partner-faq-heading > p { margin-top:17px; color:var(--gray-500); line-height:1.8; font-size:14px; }
.partner-faq-list { border-top:1px solid #e5e2ed; }
.partner-faq-item { border-bottom:1px solid #e5e2ed; }
.partner-faq-item summary { position:relative; padding:21px 38px 21px 0; color:var(--dark); font-weight:700; font-size:15px; cursor:pointer; list-style:none; }
.partner-faq-item summary::-webkit-details-marker { display:none; }
.partner-faq-item summary:after { content:"+"; position:absolute; top:17px; right:3px; color:var(--brand); font-size:24px; font-weight:400; }
.partner-faq-item[open] summary:after { content:"−"; }
.partner-faq-item p { max-width:650px; padding:0 30px 20px 0; color:var(--gray-500); font-size:14px; line-height:1.8; }
.partner-final-cta { position:relative; overflow:hidden; padding:94px 0 90px; text-align:center; background:radial-gradient(ellipse at 50% 125%,rgba(108,60,225,.42),transparent 58%),#111528; color:white; }
.partner-final-cta:before { content:""; position:absolute; inset:0; opacity:.12; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:54px 54px; mask-image:linear-gradient(transparent,#000); }
.partner-cta-orb { position:absolute; width:450px; height:450px; top:-340px; left:calc(50% - 225px); border-radius:50%; background:rgba(108,60,225,.28); filter:blur(50px); }
.partner-final-cta-content { position:relative; z-index:1; max-width:790px; }
.partner-final-cta h2 { margin:20px 0 16px; color:white; font-size:clamp(36px,5vw,56px); line-height:1.1; letter-spacing:-2px; }
.partner-final-cta-content > p { max-width:640px; margin:0 auto; color:rgba(232,233,248,.68); font-size:15px; line-height:1.8; }
.partner-final-actions { justify-content:center; margin-top:29px; }
.partner-email-link { display:inline-flex; align-items:center; gap:6px; color:rgba(235,233,255,.72); font-size:13px; font-weight:600; }
.partner-email-link svg { width:15px; }
.partner-terms-note { display:block; margin:24px auto 0; color:rgba(222,222,241,.44); font-size:11px; line-height:1.6; }
.partners-page .footer-col a[href="/parceiros/"] { color:#a994ff; }
.partners-page .footer-social svg { width:16px; height:16px; }
@media (max-width: 1000px) {
    .partner-hero { padding-top:112px; }
    .partner-hero-layout { grid-template-columns:1fr 1fr; gap:25px; }
    .partner-visual { transform:scale(.9); transform-origin:center; }
    .partner-node-you { left:-10px; }.partner-node-business { right:-10px; }
    .partner-connection-one { left:126px; }.partner-connection-two { right:120px; }
    .partner-intro-grid,.partner-difference-layout,.partner-account-layout { gap:50px; }
    .partner-faq-layout { gap:55px; }
    .partner-steps { grid-template-columns:repeat(2,1fr); }
    .partner-step:nth-child(2):after { display:none; }
}
@media (max-width: 760px) {
    .partners-page .navbar { padding:10px 0; }
    .partners-page .navbar-links { display:none; }
    .partners-page .navbar-toggle { color:var(--dark); }
    .partner-hero { padding:104px 0 48px; }
    .partner-hero-layout { grid-template-columns:1fr; gap:0; }
    .partner-hero h1 { font-size:clamp(41px,11vw,58px); letter-spacing:-2px; }
    .partner-hero-lead { font-size:15px; }
    .partner-hero-actions { align-items:flex-start; flex-direction:column; gap:14px; margin-top:24px; }
    .partner-trust-line { margin-top:25px; }
    .partner-visual { height:370px; margin:-2px -17px -12px; transform:scale(.88); }
    .partner-node-you { left:1px; top:39px; }.partner-node-business { right:1px; bottom:70px; }
    .partner-node { min-width:174px; padding:10px; gap:8px; }
    .partner-node-icon { width:32px; height:32px; }
    .partner-node strong { font-size:10px; }
    .partner-node small { font-size:7px; }
    .partner-hub { width:126px; height:126px; border-radius:32px; }
    .partner-connection-one { top:120px; left:112px; width:112px; }
    .partner-connection-two { right:108px; bottom:130px; width:110px; }
    .partner-float-card { right:0; top:26px; transform:scale(.88); transform-origin:right top; }
    .partner-visual-caption { bottom:12px; font-size:9px; text-align:center; }
    .section-padding { padding:72px 0; }
    .partner-intro-grid,.partner-difference-layout,.partner-account-layout,.partner-faq-layout { grid-template-columns:1fr; gap:28px; }
    .partner-section-heading h2,.partner-difference-copy h2,.partner-faq-heading h2 { font-size:34px; }
    .partner-intro-copy p { font-size:15px; }
    .partner-fit .section-header { margin-bottom:32px; }
    .partner-fit-grid { grid-template-columns:1fr; gap:13px; }
    .partner-fit-card { min-height:0; padding:23px; }
    .partner-fit-icon { margin-bottom:16px; }
    .partner-how-heading { display:block; margin-bottom:34px; }
    .partner-how-heading h2 { font-size:37px; }
    .partner-how-heading > p { margin-top:17px; font-size:14px; }
    .partner-steps { grid-template-columns:1fr; gap:12px; }
    .partner-step { min-height:0; padding:20px 20px 20px 82px; }
    .partner-step-icon { position:absolute; left:20px; top:23px; width:43px; height:43px; margin:0; }
    .partner-step-number { top:18px; right:18px; }
    .partner-step:not(:last-child):after { display:none; }
    .partner-capabilities { padding:7px 17px; }
    .partner-portal-preview { padding:9px 0 0; }
    .partner-portal-window { padding:0 14px 14px; border-radius:14px; }
    .partner-portal-topbar { min-height:56px; }
    .partner-portal-brand small { margin-left:3px; padding-left:8px; font-size:7px; }
    .partner-portal-summary { gap:8px; }
    .partner-portal-summary > div { min-height:121px; padding:11px; }
    .partner-portal-summary strong { font-size:10px; }
    .partner-portal-nav { justify-content:space-between; gap:5px; }
    .partner-portal-nav span { gap:3px; font-size:7px; }
    .partner-portal-nav svg { width:10px; height:10px; }
    .partner-capability { gap:11px; padding:16px 0; }
    .partner-capability > span { width:38px; height:38px; flex-basis:38px; }
    .partner-capability small { font-size:11px; line-height:1.5; }
    .partner-faq-layout { gap:22px; }
    .partner-faq-item summary { font-size:14px; }
    .partner-final-cta { padding:74px 0 68px; }
    .partner-final-cta h2 { font-size:39px; letter-spacing:-1.5px; }
    .partner-final-cta-content > p { font-size:14px; }
    .partner-final-actions { align-items:center; }
    .partner-terms-note { max-width:330px; }
    .partners-page .footer-grid { grid-template-columns:1fr 1fr; gap:30px 20px; }
    .partners-page .footer-brand { grid-column:1/-1; }
    .partners-page .footer-bottom { align-items:flex-start; gap:18px; }
}
@media (max-width: 390px) {
    .partner-visual { transform:scale(.78); margin:-22px -42px -28px; }
    .partner-hero-note { font-size:11px; }
    .partner-cta { padding:14px 17px; font-size:13px; }
}
@media (prefers-reduced-motion: reduce) {
    .partner-connection span { animation:none; }
    .partners-page *, .partners-page *:before, .partners-page *:after { scroll-behavior:auto !important; }
}
