.eyebrow{font-size:.8rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:.9rem}
.head{max-width:40rem;margin-bottom:2.5rem}

.page-hero{position:relative;isolation:isolate;overflow:hidden;padding:6rem 0 9rem;color:var(--white);background:radial-gradient(900px 520px at 80% 20%,rgba(27,74,140,.6),transparent 70%),linear-gradient(135deg,var(--navy),var(--navy-deep))}
.page-hero::after{content:"";position:absolute;right:-140px;bottom:-160px;width:460px;height:460px;border:1.5px solid rgba(217,160,58,.4);border-radius:50%;z-index:-1}
.page-hero h1{color:var(--white);font-size:clamp(2.9rem,6.2vw,5rem);letter-spacing:-.015em;max-width:14ch;margin-bottom:1.6rem}
.page-hero p{max-width:34rem;font-size:1.2rem;color:rgba(255,255,255,.88);margin-bottom:2.2rem}
.page-hero .crumb{font-size:.95rem;margin-bottom:1.2rem;color:rgba(255,255,255,.65)}
.page-hero .crumb a{text-decoration:none;color:var(--gold-light)}
.page-hero :focus-visible{outline-color:var(--gold-light)}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:-4.5rem;position:relative;z-index:5}
.stat{background:var(--white);border-radius:10px;padding:1.8rem 1rem;text-align:center;border-top:3px solid var(--gold);box-shadow:0 22px 40px -22px rgba(3,27,59,.45)}
.stat b{display:block;font-family:var(--serif);font-size:3.2rem;line-height:1;color:var(--navy);margin-bottom:.5rem}
.stat span{font-size:.95rem;color:var(--muted)}

.reg{margin:2rem 0 0;padding-left:1.25rem;border-left:3px solid var(--gold);color:var(--muted)}
.reg b{display:block;color:var(--navy);font-weight:500}
.split .actions{margin-top:1.8rem}

.filters{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2.2rem}
.filters button{padding:.6rem 1.3rem;border-radius:999px;border:1.5px solid var(--line);background:var(--white);color:var(--navy);font:500 .95rem var(--sans);cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.filters button:hover{border-color:var(--gold)}
.filters button.on{background:var(--navy);border-color:var(--navy);color:var(--white)}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.4rem}
.card{position:relative;overflow:hidden;text-align:left;font:inherit;background:var(--white);border:1px solid var(--line);border-radius:10px;padding:1.9rem 1.6rem 1.6rem;cursor:pointer;animation:rise .6s var(--ease) both;transition:transform .35s var(--ease),box-shadow .35s}
.card::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--gold-line);transition:width .45s var(--ease)}
.card:hover,.card:focus-visible{transform:translateY(-6px);box-shadow:0 26px 40px -24px rgba(3,27,59,.4)}
.card:hover::before,.card:focus-visible::before{width:100%}
.card .ic{font-family:var(--serif);font-size:1.1rem;font-weight:700;color:var(--gold-deep);margin-bottom:.8rem}
.card h3{font-size:1.75rem;margin-bottom:.6rem}
.card p{color:var(--muted);font-size:1rem;margin-bottom:1rem}
.card em{font-style:normal;font-weight:500;color:var(--royal)}

.section-navy{background:radial-gradient(800px 480px at 90% 0,rgba(27,74,140,.5),transparent 70%),linear-gradient(135deg,var(--navy),var(--navy-deep));color:rgba(255,255,255,.82)}
.section-navy h2{color:var(--white)}
.section-navy .eyebrow{color:var(--gold-light)}
.acc{max-width:52rem;margin-bottom:2.2rem}
.acc details{border:1px solid rgba(255,255,255,.18);border-radius:10px;margin-bottom:.8rem;transition:border-color .3s,background .3s}
.acc details[open]{border-color:var(--gold);background:rgba(255,255,255,.06)}
.acc summary{position:relative;padding:1.2rem 3.2rem 1.2rem 1.4rem;font-family:var(--serif);font-size:1.4rem;font-weight:600;color:var(--white);cursor:pointer;list-style:none}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";position:absolute;right:1.4rem;top:50%;transform:translateY(-50%);font:400 1.6rem var(--sans);color:var(--gold-light)}
.acc details[open] summary::after{content:"\2212"}
.acc details p{padding:0 1.4rem;margin:0 0 1.3rem}
.acc a{color:var(--gold-light)}

.cards{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.cards li{background:var(--mist);border-left:3px solid var(--gold);border-radius:8px;padding:1.2rem 1.5rem;color:var(--muted)}
.cards b{display:block;font-family:var(--serif);font-size:1.4rem;font-weight:600;color:var(--navy)}
.cards a{text-decoration:none;transition:color .2s}.cards a:hover{color:var(--royal)}

.modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:1rem;background:rgba(3,27,59,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade .25s}
.modal[hidden]{display:none}
@keyframes fade{from{opacity:0}}
.m-box{position:relative;width:100%;max-width:760px;max-height:92vh;overflow:auto;background:var(--white);border-radius:14px;animation:rise .4s var(--ease)}
.m-img{min-height:230px;border-radius:14px 14px 0 0;background:var(--img,none) center/cover,linear-gradient(160deg,var(--mist),var(--mist-deep))}
.m-body{padding:1.8rem 2rem 2.2rem}
.m-body h3{font-size:2.2rem;margin-bottom:1rem}
.m-note{padding:.9rem 1.1rem;background:var(--mist);border-left:3px solid var(--gold);border-radius:6px;color:var(--navy)}
.m-note:empty{display:none}
.m-x{position:absolute;top:.8rem;right:.8rem;z-index:2;width:42px;height:42px;border:0;border-radius:50%;background:var(--white);font-size:1.7rem;line-height:1;color:var(--navy);cursor:pointer;box-shadow:0 6px 16px -6px rgba(3,27,59,.4)}
.m-x:hover{background:var(--gold-light)}

@media(max-width:900px){
  .stats{grid-template-columns:1fr 1fr}
  .page-hero{padding:4.5rem 0 8rem}
}
@media(max-width:600px){
  .stat b{font-size:2.5rem}
  .m-body{padding:1.4rem}
  .m-body h3{font-size:1.9rem}
  .acc summary{font-size:1.25rem}
}

.reveal-all [data-reveal]{opacity:1!important;transform:none!important}
