/* ===== testimonials (n1n.ai style masonry) ===== */
.testimonials-section{padding:126px 0 110px;border-top:1px solid var(--line)}
.testimonial-masonry{columns:3;column-gap:16px;margin-top:48px}
.t-card{position:relative;break-inside:avoid;margin-bottom:16px;padding:26px 26px 22px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 6px 20px rgba(48,75,104,.05)}
.t-stars{display:block;color:#f5b301;font-size:15px;letter-spacing:3px}
.t-mark{position:absolute;right:22px;top:14px;color:var(--line);font-family:Georgia,serif;font-size:64px;line-height:1}
.t-text{margin:16px 0 22px;color:var(--ink);font-size:14px;line-height:1.8}
.t-person{display:flex;align-items:center;gap:11px;padding-top:16px;border-top:1px solid var(--line)}
.t-avatar{flex:none;width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--blue-soft)}
.t-person div{display:grid;gap:3px}
.t-person b{font-size:13px}
.t-person small{color:var(--muted);font-size:11px}
.testimonial-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px;padding:30px 20px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.testimonial-stats div{display:grid;justify-items:center;gap:6px}
.testimonial-stats div+div{border-left:1px solid var(--line)}
.testimonial-stats strong{color:var(--blue-dark);font-size:30px;letter-spacing:-.05em}
.testimonial-stats span{color:var(--muted);font-size:11px}

/* ===== partners with real logos ===== */
.partners-section{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:70px;padding:110px 0 125px;border-top:1px solid var(--line)}
.partners-heading h2{margin:0;font-size:clamp(32px,4vw,52px);letter-spacing:-.055em;line-height:1.08}
.partners-heading p:last-child{max-width:330px;margin:22px 0 0;color:var(--muted);font-size:14px;line-height:1.8}
.partners-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.partner-logo{display:flex;align-items:center;justify-content:center;gap:9px;min-height:66px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);transition:.25s ease}
.partner-logo svg{width:22px;height:22px;flex:none;color:var(--pl,#3567ee);transition:transform .25s ease}
.partner-logo b{color:#798993;font-size:12px;font-weight:750;letter-spacing:-.01em;transition:color .25s ease}
.partner-logo:hover{transform:translateY(-3px);border-color:var(--pl,#a9bcfa);box-shadow:0 10px 24px rgba(53,103,238,.1)}
.partner-logo:hover svg{color:var(--pl,#3567ee)}
.partner-logo:hover b{color:var(--ink)}


/* ===== footer ===== */
.site-footer-expanded{display:grid;grid-template-columns:minmax(0,1.45fr) repeat(3,minmax(0,.7fr));align-items:start;gap:42px;padding:58px 0 34px;border-top:1px solid var(--line)}
.footer-brand{display:grid;align-content:start;gap:11px}
.site-footer-expanded .footer-brand{display:grid;align-content:start;gap:11px}
.footer-brand p{margin:0;color:var(--muted);font-size:12px}
.footer-about{max-width:240px;line-height:1.7}
.footer-column{display:grid;align-content:start;gap:12px;max-width:320px}
.site-footer-expanded .footer-column{display:grid;grid-auto-flow:row;align-content:start;gap:12px;align-items:start}
.footer-column h3{margin:0 0 5px;color:var(--ink);font-size:12px}
.footer-column a{color:var(--muted);font-size:11px}
.footer-column a:hover{color:var(--blue)}
.social-links{display:flex;gap:9px;margin-top:14px}
.social-links a{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;color:var(--muted);transition:.2s ease}
.social-links a svg{width:15px;height:15px}
.social-links a:hover{color:var(--blue);border-color:var(--blue);transform:translateY(-2px)}
.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;margin-top:30px;padding-top:17px;border-top:1px solid var(--line);color:#96a3a9;font-size:10px}
.site-footer-expanded .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}

/* ===== dark theme ===== */
html[data-theme="dark"] .t-card{background:var(--panel);border-color:var(--line);box-shadow:0 6px 20px rgba(0,0,0,.25)}
html[data-theme="dark"] .t-mark{color:#2a3945}
html[data-theme="dark"] .testimonial-stats{background:var(--soft);border-color:var(--line)}
html[data-theme="dark"] .partner-logo{background:var(--panel);border-color:var(--line)}
html[data-theme="dark"] .partner-logo svg{color:#a9b8c1}
html[data-theme="dark"] .partner-logo b{color:#a9b8c1}
html[data-theme="dark"] .partner-logo:hover b{color:var(--ink)}
html[data-theme="dark"] .social-links a{border-color:var(--line);color:var(--muted)}

/* ===== responsive ===== */
@media(max-width:900px){.testimonial-masonry{columns:2}.partners-section{grid-template-columns:1fr;gap:38px}.partners-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:680px){
.testimonials-section{padding:88px 0 80px}
.testimonial-masonry{columns:1;gap:0;margin-top:34px}
.t-card{padding:22px 20px 18px}
.testimonial-stats{grid-template-columns:repeat(3,1fr);padding:22px 12px;margin-top:18px}
.testimonial-stats strong{font-size:21px}
.testimonial-stats span{font-size:9px}
.partners-section{padding:80px 0 88px}
.partners-grid{grid-template-columns:repeat(2,1fr);gap:8px}
.partner-logo{min-height:56px}
.site-footer-expanded{gap:26px;padding:45px 0 32px;grid-template-columns:1fr}
.footer-bottom{margin-top:14px;flex-direction:column;gap:5px}
}
@media(max-width:360px){.footer-bottom{flex-direction:column}}

/* ===== compact rhythm + scroll snap (desktop) ===== */
@media(min-width:901px){
.hero{padding:60px 0 72px}
.security-section{padding:90px 0}
.pricing-section{padding:90px 0}
.plans-section{padding-bottom:80px}
.testimonials-section{padding:80px 0 70px}
.partners-section{padding:56px 0 48px}
.site-footer-expanded{padding-top:44px}
}
@media(min-width:901px) and (min-height:620px) and (pointer:fine){
html{scroll-snap-type:y proximity;scroll-padding-top:77px}
.hero,.security-section,.pricing-section,.plans-section,.testimonials-section,.partners-section{scroll-snap-align:start;scroll-snap-stop:always}
.site-footer-expanded{scroll-snap-align:end}
}
/* full module snap on tall desktops; shorter viewports keep gentle proximity */
@media(min-width:901px) and (min-height:760px) and (pointer:fine){
html{scroll-snap-type:y mandatory}
}

/* ===== official brand logo ===== */
.brand .brand-logo{display:block;width:28px;height:28px;border-radius:8px;object-fit:cover;box-shadow:0 0 0 1px rgba(120,140,160,.18)}

/* ===== plans mode toggle ===== */
.plans-toggle{display:flex;justify-content:center;gap:6px;margin:36px 0 30px;padding:5px;border:1px solid var(--line);border-radius:12px;background:var(--soft);width:max-content;max-width:100%;margin-left:auto;margin-right:auto}
.pt-btn{border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:12px;font-weight:750;padding:10px 18px;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease;white-space:nowrap}
.pt-btn.is-active{background:#fff;color:var(--blue-dark);box-shadow:0 3px 10px rgba(40,60,90,.1)}
.pt-btn:hover:not(.is-active){color:var(--ink)}
/* ===== payg panel ===== */
.payg-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;margin-top:6px;padding:52px 56px;border:1px solid #dfeee8;border-radius:22px;background:linear-gradient(115deg,#f8fcfa,#fff);box-shadow:0 18px 55px rgba(47,109,79,.08)}
.payg-copy h3{margin:0;font-size:clamp(30px,3.4vw,44px);letter-spacing:-.05em;line-height:1.1}
.payg-copy h3 span{color:var(--green)}
.payg-copy>p{margin:18px 0 20px;color:var(--muted);font-size:14px;line-height:1.8}
.payg-feats{display:grid;gap:11px;margin:0 0 26px;padding:0;list-style:none;color:#5b696f;font-size:13px}
.payg-feats li{display:flex;gap:9px}
.payg-feats li:before{content:"✓";color:var(--green);font-weight:800}
.payg-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 10px 30px rgba(48,75,104,.07)}
.payg-table th{background:var(--soft);color:#7c8890;font-size:10px;font-weight:800;letter-spacing:.08em;text-align:left;padding:13px 16px}
.payg-table td{padding:13px 16px;border-top:1px solid var(--line);color:var(--ink)}
.payg-table td+td,.payg-table th+th{color:var(--green);font-weight:750;white-space:nowrap}
.payg-table th+th{color:#7c8890;font-weight:800}
.payg-note{margin:12px 2px 0;color:#9aa5a9;font-size:11px}
/* ===== whatsapp widget ===== */
.wa-widget{position:fixed;right:22px;bottom:22px;z-index:60;display:grid;justify-items:end;gap:12px}
.wa-btn{display:grid;place-items:center;width:56px;height:56px;border:0;border-radius:50%;background:#25d366;color:#fff;cursor:pointer;box-shadow:0 10px 26px rgba(37,211,102,.4);transition:transform .2s ease,box-shadow .2s ease}
.wa-btn:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 14px 32px rgba(37,211,102,.5)}
.wa-btn svg{width:30px;height:30px}
.wa-panel{width:min(320px,calc(100vw - 32px));padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel);box-shadow:0 24px 60px rgba(20,35,50,.18)}
.wa-panel-head{display:grid;gap:3px;padding-bottom:13px;margin-bottom:13px;border-bottom:1px solid var(--line)}
.wa-panel-head strong{font-size:14px;color:var(--ink)}
.wa-panel-head span{font-size:11px;color:var(--muted)}
.wa-primary{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid #bfe3cf;border-radius:13px;background:#f2fbf6}
.wa-avatar{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#25d366;color:#fff;flex:none}
.wa-avatar svg{width:22px;height:22px}
.wa-avatar i{position:absolute;right:0;bottom:0;width:11px;height:11px;border:2px solid #f2fbf6;border-radius:50%;background:#39c46a}
.wa-info{display:grid;gap:2px;min-width:0}
.wa-info b{font-size:14px;letter-spacing:.01em;color:var(--ink)}
.wa-info span{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:750;color:var(--green)}
.wa-dot{width:6px;height:6px;border-radius:50%;background:var(--green);animation:wa-pulse 1.6s ease-in-out infinite}
.wa-chat{margin-left:auto;flex:none;padding:9px 13px;border-radius:9px;background:#25d366;color:#fff;font-size:11px;font-weight:800;text-decoration:none;transition:background .2s ease}
.wa-chat:hover{background:#1eb356}
.wa-others{margin-top:13px}
.wa-others>span{display:block;margin-bottom:8px;color:var(--subtle);font-size:10px;font-weight:800;letter-spacing:.08em}
.wa-others-list{display:grid;gap:7px}
.wa-others-list a{display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:12px;font-weight:700;transition:border-color .2s ease,color .2s ease}
.wa-others-list a:before{content:"";width:7px;height:7px;border-radius:50%;background:#25d366;flex:none}
.wa-others-list a:hover{border-color:#25d366;color:var(--ink)}
@keyframes wa-pulse{0%,100%{opacity:.5;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}
/* ===== dark theme ===== */
html[data-theme="dark"] .plans-toggle{background:#18222d;border-color:#344754}
html[data-theme="dark"] .pt-btn.is-active{background:#22303e;color:#dfe9f0;box-shadow:0 3px 10px rgba(0,0,0,.35)}
html[data-theme="dark"] .payg-panel{background:linear-gradient(115deg,#1a2531,#151f29);border-color:#2c3c4a}
html[data-theme="dark"] .payg-table{background:#18222d;border-color:#2c3c4a}
html[data-theme="dark"] .payg-table th{background:#1d2a36;color:#8fa0ac}
html[data-theme="dark"] .payg-table td{border-color:#2c3c4a;color:#d5e0e7}
html[data-theme="dark"] .wa-panel{background:#18222d;border-color:#344754}
html[data-theme="dark"] .wa-primary{background:#1d2f26;border-color:#2e5741}
html[data-theme="dark"] .wa-info b{color:#e6eef3}
html[data-theme="dark"] .wa-others-list a{border-color:#344754;color:#a9b8c2}
html[data-theme="dark"] .pt-btn:hover:not(.is-active){color:#cdd9e0}
/* ===== responsive ===== */
@media(max-width:900px){
.payg-panel{grid-template-columns:1fr;gap:26px;padding:36px 26px}
.payg-copy h3{font-size:34px}
}
@media(max-width:680px){
.plans-toggle{margin-top:26px}
.pt-btn{padding:9px 12px;font-size:11px}
.payg-panel{padding:28px 18px;border-radius:16px}
.payg-table th,.payg-table td{padding:10px 10px;font-size:11px}
.wa-widget{right:14px;bottom:14px}
.wa-btn{width:50px;height:50px}
.wa-btn svg{width:26px;height:26px}
.wa-chat{margin-left:0}
.wa-primary{flex-wrap:wrap}
}
