:root{
  --header-bg:#F5ECE6;
  --footer-bg:#4A2B52;
  --footer-ink:#D9C6E2;
  --footer-head:#F4EDF7;
  --donate-pink:#A94F66;
  --donate-pink-deep:#873B53;
  --blush:#E8B4A8;
  --aubergine:#4A1454;
  --band:#43214B;
  --ink:#352A3B;
  --ink-soft:#5E5265;
  --paper:#FBF8FC;
  --lilac-surface:#F1E9F5;
  --lilac-line:#DFD0E7;
  --rose:#A34672;
  --leaf:#5F7D57;
  --shadow:0 10px 30px rgba(74,20,84,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{
  margin:0;
  overflow-x:hidden;
  color:var(--ink);
  background:var(--paper);
  font-family:"Lato",Arial,sans-serif;
  font-size:17px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3{
  color:var(--aubergine);
  font-family:"Literata",Georgia,serif;
  font-weight:560;
  line-height:1.14;
  letter-spacing:-.01em;
}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.button{
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:13px 28px;
  border-radius:999px;
  font-size:16px;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}
.button-donate{color:#fff;background:var(--donate-pink)}
/* Page-scoped override is intentionally specific because visual-refresh.css contains a later global Donate rule. */
.hero-ctas .button-donate[href="donate"],
.closing .button-donate[href="donate"]{
  color:#FFFFFF!important;
  background:#A94F66!important;
}
.hero-ctas .button-donate[href="donate"]:hover,
.hero-ctas .button-donate[href="donate"]:focus-visible,
.closing .button-donate[href="donate"]:hover,
.closing .button-donate[href="donate"]:focus-visible{
  color:#FFFFFF!important;
  background:#873B53!important;
}
.button-purple{color:#fff;background:var(--aubergine)}
.button-white{color:var(--aubergine);background:#fff}
.eyebrow{
  display:inline-flex;
  align-items:center;
  margin-bottom:14px;
  color:var(--rose);
  font-size:13px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

/* Frozen global header */

.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  max-width:1440px;
  margin:0 auto;
  padding:14px 28px;
}





.nav-links{
  display:flex;
  align-items:center;
  gap:20px;
  margin:0;
  padding:0;
  list-style:none;
  white-space:nowrap;
}
.nav-links a{color:#4A2B57;font-size:15px;font-weight:500}
.nav-links .current{color:var(--rose);font-weight:700}















/* I03 frozen page */
.hero{padding:76px 0;background:var(--header-bg)}
.hero-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  gap:56px;
}
.hero h1{margin-bottom:20px;font-size:62px}
.hero-copy p{
  max-width:520px;
  margin-bottom:32px;
  color:var(--ink-soft);
  font-size:19px;
}
.hero-ctas{display:flex;gap:16px;flex-wrap:wrap}
.hero-photo{
  position:relative;
  aspect-ratio:16/11;
  overflow:hidden;
  background:var(--lilac-surface);
  box-shadow:var(--shadow);
}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.media-fallback{
  position:absolute;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  background:linear-gradient(160deg,#F1E9F5,#E7DAEE 70%);
  color:rgba(74,20,84,.62);
  font-size:12px;
  font-weight:700;
  letter-spacing:.05em;
  line-height:1.45;
  text-align:center;
  text-transform:uppercase;
}
.intro{
  padding:68px 0 70px;
  text-align:center;
  background:var(--paper);
}
.intro .eyebrow{justify-content:center}
.intro h2{margin-bottom:20px;font-size:42px}
.intro p{
  max-width:820px;
  margin:0 auto 12px;
  color:var(--ink-soft);
  font-size:18px;
}
.pillars{padding:76px 0 82px;background:var(--lilac-surface)}
.section-head{margin-bottom:42px;text-align:center}
.section-head .eyebrow{justify-content:center}
.section-head h2{font-size:44px}
.pillars-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.pillar-card{
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--lilac-line);
  border-radius:18px;
  background:#fff;
}
.pillar-media{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  aspect-ratio:16/9;
  overflow:hidden;
  border-bottom:1px solid var(--lilac-line);
  background:linear-gradient(160deg,#F1E9F5,#E7DAEE 70%);
}
.pillar-media img{width:100%;height:100%;object-fit:cover}
.pillar-media img.skills-photo{object-position:center 42%}
.photo-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  max-width:220px;
  color:rgba(74,20,84,.62);
  font-size:12px;
  font-weight:700;
  letter-spacing:.05em;
  line-height:1.45;
  text-align:center;
  text-transform:uppercase;
}
.photo-placeholder .camera{font-size:25px;line-height:1}
.pillar-body{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:24px 26px 28px;
}
.glyph{
  display:flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  margin-bottom:16px;
  border-radius:50%;
  background:#F5E5E7;
  color:#873B53;
}
.glyph svg{
  display:block;
  width:23px;
  height:23px;
  fill:none;
  stroke:#873B53;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.pillar-body h3{margin-bottom:10px;font-size:20px}
.pillar-body p{flex:1;color:var(--ink-soft);font-size:15.5px}
.learn-more{margin-top:16px;color:var(--rose);font-size:15px;font-weight:700}
.closing{padding:72px 0;background:var(--paper)}
.cta-band{
  padding:56px 52px;
  border-radius:28px;
  color:#F3E9F7;
  text-align:center;
  background:linear-gradient(180deg,#4E1858 0%,#35103D 100%);
}
.cta-band h2{margin-bottom:14px;color:#fff;font-size:40px}
.cta-band p{max-width:680px;margin:0 auto 28px;color:#DCC8E6}
.cta-buttons{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* Frozen footer structure */

.footer-main{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr 1.2fr;
  gap:48px;
  padding:60px 0 48px;
}
.footer-logo{
  display:flex;
  width:72px;
  height:72px;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
  overflow:hidden;
  border-radius:50%;
  background:#fff;
}
.footer-logo img{width:82%;height:82%;object-fit:contain}
.footer-main h4,.footer-bottom h4{
  margin:0 0 16px;
  color:var(--footer-head);
  font-family:"Literata",Georgia,serif;
  font-size:20px;
  font-weight:560;
}
.footer-main p{max-width:320px}
.footer-main ul,.footer-bottom ul{margin:0;padding:0;list-style:none}
.footer-main li,.footer-bottom li{margin-bottom:9px}

.footer-bottom{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:52px;
  padding:38px 0 42px;
  border-top:1px solid rgba(255,255,255,.15);
}
.newsletter{
  display:flex;
  gap:10px;
  max-width:520px;
  margin-top:12px;
}
.newsletter input{
  min-width:0;
  flex:1;
  min-height:44px;
  padding:0 15px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.08);
}
.newsletter input::placeholder{color:#CDB7D6}

.footer-bottom p{margin-top:12px;color:#CDB7D6}



.footer-copy{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:22px;
  padding:22px 0;
  border-top:1px solid rgba(255,255,255,.15);
  color:#C9AFD5;
  font-size:14px;
}


/* Usability / accessibility */
a:focus-visible,button:focus-visible,input:focus-visible{
  outline:3px solid rgba(201,132,142,.45);
  outline-offset:3px;
}
.button,.nav-links a,.learn-more,.site-footer a{transition:.15s ease}
.button:hover,.learn-more:hover,.site-footer a:hover{filter:brightness(.96)}
img[loading="lazy"]{content-visibility:auto}

/* Responsive review overlay based on frozen behavior */
@media(max-width:1320px){
  .nav-links{display:none}
  
  
  
}
@media(max-width:900px){
  .hero-grid{grid-template-columns:1fr;gap:36px}
  .hero-photo{max-width:760px}
  .pillars-grid{grid-template-columns:repeat(2,1fr)}
  .footer-main{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
  body{font-size:16px}
  .wrap{padding:0 18px}
  .nav{padding:10px 16px}
  
  
  
  .hero{padding:54px 0}
  .hero h1{font-size:45px}
  .hero-copy p{font-size:17px}
  .hero-ctas,.cta-buttons{flex-direction:column}
  .button{width:100%}
  .intro{padding:54px 0}
  .intro h2,.section-head h2{font-size:36px}
  .intro p{font-size:16.5px}
  .pillars{padding:58px 0}
  .pillars-grid{grid-template-columns:1fr}
  .closing{padding:52px 0}
  .cta-band{padding:38px 22px;border-radius:22px}
  .cta-band h2{font-size:34px}
  .footer-main{grid-template-columns:1fr;padding:46px 0 36px}
  .footer-bottom{grid-template-columns:1fr;gap:28px}
  .newsletter{flex-direction:column}
  
  .footer-copy{flex-direction:column}
}


/* ---- next source style block ---- */


/* GLOBAL FROZEN FOOTER - final review correction */
































/* Clean-build additions */


/* Approved Our Work visual corrections - 2026-09-21/22 */
.hero .wrap,.intro .wrap{max-width:1280px;}
.hero-grid,.intro-grid{grid-template-columns:.92fr 1.08fr;gap:62px;}
.hero-photo,.intro-photo{aspect-ratio:16/11;border-radius:28px;box-shadow:var(--shadow);overflow:hidden;background:var(--lilac-surface);}
.hero-photo img,.intro-photo img{width:100%;height:100%;object-fit:cover;}
.intro{padding:76px 0;background:var(--paper);text-align:left;}
.intro-grid{display:grid;align-items:center;}
.intro .eyebrow{justify-content:flex-start;}
.intro h2{margin-bottom:20px;font-size:42px;}
.intro p{max-width:560px;margin:0 0 12px;color:var(--ink-soft);font-size:18px;}
@media(max-width:900px){
  .hero-grid,.intro-grid{grid-template-columns:1fr;gap:36px;}
  .hero-photo,.intro-photo{max-width:820px;}
}
@media(max-width:650px){
  .intro{padding:54px 0;}
  .intro-grid{gap:30px;}
  .intro h2{font-size:36px;}
  .intro p{font-size:16.5px;}
  .hero-photo,.intro-photo{border-radius:22px;}
}

/* FINAL REVIEW v8 — Our Work pastel pillar card system
   Approved visual-only refinement: sequential pastel surfaces for the six pillar cards.
   Layout, content, imagery, typography, icon sizing and spacing remain unchanged.
   !important is intentional because visual-refresh.css is loaded after this page stylesheet. */
.pillars-grid .pillar-card:nth-child(1){
  background:#F8ECEF!important;
  border-color:#E8CCD4!important;
}
.pillars-grid .pillar-card:nth-child(2){
  background:#FBF2E5!important;
  border-color:#E8D8BF!important;
}
.pillars-grid .pillar-card:nth-child(3){
  background:#EDF4ED!important;
  border-color:#D4E2D2!important;
}
.pillars-grid .pillar-card:nth-child(4){
  background:#F1E9F5!important;
  border-color:#DCCBE5!important;
}
.pillars-grid .pillar-card:nth-child(5){
  background:#F8ECEF!important;
  border-color:#E8CCD4!important;
}
.pillars-grid .pillar-card:nth-child(6){
  background:#EDF4ED!important;
  border-color:#D4E2D2!important;
}
