:root {
  --midnight:#28324c;
  --forest:#40603b;
  --stone:#e1d9c9;
  --linen:#f5f1e9;
  --slate:#4a5d72;
  --moss:#5e7a4f;
  --willow:#a0b15e;
  --terracotta:#a65927;
  --caramel:#b9793b;
  --camel:#bf996b;
  --graphite:#2c2b2b;
  --white:#fff;
  --header-h:86px;
  --ease:cubic-bezier(.22,1,.36,1);
  --max: min(1480px, calc(100vw - clamp(32px,6vw,96px)));
}

* {
  box-sizing:border-box;
  border-radius:0!important
}

html {
  scroll-behavior:smooth;
  background:var(--linen)
}

body {
  margin:0;
  font-family:'Urbanist',system-ui,sans-serif;
  color:var(--graphite);
  background:var(--linen);
  overflow-x:hidden
}

img,video {
  max-width:100%;
  display:block
}

a {
  color:inherit;
  text-decoration:none
}

button {
  font:inherit
}

::selection {
  background:var(--terracotta);
  color:var(--linen)
}

body.menu-open {
  overflow:hidden
}

.page {
  background:var(--linen)
}

.site-header {
  position:fixed;
  top:0;
  left:0;
  right:0;
  height:var(--header-h);
  z-index:70;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 clamp(20px,4vw,58px);
  transition:background .45s var(--ease),backdrop-filter .45s var(--ease),box-shadow .45s var(--ease),opacity .28s var(--ease),transform .28s var(--ease);
  background:transparent;
  border-bottom:1px solid rgba(40,50,76,0)
}

.site-header.scrolled {
  background:rgba(40,50,76,.78);
  backdrop-filter:blur(22px) saturate(1.15);
  box-shadow:0 20px 70px rgba(40,50,76,.18);
  border-bottom-color:rgba(245,241,233,.14)
}

body.menu-open .site-header {
  opacity:0;
  transform:translateY(-20px);
  pointer-events:none
}

.brand-mark {
  position:relative;
  width:clamp(132px,12vw,178px);
  height:52px;
  display:flex;
  align-items:center;
  z-index:3
}

.brand-mark img {
  position:absolute;
  max-height:44px;
  width:auto;
  transition:opacity .35s var(--ease),transform .35s var(--ease)
}

.logo-scrolled {
  opacity:0
}

.site-header.scrolled .logo-default {
  opacity:0
}

.site-header.scrolled .logo-scrolled {
  opacity:1
}

.menu-toggle {
  width:56px;
  height:56px;
  border:0;
  background:transparent;
  cursor:pointer;
  position:relative;
  z-index:4
}

.menu-toggle span,.menu-toggle:before,.menu-toggle:after {
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  height:2px;
  background:var(--midnight);
  transition:.35s var(--ease)
}

.site-header.scrolled .menu-toggle span,.site-header.scrolled .menu-toggle:before,.site-header.scrolled .menu-toggle:after {
  background:var(--linen)
}

.menu-toggle:before {
  top:19px
}

.menu-toggle span {
  top:27px
}

.menu-toggle:after {
  top:35px
}

.menu-toggle:hover:before {
  transform:translateX(8px)
}

.menu-toggle:hover:after {
  transform:translateX(-8px)
}

.fullscreen-menu {
  position:fixed;
  inset:0;
  z-index:100;
  overflow:hidden;
  display:grid;
  place-items:center;
  pointer-events:none;
  visibility:hidden;
  color:var(--linen);
  background:transparent;
  --reveal-x:calc(100% - clamp(48px,4vw,70px));
  --reveal-y:clamp(42px,4vw,68px)
}

.fullscreen-menu:before {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 8%,rgba(245,241,233,.45) 0 8%,rgba(245,241,233,.2) 18%,transparent 42%),linear-gradient(135deg,#4a5d72 0%,#63798c 58%,#f5f1e9 190%);
  clip-path:circle(0 at var(--reveal-x) var(--reveal-y));
  transition:clip-path .92s cubic-bezier(.76,0,.18,1);
  z-index:0;
  will-change:clip-path
}

.fullscreen-menu:after {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 8%,rgba(245,241,233,.72),rgba(245,241,233,.2) 16rem,transparent 31rem);
  mix-blend-mode:soft-light;
  opacity:0;
  pointer-events:none;
  transition:opacity .55s var(--ease);
  z-index:1
}

.fullscreen-menu.is-open,.fullscreen-menu.is-closing {
  visibility:visible
}

.fullscreen-menu.is-open {
  pointer-events:auto
}

.fullscreen-menu.is-open:before {
  clip-path:circle(155vmax at var(--reveal-x) var(--reveal-y))
}

.fullscreen-menu.is-open:after {
  opacity:1
}

.fullscreen-menu.is-closing {
  pointer-events:none
}

.fullscreen-menu.is-closing:before {
  clip-path:circle(0 at var(--reveal-x) var(--reveal-y));
  transition-duration:.82s
}

.fullscreen-menu.is-closing:after {
  opacity:0
}

.menu-close {
  position:absolute;
  top:27px;
  right:clamp(22px,4vw,60px);
  width:54px;
  height:54px;
  border:0;
  background:transparent;
  color:var(--linen);
  font-size:38px;
  line-height:1;
  cursor:pointer;
  z-index:5
}

.menu-shell {
  position:relative;
  text-align:center;
  display:grid;
  gap:clamp(30px,4vw,58px);
  opacity:0;
  transform:translateY(18px) scale(.985);
  transition:opacity .55s var(--ease),transform .65s var(--ease);
  z-index:2
}

.is-open .menu-shell {
  opacity:1;
  transform:translateY(0) scale(1);
  transition-delay:.32s
}

.is-closing .menu-shell {
  opacity:0;
  transform:translateY(-10px) scale(.985);
  transition-delay:0s
}

.menu-logo {
  height:clamp(32px,4vw,54px);
  margin:auto
}

.menu-nav {
  display:grid;
  gap:clamp(14px,2.2vw,26px)
}

.menu-link {
  font-family:'Mulish',sans-serif;
  font-size:clamp(1.55rem,3.1vw,4rem);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(245,241,233,.72);
  opacity:0;
  transform:translateY(18px) scale(.98);
  transition:color .35s var(--ease),letter-spacing .35s var(--ease),opacity .38s var(--ease),transform .38s var(--ease)
}

.is-open .menu-link {
  opacity:1;
  transform:none;
  transition-delay:calc(.38s + var(--i)*.06s)
}

.is-closing .menu-link {
  opacity:0;
  transform:translateY(-12px) scale(.99);
  transition-delay:0s
}

.menu-link:hover {
  color:var(--linen);
  letter-spacing:.14em
}

.menu-foot {
  position:absolute;
  left:clamp(22px,4vw,60px);
  right:clamp(22px,4vw,60px);
  bottom:clamp(22px,4vw,48px);
  display:flex;
  justify-content:space-between;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:clamp(.68rem,.75vw,.82rem);
  color:rgba(245,241,233,.72);
  z-index:2;
  opacity:0;
  transition:.4s var(--ease)
}

.is-open .menu-foot {
  opacity:1;
  transition-delay:.55s
}

section {
  position:relative;
  padding:clamp(78px,10vw,150px) clamp(22px,5vw,72px)
}

.hero {
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(320px,.76fr);
  gap:clamp(40px,6vw,96px);
  align-items:center;
  padding-top:calc(var(--header-h) + 56px);
  overflow:hidden
}

.hero:before,.page-hero:before {
  content:"";
  position:absolute;
  inset:auto -12vw -10vw auto;
  width:44vw;
  height:44vw;
  background:radial-gradient(circle,rgba(166,89,39,.16),transparent 64%);
  filter:blur(8px);
  pointer-events:none
}

.hero-kicker,.section-label {
  font-family:'Mulish',sans-serif;
  text-transform:uppercase;
  letter-spacing:.2em;
  font-weight:900;
  font-size:clamp(.68rem,.76vw,.88rem);
  color:var(--terracotta);
  margin-bottom:clamp(18px,2vw,30px)
}

h1,h2,h3 {
  text-transform:uppercase;
  font-family:'Mulish',sans-serif;
  margin:0;
  line-height:.94;
  color:var(--midnight);
  letter-spacing:-.065em
}

h1 {
  font-size:clamp(4.1rem,10vw,12rem);
  font-weight:1000
}

h2 {
  font-size:clamp(2.6rem,5.6vw,7rem);
  font-weight:950
}

h3 {
  font-size:clamp(1.4rem,2.2vw,3rem);
  font-weight:900
}

.hero-title-line {
  display:block
}

.hero-title-line.indent {
  padding-left:clamp(38px,8vw,118px)
}

p {
  font-size:clamp(1rem,1.2vw,1.32rem);
  line-height:1.62;
  margin:0;
  color:rgba(44,43,43,.82)
}

.hero-copy {
  max-width:720px;
  margin-top:clamp(26px,4vw,52px);
  font-size:clamp(1.12rem,1.55vw,1.72rem);
  line-height:1.48
}

.hero-actions,.button-row {
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:clamp(28px,4vw,54px)
}

.button {
  --btn-bg:var(--terracotta);
  position:relative;
  isolation:isolate;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 25px;
  border:1px solid var(--btn-bg);
  background:var(--btn-bg);
  color:var(--linen);
  font-family:'Mulish',sans-serif;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:900;
  font-size:clamp(.68rem,.74vw,.8rem);
  overflow:hidden;
  transition:color .36s var(--ease),border-color .36s var(--ease)
}

.button:before {
  content:"";
  position:absolute;
  inset:0;
  background:var(--midnight);
  transform:scaleX(0);
  transform-origin:right;
  transition:transform .42s var(--ease);
  z-index:-1
}

.button:hover:before {
  transform:scaleX(1);
  transform-origin:left
}

.button.secondary {
  --btn-bg:var(--willow);
  color:var(--midnight);
  border-color:var(--willow);
  background:var(--willow)
}

.button.secondary:before {
  background:var(--linen)
}

.button.secondary:hover {
  color:var(--midnight)
}

.hero-media-wrap {
  position:relative;
  min-height:640px
}

.hero-media {
  width:min(430px,80%);
  aspect-ratio:9/14;
  margin-left:auto;
  overflow:hidden;
  box-shadow:0 34px 94px rgba(40,50,76,.24)
}

.hero-media video {
  width:100%;
  height:100%;
  object-fit:cover
}

.hero-card {
  position:absolute;
  left:clamp(-32px,-2.5vw,-12px);
  bottom:clamp(96px,18%,170px);
  width:min(390px,76%);
  padding:clamp(22px,2.4vw,36px);
  background:rgba(245,241,233,.78);
  border:1px solid rgba(255,255,255,.62);
  backdrop-filter:blur(18px);
  box-shadow:0 26px 80px rgba(40,50,76,.16)
}

.hero-card h2 {
  font-size:clamp(1.6rem,2.8vw,3.2rem);
  letter-spacing:-.04em;
  margin-bottom:12px
}

.marquee {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:58px;
  background:var(--midnight);
  color:var(--linen);
  overflow:hidden;
  display:flex;
  align-items:center
}

.marquee-track {
  display:flex;
  gap:48px;
  white-space:nowrap;
  animation:marquee 32s linear infinite
}

.marquee span {
  font-family:'Mulish';
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:rgba(245,241,233,.72)
}

@keyframes marquee {
  to {
    transform:translateX(-50%)
  }
}

.intro {
  display:grid;
  grid-template-columns:.72fr 1fr;
  gap:clamp(40px,7vw,110px);
  align-items:start
}

.intro-copy {
  display:grid;
  gap:26px
}

.stat-row {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:rgba(40,50,76,.13);
  margin-top:30px
}

.stat {
  background:rgba(245,241,233,.72);
  padding:clamp(28px,4vw,58px);
  position:relative;
  overflow:hidden
}

.stat span {
  display:block;
  font-family:'Mulish';
  font-size:clamp(3rem,6vw,8rem);
  font-weight:1000;
  color:var(--midnight);
  letter-spacing:-.08em;
  line-height:.9
}

.stat small {
  display:block;
  margin-top:14px;
  font-size:clamp(.86rem,1vw,1.08rem);
  line-height:1.4;
  color:rgba(44,43,43,.65)
}

.pathways {
  background:var(--midnight);
  color:var(--linen);
  overflow:hidden
}

.pathways:before,.brandmark-bg {
  content:"";
  position:absolute;
  right:-4vw;
  top:8%;
  width:clamp(320px,38vw,620px);
  height:clamp(320px,38vw,620px);
  /* background-image:url('Mount_PrimaryLogo-SoftLinen-NoTagline.png') ;
  background-position:center;
  background-size:contain;
  background-repeat:no-repeat; */
  opacity:.045;
  filter:blur(.2px);
  pointer-events:none
}

.pathways h2,.pathways h3,.media-tile h3,.final h2,.final h3,.testimonial-band h2 {
  color:var(--linen)
}

.pathways-header {
  display:flex;
  justify-content:space-between;
  gap:40px;
  align-items:end;
  margin-bottom:50px
}

.pathways-intro {
  max-width:520px;
  color:rgba(245,241,233,.72)
}

.cards {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:rgba(245,241,233,.2)
}

.path-card {
  min-height:380px;
  padding:clamp(28px,3.5vw,52px);
  background:rgba(74,93,114,.38);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  position:relative;
  overflow:hidden;
  transition:background .45s var(--ease),transform .45s var(--ease)
}

.path-card:before {
  content:"";
  position:absolute;
  right:24px;
  top:24px;
  width:62px;
  height:62px;
  background-image:url('Mount_Brandmark-SoftLinen.png'),url('Mount_Brandmark-SoftLinen.png');
  background-position:center;
  background-size:contain;
  background-repeat:no-repeat;
  opacity:.22;
  transition:transform .5s var(--ease),opacity .5s var(--ease)
}

.path-card:hover {
  background:rgba(74,93,114,.62);
  transform:translateY(-8px)
}

.path-card:hover:before {
  transform:scale(1.18) rotate(12deg);
  opacity:.42
}

.path-card p {
  color:rgba(245,241,233,.7);
  margin-top:18px
}

.path-link {
  font-family:'Mulish';
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:900;
  font-size:.76rem;
  color:var(--willow)
}

.split {
  display:grid;
  grid-template-columns:.9fr 1fr;
  gap:clamp(40px,6vw,92px);
  align-items:center
}

.split-image {
  min-height:680px;
  background:linear-gradient(rgba(40,50,76,.15),rgba(40,50,76,.15)),url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?q=80&w=1600&auto=format&fit=crop') center/cover;
  filter:saturate(.75);
  box-shadow:0 20px 72px rgba(40,50,76,.12)
}

.service-list {
  display:grid;
  margin-top:45px;
  border-top:1px solid rgba(40,50,76,.14)
}

.service-item {
  display:grid;
  grid-template-columns:.3fr 1fr auto;
  gap:24px;
  padding:28px 0;
  border-bottom:1px solid rgba(40,50,76,.14);
  align-items:center
}

.service-item span,.tile-tag {
  font-family:'Mulish';
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:900;
  font-size:.72rem;
  color:var(--terracotta)
}

.service-item strong {
  font-size:clamp(1.04rem,1.35vw,1.5rem);
  font-weight:600
}

.service-item em {
  font-family:'Mulish';
  font-style:normal;
  color:rgba(40,50,76,.35);
  font-weight:900
}

.media {
  background:var(--stone)
}

.media-grid {
  display:grid;
  grid-template-columns:1.15fr .85fr;
  grid-template-rows:repeat(2,minmax(240px,1fr));
  gap:1px;
  background:rgba(40,50,76,.12);
  margin-top:50px
}

.media-tile {
  background:rgba(40,50,76,.88);
  padding:clamp(28px,4vw,60px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  color:var(--linen);
  position:relative;
  overflow:hidden
}

.media-tile.featured {
  grid-row:span 2;
  min-height:560px;
  background:linear-gradient(rgba(40,50,76,.42),rgba(40,50,76,.9)),url('https://images.unsplash.com/photo-1521737604893-d14cc237f11d?q=80&w=1500&auto=format&fit=crop') center/cover
}

.media-tile p {
  max-width:560px;
  color:rgba(245,241,233,.78);
  margin-top:18px
}

.proof {
  display:grid;
  grid-template-columns:.8fr 1fr;
  gap:70px
}

.proof-copy {
  font-size:clamp(1.18rem,1.5vw,1.62rem)
}

.client-cloud {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:32px
}

.client-cloud span {
  padding:12px 15px;
  border:1px solid rgba(40,50,76,.18);
  font-family:'Mulish';
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:900;
  color:var(--midnight);
  background:rgba(255,255,255,.32)
}

.testimonial-band {
  background:var(--slate);
  color:var(--linen);
  padding-top:clamp(90px,10vw,140px);
  padding-bottom:clamp(90px,10vw,140px);
  overflow:hidden
}

.testimonial-stage {
  max-width:var(--max);
  margin:50px auto 0;
  display:grid;
  grid-template-columns:.82fr 1fr;
  gap:clamp(40px,7vw,110px);
  align-items:center
}

.testimonial-photo {
  aspect-ratio:4/5;
  background:linear-gradient(rgba(0,0,0,.35),rgba(0,0,0,.35)),var(--img) center/cover;
  filter:grayscale(1) contrast(1.08);
  box-shadow:0 28px 80px rgba(0,0,0,.2)
}

.testimonial-slide {
  display:none
}

.testimonial-slide.is-active {
  display:grid
}

.quote-mark {
  font-family:Georgia,serif;
  font-size:clamp(5rem,8vw,9rem);
  line-height:.7;
  color:var(--linen);
  opacity:.85
}

.testimonial-copy {
  font-size:clamp(1.28rem,1.8vw,2.08rem);
  line-height:1.45;
  color:rgba(245,241,233,.88);
  max-width:760px
}

.testimonial-name {
  margin-top:34px;
  font-family:'Mulish';
  font-size:clamp(1rem,1.1vw,1.25rem);
  font-weight:900;
  color:var(--linen)
}

.testimonial-role {
  color:var(--willow);
  font-weight:800;
  margin-top:4px
}

.slider-controls {
  display:flex;
  gap:12px;
  margin-top:34px
}

.slider-btn,.team-btn {
  width:54px;
  height:54px;
  border:0;
  background:var(--linen);
  color:var(--midnight);
  cursor:pointer;
  font-size:26px;
  line-height:1;
  transition:background .28s var(--ease),color .28s var(--ease),transform .28s var(--ease)
}

.slider-btn:hover,.team-btn:hover {
  background:var(--terracotta);
  color:var(--linen);
  transform:translateY(-3px)
}

.team-section {
  background:#f1eee8;
  overflow:hidden
}

.team-carousel {
  max-width:var(--max);
  margin:46px auto 0;
  position:relative
}

.team-track {
  display:flex;
  gap:clamp(20px,2.4vw,34px);
  overflow:hidden;
  scroll-behavior:smooth
}

.team-card {
  flex:0 0 calc((100% - 68px)/3);
  min-width:280px
}

.team-photo {
  aspect-ratio:4/5;
  background:linear-gradient(rgba(0,0,0,.38),rgba(0,0,0,.38)),var(--img) center/cover;
  filter:grayscale(1) contrast(1.3) brightness(.55);
  transition:filter .38s var(--ease),transform .38s var(--ease)
}

.team-card:hover .team-photo {
  filter:grayscale(1) contrast(1.12) brightness(.8);
  transform:scale(.985)
}

.team-name {
  text-align:center;
  margin-top:22px;
  font-size:clamp(1.1rem,1.25vw,1.42rem);
  font-family:'Mulish';
  font-weight:900;
  color:var(--graphite)
}

.team-title {
  text-align:center;
  margin-top:6px;
  font-size:clamp(.96rem,1vw,1.1rem);
  color:rgba(44,43,43,.62)
}

.team-arrows {
  position:absolute;
  left:0;
  right:0;
  top:38%;
  display:flex;
  justify-content:space-between;
  pointer-events:none
}

.team-btn {
  pointer-events:auto;
  border-radius:50%!important
}

.final {
  background:var(--midnight);
  color:var(--linen);
  display:grid;
  grid-template-columns:1fr .55fr;
  gap:60px
}

.final-panel {
  background:rgba(245,241,233,.08);
  border:1px solid rgba(245,241,233,.16);
  padding:clamp(26px,3vw,48px);
  backdrop-filter:blur(18px)
}

.final p,.final-panel p {
  color:rgba(245,241,233,.72);
  margin-top:18px
}

.footer-line {
  grid-column:1/-1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-top:50px;
  border-top:1px solid rgba(245,241,233,.16);
  font-family:'Mulish';
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:clamp(.66rem,.74vw,.82rem);
  color:rgba(245,241,233,.7)
}

.footer-logo {
  height:24px;
  width:auto
}

.page-hero {
  min-height:70vh;
  display:grid;
  align-items:end;
  background:linear-gradient(135deg,var(--linen),#fff 54%,rgba(225,217,201,.72));
  overflow:hidden
}

.page-hero h1 {
  font-size:clamp(4rem,9vw,12rem);
  max-width:1200px
}

.page-hero p {
  max-width:740px;
  margin-top:28px;
  font-size:clamp(1.15rem,1.5vw,1.72rem)
}

.spotlight {
  position:absolute;
  inset:0;
  background:radial-gradient(circle at var(--sx,68%) var(--sy,38%),rgba(160,177,94,.2),transparent 24rem),radial-gradient(circle at 82% 8%,rgba(166,89,39,.12),transparent 30rem);
  pointer-events:none
}

.content-grid {
  display:grid;
  grid-template-columns:.8fr 1fr;
  gap:clamp(40px,7vw,100px)
}

.editorial-panel {
  padding:clamp(26px,4vw,56px);
  border:1px solid rgba(40,50,76,.13);
  background:rgba(255,255,255,.36)
}

.stack {
  display:grid;
  gap:22px
}

.work-wall {
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:1px;
  background:rgba(40,50,76,.12);
  margin-top:48px
}

.work-card {
  grid-column:span 4;
  min-height:390px;
  background:var(--img) center/cover;
  position:relative;
  overflow:hidden;
  color:var(--linen);
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end
}

.work-card.large {
  grid-column:span 8
}

.work-card:before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent,rgba(40,50,76,.9));
  transition:background .35s var(--ease)
}

.work-card>* {
  position:relative;
  z-index:2
}

.work-card h3 {
  color:var(--linen);
  font-size:clamp(1.5rem,2.6vw,3.4rem)
}

.work-card p {
  color:rgba(245,241,233,.76);
  margin-top:12px
}

.filter-row {
  display:flex;
  gap:10px;
  flex-wrap:wrap
}

.filter-chip {
  border:1px solid rgba(40,50,76,.16);
  padding:11px 14px;
  font-family:'Mulish';
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.7rem;
  background:transparent;
  color:var(--midnight)
}

.reveal {
  opacity:0;
  transform:translateY(38px);
  filter:blur(8px);
  transition:opacity .85s var(--ease),transform .85s var(--ease),filter .85s var(--ease)
}

.reveal.in-view {
  opacity:1;
  transform:none;
  filter:blur(0)
}

.reveal[data-delay="1"] {
  transition-delay:.1s
}

.reveal[data-delay="2"] {
  transition-delay:.2s
}

.shimmer {
  position:relative;
  overflow:hidden
}

.shimmer:after {
  content:"";
  position:absolute;
  inset:-80% -50%;
  background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.18),transparent 60%);
  transform:translateX(-40%);
  opacity:0
}

.in-view .shimmer:after,.shimmer.in-view:after {
  animation:shimmer 1.6s .18s var(--ease) 1
}

@keyframes shimmer {
  0% {
    transform:translateX(-55%);
    opacity:0
  }
  22% {
    opacity:1
  }
  100% {
    transform:translateX(55%);
    opacity:0
  }
}

.count {
  font-variant-numeric:tabular-nums
}

@media(max-width:980px) {
  .hero,.intro,.split,.proof,.final,.content-grid,.testimonial-stage {
    grid-template-columns:1fr
  }
  .hero-media-wrap {
    min-height:auto
  }
  .hero-media {
    margin:0 auto
  }
  .cards,.stat-row {
    grid-template-columns:1fr
  }
  .pathways-header {
    display:grid
  }
  .media-grid {
    grid-template-columns:1fr
  }
  .media-tile.featured {
    grid-row:auto
  }
  .team-card {
    flex-basis:82%
  }
  .footer-line {
    display:grid;
    gap:18px
  }
  .work-card,.work-card.large {
    grid-column:span 12
  }
  .menu-foot {
    display:none
  }
}

@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important
  }
  .reveal {
    opacity:1;
    transform:none;
    filter:none
  }
}

/* === Version 2.2 homepage refinements === */ .site-header {
  height:clamp(112px,10vw,160px);
  padding-inline:clamp(24px,3.5vw,58px)
}

.brand-mark {
  width:clamp(320px,32vw,534px);
  height:clamp(100px,9vw,156px)
}

.brand-mark img {
  max-height:clamp(82px,8vw,132px)
}

.menu-logo {
  width:min(420px,54vw);
  height:auto;
  margin-bottom:clamp(34px,4vw,62px)
}

.fullscreen-menu {
  background:radial-gradient(circle at 50% 8%,rgba(245,241,233,.58) 0 8%,rgba(245,241,233,.22) 18%,rgba(245,241,233,.06) 32%,transparent 50%),linear-gradient(145deg,#4a5d72 0%,#5f7488 48%,#f5f1e9 170%)
}

.fullscreen-menu:before {
  transition:clip-path .92s cubic-bezier(.16,1,.3,1);
  background:linear-gradient(145deg,#4a5d72 0%,#5b7084 100%)
}

.fullscreen-menu:after {
  background:radial-gradient(circle at 50% 8%,rgba(245,241,233,.72),rgba(245,241,233,.18) 18rem,transparent 34rem);
  opacity:1;
  mix-blend-mode:soft-light
}

.menu-link {
  transition:opacity .72s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1),letter-spacing .45s var(--ease)
}

.fullscreen-menu.is-open .menu-link {
  transition-delay:calc(.12s + (var(--i) * .055s))
}

.menu-close {
  transition:opacity .42s var(--ease),transform .42s var(--ease)
}

body.menu-open .menu-close {
  transform:rotate(180deg)
}

.hero {
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.88fr);
  gap:clamp(42px,5vw,82px);
  padding-top:calc(clamp(112px,10vw,160px) + 34px);
  align-items:center;
  background:linear-gradient(90deg,rgba(245,241,233,.98),rgba(245,241,233,.94))
}

.stacked-hero-title {
  font-size:clamp(5rem,8.9vw,12.6rem);
  line-height:.82;
  letter-spacing:-.085em;
  text-transform:uppercase
}

.stacked-hero-title .navy {
  color:var(--midnight)
}

.stacked-hero-title .green {
  color:var(--forest)
}

.hero-title-line.indent-small {
  padding-left:clamp(46px,7vw,124px)
}

.hero-copy {
  max-width:690px;
  font-size:clamp(1.04rem,1.28vw,1.45rem);
  margin-top:clamp(22px,3vw,44px)
}

.hero-media-wrap {
  min-height:clamp(700px,76vh,940px)
}

.hero-media {
  width:min(600px,92%);
  aspect-ratio:9/13.15;
  clip-path:polygon(0 0,100% 0,100% 82%,84% 100%,0 100%);
  box-shadow:none;
  position:relative
}

.hero-media:after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(40,50,76,.02),rgba(40,50,76,.36));
  pointer-events:none
}

.hero-media video {
  filter:saturate(.86) contrast(.96)
}

.hero-card {
  left:-6%;
  bottom:3%;
  width:min(520px,84%);
  background:linear-gradient(135deg,rgba(40,50,76,.92),rgba(74,93,114,.68));
  color:var(--linen);
  border-left:8px solid var(--terracotta);
  border-top:1px solid rgba(245,241,233,.2);
  border-right:1px solid rgba(245,241,233,.14);
  border-bottom:1px solid rgba(245,241,233,.14);
  box-shadow:0 30px 90px rgba(40,50,76,.26)
}

.hero-card h2 {
  font-size:clamp(1.28rem,1.8vw,2rem);
  line-height:1.04;
  color:var(--linen);
  letter-spacing:-.04em
}

.hero-card p {
  font-size:clamp(.82rem,.9vw,1rem);
  color:rgba(245,241,233,.72);
  margin-top:18px
}

.mini-kicker {
  font-family:'Mulish';
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:var(--camel);
  font-size:.68rem;
  margin-bottom:18px
}

.pathways:before {
  right:0;
  top:-10%;
  width:clamp(500px,58vw,920px);
  height:clamp(260px,28vw,480px);
  /* background-image:url('Mount_PrimaryLogo-SoftLinen-NoTagline.png'); */
  opacity:.075;
  filter:none
}

.path-card:before {
  display:none
}

.path-card:hover {
  transform:translateY(-6px)
}

.mount-services {
  padding:0;
  display:grid;
  grid-template-columns:1.02fr 1fr;
  min-height:100vh;
  background:var(--stone);
  overflow:hidden
}

.services-photo {
  min-height:100vh;
  background:linear-gradient(rgba(40,50,76,.12),rgba(40,50,76,.18)),url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?q=80&w=1800&auto=format&fit=crop') center/cover;
  clip-path:polygon(0 0,100% 0,82% 100%,0 100%);
  filter:saturate(.78) contrast(.95)
}

.services-copy {
  padding:clamp(80px,8vw,150px) clamp(34px,6vw,96px);
  display:flex;
  flex-direction:column;
  justify-content:center
}

.services-copy h2 {
  font-size:clamp(3.3rem,5.2vw,7.8rem);
  line-height:.88;
  text-transform:uppercase;
  max-width:920px
}

.services-copy p {
  max-width:760px;
  margin-top:clamp(24px,3vw,42px);
  font-size:clamp(1.02rem,1.24vw,1.34rem)
}

.services-index {
  margin-top:clamp(38px,4vw,62px);
  border-top:1px solid rgba(40,50,76,.18)
}

.service-row {
  display:grid;
  grid-template-columns:.32fr 1fr auto;
  gap:clamp(18px,2vw,38px);
  align-items:center;
  padding:clamp(22px,2.4vw,34px) 0;
  border-bottom:1px solid rgba(40,50,76,.18)
}

.service-row span {
  font-family:'Mulish';
  font-size:clamp(.66rem,.74vw,.82rem);
  font-weight:1000;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--forest)
}

.service-row strong {
  font-size:clamp(1.06rem,1.32vw,1.5rem);
  line-height:1.18;
  color:var(--midnight)
}

.service-row em {
  font-style:normal;
  color:var(--terracotta);
  font-size:1.4rem;
  transition:transform .35s var(--ease)
}

.service-row:hover em {
  transform:translateX(9px)
}

.testimonial-band {
  background:#575858
}

.testimonial-heading {
  max-width:var(--max);
  margin:0 auto
}

.testimonial-stage {
  display:block;
  position:relative;
  max-width:var(--max);
  min-height:clamp(560px,62vw,820px);
  margin-top:48px
}

.testimonial-slide {
  grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);
  gap:clamp(46px,7vw,116px);
  align-items:center
}

.testimonial-slide.is-active {
  display:grid;
  animation:testimonialIn .58s cubic-bezier(.16,1,.3,1)
}

@keyframes testimonialIn {
  from {
    opacity:0;
    transform:translateY(24px);
    filter:blur(10px)
  }
  to {
    opacity:1;
    transform:none;
    filter:blur(0)
  }
}

.testimonial-photo {
  order:2;
  aspect-ratio:4/5;
  min-height:clamp(420px,48vw,720px)
}

.testimonial-content {
  order:1
}

.testimonial-copy {
  max-width:760px
}

.testimonial-rule {
  width:88px;
  height:1px;
  background:rgba(245,241,233,.8);
  margin:clamp(28px,3vw,50px) 0
}

.slider-controls {
  position:absolute;
  left:0;
  right:0;
  top:0%;
  transform:translateY(-50%);
  display:flex;
  justify-content:space-between;
  margin:0;
  pointer-events:none
}

.slider-btn {
  pointer-events:auto;
  border-radius:50%!important;
  box-shadow:0 12px 28px rgba(0,0,0,.14)
}

.team-section {
  display:none!important
}

.shimmer:after {
  animation-duration:2.35s;
  animation-timing-function:cubic-bezier(.16,1,.3,1);
  opacity:.55
}

.reveal {
  transition-duration:1.05s
}

.reveal.in-view {
  transition-delay:calc(var(--delay,0) * .11s)
}

@media(max-width:980px) {
  .brand-mark {
    width:clamp(230px,58vw,390px)
  }
  .brand-mark img {
    max-height:clamp(58px,14vw,92px)
  }
  .site-header {
    height:110px
  }
  .hero {
    grid-template-columns:1fr;
    padding-top:150px
  }
  .hero-media-wrap {
    min-height:auto
  }
  .hero-media {
    width:min(520px,100%)
  }
  .hero-card {
    left:0
  }
  .mount-services {
    grid-template-columns:1fr
  }
  .services-photo {
    min-height:55vh;
    clip-path:none
  }
  .testimonial-slide.is-active {
    grid-template-columns:1fr
  }
  .testimonial-photo {
    order:1
  }
  .testimonial-content {
    order:2
  }
  .slider-controls {
    position:relative;
    top:auto;
    transform:none;
    margin-top:28px
  }
  .service-row {
    grid-template-columns:1fr auto
  }
  .service-row span {
    grid-column:1/-1
  }
}

/* version2.2 refinement: Hazel-style circular off-canvas reveal + hero card overlap */ .fullscreen-menu {
  background:transparent !important;
  --reveal-x:calc(100% - clamp(50px,4vw,74px));
  --reveal-y:clamp(48px,4vw,74px);
}

.fullscreen-menu:before {
  inset:0 !important;
  z-index:0 !important;
  background:     radial-gradient(circle at 50% 8%, rgba(245,241,233,.48) 0 9%, rgba(245,241,233,.19) 20%, transparent 46%),     linear-gradient(145deg,#4a5d72 0%,#5f7488 62%,#f5f1e9 190%) !important;
  clip-path:circle(0 at var(--reveal-x) var(--reveal-y)) !important;
  transition:clip-path .96s cubic-bezier(.76,0,.18,1) !important;
  will-change:clip-path;
}

.fullscreen-menu:after {
  z-index:1 !important;
  opacity:0 !important;
  background:radial-gradient(circle at 50% 8%, rgba(245,241,233,.86), rgba(245,241,233,.24) 17rem, transparent 36rem) !important;
  transition:opacity .55s var(--ease) !important;
}

.fullscreen-menu.is-open, .fullscreen-menu.is-closing {
  visibility:visible !important;
}

.fullscreen-menu.is-open {
  pointer-events:auto !important;
}

.fullscreen-menu.is-open:before {
  clip-path:circle(155vmax at var(--reveal-x) var(--reveal-y)) !important;
}

.fullscreen-menu.is-open:after {
  opacity:1 !important;
}

.fullscreen-menu.is-closing {
  pointer-events:none !important;
}

.fullscreen-menu.is-closing:before {
  clip-path:circle(0 at var(--reveal-x) var(--reveal-y)) !important;
  transition-duration:.86s !important;
}

.fullscreen-menu.is-closing:after {
  opacity:0 !important;
}

.fullscreen-menu.is-open .menu-link {
  transition-delay:calc(.38s + (var(--i) * .06s)) !important;
}

.fullscreen-menu.is-closing .menu-link {
  opacity:0 !important;
  transform:translateY(-12px) scale(.99) !important;
  transition-delay:0s !important;
}

.fullscreen-menu.is-closing .menu-shell {
  opacity:0 !important;
  transform:translateY(-10px) scale(.985) !important;
  transition-delay:0s !important;
}

.hero-card {
  bottom:clamp(118px,18vh,210px) !important;
  left:clamp(-44px,-3vw,-18px) !important;
}

@media(max-width:980px) {
  .hero-card {
    bottom:auto !important;
    left:0 !important;
  }
}




.team-section.mount-team {
  background: #f5f1e9;
  color: #2c2b2b;
  padding: clamp(5rem, 8vw, 9rem) 0;
  overflow: hidden;
}

.mount-team .team-intro {
  width: min(86vw, 1320px);
  margin: 0 auto clamp(2.5rem, 5vw, 4.5rem);
  text-align: center;
}

.mount-team .team-intro .section-label {
  justify-content: center;
  color: #40603b;
}

.mount-team .team-intro h2 {
  margin: .65rem auto 0;
  max-width: 980px;
  font-size: clamp(3.6rem, 8vw, 8.25rem);
  line-height: .86;
  letter-spacing: -.075em;
  text-transform: uppercase;
}

.mount-team .team-carousel {
  position: relative;
  width: min(92vw, 1500px);
  margin: 0 auto;
}

.mount-team .team-window {
  overflow: hidden;
  width: 100%;
  padding: 0 clamp(1.75rem, 3vw, 3rem);
}

.mount-team .team-track {
  --team-gap: clamp(1.35rem, 2vw, 2.25rem);

  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - (var(--team-gap) * 2)) / 3);
  gap: var(--team-gap);
  transform: translate3d(0, 0, 0);
  transition: transform 760ms cubic-bezier(.19, 1, .22, 1);
  will-change: transform;
}

.mount-team .team-card {
  min-width: 0;
  text-align: center;
}

.mount-team .team-photo {
  aspect-ratio: 4 / 5;
  background-image: var(--img);
  background-size: cover;
  background-position: center;
  filter: grayscale(1) contrast(1.35) brightness(.58);
  transform: translateZ(0);
  position: relative;
  overflow: hidden;
}

.mount-team .team-photo::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.46));
  mix-blend-mode: multiply;
  pointer-events: none;
}

.mount-team .team-name {
  margin-top: 1.45rem;
  font-family: 'Mulish', sans-serif;
  font-size: clamp(1.05rem, 1.25vw, 1.35rem);
  font-weight: 800;
  letter-spacing: -.02em;
  color: #2c2b2b;
}

.mount-team .team-title {
  margin-top: .25rem;
  font-size: clamp(.92rem, 1vw, 1.05rem);
  color: rgba(44,43,43,.62);
}

.mount-team .team-arrows {
  position: absolute;
  inset: 36% 0 auto;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
  z-index: 5;
}

.mount-team .team-btn {
  width: clamp(3.2rem, 4.25vw, 4.2rem);
  height: clamp(3.2rem, 4.25vw, 4.2rem);
  border: 0;
  border-radius: 999px;
  background: rgba(245,241,233,.94);
  color: #2c2b2b;
  font-size: clamp(1.8rem, 2.5vw, 2.4rem);
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 18px 42px rgba(40,50,76,.16);
  pointer-events: auto;
  transition: transform 260ms ease, background-color 260ms ease, color 260ms ease;
}

.mount-team .team-btn:hover {
  transform: scale(1.06);
  background: #a65927;
  color: #f5f1e9;
}

.mount-team .collective-copy {
  width: min(86vw, 1120px);
  margin: clamp(4rem, 6vw, 6.5rem) auto 0;
  display: grid;
  grid-template-columns: .72fr 1fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: start;
  border-top: 1px solid rgba(44,43,43,.16);
  padding-top: clamp(2rem, 4vw, 3.5rem);
}

.mount-team .collective-copy h3 {
  margin: 0;
  font-size: clamp(2.25rem, 5vw, 5.75rem);
  line-height: .9;
  letter-spacing: -.065em;
  text-transform: uppercase;
  color: #28324c;
}

.mount-team .collective-copy p {
  margin: 0;
  font-size: clamp(1.1rem, 1.55vw, 1.55rem);
  line-height: 1.45;
  color: rgba(44,43,43,.74);
}

.team-section.mount-team.reveal,
.team-section.mount-team .reveal {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
}

@media (max-width: 900px) {
  .mount-team .team-track {
    grid-auto-columns: calc((100% - var(--team-gap)) / 2);
  }

  .mount-team .collective-copy {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .mount-team .team-track {
    grid-auto-columns: 100%;
  }

  .mount-team .team-window {
    padding-inline: 1.25rem;
  }
}

/* === Static fullscreen menu spotlight: no mouse follow === */
.fullscreen-menu {
  --mx: 50% !important;
  --my: 8% !important;
}

.fullscreen-menu:before {
  background:
    radial-gradient(circle at 50% 8%, rgba(245,241,233,.48) 0 9%, rgba(245,241,233,.19) 20%, transparent 46%),
    linear-gradient(145deg,#4a5d72 0%,#5f7488 62%,#f5f1e9 190%) !important;
}

.fullscreen-menu:after {
  background: radial-gradient(circle at 50% 8%, rgba(245,241,233,.86), rgba(245,241,233,.24) 17rem, transparent 36rem) !important;
}
