/* Creative Chaos homepage — intentionally separate from the global stylesheet.
   Versioned from index.php so homepage layout updates are not lost to browser/CDN cache. */
.cc-home{width:100%;margin:26px 0 44px;color:var(--text)}
.cc-home *{box-sizing:border-box}
.cc-home section{margin:0}
.cc-home h2,.cc-home h3{overflow-wrap:normal;word-break:normal}
.cc-home .cc-eyebrow{margin:0 0 10px;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial;font-size:12px;line-height:1.2;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:#876814}

/* HERO */
.cc-home-hero{display:grid;grid-template-columns:1fr;background:rgba(255,250,240,.94);border:1px solid var(--border);border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}
.cc-home-hero.has-photo{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)}
.cc-home-hero-copy{padding:clamp(42px,5.5vw,74px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0}
.cc-home-hero h2{margin:0;max-width:800px;font-size:clamp(38px,4.3vw,64px);line-height:1.02;letter-spacing:-.025em}
.cc-home-lede{max-width:650px!important;margin:17px 0 0!important;color:var(--muted)!important;font-size:clamp(17px,1.45vw,21px);line-height:1.55}
.cc-event-line{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:22px;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial;font-size:14px;font-weight:750;color:#3c4650}
.cc-event-line span+span{position:relative}.cc-event-line span+span:before{content:"•";position:absolute;left:-15px;color:var(--brand)}
.cc-home-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.cc-home-actions .btn{margin:0}
.cc-countdown{max-width:none!important;margin:18px 0 0!important;color:var(--muted)!important;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial;font-size:13px;font-weight:700}
.cc-home-hero-photo{margin:0;min-height:440px;background:var(--muted-surface)}
.cc-home-hero-photo img{width:100%;height:100%;min-height:440px;object-fit:cover}

/* SPOTLIGHT — one editorial feature, not another card grid */
.cc-spotlight{display:grid;grid-template-columns:1fr;margin:22px 0 0;background:#102a49;color:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(28,33,40,.10)}
.cc-spotlight:has(.cc-spotlight-image){grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr)}
.cc-spotlight-image{min-height:280px}.cc-spotlight-image img{width:100%;height:100%;object-fit:cover}
.cc-spotlight-copy{padding:clamp(34px,4.5vw,58px)}
.cc-spotlight .cc-eyebrow{color:#f0d77f}.cc-spotlight h2{margin:0 0 10px;color:#fff;font-size:clamp(28px,3vw,42px);line-height:1.08}
.cc-spotlight-subtitle{margin:0 0 18px!important;color:#f6e7b2!important;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial;font-size:17px;font-weight:700}
.cc-spotlight .cc-richtext,.cc-spotlight .cc-richtext p,.cc-spotlight .cc-richtext li{color:rgba(255,255,255,.88)}

/* SECTIONS */
.cc-home-section{margin-top:22px!important;padding:clamp(38px,5vw,62px);background:rgba(255,250,240,.94);border:1px solid var(--border);border-radius:18px;box-shadow:0 8px 22px rgba(28,33,40,.06)}
.cc-section-heading{max-width:760px;margin:0 0 30px}.cc-section-heading h2{margin:0;font-size:clamp(28px,3vw,42px);line-height:1.08;letter-spacing:-.018em}
.cc-section-heading>p:last-child{max-width:660px!important;margin:12px 0 0!important;color:var(--muted)!important;font-size:16px;line-height:1.6}

/* PARTICIPATION — calm three-column information, no floating-card clutter */
.cc-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.cc-path{min-width:0;padding:28px 28px 30px 0}.cc-path+.cc-path{padding-left:28px;border-left:1px solid var(--border)}
.cc-path-number{display:block;margin-bottom:18px;color:#876814;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial;font-size:12px;font-weight:850;letter-spacing:.1em}
.cc-path h3{margin:0 0 9px;font-size:21px}.cc-path p{min-height:76px;max-width:none!important;margin:0;color:var(--muted);line-height:1.62}
.cc-path a,.cc-closed{display:inline-block;margin-top:15px;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial;font-size:14px;font-weight:800}.cc-closed{color:var(--muted)}

/* PHOTOS — rendered only when images exist */
.cc-gallery-section{background:#efe7d8}.cc-photo-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:190px;gap:12px}
.cc-photo-grid figure{grid-column:span 4;margin:0;overflow:hidden;border-radius:12px;background:#ddd3c2}.cc-photo-grid img{width:100%;height:100%;object-fit:cover}
.cc-photo-grid figure:first-child{grid-column:span 7;grid-row:span 2}.cc-photo-grid figure:nth-child(2),.cc-photo-grid figure:nth-child(3){grid-column:span 5}
.cc-photo-grid.cc-photo-count-1 figure:first-child{grid-column:1/-1;grid-row:span 2}.cc-photo-grid.cc-photo-count-2 figure:first-child,.cc-photo-grid.cc-photo-count-2 figure:nth-child(2){grid-column:span 6;grid-row:span 2}

/* ABOUT */
.cc-about-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(38px,6vw,80px);align-items:start}
.cc-richtext{line-height:1.7;color:#3d4751}.cc-richtext p{max-width:none}.cc-richtext p:first-child{margin-top:0}.cc-richtext p:last-child{margin-bottom:0}
.cc-participate-copy{padding-left:28px;border-left:3px solid var(--brand)}.cc-participate-copy h3{margin:0 0 14px;font-size:21px}

/* VENUE + MAP */
.cc-venue-section{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);padding:0;overflow:hidden;background:rgba(255,250,240,.96)}
.cc-venue-copy{padding:clamp(40px,5vw,62px);align-self:center}.cc-venue-copy h2{margin:0 0 14px;font-size:clamp(27px,2.7vw,39px);line-height:1.08}
.cc-venue-date{max-width:none!important;color:#876814!important;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial;font-weight:800}
.cc-address{max-width:none!important;color:var(--text)!important;font-size:17px;line-height:1.55}.cc-location-note,.cc-who{max-width:560px!important;color:var(--muted)!important;line-height:1.6}
.cc-map{min-height:450px;background:#ded9cf}.cc-map iframe{display:block;width:100%;height:100%;min-height:450px;border:0}
.cc-extra-content{overflow:hidden}

@media(max-width:900px){
  .cc-home-hero.has-photo,.cc-spotlight:has(.cc-spotlight-image),.cc-about-grid,.cc-venue-section{grid-template-columns:1fr}
  .cc-home-hero-photo,.cc-home-hero-photo img{min-height:320px;max-height:430px}.cc-spotlight-image{max-height:380px}
  .cc-paths{grid-template-columns:1fr}.cc-path{padding:24px 0}.cc-path+.cc-path{padding-left:0;border-left:0;border-top:1px solid var(--border)}.cc-path p{min-height:0}
  .cc-participate-copy{padding:24px 0 0;border-left:0;border-top:3px solid var(--brand)}
  .cc-photo-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.cc-photo-grid figure,.cc-photo-grid figure:first-child,.cc-photo-grid figure:nth-child(2),.cc-photo-grid figure:nth-child(3),.cc-photo-grid.cc-photo-count-2 figure:first-child,.cc-photo-grid.cc-photo-count-2 figure:nth-child(2){grid-column:auto;grid-row:auto}.cc-photo-grid figure:first-child{grid-column:1/-1}
  .cc-map,.cc-map iframe{min-height:380px}
}
@media(max-width:600px){
  .cc-home{margin-top:16px}.cc-home-hero,.cc-home-section,.cc-spotlight{border-radius:14px}
  .cc-home-hero-copy,.cc-home-section,.cc-spotlight-copy,.cc-venue-copy{padding:30px 22px}.cc-home-hero h2{font-size:38px}
  .cc-event-line{display:block}.cc-event-line span{display:block;margin-top:5px}.cc-event-line span+span:before{display:none}
  .cc-home-actions{width:100%}.cc-home-actions .btn{width:100%;text-align:center}
  .cc-photo-grid{display:block}.cc-photo-grid figure{height:240px;margin-top:10px}.cc-photo-grid figure:first-child{margin-top:0}
  .cc-map,.cc-map iframe{min-height:330px}
}
