*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbf8f1;color:#102e32;font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}.nav{height:108px;max-width:1240px;margin:auto;padding:10px 30px;display:flex;align-items:center;justify-content:flex-end}.brand{width:120px;height:92px;display:flex;align-items:center}.brand img{display:block;width:100%;height:100%;object-fit:contain}nav{display:flex;align-items:center;gap:30px}nav a{text-decoration:none;font-size:13px}.pill{border:1px solid #879795;border-radius:40px;padding:10px 17px}.hero{max-width:1440px;margin:auto;min-height:690px;position:relative;display:flex;align-items:center;padding:80px 6vw 115px;overflow:hidden}.art{position:absolute;z-index:0;right:-5%;top:2%;width:72%;height:92%;display:flex;align-items:center;justify-content:center;pointer-events:none}.art img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain}.art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fbf8f1 0%,rgba(251,248,241,.93) 11%,rgba(251,248,241,.45) 25%,transparent 43%);pointer-events:none}.hero-copy{position:relative;z-index:2;max-width:650px}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:600;color:#647573}.hero h1,.approach h2,.building h2{font-family:"Manrope",sans-serif;font-weight:300;letter-spacing:-.055em}.hero h1{font-size:clamp(60px,7.4vw,108px);line-height:.92;margin:28px 0 35px}.lead{font-size:20px;line-height:1.65;color:#455a5c;max-width:600px;font-weight:300}.underlink{display:inline-flex;gap:16px;margin-top:18px;text-decoration:none;border-bottom:1px solid;padding-bottom:5px;font-size:13px}.approach{max-width:1160px;margin:auto;padding:135px 30px;border-top:1px solid #d0d5d0}.approach h2{font-size:clamp(48px,6vw,82px);line-height:1.05;margin:25px 0 70px}.approach em{font-style:normal;color:#d28c21}.copycols{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-left:20%}.copycols p,.building-copy>p:not(.eyebrow){font-size:17px;line-height:1.8;color:#465b5d;margin:0}.steps{max-width:1200px;margin:0 auto 145px;padding:0 30px;display:grid;grid-template-columns:repeat(4,1fr)}.steps article{padding:28px 24px;border-top:3px solid}.steps article:first-child{padding-left:0}.steps article:last-child{padding-right:0}.gold{border-color:#d49527!important}.coral{border-color:#dd6553!important}.teal{border-color:#508f80!important}.blue{border-color:#337c8b!important}.steps small{color:#788684}.steps h3{font:400 27px "Manrope";margin:45px 0 17px}.steps p{font-size:14px;line-height:1.7;color:#586a6b}.building{max-width:1180px;margin:0 auto 120px;background:#edf0e8;border-radius:38px;min-height:540px;display:grid;grid-template-columns:.95fr 1.05fr;overflow:hidden}.brand-panel{padding:48px;display:flex;align-items:center;justify-content:center}.brand-panel img{display:block;width:100%;height:auto;max-height:430px;object-fit:contain}.building-copy{align-self:center;padding:65px 75px 65px 10px}.building h2{font-size:clamp(42px,5vw,65px);line-height:1.06;margin:20px 0 32px}.building strong{display:block;color:#d28c21;font-size:14px;margin-top:28px}footer{max-width:1160px;margin:auto;padding:50px 30px 42px}footer>img{display:block;width:160px;height:auto;max-height:145px;object-fit:contain}.tag{font:300 clamp(25px,4vw,46px) "Manrope";margin:32px 0 65px}.tag span:nth-child(1){color:#d28c21}.tag span:nth-child(2){color:#dd6553}.tag span:nth-child(3){color:#508f80}.tag span:nth-child(4){color:#337c8b}.foot{border-top:1px solid #d0d5d0;padding-top:20px;display:flex;gap:26px;color:#6e7d7b;font-size:12px}.foot a{text-decoration:none}.foot span{margin-left:auto}@media(max-width:820px){nav a:not(.pill){display:none}.hero{min-height:700px;padding:75px 22px}.art{width:115%;right:-48%;top:3%;opacity:.4}.art:after{background:linear-gradient(90deg,#fbf8f1 0%,rgba(251,248,241,.82) 22%,transparent 65%)}.approach{padding:95px 22px}.copycols{grid-template-columns:1fr;margin-left:0;gap:25px}.steps{grid-template-columns:1fr 1fr;padding:0 22px}.building{margin:0 15px 90px;grid-template-columns:1fr}.brand-panel{height:370px;padding:35px}.brand-panel img{height:100%;width:auto;max-width:100%}.building-copy{padding:10px 30px 60px}}@media(max-width:500px){.nav{padding:8px 18px}.brand{width:105px}.hero{min-height:650px}.hero h1{font-size:56px}.lead{font-size:17px}.approach h2{font-size:44px}.steps{grid-template-columns:1fr}.steps article{padding:28px 0 42px}.brand-panel{height:315px}.foot{flex-direction:column;gap:10px}.foot span{margin-left:0}}
.hero{min-height:920px;padding-top:95px;padding-bottom:150px}.hero-copy{max-width:820px}.hero h1{font-size:clamp(52px,6.4vw,92px);line-height:.98;margin:28px 0 38px}.hero h1 span,.hero h1 em{display:block}.hero h1 span{font-style:normal}.hero h1 em{font-style:normal;margin-top:.22em}.hero h1 em:nth-of-type(1){color:#c76452}.hero h1 em:nth-of-type(2){color:#337c8b}.hero .art{opacity:.76;right:-15%;width:74%}.hero .art:after{background:linear-gradient(90deg,#fbf8f1 0%,rgba(251,248,241,.96) 16%,rgba(251,248,241,.64) 34%,transparent 55%)}
.language-section{max-width:1160px;margin:auto;padding:135px 30px 145px;border-top:1px solid #d0d5d0}.language-section h2,.conversation h2,.coregulation h2{font-family:"Manrope",sans-serif;font-weight:300;letter-spacing:-.05em}.language-section h2{font-size:clamp(48px,6vw,82px);line-height:1.05;max-width:920px;margin:24px 0 70px}.language-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;margin-left:10%}.language-grid p{font-size:17px;line-height:1.8;color:#465b5d;margin:0 0 22px}.language-intro p{font-size:21px;color:#193d40}
.conversation{background:#173c40;color:#f7f2e8;padding:135px 30px}.conversation-inner{max-width:1160px;margin:auto}.conversation .eyebrow{color:#9fb6b1}.conversation h2{font-size:clamp(48px,6vw,80px);line-height:1.05;max-width:850px;margin:24px 0 28px}.conversation-lead{font-size:20px;line-height:1.65;color:#cad6d2;max-width:650px}.flow{display:grid;grid-template-columns:repeat(4,1fr);margin-top:85px;border-top:1px solid rgba(255,255,255,.22)}.flow>div{padding:28px 25px 5px 0}.flow span{display:block;color:#d5a044;font-size:11px;margin-bottom:42px}.flow strong{display:block;font:400 26px "Manrope";margin-bottom:15px}.flow p{font-size:14px;line-height:1.7;color:#b9cac6;padding-right:18px}
.core-beliefs{padding:120px 30px;background:#f1eee6}.beliefs-inner{max-width:1160px;margin:auto}.belief-lines{margin-top:55px}.belief-lines p{font:300 clamp(34px,5vw,62px) "Manrope";letter-spacing:-.04em;margin:12px 0;color:#173c40}.belief-lines p:nth-child(2){color:#c76452}.belief-lines p:nth-child(3){color:#508f80}.belief-lines p:nth-child(4){color:#337c8b}
.coregulation{max-width:1180px;margin:130px auto;padding:0 30px;display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.coregulation h2{font-size:clamp(44px,5.5vw,70px);line-height:1.07;margin:22px 0 38px}.coreg-copy>p:not(.eyebrow):not(.accent-line){font-size:17px;line-height:1.8;color:#465b5d;max-width:680px}.accent-line{font:400 21px/1.55 "Manrope";color:#c76452;margin-top:34px;max-width:700px}.coreg-visual{display:flex;align-items:center;justify-content:center}.coreg-visual img{width:100%;height:auto;max-height:440px;object-fit:contain}
@media(max-width:820px){.hero{min-height:860px;padding-top:65px}.hero h1{font-size:clamp(46px,11vw,66px)}.hero .art{width:130%;right:-58%;opacity:.28}.language-grid{grid-template-columns:1fr;gap:25px;margin-left:0}.flow{grid-template-columns:1fr 1fr}.coregulation{grid-template-columns:1fr;margin:90px auto}.coreg-visual{max-height:320px}}
@media(max-width:500px){.hero{min-height:790px}.hero h1{font-size:43px}.language-section,.conversation{padding:90px 22px}.language-section h2,.conversation h2{font-size:43px}.flow{grid-template-columns:1fr}.flow>div{border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:28px}.core-beliefs{padding:85px 22px}.coregulation{padding:0 22px}}

/* v8 — stacked hero and refined brand progression */
.hero{
  max-width:1280px;
  min-height:auto;
  margin:0 auto;
  padding:90px 30px 110px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  overflow:visible;
}
.hero-copy{
  position:relative;
  z-index:2;
  max-width:1080px;
  width:100%;
}
.hero-hooks{
  max-width:1050px;
  margin:32px 0 40px!important;
  font-size:clamp(54px,6.4vw,88px)!important;
  line-height:1.02!important;
}
.hero-hooks span,.hero-hooks em{
  display:block;
  max-width:100%;
}
.hero-hooks span{margin-bottom:.48em}
.hero-hooks em{
  margin-top:0!important;
  margin-bottom:.28em;
}
.hero-hooks em:nth-of-type(1){color:#c76452}
.hero-hooks em:nth-of-type(2){color:#337c8b}
.hero .lead{max-width:720px}
.hero-banner{
  position:relative;
  width:100%;
  margin:78px auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-banner img{
  display:block;
  width:min(100%,1180px);
  height:auto;
  max-height:none;
  object-fit:contain;
}
.hero .art{display:none!important}

.belief-lines{
  margin-top:55px;
  max-width:1050px;
}
.belief-lines p{
  font:300 clamp(31px,4.5vw,58px) "Manrope";
  letter-spacing:-.04em;
  line-height:1.12;
  margin:18px 0;
  color:#173c40;
}
.belief-lines p:nth-child(1){color:#173c40}
.belief-lines p:nth-child(2){color:#d28c21}
.belief-lines p:nth-child(3){color:#c76452}
.belief-lines p:nth-child(4){color:#508f80}
.belief-lines p:nth-child(5){color:#337c8b}

@media(max-width:820px){
  .hero{padding:65px 22px 85px}
  .hero-hooks{font-size:clamp(44px,10vw,64px)!important}
  .hero-banner{margin-top:55px}
}
@media(max-width:500px){
  .hero{padding-top:50px}
  .hero-hooks{font-size:41px!important}
  .hero-hooks span{margin-bottom:.6em}
  .hero-hooks em{margin-bottom:.38em}
  .hero-banner{margin-top:45px}
  .belief-lines p{font-size:34px}
}

/* v9 — stronger visual hierarchy */
.nav{
  max-width:none;
  width:100%;
  min-height:118px;
  height:auto;
  padding:14px 32px 8px 22px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
}
.top-banner{
  display:block;
  width:min(420px,38vw);
  text-decoration:none;
}
.top-banner img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.nav nav{padding-top:18px}

.hero{
  padding-top:95px;
  padding-bottom:135px;
}
.hero-copy{max-width:1120px}
.hero-hooks{
  display:flex!important;
  flex-direction:column;
  gap:0;
  max-width:1100px;
}
.hero-hooks span,
.hero-hooks em{
  margin:0!important;
}
.hero-hooks span{
  font-family:"Manrope",sans-serif;
  font-weight:300;
  font-size:.94em;
  line-height:1.02;
  max-width:980px;
  padding-bottom:58px;
}
.hero-hooks em:nth-of-type(1){
  font-family:"DM Sans",sans-serif;
  font-weight:300;
  font-style:italic;
  letter-spacing:-.045em;
  font-size:.82em;
  line-height:1.08;
  padding:10px 0 52px 9%;
  max-width:900px;
}
.hero-hooks em:nth-of-type(2){
  font-family:"Manrope",sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:-.055em;
  font-size:.88em;
  line-height:1.04;
  padding-left:18%;
  max-width:1000px;
}
.hero-banner{display:none!important}

/* Turn the philosophy progression into five distinct editorial moments. */
.belief-lines{
  max-width:1080px;
  margin-top:62px;
}
.belief-lines p{
  display:grid;
  grid-template-columns:150px 1fr;
  align-items:start;
  gap:32px;
  margin:0!important;
  padding:30px 0 34px;
  border-top:1px solid rgba(23,60,64,.15);
  font-family:"Manrope",sans-serif!important;
}
.belief-lines p:last-child{
  border-bottom:1px solid rgba(23,60,64,.15);
}
.belief-lines small{
  display:block;
  padding-top:9px;
  font-family:"DM Sans",sans-serif;
  font-size:10px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#758481;
}
.belief-lines span{
  display:block;
  font-size:clamp(31px,4.2vw,55px);
  font-weight:300;
  line-height:1.08;
  letter-spacing:-.045em;
}

@media(max-width:820px){
  .nav{padding:12px 20px;align-items:flex-start}
  .top-banner{width:min(330px,52vw)}
  .nav nav{padding-top:10px}
  .hero{padding-top:70px}
  .hero-hooks span{padding-bottom:46px}
  .hero-hooks em:nth-of-type(1){padding-left:5%;padding-bottom:44px}
  .hero-hooks em:nth-of-type(2){padding-left:10%}
  .belief-lines p{grid-template-columns:110px 1fr;gap:18px}
}
@media(max-width:500px){
  .nav{display:block;padding:10px 18px 14px}
  .top-banner{width:280px;max-width:78vw}
  .nav nav{justify-content:flex-end;padding-top:8px}
  .hero{padding-top:55px}
  .hero-hooks span{padding-bottom:40px}
  .hero-hooks em:nth-of-type(1){padding-left:0;padding-bottom:40px}
  .hero-hooks em:nth-of-type(2){padding-left:0}
  .belief-lines p{display:block;padding:25px 0 29px}
  .belief-lines small{padding:0 0 10px}
  .belief-lines span{font-size:34px}
}

/* v10 — slightly larger top-left brand banner */
.top-banner{width:min(500px,44vw)}
@media(max-width:820px){.top-banner{width:min(385px,58vw)}}
@media(max-width:500px){.top-banner{width:320px;max-width:84vw}}

/* v11 — return banner beneath hero messaging, at a substantial readable size */
.nav{
  justify-content:flex-end;
  min-height:82px;
  padding-top:12px;
}
.nav nav{padding-top:8px}
.top-banner{display:none!important}

.hero{
  padding-top:70px;
}
.hero-brand-banner{
  width:100%;
  max-width:1080px;
  margin:80px 0 0;
  display:flex;
  justify-content:flex-start;
  align-items:center;
}
.hero-brand-banner img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
@media(max-width:820px){
  .hero-brand-banner{margin-top:65px;max-width:100%}
}
@media(max-width:500px){
  .nav{min-height:65px}
  .hero-brand-banner{margin-top:52px;width:112%;margin-left:-6%}
}

/* v12 — full-width brand banner directly beneath top menu */
.nav{
  min-height:58px;
  height:auto;
  max-width:1440px;
  margin:0 auto;
  padding:12px 32px 4px;
  display:flex;
  justify-content:flex-end;
  align-items:center;
}
.nav nav{padding-top:0}

.top-brand-banner{
  width:100%;
  max-width:1440px;
  margin:0 auto;
  padding:0 18px 24px;
  display:flex;
  justify-content:center;
  align-items:center;
  overflow:hidden;
}
.top-brand-banner img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
}

.hero{
  padding-top:70px;
}
.hero-brand-banner{display:none!important}

@media(max-width:820px){
  .nav{padding:10px 20px 2px}
  .top-brand-banner{padding:0 8px 18px}
  .hero{padding-top:55px}
}
@media(max-width:500px){
  .nav{min-height:54px;padding:8px 18px 2px}
  .top-brand-banner{
    width:112%;
    margin-left:-6%;
    padding:0 0 12px;
  }
  .hero{padding-top:48px}
}

/* v13 — slightly smaller top brand banner */
.top-brand-banner{
  max-width:1260px;
  padding-left:32px;
  padding-right:32px;
}
@media(max-width:820px){
  .top-brand-banner{max-width:94%;padding-left:12px;padding-right:12px}
}
@media(max-width:500px){
  .top-brand-banner{width:100%;max-width:96%;margin-left:auto;margin-right:auto}
}

/* v14 — final subtle banner size adjustment */
.top-brand-banner{max-width:1180px}
@media(max-width:820px){.top-brand-banner{max-width:91%}}
@media(max-width:500px){.top-brand-banner{max-width:93%}}
