/* Shared UI system: swapspacevssimpleswapreviews.com
   A genuine two-product comparison identity: neutral editorial canvas,
   SimpleSwap's real blue as one accent, a plain neutral slate as the other
   (SwapSpace's own brand color isn't asserted here). Comparison rails,
   mirrored rows and split-screen panels replace generic stat-card grids. */
:root{
  --ink:#14181f;--ink2:#4b5563;--ink3:#8994a3;
  --paper:#f7f8fa;--card:#ffffff;--steel:#eef0f3;
  --graphite:#12161d;--graphite2:#1c222c;
  --ss-blue:#0f75fc;--ss-blue-dark:#0b5fd1;--ss-blue-tint:#eaf3ff;
  --sp-slate:#55606e;--sp-slate-dark:#3f4854;--sp-slate-tint:#eef0f2;
  --line:#e2e5ea;
  --green:#1c8a5a;--green-tint:#e6f4ec;
  --amber:#a8660f;--amber-tint:#faf1e0;
  --radius:12px;--shadow:0 14px 34px -20px rgba(10,16,28,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Poppins',system-ui,sans-serif;line-height:1.25;margin:0;color:var(--ink);font-weight:600}
a{color:var(--ss-blue-dark);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.wrap-narrow{max-width:840px;margin:0 auto;padding:44px 24px 60px}
h1{font-size:clamp(1.85rem,3.2vw,2.35rem);font-weight:700;margin:0 0 12px;letter-spacing:-.01em}
h2{font-size:clamp(1.2rem,2vw,1.45rem);margin:0 0 8px}
h3{font-size:1rem;margin:0 0 4px}
.lede{font-size:1.02rem;color:var(--ink2);line-height:1.6;margin:0}
.eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.ti{width:18px;height:18px;flex:none;display:inline-block;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}

.btn{display:inline-flex;align-items:center;gap:8px;background:var(--graphite);color:#fff;font-weight:600;padding:11px 20px;border-radius:8px;border:none;cursor:pointer;font-size:.9rem;font-family:'Inter',sans-serif}
.btn:hover{text-decoration:none;background:var(--graphite2)}
.btn.ghost{background:transparent;color:var(--ink);border:1.4px solid var(--line)}
.btn.ghost:hover{background:var(--card)}
.btn.ghost.on-dark{color:#fff;border-color:rgba(255,255,255,.32)}
.btn.ghost.on-dark:hover{background:rgba(255,255,255,.08)}
.pill-link{display:inline-flex;align-items:center;gap:6px;border:1.3px solid var(--line);color:var(--ink2);font-weight:600;font-size:.84rem;padding:8px 14px;border-radius:999px}
.pill-link:hover{border-color:var(--ss-blue);color:var(--ss-blue-dark);text-decoration:none;background:var(--ss-blue-tint)}
.pill-link .ti{width:12px;height:12px}
.outlink{font-weight:600;font-size:.87rem;color:var(--ss-blue-dark);display:inline-flex;align-items:center;gap:5px}
.outlink .ti{width:12px;height:12px}

.nav{position:sticky;top:0;z-index:50;background:rgba(247,248,250,.92);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:66px;gap:16px}
.brand{display:flex;align-items:center;gap:9px;font-family:'Poppins',system-ui,sans-serif;font-weight:600;font-size:.94rem;color:var(--ink)}
.brand .mark{width:30px;height:30px;border-radius:8px;background:var(--graphite);display:grid;place-items:center;color:#fff;flex:none}
.brand .mark .ti{width:15px;height:15px}
.navlinks{display:flex;gap:20px;align-items:center}
.navlinks a{color:var(--ink2);font-weight:500;font-size:.87rem}
.navlinks a:hover{color:var(--ss-blue-dark);text-decoration:none}
.navlinks a.on{color:var(--ss-blue-dark);font-weight:600}
.navcta{display:flex;align-items:center;gap:16px}
@media(max-width:820px){.navlinks{display:none}}

section{padding:52px 0}
.sec-head{max-width:70ch;margin:0 0 24px}
.sec-head p{color:var(--ink2);font-size:.95rem;margin:6px 0 0}
.alt{background:var(--card)}
.on-steel{background:var(--steel)}
.on-graphite{background:var(--graphite);color:#dde3ec}
.on-graphite h2{color:#fff}
.on-graphite .sec-head p{color:#9aa7bb}

/* hero */
.hero{background:linear-gradient(155deg,var(--graphite),#0a0d12);color:#dde3ec;padding:50px 0 42px}
.hero h1{color:#fff}
.hero .lede{color:#b7c1d1;max-width:64ch}
.hero .eyebrow{color:#7fb6fb}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.direct-answer{margin-top:18px;padding:16px 20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-left:3px solid var(--ss-blue);border-radius:8px;max-width:70ch}
.direct-answer p{margin:0;color:#e4e9f0;font-size:.96rem;line-height:1.6}
.direct-answer.on-light{background:var(--ss-blue-tint);border-color:var(--line);border-left-color:var(--ss-blue)}
.direct-answer.on-light p{color:var(--ink2)}
.direct-answer.on-light strong{color:var(--ink)}

/* product chips: identify which side of the comparison a label belongs to */
.pchip{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:3px 9px;border-radius:999px}
.pchip.sp{background:var(--sp-slate-tint);color:var(--sp-slate-dark)}
.pchip.ss{background:var(--ss-blue-tint);color:var(--ss-blue-dark)}
.pchip .dot{width:6px;height:6px;border-radius:50%;background:currentColor}

/* comparison table: real table, mirrored column heads by product */
.cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}
.cmp{width:100%;border-collapse:collapse;background:var(--card);min-width:680px}
.cmp th,.cmp td{padding:13px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;font-size:.87rem}
.cmp thead th{font-family:'Poppins',system-ui,sans-serif;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:#fff}
.cmp thead th.param-h{background:var(--graphite);color:#dde3ec}
.cmp thead th.sp-h{background:var(--sp-slate)}
.cmp thead th.ss-h{background:var(--ss-blue)}
.cmp tbody tr:last-child td{border-bottom:none}
.cmp td:first-child{color:var(--ink);font-weight:600;font-family:'Poppins',system-ui,sans-serif;white-space:nowrap}
.cmp td.sp-cell{border-left:1px solid var(--line)}
.cmp td.ss-cell{border-left:1px solid var(--line)}
.cmp .note-row td{background:var(--steel);font-size:.82rem;color:var(--ink3);font-style:italic}

/* the biggest difference: split rail diagram */
.rail-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;overflow-x:auto}
.rail-card svg{width:100%;min-width:760px;height:auto;display:block}

/* use-case matrix: two mirrored lists, not pros/cons scoring */
.matrix-split{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
@media(max-width:760px){.matrix-split{grid-template-columns:1fr}}
.matrix-col{padding:24px 26px;background:var(--card)}
.matrix-col.sp{border-right:1px solid var(--line)}
@media(max-width:760px){.matrix-col.sp{border-right:none;border-bottom:1px solid var(--line)}}
.matrix-col h3{font-family:'Poppins',system-ui,sans-serif;font-size:1rem;margin:0 0 16px;display:flex;align-items:center;gap:9px}
.matrix-col.sp h3{color:var(--sp-slate-dark)}
.matrix-col.ss h3{color:var(--ss-blue-dark)}
.matrix-col .m-dot{width:10px;height:10px;border-radius:50%;background:currentColor}
.matrix-list{margin:0;padding:0;list-style:none;display:grid;gap:13px}
.matrix-list li{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--ink2);line-height:1.5}
.matrix-list li:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--ink3);flex:none;margin-top:8px}

/* review comparison strip: theme -> both feedback columns */
.theme-strip{border-top:1px solid var(--line)}
.theme-row{display:grid;grid-template-columns:160px 1fr 1fr;gap:0;border-bottom:1px solid var(--line)}
@media(max-width:760px){.theme-row{grid-template-columns:1fr}}
.theme-row .t-label{padding:16px 18px;font-family:'Poppins',system-ui,sans-serif;font-weight:600;font-size:.88rem;color:var(--ink);background:var(--steel);display:flex;align-items:center;margin:0}
@media(max-width:760px){.theme-row .t-label{background:var(--card);padding-bottom:6px}}
.theme-row .t-cell{padding:16px 18px;font-size:.87rem;color:var(--ink2);line-height:1.55;border-left:1px solid var(--line)}
@media(max-width:760px){.theme-row .t-cell{border-left:none;border-top:1px solid var(--line)}}
.theme-row .t-cell .t-src{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.theme-row .t-cell.sp .t-src{color:var(--sp-slate-dark)}
.theme-row .t-cell.ss .t-src{color:var(--ss-blue-dark)}

/* review cards: real quotes with source + platform logo */
.rg-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:thin}
.rg-card{flex:0 0 300px;scroll-snap-align:start;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;display:flex;flex-direction:column}
.rg-card p{margin:0 0 14px;color:var(--ink);font-size:.9rem;line-height:1.55;flex:1}
.rg-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:12px;font-size:.8rem;color:var(--ink3)}
.rg-foot b{color:var(--ink);font-weight:600}
.rg-logo{height:16px;width:auto;display:block}
.rg-stars{display:inline-flex;gap:1px;color:#f0a800}
.rg-stars .ti{width:12px;height:12px}

/* video: single featured embed + compact selectors */
.video-featured{max-width:640px}
.video-featured .ev-frame{position:relative;width:100%;padding-top:56.25%;border-radius:12px;overflow:hidden;background:#0a0d12;border:1px solid var(--line)}
.video-featured .ev-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-featured .ev-cap{margin:10px 0 0;font-size:.82rem;color:var(--ink3)}
.video-selectors{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;max-width:640px}
@media(max-width:560px){.video-selectors{grid-template-columns:1fr}}
.video-select{display:flex;align-items:center;gap:12px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:9px;cursor:pointer;font-family:inherit}
.video-select:hover{border-color:var(--ss-blue)}
.video-select img{width:78px;height:50px;object-fit:cover;border-radius:6px;flex:none;display:block}
.video-select span{font-size:.83rem;color:var(--ink);font-weight:600;line-height:1.35}

/* mobile/fiat feature check grid */
.feature-rows{border-top:1px solid var(--line)}
.feature-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:0;border-bottom:1px solid var(--line);align-items:center}
@media(max-width:640px){.feature-row{grid-template-columns:1fr}}
.feature-row .f-label{padding:14px 18px;font-size:.88rem;color:var(--ink);font-weight:600}
@media(max-width:640px){.feature-row .f-label{padding-bottom:6px}}
.feature-row .f-val{padding:14px 14px;text-align:center;font-size:.82rem;color:var(--ink2);border-left:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:6px}
@media(max-width:640px){.feature-row .f-val{border-left:none;border-top:1px solid var(--line);justify-content:flex-start;text-align:left;padding-left:18px}}
.feature-row .f-val .ti{width:16px;height:16px;flex:none}
.feature-row .f-val.yes .ti{color:var(--green)}
.feature-row .f-val.partial{color:var(--amber)}
.feature-head{display:grid;grid-template-columns:1.3fr 1fr 1fr;font-family:'Poppins',system-ui,sans-serif;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff}
@media(max-width:640px){.feature-head{display:none}}
.feature-head span{padding:10px 10px;text-align:center}
.feature-head span:first-child{text-align:left;padding-left:18px;background:var(--graphite)}
.feature-head span:nth-child(2){background:var(--sp-slate)}
.feature-head span:nth-child(3){background:var(--ss-blue)}

/* trade-off matrix: compact, no scores */
.tradeoff{border-top:1px solid var(--line)}
.tr-row{display:grid;grid-template-columns:180px 1fr 1fr;border-bottom:1px solid var(--line)}
@media(max-width:700px){.tr-row{grid-template-columns:1fr}}
.tr-row .tr-label{padding:14px 18px;font-family:'Poppins',system-ui,sans-serif;font-weight:600;font-size:.86rem;color:var(--ink);background:var(--steel);margin:0}
@media(max-width:700px){.tr-row .tr-label{padding-bottom:6px}}
.tr-row .tr-cell{padding:14px 18px;font-size:.86rem;color:var(--ink2);line-height:1.5;border-left:1px solid var(--line)}
@media(max-width:700px){.tr-row .tr-cell{border-left:none;border-top:1px solid var(--line)}}

.cta-block{background:var(--graphite);border-radius:16px;padding:30px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#fff}
.cta-block h2{margin:0 0 4px;color:#fff;font-size:1.15rem}
.cta-block p{margin:0;color:#9aa7bb;font-size:.88rem}

/* FAQ */
.qa-group{margin-bottom:30px}
.qa-group:last-child{margin-bottom:0}
.qa-group-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ss-blue-dark);margin:0 0 10px}
.qa-item{border-bottom:1px solid var(--line);padding:16px 0}
.qa-item:first-child{border-top:1px solid var(--line)}
.qa-q{margin:0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;font-family:'Poppins',system-ui,sans-serif;font-weight:600;font-size:.98rem;color:var(--ink)}
.qa-q::-webkit-details-marker{display:none}
.qa-q::marker{content:""}
.qa-q:after{content:"+";color:var(--ss-blue-dark);font-size:1.15rem;line-height:1;flex:none}
details[open] .qa-q:after{content:"\2013"}
.qa-a{margin:10px 0 0;color:var(--ink2);font-size:.92rem;line-height:1.6;max-width:74ch}

footer{background:var(--graphite);color:#93a0b5;padding:38px 0 22px;margin-top:6px}
.foot-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-bottom:20px}
footer .brand{color:#fff}
footer .brand .mark{background:rgba(255,255,255,.12)}
footer .navlinks a{color:#93a0b5;font-weight:500}
footer .navlinks a:hover{color:#fff}
.foot-note{margin:0;font-size:.83rem;color:#7c8aa0;max-width:70ch;line-height:1.6}
.foot-note a{color:#8fb6f5;text-decoration:underline}
.fnote{border-top:1px solid rgba(255,255,255,.1);margin-top:16px;padding-top:12px;font-size:.76rem;color:#5d6b80}

/* QA 2026-09-18: навигация доступна на мобильном; CTA в шапке не переносится */
@media(max-width:840px){
  footer .navlinks{display:flex!important;flex-wrap:wrap;gap:10px 18px}
  footer .navlinks a{font-size:.88rem;padding:2px 0}
}
@media(max-width:520px){
  header .btn,header .navcta .btn,header .hdr-cta .btn,header .pill-link{
    white-space:nowrap;font-size:.78rem;padding:8px 12px}
}

/* QA 2026-09-18 · типографика: висячие строки и длина строки */
h1,h2,h3{text-wrap:balance}
p,li,figcaption,blockquote{text-wrap:pretty}
/* комфортная длина строки для прозы (не трогает карточки и таблицы) */
main section > .wrap > p,
main section > .wrap > ul > li,
details > p, details .faq-body p, details .qa-a,
.faq-body p, .qa p, .tp-review > p{max-width:74ch}

/* мягкий предел длины строки: связывает только в блоках шире ~700px */
main p,main li{max-width:78ch}
main .wrap > p[align=center],main [style*="text-align:center"] p{max-width:none}
main table p,main td p,main th p{max-width:none}

/* QA 2026-09-18 · узкие экраны 320–400px: шапка и бегущие строки не выталкивают страницу */
@media(max-width:400px){
  header .wrap{padding-left:14px;padding-right:14px;gap:8px}
  header .brandtext{font-size:.88rem;line-height:1.2}
  header .brand .mark{width:26px;height:26px}
  header .btn,header .pill-link,header .navcta .btn{font-size:.72rem;padding:7px 10px;white-space:nowrap}
  header .navcta{min-width:0;flex-shrink:1}
  header .brand{min-width:0;flex-shrink:1}
}
/* бегущие строки и любые дорожки не должны растягивать документ */
.marquee,.marquee-wrap,[class*="marquee"]{overflow:hidden;max-width:100%}
.navtoggle,.navtoggle *{max-width:100%}
@media(max-width:820px){
  header .navlinks{max-width:100%;flex-wrap:wrap}
}

/* QA 2026-09-18 (правка) · до 400px шапка переносится в два ряда, а не распирает страницу */
@media(max-width:400px){
  header .wrap{flex-wrap:wrap;height:auto;min-height:0;row-gap:8px;
    padding-top:10px;padding-bottom:10px;align-items:center}
  header .brand{flex:1 1 auto;min-width:0}
  header .navcta{flex:0 0 auto;min-width:0}
  header .btn,header .pill-link,header .navcta .btn{
    white-space:normal;font-size:.72rem;padding:7px 10px;max-width:100%}
  header .brandtext{font-size:.85rem}
}
