/* Homepage polish: retain Baloo, blue/gold and the existing section order. */
.home-polish { --blue:#385abd; --blue-deep:#294696; --blue-soft:#edf1fc; --shadow-lg:0 18px 44px rgba(24,39,72,.12); }
.home-polish main { display:block; }
.home-polish .section { padding-block:88px; }
.home-polish .section-sm { padding-block:64px; }
.home-polish .sec-head { max-width:700px; margin-bottom:32px; }
.home-polish h2 { line-height:1.13; font-weight:700; }
.home-polish .lead { font-size:1.16rem; line-height:1.65; }
.home-polish .eyebrow { font-size:.75rem; letter-spacing:.1em; }
.home-polish .btn { min-height:48px; white-space:normal; line-height:1.3; text-align:center; }
.home-polish .btn-primary { box-shadow:0 4px 12px rgba(41,70,150,.16); }
.home-polish .btn-primary:hover { box-shadow:0 6px 18px rgba(41,70,150,.2); }
.home-polish .btn-lg { font-size:1rem; padding:14px 24px; }
.home-polish :is(a,button,input,select,textarea):focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
.home-polish .site-header { background:var(--bg); backdrop-filter:none; }
.home-polish .logo-emblem { box-shadow:0 3px 9px rgba(33,75,150,.2); }
.home-polish :is(.theme-toggle,.nav-burger) { width:44px; height:44px; }
.home-polish .hero-grid { grid-template-columns:1.2fr 1fr; gap:40px; padding-block:76px 64px; }
.home-polish .hero h1 { font-size:clamp(2.5rem,4.25vw,3.85rem); line-height:1.08; letter-spacing:-.025em; text-wrap:initial; }
.home-polish .hero-accent { color:var(--blue); }
.home-polish .hero .lead { max-width:44ch; margin-top:24px; }
.home-polish .hero-cta { gap:16px; margin-top:28px; align-items:center; }
.home-polish .hero .btn-ghost { min-height:44px; padding:0 0 3px; border:0; border-bottom:1px solid var(--border); border-radius:0; font-size:.95rem; }
.home-polish .hero .btn-ghost::after { content:'→'; margin-left:6px; }
.home-polish .hero .btn-ghost:hover { background:none; border-color:var(--blue); color:var(--blue); }
.home-polish .hero-trust { display:grid; grid-template-columns:1.2fr 1.1fr .8fr; gap:16px; margin-top:32px; padding-top:24px; }
.home-polish .hero-trust b { font-size:1.65rem; }
.home-polish .hero-trust small { font-size:.8rem; line-height:1.4; max-width:16ch; }
.home-polish .hero .reveal { opacity:1; transform:none; transition:none; }
.home-polish .proof-row { padding-block:16px; }
.home-polish .marquee-track { animation:none; }
.home-polish .proof-chip { background:none; border:0; padding-inline:10px; color:var(--ink-2); }
.home-polish .card-hover:hover { transform:translateY(-2px); box-shadow:var(--shadow); border-color:var(--border); }
.home-polish .val { padding:24px; }
.home-polish .val .illo { height:112px; margin-bottom:24px; }
.home-polish .val h3 { font-size:1.25rem; line-height:1.25; margin-bottom:10px; }
.home-polish .val p { line-height:1.65; }
.home-polish .step { padding:28px; }
.home-polish .step-illo { height:108px; margin-bottom:20px; }
.home-polish .step h3 { font-size:1.5rem; line-height:1.2; }
.home-polish .step p { line-height:1.65; }
.home-polish :is(.illo,.pkg-inner,.pl-live) * { animation:none; }
.home-polish #check { border-top:0!important; }
.home-polish .check-card { box-shadow:var(--shadow-sm); }
.home-polish .company-card { padding:24px; }
.home-polish .cc-name { line-height:1.3; }
.home-polish .cc-meta { gap:10px; }
.home-polish .cc-meta span { white-space:normal; }
.home-polish .leist-item { padding:16px 18px; }
.home-polish .leist-item h4 { line-height:1.35; }
.home-polish .leist .pkg { overflow:clip; }
.home-polish .aud-field { padding:22px; background:var(--bg); }
.home-polish .aud-field b { font-size:1.1rem; }
.home-polish .aud-c { line-height:1.55; }
.home-polish .statband { padding:40px; border-radius:22px; }
.home-polish .stat b { font-size:2.6rem; }
.home-polish #puls { padding-top:64px!important; }
.home-polish .faq-q { font-size:1.2rem; line-height:1.4; padding-block:24px; }
.home-polish .faq-a a { color:var(--blue); text-decoration:underline; text-underline-offset:3px; }
.home-polish .cta-band { padding:56px 40px; }
.home-polish .cta-band .hero-cta { position:relative; }
.home-polish .site-footer { margin-top:24px; }
[data-theme="dark"] .home-polish .hero-accent { color:#a5bcff; }
[data-theme="dark"] .home-polish :is(.link-arrow,.faq-a a) { color:#a5bcff; }
@media (min-width:1400px) {
  .home-polish .nav { gap:12px; }
  .home-polish .nav-link { padding-inline:8px; }
}
@media (max-width:980px) {
  .home-polish .hero-grid { grid-template-columns:1fr 0.85fr; gap:24px; padding-block:56px; }
  .home-polish .hero h1 { font-size:2.75rem; }
  .home-polish .hero-trust { grid-template-columns:1fr 1fr; }
}
@media (max-width:760px) {
  .home-polish .section { padding-block:60px; }
  .home-polish .section-sm { padding-block:52px; }
  .home-polish .hero-grid { grid-template-columns:minmax(0,1fr); gap:16px; padding-block:42px 28px; }
  .home-polish .hero h1 { font-size:clamp(2.2rem,8.8vw,3.1rem); margin-top:16px; }
  .home-polish .hero .lead { font-size:1.075rem; margin-top:20px; }
  .home-polish .hero-cta { align-items:stretch; gap:14px; margin-top:24px; }
  .home-polish .hero .hero-cta { flex-direction:column; align-items:flex-start; }
  .home-polish .hero .btn-primary { width:100%; }
  .home-polish .hero .btn-ghost { align-self:center; }
  .home-polish .hero-trust { grid-template-columns:1.2fr 1.05fr .7fr; gap:12px; margin-top:24px; padding-top:22px; }
  .home-polish .hero-trust b { font-size:1.45rem; }
  .home-polish .hero-trust small { font-size:.74rem; }
  .home-polish .proof-label { font-size:.67rem; }
  .home-polish .proof-chip { font-size:.85rem; }
  .home-polish .sec-head { margin-bottom:28px; }
  .home-polish .lead { font-size:1.06rem; }
  .home-polish .val .illo { height:88px; margin-bottom:20px; }
  .home-polish .step { display:grid; grid-template-columns:70px minmax(0,1fr); column-gap:18px; padding:24px; }
  .home-polish .step-illo { grid-column:1; grid-row:1 / 4; height:80px; width:70px; margin:0; }
  .home-polish .step > :not(.illo) { grid-column:2; }
  .home-polish .step h3 { font-size:1.4rem; }
  .home-polish .leist { gap:24px; }
  .home-polish .leist .pkg { min-height:350px; }
  .home-polish .aud-c[data-col] { display:block; padding:14px 18px; }
  .home-polish .aud-c[data-col]::before { display:block; margin-bottom:4px; font-size:.7rem; }
  .home-polish .aud-c .ck { display:none; }
  .home-polish .aud-fields { gap:12px; }
  .home-polish .statband { padding:28px; }
  .home-polish .stat b { font-size:2.1rem; }
  .home-polish .stat span { font-size:.85rem; line-height:1.4; }
  .home-polish .puls-teaser { padding:24px; }
  .home-polish .puls-meta { flex-wrap:wrap; }
  .home-polish .cta-band { padding:36px 24px; }
  .home-polish .cta-band .btn { width:100%; }
  .home-polish .cta-seal { width:160px; }
  .home-polish .footer-col a { padding-block:10px; }
}
@media (max-width:480px) {
  .home-polish .wrap { padding-inline:20px; }
  .home-polish .nav { padding-inline:16px; }
  .home-polish .logo-text { font-size:1rem; }
  .home-polish .logo-lockup { gap:8px; }
  .home-polish .logo-emblem { width:30px; height:30px; border-radius:10px; }
  .home-polish .nav-actions { gap:6px; }
  .home-polish .nav { gap:6px; }
  .home-polish .val { display:grid; grid-template-columns:64px minmax(0,1fr); gap:8px 16px; padding:22px; }
  .home-polish .val .illo { grid-row:1/3; height:72px; width:64px; margin:0; }
  .home-polish .val h3 { margin:0; }
  .home-polish .val p { grid-column:2; font-size:.94rem; }
  .home-polish .check-card { padding:24px 20px; }
}
@media (max-width:360px) {
  .home-polish .nav { padding-inline:12px; }
  .home-polish .logo-text { font-size:.88rem; }
  .home-polish .logo-lockup { gap:5px; }
  .home-polish .hero-trust { gap:8px; }
  .home-polish .hero-trust b { font-size:1.25rem; }
  .home-polish .btn-lg { padding-inline:14px; font-size:.94rem; }
  .home-polish .val { padding:20px 16px; grid-template-columns:48px minmax(0,1fr); gap:8px 12px; }
  .home-polish .val .illo { width:48px; }
}
@media (prefers-reduced-motion:reduce) {
  .home-polish *, .home-polish *::before, .home-polish *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  html:has(.home-polish) { scroll-behavior:auto; }
}

.home-polish .report-note { color:var(--ink-2); max-width:52ch; margin:0 auto 24px; }
@media (max-width:760px) {
  .home-polish .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-polish .footer-grid > :first-child { grid-column:1 / -1; }
  .home-polish .footer-col { min-width:0; }
  .home-polish .footer-col a { overflow-wrap:anywhere; }
}
[data-theme="dark"] .home-polish { --blue-soft:#18243a; }
/* Seal art direction: the award is the focal point of the existing package. */
.home-polish .pkg-seal img { width:190px; filter:drop-shadow(0 9px 14px rgba(20,42,67,.17)); }
.home-polish .pkg-seal { transform:translate(0,76px); }
.home-polish .pkg:hover .pkg-seal { transform:translate(0,76px); }
.home-polish .pkg-card:not(.pkg-seal) { box-shadow:0 8px 22px rgba(20,42,67,.08); }
.home-polish .pkg-cert { transform:rotate(-8deg) translate(-96px,4px); }
.home-polish .pkg-badge { transform:rotate(8deg) translate(96px,4px); }
.home-polish .pkg:hover .pkg-cert { transform:rotate(-8deg) translate(-96px,4px); }
.home-polish .pkg:hover .pkg-badge { transform:rotate(8deg) translate(96px,4px); }
.home-polish .pkg:hover .pkg-profile { transform:rotate(-2deg) translate(0,-40px); }
.home-polish .pkg-seal .pkg-inner { animation:none; }
.home-polish .cta-seal { width:210px; right:22px; bottom:-46px; opacity:.1; }
@media(max-width:760px) {
  .home-polish .pkg-seal img { width:174px; }
  .home-polish .cta-seal { width:180px; right:-28px; bottom:-32px; opacity:.07; }
}

/* Keep the award recognizable where the full illustration becomes too small. */
.home-polish .illo-award-mobile { display:none; }
@media(max-width:480px) {
  .home-polish .compact-award > svg { display:none; }
  .home-polish .compact-award .illo-award-mobile { display:block; width:36px; height:36px; }
}

/* Hero artwork: clear centre, a composed logo field, caption outside the artwork. */
.home-polish .hero-award { width:100%; min-width:0; max-width:500px; justify-self:end; }
.home-polish .hero-award-stage { position:relative; width:100%; aspect-ratio:1.08; isolation:isolate; }
.home-polish .hero-award-halo { position:absolute; inset:8%; border-radius:50%; z-index:-1; background:radial-gradient(circle,rgba(205,180,130,.17) 0%,rgba(206,213,235,.21) 43%,transparent 72%); }
.home-polish .hero-award-halo::before,.home-polish .hero-award-halo::after { content:""; position:absolute; inset:5%; border:1px solid color-mix(in srgb,var(--blue) 9%,transparent); border-radius:50%; }
.home-polish .hero-award-halo::after { inset:16%; border-color:color-mix(in srgb,var(--gold) 17%,transparent); }
.home-polish .hero-award-center { position:absolute; inset:0; display:grid; place-items:center; pointer-events:none; }
.home-polish .hero-award-seal { width:45%; max-width:224px; height:auto; filter:drop-shadow(0 16px 18px rgba(20,42,67,.16)); transform:rotate(-6deg); }
.home-polish .hero-award-company { position:absolute; display:block; width:17%; aspect-ratio:1; border:1px solid var(--border); border-radius:20%; background:var(--surface); box-shadow:0 7px 18px rgba(24,39,72,.06),0 1px 2px rgba(24,39,72,.025); transition:transform .2s,box-shadow .2s; }
.home-polish .hero-award-company .logo-tile { width:100%!important; height:100%!important; border:0; border-radius:inherit; box-shadow:none; }
.home-polish .hero-award-company img { border-radius:5px; }
.home-polish .hero-award-company:hover { transform:translateY(-4px) rotate(0); box-shadow:0 12px 22px rgba(24,39,72,.1); }
.home-polish .company-0 { left:3%; top:20%; transform:rotate(-7deg); }
.home-polish .company-1 { left:25%; top:3%; transform:rotate(-3deg); }
.home-polish .company-2 { right:19%; top:7%; transform:rotate(5deg); }
.home-polish .company-3 { right:0; top:29%; transform:rotate(7deg); }
.home-polish .company-4 { right:3%; bottom:18%; transform:rotate(-5deg); }
.home-polish .company-5 { right:25%; bottom:0; transform:rotate(4deg); }
.home-polish .company-6 { left:16%; bottom:4%; transform:rotate(-6deg); }
.home-polish .company-7 { left:0; bottom:28%; transform:rotate(4deg); }
.home-polish .hero-award-spark { position:absolute; font-size:20px; line-height:1; color:#B89B62; pointer-events:none; }
.home-polish .spark-one { right:12%; top:9%; font-size:15px; }
.home-polish .spark-two { left:7%; bottom:10%; }
.home-polish .hero-award-caption { display:flex; align-items:center; justify-content:center; gap:12px; min-height:48px; width:fit-content; max-width:100%; margin:22px auto 0; padding:10px 16px; color:var(--ink-2); font-size:.9rem; line-height:1.4; text-align:center; border-radius:10px; }
.home-polish .hero-award-caption b { color:var(--ink); font-weight:700; }
.home-polish .hero-award-caption > span[aria-hidden] { color:var(--blue); }
.home-polish .hero-award-caption:hover { background:var(--surface); }
[data-theme="dark"] .home-polish .hero-award-halo { opacity:.5; }
[data-theme="dark"] .home-polish .hero-award-caption > span[aria-hidden] { color:#a5bcff; }
@media(max-width:760px) {
  .home-polish .hero-award { max-width:420px; justify-self:center; margin-top:24px; }
  .home-polish .hero-award-caption { margin-top:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .home-polish .hero-award-company { transition:none; }
}
