/* FreeMockTest public site — light, fast, mobile-first. v20260915 */
:root{
  --navy:#0b3d6b;--navy2:#0a2f52;--blue:#1769c0;--sky:#eaf2fb;--gold:#f5a623;
  --ink:#14202e;--muted:#5b6b7c;--line:#e2e8f0;--bg:#f6f8fb;--card:#fff;
  --good:#127a45;--good-bg:#e7f6ee;--bad:#b3261e;--radius:12px;--wrap:1080px;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.6;font-size:16px}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:16px}
.narrow{max-width:760px}
h1,h2,h3{line-height:1.25;color:var(--navy);font-weight:800}
h1{font-size:1.9rem;margin:.2em 0 .4em}
h2{font-size:1.4rem;margin:1.4em 0 .5em}
h3{font-size:1.12rem;margin:1.1em 0 .4em}
p{margin:.6em 0}
ul,ol{margin:.6em 0 .6em 1.3em}
li{margin:.3em 0}

/* header */
.site-header{background:var(--navy);color:#fff;position:sticky;top:0;z-index:40;box-shadow:0 1px 6px rgba(0,0,0,.15)}
.nav{display:flex;align-items:center;gap:16px;min-height:56px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:8px;color:#fff;font-weight:700;font-size:1.15rem}
.brand:hover{text-decoration:none}
.brand b{color:var(--gold)}
.brand img{border-radius:6px;background:#fff}
.nav-links{display:flex;gap:4px 14px;flex-wrap:wrap;margin-left:auto;align-items:center}
.nav-links a{color:#dbe7f5;font-size:.93rem;padding:6px 2px}
.nav-links a:hover{color:#fff}
.nav-cta{background:var(--gold);color:#3a2a00!important;border-radius:8px;padding:7px 14px!important;font-weight:700}
.nav-cta:hover{text-decoration:none;filter:brightness(1.05)}
.nav-toggle{display:none;margin-left:auto;background:transparent;border:1px solid #ffffff55;color:#fff;border-radius:8px;padding:7px 12px;font-size:.9rem;cursor:pointer}
@media(max-width:820px){
  .nav-toggle{display:block}
  .nav-links{display:none;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:2px;padding-bottom:10px}
  .nav-links.open{display:flex}
  .nav-links a{padding:9px 2px;width:100%}
}

/* breadcrumb */
.crumbs{font-size:.83rem;color:var(--muted);padding-block:10px}
.crumbs a{color:var(--muted)}
.crumbs [aria-current]{color:var(--ink);font-weight:600}

/* hero */
.hero{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;padding:34px 0}
.hero .wrap{max-width:var(--wrap)}
.hero h1{color:#fff}
.hero p{color:#e4eefb;max-width:640px;font-size:1.05rem}
.hero .lede{margin-top:.4em}
.stat-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.stat{background:#ffffff1a;border:1px solid #ffffff33;border-radius:10px;padding:10px 14px;min-width:104px}
.stat b{display:block;font-size:1.3rem;color:var(--gold)}
.stat span{font-size:.8rem;color:#dbe7f5}

/* layout */
main{padding-block:22px}
main.wrap{max-width:var(--wrap)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;margin:18px 0;box-shadow:0 1px 2px rgba(16,32,50,.04)}
.card>h2:first-child,.card>h3:first-child{margin-top:0}
.grid{display:grid;gap:16px}
@media(min-width:720px){.grid.cols-2{grid-template-columns:1fr 1fr}.grid.cols-3{grid-template-columns:repeat(3,1fr)}}

/* quick answer */
.quick{background:var(--sky);border-left:4px solid var(--blue);border-radius:8px;padding:14px 16px;font-size:1.02rem}
.quick strong{color:var(--navy)}

/* buttons */
.btn{display:inline-block;background:var(--blue);color:#fff;border:none;border-radius:9px;padding:11px 20px;font-weight:700;font-size:1rem;cursor:pointer;text-align:center}
.btn:hover{text-decoration:none;background:var(--navy)}
.btn-gold{background:var(--gold);color:#3a2a00}
.btn-gold:hover{background:#e6971a;color:#3a2a00}
.btn-ghost{background:transparent;border:1.5px solid var(--blue);color:var(--blue)}
.btn-ghost:hover{background:var(--sky)}
.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}

/* tables */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:.6em 0}
table.data{border-collapse:collapse;width:100%;font-size:.95rem;min-width:420px}
table.data caption{text-align:left;font-weight:700;color:var(--navy);padding:6px 0}
table.data th,table.data td{border:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}
table.data thead th{background:var(--navy);color:#fff;font-weight:600}
table.data tbody tr:nth-child(even){background:#f4f7fb}
table.data td:first-child{font-weight:600}

/* exam cards */
.exam-cards{display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:640px){.exam-cards{grid-template-columns:1fr 1fr}}
.exam-card{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:#fff;display:flex;flex-direction:column;gap:8px}
.exam-card h3{margin:0}
/* fact strip under a heading: also used inside .card on the content pages, not only in .exam-card */
.meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.85rem}
.exam-card .soon{color:var(--muted);font-style:italic;font-size:.85rem}

/* samples */
.samples{list-style:none;margin:0;padding:0;counter-reset:s}
.sample{border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:12px 0;background:#fff}
.sample .tag{display:inline-block;background:var(--sky);color:var(--navy);font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:20px;margin-bottom:6px}
.sample .q{counter-increment:s;font-weight:600}
.sample .q::before{content:"Q" counter(s) ". ";color:var(--blue)}
.opts{margin:.5em 0 .2em 1.2em}
.opts li{margin:.2em 0}
details.ans{margin-top:8px;border-top:1px dashed var(--line);padding-top:8px}
details.ans summary,details.faq summary{cursor:pointer;font-weight:700;color:var(--blue);list-style:none}
details.ans summary::-webkit-details-marker,details.faq summary::-webkit-details-marker{display:none}
details.ans summary::before,details.faq summary::before{content:"▸ ";}
details[open].ans summary::before,details[open].faq summary::before{content:"▾ ";}
details.ans[open] summary{color:var(--good)}
.expl{margin-top:8px;background:var(--good-bg);border-radius:8px;padding:10px 12px;font-size:.95rem}
.expl::before{content:"Solution: ";font-weight:700;color:var(--good)}

/* faq */
details.faq{border-bottom:1px solid var(--line);padding:12px 0}
details.faq p{margin:.5em 0 0}

/* reviewed / disclaimer */
.reviewed{background:#fbfcfe;border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:.9rem;color:var(--muted);margin:18px 0}
.reviewed strong{color:var(--ink)}
.link-list{columns:2;font-size:.95rem}
@media(max-width:560px){.link-list{columns:1}}

/* footer */
.site-footer{background:var(--navy2);color:#c7d5e5;margin-top:36px;padding:28px 0 18px;font-size:.9rem}
.foot-grid{display:grid;gap:22px;grid-template-columns:1fr}
@media(min-width:720px){.foot-grid{grid-template-columns:2fr 1fr 1fr 1fr}}
.site-footer a{color:#c7d5e5}
.site-footer a:hover{color:#fff}
.brand-foot{font-size:1.15rem;color:#fff;font-weight:700;margin-bottom:6px}
.brand-foot b{color:var(--gold)}
.foot-h{color:#fff;font-weight:700;margin-bottom:8px}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{margin:.35em 0}
.disclaimer{border-top:1px solid #ffffff22;margin-top:22px;padding-top:14px;font-size:.8rem;color:#9fb2c7}
.note{font-size:.85rem;color:var(--muted)}
.warn{color:var(--bad);font-weight:600}

/* prose tables: sentences wrap instead of scrolling sideways; on phones each row becomes a card */
table.data.prose{min-width:0}
@media(max-width:560px){
  table.data.prose thead{display:none}
  table.data.prose tr{display:block;border:1px solid var(--line);border-radius:10px;margin:0 0 10px;background:#fff;overflow:hidden}
  table.data.prose tbody tr:nth-child(even){background:#fff}
  table.data.prose td{display:block;border:0;padding:6px 12px}
  table.data.prose td:first-child{background:var(--sky);color:var(--navy);padding-block:8px}
  table.data.prose td[data-label]::before{content:attr(data-label);display:block;font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
}
