
:root{
  --navy:#173645;
  --turquoise:#53bcc4;
  --paper:#f7f7f5;
  --muted:#e9e9ed;
  --ink:#1f2b31;
  --yellow:#ffc62f;
  --white:#ffffff;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.55;
}
img{max-width:100%;display:block}
a{color:inherit}
.site-header{
  position:sticky;top:0;z-index:20;
  display:flex;justify-content:space-between;align-items:center;gap:28px;
  padding:14px max(24px,calc((100vw - var(--max))/2));
  background:rgba(255,255,255,.96);
  border-bottom:1px solid #d9dde0;
}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.05}
.brand-name{font-weight:900;font-size:1.18rem;color:var(--navy)}
.brand-claim{font-size:.78rem;margin-top:4px}
.nav{display:flex;gap:22px;flex-wrap:wrap}
.nav a{text-decoration:none;font-weight:700;font-size:.92rem}
.nav a:hover{color:var(--turquoise)}
.hero{
  max-width:var(--max);margin:0 auto;
  min-height:650px;
  display:grid;grid-template-columns:1.02fr 1fr;
  background:var(--white);
}
.hero-image{position:relative;overflow:hidden;min-height:650px;background:#dde4df}
.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hero-copy{
  padding:62px 58px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start
}
.cdu-logo{width:165px;margin-bottom:34px}
.eyebrow{
  margin:0 0 10px;text-transform:uppercase;letter-spacing:.08em;
  font-weight:800;color:#47606a;font-size:.78rem
}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(3.4rem,7vw,6.3rem);line-height:.84;margin-bottom:28px}
h1 span{
  display:inline-block;background:var(--navy);color:#fff;
  padding:.06em .12em .11em;
}
.lead{font-size:1.25rem;max-width:540px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.button{
  display:inline-block;text-decoration:none;font-weight:800;border-radius:4px;padding:12px 18px;border:2px solid var(--navy)
}
.button.primary{background:var(--navy);color:#fff}
.button.secondary{background:#fff;color:var(--navy)}
.section{
  max-width:var(--max);margin:0 auto;padding:78px 54px;background:var(--white)
}
.section.muted{background:var(--muted)}
.section-heading{max-width:760px;margin-bottom:34px}
h2{
  display:inline-block;background:var(--navy);color:#fff;
  font-size:clamp(2rem,4vw,3.2rem);line-height:1.03;padding:.13em .22em .18em;margin-bottom:14px
}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;font-family:Georgia,serif;font-size:1.08rem}
.signature{
  margin:24px 0 0;
  font-family:"Segoe Script","Brush Script MT",cursive;
  font-size:2rem;color:#1264a3
}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cards.three{grid-template-columns:repeat(3,1fr)}
.card{
  display:grid;grid-template-columns:145px 1fr;gap:18px;
  background:#fff;padding:16px;border:1px solid #dfe3e5;border-radius:6px
}
.card img{width:145px;height:145px;object-fit:cover}
.card h3{color:var(--navy);font-size:1.12rem;line-height:1.15;margin-bottom:8px}
.card p{margin:0}
.cards.three .card{grid-template-columns:1fr}
.cards.three .card img{width:100%;height:180px}
.contact-section{
  max-width:var(--max);margin:0 auto;padding:62px 54px;
  display:grid;grid-template-columns:1fr 1fr;gap:38px;
  background:var(--turquoise)
}
.contact-card{
  background:rgba(255,255,255,.92);padding:28px;border-radius:6px
}
.contact-card a{font-weight:700;text-decoration:none}
.social{display:flex;gap:18px;flex-wrap:wrap}
.flyer-section{
  max-width:var(--max);margin:0 auto;background:#fff;
  padding:70px 54px;display:grid;grid-template-columns:.8fr 1.2fr;gap:42px;align-items:center
}
.flyer-section img{border:1px solid #d7d7d7;box-shadow:0 12px 30px rgba(0,0,0,.08)}
footer{
  max-width:var(--max);margin:0 auto;padding:28px 54px;
  display:flex;justify-content:space-between;gap:24px;background:var(--navy);color:#fff
}
.footer-links{display:flex;gap:18px}
.legal{
  max-width:var(--max);margin:0 auto;padding:42px 54px;background:#fff;border-top:1px solid #ddd
}
.legal h2{font-size:1.4rem}
@media(max-width:900px){
  .site-header{position:static}
  .nav{display:none}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-image{min-height:540px}
  .hero-copy{padding:38px 26px 48px}
  .cdu-logo{width:140px;margin-bottom:22px}
  h1{font-size:clamp(3rem,15vw,5rem)}
  .section,.contact-section,.flyer-section,.legal,footer{padding-left:24px;padding-right:24px}
  .intro-grid,.cards,.cards.three,.contact-section,.flyer-section{grid-template-columns:1fr}
  .cards.three .card{grid-template-columns:130px 1fr}
  .cards.three .card img{width:130px;height:130px}
}
@media(max-width:560px){
  .hero-image{min-height:470px}
    .section{padding-top:56px;padding-bottom:56px}
  .card,.cards.three .card{grid-template-columns:100px 1fr}
  .card img,.cards.three .card img{width:100px;height:100px}
  .contact-section,.flyer-section{padding-top:50px;padding-bottom:50px}
  footer{flex-direction:column}
}

.signature-image{width:280px;max-width:80%;height:auto;margin-top:18px;display:block;}
