/* =========================================================
   PERKESO Job Vacancy Reporting Amendment — Landing Page
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;600;700&display=swap');

:root{
  --primary:#F2AA24;
  --primary-dark:#d6900f;
  --secondary:#B7A99A;
  --dark:#504538;
  --accent:#D90000;
  --bg:#F2F1EF;
  --surface:#FFFFFF;
  --text:#3A322B;
  --text-muted:#7A6F63;
  --border:rgba(80,69,56,0.10);
  --shadow-sm: 0 2px 10px rgba(80,69,56,0.06);
  --shadow-md: 0 10px 30px rgba(80,69,56,0.10);
  --shadow-lg: 0 22px 60px rgba(80,69,56,0.16);
  --radius-sm: 12px;
  --radius-md: 20px;
  --radius-lg: 28px;
  --font-display:'Space Grotesk', 'Noto Sans SC', sans-serif;
  --font-body:'Plus Jakarta Sans', 'Noto Sans SC', sans-serif;
  --container: 1180px;
  --google-form: #7372fe;
  --google-form-dark: #5746e3;
}

html[data-theme="dark"]{
  --bg:#211C17;
  --surface:#2B2420;
  --text:#F2EFEA;
  --text-muted:#C9BEB2;
  --border:rgba(242,241,239,0.10);
  --shadow-sm: 0 2px 10px rgba(0,0,0,0.25);
  --shadow-md: 0 10px 30px rgba(0,0,0,0.35);
  --shadow-lg: 0 22px 60px rgba(0,0,0,0.45);
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }

body{
  font-family:var(--font-body);
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  transition:background .3s ease, color .3s ease;
}

img{ max-width:100%; display:block; }
a{ text-decoration:none; color:inherit; }
ul{ list-style:none; }
button{ font-family:inherit; cursor:pointer; border:none; background:none; }

.container{ max-width:var(--container); margin:0 auto; padding:0 24px; }
section{ position:relative; }

.orb{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.35; pointer-events:none; z-index:0; }

h1,h2,h3,h4{ font-family:var(--font-display); color:var(--dark); letter-spacing:-0.01em; line-height:1.15; }
html[data-theme="dark"] h1, html[data-theme="dark"] h2, html[data-theme="dark"] h3, html[data-theme="dark"] h4{ color:#F7F4F0; }

.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--primary-dark); background:rgba(242,170,36,0.14);
  padding:7px 16px; border-radius:999px; margin-bottom:18px;
}
.eyebrow svg{ width:14px; height:14px; }

.section-head{ max-width:680px; margin:0 auto 52px; text-align:center; }
.section-head h2{ font-size:clamp(1.7rem, 3.6vw, 2.6rem); margin-bottom:14px; }
.section-head p{ color:var(--text-muted); font-size:1.05rem; }

.fade-up{ opacity:0; transform:translateY(24px); transition:opacity .6s ease, transform .6s ease; }
.fade-up.visible{ opacity:1; transform:none; }

/* NAVBAR */
#navbar{ position:sticky; top:0; z-index:200; transition:background .3s ease, backdrop-filter .3s ease, box-shadow .3s ease; }
.nav-inner{ display:flex; align-items:center; justify-content:space-between; padding:16px 24px; max-width:var(--container); margin:0 auto; }
.brand{ display:flex; align-items:center; gap:10px; font-family:var(--font-display); font-weight:700; font-size:1.05rem; color:var(--dark); }
html[data-theme="dark"] .brand{ color:#F7F4F0; }
.brand img{ height:34px; border-radius:9px; }
.brand small{ display:block; font-family:var(--font-body); font-weight:500; font-size:.68rem; color:var(--text-muted); letter-spacing:.02em; }

.nav-links{ display:flex; align-items:center; gap:30px; }
.nav-links a{ font-size:.92rem; font-weight:600; color:var(--text); opacity:.8; transition:opacity .2s ease; position:relative; }
.nav-links a:hover{ opacity:1; }

.nav-right{ display:flex; align-items:center; gap:14px; }
.brand-img{ height:34px; border-radius:9px; }
.nav-title{font-size: 15px; font-weight: bold;}

.lang-switch{ display:flex; align-items:center; background:var(--surface); border:1px solid var(--border); border-radius:999px; padding:3px; box-shadow:var(--shadow-sm); }
.lang-btn{ padding:6px 13px; font-size:.78rem; font-weight:700; border-radius:999px; color:var(--text-muted); transition:all .2s ease; }
.lang-btn.active{ background:var(--dark); color:#fff; }

.theme-toggle{ width:38px; height:38px; border-radius:50%; background:var(--surface); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; box-shadow:var(--shadow-sm); color:var(--dark); }
html[data-theme="dark"] .theme-toggle{ color:#F7F4F0; }
.theme-toggle svg{ width:17px; height:17px; }
.theme-toggle .icon-moon{ display:none; }
html[data-theme="dark"] .theme-toggle .icon-sun{ display:none; }
html[data-theme="dark"] .theme-toggle .icon-moon{ display:block; }

.nav-cta{ background:var(--dark); color:#fff; padding:11px 22px; border-radius:999px; font-size:.88rem; font-weight:700; box-shadow:var(--shadow-sm); transition:transform .2s ease, box-shadow .2s ease; white-space:nowrap; }
.nav-cta:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md); }

.hamburger{ display:none; width:40px; height:40px; border-radius:10px; border:1px solid var(--border); background:var(--surface); align-items:center; justify-content:center; flex-direction:column; gap:4px; }
.hamburger span{ width:18px; height:2px; background:var(--dark); border-radius:2px; transition:all .25s ease; }
html[data-theme="dark"] .hamburger span{ background:#F7F4F0; }

.mobile-menu{ display:none; flex-direction:column; gap:2px; background:var(--surface); border-top:1px solid var(--border); padding:10px 24px 20px; }
.mobile-menu.open{ display:flex; }
.mobile-menu a{ padding:13px 4px; font-weight:600; border-bottom:1px solid var(--border); font-size:.95rem; }
.mobile-menu .nav-cta{ margin-top:14px; text-align:center; display:block; }

/* HERO */
.hero{ padding:74px 0 90px; overflow:hidden; }
.hero .orb.o1{ width:420px; height:420px; background:var(--primary); top:-160px; right:-120px; }
.hero .orb.o2{ width:320px; height:320px; background:var(--secondary); bottom:-140px; left:-100px; opacity:.25; }

.hero-inner{ display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; position:relative; z-index:1; }
.hero-text h1{ font-size:clamp(2.1rem, 4.6vw, 3.4rem); margin-bottom:20px; }
.hero-text h1 .hl{ color:var(--primary-dark); position:relative; white-space:nowrap; }
.hero-text p.sub{ font-size:1.08rem; color:var(--text-muted); max-width:540px; margin-bottom:32px; }
.hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; margin-bottom:36px; }
.btn{ display:inline-flex; align-items:center; gap:9px; padding:15px 28px; border-radius:999px; font-weight:700; font-size:.96rem; transition:transform .22s ease, box-shadow .22s ease, background .22s ease; }
.btn svg{ width:18px; height:18px; }
.btn-primary{ background:var(--dark); color:#fff; box-shadow:0 10px 24px rgba(80,69,56,0.28); }
.btn-primary:hover{ transform:translateY(-3px); box-shadow:0 16px 32px rgba(80,69,56,0.34); }
.btn-outline{ background:var(--surface); color:var(--dark); border:1.5px solid var(--border); }
html[data-theme="dark"] .btn-outline{ color:#F7F4F0; }
.btn-outline:hover{ transform:translateY(-3px); box-shadow:var(--shadow-md); }
.btn-whatsapp{
  background:#25D366;
  color:#fff;
  border:1px solid transparent;
  box-shadow:0 10px 24px rgba(37,211,102,.3);
}

.btn-whatsapp:hover{
  background:#20bd5a;
  color:#fff;
  transform:translateY(-3px);
  box-shadow:0 16px 32px rgba(37,211,102,.38);
}

.btn-whatsapp svg{
  width:20px;
  height:20px;
  flex-shrink:0;
}

.hero-badges{ display:flex; gap:22px; flex-wrap:wrap; }
.hero-badge{ display:flex; align-items:center; gap:10px; font-size:.86rem; font-weight:600; color:var(--text-muted); }
.hero-badge .dot{ width:34px; height:34px; border-radius:10px; background:rgba(80,69,56,0.07); display:flex; align-items:center; justify-content:center; color:var(--dark); }
html[data-theme="dark"] .hero-badge .dot{ background:rgba(255,255,255,0.07); color:#F7F4F0; }
.hero-badge svg{ width:16px; height:16px; }

.hero-visual{ position:relative; }
.hero-card{ background:var(--surface); border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); padding:28px; border:1px solid var(--border); position:relative; z-index:2; }
.hero-illustration{ width:100%; height:auto; display:block; }
.hero-card.news-card{
  padding:20px;
  background:#fff;
  border-radius:28px;
  border:1px solid var(--border);
  box-shadow:var(--shadow-lg);
  overflow:hidden;
}

.news-card-top{
  display:flex;
  align-items:center;
  gap:12px;
  padding-bottom:14px;
  margin-bottom:16px;
  border-bottom:1px solid var(--border);
}

.news-icon{
  width:42px;
  height:42px;
  border-radius:14px;
  background:rgba(242,170,36,.16);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
}

.news-source strong{
  display:block;
  font-size:1rem;
  font-weight:800;
  color:var(--dark);
}

.news-source small{
  display:block;
  font-size:.78rem;
  color:var(--text-muted);
}

.news-content{
  padding:4px 2px 2px;
}

.news-headline{
  font-family:var(--font-display);
  font-size:1.18rem;
  font-weight:700;
  line-height:1.35;
  color:var(--dark);
  margin-bottom:12px;
}
html[data-theme="dark"] .news-headline{ color:#030303; }

.news-excerpt{
  font-size:.9rem;
  line-height:1.6;
  color:black;
  margin-bottom:20px;
}

.news-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.88rem;
  font-weight:700;
  color:var(--primary-dark);
  padding:10px 18px;
  border-radius:999px;
  background:rgba(242,170,36,0.12);
  transition:background .2s ease, transform .2s ease;
}
.news-link svg{ width:15px; height:15px; }
.news-link:hover{
  background:rgba(242,170,36,0.22);
  transform:translateY(-2px);
}
.float-chip{ position:absolute; background:var(--surface); border-radius:16px; box-shadow:var(--shadow-md); padding:12px 16px; display:flex; align-items:center; gap:10px; font-size:.82rem; font-weight:700; border:1px solid var(--border); z-index:3; animation:float 5s ease-in-out infinite; }
.float-chip svg{ width:18px; height:18px; }
.chip-fine{ top:-8%; left:-8%; color:var(--accent); animation-delay:.3s; }
.chip-fine .dot-ic{ background:rgba(217,0,0,0.12); }
.chip-compliant{ bottom:-12%; right:-9%; color:#1a8f5c; animation-delay:1s; }
.chip-compliant .dot-ic{ background:rgba(26,143,92,0.12); }
.float-chip .dot-ic{ width:30px; height:30px; border-radius:9px; display:flex; align-items:center; justify-content:center; }

@keyframes float{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-10px); } }

/* OVERVIEW */
.overview{ padding:90px 0; }
.overview-grid{ display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-bottom:26px; }
.ov-card{ background:var(--surface); border-radius:var(--radius-lg); padding:34px; border:1px solid var(--border); box-shadow:var(--shadow-sm); position:relative; overflow:hidden; }
.ov-card.old{ border-top:4px solid var(--secondary); }
.ov-card.new{ border-top:4px solid var(--primary); }
.ov-tag{ display:inline-block; font-size:.72rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; padding:5px 13px; border-radius:999px; margin-bottom:16px; }
.ov-card.old .ov-tag{ background:rgba(183,169,154,0.25); color:var(--dark); }
.ov-card.new .ov-tag{ background:rgba(242,170,36,0.2); color:var(--primary-dark); }
.ov-card h3{ font-size:1.3rem; margin-bottom:18px; }
.ov-card .big-num{ font-family:var(--font-display); font-size:2.1rem; font-weight:700; color:var(--accent); margin-bottom:6px; }
.ov-card.new .big-num{ color:var(--primary-dark); }
.ov-list{ margin-top:16px; display:flex; flex-direction:column; gap:11px; }
.ov-list li{ display:flex; align-items:flex-start; gap:10px; font-size:.93rem; color:var(--text-muted); }
.ov-list li svg{ width:17px; height:17px; flex-shrink:0; margin-top:2px; }
.ov-card.old .ov-list li svg{ color:var(--secondary); }
.ov-card.new .ov-list li svg{ color:var(--primary-dark); }

.highlight-banner{ background:linear-gradient(120deg, var(--dark), #3d332a); border-radius:var(--radius-lg); padding:30px 36px; display:flex; align-items:center; gap:20px; color:#fff; box-shadow:var(--shadow-lg); }
.highlight-banner .ic{ width:56px; height:56px; border-radius:16px; background:rgba(242,170,36,0.2); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.highlight-banner .ic svg{ width:28px; height:28px; color:var(--primary); }
.highlight-banner h4{ color:#fff; font-size:1.25rem; margin-bottom:4px; }
.highlight-banner p{ color:rgba(255,255,255,0.65); font-size:.9rem; }

/* WHY CHANGED */
.why{ padding:90px 0; }
.why-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.why-card{ background:var(--surface); border-radius:var(--radius-md); padding:30px 24px; border:1px solid var(--border); box-shadow:var(--shadow-sm); transition:transform .25s ease, box-shadow .25s ease; }
.why-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.why-card .ic{ width:52px; height:52px; border-radius:14px; background:rgba(242,170,36,0.14); display:flex; align-items:center; justify-content:center; margin-bottom:18px; color:var(--primary-dark); }
.why-card .ic svg{ width:26px; height:26px; }
.why-card h4{ font-size:1.02rem; margin-bottom:8px; }
.why-card p{ font-size:.87rem; color:var(--text-muted); }

/* PENALTY TABLE */
.penalty{ padding:90px 0; }
.penalty-table-wrap{ background:var(--surface); border-radius:var(--radius-lg); border:1px solid var(--border); box-shadow:var(--shadow-md); overflow:hidden; overflow-x:auto; }
table.penalty-table{ width:100%; border-collapse:collapse; min-width:520px; }
.penalty-table thead th{ background:var(--dark); color:#fff; text-align:left; padding:20px 28px; font-size:.85rem; letter-spacing:.03em; text-transform:uppercase; font-weight:700; }
.penalty-table tbody td{ padding:22px 28px; border-bottom:1px solid var(--border); font-size:1rem; }
.penalty-table tbody tr:last-child td{ border-bottom:none; }
.penalty-table tbody tr{ transition:background .2s ease; }
.penalty-table tbody tr:hover{ background:rgba(242,170,36,0.06); }
.offence-cell{ display:flex; align-items:center; gap:12px; font-weight:700; color:var(--dark); }
html[data-theme="dark"] .offence-cell{ color:#F7F4F0; }
.offence-num{ width:34px; height:34px; border-radius:10px; background:rgba(242,170,36,0.16); color:var(--primary-dark); display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-weight:700; font-size:.9rem; flex-shrink:0; }
.fine-amount{ font-weight:800; color:var(--accent); font-size:1.08rem; }
.penalty-note{ display:flex; align-items:center; gap:14px; background:rgba(242,170,36,0.1); border:1px dashed rgba(242,170,36,0.5); border-radius:var(--radius-md); padding:20px 26px; margin-top:24px; font-size:.92rem; color:var(--dark); }
html[data-theme="dark"] .penalty-note{ color:#F2EFEA; }
.penalty-note svg{ width:22px; height:22px; color:var(--primary-dark); flex-shrink:0; }

/* WHO MUST COMPLY */
.comply{ padding:90px 0; }
.comply-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-bottom:30px; }
.comply-card{ background:var(--surface); border-radius:var(--radius-md); padding:32px 26px; text-align:center; border:1px solid var(--border); box-shadow:var(--shadow-sm); transition:transform .25s ease, box-shadow .25s ease; }
.comply-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.comply-card .ic{ width:60px; height:60px; border-radius:16px; background:rgba(80,69,56,0.08); display:flex; align-items:center; justify-content:center; margin:0 auto 18px; color:var(--dark); }
html[data-theme="dark"] .comply-card .ic{ background:rgba(255,255,255,0.08); color:#F7F4F0; }
.comply-card .ic svg{ width:28px; height:28px; }
.comply-card h4{ font-size:1.05rem; margin-bottom:8px; }
.comply-card p{ font-size:.87rem; color:var(--text-muted); }

.comply-note{ text-align:center; font-weight:700; font-size:1rem; color:var(--dark); background:rgba(183,169,154,0.16); border-radius:var(--radius-md); padding:20px; }
html[data-theme="dark"] .comply-note{ color:#F2EFEA; }

/* TIMELINE */
.penalised{ padding:90px 0; }
.timeline{ position:relative; max-width:760px; margin:0 auto; }
.timeline::before{ content:''; position:absolute; left:27px; top:8px; bottom:8px; width:2px; background:linear-gradient(var(--accent), var(--secondary)); opacity:.35; }
.timeline-item{ display:flex; gap:22px; position:relative; padding-bottom:34px; }
.timeline-item:last-child{ padding-bottom:0; }
.timeline-dot{ width:56px; height:56px; border-radius:16px; background:var(--surface); border:1px solid var(--border); box-shadow:var(--shadow-sm); display:flex; align-items:center; justify-content:center; color:var(--accent); flex-shrink:0; z-index:1; }
.timeline-dot svg{ width:24px; height:24px; }
.timeline-body{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-md); padding:20px 24px; box-shadow:var(--shadow-sm); flex:1; }
.timeline-body h4{ font-size:1rem; margin-bottom:5px; }
.timeline-body p{ font-size:.87rem; color:var(--text-muted); }

/* TAKEAWAYS */
.takeaways{ padding:90px 0; }
.takeaway-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.takeaway-item{ display:flex; align-items:center; gap:16px; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-md); padding:20px 22px; box-shadow:var(--shadow-sm); transition:transform .2s ease, box-shadow .2s ease; }
.takeaway-item:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md); }
.takeaway-item .check{ width:36px; height:36px; border-radius:10px; background:rgba(26,143,92,0.14); color:#1a8f5c; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.takeaway-item .check svg{ width:19px; height:19px; }
.takeaway-item p{ font-weight:600; font-size:.95rem; color:var(--dark); }
html[data-theme="dark"] .takeaway-item p{ color:#F2EFEA; }

/* FAQ */
.faq{ padding:90px 0; }
.faq-list{ max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:14px; }
.faq-item{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-md); overflow:hidden; box-shadow:var(--shadow-sm); }
.faq-q{ width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 26px; font-weight:700; font-size:.98rem; color:var(--dark); text-align:left; }
html[data-theme="dark"] .faq-q{ color:#F2EFEA; }
.faq-q .plus{ width:30px; height:30px; border-radius:9px; background:rgba(242,170,36,0.14); color:var(--primary-dark); display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:transform .3s ease; }
.faq-q .plus svg{ width:15px; height:15px; }
.faq-item.open .faq-q .plus{ transform:rotate(135deg); }
.faq-a{ max-height:0; overflow:hidden; transition:max-height .35s ease; }
.faq-a-inner{ padding:0 26px 22px; font-size:.92rem; color:var(--text-muted); }

/* FINAL CTA */
.final-cta{ padding:40px 0 100px; }
.cta-card{ background:linear-gradient(135deg, var(--dark) 0%, #3a3025 100%); border-radius:var(--radius-lg); padding:64px 48px; text-align:center; position:relative; overflow:hidden; box-shadow:var(--shadow-lg); }
.cta-card .orb{ opacity:.5; }
.cta-card .orb.c1{ width:300px; height:300px; background:var(--primary); top:-100px; left:-60px; }
.cta-card .orb.c2{ width:260px; height:260px; background:var(--accent); bottom:-100px; right:-40px; opacity:.25; }
.cta-card-inner{ position:relative; z-index:1; }
.cta-card h2{ color:#fff; font-size:clamp(1.6rem,3.4vw,2.3rem); margin-bottom:14px; }
.cta-card p{ color:rgba(255,255,255,0.7); max-width:560px; margin:0 auto 34px; font-size:1.02rem; }
.cta-card .hero-ctas{ justify-content:center; margin-bottom:0; }
.cta-card .btn-outline{ background:rgba(255,255,255,0.08); color:#fff; border-color:rgba(255,255,255,0.2); }
.cta-card .btn-outline:hover{ background:rgba(255,255,255,0.14); }

/* FOOTER */
footer{ border-top:1px solid var(--border); padding:52px 0 30px; }
.footer-top{ display:flex; justify-content:space-between; gap:40px; margin-bottom:36px; flex-wrap:wrap; }
.footer-brand{ max-width:320px; }
.footer-brand .brand{ margin-bottom:12px; }
.footer-brand p{ font-size:.87rem; color:var(--text-muted); }
.footer-cols{ display:flex; gap:56px; flex-wrap:wrap; }
.footer-col h5{ font-size:.8rem; text-transform:uppercase; letter-spacing:.06em; color:var(--text-muted); margin-bottom:14px; font-weight:700; }
.footer-col a{ display:block; font-size:.9rem; color:var(--text); opacity:.8; margin-bottom:10px; font-weight:500; }
.footer-col a:hover{ opacity:1; color:var(--primary-dark); }
.disclaimer{ background:rgba(80,69,56,0.05); border-radius:var(--radius-sm); padding:18px 22px; font-size:.8rem; color:var(--text-muted); line-height:1.65; margin-bottom:24px; }
html[data-theme="dark"] .disclaimer{ background:rgba(255,255,255,0.05); }
.footer-bottom{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding-top:22px; border-top:1px solid var(--border); font-size:.82rem; color:var(--text-muted); }

/* RESPONSIVE */
@media (max-width:1024px){
  .hero-inner{
    grid-template-columns:1fr;
  }

  .hero-visual{
    order:-1;
    max-width:460px;
    margin:0 auto;
  }

  .why-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .comply-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:900px){
  .nav-links{
    display:none;
  }

  .nav-inner{
    padding:10px 14px;
    gap:8px;
  }

  .nav-title{
    font-size:13px;
  }

  .brand{
    flex:1;
    min-width:0;
    gap:7px;
  }

  .brand img{
    height:26px;
    flex-shrink:0;
  }

  .brand span{
    min-width:0;
    max-width:130px;
    overflow:hidden;
    font-size:.84rem;
    line-height:1.15;
    white-space:nowrap;
    text-overflow:ellipsis;
  }

  .brand small{
    font-size:.58rem;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .nav-right{
    gap:6px;
    flex-shrink:0;
  }

  .nav-right .btn-whatsapp{
    display:none;
  }
  .theme-toggle{
    display:flex;
  }

  .lang-switch{
    flex-shrink:0;
    padding:2px;
  }

  .lang-btn{
    padding:5px 8px;
    font-size:.66rem;
  }

  .hamburger{
    display:flex;
    width:34px;
    height:34px;
    flex-shrink:0;
  }

  .mobile-menu .nav-cta{
    display:block;
  }
}

@media (max-width:768px){
  .overview-grid,
  .why-grid,
  .takeaway-grid{
    grid-template-columns:1fr;
  }

  .penalty-table thead th,
  .penalty-table tbody td{
    padding:14px;
    font-size:.85rem;
  }

  .cta-card{
    padding:44px 24px;
  }

  .footer-top{
    flex-direction:column;
  }
}

@media (max-width:480px){
  .container{
    padding:0 18px;
  }

  .nav-inner{
    padding:5px 10px;
  }

  .brand img{
    height:40px;
    max-width:auto;
  }

  .brand span{
    font-size:.79rem;
  }

  .brand small{
    font-size:.52rem;
  }

  .lang-btn{
    padding:4px 6px;
    font-size:.58rem;
  }

  .hamburger{
    width:32px;
    height:32px;
  }

  .hero{
    padding:40px 0 60px;
  }

  .btn{
    padding:13px 22px;
    font-size:.9rem;
    width:100%;
    justify-content:center;
  }

  .hero-ctas{
    flex-direction:column;
  }

  .hero-card.news-card{
    padding:16px;
  }

  .news-headline{
    font-size:1.05rem;
  }

  .highlight-banner{
    flex-direction:column;
    text-align:center;
  }

  .float-chip{
    display:none;
  }

  .offence-cell{
    gap:8px;
    font-size:.9rem;
  }

  .fine-amount{
    font-size:.95rem;
  }
}

@media (max-width:360px){
  .nav-inner{
    padding:5px 10px;
  }

  .nav-title{
    font-size:11px;
  }

  .brand img{
    height:30px;
    max-width:auto;
  }

  .brand span{
    font-size:.79rem;
  }

  .brand small{
    display:none;
  }

  .lang-btn{
    padding:4px 5px;
    font-size:.54rem;
  }

  .hamburger{
    width:30px;
    height:30px;
  }

  .hamburger span{
    width:16px;
  }
}