:root{--cream:#f0ede6;--ink:#102128;--forest:#315b4e;--muted:#4d5d59;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.55 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:6px}button{font:inherit}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.06;margin:0}p{margin:0 0 1.15rem}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b76b2d;outline-offset:6px}section{scroll-margin-top:24px}.wrap{width:calc(100% - 112px);max-width:1320px;margin-inline:auto}.skip-link{position:absolute;top:-100px;left:20px;z-index:20;padding:12px;background:var(--ink);color:white}.skip-link:focus{top:12px}.opening{background:#eae7e0}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px}.brand{display:flex;align-items:center;gap:18px;text-decoration:none}.mark{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;font:italic 52px/1 var(--serif);background:#102128;color:var(--cream)}.brand-name{font:29px/1.12 var(--serif);letter-spacing:-1px}.brand small{display:block;font:9px/1.5 Arial,sans-serif;letter-spacing:2.1px;margin-top:6px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:14px}.site-header nav>a:not(.button){padding-block:13px;text-decoration:none}.site-header nav>a:not(.button):hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px;padding:14px 24px;background:var(--forest);color:#fff;text-decoration:none;font-size:15px;line-height:1.35;transition:background .15s}.button:hover{background:#234237}.button span{font-size:22px;line-height:1}.opening-content{position:relative;isolation:isolate;background:var(--cream);overflow:hidden}.hero{position:relative;padding:24px 0 70px;min-height:430px;z-index:1}.hero h1{font-size:clamp(56px,6.05vw,88px);max-width:850px;line-height:1.02;letter-spacing:-.045em}.eyebrow{font-size:11px;letter-spacing:2.15px;line-height:1.6;color:#335449}.hero .eyebrow{margin:22px 0 0;max-width:510px;font-size:12px;letter-spacing:2.5px}.pathways{position:relative;max-width:1432px;width:calc(100% - 60px);margin:-70px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.pathway{position:relative;z-index:1;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;padding:44px 34px 30px;min-height:298px;text-decoration:none;overflow:hidden;border-right:1px solid var(--cream);background:#ddd8cc}.pathway:last-child{border:0}.pathway:before{content:'';position:absolute;inset:0;z-index:-1;background-position:center;background-size:cover;transition:transform .35s}.pathway:hover:before{transform:scale(1.035)}.pathway h2{font-size:clamp(24px,2.3vw,34px);line-height:1.08;letter-spacing:-.04em;margin-bottom:12px}.pathway p{font-size:14px;line-height:1.5;max-width:225px;margin-bottom:18px}.arrow{display:grid;place-items:center;width:39px;height:39px;border:1px solid currentColor;border-radius:50%;font-size:25px;margin-top:auto;line-height:1}.pathway:hover .arrow{background:rgba(128,128,128,.18)}.assessment:before{background-image:linear-gradient(100deg,rgba(238,226,205,.78),rgba(238,226,205,.28)),url('pathway-assessment.png');background-position:center 52%}.case{background:#08271f;color:#fff}.case:before{background-image:linear-gradient(100deg,rgba(2,24,17,.78),rgba(3,26,21,.32)),url('pathway-case.png');background-position:center 50%}.building:before{background-image:linear-gradient(100deg,rgba(241,229,207,.76),rgba(219,194,155,.25)),url('pathway-building.png');background-position:center 50%}.team{background:#122935;color:#fff}.team:before{background-image:linear-gradient(105deg,rgba(5,20,29,.82),rgba(8,29,42,.48)),url('pathway-team.png');background-position:center 50%}.interdisciplinary{position:relative;isolation:isolate;overflow:hidden}.interdisciplinary:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--cream) 24%,rgba(240,237,230,.63)),linear-gradient(var(--cream),transparent),url('mountains.jpg') center 55%/cover}.approach-inner{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:35px;padding-block:50px 38px}.approach-copy h2{font-size:clamp(38px,4.2vw,58px);line-height:1.08;margin-bottom:24px}.approach-copy>p{max-width:360px;font-size:19px;letter-spacing:.25px;line-height:1.45;color:var(--muted)}.editorial-details{margin-top:22px}.editorial-details summary{display:table;cursor:pointer;font-size:14px;padding:7px 0 10px;border-bottom:1px solid;list-style:none;min-height:44px}.editorial-details summary::-webkit-details-marker{display:none}.editorial-details summary span{display:inline-block;margin-left:14px;font-size:21px;line-height:1;transition:transform .15s}.editorial-details[open] summary span{transform:rotate(90deg)}.editorial-details>div{max-width:620px;padding-top:22px;font-size:16px;color:var(--muted)}.lenses{display:block;width:100%;overflow:visible;max-width:650px;justify-self:center}.lens-circles circle{fill-opacity:.36}.lens-labels{font:14px Arial,sans-serif;letter-spacing:1.4px;fill:#102128;text-anchor:middle}.long-label{font-size:12px;letter-spacing:.6px}.profile{display:grid;grid-template-columns:42% 58%;background:#efede6;min-height:320px}.portrait-slot{min-height:320px;position:relative;display:grid;place-items:center;background:linear-gradient(110deg,rgba(33,55,48,.22),rgba(231,226,215,.4)),linear-gradient(40deg,#a7b0a7,#d2cdbf 60%,#ede9df);color:#30423c}.portrait-slot:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,#efede6)}.portrait-slot>span{position:relative;z-index:1;max-width:80%;font:23px/1.4 var(--serif)}.portrait-slot small{display:block;font:10px/1.8 Arial,sans-serif;text-transform:uppercase;letter-spacing:1.4px;margin-top:10px}.portrait-slot img{width:100%;height:100%;object-fit:cover;object-position:center 35%}.profile-copy{align-self:center;padding:38px 56px 34px 42px;max-width:850px}.profile h2{font-size:clamp(28px,3vw,41px);letter-spacing:-.035em;margin-bottom:8px;line-height:1.13}.profile .eyebrow{font-size:10px;letter-spacing:1.9px;margin-bottom:20px}.profile p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.45}.profile .license{margin-bottom:20px}.profile .editorial-details{margin-top:14px}.closing{background:linear-gradient(90deg,rgba(6,23,21,.96),rgba(8,26,23,.8) 46%,rgba(8,26,23,.25)),url('forest.png') center 60%/cover;color:#f5f3ed;padding-block:34px 32px}.closing .eyebrow{color:#f5f3ed;margin-bottom:12px;font-size:10px}.closing h2{font-size:clamp(38px,4.5vw,60px);margin-bottom:12px}.closing p:not(.eyebrow){font-size:17px;letter-spacing:.2px}.closing .button{margin-top:2px;min-width:235px}footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:18px;font-size:11px}.footer-identity{display:flex;flex-wrap:wrap;gap:14px 24px}footer nav{display:flex;align-items:center;gap:14px}footer a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}footer a:hover{text-decoration:underline}.privacy-note{display:none;padding-block:30px;max-width:900px}.privacy-note:target{display:block}.privacy-note h2{font-size:30px;margin-bottom:16px}dialog{border:0;background:var(--cream);color:var(--ink);width:min(570px,calc(100% - 32px));max-height:calc(100% - 32px);padding:48px;overflow:auto;box-shadow:0 20px 90px #0005}dialog::backdrop{background:rgba(8,24,23,.65);backdrop-filter:blur(5px)}dialog h2{font-size:40px;margin-bottom:22px}dialog p{font-size:16px;color:var(--muted)}.dialog-close{position:absolute;right:12px;top:9px;background:none;border:0;font-size:30px;width:44px;height:44px;color:var(--ink);cursor:pointer}.inquiry-context{border-left:2px solid var(--forest);padding:10px 16px;background:#e0e4da}dialog .email-address{font-size:13px;margin-top:10px}dialog .text-link{display:inline-block;margin-block:8px;min-height:44px;padding-top:10px;font-size:14px}dialog .fine{font-size:12px;margin:18px 0 0}body.dialog-open{overflow:hidden}[hidden]{display:none!important}
.hero-mountain{
  position:absolute;
  z-index:0;
  right:0;
  bottom:0;
  height:100%;
  width:auto;
  max-width:none;
  object-fit:contain;
  object-position:right bottom;
  pointer-events:none;
}

@media(min-width:1500px){.pathways{max-width:1380px}.hero{padding-top:45px;padding-bottom:50px}.pathway{min-height:330px}.approach-inner{padding-block:65px}.profile-copy{padding-block:48px}.closing{padding-block:45px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.site-header nav{gap:20px}.brand-name{font-size:24px}.mark{width:58px;height:58px}.button{padding-inline:18px}.pathways{width:calc(100% - 40px)}.pathway{padding:36px 24px 26px}.pathway h2{font-size:25px}.pathway p{font-size:13px}.approach-inner{gap:20px}.approach-copy h2{font-size:42px}.profile-copy{padding-inline:32px}.profile p:not(.eyebrow){font-size:16px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{flex-wrap:wrap;padding-block:20px;gap:20px}.brand-name{font-size:25px}.site-header nav{width:100%;justify-content:space-between;gap:15px}.site-header nav .button{margin-left:auto;font-size:13px;min-height:46px;padding-inline:14px}.hero{padding-block:27px 38px}.hero h1{font-size:clamp(44px,8.4vw,62px)}.hero .eyebrow{font-size:10px;letter-spacing:1.8px}.hero-mountain{height:100%;right:-18%;}.pathways{grid-template-columns:repeat(2,minmax(0,1fr))}.pathway{min-height:282px;padding:30px 22px 24px;border-bottom:1px solid var(--cream)}.pathway:nth-child(2){border-right:0}.pathway h2{font-size:27px}.pathway p{font-size:14px}.approach-inner{grid-template-columns:1fr;gap:20px;padding-block:42px}.approach-copy h2{font-size:43px}.approach-copy>p{max-width:450px;font-size:18px}.lenses{max-width:480px;margin-top:8px}.profile{grid-template-columns:1fr}.portrait-slot{min-height:240px}.portrait-slot:after{background:linear-gradient(0deg,#efede6,transparent 45%)}.profile-copy{padding:24px 20px 38px}.profile h2{font-size:33px}.profile .eyebrow{font-size:9px;letter-spacing:1.6px}.closing{padding-block:40px}.closing h2{font-size:43px}.closing p:not(.eyebrow){font-size:16px;max-width:340px}footer{align-items:flex-start;flex-direction:column;padding-block:24px;gap:10px}.footer-identity{gap:8px 15px}dialog{padding:44px 24px 28px}dialog h2{font-size:34px}}
@media(max-width:420px){.brand-name{font-size:23px}.brand small{font-size:8px;letter-spacing:1.8px}.mark{width:52px;height:56px;font-size:46px}.brand{gap:13px}.site-header nav{gap:16px;font-size:13px}.site-header nav .button{font-size:12px;gap:8px;padding-inline:10px}.hero h1{font-size:43px}.hero h1 br{display:none}.pathways{grid-template-columns:1fr}.pathway{min-height:270px;padding:32px;border-right:0}.pathway h2{font-size:31px}.pathway p{max-width:245px}.pathway h2 br{display:none}.approach-copy h2{font-size:37px}.approach-copy h2 br{display:none}.closing h2{font-size:37px}.desktop-break{display:none}.footer-identity{flex-direction:column}.lenses{width:calc(100% + 10px);margin-inline:-5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before{transition:none!important}}

@media(max-width:760px){.lens-labels{font-size:21px;letter-spacing:1px}.long-label{font-size:19px;letter-spacing:0}}

/* Approved portrait: display-only cropping; original image is unmodified. */
.portrait-slot{overflow:hidden;min-height:360px}.portrait-slot img{position:absolute;inset:0;display:block;object-position:70% 30%}
@media(max-width:760px){.portrait-slot{min-height:420px}.portrait-slot img{object-position:50% 25%}}


/* Editorial mountain collage */
.opening-content{
  position:relative;
  isolation:isolate;
  background:var(--cream);
  padding-bottom:34px;
  overflow:hidden;
}

.opening-content::before{
  content:'';
  position:absolute;
  z-index:-1;
  inset:0;
  background:url('hero-mountains.png') right bottom/100% auto no-repeat;
  pointer-events:none;
}

.hero{
  position:relative;
  min-height:430px;
  padding-top:24px;
  padding-bottom:155px;
}

.pathways{
  position:relative;
  z-index:1;
  margin-top:-155px;
}

/* Opening composition matched to approved mockup */
.opening{
  background:var(--cream);
}

.opening-content{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--cream);
  padding-bottom:0;
}

.opening-content::before{
  content:'';
  position:absolute;
  z-index:-1;
  inset:0;
  background-image:url('hero-mountains.png');
  background-repeat:no-repeat;
  background-size:145% auto;
  background-position:right bottom;
  pointer-events:none;
}

.hero{
  position:relative;
  min-height:0;
  padding-top:24px;
  padding-bottom:70px;
}

.pathways{
  position:relative;
  z-index:1;
  margin-top:0;
}

/* Position mountain within the below-header hero, not the full card composition */
.hero-mountain{
  top:0;
  right:0;
  bottom:auto;
  height:430px;
  width:auto;
  max-width:none;
  object-fit:contain;
  object-position:right top;
}

.hero-mountain{
  height:500px;
}

.hero-mountain{
  height:430px;
  top:-75px;
}

.pathways{
  transform:translateY(-55px);
  margin-bottom:-55px;
}

.pathways{
  transform:translateY(-30px);
  margin-bottom:-30px;
}

/* Match approved mockup color temperature */
:root{
  --cream:#f3efe8;
}

.hero-mountain{
  filter:
    saturate(.78)
    contrast(.91)
    brightness(1.07)
    sepia(.08);
}

/* Match approved mockup palette */
:root{
  --cream:#eee9e3;
}

.hero-mountain{
  filter:saturate(.72) contrast(.90) brightness(1.04);
}

/* Preserve Section 2 landscape treatment */
.interdisciplinary{
  background-color:transparent;
}

/* Grade pathway imagery to approved mockup palette */
.pathway::before{
  filter:saturate(.72) contrast(.92) brightness(.97);
}

/* Individual pathway grading to match approved mockup */
.pathway::before{
  filter:none;
}

.pathway.assessment::before{
  filter:saturate(.72) contrast(.94) brightness(1.08);
}

.pathway.case::before{
  filter:saturate(.76) contrast(.96) brightness(1.04);
}

.pathway.building::before{
  filter:saturate(.66) contrast(.92) brightness(1.08);
}

.pathway.team::before{
  filter:saturate(.82) contrast(.96) brightness(1.03);
}

/* Cool and brighten light pathway panels */
.pathway.assessment::before{
  filter:
    brightness(1.13)
    contrast(.93)
    saturate(.62)
    hue-rotate(8deg);
}

.pathway.building::before{
  filter:
    brightness(1.13)
    contrast(.91)
    saturate(.52)
    hue-rotate(10deg);
}

/* Restore richer cool tones to dark panels */
.pathway.case::before{
  filter:saturate(.88) contrast(.96) brightness(1.04);
}

.pathway.team::before{
  filter:saturate(.96) contrast(.96) brightness(1.04);
}

/* Tighten Section 2 spacing only — preserve typography and artwork scale */
.approach-inner{
  gap:18px;
  padding-block:2px 2px;
}



/* Section 2 transparent mountain collage */
.interdisciplinary{
  background:#efede6;
}

.interdisciplinary::before{
  background-image:url('mountains.png');
  background-repeat:no-repeat;
  background-size:100% auto;
  background-position:center bottom;
  opacity:.58;
}


/* Section 2 proportional compression — match approved mockup */
.approach-inner{
  gap:12px;
  padding-block:0;
}

.approach-copy h2{
  margin-bottom:12px;
}

.approach-copy .editorial-details{
  margin-top:10px;
}

.lenses{
  max-width:650px;
  margin-block:-28px;
}

/* About/Profile — approved desktop layout */
@media (min-width:761px){
  .profile{
    grid-template-columns:42% 58%;
    min-height:320px;
  }

  .portrait-slot{
    min-height:320px;
    height:auto;
    align-self:stretch;
    overflow:hidden;
  }

  .portrait-slot img{
    position:absolute;
    inset:0;
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:70% 30%;
    filter:saturate(.82) brightness(.98) contrast(.96);
  }

  .profile-copy{
    padding:38px 56px 34px 42px;
  }
}

/* Fade mountain collage away from Section 2 copy */
@media (min-width:761px){
  .interdisciplinary::before{
    -webkit-mask-image:linear-gradient(
      90deg,
      transparent 0%,
      transparent 25%,
      rgba(0,0,0,.18) 34%,
      rgba(0,0,0,.70) 43%,
      #000 52%,
      #000 100%
    );
    mask-image:linear-gradient(
      90deg,
      transparent 0%,
      transparent 25%,
      rgba(0,0,0,.18) 34%,
      rgba(0,0,0,.70) 43%,
      #000 52%,
      #000 100%
    );
  }
}
