:root { --blue:#075dcc; --deep:#041e4d; --ink:#071a3b; --muted:#63758f; --line:#dfe9f5; --coral:#ff5a45; --sky:#edf7ff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font-family:"Onest",system-ui,sans-serif; font-size:16px; font-kerning:normal; text-rendering:optimizeLegibility; color:var(--ink); background:#fff; }
h1,h2,h3 { text-wrap:balance; font-kerning:normal; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
button { cursor:pointer; }
.partner-header { height:88px; padding:0 max(28px,calc((100vw - 1420px)/2)); display:flex; align-items:center; gap:38px; position:sticky; top:0; z-index:30; border-bottom:1px solid rgba(219,231,244,.9); background:rgba(255,255,255,.94); backdrop-filter:blur(14px); }
.brand { display:inline-flex; align-items:center; gap:10px; min-width:235px; color:var(--blue); }
.brand-mark { width:45px; height:45px; display:grid; place-items:center; }
.brand-mark svg { width:43px; transform:rotate(-8deg); }
.brand strong,.brand small { display:block; }
.brand strong { font-size:18px; line-height:1; }
.brand small { margin-top:4px; color:#7086a4; font-size:7px; letter-spacing:.09em; }
.partner-header nav { display:flex; gap:30px; margin-left:auto; }
.partner-header nav a { font-size:12px; font-weight:700; }
.header-login { min-height:43px; padding:0 17px; display:inline-flex; align-items:center; border:1px solid #cddff1; border-radius:11px; color:var(--blue); font-size:11px; font-weight:800; }
.kicker { color:var(--blue); font-size:9px; letter-spacing:.14em; font-weight:800; }
.kicker.light { color:#8dcbff; }
.coral-button { min-height:54px; padding:0 23px; border:0; border-radius:12px; display:inline-flex; align-items:center; justify-content:center; gap:35px; color:#fff; background:linear-gradient(115deg,#ff674f,#ff4f3c); box-shadow:0 15px 28px rgba(255,82,62,.22); font-size:11px; font-weight:800; }
.coral-button span { font-size:20px; font-weight:400; }
.partner-hero { max-width:1420px; min-height:580px; margin:0 auto; padding:70px 60px; display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:70px; color:#fff; background:linear-gradient(90deg,rgba(3,30,79,.98),rgba(5,64,148,.85)),url("assets/sochi-hero.png") center/cover no-repeat; border-radius:0 0 28px 28px; }
.hero-copy h1 { margin:13px 0 20px; max-width:760px; font-size:clamp(48px,5.6vw,79px); line-height:1.02; letter-spacing:-.055em; }
.hero-copy > p { max-width:690px; margin:0; color:#d1e3fa; font-size:14px; line-height:1.75; }
.hero-actions { display:flex; align-items:center; gap:15px; margin-top:28px; }
.ghost-button { min-height:54px; padding:0 22px; display:inline-flex; align-items:center; border:1px solid rgba(255,255,255,.3); border-radius:12px; font-size:11px; font-weight:800; }
.hero-copy > small { display:block; margin-top:15px; color:#91afd3; font-size:8px; }
.hero-panel { padding:34px; border:1px solid rgba(255,255,255,.17); border-radius:20px; background:rgba(3,29,72,.58); backdrop-filter:blur(10px); }
.hero-panel > span { color:#88caff; font-size:8px; letter-spacing:.13em; font-weight:800; }
.hero-panel ul { list-style:none; padding:0; margin:20px 0 0; }
.hero-panel li { padding:15px 0; display:grid; grid-template-columns:1fr; border-bottom:1px solid rgba(255,255,255,.12); }
.hero-panel li:last-child { border-bottom:0; }
.hero-panel b { font-size:13px; }
.hero-panel small { margin-top:5px; color:#a9c1df; font-size:9px; line-height:1.6; }
.audience-section,.workflow-section,.faq-section { max-width:1420px; margin:0 auto; padding:78px 52px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:35px; }
.section-heading h2 { margin:9px 0 0; font-size:clamp(32px,4vw,52px); line-height:1.08; letter-spacing:-.045em; }
.section-heading > p { max-width:480px; margin:0; color:var(--muted); font-size:11px; line-height:1.7; text-align:right; }
.audience-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:33px; }
.audience-grid article { min-height:220px; padding:24px; border:1px solid var(--line); border-radius:17px; background:#fff; }
.audience-grid article > span { color:#a1b3c8; font-size:9px; font-weight:800; }
.audience-grid h3 { margin:30px 0 9px; font-size:17px; line-height:1.3; }
.audience-grid p { margin:0; color:var(--muted); font-size:9px; line-height:1.7; }
.conditions-section { max-width:1420px; margin:0 auto; padding:64px 58px; display:grid; grid-template-columns:.9fr 1.1fr; gap:60px; color:#fff; border-radius:26px; background:linear-gradient(135deg,#0868d9,#033887); }
.conditions-copy h2 { margin:11px 0 20px; font-size:clamp(34px,3.8vw,51px); line-height:1.07; letter-spacing:-.045em; }
.conditions-copy p { color:#c6dcf6; font-size:11px; line-height:1.75; }
.conditions-cards { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.conditions-cards article { padding:24px; border:1px solid rgba(255,255,255,.13); border-radius:15px; background:rgba(2,35,83,.48); }
.conditions-cards b { font-size:13px; }
.conditions-cards p { margin:10px 0 0; color:#b5cbe6; font-size:9px; line-height:1.7; }
.workflow-list { list-style:none; padding:0; margin:35px 0 0; border-top:1px solid var(--line); }
.workflow-list li { min-height:105px; padding:20px 0; display:grid; grid-template-columns:55px 1fr 145px; align-items:center; gap:24px; border-bottom:1px solid var(--line); }
.workflow-list li > span { width:35px; height:35px; display:grid; place-items:center; border-radius:50%; color:var(--blue); background:#e8f3ff; font-size:9px; font-weight:800; }
.workflow-list h3 { margin:0 0 6px; font-size:17px; }
.workflow-list p { margin:0; max-width:850px; color:var(--muted); font-size:10px; line-height:1.6; }
.workflow-list li > b { justify-self:end; padding:8px 12px; border-radius:999px; color:var(--blue); background:#eef6ff; font-size:8px; }
.roles-section { max-width:1420px; margin:0 auto 78px; padding:0 52px; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.roles-section > div { padding:37px; border-radius:19px; background:#f1f7fd; }
.roles-section > div:last-child { background:#e8f3ff; }
.roles-section h3 { margin:10px 0 20px; font-size:27px; }
.roles-section ul { list-style:none; padding:0; margin:0; display:grid; gap:11px; }
.roles-section li { color:#53657e; font-size:10px; line-height:1.55; }
.roles-section li::before { content:"✓"; margin-right:9px; color:var(--blue); font-weight:800; }
.access-section { max-width:1420px; margin:0 auto; padding:65px 58px; display:grid; grid-template-columns:.85fr 1.15fr; gap:65px; color:#fff; border-radius:26px; background:linear-gradient(135deg,#041e4d,#075dcc); }
.access-section[hidden] { display:none; }
.access-copy h2 { margin:10px 0 17px; font-size:clamp(36px,4vw,54px); line-height:1.07; letter-spacing:-.045em; }
.access-copy > p { color:#c4d8f1; font-size:11px; line-height:1.75; }
.demo-notice { margin-top:25px; padding:17px; display:grid; gap:5px; border:1px solid rgba(255,255,255,.15); border-radius:13px; background:rgba(255,255,255,.06); }
.demo-notice b { color:#8dcbff; font-size:10px; }
.demo-notice span { color:#b6cce7; font-size:8px; line-height:1.6; }
.access-card { padding:28px; border-radius:19px; color:var(--ink); background:#fff; }
.access-tabs { display:grid; grid-template-columns:1fr 1fr; padding:4px; border-radius:11px; background:#eef3f8; }
.access-tabs button { min-height:40px; border:0; border-radius:8px; color:#66758a; background:transparent; font-size:10px; font-weight:800; }
.access-tabs button.active { color:var(--blue); background:#fff; box-shadow:0 4px 13px rgba(20,55,98,.1); }
.access-form { margin-top:20px; display:grid; gap:12px; }
.access-form > p { margin:3px 0 7px; color:var(--muted); font-size:10px; line-height:1.6; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.access-form label > span { display:block; margin-bottom:6px; color:#65758c; font-size:8px; }
.access-form input:not([type="checkbox"]),.access-form select { width:100%; height:48px; padding:0 13px; border:1px solid var(--line); border-radius:10px; color:var(--ink); background:#fff; outline:0; font-size:11px; }
.access-form input:focus,.access-form select:focus { border-color:#75b5fa; box-shadow:0 0 0 3px #e8f3ff; }
.consent { display:grid; grid-template-columns:17px 1fr; gap:8px; align-items:start; }
.consent input { margin:2px 0 0; accent-color:var(--blue); }
.consent span { line-height:1.5; }
.access-form .coral-button { width:100%; margin-top:4px; justify-content:space-between; }
.partner-cabinet { max-width:1420px; min-height:650px; margin:35px auto 0; overflow:hidden; grid-template-columns:250px 1fr; border:1px solid var(--line); border-radius:24px; background:#f4f8fc; box-shadow:0 25px 60px rgba(6,45,98,.12); }
.partner-cabinet:not([hidden]) { display:grid; }
.cabinet-sidebar { padding:28px 18px; display:flex; flex-direction:column; color:#fff; background:#041e4d; }
.cabinet-sidebar > div { display:flex; align-items:center; gap:10px; padding:0 8px 26px; }
.brand-mini { width:39px; height:39px; display:grid; place-items:center; border-radius:12px; color:#fff; background:var(--blue); font-size:12px; font-weight:800; }
.cabinet-sidebar p,.cabinet-sidebar small,.cabinet-sidebar b { display:block; margin:0; }
.cabinet-sidebar small { color:#77b7f3; font-size:7px; letter-spacing:.1em; }
.cabinet-sidebar b { margin-top:3px; font-size:11px; }
.cabinet-sidebar nav { display:grid; gap:6px; }
.cabinet-sidebar nav button,.logout-button { min-height:45px; padding:0 14px; border:0; border-radius:10px; color:#b6c9e1; background:transparent; text-align:left; font-size:10px; font-weight:700; }
.cabinet-sidebar nav button.active { color:#fff; background:#0a448e; }
.logout-button { margin-top:auto; border:1px solid #264c7e; }
.cabinet-main { min-width:0; padding:35px; }
.cabinet-main > header { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.cabinet-main > header small { color:var(--muted); font-size:8px; }
.cabinet-main > header h2 { margin:5px 0 0; font-size:28px; }
.partner-id { padding:10px 14px; border:1px solid var(--line); border-radius:11px; background:#fff; }
.partner-id small,.partner-id b { display:block; }
.partner-id b { margin-top:3px; color:var(--blue); font-size:11px; }
#cabinet-content { margin-top:27px; }
.cabinet-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.cabinet-stat { padding:21px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.cabinet-stat b,.cabinet-stat span { display:block; }
.cabinet-stat b { color:var(--blue); font-size:28px; }
.cabinet-stat span { margin-top:3px; color:var(--muted); font-size:9px; }
.cabinet-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:12px; margin-top:12px; }
.cabinet-card { padding:23px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.cabinet-card h3 { margin:0 0 5px; font-size:17px; }
.cabinet-card > p { margin:0 0 17px; color:var(--muted); font-size:9px; line-height:1.55; }
.lead-form { display:grid; gap:9px; }
.lead-form input,.lead-form select,.lead-form textarea { width:100%; padding:0 12px; border:1px solid var(--line); border-radius:9px; outline:0; font:inherit; font-size:10px; }
.lead-form input,.lead-form select { height:43px; }
.lead-form textarea { min-height:75px; padding-top:11px; resize:vertical; }
.lead-form button,.material-button { min-height:42px; border:0; border-radius:9px; color:#fff; background:var(--blue); font-size:9px; font-weight:800; }
.cabinet-steps { display:grid; gap:8px; }
.cabinet-steps div { display:grid; grid-template-columns:25px 1fr; gap:8px; align-items:center; color:var(--muted); font-size:9px; }
.cabinet-steps b { width:25px; height:25px; display:grid; place-items:center; border-radius:50%; color:var(--blue); background:#e8f3ff; font-size:8px; }
.clients-table { overflow-x:auto; border:1px solid var(--line); border-radius:14px; background:#fff; }
.clients-table table { width:100%; border-collapse:collapse; min-width:620px; }
.clients-table th,.clients-table td { padding:14px 16px; border-bottom:1px solid var(--line); text-align:left; font-size:9px; }
.clients-table th { color:var(--muted); background:#f8fbfe; }
.status-pill { padding:6px 9px; border-radius:999px; color:var(--blue); background:#e8f3ff; font-size:8px; font-weight:800; }
.empty-clients { padding:45px; text-align:center; color:var(--muted); font-size:10px; }
.materials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.material-card { padding:22px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.material-card span { font-size:25px; color:var(--blue); }
.material-card h3 { margin:18px 0 7px; font-size:14px; }
.material-card p { min-height:45px; color:var(--muted); font-size:9px; line-height:1.5; }
.material-button { width:100%; margin-top:7px; color:var(--blue); background:#e8f3ff; }
.profile-list { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.profile-list div { padding:18px; border:1px solid var(--line); border-radius:13px; background:#fff; }
.profile-list small,.profile-list b { display:block; }
.profile-list small { color:var(--muted); font-size:8px; }
.profile-list b { margin-top:5px; font-size:11px; }
.faq-section { padding-bottom:90px; }
.faq-grid { margin-top:28px; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.faq-grid details { padding:0 20px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.faq-grid summary { position:relative; padding:19px 30px 19px 0; list-style:none; cursor:pointer; font-size:11px; font-weight:800; }
.faq-grid summary::-webkit-details-marker { display:none; }
.faq-grid summary::after { content:"+"; position:absolute; right:0; top:14px; width:27px; height:27px; display:grid; place-items:center; border-radius:50%; color:var(--blue); background:#e8f3ff; font-size:17px; }
.faq-grid details[open] summary::after { content:"−"; }
.faq-grid p { margin:-2px 0 20px; color:var(--muted); font-size:9px; line-height:1.7; }
.partner-footer { min-height:140px; padding:34px max(28px,calc((100vw - 1420px)/2)); display:flex; align-items:center; gap:35px; color:#fff; background:#041e4d; }
.brand-light { color:#fff; }
.partner-footer p { margin-left:auto; color:#91a8c6; font-size:8px; line-height:1.6; }
.partner-footer > a:last-child { color:#a9c9ee; font-size:9px; font-weight:800; }
.partner-mobile-nav { display:none; }
.toast { position:fixed; left:50%; bottom:28px; z-index:80; transform:translate(-50%,20px); padding:13px 18px; border-radius:11px; color:#fff; background:#061c43; opacity:0; pointer-events:none; transition:.25s; font-size:10px; }
.toast.show { opacity:1; transform:translate(-50%,0); }

/* Readable premium typography */
.brand small { font-size:9px; letter-spacing:.07em; }
.partner-header nav a { font-size:14px; }
.header-login { font-size:12px; }
.kicker { font-size:11px; letter-spacing:.1em; }
.coral-button { font-size:13px; }
.hero-copy h1 { line-height:1.08; letter-spacing:-.018em; }
.hero-copy > p { font-size:16px; line-height:1.7; }
.ghost-button { font-size:12px; }
.hero-copy > small { font-size:10px; line-height:1.45; }
.hero-panel > span { font-size:10px; }
.hero-panel b { font-size:15px; }
.hero-panel small { font-size:11px; }
.section-heading h2,.conditions-copy h2,.access-copy h2 { line-height:1.13; letter-spacing:-.017em; }
.section-heading > p { font-size:14px; }
.audience-grid article > span { font-size:10px; }
.audience-grid h3 { font-size:20px; }
.audience-grid p { font-size:12px; }
.conditions-copy p { font-size:13px; }
.conditions-cards b { font-size:15px; }
.conditions-cards p { font-size:11px; }
.workflow-list li > span { font-size:10px; }
.workflow-list h3 { font-size:20px; }
.workflow-list p { font-size:12px; }
.workflow-list li > b { font-size:10px; }
.roles-section li { font-size:12px; }
.access-copy > p { font-size:13px; }
.demo-notice b { font-size:12px; }
.demo-notice span { font-size:10px; }
.access-tabs button { font-size:12px; }
.access-form > p { font-size:12px; }
.access-form label > span { font-size:10px; }
.access-form input:not([type="checkbox"]),.access-form select { font-size:13px; }
.cabinet-sidebar small { font-size:9px; }
.cabinet-sidebar b { font-size:13px; }
.cabinet-sidebar nav button,.logout-button { font-size:12px; }
.cabinet-main > header small { font-size:10px; }
.partner-id b { font-size:13px; }
.cabinet-stat span { font-size:11px; }
.cabinet-card h3 { font-size:20px; }
.cabinet-card > p { font-size:11px; }
.lead-form input,.lead-form select,.lead-form textarea { font-size:12px; }
.lead-form button,.material-button { font-size:11px; }
.cabinet-steps div { font-size:11px; }
.clients-table th,.clients-table td { font-size:11px; }
.status-pill { font-size:10px; }
.empty-clients { font-size:12px; }
.material-card h3 { font-size:17px; }
.material-card p { font-size:11px; }
.profile-list small { font-size:10px; }
.profile-list b { font-size:13px; }
.faq-grid summary { font-size:13px; line-height:1.45; }
.faq-grid p { font-size:11px; }
.partner-footer p { font-size:10px; }
.partner-footer > a:last-child { font-size:11px; }
.toast { font-size:12px; }

/* Motion system */
.partner-hero { animation:partnerPan 18s ease-in-out infinite alternate; }
.hero-panel { animation:panelFloat 6s ease-in-out infinite; }
.coral-button { position:relative; overflow:hidden; isolation:isolate; }
.coral-button::before { content:""; position:absolute; z-index:0; inset:-60% auto -60% -45%; width:32%; transform:rotate(18deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent); pointer-events:none; animation:partnerGleam 5.8s ease-in-out infinite; }
.coral-button > * { position:relative; z-index:1; }
.coral-button span { animation:partnerArrow 2.8s ease-in-out infinite; }
.audience-grid article,.conditions-cards article,.material-card,.cabinet-stat { transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .45s; }
.partner-mobile-nav .active span { animation:navBreathe 3.2s ease-in-out infinite; }
@media (hover:hover) and (pointer:fine) { .audience-grid article:hover,.conditions-cards article:hover,.material-card:hover,.cabinet-stat:hover { transform:translateY(-6px); box-shadow:0 20px 42px rgba(5,52,112,.13); border-color:#b9d5f3; } }
@keyframes partnerPan { from { background-position:48% center; } to { background-position:55% center; } }
@keyframes panelFloat { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-7px); } }
@keyframes partnerGleam { 0%,68% { left:-45%; } 86%,100% { left:125%; } }
@keyframes partnerArrow { 0%,72%,100% { transform:translateX(0); } 84% { transform:translateX(5px); } }
@keyframes navBreathe { 0%,100% { box-shadow:0 0 0 0 rgba(7,93,204,.18); } 50% { box-shadow:0 0 0 7px rgba(7,93,204,0); } }

@media (max-width:980px) {
  .partner-header { padding:0 22px; }
  .partner-header nav { display:none; }
  .header-login { margin-left:auto; }
  .partner-hero { margin:0; border-radius:0; padding:55px 35px; grid-template-columns:1fr; gap:35px; }
  .audience-grid { grid-template-columns:1fr 1fr; }
  .conditions-section,.access-section { margin:0 20px; grid-template-columns:1fr; gap:30px; }
  .roles-section { padding:0 20px; }
  .partner-cabinet { margin:25px 20px 0; grid-template-columns:190px 1fr; }
  .cabinet-grid { grid-template-columns:1fr; }
}
@media (max-width:680px) {
  body { padding-bottom:calc(68px + env(safe-area-inset-bottom)); background:#f3f7fb; }
  .partner-header { height:70px; padding:0 14px; }
  .brand { min-width:0; gap:7px; }
  .brand-mark { width:36px; height:36px; }
  .brand-mark svg { width:35px; }
  .brand strong { font-size:14px; }
  .brand small { font-size:9px; letter-spacing:.04em; }
  .header-login { min-height:40px; padding:0 12px; font-size:10px; }
  .partner-hero { min-height:0; margin:0 8px; padding:42px 19px; border-radius:0 0 21px 21px; }
  .hero-copy h1 { font-size:41px; line-height:1.1; letter-spacing:-.015em; }
  .hero-copy > p { font-size:13px; line-height:1.65; }
  .hero-actions { align-items:stretch; flex-direction:column; }
  .hero-actions > * { width:100%; justify-content:space-between; }
  .ghost-button { justify-content:center; }
  .hero-panel { padding:24px 20px; }
  .audience-section,.workflow-section,.faq-section { margin:10px 8px; padding:38px 14px; border-radius:20px; background:#fff; }
  .section-heading { align-items:flex-start; flex-direction:column; gap:13px; }
  .section-heading h2 { font-size:33px; line-height:1.15; }
  .section-heading > p { text-align:left; }
  .audience-grid { grid-template-columns:1fr; gap:8px; margin-top:22px; }
  .audience-grid article { min-height:0; }
  .conditions-section,.access-section { margin:10px 8px; padding:38px 20px; border-radius:20px; }
  .conditions-copy h2,.access-copy h2 { font-size:35px; line-height:1.15; }
  .conditions-cards { grid-template-columns:1fr; }
  .workflow-list li { grid-template-columns:42px 1fr; align-items:start; gap:10px; }
  .workflow-list li > b { grid-column:2; justify-self:start; }
  .roles-section { margin:10px 8px 45px; padding:0; grid-template-columns:1fr; }
  .roles-section > div { padding:27px 22px; }
  .form-row { grid-template-columns:1fr; }
  .access-card { padding:20px 15px; }
  .partner-cabinet:not([hidden]) { display:block; margin:20px 10px 0; border-radius:17px; }
  .cabinet-sidebar { padding:15px; }
  .cabinet-sidebar > div { padding-bottom:14px; }
  .cabinet-sidebar nav { grid-template-columns:repeat(4,1fr); gap:4px; overflow-x:auto; }
  .cabinet-sidebar nav button { min-width:94px; min-height:42px; padding:0 8px; text-align:center; font-size:10px; }
  .logout-button { position:absolute; top:12px; right:10px; min-height:34px; padding:0 9px; }
  .cabinet-main { padding:22px 14px; }
  .cabinet-main > header { align-items:flex-start; }
  .cabinet-main > header h2 { font-size:22px; }
  .cabinet-stats { grid-template-columns:1fr; }
  .materials-grid,.profile-list { grid-template-columns:1fr; }
  .faq-grid { grid-template-columns:1fr; }
  .partner-footer { padding:30px 18px; align-items:flex-start; flex-direction:column; gap:16px; }
  .partner-footer p { margin:0; }
  .partner-mobile-nav { position:fixed; z-index:60; left:0; right:0; bottom:0; height:calc(68px + env(safe-area-inset-bottom)); padding:0 5px env(safe-area-inset-bottom); display:grid; grid-template-columns:repeat(4,1fr); background:rgba(255,255,255,.96); backdrop-filter:blur(14px); box-shadow:0 -7px 25px rgba(7,33,76,.12); }
  .partner-mobile-nav a { min-width:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; color:#5b6c83; font-size:10px; }
  .partner-mobile-nav span { color:#164880; font-size:21px; line-height:1; }
  .partner-mobile-nav .active { color:var(--blue); font-weight:800; }
  .partner-mobile-nav .active span { width:34px; height:27px; display:grid; place-items:center; border-radius:9px; color:#fff; background:var(--blue); font-size:17px; }
  .toast { bottom:82px; width:calc(100% - 26px); text-align:center; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; animation:none!important; } }

/* Readability scale for partner landing and cabinet. */
.brand small,.hero-copy > small,.hero-panel > span,.hero-panel small,.audience-grid article > span,.conditions-cards p,.workflow-list li > span,.workflow-list li > b,.demo-notice span,.access-form label > span,.cabinet-sidebar small,.cabinet-main > header small,.cabinet-stat span,.cabinet-card > p,.cabinet-steps div,.cabinet-steps b,.clients-table th,.clients-table td,.status-pill,.material-card p,.profile-list small,.partner-footer p,.partner-footer > a:last-child { font-size:12px; }
.partner-header nav a,.header-login,.kicker,.coral-button,.ghost-button,.hero-panel b,.section-heading > p,.audience-grid p,.conditions-copy p,.workflow-list p,.roles-section li,.access-copy > p,.demo-notice b,.access-tabs button,.access-form > p,.access-form input:not([type="checkbox"]),.access-form select,.cabinet-sidebar b,.cabinet-sidebar nav button,.logout-button,.partner-id b,.lead-form input,.lead-form select,.lead-form textarea,.lead-form button,.material-button,.empty-clients,.profile-list b,.faq-grid summary,.faq-grid p,.toast { font-size:14px; }
.conditions-cards b { font-size:15px; }

@media(max-width:760px) {
  .brand small { font-size:10.5px; }
  .header-login { font-size:12px; }
  .hero-copy > p { font-size:15px; }
  .cabinet-sidebar nav button,.partner-mobile-nav a { font-size:11.5px; }
}
