:root {
  --electric-blue: #2667ff;
  --violet: #7357ff;
  --bright-green: #72dc71;
  --lime: #caff70;
  --coral: #ff765f;
  --navy: #17283d;
  --sky: #e9f5ff;
}

.roles-section {
  background: linear-gradient(180deg,#fff 0%,#f5f9ff 100%);
}
.roles-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 18px;
}
.role-card {
  min-height: 335px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  border-radius: 18px;
  color: #fff;
  overflow: hidden;
  position: relative;
  box-shadow: 0 18px 42px rgba(23,40,61,.16);
  transition: transform .22s ease,box-shadow .22s ease;
}
.role-card:hover { color:#fff;transform:translateY(-7px);box-shadow:0 26px 55px rgba(23,40,61,.22); }
.role-card:after { content:'↗';position:absolute;right:24px;top:16px;font-size:72px;line-height:1;opacity:.12; }
.role-card span { font-size:12px;letter-spacing:.14em;opacity:.8; }
.role-card h3 { margin-top:58px;font-size:34px; }
.role-teacher h3 { font-size:30px; }
.role-card p { max-width:320px;font-size:14px; }
.role-card b { margin-top:auto;font-size:13px; }
.role-mentor { background:linear-gradient(145deg,#175cc6,#3486db); }
.role-speaker { background:linear-gradient(145deg,#6747eb,#9b5cff); }
.role-teacher { background:linear-gradient(145deg,#15855b,#62c55e); }

.teaching-profile { display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start; }
.teaching-profile>div>p:not(.eyebrow) { color:var(--muted); }
.institution-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:14px; }
.institution-grid article { padding:24px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 12px 28px rgba(29,60,83,.07); }
.institution-grid strong { font-size:15px; }
.institution-grid p { color:var(--muted);font-size:13px;margin:10px 0 0; }

.brief input[type="text"],
.brief input[type="email"],
.brief input[type="tel"] {
  width:100%;border:1px solid #c8d2d5;border-radius:5px;padding:11px 12px;background:#fff;color:var(--ink);font-size:13px;line-height:1.5;
}
.brief .trap { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important; }
.brief .consent { display:flex;gap:10px;align-items:flex-start;font-weight:400;line-height:1.45;margin-top:16px; }
.brief .consent input { width:18px;height:18px;flex:0 0 auto;margin:2px 0 0;accent-color:var(--electric-blue); }
.brief .consent a { color:var(--electric-blue);text-decoration:underline; }
.brief .form-legal { margin:7px 0 0 28px;color:var(--muted);font-size:11px;line-height:1.5; }
.brief button[disabled] { opacity:.65;cursor:wait;transform:none; }
#brief-status { padding:12px 14px;border-left:4px solid var(--electric-blue);background:var(--sky);border-radius:0 6px 6px 0; }

.cookie-banner {
  position:fixed;
  z-index:100;
  left:18px;
  right:18px;
  bottom:18px;
  max-width:1180px;
  margin:auto;
  padding:20px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  color:#fff;
  background:linear-gradient(125deg,#17283d,#244b68);
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  box-shadow:0 24px 70px rgba(13,34,53,.38);
}
.cookie-banner>div:first-child { display:flex;align-items:flex-start;gap:16px;max-width:700px; }
.cookie-mark { display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;color:#15392a;background:var(--lime); }
.cookie-banner h2 { margin:0 0 5px;font-size:20px;letter-spacing:-.02em; }
.cookie-banner p { margin:0;color:#dce9f2;font-size:12px;line-height:1.55; }
.cookie-banner p a { color:var(--lime);text-decoration:underline; }
.cookie-actions { display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:0; }
.cookie-actions .button { min-height:42px;padding:10px 15px;gap:8px;white-space:nowrap; }
.cookie-banner .button.secondary { color:#fff;border-color:#ffffff66; }
.cookie-banner .button.secondary:hover { background:#ffffff14; }
.cookie-dialog { width:min(600px,calc(100% - 36px));padding:0;border:0;border-radius:18px;color:var(--ink);box-shadow:0 28px 90px rgba(13,34,53,.4); }
.cookie-dialog::backdrop { background:rgba(12,29,43,.58);backdrop-filter:blur(4px); }
.cookie-dialog form { padding:28px; }
.cookie-dialog-head { display:flex;justify-content:space-between;gap:25px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:18px; }
.cookie-dialog-head .eyebrow { color:var(--electric-blue);margin-bottom:8px; }
.cookie-dialog-head h2 { font-size:30px;margin:0; }
.cookie-close { border:0;background:var(--paper);border-radius:50%;width:38px;height:38px;font-size:26px;line-height:1;cursor:pointer;color:var(--ink); }
.cookie-option { display:flex;justify-content:space-between;gap:20px;align-items:center;padding:19px 0;margin:0;border-bottom:1px solid var(--line);font-size:14px; }
.cookie-option span { display:flex;flex-direction:column; }
.cookie-option small { color:var(--muted);font-weight:400;margin-top:4px;line-height:1.45; }
.cookie-option input { width:20px;height:20px;flex:0 0 auto;accent-color:var(--electric-blue); }
.cookie-dialog .small { color:var(--muted);margin-top:18px; }
.cookie-link { padding:0;border:0;border-bottom:1px solid #78908a;background:none;color:inherit;font:inherit;cursor:pointer; }
.policy-notice { padding:20px 22px;background:var(--sky);border-left:5px solid var(--electric-blue);border-radius:0 8px 8px 0; }
.policy h2 { margin-top:45px;font-size:28px; }
.policy h3 { margin-top:28px;font-size:20px; }
.policy ul { padding-left:22px; }
.policy li { margin-bottom:10px; }

body {
  background:
    radial-gradient(circle at 92% 12%, rgba(38,103,255,.08), transparent 24rem),
    radial-gradient(circle at 5% 38%, rgba(114,220,113,.08), transparent 25rem),
    #fff;
}

.header {
  border-bottom-color: rgba(31,57,83,.1);
  box-shadow: 0 8px 28px rgba(25,52,75,.07);
}

.brand { color: var(--navy); }
.brand span { color: var(--electric-blue); }
.nav-wrap nav a { position: relative; }
.nav-wrap nav a:after {
  content: '';
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -8px;
  height: 2px;
  background: linear-gradient(90deg,var(--electric-blue),var(--bright-green));
  transition: right .2s ease;
}
.nav-wrap nav a:hover:after { right: 0; }
.nav-contact {
  border: 0;
  padding: 11px 16px;
  color: #fff;
  background: var(--electric-blue);
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(38,103,255,.22);
}
.nav-contact:hover { color: #fff; background: #1455eb; }

.hero {
  position: relative;
  background:
    radial-gradient(circle at 72% 22%, rgba(202,255,112,.34), transparent 25%),
    radial-gradient(circle at 18% 105%, rgba(115,87,255,.55), transparent 38%),
    linear-gradient(118deg,#215ea7 0%,#3879ba 34%,#387f82 67%,#67c45f 100%);
}
.hero:before,
.hero:after {
  content: '';
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}
.hero:before {
  width: 190px;
  height: 190px;
  background: rgba(255,118,95,.18);
  left: -70px;
  top: 50px;
  filter: blur(2px);
}
.hero:after {
  width: 75px;
  height: 75px;
  background: var(--lime);
  right: 5%;
  top: 62px;
  opacity: .28;
}
.hero-copy .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 999px;
  background: rgba(255,255,255,.1);
}
.hero-copy .eyebrow:before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--lime);
  box-shadow: 0 0 0 5px rgba(202,255,112,.15);
}
.hero h1 { text-shadow: 0 8px 30px rgba(15,45,74,.18); }
.hero-statement { font-size: 20px; }
.hero .button:first-child {
  background: var(--lime);
  box-shadow: 0 12px 32px rgba(37,73,52,.25);
}
.hero .button:first-child:hover { background: #dcff9f; }
.hero .button.secondary { background: rgba(255,255,255,.08); backdrop-filter: blur(8px); }
.photo-caption {
  border-left: 5px solid var(--lime);
  box-shadow: 0 18px 42px rgba(20,48,64,.24);
}

.proof-strip {
  width: min(1220px,calc(100% - 40px));
  margin-top: -1px;
  padding: 24px 30px;
  border: 0;
  border-radius: 0 0 18px 18px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(28,53,77,.1);
  position: relative;
  z-index: 2;
}

@media (max-width: 900px) {
  .roles-grid { grid-template-columns:1fr; }
  .role-card { min-height:240px; }
  .role-card h3 { margin-top:34px; }
  .teaching-profile { grid-template-columns:1fr;gap:35px; }
  .cookie-banner { align-items:stretch;flex-direction:column;gap:16px; }
  .cookie-actions { justify-content:flex-start; }
}

@media (min-width: 901px) and (max-width: 1050px) {
  .role-card h3 { font-size:30px; }
  .role-teacher h3 { font-size:26px; }
}

@media (max-width: 560px) {
  .role-card { min-height:230px;padding:26px; }
  .role-card h3 { font-size:29px; }
  .institution-grid { grid-template-columns:1fr; }
  .cookie-banner { left:10px;right:10px;bottom:10px;padding:17px;border-radius:13px; }
  .cookie-banner>div:first-child { gap:11px; }
  .cookie-mark { flex-basis:30px;height:30px; }
  .cookie-actions { display:grid;grid-template-columns:1fr 1fr; }
  .cookie-actions .button { width:100%; }
  #cookie-accept { grid-column:1/-1;grid-row:1; }
  .cookie-dialog form { padding:22px; }
}
.proof-strip strong { color: var(--electric-blue); }
.proof-strip div:nth-child(2) strong { color: var(--violet); }
.proof-strip div:nth-child(3) strong { color: #188b55; }

.section-head .eyebrow { color: var(--electric-blue); }
.section-head h2:after {
  content: '';
  display: block;
  width: 64px;
  height: 5px;
  margin-top: 20px;
  border-radius: 5px;
  background: linear-gradient(90deg,var(--electric-blue),var(--bright-green));
}
.split h2:after { margin-top: 14px; }

.card,
.case-card,
.review-card,
.credentials,
.brief {
  box-shadow: 0 14px 35px rgba(29,60,83,.08);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.card:hover,
.case-card:hover,
.review-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 22px 48px rgba(29,60,83,.14);
}
.card { position: relative; overflow: hidden; }
.card:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 5px;
  background: var(--electric-blue);
}
.card:nth-child(2):before { background: var(--violet); }
.card:nth-child(3):before { background: var(--bright-green); }
.card .number { color: var(--electric-blue); }

.tinted {
  background:
    radial-gradient(circle at 85% 15%,rgba(38,103,255,.11),transparent 28rem),
    radial-gradient(circle at 10% 80%,rgba(114,220,113,.13),transparent 25rem),
    linear-gradient(135deg,#f5f9ff,#effcf5);
}
.service-row { position: relative; }
.service-row:before {
  content: '';
  position: absolute;
  inset: 4px 0;
  border-radius: 9px;
  background: linear-gradient(90deg,rgba(38,103,255,.08),rgba(114,220,113,.12));
  opacity: 0;
  transition: opacity .2s ease;
}
.service-row:hover:before { opacity: 1; }
.service-row > * { position: relative; z-index: 1; }
.service-row .number { color: var(--electric-blue); font-weight: 700; }
.service-row .arrow { color: var(--bright-green); }

.case-card:nth-child(1) { background: linear-gradient(145deg,#e7f1ff,#dffaf0); }
.case-card:nth-child(2) { background: linear-gradient(145deg,#f1ecff,#eaf3ff); }
.case-card:nth-child(3) { background: linear-gradient(145deg,#edffdf,#e2f8ee); }
.case-card:nth-child(4) { background: linear-gradient(145deg,#fff0eb,#f0ecff); }
.case-card strong { color: var(--electric-blue); }

.process-section {
  position: relative;
  background:
    radial-gradient(circle at 12% 25%,rgba(38,103,255,.35),transparent 24rem),
    radial-gradient(circle at 90% 80%,rgba(114,220,113,.2),transparent 25rem),
    linear-gradient(135deg,#17283d,#213f55);
}
.process-section .section-head .eyebrow { color: var(--lime); }
.process-section .section-head h2:after { background: linear-gradient(90deg,var(--lime),var(--coral)); }
.process-section .card:hover { border-color: rgba(202,255,112,.75); }

.review-card { position: relative; overflow: hidden; border: 0; }
.review-card:before {
  content: '“';
  position: absolute;
  right: 18px;
  top: -24px;
  font-size: 120px;
  line-height: 1;
  color: rgba(38,103,255,.1);
  font-family: Georgia,serif;
}
.review-card:nth-child(3n+2) { background: linear-gradient(145deg,#fff,#f2efff); }
.review-card:nth-child(3n) { background: linear-gradient(145deg,#fff,#ecfaef); }
.review-card figcaption strong { color: var(--electric-blue); }

.page-hero {
  width: min(1220px,calc(100% - 40px));
  margin-top: 26px;
  padding: 48px 54px 52px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 91% 18%,rgba(202,255,112,.7),transparent 15rem),
    linear-gradient(125deg,#e4f0ff,#e8fff0 70%);
  overflow: hidden;
  position: relative;
}
.page-hero:after {
  content: '';
  position: absolute;
  width: 210px;
  height: 210px;
  border: 34px solid rgba(115,87,255,.12);
  border-radius: 50%;
  right: -60px;
  bottom: -120px;
}
.page-hero > * { position: relative; z-index: 1; }
.page-hero .eyebrow { color: var(--electric-blue); }

.finder-section {
  padding-top: 70px;
  background: linear-gradient(125deg,#1c4f91,#2f7788 60%,#53b95b);
  color: #fff;
}
.finder-shell { display: grid; grid-template-columns: .8fr 1.2fr; gap: 56px; align-items: start; }
.finder-copy { position: sticky; top: 130px; }
.finder-copy .eyebrow { color: var(--lime); }
.finder-copy p:not(.eyebrow) { color: rgba(255,255,255,.8); }
.finder-options { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; }
.finder-options button {
  min-height: 92px;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 12px;
  background: rgba(255,255,255,.1);
  color: #fff;
  text-align: left;
  font-weight: 600;
  cursor: pointer;
  transition: background .2s, transform .2s, border-color .2s;
}
.finder-options button:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.18);
  border-color: var(--lime);
}
.finder-options button.active {
  transform: translateY(-3px);
  color: var(--navy);
  background: var(--lime);
  border-color: var(--lime);
}
.finder-result {
  grid-column: 2;
  padding: 26px;
  border-radius: 14px;
  color: var(--navy);
  background: #fff;
  box-shadow: 0 20px 50px rgba(18,38,57,.25);
}
.finder-result > span { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; color: var(--electric-blue); font-weight: 700; }
.finder-result h3 { margin-top: 8px; }
.finder-result p { color: var(--muted); }

.topics-grid { border: 0; gap: 14px; background: transparent; }
.topic-card { border-radius: 12px; border: 1px solid rgba(38,103,255,.12); box-shadow: 0 12px 30px rgba(29,60,83,.07); }
.topic-card:nth-child(3n+2) { background: #f0edff; }
.topic-card:nth-child(3n) { background: #e9f9ed; }
.topic-card .number { color: var(--electric-blue); font-weight: 700; }
.evidence-list article { position: relative; }
.evidence-list article:before { content: ''; display: inline-block; width: 9px; height: 9px; background: var(--bright-green); border-radius: 50%; margin-right: 10px; box-shadow: 0 0 0 5px rgba(114,220,113,.16); }

.speaker-numbers {
  color: #fff;
  background: linear-gradient(105deg,var(--electric-blue),var(--violet) 55%,#25976a);
}
.speaker-numbers .wrap {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 1px;
  padding-block: 34px;
}
.speaker-numbers .wrap > div {
  padding: 12px 28px;
  border-left: 1px solid rgba(255,255,255,.2);
}
.speaker-numbers .wrap > div:first-child { border-left: 0; }
.speaker-numbers strong { display: block; font-size: clamp(28px,4vw,48px); line-height: 1; color: var(--lime); }
.speaker-numbers span { display: block; margin-top: 9px; color: rgba(255,255,255,.82); }
.speaker-position { display: grid; grid-template-columns: 1.4fr .6fr; gap: 56px; align-items: center; }
.speaker-position > div > p { max-width: 760px; }
.speaker-position aside { padding: 30px; border-radius: 16px; background: linear-gradient(145deg,#e7f1ff,#eaffdf); box-shadow: 0 18px 40px rgba(29,60,83,.11); }
.speaker-position aside > span { color: var(--electric-blue); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .11em; }
.speaker-position ol { margin: 20px 0 0; padding-left: 24px; }
.speaker-position li { margin-top: 12px; font-weight: 600; }

.media-kit {
  background:
    radial-gradient(circle at 90% 20%,rgba(202,255,112,.25),transparent 22rem),
    linear-gradient(135deg,#182b41,#244f69);
  color: #fff;
}
.media-kit .section-head .eyebrow { color: var(--lime); }
.media-kit .section-head h2:after { background: linear-gradient(90deg,var(--lime),var(--coral)); }
.media-kit .section-head p:not(.eyebrow) { color: rgba(255,255,255,.72); }
.resource-grid,.publication-grid,.path-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.resource-card,.publication-card,.path-grid article {
  min-height: 220px;
  padding: 28px;
  border-radius: 14px;
  background: #fff;
  color: var(--navy);
  box-shadow: 0 16px 38px rgba(10,28,43,.15);
  transition: transform .22s ease,box-shadow .22s ease;
}
.resource-card:hover,.publication-card:hover { transform: translateY(-5px); box-shadow: 0 24px 45px rgba(10,28,43,.22); }
.resource-card > span,.publication-card > span { color: var(--electric-blue); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; }
.resource-card h3,.publication-card h3 { margin: 14px 0 9px; }
.resource-card p,.publication-card p,.path-grid p { color: var(--muted); }
.resource-card b,.publication-card b { display: block; margin-top: 22px; color: var(--electric-blue); font-size: 13px; }
.media-kit .actions { margin-top: 30px; align-items: center; }
.media-kit .text-link { color: #fff; }

.path-section { background: linear-gradient(125deg,#f0edff,#e7f6ff 55%,#ebfae7); }
.path-grid { grid-template-columns: repeat(4,1fr); }
.path-grid article { min-height: 190px; border-top: 5px solid var(--electric-blue); }
.path-grid article:nth-child(2) { border-color: var(--violet); }
.path-grid article:nth-child(3) { border-color: var(--coral); }
.path-grid article:nth-child(4) { border-color: var(--bright-green); }
.path-grid strong { font-size: 19px; }
.publication-card:nth-child(3n+2) { background: linear-gradient(145deg,#fff,#f1edff); }
.publication-card:nth-child(3n) { background: linear-gradient(145deg,#fff,#eaf8ed); }
.publication-more { margin-top: 28px; }

.cta-band {
  margin-block: 36px 92px;
  padding: 44px 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 35px;
  color: #fff;
  border-radius: 18px;
  background:
    radial-gradient(circle at 78% 10%,rgba(202,255,112,.32),transparent 14rem),
    linear-gradient(120deg,var(--electric-blue),var(--violet));
  box-shadow: 0 22px 50px rgba(55,65,170,.24);
}
.cta-band h2 { font-size: clamp(28px,3vw,40px); margin-bottom: 8px; }
.cta-band p { max-width: 650px; margin: 0; color: rgba(255,255,255,.82); }
.cta-band .eyebrow { color: var(--lime); margin-bottom: 10px; }
.cta-band .button { flex: 0 0 auto; background: var(--lime); }

.contact {
  color: var(--navy);
  background:
    radial-gradient(circle at 18% 30%,rgba(38,103,255,.16),transparent 24rem),
    radial-gradient(circle at 88% 80%,rgba(115,87,255,.14),transparent 22rem),
    linear-gradient(125deg,#dff4ff,#dcf8e0);
}
.contact .brief { border-top: 6px solid var(--electric-blue); }
.contact-links a { font-weight: 600; color: var(--electric-blue); }
.button { box-shadow: 0 10px 24px rgba(31,74,71,.14); }

.scroll-progress {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  height: 4px;
  z-index: 100;
  pointer-events: none;
}
.scroll-progress span {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg,var(--electric-blue),var(--violet),var(--bright-green));
}
.sticky-cta {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 30;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 9px 10px 9px 17px;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 999px;
  background: rgba(23,40,61,.94);
  color: #fff;
  box-shadow: 0 14px 40px rgba(12,28,42,.28);
  transform: translateY(120px);
  opacity: 0;
  transition: transform .3s ease,opacity .3s ease;
  backdrop-filter: blur(12px);
}
.sticky-cta.visible { transform: translateY(0); opacity: 1; }
.sticky-cta span { font-size: 12px; }
.sticky-cta a { padding: 10px 14px; border-radius: 999px; background: var(--lime); color: var(--navy); font-size: 12px; font-weight: 700; }

.motion-ready .reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .55s ease,transform .55s ease;
}
.motion-ready .reveal.in-view { opacity: 1; transform: translateY(0); }

@media (max-width: 1000px) {
  .nav-wrap nav { gap: 13px; }
  .nav-wrap nav a { font-size: 11px; }
  .page-hero { padding-inline: 38px; }
  .finder-shell { gap: 35px; }
  .resource-grid,.publication-grid { grid-template-columns: repeat(2,1fr); }
  .path-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 760px) {
  .header { box-shadow: 0 5px 20px rgba(25,52,75,.08); }
  .hero-statement { font-size: 18px; }
  .hero:after { right: -20px; top: 35%; }
  .proof-strip { width: calc(100% - 28px); padding: 22px 20px; border-radius: 0 0 14px 14px; }
  .proof-strip strong { font-size: 18px; }
  .proof-strip span { line-height: 1.35; }
  .page-hero { width: calc(100% - 24px); margin-top: 12px; padding: 32px 24px 38px; border-radius: 15px; }
  .finder-section { padding-top: 56px; }
  .finder-shell { grid-template-columns: 1fr; gap: 26px; }
  .finder-copy { position: static; }
  .finder-options { grid-template-columns: 1fr; }
  .finder-options button { min-height: 68px; }
  .finder-result { grid-column: 1; }
  .speaker-position { grid-template-columns: 1fr; gap: 28px; }
  .speaker-numbers .wrap { grid-template-columns: repeat(2,1fr); }
  .speaker-numbers .wrap > div { padding: 14px 18px; border-left: 0; }
  .resource-grid,.publication-grid,.path-grid { grid-template-columns: 1fr; }
  .resource-card,.publication-card,.path-grid article { min-height: 0; }
  .cta-band { margin-block: 24px 60px; padding: 32px 25px; flex-direction: column; align-items: flex-start; }
  .cta-band .button { width: 100%; }
  .sticky-cta { left: 12px; right: 12px; bottom: 10px; justify-content: space-between; }
  .sticky-cta span { max-width: 150px; line-height: 1.3; }
}

@media (prefers-reduced-motion: reduce) {
  .motion-ready .reveal { opacity: 1; transform: none; }
  .sticky-cta { transition: none; }
}

@media print {
  .sticky-cta,.scroll-progress,.finder-section,.cta-band { display: none!important; }
}

/* Art direction: «Пробить потолок». A hard horizontal limit is broken by the
   portrait and the upward trajectory; typography behaves like a poster. */
:root {
  --electric-blue:#1248e8;
  --violet:#6b39ff;
  --bright-green:#b8ef39;
  --lime:#d7ff3f;
  --coral:#ff5a3d;
  --navy:#132238;
  --sky:#eaf0ff;
  --paper:#f3efe6;
}
body {
  background:#fffdf8;
  background-image:linear-gradient(rgba(19,34,56,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(19,34,56,.025) 1px,transparent 1px);
  background-size:28px 28px;
}
h1,h2,h3 { font-weight:750; }
.header { box-shadow:none;border-bottom:2px solid var(--navy);background:#fffdf5f2; }
.nav-contact,.button { border-radius:0;box-shadow:none;text-transform:uppercase;letter-spacing:.055em; }
.nav-contact { background:var(--lime);color:var(--navy);border:2px solid var(--navy); }
.nav-contact:hover { background:var(--coral);color:#fff; }

.hero {
  min-height:690px;
  background:var(--electric-blue);
  isolation:isolate;
}
.hero:before {
  width:auto;height:8px;left:0;right:0;top:57%;border-radius:0;
  background:var(--lime);filter:none;opacity:1;transform:rotate(-1.6deg);z-index:0;
}
.hero:after {
  content:'↗';width:auto;height:auto;right:3.5%;top:3%;border-radius:0;
  background:none;color:var(--lime);font:800 clamp(110px,18vw,260px)/1 Arial,sans-serif;
  opacity:.13;z-index:0;
}
.hero-inner { min-height:690px; }
.hero-copy { padding:76px 0 64px; }
.hero-copy .eyebrow { padding:0;border:0;border-radius:0;background:none;color:var(--lime);font-size:12px; }
.hero-copy .eyebrow:before { width:42px;height:5px;border-radius:0;background:var(--lime);box-shadow:none; }
.hero h1 { max-width:720px;font-size:clamp(48px,6vw,86px);line-height:.9;letter-spacing:-.075em;text-transform:uppercase;text-shadow:none; }
.hero h1 span { display:inline-block;margin-top:10px;color:var(--lime);font-size:1.08em; }
.hero-statement { position:relative;z-index:2;max-width:600px;padding:8px 12px 8px 0;background:var(--electric-blue);font-size:20px;line-height:1.45; }
.hero-audience { border-left:6px solid var(--coral);padding-left:16px; }
.hero .button:first-child { background:var(--lime);border:2px solid var(--navy);box-shadow:8px 8px 0 var(--navy); }
.hero .button:first-child:hover { background:#fff;transform:translate(4px,4px);box-shadow:4px 4px 0 var(--navy); }
.hero .button.secondary { border:2px solid #fff;background:transparent;backdrop-filter:none; }
.photo-orbit { display:none; }
.hero-photo { align-items:flex-end; }
.hero-photo>img { width:500px;height:650px;filter:drop-shadow(16px 12px 0 rgba(19,34,56,.28)); }
.photo-caption { left:5px;right:-22px;bottom:34px;border:2px solid var(--navy);border-left:12px solid var(--coral);border-radius:0;box-shadow:10px 10px 0 var(--navy);transform:rotate(-1deg); }

.proof-strip { width:min(1220px,calc(100% - 40px));padding:0;gap:0;border:2px solid var(--navy);border-top:0;border-radius:0;box-shadow:none;background:var(--lime); }
.proof-strip div,.proof-strip>a { min-height:104px;padding:22px 24px;justify-content:center;border-right:2px solid var(--navy); }
.proof-strip>a { display:flex;align-items:center;border-right:0;font-weight:750;text-transform:uppercase; }
.proof-strip strong,.proof-strip div:nth-child(2) strong,.proof-strip div:nth-child(3) strong { color:var(--navy); }
.proof-strip span,.proof-strip a { color:var(--navy); }

.section-head { max-width:940px; }
.section-head h2 { font-size:clamp(42px,6vw,76px);line-height:.95;text-transform:uppercase; }
.section-head h2:after { width:120px;height:8px;border-radius:0;background:var(--coral); }
.section-head .eyebrow { color:var(--electric-blue); }
.card,.case-card,.review-card,.resource-card,.publication-card,.path-grid article,.institution-grid article,.speaker-callout {
  border:2px solid var(--navy);border-radius:0;box-shadow:none;
}
.card { background:#fffdf8; }
.card .number { margin-bottom:54px;color:var(--electric-blue);font-size:16px;font-weight:800; }
.case-card { background:var(--lime); }
.case-card:hover { background:#fff;transform:translate(-4px,-4px);box-shadow:8px 8px 0 var(--navy); }
.service-row { border-color:var(--navy); }
.service-row:first-child { border-top:2px solid var(--navy); }
.service-row { border-bottom:2px solid var(--navy); }
.service-row:hover { padding-left:20px;background:var(--lime);color:var(--navy); }
.role-card { border:2px solid var(--navy);border-radius:0;box-shadow:9px 9px 0 var(--navy); }
.role-card:hover { box-shadow:4px 4px 0 var(--navy);transform:translate(5px,5px); }
.role-mentor { background:var(--electric-blue); }
.role-speaker { background:var(--coral); }
.role-teacher { background:#198b65; }
.role-card:after { font-size:130px;right:-8px;top:-10px;opacity:.16; }
.role-card h3 { font-size:clamp(34px,3.5vw,54px);line-height:.92;text-transform:uppercase; }
.tinted,.roles-section { background:#eee8dc; }
.process-section { background:var(--navy);border-block:8px solid var(--lime); }
.process-section .section-head .eyebrow { color:var(--lime); }
.process-section .section-head h2:after { background:var(--lime); }
.process-section .card { border-color:#fff; }
.finder-section { background:var(--coral);color:var(--navy); }
.finder-section .eyebrow { color:var(--navy); }
.finder-options button,.finder-result { border-radius:0;border:2px solid var(--navy);box-shadow:none; }
.finder-options button:hover,.finder-options button.active { background:var(--lime);color:var(--navy);transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--navy); }
.cta-band { border:2px solid var(--navy);border-radius:0;background:var(--electric-blue);box-shadow:10px 10px 0 var(--navy); }

.contact { background:var(--navy);color:#fff;border-top:10px solid var(--lime); }
.contact .eyebrow { color:var(--lime); }
.contact-links a { color:var(--lime); }
.contact .brief { color:var(--navy);border:2px solid var(--navy);border-top:12px solid var(--coral);border-radius:0;box-shadow:12px 12px 0 var(--lime); }
.brief input[type="text"],.brief input[type="email"],.brief input[type="tel"],.brief select,.brief textarea {
  border:2px solid var(--navy);border-radius:0;background:#fffdf8;min-height:50px;
}
.brief input:focus,.brief select:focus,.brief textarea:focus { outline:4px solid var(--lime);outline-offset:0;border-color:var(--navy); }
.brief .consent { padding:14px;border:2px solid var(--navy);background:#f3efe6; }
.brief .consent input { accent-color:var(--electric-blue); }
.brief .form-legal { margin-left:0; }
.brief button[type="submit"] { width:100%;background:var(--lime);border:2px solid var(--navy);font-size:13px; }
.page-hero { border-bottom:8px solid var(--lime); }
.page-hero h1 { font-size:clamp(48px,7vw,92px);line-height:.92;text-transform:uppercase; }
.cookie-banner,.cookie-dialog { border:2px solid var(--navy);border-radius:0; }
.sticky-cta { border-radius:0;border:2px solid var(--lime); }
.sticky-cta a { border-radius:0; }

@media(max-width:760px) {
  .hero { min-height:0; }
  .hero-inner { min-height:0; }
  .hero-copy { padding-top:42px; }
  .hero h1 { font-size:clamp(44px,13vw,66px); }
  .hero:before { top:51%;height:6px; }
  .hero:after { top:30%;right:-5%;font-size:145px; }
  .hero-photo>img { height:410px;width:340px; }
  .photo-caption { right:8px;left:8px;box-shadow:6px 6px 0 var(--navy); }
  .proof-strip { grid-template-columns:1fr 1fr; }
  .proof-strip div,.proof-strip>a { min-height:98px;padding:16px;border-bottom:2px solid var(--navy); }
  .proof-strip div:nth-child(2) { border-right:0; }
  .proof-strip>a { border-bottom:0; }
  .section-head h2 { font-size:clamp(38px,11vw,56px); }
  .role-card { box-shadow:6px 6px 0 var(--navy); }
  .contact .brief { box-shadow:7px 7px 0 var(--lime); }
}

/* Speaker portfolio and club formats */
.club-section { color:#f2ede7;background:#111315;border-block:1px solid #3c3834; }
.club-section .section-head h2 { color:#f5f0ea; }
.club-section .section-head>p:last-child,.club-formats p { color:#aaa39c; }
.club-formats { display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:44px;background:#3c3834;border:1px solid #3c3834; }
.club-formats article { min-height:280px;padding:30px 26px;background:#171819; }
.club-formats article>span { color:#bda58f;font-size:13px;letter-spacing:.18em; }
.club-formats h3 { margin:50px 0 18px;color:#f5f0ea;font-size:24px;font-weight:450; }
.club-list { margin:34px 0 0;padding-top:26px;border-top:1px solid #3c3834;color:#c8c0b8; }
.platform-groups { display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:40px 0; }
.platform-groups article { padding:28px;border:1px solid #c8bfb5;background:#f3eee8; }
.platform-groups h3 { margin:0 0 14px;font-size:25px;font-weight:500; }
.platform-groups p { margin:0;color:#625d58; }
.appearance-history { border-top:1px solid #bda58f; }
.appearance-history details { border-bottom:1px solid #c8bfb5; }
.appearance-history summary { display:flex;justify-content:space-between;gap:20px;padding:24px 0;cursor:pointer;font-size:20px;font-weight:550; }
.appearance-history summary::-webkit-details-marker { display:none; }
.appearance-history details p { max-width:980px;margin:0 0 25px;color:#625d58; }
.captcha-block { margin-top:18px; }
.captcha-row { display:flex;align-items:center;gap:14px;margin:8px 0 10px; }
.captcha-row img { display:block;border:1px solid #665b51;background:#171819; }
.captcha-refresh { padding:10px 0;border:0;border-bottom:1px solid #665b51;color:#51463d;background:transparent;cursor:pointer;font:inherit; }
.captcha-block input { max-width:180px;text-transform:uppercase;letter-spacing:.22em;font-weight:700; }
.clients-section { background:#ece7e0; }
.client-logo-grid { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bcb3a9;border-left:1px solid #bcb3a9; }
.client-logo-grid figure { display:flex;min-height:154px;margin:0;padding:20px;align-items:center;justify-content:center;position:relative;background:#f8f5f0;border-right:1px solid #bcb3a9;border-bottom:1px solid #bcb3a9; }
.client-logo-grid img { width:100%;height:92px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply;transition:filter .2s,opacity .2s; }
.client-logo-grid figure:hover img { filter:grayscale(0); }
.client-logo-grid figcaption { position:absolute;left:12px;bottom:8px;color:#6c655f;font-size:9px;letter-spacing:.06em;text-transform:uppercase; }

@media(max-width:900px) {
  .club-formats { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:620px) {
  .club-formats,.platform-groups { grid-template-columns:1fr; }
  .client-logo-grid { grid-template-columns:repeat(2,1fr); }
  .club-formats article { min-height:220px; }
  .club-formats h3 { margin-top:34px; }
  .captcha-row { align-items:flex-start;flex-direction:column; }
}

/* Executive editorial direction for high-value advisory work. */
:root {
  --electric-blue:#bda58f;
  --violet:#8e7a69;
  --bright-green:#d4c0aa;
  --lime:#e8d6c2;
  --coral:#bda58f;
  --navy:#111315;
  --sky:#eee9e2;
  --paper:#f2eee8;
  --ink:#171819;
  --muted:#67635f;
  --line:#d4cec6;
}
body {
  background:#f4f1ec;
  background-image:none;
  color:var(--ink);
  letter-spacing:-.01em;
}
h1,h2,h3 { font-weight:500;text-transform:none;letter-spacing:-.045em; }
.eyebrow { letter-spacing:.28em;font-weight:500; }
.header { color:#f5f1eb;background:#101112f5;border-bottom:1px solid rgba(232,214,194,.18);box-shadow:none; }
.brand { font-size:23px;font-weight:500;letter-spacing:-.04em; }
.brand span { letter-spacing:.32em;font-weight:400; }
.header .brand,.header .brand span,.header nav a { color:#f5f1eb; }
.header .brand span { color:#b8afa6; }
.nav-wrap nav a:after { height:1px;background:#d8c2aa; }
.nav-contact { color:#f5f1eb;background:transparent;border:1px solid #d8c2aa;border-radius:999px; }
.nav-contact:hover { color:#111;background:#e8d6c2; }
.menu-toggle { color:#f5f1eb;border-color:#70675f; }
.button { text-transform:none;letter-spacing:0;font-weight:500; }

.hero {
  min-height:700px;
  background:
    radial-gradient(circle at 76% 34%,rgba(187,164,141,.18),transparent 30rem),
    linear-gradient(105deg,#101112 0%,#151617 54%,#20201f 100%);
}
.hero:before { display:none; }
.hero:after { content:'';display:block;right:8%;top:8%;width:34%;height:72%;border:1px solid rgba(232,214,194,.12);background:none;opacity:1; }
.hero-inner { min-height:700px;grid-template-columns:1.05fr .95fr; }
.hero-copy { padding:78px 0 68px; }
.hero-copy .eyebrow { color:#bdb3a9;font-size:11px; }
.hero-copy .eyebrow:before { width:26px;height:1px;background:#d8c2aa; }
.hero h1 { max-width:760px;color:#f8f5f0;font-size:clamp(45px,5.4vw,76px);font-weight:400;line-height:1.02;letter-spacing:-.055em;text-transform:none; }
.hero h1 span { color:#dfc7ae;font-size:1em;font-weight:500;margin-top:7px; }
.hero-statement { max-width:590px;padding:0;background:none;color:#d1cbc4;font-size:18px;line-height:1.62; }
.hero-audience { color:#c7c0b8;border-left:1px solid #cbb39a;padding-left:18px; }
.hero-audience strong { color:#ead7c3;font-weight:500; }
.hero .button:first-child { color:#171819;background:#e6d2bd;border:1px solid #e6d2bd;border-radius:3px;box-shadow:none; }
.hero .button:first-child:hover { color:#171819;background:#f3e7da;transform:translateY(-2px);box-shadow:none; }
.hero .button.secondary { color:#eee7df;border:0;border-bottom:1px solid #c8af95;background:transparent;text-transform:none;letter-spacing:0;padding-inline:2px; }
.hero-photo>img { width:510px;height:650px;filter:grayscale(.82) sepia(.08) brightness(.72) contrast(1.1);opacity:.94; }
.photo-caption { left:20px;right:0;bottom:32px;color:#e6ddd4;background:rgba(12,13,14,.76);border:0;border-left:1px solid #d8c2aa;border-radius:0;box-shadow:none;transform:none;backdrop-filter:blur(8px); }
.photo-caption strong { color:#f8f4ef;font-weight:500; }

.proof-strip { width:100%;max-width:none;margin:0;padding-inline:max(32px,calc((100% - 1160px)/2));gap:0;color:#f4eee7;background:#111315;border:0;border-top:1px solid #393633;border-radius:0; }
.proof-strip div,.proof-strip>a { min-height:116px;padding:26px 36px;border:0;border-right:1px solid #393633; }
.proof-strip>a { border-right:0;color:#d9c5b0;font-size:11px;letter-spacing:.08em; }
.proof-strip strong,.proof-strip div:nth-child(2) strong,.proof-strip div:nth-child(3) strong { color:#dfc5aa;font-weight:400;font-size:30px; }
.proof-strip span { color:#aaa39c; }

.section { padding-block:105px; }
.section-head { max-width:900px; }
.section-head .eyebrow { color:#837568; }
.section-head h2 { color:#171819;font-size:clamp(38px,5vw,64px);line-height:1.02;text-transform:none;font-weight:450; }
.section-head h2:after { width:58px;height:1px;margin-top:24px;background:#a88f78; }
.roles-section,.tinted { background:#ece7e0; }
.roles-grid { gap:12px; }
.role-card { min-height:390px;padding:34px;color:#eee8e1;background:#171819;border:0;border-radius:0;box-shadow:none; }
.role-card:hover { color:#fff;background:#0f1011;transform:translateY(-4px);box-shadow:0 20px 45px rgba(0,0,0,.16); }
.role-card:after { font-size:78px;right:24px;top:18px;color:#d8c2aa;opacity:.08; }
.role-card span { color:#a99a8b; }
.role-card h3 { margin-top:78px;color:#f4efe9;font-size:clamp(30px,3vw,44px);line-height:1.04;text-transform:none;font-weight:400; }
.role-card p { color:#bdb6af;line-height:1.7; }
.role-card b { color:#dac3ab;font-weight:400; }
.card,.case-card,.review-card,.resource-card,.publication-card,.path-grid article,.institution-grid article,.speaker-callout {
  border:1px solid #cfc8c0;border-radius:0;box-shadow:none;background:#f8f5f0;
}
.card .number { color:#9c8978;font-size:13px;font-weight:500; }
.card h3 { font-weight:500; }
.case-card { background:#191a1b;color:#eee8e1;border-color:#191a1b; }
.case-card p,.case-card .small { color:#aaa39c; }
.case-card:hover { color:#fff;background:#101112;transform:translateY(-3px);box-shadow:0 18px 42px rgba(0,0,0,.16); }
.service-row:first-child { border-top:1px solid #aaa29a; }
.service-row { border-bottom:1px solid #aaa29a; }
.service-row:hover { padding-left:14px;color:#171819;background:#e5d9cc; }
.service-row .number { color:#938274; }
.service-row h3 { font-weight:450; }

.finder-section { color:#eee8e1;background:#151617; }
.finder-section .eyebrow { color:#bcae9f; }
.finder-section h2 { color:#f5f0ea; }
.finder-section p { color:#aaa39c; }
.finder-options button { color:#dfd7cf;background:transparent;border:1px solid #514b46;border-radius:0;box-shadow:none; }
.finder-options button:hover,.finder-options button.active { color:#171819;background:#e4d1bd;border-color:#e4d1bd;transform:none;box-shadow:none; }
.finder-result { color:#171819;background:#e4d1bd;border:0;border-radius:0; }
.finder-result p { color:#5c554e; }
.process-section,.media-kit { color:#f2ede7;background:#111315;border:0; }
.process-section .section-head .eyebrow,.media-kit .section-head .eyebrow { color:#bcae9f; }
.process-section .section-head h2,.media-kit .section-head h2 { color:#f5f0ea; }
.process-section .section-head h2:after,.media-kit .section-head h2:after { background:#bda58f; }
.process-section .card { border:1px solid #48433f;color:#f5f0ea;background:transparent; }
.process-section .card p { color:#aaa39c; }
.review-card blockquote { font-weight:400; }
.speaker-callout { background:#171819;color:#f0eae3; }
.speaker-callout p:not(.eyebrow) { color:#aaa39c; }
.speaker-callout .eyebrow { color:#bcae9f; }

.cta-band { color:#f4eee7;background:#171819;border:0;border-radius:0;box-shadow:none; }
.cta-band .eyebrow { color:#bcae9f; }
.cta-band .button { color:#171819;background:#e4d1bd;border-radius:3px; }
.contact { color:#f3eee8;background:#111315;border-top:1px solid #3c3834; }
.contact .eyebrow { color:#bcae9f; }
.contact-links a { color:#e1cab2; }
.contact .brief { color:#171819;background:#f1ece5;border:0;border-top:3px solid #bda58f;border-radius:0;box-shadow:0 28px 70px rgba(0,0,0,.28); }
.brief input[type="text"],.brief input[type="email"],.brief input[type="tel"],.brief select,.brief textarea { color:#171819;background:#faf8f4;border:1px solid #aca39a;border-radius:2px; }
.brief input:focus,.brief select:focus,.brief textarea:focus { outline:2px solid #ad9279;outline-offset:0;border-color:#ad9279; }
.brief .consent { background:#e7e0d8;border:1px solid #bdb4aa; }
.brief .consent input { accent-color:#6f5947; }
.brief button[type="submit"] { color:#171819;background:#e1c8ae;border:1px solid #c0a487;border-radius:2px; }
.page-hero { border-bottom:1px solid #bda58f; }
.page-hero h1 { color:#171819;font-size:clamp(44px,6vw,76px);line-height:1;text-transform:none;font-weight:450; }
.sticky-cta { color:#eee8e1;background:rgba(17,19,21,.96);border:1px solid #665b51;border-radius:2px; }
.sticky-cta a { color:#171819;background:#e1c8ae;border-radius:1px; }
.cookie-banner { color:#f3eee8;background:#161718;border:1px solid #5f574f;border-radius:2px; }
.cookie-mark { color:#171819;background:#e1c8ae; }
.cookie-dialog { border-radius:2px; }
.scroll-progress span { background:#bda58f; }
.footer { color:#514d49; }

@media(max-width:760px) {
  .header { background:#101112fa; }
  .hero { min-height:0; }
  .hero-inner { min-height:0; }
  .hero h1 { font-size:clamp(43px,12.5vw,62px); }
  .hero:after { display:none; }
  .hero-photo>img { width:330px;height:410px; }
  .proof-strip { grid-template-columns:1fr 1fr;padding-inline:0; }
  .proof-strip div,.proof-strip>a { min-height:105px;padding:18px;border-right:1px solid #393633;border-bottom:1px solid #393633; }
  .proof-strip div:nth-child(2),.proof-strip>a { border-right:0; }
  .role-card { min-height:285px; }
  .section-head h2 { font-size:clamp(36px,10vw,50px); }
  .contact .brief { box-shadow:none; }
}

/* September 2026 usability pass: contrast, short laptop screens and teaching. */
.case-card,
.case-card:nth-child(1),
.case-card:nth-child(2),
.case-card:nth-child(3),
.case-card:nth-child(4) {
  color:#f4eee7;
  background:#191a1b;
  border-color:#191a1b;
}
.case-card .case-label,
.case-card strong { color:#e3cbb2; }
.case-card p,
.case-card .small { color:#c7c0b8; }
.case-card:hover { color:#fff;background:#101112; }

.client-logo-grid figure { background:#fff; }
.client-logo-grid img {
  max-width:88%;
  filter:grayscale(1) contrast(1.28);
  opacity:1;
  mix-blend-mode:normal;
}
.client-logo-grid figcaption {
  color:#272522;
  font-size:10px;
  font-weight:600;
  letter-spacing:.045em;
}
.client-logo-grid figure:hover img { filter:none; }

.form-result { margin-top:22px; }
.form-result .success-icon { display:none; }
.form-result.is-success {
  min-height:330px;
  padding:44px 36px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  color:#f5f0ea;
  background:#171819;
  border-top:4px solid #c8ad92;
}
.form-result.is-success .success-icon {
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  margin-bottom:24px;
  border:1px solid #c8ad92;
  border-radius:50%;
  color:#171819;
  background:#e3cbb2;
  font-size:28px;
}
.form-result.is-success h3 { margin-bottom:10px;color:#fff;font-size:34px; }
.form-result.is-success #brief-status { max-width:480px;padding:0;border:0;background:none;color:#d4ccc4;font-size:15px; }
.form-result.is-success .actions { display:none; }

.institution-logo-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid #c7bdb3;
  border-left:1px solid #c7bdb3;
}
.institution-logo-grid figure {
  min-height:210px;
  margin:0;
  padding:30px 28px 48px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  background:#fbf8f3;
  border-right:1px solid #c7bdb3;
  border-bottom:1px solid #c7bdb3;
}
.institution-logo-grid img { width:100%;max-width:260px;max-height:105px;object-fit:contain;filter:grayscale(1); }
.institution-logo-grid figure:nth-child(2) img,
.institution-logo-grid figure:nth-child(4) img { max-width:105px;max-height:105px; }
.institution-logo-grid figcaption { position:absolute;left:20px;right:20px;bottom:16px;color:#4e4944;font-size:11px;text-align:center; }
.mba-mark { flex-direction:column;gap:5px;color:#1a1b1c;background:#e7d8c8!important; }
.mba-mark strong { font:500 54px/1 Montserrat,Arial,sans-serif;letter-spacing:.08em; }
.mba-mark span { color:#685e55;font-size:11px;text-transform:uppercase;letter-spacing:.12em; }
.subjects-grid { display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #aaa29a; }
.subjects-grid article { min-height:92px;padding:24px 26px;display:flex;align-items:center;border-bottom:1px solid #aaa29a;font-size:17px; }
.subjects-grid article:nth-child(odd) { border-right:1px solid #aaa29a; }
.social-disclaimer { display:inline-block;max-width:900px;margin-top:7px;line-height:1.55; }

@media (min-width:761px) and (max-height:900px) {
  .nav-wrap { height:72px; }
  html { scroll-padding-top:82px; }
  .hero,.hero-inner { min-height:580px; }
  .hero-copy { padding:52px 0 46px; }
  .hero-photo>img { height:570px; }
  .section { padding-block:72px; }
  .page-hero { margin-top:20px;padding:36px 44px 40px; }
  .page-hero h1 { font-size:clamp(40px,5vw,68px); }
  .page-hero .lead { margin-top:18px; }
  .breadcrumb { margin-bottom:30px; }
  .intro-actions { padding-bottom:0; }
  .contact { padding-block:62px; }
  .contact-grid { gap:56px; }
  .brief { padding:25px; }
  .brief label { margin-top:10px; }
  .brief input[type="text"],.brief input[type="email"],.brief input[type="tel"],.brief select,.brief textarea { min-height:44px;padding-block:9px; }
  .brief textarea { min-height:94px; }
  .cta-band { margin-block:28px 64px; }
  .case-card { min-height:220px; }
}

@media(max-width:760px) {
  .institution-logo-grid { grid-template-columns:1fr 1fr; }
  .institution-logo-grid figure { min-height:170px;padding:24px 18px 42px; }
  .subjects-grid { grid-template-columns:1fr; }
  .subjects-grid article:nth-child(odd) { border-right:0; }
  .form-result.is-success { min-height:280px;padding:34px 26px; }
}

@media(max-width:440px) {
  .institution-logo-grid { grid-template-columns:1fr; }
}

/* Own projects */
.project-teaser { color:#f4eee7;background:#111314; }
.project-teaser-grid { display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:center; }
.project-teaser h2 { color:#f5f0ea; }
.project-teaser p:not(.eyebrow) { color:#bdb6af;max-width:560px; }
.project-teaser .text-link { color:#dbc4ab;border-color:#8d7762; }
.project-teaser-image { position:relative;overflow:hidden;min-height:360px;border:1px solid #3b3d3e; }
.project-teaser-image img { width:100%;height:100%;min-height:360px;object-fit:cover;transition:transform .55s ease; }
.project-teaser-image:hover img { transform:scale(1.025); }
.project-teaser-image:after { content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.72)); }
.project-teaser-image span { position:absolute;z-index:1;left:28px;bottom:24px;color:#f7f1ea;font-size:13px;font-weight:600;letter-spacing:.14em; }

.owned-project { display:grid;grid-template-columns:1.08fr .92fr;gap:66px;align-items:center; }
.owned-project-visual { position:relative;min-height:570px;overflow:hidden;background:#101214; }
.owned-project-visual img { width:100%;height:570px;object-fit:cover; }
.owned-project-mark { position:absolute;left:28px;right:28px;bottom:26px;display:flex;justify-content:space-between;align-items:end;gap:20px;padding:20px 22px;color:#f5efe8;background:rgba(13,15,16,.84);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(12px); }
.owned-project-mark strong { font-size:22px;letter-spacing:.12em; }
.owned-project-mark span { color:#c9c0b7;font-size:12px; }
.owned-project-copy h2 { font-size:clamp(34px,4vw,54px); }
.owned-project-copy>p { color:var(--muted); }
.owned-project-copy .project-lead { color:var(--ink);font-size:19px;line-height:1.55; }
.project-facts { display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:32px;background:#b9b0a7;border:1px solid #b9b0a7; }
.project-facts article { min-height:126px;padding:20px 16px;background:#f8f5f0; }
.project-facts strong,.project-facts span { display:block; }
.project-facts strong { font-size:16px; }
.project-facts span { margin-top:12px;color:#6a645f;font-size:11px;line-height:1.45; }
.project-growth { color:#f4eee7;background:#111314; }
.project-growth .section-head { max-width:920px; }
.project-growth h2 { color:#f5f0ea; }
.project-growth .section-head>p:not(.eyebrow) { color:#bdb6af; }
.project-growth .card { color:#f4eee7;background:#191b1c;border-color:#3c3d3e;border-radius:0; }
.project-growth .card p { color:#bdb6af; }
.project-growth .number { color:#d8c2aa; }
.project-practice { display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:start; }
.project-practice-list { border-top:1px solid #aaa29a; }
.project-practice-list article { display:grid;grid-template-columns:42px .8fr 1.2fr;gap:22px;padding:26px 0;border-bottom:1px solid #aaa29a;align-items:start; }
.project-practice-list article>span { color:#8b7d70;font-size:12px;letter-spacing:.12em; }
.project-practice-list h3 { margin:0;font-size:20px; }
.project-practice-list p { margin:0;color:var(--muted);font-size:13px; }

/* Extended case portfolio */
.other-cases { color:#f4eee7;background:#111314; }
.other-cases h2,.other-cases h3 { color:#f5f0ea; }
.other-cases .section-head { max-width:940px; }
.other-cases .section-head>p:not(.eyebrow) { color:#bdb6af;max-width:760px; }
.client-name-cloud { display:flex;flex-wrap:wrap;gap:10px;margin:0 0 52px; }
.client-name-cloud span { padding:11px 16px;border:1px solid #514b45;color:#e8ddd2;background:#191b1c;font-size:13px; }
.industry-grid { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #514b45;border-left:1px solid #514b45; }
.industry-grid article { min-height:220px;padding:28px;border-right:1px solid #514b45;border-bottom:1px solid #514b45; }
.industry-grid article>span { color:#cdb79f;font-size:11px;letter-spacing:.14em; }
.industry-grid h3 { margin:34px 0 12px;font-size:23px; }
.industry-grid p { margin:0;color:#bdb6af;font-size:13px; }
.other-cases-action { display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:46px;padding:30px;border:1px solid #6a5b4d;background:linear-gradient(125deg,#1c1d1e,#29231e); }
.other-cases-action h3 { margin:0 0 8px;font-size:25px; }
.other-cases-action p { margin:0;color:#bdb6af;font-size:13px;max-width:650px; }
.other-cases-action .button { flex:0 0 auto;background:#e5cfb8;color:#171717; }
.other-cases .source-note { color:#8f8881; }

@media(max-width:900px) {
  .nav-wrap { justify-content:space-between; }
  .nav-wrap nav { display:none; }
  .menu-toggle { display:block; }
  .project-teaser-grid,.owned-project,.project-practice { grid-template-columns:1fr;gap:34px; }
  .industry-grid { grid-template-columns:repeat(2,1fr); }
  .owned-project-visual,.owned-project-visual img { min-height:0;height:auto; }
}

@media(max-width:760px) {
  .project-teaser-image,.project-teaser-image img { min-height:230px; }
  .owned-project-mark { left:14px;right:14px;bottom:14px;padding:15px; }
  .owned-project-mark { align-items:start;flex-direction:column;gap:3px; }
  .project-facts { grid-template-columns:1fr; }
  .project-facts article { min-height:0; }
  .project-practice-list article { grid-template-columns:34px 1fr;gap:12px; }
  .project-practice-list p { grid-column:2; }
  .industry-grid { grid-template-columns:1fr; }
  .industry-grid article { min-height:0; }
  .other-cases-action { align-items:flex-start;flex-direction:column;padding:24px; }
  .other-cases-action .button { width:100%; }
}

/* Editorial photo portfolio */
.speaker-portfolio { color:#f4eee7;background:#111314; }
.speaker-portfolio h2,
.teaching-photos h2 { color:#f5f0ea; }
.speaker-portfolio .eyebrow,
.teaching-photos .eyebrow { color:#cdb79f; }
.speaker-portfolio .section-head { max-width:none; }
.speaker-portfolio .section-head>p { max-width:390px;color:#bdb6af; }
.portfolio-gallery {
  display:grid;
  grid-template-columns:repeat(12,1fr);
  gap:12px;
}
.portfolio-gallery figure,
.practice-photo-grid figure,
.about-photo-layout figure { margin:0;position:relative;overflow:hidden;background:#242526; }
.portfolio-gallery figure { grid-column:span 5;min-height:390px; }
.portfolio-gallery .portfolio-wide { grid-column:span 7; }
.portfolio-gallery figure:last-child { grid-column:1/-1;min-height:500px; }
.portfolio-gallery img,
.practice-photo-grid img,
.about-photo-layout img { width:100%;height:100%;object-fit:cover;transition:transform .5s ease; }
.portfolio-gallery figure:first-child img { object-position:center 35%; }
.portfolio-gallery figure:nth-child(2) img { object-position:center 22%; }
.portfolio-gallery figure:last-child img { object-position:center 42%; }
.portfolio-gallery figure:hover img,
.practice-photo-grid figure:hover img { transform:scale(1.018); }
.portfolio-gallery figcaption,
.practice-photo-grid figcaption,
.about-photo-layout figcaption {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:40px 24px 18px;
  color:#f7f2ed;
  background:linear-gradient(transparent,rgba(9,10,10,.88));
  font-size:11px;
  letter-spacing:.035em;
}
.teaching-photos { background:#171819;color:#f5f0ea; }
.practice-photo-grid { display:grid;grid-template-columns:1.15fr .85fr;gap:14px; }
.practice-photo-grid figure { min-height:430px; }
.practice-photo-grid figure:last-child img { object-position:center 42%; }
.about-photo-band { background:#171819;color:#f5f0ea; }
.about-photo-layout { display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center; }
.about-photo-layout figure { height:640px; }
.about-photo-layout figure img { object-position:center 20%; }
.about-photo-layout blockquote { max-width:650px;margin:0 0 30px;font-size:clamp(36px,4.4vw,64px);line-height:1.08;letter-spacing:-.055em; }
.about-photo-layout>div>p:not(.eyebrow) { max-width:580px;color:#c5beb7; }
.about-photo-layout .text-link { color:#e3cbb2;border-color:#e3cbb2; }

@media (min-width:761px) and (max-height:900px) {
  .portfolio-gallery figure { min-height:330px; }
  .portfolio-gallery figure:last-child { min-height:410px; }
  .practice-photo-grid figure { min-height:360px; }
  .about-photo-layout figure { height:540px; }
}

@media(max-width:760px) {
  .portfolio-gallery { grid-template-columns:1fr;gap:10px; }
  .portfolio-gallery figure,
  .portfolio-gallery .portfolio-wide,
  .portfolio-gallery figure:last-child { grid-column:1;min-height:330px; }
  .portfolio-gallery figure:nth-child(2) { min-height:520px; }
  .practice-photo-grid { grid-template-columns:1fr; }
  .practice-photo-grid figure { min-height:300px; }
  .about-photo-layout { grid-template-columns:1fr;gap:38px; }
  .about-photo-layout figure { height:520px; }
}
