/* V5.7 — 12 genuinely different visual systems */
body[class*="theme-"]{--theme-primary:var(--navy);--theme-secondary:var(--navy2);--theme-accent:var(--gold);--theme-surface:var(--soft)}
body[class*="theme-"] .hero{background:var(--theme-primary)}
body[class*="theme-"] .topbar{border-bottom:3px solid var(--theme-accent)}
body[class*="theme-"] .section.alt{background:var(--theme-surface)}
body[class*="theme-"] .gold{background:var(--theme-accent);color:#17120b}
body[class*="theme-"] .primary{background:var(--theme-primary);border-color:var(--theme-primary)}
body[class*="theme-"] .brand-mark{background:var(--theme-secondary);color:var(--theme-accent)}
body[class*="theme-"] .eyebrow{color:var(--theme-accent)}
body[class*="theme-"] .hero h1 span{color:var(--theme-accent)}

/* 1 Royal — editorial luxury */
body.theme-royal{--navy:#07152f;--navy2:#183866;--gold:#d6ae52;--gold2:#f5d991;--soft:#f5f7fb}
body.theme-royal .hero{min-height:720px;border-radius:0 0 90px 90px}
body.theme-royal .hero:before{border:80px solid color-mix(in srgb,var(--theme-accent) 12%,transparent);width:360px;height:360px;right:-140px;top:-160px}
body.theme-royal .info-card{border-top:5px solid var(--theme-accent);border-radius:6px 6px 22px 22px}

/* 2 Emerald — organic / rounded */
body.theme-emerald{--navy:#06342b;--navy2:#16705d;--gold:#d5b45b;--gold2:#f5e3a2;--soft:#eef8f3}
body.theme-emerald .topbar{border-radius:0 0 28px 28px;max-width:1180px;margin:auto}
body.theme-emerald .hero{border-radius:55px;margin:24px 4vw;min-height:650px;background:linear-gradient(135deg,var(--theme-primary),var(--theme-secondary))}
body.theme-emerald .hero:after{border:70px solid #ffffff12;width:260px;height:260px;right:-40px;bottom:-130px}
body.theme-emerald .info-card{border-radius:38px;box-shadow:0 20px 45px #0b5b4212}
body.theme-emerald .pill{border-radius:14px}

/* 3 Crimson — gala / cinematic */
body.theme-crimson{--navy:#300814;--navy2:#791d37;--gold:#e0a24e;--gold2:#ffd895;--soft:#fff5f7}
body.theme-crimson .hero{min-height:780px;background:radial-gradient(circle at 70% 45%,#8f2b48,var(--theme-primary) 55%,#13030a)}
body.theme-crimson .hero h1{font-size:clamp(56px,8vw,100px);text-transform:uppercase;letter-spacing:-.07em}
body.theme-crimson .hero-visual .award-card{border:1px solid var(--theme-accent);border-radius:0;transform:rotate(2deg)}
body.theme-crimson .section-head h2{font-size:56px;text-transform:uppercase}
body.theme-crimson .info-card{border-radius:0;border-left:7px solid var(--theme-accent)}

/* 4 Purple — futuristic glass */
body.theme-purple{--navy:#160d2d;--navy2:#5a2c9e;--gold:#d9a8ff;--gold2:#f1d8ff;--soft:#f8f3ff}
body.theme-purple .topbar{background:#120b25;color:#fff;border:0}
body.theme-purple .nav{color:#ddd}
body.theme-purple .hero{margin:0;min-height:740px;background:linear-gradient(120deg,#120622,#2b1250,#11172e)}
body.theme-purple .hero:before,.theme-purple .hero:after{border-color:#d9a8ff25}
body.theme-purple .award-card,.theme-purple .info-card{background:#ffffff0b;backdrop-filter:blur(18px);border:1px solid #ffffff20;color:inherit}
body.theme-purple .section.alt{background:linear-gradient(135deg,#f6efff,#fff)}
body.theme-purple .pill{background:#fff;border-color:#d9a8ff}

/* 5 Ocean — coastal / airy */
body.theme-ocean{--navy:#03283e;--navy2:#0a7195;--gold:#54d8e8;--gold2:#c1f6fb;--soft:#eefafd}
body.theme-ocean .hero{min-height:660px;background:linear-gradient(180deg,#0b789d,#00334d);clip-path:ellipse(110% 90% at 50% 0)}
body.theme-ocean .hero h1{font-family:Inter,sans-serif;font-weight:850;letter-spacing:-.06em}
body.theme-ocean .award-card{border-radius:50px;background:#ffffff18}
body.theme-ocean .info-card{border:0;border-radius:30px;box-shadow:0 18px 50px #00647d18}
body.theme-ocean .section-head h2{font-family:Inter,sans-serif;font-weight:850}

/* 6 Sunset — warm magazine */
body.theme-sunset{--navy:#3a1620;--navy2:#a84d3e;--gold:#ff9c65;--gold2:#ffd0ae;--soft:#fff6f0}
body.theme-sunset .hero{min-height:690px;background:linear-gradient(120deg,#431722,#a64a39,#ef7d54)}
body.theme-sunset .hero:before{width:520px;height:520px;border:0;background:#ffcb8220;right:-180px;top:-150px}
body.theme-sunset .hero h1{font-family:Georgia,serif;font-style:italic}
body.theme-sunset .info-card{border:0;border-radius:4px 28px 4px 28px}
body.theme-sunset .cta{border-radius:4px 40px 4px 40px}

/* 7 Forest — natural premium */
body.theme-forest{--navy:#102719;--navy2:#35633b;--gold:#d5b85e;--gold2:#f3dfa1;--soft:#f2f7f0}
body.theme-forest .hero{min-height:700px;background:#102719;clip-path:polygon(0 0,100% 0,100% 88%,92% 100%,8% 100%,0 88%)}
body.theme-forest .hero h1{font-size:clamp(48px,6vw,74px)}
body.theme-forest .award-card{border-radius:12px 80px 12px 80px}
body.theme-forest .info-card{border-radius:12px;box-shadow:8px 8px 0 #35633b20}

/* 8 Rose — fashion / soft */
body.theme-rose{--navy:#381827;--navy2:#824565;--gold:#e8a5bb;--gold2:#ffdbe6;--soft:#fff5f8}
body.theme-rose .topbar{background:#fff7fa}
body.theme-rose .hero{min-height:650px;background:linear-gradient(145deg,#4a1e34,#9b4e70);border-radius:0 0 140px 0}
body.theme-rose .hero h1{font-family:Georgia,serif;font-weight:400}
body.theme-rose .award-card{border-radius:100px;background:#ffffff20}
body.theme-rose .info-card{border:1px solid #edbfd0;border-radius:24px}

/* 9 Mono — brutalist */
body.theme-mono{--navy:#0d0d0d;--navy2:#333;--gold:#bdbdbd;--gold2:#fff;--soft:#f3f3f3}
body.theme-mono *{border-radius:0!important}
body.theme-mono .topbar{border-bottom:5px solid #111}
body.theme-mono .hero{background:#111;min-height:700px}
body.theme-mono .hero h1{font-family:Arial,sans-serif;font-weight:900;text-transform:uppercase;font-size:clamp(52px,8vw,104px);letter-spacing:-.08em}
body.theme-mono .hero h1 span{color:#fff;text-decoration:underline}
body.theme-mono .award-card{border:4px solid #fff;background:#111;box-shadow:12px 12px 0 #fff}
body.theme-mono .info-card{border:3px solid #111;box-shadow:8px 8px 0 #111}
body.theme-mono .gold,.theme-mono .primary{background:#111;color:#fff;border:3px solid #111}

/* 10 Sapphire — corporate / tech */
body.theme-sapphire{--navy:#06194a;--navy2:#1856b5;--gold:#75a8ff;--gold2:#d1e1ff;--soft:#f1f6ff}
body.theme-sapphire .hero{min-height:650px;background:linear-gradient(115deg,#06194a,#1856b5);border-radius:0 0 35px 35px}
body.theme-sapphire .hero h1{font-family:Inter,sans-serif;font-weight:800}
body.theme-sapphire .award-card{border-radius:18px;background:#ffffff12}
body.theme-sapphire .info-card{border-radius:14px;box-shadow:0 12px 32px #174ea516}
body.theme-sapphire .section-head h2{font-family:Inter,sans-serif;font-weight:800}

/* 11 Teal — modern cards */
body.theme-teal{--navy:#042b30;--navy2:#0c6d76;--gold:#67d5ca;--gold2:#c4f5ef;--soft:#f0faf8}
body.theme-teal .hero{min-height:670px;background:linear-gradient(135deg,#042b30,#0b7880);margin:0 0 50px;border-radius:0 0 70px 70px}
body.theme-teal .hero-content{padding:20px}
body.theme-teal .award-card{border-radius:28px 28px 80px 28px}
body.theme-teal .info-card{border:0;border-bottom:6px solid var(--theme-accent);border-radius:18px}
body.theme-teal .cards3{gap:28px}

/* 12 Ivory — heritage / classical */
body.theme-ivory{--navy:#2d2417;--navy2:#705734;--gold:#b78a42;--gold2:#ecd5a0;--soft:#fbf8ee}
body.theme-ivory .topbar{background:#fbf8ee}
body.theme-ivory .hero{min-height:700px;background:#2d2417;border:18px solid #b78a4228}
body.theme-ivory .hero h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.03em}
body.theme-ivory .award-card{background:#f9f0d9;color:#2d2417;border:8px double #b78a42;border-radius:4px}
body.theme-ivory .info-card{background:#fffdf7;border:1px solid #d8c39a;border-radius:4px}
body.theme-ivory .section-head h2{font-family:Georgia,serif}

/* V5.8 — generous organisation-name header + horizontal policy footer */
body.theme-royal .topbar, body.theme-emerald .topbar, body.theme-crimson .topbar,
body.theme-purple .topbar, body.theme-ocean .topbar, body.theme-sunset .topbar,
body.theme-forest .topbar, body.theme-rose .topbar, body.theme-mono .topbar,
body.theme-sapphire .topbar, body.theme-teal .topbar, body.theme-ivory .topbar{
  min-height:92px;
  padding:14px clamp(22px,4vw,58px);
}
body[class*="theme-"] .topbar .brand{
  min-width:min(430px,42vw);
  max-width:560px;
  gap:16px;
  font-size:clamp(18px,1.65vw,26px);
  line-height:1.18;
  letter-spacing:-.01em;
  padding-right:28px;
}
body[class*="theme-"] .topbar .brand .brand-mark{
  width:46px;height:46px;min-width:46px;
  display:grid;place-items:center;
  font-size:20px;
  box-shadow:0 7px 18px #0002;
}
body[class*="theme-"] .topbar .nav{
  gap:7px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}
body[class*="theme-"] .topbar .nav>a{
  padding:9px 12px;
  white-space:nowrap;
}
body[class*="theme-"] .footer{
  padding:42px clamp(22px,5vw,70px) 28px;
  display:grid;
  grid-template-columns:minmax(230px,1.5fr) minmax(170px,1fr) minmax(170px,1fr);
  gap:30px 55px;
  align-items:start;
}
body[class*="theme-"] .footer>div{
  min-width:0;
}
body[class*="theme-"] .footer>div:last-child{
  grid-column:1 / -1;
  border-top:1px solid #ffffff20;
  padding-top:18px;
  margin-top:3px;
}
body[class*="theme-"] .footer .footer-policies{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0;
  width:100%;
}
body[class*="theme-"] .footer .footer-policies a{
  display:inline-flex;
  align-items:center;
  padding:0 15px;
  line-height:1.5;
  border-right:1px solid #ffffff30;
  white-space:nowrap;
}
body[class*="theme-"] .footer .footer-policies a:first-child{padding-left:0}
body[class*="theme-"] .footer .footer-policies a:last-child{border-right:0}
@media(max-width:900px){
  body[class*="theme-"] .topbar{
    min-height:auto;
    padding:14px 20px;
    gap:14px;
  }
  body[class*="theme-"] .topbar .brand{
    min-width:0;
    max-width:none;
    flex:1 1 100%;
    padding-right:0;
  }
  body[class*="theme-"] .topbar .nav{
    flex:1 1 100%;
    justify-content:flex-start;
    overflow-x:auto;
    flex-wrap:nowrap;
    padding-bottom:3px;
  }
  body[class*="theme-"] .topbar .nav>a{flex:0 0 auto}
  body[class*="theme-"] .footer{
    grid-template-columns:1fr 1fr;
  }
  body[class*="theme-"] .footer>div:last-child{
    grid-column:1 / -1;
  }
}
@media(max-width:560px){
  body[class*="theme-"] .topbar .brand{
    font-size:19px;
  }
  body[class*="theme-"] .topbar .brand .brand-mark{
    width:40px;height:40px;min-width:40px;
  }
  body[class*="theme-"] .footer{
    grid-template-columns:1fr;
    gap:24px;
  }
  body[class*="theme-"] .footer>div:last-child{
    grid-column:auto;
  }
  body[class*="theme-"] .footer .footer-policies a{
    padding:5px 12px;
    border-right:1px solid #ffffff30;
  }
}

/* ================= V5.9 — 8 NEW VISUAL SYSTEMS ================= */

/* 13 Aurora — neon gradient / futuristic */
body.theme-aurora{--navy:#081225;--navy2:#164e63;--gold:#7cf5d0;--gold2:#b8a7ff;--soft:#f1f7ff}
body.theme-aurora .hero{min-height:720px;background:radial-gradient(circle at 15% 20%,#1f8a70 0,transparent 28%),radial-gradient(circle at 85% 25%,#7b4dff 0,transparent 30%),linear-gradient(135deg,#07111f,#12294c);border-radius:0 0 70px 70px}
body.theme-aurora .hero h1{font-family:Inter,sans-serif;font-weight:850;letter-spacing:-.07em}
body.theme-aurora .award-card,.theme-aurora .info-card{background:#ffffff12;backdrop-filter:blur(20px);border:1px solid #ffffff25;border-radius:24px;box-shadow:0 20px 60px #0002}
body.theme-aurora .gold{background:linear-gradient(100deg,#7cf5d0,#b8a7ff);color:#081225}

/* 14 Art Deco — geometric luxury */
body.theme-artdeco{--navy:#17100b;--navy2:#4a3020;--gold:#c99a3d;--gold2:#f1d58c;--soft:#faf6ec}
body.theme-artdeco *{border-radius:2px}
body.theme-artdeco .topbar{background:#17100b;border-bottom:2px solid #c99a3d}
body.theme-artdeco .hero{min-height:700px;background:#17100b;border:16px double #c99a3d;position:relative}
body.theme-artdeco .hero:before{content:"";position:absolute;inset:28px;border:1px solid #c99a3d55;pointer-events:none}
body.theme-artdeco .hero h1{font-family:Georgia,serif;text-transform:uppercase;letter-spacing:.08em}
body.theme-artdeco .award-card{border:3px double #c99a3d;background:#24170d}
body.theme-artdeco .info-card{border:1px solid #c99a3d;background:#fffdf7}

/* 15 Minimal — white editorial */
body.theme-minimal{--navy:#111318;--navy2:#525866;--gold:#111318;--gold2:#555;--soft:#f7f7f5}
body.theme-minimal .topbar{background:#fff;border-bottom:1px solid #e6e7e9}
body.theme-minimal .hero{background:#f7f7f5;color:#111318;min-height:620px;border-bottom:1px solid #ddd}
body.theme-minimal .hero h1{font-family:Inter,sans-serif;font-weight:500;font-size:clamp(48px,7vw,90px);letter-spacing:-.075em}
body.theme-minimal .hero h1 span{color:#111318}
body.theme-minimal .hero p{color:#555}
body.theme-minimal .award-card,.theme-minimal .info-card{border:1px solid #dedfe2;background:#fff;border-radius:14px;box-shadow:none}
body.theme-minimal .gold,.theme-minimal .primary{background:#111318;color:#fff}

/* 16 Royal Blue — grand institutional */
body.theme-royalblue{--navy:#061f52;--navy2:#0c4fa6;--gold:#d9b35c;--gold2:#f5e1a8;--soft:#f2f6fd}
body.theme-royalblue .hero{min-height:730px;background:linear-gradient(160deg,#061f52 0,#0b4fa6 58%,#071d47 100%);clip-path:polygon(0 0,100% 0,100% 91%,94% 100%,6% 100%,0 91%)}
body.theme-royalblue .hero h1{font-family:Georgia,serif;font-weight:500}
body.theme-royalblue .award-card{border:2px solid #d9b35c;background:#ffffff0e;border-radius:8px}
body.theme-royalblue .info-card{border-top:4px solid #d9b35c;border-radius:8px}

/* 17 Tropical — bright modern */
body.theme-tropical{--navy:#063c46;--navy2:#0b8f82;--gold:#f4c95d;--gold2:#ffeaa9;--soft:#effbf7}
body.theme-tropical .hero{min-height:660px;background:linear-gradient(135deg,#07535c,#0ba486);border-radius:0 0 120px 0}
body.theme-tropical .hero:after{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:#f4c95d22;right:-110px;top:90px}
body.theme-tropical .hero h1{font-family:Inter,sans-serif;font-weight:900}
body.theme-tropical .award-card{border-radius:35px 8px 35px 8px;background:#ffffff18}
body.theme-tropical .info-card{border:0;border-radius:26px;background:#fff;box-shadow:0 18px 40px #0a827018}

/* 18 Midnight — dark luxury */
body.theme-midnight{--navy:#06070b;--navy2:#202431;--gold:#e2b95e;--gold2:#fff0bc;--soft:#f4f4f2}
body.theme-midnight .topbar{background:#06070b;border-bottom:1px solid #e2b95e55}
body.theme-midnight .hero{min-height:740px;background:radial-gradient(circle at 50% 10%,#252a39,#06070b 60%);border-bottom:1px solid #e2b95e44}
body.theme-midnight .hero h1{font-family:Georgia,serif;font-weight:400;color:#fff}
body.theme-midnight .award-card{background:#ffffff08;border:1px solid #e2b95e55;border-radius:2px}
body.theme-midnight .info-card{background:#fff;border-radius:2px;border-top:2px solid #e2b95e}
body.theme-midnight .gold{background:#e2b95e;color:#100d08}

/* 19 Paper — handmade / warm */
body.theme-paper{--navy:#35291e;--navy2:#80664a;--gold:#b8874b;--gold2:#e3bd87;--soft:#f3ecdf}
body.theme-paper .hero{min-height:650px;background:#f3ecdf;color:#35291e;border:1px solid #d9c7aa}
body.theme-paper .hero h1{font-family:Georgia,serif;font-style:italic;font-weight:400}
body.theme-paper .hero p{color:#66533e}
body.theme-paper .award-card{background:#fffaf0;border:1px solid #cdb997;box-shadow:6px 6px 0 #d8c6a8;border-radius:5px}
body.theme-paper .info-card{background:#fffaf0;border:1px solid #d7c4a5;border-radius:5px;box-shadow:5px 5px 0 #dfcfb5}

/* 20 Glass White — premium translucent */
body.theme-glasswhite{--navy:#102030;--navy2:#41657d;--gold:#6fbbd4;--gold2:#bde9f5;--soft:#f2f8fb}
body.theme-glasswhite .hero{min-height:700px;background:linear-gradient(135deg,#dbeaf0,#f7fbfc);color:#102030;position:relative;overflow:hidden}
body.theme-glasswhite .hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:#6fbbd425;left:-140px;top:-180px}
body.theme-glasswhite .hero h1{font-family:Inter,sans-serif;font-weight:750}
body.theme-glasswhite .award-card,.theme-glasswhite .info-card{background:#ffffff99;backdrop-filter:blur(18px);border:1px solid #ffffff;box-shadow:0 18px 50px #41657d20;border-radius:28px}
body.theme-glasswhite .gold{background:#102030;color:#fff}

body.theme-aurora,body.theme-artdeco,body.theme-minimal,body.theme-royalblue,
body.theme-tropical,body.theme-midnight,body.theme-paper,body.theme-glasswhite{
  --theme-primary:var(--navy);--theme-secondary:var(--navy2);--theme-accent:var(--gold);--theme-surface:var(--soft);
}

/* V5.10 — final copyright line */
body[class*="theme-"] .footer .footer-copyright{
  grid-column:1 / -1;
  width:100%;
  border-top:1px solid #ffffff22;
  margin-top:4px;
  padding-top:16px;
  text-align:center;
  font-size:12px;
  letter-spacing:.02em;
  opacity:.82;
}

/* ============================================================
   V5.11 — LAST 8 THEMES: DISTINCT PAGE LAYOUT SYSTEMS
   ============================================================ */

/* 13 AURORA — split-screen hero */
body.theme-aurora .hero{
  min-height:760px!important;
  display:grid!important;
  grid-template-columns:1.05fr .95fr!important;
  align-items:stretch!important;
  gap:0!important;
  padding:0!important;
  border-radius:0!important;
  background:#07111f!important;
}
body.theme-aurora .hero-content{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:clamp(35px,6vw,90px)!important;
}
body.theme-aurora .hero-visual{
  min-height:760px!important;
  border-left:1px solid #ffffff20!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:
    radial-gradient(circle at 30% 30%,#7cf5d055,transparent 25%),
    radial-gradient(circle at 70% 65%,#8c70ff66,transparent 30%),
    linear-gradient(145deg,#10243a,#080d19)!important;
}
body.theme-aurora .hero-visual .award-card{
  width:min(410px,70%);transform:rotate(-5deg)!important;
}

/* 14 ART DECO — centered framed composition */
body.theme-artdeco .hero{
  min-height:720px!important;
  margin:34px clamp(20px,5vw,75px)!important;
  padding:clamp(45px,7vw,100px)!important;
  border:10px double #c99a3d!important;
  outline:1px solid #c99a3d!important;
  outline-offset:12px!important;
  border-radius:0!important;
  text-align:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.theme-artdeco .hero-content{
  max-width:900px!important;margin:auto!important;
}
body.theme-artdeco .hero h1{
  font-size:clamp(55px,8vw,105px)!important;
  line-height:.9!important;
}
body.theme-artdeco .hero-visual{display:none!important}
body.theme-artdeco .section{padding-top:90px!important;padding-bottom:90px!important}

/* 15 MINIMAL — asymmetric magazine layout */
body.theme-minimal .hero{
  min-height:650px!important;
  display:grid!important;
  grid-template-columns:1.4fr .6fr!important;
  align-items:end!important;
  padding:clamp(30px,7vw,100px)!important;
  border-radius:0!important;
  background:#f7f7f5!important;
}
body.theme-minimal .hero-content{padding:0!important;max-width:900px!important}
body.theme-minimal .hero-visual{
  align-self:stretch!important;
  border-left:1px solid #d7d8da!important;
  display:flex!important;
  align-items:flex-end!important;
  padding:0 0 20px 30px!important;
}
body.theme-minimal .hero-visual .award-card{
  width:100%!important;
  box-shadow:20px 20px 0 #e6e6e3!important;
}
body.theme-minimal .section-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  border-bottom:2px solid #111!important;
  padding-bottom:20px!important;
}

/* 16 ROYAL BLUE — diagonal institutional layout */
body.theme-royalblue .hero{
  min-height:760px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  position:relative!important;
  overflow:hidden!important;
  clip-path:none!important;
  border-radius:0!important;
  background:#061f52!important;
}
body.theme-royalblue .hero:after{
  content:""!important;
  position:absolute!important;
  right:-10%!important;
  top:-20%!important;
  width:70%!important;
  height:150%!important;
  background:#0c4fa6!important;
  transform:skewX(-14deg)!important;
}
body.theme-royalblue .hero-content{
  position:relative!important;z-index:2!important;
  width:58%!important;padding:clamp(40px,8vw,110px)!important;
}
body.theme-royalblue .hero-visual{
  position:absolute!important;z-index:3!important;
  right:8%!important;width:34%!important;
  display:flex!important;justify-content:center!important;
}
body.theme-royalblue .hero-visual .award-card{
  width:100%!important;transform:rotate(3deg)!important;
  box-shadow:35px 35px 0 #061b4b55!important;
}

/* 17 TROPICAL — full-width stacked / wave composition */
body.theme-tropical .hero{
  min-height:720px!important;
  display:block!important;
  padding:0!important;
  border-radius:0 0 45% 45% / 0 0 12% 12%!important;
  background:linear-gradient(160deg,#07535c,#0ba486)!important;
  text-align:center!important;
}
body.theme-tropical .hero-content{
  max-width:1000px!important;margin:auto!important;
  padding:100px 25px 45px!important;
}
body.theme-tropical .hero-visual{
  max-width:600px!important;margin:0 auto!important;
  padding-bottom:60px!important;
}
body.theme-tropical .hero-visual .award-card{
  width:100%!important;transform:rotate(-2deg)!important;
  border-radius:40px!important;
}
body.theme-tropical .section-head{text-align:center!important;max-width:850px!important;margin:auto!important}

/* 18 MIDNIGHT — cinematic centered / floating */
body.theme-midnight .hero{
  min-height:820px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:60px 20px!important;
  border-radius:0!important;
  background:radial-gradient(ellipse at center,#293142 0,#090b10 45%,#030407 100%)!important;
}
body.theme-midnight .hero-content{max-width:900px!important;z-index:2!important}
body.theme-midnight .hero-visual{
  position:absolute!important;
  left:50%!important;top:50%!important;
  transform:translate(-50%,-34%)!important;
  opacity:.22!important;z-index:1!important;
}
body.theme-midnight .hero-visual .award-card{
  width:520px!important;transform:rotate(-8deg)!important;
}
body.theme-midnight .hero h1{font-size:clamp(60px,9vw,120px)!important;position:relative;z-index:3!important}

/* 19 PAPER — notebook two-column composition */
body.theme-paper .hero{
  min-height:700px!important;
  display:grid!important;
  grid-template-columns:.7fr 1.3fr!important;
  align-items:center!important;
  padding:clamp(40px,7vw,100px)!important;
  border-radius:8px!important;
  margin:30px!important;
  background:#f3ecdf!important;
  border:1px solid #cdb997!important;
}
body.theme-paper .hero-content{order:2!important;padding:20px!important}
body.theme-paper .hero-visual{order:1!important}
body.theme-paper .hero-visual .award-card{
  width:100%!important;transform:rotate(4deg)!important;
}
body.theme-paper .hero h1{font-size:clamp(48px,7vw,85px)!important}

/* 20 GLASS WHITE — floating cards / centered luxury */
body.theme-glasswhite .hero{
  min-height:760px!important;
  padding:80px 5vw!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:0 0 80px 80px!important;
  background:linear-gradient(135deg,#dbeaf0,#f7fbfc)!important;
}
body.theme-glasswhite .hero-content{max-width:950px!important}
body.theme-glasswhite .hero-visual{
  width:min(760px,90vw)!important;
  margin:45px auto 0!important;
}
body.theme-glasswhite .hero-visual .award-card{
  width:100%!important;
  transform:translateY(0)!important;
  box-shadow:0 35px 90px #41657d30!important;
}
body.theme-glasswhite .cards3{
  grid-template-columns:repeat(3,1fr)!important;
  align-items:stretch!important;
}
body.theme-glasswhite .info-card:nth-child(2){transform:translateY(-22px)!important}
body.theme-glasswhite .info-card:nth-child(3){transform:translateY(-44px)!important}

/* Mobile adaptations for the eight distinct layouts */
@media(max-width:850px){
 body.theme-aurora .hero,
 body.theme-minimal .hero,
 body.theme-paper .hero{grid-template-columns:1fr!important}
 body.theme-aurora .hero-visual,
 body.theme-minimal .hero-visual{min-height:320px!important;border-left:0!important;border-top:1px solid #ffffff20!important}
 body.theme-royalblue .hero-content{width:100%!important}
 body.theme-royalblue .hero-visual{position:relative!important;right:auto!important;width:min(80%,430px)!important;margin:20px auto 50px!important}
 body.theme-royalblue .hero{display:block!important;padding-top:60px!important}
 body.theme-paper .hero{margin:15px!important}
 body.theme-glasswhite .cards3{grid-template-columns:1fr!important}
 body.theme-glasswhite .info-card:nth-child(2),
 body.theme-glasswhite .info-card:nth-child(3){transform:none!important}
}

/* V5.11 — force all policy links into one horizontal policy rail */
body[class*="theme-"] .footer .footer-policies{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  overflow-x:auto!important;
  white-space:nowrap!important;
  scrollbar-width:thin;
}
body[class*="theme-"] .footer .footer-policies a{
  flex:0 0 auto!important;
  border-right:1px solid #ffffff35!important;
  padding:4px 14px!important;
}
body[class*="theme-"] .footer .footer-policies a:last-child{border-right:0!important}
@media(max-width:700px){
 body[class*="theme-"] .footer .footer-policies{justify-content:flex-start!important}
}

/* =========================================================
   V5.12 — TRUE THEME INTERFACES
   Each theme now changes HEADER + HERO + ABOUT/SECTIONS +
   CARDS + STATS + CTA + FOOTER, not only colours.
   ========================================================= */

/* ---------- 13 AURORA: floating glass navigation ---------- */
body.theme-aurora .topbar{background:#07111fdd!important;backdrop-filter:blur(18px)!important;border:0!important;border-radius:0 0 28px 28px!important;margin:0 24px!important;position:relative!important;z-index:20}
body.theme-aurora .topbar .brand{font-family:Inter,sans-serif;font-weight:800!important}
body.theme-aurora .topbar .nav a{border:1px solid #ffffff18!important;border-radius:999px!important;background:#ffffff08!important}
body.theme-aurora .hero{border-radius:0!important}
body.theme-aurora .section{position:relative!important}
body.theme-aurora .section:nth-of-type(even){background:linear-gradient(135deg,#eefbfa,#f5f1ff)!important}
body.theme-aurora .section-head h2{font-family:Inter,sans-serif;font-weight:800!important;letter-spacing:-.06em!important}
body.theme-aurora .info-card{border-radius:30px!important;background:#ffffffcc!important;backdrop-filter:blur(15px)!important}
body.theme-aurora .stat-card{border-radius:26px!important;background:linear-gradient(135deg,#fff,#eef9ff)!important}
body.theme-aurora .footer{background:#050b15!important;border-radius:42px 42px 0 0!important}

/* ---------- 14 ART DECO: black-gold framed interface ---------- */
body.theme-artdeco .topbar{margin:18px 28px!important;background:#17100b!important;border:2px solid #c99a3d!important;outline:1px solid #c99a3d55!important;outline-offset:5px!important}
body.theme-artdeco .brand{font-family:Georgia,serif!important;text-transform:uppercase!important;letter-spacing:.08em!important}
body.theme-artdeco .nav a{border-left:1px solid #c99a3d55!important;border-radius:0!important}
body.theme-artdeco .section{background:#faf6ec!important}
body.theme-artdeco .section:nth-of-type(even){background:#17100b!important;color:#fff!important}
body.theme-artdeco .section:nth-of-type(even) .muted{color:#d6c6a8!important}
body.theme-artdeco .section-head{text-align:center!important;border-top:1px solid #c99a3d!important;border-bottom:1px solid #c99a3d!important;padding:25px!important}
body.theme-artdeco .section-head h2{font-family:Georgia,serif!important;text-transform:uppercase!important;letter-spacing:.12em!important}
body.theme-artdeco .info-card{border:3px double #c99a3d!important;border-radius:0!important;background:#fffdf7!important}
body.theme-artdeco .stat-card{border:1px solid #c99a3d!important;border-radius:0!important}
body.theme-artdeco .footer{border-top:8px double #c99a3d!important;background:#17100b!important}

/* ---------- 15 MINIMAL: Swiss editorial ---------- */
body.theme-minimal .topbar{height:110px!important;margin:0!important;border-bottom:1px solid #111!important;border-radius:0!important;padding:0 6vw!important}
body.theme-minimal .brand-mark{display:none!important}
body.theme-minimal .brand{font-family:Inter,sans-serif!important;font-size:18px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.12em!important}
body.theme-minimal .nav a{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.08em!important;border-radius:0!important}
body.theme-minimal .section{padding:110px 7vw!important}
body.theme-minimal .section-head{max-width:1100px!important;margin:0 auto 55px!important;text-align:left!important}
body.theme-minimal .section-head h2{font-size:clamp(42px,6vw,80px)!important;font-family:Inter,sans-serif!important;font-weight:500!important;letter-spacing:-.08em!important}
body.theme-minimal .info-card{border:0!important;border-top:2px solid #111!important;border-radius:0!important;padding:28px 0!important;box-shadow:none!important}
body.theme-minimal .stat-card{border-left:1px solid #111!important;border-radius:0!important;background:transparent!important}
body.theme-minimal .footer{background:#111318!important;border-radius:0!important}
body.theme-minimal .footer b{font-family:Inter,sans-serif!important;text-transform:uppercase!important;letter-spacing:.08em!important}

/* ---------- 16 ROYAL BLUE: institutional ribbon ---------- */
body.theme-royalblue .topbar{background:#061f52!important;border-radius:0!important;border-bottom:6px solid #d9b35c!important;padding:18px 5vw!important}
body.theme-royalblue .brand{font-family:Georgia,serif!important}
body.theme-royalblue .nav a{background:#ffffff0d!important;border-radius:4px!important}
body.theme-royalblue .section{position:relative!important}
body.theme-royalblue .section:nth-of-type(even){background:#edf3fc!important}
body.theme-royalblue .section-head{border-left:7px solid #d9b35c!important;padding-left:22px!important}
body.theme-royalblue .section-head h2{font-family:Georgia,serif!important}
body.theme-royalblue .info-card{border-radius:8px!important;border:1px solid #c9d8ee!important;box-shadow:0 14px 30px #061f5212!important}
body.theme-royalblue .stat-card{background:#061f52!important;color:#fff!important;border-radius:8px!important}
body.theme-royalblue .footer{background:#041634!important;border-radius:0!important;border-top:6px solid #d9b35c!important}

/* ---------- 17 TROPICAL: playful pill interface ---------- */
body.theme-tropical .topbar{background:#ffffff!important;border:0!important;border-radius:30px!important;margin:14px 20px!important;box-shadow:0 10px 30px #07535c18!important}
body.theme-tropical .brand{font-family:Inter,sans-serif!important;font-weight:900!important}
body.theme-tropical .nav a{border-radius:999px!important;background:#effbf7!important}
body.theme-tropical .section{padding:90px 5vw!important}
body.theme-tropical .section-head{text-align:center!important}
body.theme-tropical .section-head h2{font-family:Inter,sans-serif!important;font-weight:900!important;letter-spacing:-.06em!important}
body.theme-tropical .info-card{border-radius:34px!important;border:0!important;box-shadow:0 20px 45px #07535c15!important}
body.theme-tropical .stat-card{border-radius:999px!important;padding:25px!important}
body.theme-tropical .footer{border-radius:70px 70px 0 0!important;background:#063c46!important}

/* ---------- 18 MIDNIGHT: cinematic luxury ---------- */
body.theme-midnight .topbar{background:#030407!important;border-bottom:1px solid #e2b95c55!important;border-radius:0!important}
body.theme-midnight .brand{font-family:Georgia,serif!important;color:#f4e4b4!important}
body.theme-midnight .nav a{color:#ddd!important;border-bottom:1px solid transparent!important;border-radius:0!important}
body.theme-midnight .nav a:hover{border-bottom-color:#e2b95e!important}
body.theme-midnight .section{background:#080a0f!important;color:#f4f4f2!important;padding:110px 7vw!important}
body.theme-midnight .section:nth-of-type(even){background:#0d1017!important}
body.theme-midnight .section-head h2{font-family:Georgia,serif!important;font-weight:400!important;color:#fff!important}
body.theme-midnight .info-card{background:#121722!important;border:1px solid #e2b95e33!important;border-radius:2px!important;color:#fff!important}
body.theme-midnight .stat-card{background:#030407!important;border:1px solid #ffffff15!important;border-radius:2px!important}
body.theme-midnight .footer{background:#030407!important;border-radius:0!important;border-top:1px solid #e2b95e44!important}

/* ---------- 19 PAPER: handmade cards + paper sections ---------- */
body.theme-paper .topbar{background:#fffaf0!important;border-bottom:1px dashed #b8874b!important;border-radius:0!important}
body.theme-paper .brand{font-family:Georgia,serif!important;font-style:italic!important}
body.theme-paper .nav a{font-family:Georgia,serif!important;border-bottom:1px dashed #b8874b!important;border-radius:0!important}
body.theme-paper .section{background:#f3ecdf!important;background-image:radial-gradient(#b8874b16 1px,transparent 1px)!important;background-size:18px 18px!important}
body.theme-paper .section:nth-of-type(even){background:#fffaf0!important}
body.theme-paper .section-head h2{font-family:Georgia,serif!important;font-style:italic!important}
body.theme-paper .info-card{border:1px dashed #b8874b!important;border-radius:4px!important;background:#fffaf0!important;box-shadow:5px 5px 0 #d8c6a8!important}
body.theme-paper .stat-card{border:1px solid #cdb997!important;border-radius:4px!important;background:#fffaf0!important}
body.theme-paper .footer{background:#35291e!important;border-radius:0!important}

/* ---------- 20 GLASS WHITE: floating app interface ---------- */
body.theme-glasswhite .topbar{background:#ffffffbb!important;backdrop-filter:blur(20px)!important;border:1px solid #fff!important;border-radius:999px!important;margin:14px 3vw!important;box-shadow:0 15px 45px #41657d18!important}
body.theme-glasswhite .brand{font-family:Inter,sans-serif!important;font-weight:800!important}
body.theme-glasswhite .nav a{background:#ffffff88!important;border:1px solid #fff!important;border-radius:999px!important}
body.theme-glasswhite .section{background:#f2f8fb!important;padding:100px 5vw!important}
body.theme-glasswhite .section:nth-of-type(even){background:#e7f2f6!important}
body.theme-glasswhite .section-head{text-align:center!important}
body.theme-glasswhite .section-head h2{font-family:Inter,sans-serif!important;font-weight:750!important;letter-spacing:-.05em!important}
body.theme-glasswhite .info-card{border:1px solid #fff!important;border-radius:30px!important;background:#ffffff99!important;backdrop-filter:blur(18px)!important;box-shadow:0 20px 55px #41657d15!important}
body.theme-glasswhite .stat-card{border:1px solid #fff!important;border-radius:30px!important;background:#ffffffaa!important}
body.theme-glasswhite .footer{background:#102030!important;border-radius:50px 50px 0 0!important;margin-top:40px!important}

/* Keep mobile headers genuinely theme-specific while remaining usable. */
@media(max-width:700px){
 body.theme-aurora .topbar,body.theme-tropical .topbar,body.theme-glasswhite .topbar{margin:8px!important;border-radius:22px!important}
 body.theme-artdeco .topbar{margin:10px!important}
 body.theme-minimal .topbar{height:auto!important;padding:20px!important}
 body.theme-minimal .section,body.theme-midnight .section,body.theme-paper .section{padding:70px 5vw!important}
}

/* =========================================================
   V5.13 — COLOUR MATCHING + BUTTON CONTRAST SAFETY
   Prevents Save/Submit/Primary buttons from disappearing
   against theme backgrounds and custom palettes.
   ========================================================= */

/* Theme-safe semantic colours. The custom palette still controls
   branding, while action controls get readable foregrounds. */
body[class*="theme-"]{
  --action-primary:var(--theme-primary,#08142d);
  --action-accent:var(--theme-accent,#d6ae52);
  --action-surface:var(--theme-surface,#f5f7fb);
  --action-text:#ffffff;
  --action-dark:#111318;
  --border-safe:color-mix(in srgb,var(--action-primary) 28%,#ffffff);
}

/* Core action buttons */
body[class*="theme-"] .btn.primary,
body[class*="theme-"] button.primary,
body[class*="theme-"] .btn.gold,
body[class*="theme-"] button.gold{
  position:relative;
  font-weight:800!important;
  text-shadow:none!important;
  box-shadow:0 7px 18px #00000018!important;
  border:1px solid transparent!important;
}

/* Gold/accent button: automatically choose dark text.
   This is safer than inheriting white from a dark theme. */
body[class*="theme-"] .btn.gold,
body[class*="theme-"] button.gold{
  background:var(--action-accent)!important;
  color:#111318!important;
  border-color:color-mix(in srgb,var(--action-accent) 72%,#111318)!important;
}

/* Primary button: dark/strong background + white text. */
body[class*="theme-"] .btn.primary,
body[class*="theme-"] button.primary{
  background:var(--action-primary)!important;
  color:#ffffff!important;
  border-color:var(--action-primary)!important;
}

/* Generic buttons and submit buttons must never inherit an
   unreadable section colour. */
body[class*="theme-"] button:not(.light):not(.ghost),
body[class*="theme-"] input[type="submit"],
body[class*="theme-"] input[type="button"]{
  font-weight:800!important;
}

/* Light button stays readable on both dark and light themes. */
body[class*="theme-"] .btn.light{
  background:#ffffff!important;
  color:#182230!important;
  border:1px solid #cfd5dd!important;
  box-shadow:0 5px 14px #0000000b!important;
}

/* Ghost controls */
body[class*="theme-"] .btn.ghost{
  background:transparent!important;
  color:var(--action-primary)!important;
  border:1px solid var(--action-primary)!important;
}

/* Buttons inside dark hero/footer areas */
body[class*="theme-"] .hero .btn.light,
body[class*="theme-"] .footer .btn.light{
  background:#ffffff!important;
  color:#111318!important;
}

/* Form focus visibility */
body[class*="theme-"] .form-control:focus,
body[class*="theme-"] input:focus,
body[class*="theme-"] select:focus,
body[class*="theme-"] textarea:focus{
  outline:3px solid color-mix(in srgb,var(--action-accent) 45%,transparent)!important;
  outline-offset:1px!important;
  border-color:var(--action-accent)!important;
}

/* Badges/status labels */
body[class*="theme-"] .badge,
body[class*="theme-"] .status-badge{
  border:1px solid color-mix(in srgb,var(--action-primary) 18%,#ffffff)!important;
}

/* Table action links */
body[class*="theme-"] table .btn{
  text-shadow:none!important;
}

/* Cards that are dark by theme should have readable muted text. */
body.theme-midnight .info-card .muted,
body.theme-midnight .info-card p,
body.theme-midnight .info-card small,
body.theme-aurora .info-card .muted,
body.theme-aurora .info-card p,
body.theme-aurora .info-card small{
  color:inherit!important;
  opacity:.78!important;
}

/* Section-specific Save/Submit safety */
body[class*="theme-"] .panel button,
body[class*="theme-"] .panel .btn,
body[class*="theme-"] form button{
  min-height:42px;
}

/* Ensure disabled controls are visibly disabled rather than
   looking like active buttons. */
body[class*="theme-"] button:disabled,
body[class*="theme-"] .btn.disabled,
body[class*="theme-"] input:disabled{
  opacity:.48!important;
  cursor:not-allowed!important;
  filter:grayscale(.25)!important;
}

/* Horizontal policy links remain visible on dark footers. */
body[class*="theme-"] .footer .footer-policies a{
  color:inherit!important;
}

body.theme-artdeco .footer,
body.theme-midnight .footer,
body.theme-aurora .footer,
body.theme-royalblue .footer{
  color:#ffffff!important;
}
body.theme-artdeco .footer a,
body.theme-midnight .footer a,
body.theme-aurora .footer a,
body.theme-royalblue .footer a{
  color:#ffffff!important;
}
body.theme-minimal .footer,
body.theme-paper .footer,
body.theme-glasswhite .footer,
body.theme-tropical .footer{
  color:#ffffff!important;
}
