/*
Theme Name: CDI Urban Oasis
Theme URI: https://centersfordivineintegration.com
Author: OpenAI for Centers for Divine Integration
Author URI: https://centersfordivineintegration.com
Description: A custom WordPress theme for the Centers for Divine Integration Commerce, GA Urban Oasis campus.
Version: 1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: cdi-urban-oasis
*/

:root{
  --cdi-bg:#f6f1e7;
  --cdi-bg-soft:#fbf8f2;
  --cdi-text:#1f1a17;
  --cdi-muted:#6d6157;
  --cdi-gold:#caa64a;
  --cdi-gold-deep:#a67f24;
  --cdi-earth:#4a3729;
  --cdi-earth-dark:#1f1814;
  --cdi-white:#ffffff;
  --cdi-border:#e6dccf;
  --cdi-card:#fffdf9;
  --cdi-shadow:0 18px 40px rgba(31,24,20,0.08);
  --cdi-radius:24px;
  --cdi-max:1200px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Georgia, "Times New Roman", serif;
  background:var(--cdi-bg);
  color:var(--cdi-text);
  line-height:1.65;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--cdi-earth);text-decoration:none}
a:hover{color:var(--cdi-gold-deep)}
.container{
  width:min(var(--cdi-max), calc(100% - 40px));
  margin:0 auto;
}

.site-header{
  background:var(--cdi-earth-dark);
  color:var(--cdi-white);
  position:sticky;
  top:0;
  z-index:99;
  box-shadow:0 8px 24px rgba(0,0,0,0.15);
}
.site-header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:18px 0;
}
.site-branding h1,
.site-branding p{
  margin:0;
  color:var(--cdi-white);
}
.site-branding h1{
  font-size:1.25rem;
  letter-spacing:0.04em;
}
.site-branding p{
  font-size:0.9rem;
  color:#e8d9bd;
}
.main-nav ul{
  list-style:none;
  display:flex;
  gap:18px;
  margin:0;
  padding:0;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.main-nav a{
  color:var(--cdi-white);
  font-size:0.95rem;
}

.hero{
  background:
    radial-gradient(circle at 20% 20%, rgba(202,166,74,0.20), transparent 28%),
    radial-gradient(circle at 80% 25%, rgba(255,255,255,0.12), transparent 24%),
    linear-gradient(135deg, #17110e, #302117 55%, #503920);
  color:var(--cdi-white);
  padding:110px 0 90px;
}
.hero-grid{
  display:grid;
  grid-template-columns:1.2fr 0.8fr;
  gap:32px;
  align-items:center;
}
.eyebrow{
  display:inline-block;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,0.2);
  border-radius:999px;
  font-size:0.82rem;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:#f2deb0;
  background:rgba(255,255,255,0.06);
}
.hero h2{
  font-size:clamp(2.3rem, 5vw, 4.6rem);
  line-height:1.08;
  margin:18px 0 16px;
}
.hero p{
  font-size:1.1rem;
  max-width:700px;
  color:#f4eee6;
}
.button-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:28px;
}
.button{
  display:inline-block;
  padding:14px 22px;
  border-radius:18px;
  font-weight:bold;
  transition:all .2s ease;
}
.button-primary{
  background:var(--cdi-gold);
  color:#1f1814;
}
.button-primary:hover{background:#ddb860;color:#1f1814}
.button-secondary{
  border:1px solid rgba(255,255,255,0.22);
  color:var(--cdi-white);
  background:rgba(255,255,255,0.06);
}
.hero-cards{
  display:grid;
  gap:16px;
}
.glass-card{
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:28px;
  padding:24px;
  backdrop-filter:blur(6px);
}
.glass-card h3{margin:6px 0 8px;font-size:1.45rem}
.glass-card p{margin:0;font-size:0.95rem;color:#f6efe3}

.section{
  padding:78px 0;
}
.section.alt{
  background:var(--cdi-bg-soft);
  border-top:1px solid var(--cdi-border);
  border-bottom:1px solid var(--cdi-border);
}
.section-header{
  max-width:760px;
  margin-bottom:32px;
}
.section-header .kicker{
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:var(--cdi-gold-deep);
  font-weight:bold;
}
.section-header h2{
  font-size:clamp(2rem,4vw,3rem);
  margin:10px 0 12px;
  line-height:1.15;
}
.section-header p{
  color:var(--cdi-muted);
  font-size:1.05rem;
  margin:0;
}

.grid-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.grid-2{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:28px;
}
.card{
  background:var(--cdi-card);
  border:1px solid var(--cdi-border);
  border-radius:var(--cdi-radius);
  box-shadow:var(--cdi-shadow);
  overflow:hidden;
}
.card-image{
  aspect-ratio:16/9;
  background:linear-gradient(135deg, #efe6d6, #d8c29d);
  position:relative;
}
.card-image .label{
  position:absolute;
  left:18px;
  bottom:18px;
  background:rgba(31,24,20,0.74);
  color:var(--cdi-white);
  padding:8px 12px;
  border-radius:999px;
  font-size:.85rem;
  letter-spacing:.05em;
}
.card-content{
  padding:26px;
}
.card-content h3{
  margin:0 0 10px;
  font-size:1.5rem;
}
.card-content p,
.card-content li{
  color:var(--cdi-muted);
}

.stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:26px;
}
.stat{
  background:var(--cdi-card);
  border:1px solid var(--cdi-border);
  border-radius:20px;
  padding:20px;
  text-align:center;
  box-shadow:var(--cdi-shadow);
}
.stat strong{
  display:block;
  font-size:2rem;
  color:var(--cdi-gold-deep);
  margin-bottom:4px;
}

.feature-list{
  display:grid;
  gap:14px;
  padding-left:18px;
  margin:0;
}

.split-panel{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:30px;
  align-items:start;
}

.dark-panel{
  background:var(--cdi-earth-dark);
  color:var(--cdi-white);
  border-radius:32px;
  padding:34px;
  box-shadow:var(--cdi-shadow);
}
.dark-panel h3{
  margin-top:0;
  font-size:2rem;
}
.dark-panel p,
.dark-panel li{
  color:#efe6db;
}

.cta{
  background:linear-gradient(135deg, #2b1d15, #513721);
  color:var(--cdi-white);
  border-radius:36px;
  padding:42px;
  box-shadow:var(--cdi-shadow);
}
.cta h2{margin-top:0}
.cta p{color:#f2e8db}

.site-footer{
  background:var(--cdi-earth-dark);
  color:var(--cdi-white);
  padding:40px 0;
  margin-top:60px;
}
.site-footer p{
  margin:0;
  color:#e9dbc0;
  text-align:center;
}

.page-content{
  padding:70px 0;
}
.page-content h1{
  margin-top:0;
  font-size:clamp(2.2rem,4vw,3.6rem);
}
.page-content h2{
  margin-top:32px;
}
.page-content p,
.page-content li{
  color:var(--cdi-muted);
  font-size:1.02rem;
}

.notice-box{
  background:#fff7e4;
  border:1px solid #efd798;
  border-radius:18px;
  padding:18px 20px;
  color:#5f4a16;
  margin:20px 0;
}

@media (max-width: 980px){
  .hero-grid,
  .grid-3,
  .grid-2,
  .split-panel,
  .stats{
    grid-template-columns:1fr;
  }
  .site-header-inner{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media (max-width: 640px){
  .container{width:min(var(--cdi-max), calc(100% - 28px))}
  .hero{padding:86px 0 70px}
  .section{padding:60px 0}
  .cta{padding:28px}
}
