/* 247teflcheck.com — base stylesheet */
:root{
  --ink:#1a1a1a; --muted:#4a4a4a; --bg:#ffffff; --line:#e6e1d6;
  --brand:#0f4c5c; --brand-dark:#0a3540; --accent:#e87722;
  --awin-badge:#2a7a3b;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{position:static;display:inline-block;padding:8px;background:#fff;z-index:999}

/* Header */
.site-header{background:var(--brand);padding:16px 0}
.site-header .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.logo{color:#fff;font-weight:800;font-size:1.25rem}
.logo .dot{color:#9fd8c9}
.site-header nav{display:flex;gap:18px;flex-wrap:wrap}
.site-header nav a{color:#e8f4f2;font-weight:600;font-size:0.92rem}
.site-header nav a:focus, .site-header nav a:hover{color:#fff;outline:2px solid #fff;outline-offset:2px}

/* Breadcrumbs */
.breadcrumbs{background:#f6f3ec;padding:10px 0;font-size:0.85rem;border-bottom:1px solid var(--line)}
.breadcrumbs .sep{margin:0 6px;color:#999}

/* Verdict box */
.verdict-box{background:linear-gradient(135deg,#0f4c5c 0%,#0a3540 100%);color:#fff;border-radius:14px;padding:26px 28px;margin:22px 0 30px}
.verdict-box .eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:#9fd8c9;font-weight:800}
.verdict-box p{font-size:1.08rem;margin:8px 0 0}
.verdict-box a{color:#ffd814;font-weight:700}

h1{font-size:2rem;line-height:1.2;margin:0 0 10px}
h2{font-size:1.4rem;margin:34px 0 12px}
h3{font-size:1.1rem;margin:20px 0 8px}
.hero{padding:34px 0 6px}
.last-updated{font-size:.82rem;color:#8a8a8a;margin-top:4px}
.data-source-note{font-size:.82rem;color:#8a8a8a;font-style:italic}

/* Tables */
table{width:100%;border-collapse:collapse;margin:16px 0 24px;font-size:.94rem}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
th{background:#f6f3ec;font-weight:700}

/* Cards / employer type list */
.type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0 28px}
.type-card{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:#fafaf7}
.type-card h3{margin-top:0}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line);padding:14px 0}
.faq-item h3{margin:0 0 6px}

/* Related pages */
.related-links{background:#f6f3ec;border-radius:12px;padding:20px 24px;margin:34px 0}
.related-links ul{margin:8px 0 0;padding-left:18px}

/* Inline disclosure */
.affiliate-disclosure{font-size:.85rem;color:#6a6a6a;background:#f9f7f1;border-left:3px solid var(--accent);padding:8px 14px;margin:14px 0}

/* Footer */
.site-footer{background:#12181b;color:#c9d1d3;padding:44px 0 24px;margin-top:50px}
.footer-cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:26px}
.footer-cols a{display:block;color:#9fd8c9;margin:4px 0;font-size:.88rem}
.footer-heading{color:#fff;font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.footer-brand{color:#fff;font-weight:800;font-size:1.1rem;margin:0 0 6px}
.disclosure-footer{font-size:.82rem;color:#9aa3a5;border-top:1px solid #26302f;padding-top:18px;margin-top:26px}
.copyright{font-size:.78rem;color:#6d7679;margin-top:10px}
@media (max-width:800px){.footer-cols{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.footer-cols{grid-template-columns:1fr}}

/* Cookie banner */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;background:#0a3540;color:#fff;z-index:1000;padding:14px 0;box-shadow:0 -4px 16px rgba(0,0,0,.2)}
.cookie-banner .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.cookie-banner p{margin:0;font-size:.9rem;max-width:640px}
.cookie-banner a{color:#9fd8c9}
.cookie-actions{display:flex;gap:10px}
.cookie-actions button{border:none;border-radius:8px;padding:9px 18px;font-weight:700;cursor:pointer}
#cookie-accept{background:var(--accent);color:#fff}
#cookie-accept:focus{outline:2px solid #fff;outline-offset:2px}
#cookie-decline{background:transparent;color:#fff;border:1px solid #4a6a70}
#cookie-decline:focus{outline:2px solid #fff;outline-offset:2px}

/* Homepage */
.home-hero{background:linear-gradient(135deg,#0f4c5c 0%,#0a3540 100%);color:#fff;padding:64px 0 54px;text-align:center}
.home-hero h1{font-size:2.4rem}
.home-hero p{font-size:1.15rem;color:#dceee8;max-width:680px;margin:14px auto 0}
.country-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:26px 0 40px}
.country-card{border:1px solid var(--line);border-radius:14px;padding:20px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.country-card h3{margin-top:0}
.country-card .country-links a{display:block;margin:6px 0;font-weight:600}

/* Forms */
form label{display:block;margin:12px 0 4px;font-weight:600}
form input,form textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-size:1rem}
form button{margin-top:16px;background:var(--brand);color:#fff;border:none;padding:12px 26px;border-radius:8px;font-weight:700;cursor:pointer}
form button:hover{background:var(--brand-dark)}

.not-found{text-align:center;padding:70px 0}

/* Focus visibility */
a:focus, button:focus{outline:2px solid var(--accent);outline-offset:2px}

/* ============================================================
   AFFILIATE CARDS — mandatory on every site (SITE_BUILD_STANDARDS v3.1)
   Do not remove or modify without updating Section C in MASTER_UPLOAD.md
   ============================================================ */
.awin-card {
  background: linear-gradient(135deg, #ffffff 0%, #fdf9f2 100%);
  border: 1px solid #f0d9b0;
  border-radius: 12px;
  padding: 20px 24px;
  margin: 24px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.awin-card:hover {
  box-shadow: 0 6px 18px rgba(0,0,0,0.10);
  transform: translateY(-2px);
}
.awin-card .merchant-badge {
  font-size: 0.70rem;
  font-weight: 800;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: #2a7a3b;
}
.awin-card .card-title {
  font-size: 1rem;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0;
  line-height: 1.3;
}
.awin-card .card-benefit {
  font-size: 0.90rem;
  color: #4a4a4a;
  margin: 0;
  line-height: 1.5;
}
.awin-card .cta-btn {
  display: inline-block;
  background: #e87722;
  color: #fff;
  font-weight: 800;
  font-size: 0.88rem;
  padding: 10px 22px;
  border-radius: 8px;
  text-decoration: none;
  align-self: flex-start;
  transition: background 0.2s ease;
}
.awin-card .cta-btn:hover {
  background: #c9661a;
}
.amz-inline {
  color: #b45309;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  font-weight: 500;
}
.amz-inline:hover {
  color: #92400e;
}
.affiliate-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px;
  margin: 24px 0;
}
