/* Home page only — reference layout requested 2026-08-27 */
body.home-reference-layout{
  --home-bg-1:#24050f;
  --home-bg-2:#3a0718;
  --home-bg-3:#5a0b25;
  --home-cream:#fff2dc;
  --home-pink:#ff0a4f;
  --home-pink-soft:#d94662;
  min-height:100vh;
  margin:0;
  color:var(--home-cream);
  background:
    radial-gradient(circle at 75% 38%, rgba(174,12,57,.27), transparent 31rem),
    radial-gradient(circle at 18% 42%, rgba(87,5,32,.30), transparent 26rem),
    linear-gradient(112deg,var(--home-bg-1) 0%,var(--home-bg-2) 48%,var(--home-bg-3) 100%) !important;
  overflow-x:hidden;
}

/* Header uses the shared site header styles exactly, so its size and position
   do not shift when navigating between Home and other pages. */

body.home-reference-layout .home-main{
  margin:0 !important;
}
body.home-reference-layout .home-hero{
  width:min(1300px,calc(100% - 88px)) !important;
  min-height:calc(100vh - 86px);
  margin:0 auto !important;
  padding:92px 0 70px !important;
  box-sizing:border-box;
  display:grid !important;
  grid-template-columns:minmax(480px,.98fr) minmax(500px,1.02fr) !important;
  gap:68px !important;
  align-items:center !important;
}
body.home-reference-layout .home-copy{
  align-self:center;
  padding-left:16px;
  color:var(--home-cream) !important;
  z-index:2;
}
body.home-reference-layout .cck-eyebrow{
  margin:0 0 20px !important;
  color:#cf4b66 !important;
  font-size:14px !important;
  font-weight:700 !important;
  letter-spacing:.24em !important;
  text-transform:uppercase;
}
body.home-reference-layout .home-copy h2{
  margin:0 0 24px !important;
  font-family:"Playfair Display", Georgia, serif !important;
  color:var(--home-cream) !important;
  font-size:clamp(56px,5.2vw,82px) !important;
  font-weight:600 !important;
  line-height:.98 !important;
  letter-spacing:-.025em !important;
  text-wrap:balance;
}
body.home-reference-layout .home-description{
  max-width:610px !important;
  margin:0 !important;
  color:rgba(255,242,220,.89) !important;
  font-size:18px !important;
  line-height:1.62 !important;
}
body.home-reference-layout .home-actions{
  display:flex !important;
  align-items:center;
  gap:18px !important;
  margin-top:34px !important;
}
body.home-reference-layout .home-primary,
body.home-reference-layout .home-journal{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 28px;
  border-radius:999px;
  text-decoration:none;
  font-size:16px;
  font-weight:700;
  letter-spacing:.005em;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
body.home-reference-layout .home-primary{
  color:#fff;
  background:linear-gradient(135deg,#ff0a4f,#f00945);
  box-shadow:0 13px 34px rgba(255,10,79,.28);
}
body.home-reference-layout .home-journal{
  min-height:54px;
  padding:0 26px;
  border-radius:999px;
  color:var(--home-cream);
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,242,220,.48);
  box-shadow:none;
  gap:8px;
}
body.home-reference-layout .home-primary:hover{
  transform:translateY(-2px);
}
body.home-reference-layout .home-journal:hover{background:rgba(255,242,220,.10);border-color:rgba(255,242,220,.72);transform:translateY(-2px)}
body.home-reference-layout .home-visual{
  position:relative !important;
  width:100%;
  min-height:620px;
  padding:0 !important;
  display:flex;
  align-items:center;
  justify-content:center;
  isolation:isolate;
}
body.home-reference-layout .home-visual::before{
  display:none !important;
}
body.home-reference-layout .home-visual img{
  position:relative !important;
  z-index:3;
  width:min(570px,88%) !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:drop-shadow(0 28px 30px rgba(7,0,3,.38));
}
body.home-reference-layout .logo-orbit{
  position:absolute;
  z-index:1;
  aspect-ratio:1/1;
  border:1px solid rgba(255,39,89,.17);
  transform:rotate(30deg);
  clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);
  pointer-events:none;
}
body.home-reference-layout .orbit-1{width:74%;}
body.home-reference-layout .orbit-2{width:88%;opacity:.72;}
body.home-reference-layout .orbit-3{width:102%;opacity:.45;}

/* No lower brace, What We Do label, About CCK arrow/link, or pathway cards on Home. */
body.home-reference-layout .learning-paths{display:none !important;}

@media(max-width:1080px){
  body.home-reference-layout .home-hero{
    width:min(920px,calc(100% - 44px)) !important;
    grid-template-columns:1fr !important;
    gap:22px !important;
    padding-top:82px !important;
  }
  body.home-reference-layout .home-copy{padding-left:0;}
  body.home-reference-layout .home-visual{min-height:480px;}
  body.home-reference-layout .home-visual img{width:min(520px,78%) !important;}
}

@media(max-width:768px){
  body.home-reference-layout .home-hero{
    width:min(100% - 30px,680px) !important;
    min-height:auto;
    padding:94px 0 44px !important;
  }
  body.home-reference-layout .cck-eyebrow{
    font-size:12px !important;
    letter-spacing:.18em !important;
  }
  body.home-reference-layout .home-copy h2{
    font-size:clamp(43px,13vw,62px) !important;
  }
  body.home-reference-layout .home-description{
    font-size:16.5px !important;
  }
  body.home-reference-layout .home-actions{
    gap:12px !important;
    flex-wrap:wrap;
  }
  body.home-reference-layout .home-primary{
    min-height:50px;
    padding:0 22px;
  }
  body.home-reference-layout .home-journal{
    min-height:auto;
    padding:10px 2px 8px;
  }
  body.home-reference-layout .home-visual{
    min-height:390px;
    margin-top:12px;
  }
  body.home-reference-layout .home-visual img{
    width:min(420px,78vw) !important;
  }
}


/* 2026-08-27 patch: prevent mobile home headline overflow */
@media(max-width:768px){
  body.home-reference-layout .home-copy h2{
    font-size:clamp(34px,11vw,52px) !important;
    line-height:1.02 !important;
    letter-spacing:-.02em !important;
    overflow-wrap:break-word;
  }
  body.home-reference-layout .home-copy h2 br{
    display:block !important;
  }
  body.home-reference-layout .home-copy,
  body.home-reference-layout .home-description{
    max-width:100% !important;
  }
}
