:root{--w:#fff;--k:#000;--y:#ffd60a;--o:#ff5b04;--c:#fffbe6;--mute:#f0f0f0;--mute-t:#555;--bd:3px solid var(--k);--sh:6px 6px 0 var(--k);--sh-l:8px 8px 0 var(--k);--sh-s:4px 4px 0 var(--k);--head:"Arial Black","Helvetica Neue",Arial,sans-serif;--body:Arial,"Helvetica Neue",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:16px}
body{margin:0;background:var(--w);color:var(--k);font:17px/1.65 var(--body);overflow-x:hidden}
img,svg{max-width:100%;height:auto}
a{color:var(--k);text-decoration:none;font-weight:700;box-shadow:inset 0 -.4em 0 var(--y)}
a:hover,a:focus-visible{background:var(--y);box-shadow:none}
:focus-visible{outline:4px solid var(--o);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--w);color:var(--k);padding:10px;z-index:99;border:var(--bd);box-shadow:none}
.skip:focus{left:8px;top:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
p{margin:.8em 0}

/* ticker */
.ticker{background:var(--k);color:var(--y);overflow:hidden;white-space:nowrap;font:700 12px/1 var(--body);letter-spacing:.2em;text-transform:uppercase;padding:9px 0}
.ticker-track{display:flex;width:max-content;animation:tick 40s linear infinite}
.ticker-track>div{display:flex}
.ticker span{padding:0 22px}
.ticker span::after{content:"*";margin-left:44px;color:var(--o)}
@keyframes tick{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}html{scroll-behavior:auto}}

/* header */
.hd{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 24px;border-bottom:4px solid var(--k);background:var(--w)}
.brand{display:inline-flex;align-items:center;gap:10px;font:900 24px/1 var(--head);text-transform:uppercase;background:var(--o);padding:8px 14px;border:var(--bd);box-shadow:var(--sh-s);box-shadow:5px 5px 0 var(--k)}
.brand:hover{background:var(--y)}
.mono{display:inline-block;background:var(--k);color:var(--y);padding:4px 7px;font-size:18px}
.hd nav{display:flex;flex-wrap:wrap;gap:8px}
.hd nav a{font:900 13px/1 var(--body);text-transform:uppercase;letter-spacing:.08em;padding:10px 14px;border:var(--bd);background:var(--w);box-shadow:var(--sh-s)}
.hd nav a:hover{background:var(--y)}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-bottom:4px solid var(--k)}
.hl{background:var(--y);padding:48px 32px;border-right:4px solid var(--k);display:flex;flex-direction:column;justify-content:center;gap:22px}
.hr{padding:28px;background:var(--w);display:flex;align-items:center;justify-content:center}
.eyebrow{margin:0;font:900 12px/1 var(--body);letter-spacing:.24em;text-transform:uppercase}
h1{font:900 clamp(32px,4.4vw,58px)/1.02 var(--head);text-transform:uppercase;margin:0;letter-spacing:-.02em;overflow-wrap:anywhere}
.stamp{align-self:flex-start;margin:0;background:var(--k);color:var(--w);font:900 13px/1 var(--body);text-transform:uppercase;letter-spacing:.14em;padding:10px 14px;transform:rotate(-3deg);box-shadow:5px 5px 0 var(--o)}
.stamp2{display:inline-block;margin:24px 0 0;background:var(--k);color:var(--w);font:900 13px/1 var(--body);text-transform:uppercase;letter-spacing:.12em;padding:10px 14px}
figure{margin:0}
.fig{border:var(--bd);box-shadow:var(--sh-l);background:var(--w);margin:2em 8px 2em 0}
.fig img{display:block;width:100%;height:auto}
.hr .fig{margin:0 8px 8px 0}
figcaption{padding:9px 14px;font:700 12px/1.4 var(--body);text-transform:uppercase;letter-spacing:.06em;border-top:var(--bd);background:var(--c)}

/* tiles (numbers) */
.tiles{list-style:none;margin:1.6em 8px 1.6em 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.tiles li{border:var(--bd);background:var(--c);box-shadow:var(--sh-s);padding:12px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}
.tiles b{font:900 clamp(18px,2.4vw,24px)/1.1 var(--head);text-transform:uppercase;overflow-wrap:anywhere}
.tiles span{font:700 12px/1.35 var(--body);text-transform:uppercase;letter-spacing:.06em}
.tiles li:nth-child(odd) b{color:var(--k)}
.tiles li:nth-child(1){background:var(--y)}
.snap{padding:24px;border-bottom:4px solid var(--k);background:var(--w)}
.snap .tiles{max-width:1100px;margin:0 auto}
.tiles-lg b{font-size:clamp(22px,3.2vw,34px)}
.tiles-lg li:nth-child(1){background:var(--o)}
.tiles-lg li:nth-child(2){background:var(--y)}

/* jump grid */
.jump{padding:28px 24px 34px;border-bottom:4px solid var(--k);background:var(--c)}
.jump-t{max-width:1100px;margin:0 auto 16px;font:900 14px/1 var(--body);letter-spacing:.24em;text-transform:uppercase}
.jump ol{list-style:none;margin:0 auto;padding:0;max-width:1100px;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.jump a{display:flex;gap:12px;align-items:flex-start;height:100%;background:var(--w);border:var(--bd);padding:12px;font:700 14px/1.35 var(--body);box-shadow:var(--sh-s)}
.jump a span{flex:none;background:var(--k);color:var(--y);font:900 13px/1 var(--head);padding:5px 6px}
.jump a:hover{background:var(--o)}

/* content column */
.col{max-width:1012px;margin:0 auto;padding:34px 24px 80px}
.sec{margin:0 0 20px}
.answer{border:var(--bd);box-shadow:var(--sh-l);background:var(--c);padding:6px 26px 6px 32px;margin:0 8px 40px 0;border-left:14px solid var(--o);font-size:19px}
.answer p:first-child{font-weight:700;font-size:21px}
h2{display:inline-block;max-width:100%;font:900 clamp(20px,2.6vw,26px)/1.15 var(--head);text-transform:uppercase;background:var(--k);color:var(--w);padding:9px 16px;margin:1.9em 0 .6em;letter-spacing:-.01em;overflow-wrap:anywhere}
.sec>h2:first-child{margin-top:.6em}
h3{font:900 18px/1.3 var(--head);text-transform:uppercase;margin:0;overflow-wrap:anywhere}

/* notes and cards */
.note{border:var(--bd);background:var(--w);box-shadow:var(--sh);padding:2px 22px;margin:1.6em 8px 1.6em 0;border-left:14px solid var(--y)}
.note.warn{border-left-color:var(--o)}
.cards{list-style:none;margin:1.6em 0;padding:0 8px 8px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.card{border:var(--bd);background:var(--c);box-shadow:var(--sh);padding:18px 20px;position:relative;min-width:0}
.card p{margin:.5em 0 0}
.card strong{font:900 16px/1.3 var(--head);text-transform:uppercase;display:block}
.crit .num{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--o);border:var(--bd);font:900 20px/1 var(--head);margin-bottom:10px}
.crit .card:first-child .num{background:var(--y)}
.who .card:first-child{background:var(--y)}
.who .card strong{font-size:15px}
.sm{margin-top:0}
.sm .card{padding:0}
.sm .card a{display:block;padding:16px 20px;box-shadow:none}
.sm .card a:hover{background:var(--y)}

/* steps */
.steps{list-style:none;margin:1.6em 0;padding:0 8px 8px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;counter-reset:s}
.step{border:var(--bd);background:var(--w);box-shadow:var(--sh);padding:0 18px 12px;position:relative}
.step p{margin:.4em 0 0}
.stp{display:inline-block;background:var(--k);color:var(--y);font:900 14px/1 var(--head);text-transform:uppercase;padding:9px 12px;margin:-3px 0 8px -21px;border:var(--bd)}
.step:nth-child(odd){background:var(--c)}

/* accordions */
.acc{border:var(--bd);background:var(--w);box-shadow:var(--sh);margin:0 8px 22px 0}
.acc summary{list-style:none;display:flex;align-items:center;gap:14px;padding:14px 16px;cursor:pointer;background:var(--c)}
.acc summary::-webkit-details-marker{display:none}
.acc summary::marker{content:""}
.acc[open]>summary{border-bottom:var(--bd)}
.acc summary:hover{background:var(--y)}
.acc summary h2,.acc summary h3{margin:0;flex:1;min-width:0}
.acc summary h2{display:block;background:var(--o);color:var(--k);border:var(--bd);box-shadow:var(--sh-s);padding:8px 12px;font-size:clamp(16px,2.1vw,21px)}
.acc.faq summary h3{font-size:clamp(15px,1.9vw,18px)}
.rk-badge{flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 8px;background:var(--k);color:var(--y);font:900 20px/1 var(--head)}
.tog{flex:none;position:relative;width:38px;height:38px;border:var(--bd);background:var(--w);transition:transform .15s}
.tog::before,.tog::after{content:"";position:absolute;left:50%;top:50%;background:var(--k);transform:translate(-50%,-50%)}
.tog::before{width:16px;height:4px}
.tog::after{width:4px;height:16px}
.acc[open]>summary .tog{transform:rotate(45deg);background:var(--o)}
.acc-body{padding:6px 22px 16px}
.acc.faq .acc-body p:first-child{margin-top:.9em}
.page .acc summary h2{background:var(--k);color:var(--w);box-shadow:none;border:0}
@media (prefers-reduced-motion:reduce){.tog{transition:none}}

/* reviews */
.divider{margin:46px 0 30px;border-top:4px solid var(--k);border-bottom:4px solid var(--k);background:var(--y);padding:12px 0;text-align:center;font:900 15px/1 var(--head);letter-spacing:.3em;text-transform:uppercase}
.official{margin:.9em 0 0;font:700 15px/1.4 var(--body);text-transform:uppercase;letter-spacing:.05em}
.official span{background:var(--k);color:var(--w);padding:4px 8px;margin-right:6px}
.rv .tiles{margin-top:1em}
.pgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin:1.6em 8px 1.6em 0}
.pcard{border:var(--bd);box-shadow:var(--sh);background:var(--c);padding:16px 18px}
.pcard p{margin:.4em 0 0}
.lab{display:inline-block;background:var(--k);color:var(--y);font:900 13px/1 var(--head);text-transform:uppercase;letter-spacing:.06em;padding:8px 10px}
.pcard.why{background:var(--y)}
.visit{margin:1.4em 0 .4em}

/* buttons */
.btn{display:inline-block;padding:13px 22px;background:var(--o);color:var(--k);border:var(--bd);box-shadow:5px 5px 0 var(--k);font:900 14px/1 var(--body);text-transform:uppercase;letter-spacing:.08em}
.btn:hover,.btn:focus-visible{background:var(--y);transform:translate(2px,2px);box-shadow:3px 3px 0 var(--k)}
.btn.alt{background:var(--w)}
.cta{margin:2em 8px 0 0;display:flex;flex-wrap:wrap;gap:16px}

/* table */
.table-wrap{overflow-x:auto;margin:1.6em 0 2em;padding:0 10px 10px 0;-webkit-overflow-scrolling:touch}
.table-wrap:focus-visible{outline:4px solid var(--o)}
table{border-collapse:collapse;width:100%;min-width:980px;background:var(--w);border:var(--bd);box-shadow:var(--sh-l);font-size:15px;line-height:1.45}
th,td{padding:10px 12px;vertical-align:top;text-align:left;border:2px solid var(--k)}
thead th{background:var(--k);color:var(--y);font:900 12px/1.3 var(--body);text-transform:uppercase;letter-spacing:.08em}
tbody th{font-weight:700;text-align:left}
td.ns{background:var(--mute);color:var(--mute-t)}
td.rk{font:900 18px/1.2 var(--head);text-align:center}
.rank-table tbody tr:first-child th,.rank-table tbody tr:first-child td{background:var(--y);font-weight:700}
.rank-table tbody tr:nth-child(even) th,.rank-table tbody tr:nth-child(even) td:not(.ns){background:var(--c)}
.rank-table tbody tr:first-child td.ns{background:var(--y)}

/* conclusion poster */
.concl{border:var(--bd);box-shadow:var(--sh-l);background:var(--y);padding:8px 28px 22px;margin:50px 8px 0 0}
.concl h2{background:var(--k);color:var(--y);margin-top:.6em}
.concl p{font-size:19px;font-weight:700}
.concl a{box-shadow:inset 0 -.4em 0 var(--o)}

/* service pages */
.phero{background:var(--y);border-bottom:4px solid var(--k);padding:48px 24px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.phero>*{max-width:1012px;width:100%;margin-left:auto;margin-right:auto}
.page{max-width:900px;margin:0 auto;padding:40px 24px 80px}
.page .answer{font-size:18px}
.page .answer p:first-child{font-size:18px;font-weight:400}

/* footer */
.foot{background:var(--k);color:var(--w);padding:36px 24px;border-top:4px solid var(--y)}
.foot-nav{display:flex;flex-wrap:wrap;gap:12px;max-width:1012px;margin:0 auto 20px}
.foot a{color:var(--k);background:var(--y);box-shadow:none;padding:8px 12px;font:900 12px/1 var(--body);text-transform:uppercase;letter-spacing:.08em}
.foot a:hover{background:var(--o)}
.foot p{max-width:1012px;margin:.5em auto;font:700 13px/1.6 var(--body);text-transform:uppercase;letter-spacing:.08em}
.foot-line{color:var(--y)}

@media (max-width:900px){
.hero{grid-template-columns:1fr}
.hl{border-right:0;border-bottom:4px solid var(--k);padding:36px 20px}
.hd{padding:14px 16px}
.col{padding:26px 16px 60px}
.answer{padding:4px 16px 4px 20px;font-size:17px;border-left-width:10px}
.answer p:first-child{font-size:18px}
.acc-body{padding:4px 14px 14px}
.acc summary{padding:12px;gap:10px}
.concl{padding:6px 16px 18px}
.phero{padding:36px 16px}
.page{padding:28px 16px 60px}
}
@media (max-width:480px){
.hd nav a{padding:9px 10px}
.brand{font-size:19px}
.rk-badge{min-width:36px;height:36px;font-size:16px}
.tog{width:32px;height:32px}
.cards,.steps,.pgrid{grid-template-columns:1fr}
}
