:root{
  --ccmm-yellow:#F9C92A;
  --ccmm-yellow-soft:#FFF2B8;
  --ccmm-orange:#F47B33;
  --ccmm-coral:#EE5C4F;
  --ccmm-red:#D82422;
  --ccmm-blue:#064766;
  --ccmm-blue-2:#244F93;
  --ccmm-navy:#25285E;
  --ccmm-green:#2F865E;
  --ccmm-cream:#FFF8D7;
  --ccmm-ink:#102333;
  --ccmm-white:#fffdf2;
  --radius-xl:32px;
  --shadow:0 24px 60px rgba(6,71,102,.16);
  --font-display:Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
  --font-body:'Arial Narrow', Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ccmm-ink);
  background:var(--ccmm-cream);
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{text-decoration:none}
.ccmm-nav{
  background:rgba(255,248,215,.92);
  backdrop-filter:blur(10px);
  border-bottom:3px solid var(--ccmm-blue);
}
.brand-logo{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--ccmm-blue)}
.navbar-brand span{
  font-family:var(--font-display);
  letter-spacing:.04em;
  color:var(--ccmm-blue);
}
.nav-link{
  color:var(--ccmm-blue)!important;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:.86rem;
}
.navbar-toggler{border:2px solid var(--ccmm-blue)}
.btn-ccmm{
  background:var(--ccmm-blue);
  color:var(--ccmm-cream);
  border:2px solid var(--ccmm-blue);
  border-radius:999px;
  padding:.82rem 1.25rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.btn-ccmm:hover{background:var(--ccmm-red);border-color:var(--ccmm-red);color:#fff}
.btn-outline-ccmm{
  background:transparent;
  color:var(--ccmm-blue);
  border:2px solid var(--ccmm-blue);
  border-radius:999px;
  padding:.82rem 1.25rem;
  font-weight:900;
  text-transform:uppercase;
}
.btn-outline-ccmm:hover{background:var(--ccmm-blue);color:var(--ccmm-cream)}
.hero-section{
  position:relative;
  min-height:100vh;
  padding:120px 0 60px;
  background:var(--ccmm-yellow);
  isolation:isolate;
}
.hero-section::before{
  content:"";
  position:absolute;inset:0;
  background-image:radial-gradient(rgba(6,71,102,.12) 1.2px, transparent 1.2px);
  background-size:10px 10px;
  opacity:.55;
  z-index:-2;
}
.hero-horizon{
  position:absolute;
  left:0;right:0;bottom:0;height:28%;
  background:var(--ccmm-blue);
  clip-path:polygon(0 72%,8% 61%,18% 70%,28% 48%,38% 66%,49% 38%,62% 63%,70% 44%,78% 64%,86% 50%,100% 72%,100% 100%,0 100%);
  z-index:-1;
}
.hero-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:40px;
}
.eyebrow{
  display:inline-block;
  color:var(--ccmm-blue);
  font-weight:1000;
  letter-spacing:.11em;
  text-transform:uppercase;
  font-size:.9rem;
  margin-bottom:14px;
  border-bottom:3px solid currentColor;
}
.eyebrow.light{color:var(--ccmm-yellow)}
h1,h2,h3,h4{font-family:var(--font-display);line-height:.95;margin:0;color:var(--ccmm-blue);text-transform:uppercase;letter-spacing:.02em}
h1{font-size:clamp(3.7rem,9vw,8.4rem);max-width:900px}
h2{font-size:clamp(2.4rem,5vw,5.2rem)}
h3{font-size:clamp(1.5rem,3vw,2.7rem)}
.lead-copy,.section-text{
  font-size:clamp(1.04rem,1.5vw,1.25rem);
  line-height:1.55;
  max-width:720px;
  font-weight:700;
}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}
.hero-tags{display:flex;gap:8px;flex-wrap:wrap}
.hero-tags span,.impact-chips span{
  background:var(--ccmm-green);
  color:var(--ccmm-yellow-soft);
  padding:.55rem .85rem;
  border-radius:0;
  font-weight:1000;
  text-transform:uppercase;
  box-shadow:6px 6px 0 var(--ccmm-blue);
}
.hero-art{position:relative;min-height:680px;display:grid;place-items:center}
.poster-img{
  width:min(450px,84vw);
  border:8px solid var(--ccmm-blue);
  box-shadow:18px 18px 0 var(--ccmm-red);
  transform:rotate(1.5deg);
}
.floating-illustration{
  position:absolute;
  width:min(540px,90vw);
  bottom:-18px;left:-20px;
  filter:drop-shadow(0 20px 18px rgba(6,71,102,.22));
}
.section{padding:90px 0;position:relative}
.intro-section{background:var(--ccmm-cream)}
.vertical-title-card{
  background:var(--ccmm-blue);
  color:var(--ccmm-cream);
  padding:34px;
  border-radius:0;
  box-shadow:14px 14px 0 var(--ccmm-yellow);
}
.vertical-title-card span{
  color:var(--ccmm-red);
  background:var(--ccmm-cream);
  padding:.25rem .55rem;
  font-weight:1000;
  text-transform:uppercase;
}
.vertical-title-card h2{color:var(--ccmm-cream);font-size:clamp(2rem,4vw,4.2rem);margin-top:24px}
.stats-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:4px solid var(--ccmm-blue);
  margin-top:28px;
}
.stats-strip div{padding:20px;border-right:3px solid var(--ccmm-blue);background:#fff}
.stats-strip div:last-child{border-right:0}
.stats-strip strong{display:block;font-family:var(--font-display);font-size:2.4rem;color:var(--ccmm-red);line-height:1}
.stats-strip span{font-weight:900;text-transform:uppercase;color:var(--ccmm-blue)}
.dark-section{background:var(--ccmm-ink);color:var(--ccmm-cream)}
.dark-section h2,.dark-section h3,.dark-section h4{color:var(--ccmm-yellow)}
.section-head{max-width:920px;margin-bottom:36px}
.panel-img{width:100%;height:100%;min-height:420px;object-fit:cover;border:6px solid var(--ccmm-yellow);box-shadow:16px 16px 0 var(--ccmm-red)}
.light-block{background:var(--ccmm-blue);padding:34px;border:4px solid var(--ccmm-yellow)}
.light-block p{color:var(--ccmm-cream);font-weight:700;font-size:1.08rem;line-height:1.5}
.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}
.mini-grid article{background:var(--ccmm-cream);padding:22px;color:var(--ccmm-blue)}
.mini-grid span{font-family:var(--font-display);font-size:2rem;color:var(--ccmm-red)}
.mini-grid h4{color:var(--ccmm-blue);font-size:1.6rem;margin:8px 0}
.mini-grid p{color:var(--ccmm-ink);font-size:.98rem;margin:0}
.medals-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}
.medal-card{padding:22px;background:#fff;color:var(--ccmm-blue);border-top:10px solid var(--ccmm-yellow);min-height:150px}
.medal-card b{display:block;font-family:var(--font-display);font-size:2rem;text-transform:uppercase;line-height:1}
.medal-card span{font-weight:800}.gold{border-color:#d7a21c}.silver{border-color:#bbb}.bronze{border-color:#9a5735}.bos{border-color:var(--ccmm-red)}
.agenda-section{background:var(--ccmm-yellow)}
.agenda-timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border:4px solid var(--ccmm-blue);background:#fff}
.agenda-item{padding:22px;border-right:3px solid var(--ccmm-blue);min-height:260px}
.agenda-item:last-child{border-right:0}.agenda-item span{display:block;background:var(--ccmm-blue);color:var(--ccmm-cream);font-weight:1000;padding:.35rem .5rem;margin-bottom:16px;text-transform:uppercase}.agenda-item h3{font-size:1.55rem;color:var(--ccmm-red);margin-bottom:12px}.agenda-item p{font-weight:800;line-height:1.35}
.registration-section{background:var(--ccmm-orange)}
.price-poster{background:var(--ccmm-blue);color:var(--ccmm-cream);padding:34px;border-radius:28px;box-shadow:16px 16px 0 var(--ccmm-yellow)}
.price-poster h2{color:var(--ccmm-cream);margin-bottom:24px}.price-line{display:flex;justify-content:space-between;gap:18px;border-top:2px solid var(--ccmm-yellow-soft);padding:18px 0;font-weight:1000}.price-line span{color:var(--ccmm-yellow-soft);text-transform:uppercase}.price-line b{color:#fff;text-align:right}.featured b{color:var(--ccmm-yellow)}
.white-note{background:#fff;padding:34px;border-radius:0;border:5px solid var(--ccmm-blue);box-shadow:14px 14px 0 var(--ccmm-red)}
.white-note h3{color:var(--ccmm-blue);margin-bottom:16px}.white-note p,.check-list{font-weight:800;line-height:1.5}.check-list{padding-left:1.1rem}.check-list li{margin-bottom:10px}
.categories-section{background:var(--ccmm-cream)}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.category-grid article{background:var(--ccmm-blue);color:var(--ccmm-cream);padding:28px;min-height:260px;border-bottom:14px solid var(--ccmm-yellow)}.category-grid h3{color:var(--ccmm-yellow);margin-bottom:18px}.category-grid p{font-weight:800;line-height:1.45}
.gastro-section{background:var(--ccmm-navy);color:var(--ccmm-cream)}.gastro-section h2{color:var(--ccmm-yellow)}.light-text{color:var(--ccmm-cream)}.framed{border-color:var(--ccmm-cream);box-shadow:16px 16px 0 var(--ccmm-yellow)}.impact-chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.impact-section{background:#fff}.impact-grid{display:grid;grid-template-columns:repeat(6,1fr);border:4px solid var(--ccmm-blue)}.impact-grid div{padding:24px;border-right:3px solid var(--ccmm-blue);background:var(--ccmm-yellow-soft)}.impact-grid div:last-child{border-right:0}.impact-grid strong{display:block;font-family:var(--font-display);font-size:2.1rem;color:var(--ccmm-red);line-height:1}.impact-grid span{font-weight:1000;text-transform:uppercase;color:var(--ccmm-blue)}
.sponsors-section{background:var(--ccmm-yellow)}.sponsor-table{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.sponsor-table div{background:#fff;border:4px solid var(--ccmm-blue);padding:20px;box-shadow:8px 8px 0 var(--ccmm-blue)}.sponsor-table b{font-family:var(--font-display);font-size:1.9rem;color:var(--ccmm-blue);text-transform:uppercase}.sponsor-table span{display:block;color:var(--ccmm-red);font-weight:1000;font-size:1.2rem;margin:8px 0}.sponsor-table small{display:block;font-weight:800;line-height:1.4;color:var(--ccmm-ink)}
.gallery-section{background:var(--ccmm-cream)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gallery-grid img{height:330px;width:100%;object-fit:cover;border:5px solid var(--ccmm-blue)}
.cta-section{background:var(--ccmm-blue)}.cta-card{background:var(--ccmm-red);color:#fff;padding:42px;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;box-shadow:16px 16px 0 var(--ccmm-yellow)}.cta-card h2{color:#fff}.contact-list p{font-weight:900;font-size:1.15rem;margin-bottom:10px}
.site-footer{background:var(--ccmm-ink);color:var(--ccmm-cream);padding:28px 0;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.in-view{opacity:1;transform:none}.delay-1{transition-delay:.12s}
@media (max-width:1199px){.agenda-timeline{grid-template-columns:repeat(3,1fr)}.agenda-item:nth-child(3n){border-right:0}.impact-grid{grid-template-columns:repeat(3,1fr)}.impact-grid div{border-bottom:3px solid var(--ccmm-blue)}.category-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:991px){.hero-grid{grid-template-columns:1fr}.hero-art{min-height:620px}.floating-illustration{left:50%;transform:translateX(-50%);bottom:-35px;width:min(620px,96vw)}.poster-img{opacity:.45}.stats-strip{grid-template-columns:repeat(2,1fr)}.stats-strip div:nth-child(2){border-right:0}.medals-row{grid-template-columns:repeat(2,1fr)}.cta-card{grid-template-columns:1fr}.panel-img{min-height:320px}.navbar-collapse{padding:20px 0}}
@media (max-width:767px){.hero-section{padding-top:104px;min-height:auto}.hero-copy{text-align:left}h1{font-size:3.4rem}.hero-art{min-height:420px}.poster-img{width:78vw;box-shadow:10px 10px 0 var(--ccmm-red);border-width:5px}.floating-illustration{width:96vw}.section{padding:64px 0}.stats-strip,.mini-grid,.agenda-timeline,.impact-grid,.sponsor-table,.category-grid,.gallery-grid{grid-template-columns:1fr}.stats-strip div,.agenda-item,.impact-grid div{border-right:0;border-bottom:3px solid var(--ccmm-blue)}.stats-strip div:last-child,.agenda-item:last-child,.impact-grid div:last-child{border-bottom:0}.price-line{display:block}.price-line b{text-align:left;display:block;margin-top:8px}.gallery-grid img{height:auto}.hero-tags span,.impact-chips span{box-shadow:4px 4px 0 var(--ccmm-blue)}.white-note,.price-poster,.vertical-title-card,.light-block{padding:24px}.cta-card{padding:28px;box-shadow:10px 10px 0 var(--ccmm-yellow)}}
@media (max-width:420px){h1{font-size:2.85rem}.hero-actions .btn{width:100%;}.brand-logo{width:38px;height:38px}.hero-art{min-height:360px}.section-head{margin-bottom:24px}}
