:root{
  --bg:#f7f8fc;
  --bg-soft:#f2f5fb;
  --surface:#ffffff;
  --surface-2:#f8faff;
  --surface-3:#eef3fd;
  --text:#0d1730;
  --muted:#5c6880;
  --muted-strong:#3f4d67;
  --line:#dbe3f1;
  --line-strong:#c8d6eb;
  --accent:#2f63e8;
  --accent-dark:#183a8b;
  --accent-soft:#eaf0ff;
  --accent-2:#7b4dff;
  --success:#0f8a72;
  --shadow:0 24px 64px rgba(18, 33, 72, .12);
  --shadow-soft:0 14px 32px rgba(18, 33, 72, .08);
  --shadow-card:0 16px 36px rgba(24, 40, 81, .07);
  --radius-2xl:34px;
  --radius-xl:28px;
  --radius-lg:22px;
  --radius-md:18px;
  --radius-sm:14px;
  --container:1220px;
}

*,
*::before,
*::after{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  font-family:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 0% 0%, rgba(48,99,232,.10), transparent 24%),
    radial-gradient(circle at 100% 8%, rgba(123,77,255,.08), transparent 22%),
    linear-gradient(180deg, #fbfcff 0%, #f8fafc 48%, #ffffff 100%);
  line-height:1.6;
}

img{display:block; width:100%; height:auto}
a{color:inherit; text-decoration:none}
button, input, select, textarea{font:inherit}

.skip-link{
  position:absolute;
  left:-999px;
  top:0;
  background:#fff;
  color:var(--text);
  padding:.85rem 1rem;
  border-radius:999px;
  box-shadow:var(--shadow-soft);
  z-index:9999;
}
.skip-link:focus{left:1rem; top:1rem}

.container{
  width:min(calc(100% - 2rem), var(--container));
  margin:0 auto;
}

.section{
  position:relative;
  padding:6rem 0;
}

.section-tight{
  padding-top:1.3rem;
  padding-bottom:1.3rem;
}

.section-soft{
  background:
    radial-gradient(circle at 100% 0%, rgba(47,99,232,.06), transparent 23%),
    linear-gradient(180deg, rgba(242,245,251,.82), rgba(255,255,255,.5));
}

.eyebrow,
.section-kicker,
.mini-label,
.card-chip{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.78rem;
  font-weight:800;
}

.eyebrow,
.section-kicker,
.mini-label{
  color:#4d64a8;
}

.card-chip{
  padding:.55rem .8rem;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:inherit;
}

.section-heading{
  max-width:780px;
  margin-bottom:2.5rem;
}

.section-heading-compact{
  max-width:740px;
}

.section-heading h2,
.section-copy h2,
.why-copy h2,
.cta-copy h2,
.hero-copy h1,
.thank-you-panel h1{
  margin:.8rem 0 1rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-weight:800;
  letter-spacing:-.045em;
  line-height:1.04;
}

.hero-copy h1{
  font-size:clamp(3rem, 6vw, 5.5rem);
  max-width:10ch;
}

.hero-copy h1 span{
  display:block;
  color:var(--accent);
}

.section-heading h2,
.section-copy h2,
.why-copy h2,
.cta-copy h2,
.thank-you-panel h1{
  font-size:clamp(2.3rem, 4vw, 3.55rem);
}

.section-heading p,
.section-copy p,
.why-copy p,
.cta-copy p,
.hero-intro,
.thank-you-panel p{
  color:var(--muted);
  font-size:1.06rem;
  margin:0;
}

.site-header{
  position:sticky;
  top:0;
  z-index:120;
  padding:1rem 0;
  transition:padding .22s ease;
}

.site-header::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(18px);
  border-bottom:1px solid transparent;
  transition:background .22s ease, box-shadow .22s ease, border-color .22s ease;
  z-index:-1;
}

.site-header.is-scrolled{
  padding:.78rem 0;
}

.site-header.is-scrolled::before{
  background:rgba(255,255,255,.86);
  box-shadow:0 10px 34px rgba(20,35,74,.08);
  border-color:rgba(204,214,232,.85);
}

.nav-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}

.brand{
  display:flex;
  align-items:center;
  gap:.95rem;
  min-width:0;
}

.brand-mark{
  width:2.8rem;
  height:2.8rem;
  display:grid;
  place-items:center;
  flex:none;
  border-radius:18px;
  background:linear-gradient(135deg, var(--accent) 0%, #71d5ff 100%);
  color:#fff;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.24rem;
  font-weight:800;
  box-shadow:0 12px 26px rgba(47,99,232,.26);
}

.brand-lockup{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.brand-name{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.02rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.brand-tag{
  color:var(--muted);
  font-size:.74rem;
  line-height:1.35;
}

.site-nav{
  display:flex;
  align-items:center;
  gap:1.45rem;
}

.site-nav > a:not(.button){
  position:relative;
  font-weight:600;
  color:#293753;
}

.site-nav > a:not(.button)::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-.45rem;
  width:100%;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg, var(--accent), #71d5ff);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .2s ease;
}

.site-nav > a:not(.button):hover::after,
.site-nav > a:not(.button):focus-visible::after{
  transform:scaleX(1);
}

.site-nav > a.is-active,
.site-nav > a[aria-current="page"]{
  color:var(--text);
}

.site-nav > a.is-active::after,
.site-nav > a[aria-current="page"]::after{
  transform:scaleX(1);
}

.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  min-height:3.35rem;
  padding:.95rem 1.3rem;
  border-radius:999px;
  border:1px solid transparent;
  font-weight:700;
  line-height:1;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
  cursor:pointer;
}

.button:hover,
.button:focus-visible{
  transform:translateY(-1px);
}

.button-primary{
  color:#fff;
  background:linear-gradient(135deg, var(--accent) 0%, #74d7ff 100%);
  box-shadow:0 16px 34px rgba(47,99,232,.22);
}

.button-primary:hover,
.button-primary:focus-visible{
  box-shadow:0 22px 42px rgba(47,99,232,.28);
}

.button-secondary{
  color:var(--text);
  background:rgba(255,255,255,.92);
  border-color:var(--line);
}

.button-secondary:hover,
.button-secondary:focus-visible{
  background:#fff;
  border-color:var(--line-strong);
  box-shadow:var(--shadow-soft);
}

.menu-toggle{
  display:none;
  width:3rem;
  height:3rem;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow-soft);
  padding:0;
}

.menu-toggle span{
  display:block;
  width:1.2rem;
  height:2px;
  margin:.23rem auto;
  background:#21314e;
  border-radius:99px;
  transition:transform .2s ease, opacity .2s ease;
}

.hero-section{
  padding-top:4.6rem;
  padding-bottom:2.4rem;
}

.hero-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.02fr) minmax(0, .98fr);
  gap:3.4rem;
  align-items:center;
}

.hero-copy{
  max-width:620px;
}

.hero-intro{
  max-width:58ch;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  margin-top:2rem;
}

.hero-visual{
  min-width:0;
}

.hero-stage{
  position:relative;
  min-height:640px;
  isolation:isolate;
}

.hero-stage::before{
  content:"";
  position:absolute;
  inset:1.2rem 0 0 5rem;
  border-radius:38px;
  background:
    radial-gradient(circle at 0% 0%, rgba(47,99,232,.16), transparent 30%),
    radial-gradient(circle at 100% 0%, rgba(123,77,255,.14), transparent 24%),
    linear-gradient(180deg, rgba(245,248,255,.96), rgba(255,255,255,.9));
  border:1px solid rgba(204,216,237,.8);
  box-shadow:var(--shadow);
  z-index:-2;
}

.hero-stage::after{
  content:"";
  position:absolute;
  inset:auto 4rem 1rem auto;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(113,213,255,.34), transparent 68%);
  z-index:-1;
}

.hero-board{
  width:83%;
  margin:0 0 0 auto;
  padding:1rem;
  border-radius:34px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(207,217,236,.9);
  box-shadow:var(--shadow);
}

.hero-board img{
  border-radius:26px;
  min-height:420px;
  object-fit:cover;
}

.portrait-card,
.stage-note,
.support-card,
.gains-panel,
.service-card,
.visual-card,
.proof-card,
.resource-card,
.outcome-card,
.contact-form,
.portrait-feature,
.spotlight-card,
.media-card,
.logo-tile,
.contact-details a,
.proof-strip,
.thank-you-panel{
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.portrait-card{
  position:absolute;
  left:0;
  bottom:3rem;
  width:min(420px, 54%);
  display:grid;
  grid-template-columns:170px 1fr;
  gap:0;
  border-radius:28px;
  overflow:hidden;
}

.portrait-media{
  background:#f0f5ff;
}

.portrait-media img{
  height:100%;
  min-height:260px;
  object-fit:cover;
}

.portrait-copy{
  padding:1.45rem 1.4rem 1.4rem;
}

.portrait-copy h2{
  margin:.75rem 0 .7rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.4rem;
  line-height:1.12;
  letter-spacing:-.04em;
}

.portrait-copy p{
  margin:0;
  font-size:.97rem;
  color:var(--muted);
}

.stage-note{
  position:absolute;
  right:1rem;
  bottom:1.3rem;
  width:min(320px, 42%);
  padding:1.2rem 1.25rem;
  border-radius:24px;
}

.stage-note p{
  margin:.65rem 0 0;
  color:var(--muted-strong);
  font-weight:600;
}

.proof-strip-section .container,
.signals-strip-section .container{
  position:relative;
}

.proof-strip{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:0;
  border-radius:24px;
  overflow:hidden;
}

.proof-item{
  padding:1.25rem 1.45rem;
  text-align:center;
}

.proof-item + .proof-item{
  border-left:1px solid var(--line);
}

.proof-item strong{
  display:block;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1rem;
  line-height:1.35;
  letter-spacing:-.02em;
}

.proof-support{
  margin:1rem 0 0;
  text-align:center;
  color:var(--muted);
  font-size:.98rem;
}

.logo-wall{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:1rem;
}

.logo-tile{
  min-height:94px;
  padding:1rem .95rem;
  border-radius:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.logo-tile:hover,
.logo-tile:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 18px 34px rgba(20,36,80,.10);
  border-color:var(--line-strong);
}

.logo-wordmark{
  display:flex;
  flex-direction:column;
  gap:.15rem;
  line-height:1.15;
}

.logo-wordmark strong{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.08rem;
  letter-spacing:-.03em;
}

.logo-wordmark em{
  font-style:normal;
  font-size:.86rem;
  font-weight:700;
  color:var(--muted);
  letter-spacing:.02em;
}

.logo-aws strong{letter-spacing:.05em}
.logo-northwestern strong{color:#4e2a84}
.logo-nasdaq strong{letter-spacing:.1em}

.moment-grid,
.why-grid,
.cta-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, .95fr);
  gap:3rem;
  align-items:center;
}

.section-copy,
.why-copy,
.cta-copy{
  max-width:700px;
}

.section-copy p + p,
.why-copy p + p{
  margin-top:1.1rem;
}

.media-card{
  border-radius:30px;
  overflow:hidden;
}

.media-card img,
.spotlight-card img,
.visual-card figure img{
  height:100%;
  object-fit:cover;
}

.support-grid{
  margin-top:2rem;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:1rem;
}

.support-card,
.gains-panel{
  min-height:100%;
  padding:1.5rem 1.35rem;
  border-radius:22px;
}

.support-card h3{
  margin:0 0 .6rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.15rem;
  letter-spacing:-.03em;
}

.support-card p{
  margin:0;
  color:var(--muted);
}

.gains-panel{
  background:linear-gradient(180deg, #123171 0%, #173a86 100%);
  border-color:#193d8b;
  color:#fff;
}

.gains-panel .mini-label{
  color:rgba(255,255,255,.76);
}

.gains-panel ul{
  margin:.95rem 0 0;
  padding-left:1.1rem;
}

.gains-panel li + li{margin-top:.7rem}

.service-grid,
.outcomes-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:1rem;
}

.service-card,
.outcome-card{
  border-radius:24px;
  padding:1.6rem;
  min-height:260px;
  display:flex;
  flex-direction:column;
}

.service-number,
.outcome-number{
  width:max-content;
  min-width:3.2rem;
  padding:.45rem .75rem;
  border-radius:999px;
  background:var(--accent-soft);
  color:var(--accent);
  font-weight:800;
  font-size:.82rem;
  letter-spacing:.12em;
}

.service-card h3,
.outcome-card h3,
.visual-card h3,
.proof-card h3,
.portrait-feature h3{
  margin:1rem 0 .75rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.3rem;
  letter-spacing:-.035em;
  line-height:1.15;
}

.service-card p,
.outcome-card p,
.visual-card p,
.proof-card p,
.portrait-feature p,
.resource-card span{
  margin:0;
  color:var(--muted);
}

.visual-card-grid,
.proof-card-grid{
  display:grid;
  gap:1.15rem;
}

.visual-card-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.visual-card{
  overflow:hidden;
  border-radius:26px;
}

.visual-card figure{
  aspect-ratio:16 / 11;
  overflow:hidden;
}

.visual-card-body{
  padding:1.35rem 1.35rem 1.45rem;
}

.why-grid{align-items:start}

.principles-row{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin:1.7rem 0 2rem;
}

.principles-row span{
  display:inline-flex;
  align-items:center;
  min-height:2.9rem;
  padding:.7rem .95rem;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  color:#31405e;
  font-weight:600;
}

.why-media{
  display:grid;
  gap:1rem;
}

.portrait-feature{
  overflow:hidden;
  border-radius:28px;
}

.portrait-feature-image img{
  height:400px;
  object-fit:cover;
}

.portrait-feature-copy{
  padding:1.4rem 1.4rem 1.5rem;
}

.portrait-feature-copy h3{
  margin:.75rem 0 0;
}

.spotlight-card{
  overflow:hidden;
  border-radius:28px;
}

.proof-card-grid{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

.proof-card{
  border-radius:24px;
  padding:1.35rem;
  min-height:225px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.proof-card:hover,
.proof-card:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 20px 40px rgba(20,36,80,.11);
  border-color:var(--line-strong);
}

.proof-card-feature{
  grid-column:span 2;
  background:linear-gradient(135deg, #14326f 0%, #2751b9 100%);
  border-color:#23459f;
  color:#fff;
}

.proof-card-feature .card-chip{
  background:rgba(255,255,255,.14);
}

.proof-card .card-arrow{
  margin-top:auto;
  padding-top:1rem;
  font-weight:700;
  color:inherit;
}

.industry-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:1rem;
}

.industry-grid span{
  display:flex;
  align-items:center;
  min-height:5.3rem;
  padding:1.15rem 1.2rem;
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  box-shadow:var(--shadow-card);
  font-family:"Manrope", "Inter", sans-serif;
  font-weight:700;
  letter-spacing:-.02em;
}

.resource-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1rem;
}

.resource-card{
  display:flex;
  flex-direction:column;
  gap:.45rem;
  min-height:132px;
  padding:1.3rem 1.35rem;
  border-radius:22px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.resource-card:hover,
.resource-card:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 18px 34px rgba(20,36,80,.10);
  border-color:var(--line-strong);
}

.resource-card strong{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.1rem;
  letter-spacing:-.03em;
}

.cta-section{
  background:
    radial-gradient(circle at 0% 0%, rgba(47,99,232,.08), transparent 25%),
    radial-gradient(circle at 100% 20%, rgba(123,77,255,.06), transparent 24%),
    linear-gradient(180deg, #fbfcff 0%, #f5f8ff 100%);
}

.contact-details{
  display:grid;
  gap:1rem;
  margin-top:2rem;
}

.contact-details a{
  border-radius:22px;
  padding:1.15rem 1.2rem;
  display:flex;
  flex-direction:column;
  gap:.25rem;
}

.contact-details strong{
  font-size:.86rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#4c63a8;
}

.contact-details span{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.08rem;
  font-weight:700;
  letter-spacing:-.03em;
}

.contact-form{
  border-radius:30px;
  padding:1.8rem;
}

.contact-form h3{
  margin:0;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.6rem;
  letter-spacing:-.04em;
}

.contact-form > p{
  margin:.8rem 0 0;
  color:var(--muted);
}

.form-grid{
  margin-top:1.5rem;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1rem;
}

label{
  display:flex;
  flex-direction:column;
  gap:.5rem;
}

label span{
  font-size:.9rem;
  font-weight:700;
  color:#33405e;
}

input,
select,
textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  color:var(--text);
  padding:.95rem 1rem;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

input:focus,
select:focus,
textarea:focus{
  outline:none;
  border-color:#9fb8ff;
  box-shadow:0 0 0 4px rgba(47,99,232,.12);
}

textarea{resize:vertical}

.full-width{grid-column:1 / -1}

.hp-field{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.site-footer{
  padding:2.4rem 0 2rem;
  background:#fff;
  border-top:1px solid var(--line);
}

.footer-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}

.footer-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:1.15rem;
}

.footer-links a{
  color:#34415e;
  font-weight:600;
}

.footer-bottom{
  margin-top:1.1rem;
  padding-top:1rem;
  border-top:1px solid var(--line);
}

.footer-bottom p{
  margin:0;
  color:var(--muted);
  font-size:.94rem;
}

.reveal{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .5s ease, transform .5s ease;
}

.reveal.is-visible{
  opacity:1;
  transform:none;
}

/* Thank-you page layout */

.thank-you-main{
  padding:4.5rem 0 5rem;
}

.thank-you-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(320px, 420px);
  gap:2rem;
  align-items:center;
}

.thank-you-panel{
  border-radius:30px;
  padding:2rem;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.thank-you-panel p{
  max-width:56ch;
}

@media (max-width: 1180px){
  .hero-grid,
  .moment-grid,
  .why-grid,
  .cta-grid,
  .thank-you-layout{
    grid-template-columns:1fr;
  }

  .hero-copy{max-width:none}

  .hero-stage{
    min-height:unset;
    padding-bottom:1rem;
  }

  .hero-stage::before{
    inset:0;
  }

  .hero-board{
    width:100%;
    margin:0;
  }

  .portrait-card,
  .stage-note{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    width:100%;
    margin-top:1rem;
  }

  .support-grid,
  .service-grid,
  .outcomes-grid,
  .industry-grid,
  .visual-card-grid,
  .proof-card-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .proof-card-feature{
    grid-column:span 2;
  }
}

@media (max-width: 920px){
  .menu-toggle{display:block}

  .site-nav{
    position:absolute;
    top:calc(100% + .75rem);
    left:1rem;
    right:1rem;
    background:rgba(255,255,255,.98);
    backdrop-filter:blur(18px);
    border:1px solid var(--line);
    border-radius:26px;
    box-shadow:var(--shadow);
    padding:1rem;
    display:grid;
    gap:.25rem;
    opacity:0;
    visibility:hidden;
    transform:translateY(-10px);
    pointer-events:none;
    transition:opacity .18s ease, visibility .18s ease, transform .18s ease;
  }

  .site-nav.is-open{
    opacity:1;
    visibility:visible;
    transform:none;
    pointer-events:auto;
  }

  .site-nav > a:not(.button){
    padding:.85rem .7rem;
    border-radius:14px;
  }

  .site-nav > a:not(.button)::after{display:none}

  .site-nav > a:not(.button):hover,
  .site-nav > a:not(.button):focus-visible{
    background:#f4f7fd;
  }

  .nav-button{margin-top:.3rem}

  .logo-wall{grid-template-columns:repeat(3, minmax(0, 1fr))}

  .portrait-card{
    grid-template-columns:150px 1fr;
  }
}

@media (max-width: 760px){
  .section{padding:4.6rem 0}

  .hero-section{
    padding-top:3.6rem;
    padding-bottom:1.8rem;
  }

  .hero-copy h1{
    max-width:12ch;
  }

  .hero-actions,
  .principles-row{
    flex-direction:column;
    align-items:stretch;
  }

  .proof-strip,
  .proof-item,
  .proof-item + .proof-item{
    border-left:none;
  }

  .proof-strip{
    grid-template-columns:1fr;
  }

  .proof-item + .proof-item{
    border-top:1px solid var(--line);
  }

  .logo-wall,
  .support-grid,
  .service-grid,
  .outcomes-grid,
  .industry-grid,
  .visual-card-grid,
  .proof-card-grid,
  .resource-grid,
  .form-grid{
    grid-template-columns:1fr;
  }

  .proof-card-feature{grid-column:auto}

  .portrait-card{
    grid-template-columns:1fr;
  }

  .portrait-media img{
    min-height:300px;
  }

  .hero-board img{
    min-height:300px;
  }

  .contact-form,
  .thank-you-panel{
    padding:1.4rem;
  }

  .footer-shell{
    align-items:flex-start;
    flex-direction:column;
  }

  .footer-links{
    justify-content:flex-start;
  }
}

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


/* About page */

.interior-page{
  background:
    radial-gradient(circle at 0% 0%, rgba(48,99,232,.11), transparent 22%),
    radial-gradient(circle at 100% 12%, rgba(123,77,255,.08), transparent 20%),
    linear-gradient(180deg, #fbfcff 0%, #f8fafc 42%, #ffffff 100%);
}

.page-hero{
  padding-top:4.4rem;
  padding-bottom:2.35rem;
}

.page-hero-grid,
.perspective-grid,
.manifesto-grid,
.audience-layout,
.why-about-grid,
.about-final-panel{
  display:grid;
  gap:2rem;
}

.page-hero-grid,
.perspective-grid,
.manifesto-grid,
.why-about-grid{
  grid-template-columns:minmax(0, 1.03fr) minmax(0, .97fr);
  align-items:center;
}

.audience-layout,
.about-final-panel{
  grid-template-columns:minmax(0, 1.02fr) minmax(340px, .98fr);
  align-items:start;
}

.page-hero-copy h1{
  margin:.9rem 0 1rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-weight:800;
  font-size:clamp(3rem, 5vw, 5rem);
  letter-spacing:-.05em;
  line-height:1.02;
  max-width:11ch;
}

.page-hero-intro{
  max-width:61ch;
  color:var(--muted);
  font-size:1.07rem;
  margin:0;
}

.page-hero-media{
  min-width:0;
}

.about-hero-facts{
  margin-top:2rem;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1rem;
}

.about-hero-facts article,
.about-anchor-nav,
.perspective-note-card,
.principle-card,
.audience-card,
.audience-feature,
.signals-card,
.about-final-panel,
.about-contact-points a,
.about-quote-card,
.about-focus-card,
.about-portrait-shell,
.about-dashboard-card{
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.about-hero-facts article{
  min-height:100%;
  padding:1.05rem 1rem 1.1rem;
  border-radius:22px;
}

.about-hero-facts span{
  display:block;
  margin-bottom:.55rem;
  font-size:.8rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#4d64a8;
}

.about-hero-facts strong{
  display:block;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:.98rem;
  letter-spacing:-.03em;
  line-height:1.28;
}

.about-stage{
  position:relative;
  padding:1rem;
  border-radius:38px;
  background:
    radial-gradient(circle at 100% 0%, rgba(113,213,255,.16), transparent 28%),
    radial-gradient(circle at 0% 100%, rgba(123,77,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(244,247,255,.98), rgba(255,255,255,.92));
  border:1px solid rgba(204,216,237,.8);
  box-shadow:var(--shadow);
}

.about-stage::before{
  content:"";
  position:absolute;
  inset:1rem;
  border-radius:30px;
  background:linear-gradient(180deg, rgba(255,255,255,.7), rgba(255,255,255,.36));
  pointer-events:none;
}

.about-stage-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, .96fr) minmax(0, .84fr);
  gap:1rem;
  align-items:stretch;
  z-index:1;
}

.about-portrait-shell,
.about-quote-card,
.about-focus-card,
.about-dashboard-card,
.perspective-note-card,
.principle-card,
.audience-card,
.audience-feature,
.signals-card,
.about-contact-points a{
  border-radius:26px;
}

.about-portrait-shell{
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

.about-portrait-figure{
  margin:0;
  padding:0;
}

.about-portrait-figure img{
  aspect-ratio:4 / 5;
  min-height:520px;
  object-fit:cover;
}

.about-portrait-caption{
  padding:1.35rem 1.35rem 1.45rem;
}

.about-portrait-caption h2{
  margin:.75rem 0 0;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.35rem;
  line-height:1.1;
  letter-spacing:-.04em;
}

.about-info-stack{
  display:grid;
  gap:1rem;
}

.about-quote-card,
.about-focus-card{
  padding:1.25rem 1.25rem 1.3rem;
}

.about-quote-card p{
  margin:.75rem 0 0;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.28rem;
  letter-spacing:-.04em;
  line-height:1.14;
}

.about-dashboard-card{
  overflow:hidden;
  margin:0;
  min-height:210px;
}

.about-dashboard-card img{
  height:100%;
  min-height:210px;
  object-fit:cover;
}

.about-focus-card ul{
  margin:.9rem 0 0;
  padding-left:1.15rem;
  color:var(--muted-strong);
}

.about-focus-card li + li{margin-top:.55rem}

.about-anchor-section{
  padding-top:0;
  padding-bottom:1.8rem;
}

.about-anchor-nav{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
  padding:1rem;
  border-radius:28px;
  justify-content:center;
}

.about-anchor-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:2.95rem;
  padding:.7rem 1.05rem;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
  font-weight:700;
  color:#33405d;
  transition:transform .18s ease, box-shadow .18s ease, color .18s ease, border-color .18s ease;
}

.about-anchor-nav a:hover,
.about-anchor-nav a:focus-visible{
  transform:translateY(-1px);
  box-shadow:var(--shadow-soft);
  color:var(--accent);
  border-color:#c9d6f0;
}

.perspective-media-card{
  border-radius:30px;
}

.perspective-note-card{
  padding:1.35rem 1.35rem 1.4rem;
}

.perspective-note-list{
  display:grid;
  gap:1rem;
  margin-top:.95rem;
}

.perspective-note-list p{
  margin:0;
  display:grid;
  gap:.35rem;
}

.perspective-note-list strong{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.06rem;
  letter-spacing:-.03em;
}

.perspective-note-list span{
  color:var(--muted);
  font-size:.98rem;
}

.about-manifesto{
  overflow:hidden;
  background:
    radial-gradient(circle at 0% 0%, rgba(113,213,255,.17), transparent 25%),
    radial-gradient(circle at 100% 100%, rgba(123,77,255,.18), transparent 32%),
    linear-gradient(135deg, #0a1632 0%, #102552 58%, #143270 100%);
}

.about-manifesto .section-kicker,
.about-manifesto .mini-label{
  color:rgba(220,229,255,.78);
}

.about-manifesto .manifesto-copy h2{
  margin:.8rem 0 1rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:clamp(2.35rem, 4vw, 3.85rem);
  font-weight:800;
  line-height:1.04;
  letter-spacing:-.045em;
  color:#fff;
}

.about-manifesto .manifesto-copy p{
  margin:0;
  color:rgba(229,236,255,.82);
  font-size:1.05rem;
}

.about-manifesto .manifesto-copy p + p{margin-top:1rem}

.manifesto-grid{
  position:relative;
}

.manifesto-grid::after{
  content:"K";
  position:absolute;
  right:-.03em;
  bottom:-.08em;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:min(38vw, 22rem);
  font-weight:800;
  line-height:1;
  color:rgba(255,255,255,.05);
  pointer-events:none;
}

.manifesto-tiles{
  display:grid;
  gap:1rem;
}

.manifesto-tile{
  position:relative;
  z-index:1;
  padding:1.35rem 1.35rem 1.4rem;
  border-radius:26px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(6px);
}

.manifesto-tile strong{
  display:block;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.18rem;
  letter-spacing:-.03em;
  line-height:1.16;
  color:#fff;
}

.manifesto-tile span{
  display:block;
  margin-top:.6rem;
  color:rgba(229,236,255,.78);
}

.principle-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1rem;
}

.principle-card{
  min-height:250px;
  padding:1.55rem;
}

.principle-card h3,
.audience-card h3,
.audience-feature-copy h3,
.signals-card h3,
.about-final-copy h2{
  margin:1rem 0 .75rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.28rem;
  line-height:1.14;
  letter-spacing:-.035em;
}

.principle-card p,
.audience-card p,
.audience-feature-copy p,
.audience-feature-copy li,
.signals-card p,
.about-final-copy p{
  margin:0;
  color:var(--muted);
}

.principle-card-wide{
  grid-column:span 2;
}

.audience-list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:1rem;
}

.audience-card{
  min-height:220px;
  padding:1.45rem 1.35rem;
}

.audience-feature{
  overflow:hidden;
  display:grid;
  grid-template-rows:auto 1fr;
}

.audience-feature figure{
  margin:0;
  overflow:hidden;
}

.audience-feature img{
  width:100%;
  height:100%;
  min-height:250px;
  object-fit:cover;
}

.audience-feature-copy{
  padding:1.4rem 1.4rem 1.5rem;
}

.audience-feature-copy ul{
  margin:1rem 0 0;
  padding-left:1.05rem;
}

.audience-feature-copy li + li{margin-top:.6rem}

.why-about-grid{
  align-items:start;
}

.closing-note{
  margin:1.3rem 0 1.8rem !important;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.15rem !important;
  color:var(--text) !important;
  letter-spacing:-.02em;
}

.why-about-side{
  display:grid;
  gap:1rem;
}

.about-proof-image{
  min-height:280px;
}

.signals-card{
  padding:1.35rem 1.35rem 1.2rem;
}

.signal-line{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  padding:.92rem 0;
  border-top:1px solid var(--line);
  transition:color .18s ease;
}

.signal-line:first-of-type{
  margin-top:.9rem;
}

.signal-line strong{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1rem;
  letter-spacing:-.02em;
}

.signal-line span{
  color:var(--muted);
  font-size:.92rem;
  text-align:right;
}

.signal-line:hover,
.signal-line:focus-visible{
  color:var(--accent);
}

.about-final-section{
  padding-top:5rem;
}

.about-final-panel{
  padding:2rem;
  border-radius:32px;
}

.about-final-copy h2{
  font-size:clamp(2.1rem, 3.5vw, 3.2rem);
  margin:.8rem 0 1rem;
}

.about-final-actions{
  display:grid;
  gap:1rem;
}

.about-contact-points{
  display:grid;
  gap:1rem;
}

.about-contact-points a{
  padding:1.1rem 1.15rem;
  display:flex;
  flex-direction:column;
  gap:.25rem;
}

.about-contact-points strong{
  font-size:.82rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#4d64a8;
}

.about-contact-points span{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.04rem;
  font-weight:700;
  letter-spacing:-.03em;
}

@media (max-width: 1180px){
  .page-hero-grid,
  .perspective-grid,
  .manifesto-grid,
  .audience-layout,
  .why-about-grid,
  .about-final-panel{
    grid-template-columns:1fr;
  }

  .about-portrait-figure img{
    min-height:460px;
  }

  .about-hero-facts,
  .principle-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .principle-card-wide{
    grid-column:auto;
  }
}

@media (max-width: 920px){
  .page-hero{
    padding-top:3.9rem;
  }

  .page-hero-copy h1{
    max-width:12ch;
  }

  .about-stage-grid,
  .audience-list{
    grid-template-columns:1fr;
  }

  .about-portrait-figure img{
    min-height:400px;
  }

  .about-quote-card p{
    font-size:1.25rem;
  }
}

@media (max-width: 760px){
  .page-hero{
    padding-top:3.2rem;
    padding-bottom:1.8rem;
  }

  .about-hero-facts,
  .principle-grid,
  .audience-list{
    grid-template-columns:1fr;
  }

  .about-hero-facts article,
  .principle-card,
  .audience-card{
    min-height:unset;
  }

  .about-stage,
  .about-anchor-nav,
  .about-final-panel{
    padding:1.2rem;
  }

  .about-portrait-figure img{
    min-height:340px;
  }

  .manifesto-grid::after{
    font-size:10rem;
    right:-.02em;
  }

  .signal-line{
    flex-direction:column;
  }

  .signal-line span{
    text-align:left;
  }
}


/* Final multi-page site enhancements */

[id]{
  scroll-margin-top:110px;
}

.site-nav > a.is-active:not(.button){
  color:var(--accent-dark);
}

.site-nav > a.is-active:not(.button)::after{
  transform:scaleX(1);
}

.section-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  margin-top:1.4rem;
}

.service-link{
  color:inherit;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.service-link:hover,
.service-link:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 20px 40px rgba(20,36,80,.11);
  border-color:var(--line-strong);
}

.anchor-nav{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
}

.anchor-nav a{
  display:inline-flex;
  align-items:center;
  min-height:2.9rem;
  padding:.72rem 1rem;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.88);
  box-shadow:var(--shadow-card);
  font-weight:700;
  color:#31405e;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.anchor-nav a:hover,
.anchor-nav a:focus-visible{
  transform:translateY(-2px);
  border-color:var(--line-strong);
  box-shadow:0 18px 34px rgba(20,36,80,.10);
}

.page-proof-grid{
  margin-top:2rem;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1rem;
}

.page-proof-grid article{
  padding:1rem 1.05rem;
  border-radius:20px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.page-proof-grid span{
  display:block;
  margin-bottom:.45rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
  font-weight:800;
  color:#5970b0;
}

.page-proof-grid strong{
  display:block;
  font-family:"Manrope","Inter",sans-serif;
  font-size:1rem;
  line-height:1.25;
  letter-spacing:-.025em;
}

/* Services page */

.service-anchor-section,
.contact-anchor-section{
  padding-top:1rem;
  padding-bottom:1rem;
}

.services-stage{
  position:relative;
  min-height:620px;
  padding:1.2rem;
  border-radius:38px;
  background:
    radial-gradient(circle at 0% 0%, rgba(47,99,232,.14), transparent 26%),
    radial-gradient(circle at 100% 0%, rgba(123,77,255,.10), transparent 24%),
    linear-gradient(180deg, rgba(245,248,255,.95), rgba(255,255,255,.92));
  border:1px solid rgba(204,216,237,.8);
  box-shadow:var(--shadow);
}

.services-stage-visual{
  margin:0 0 0 auto;
  width:72%;
  min-height:370px;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow-card);
  background:#fff;
}

.services-stage-visual img{
  width:100%;
  height:100%;
  min-height:370px;
  object-fit:cover;
}

.services-stage-card{
  position:absolute;
  left:1.2rem;
  bottom:1.2rem;
  width:min(420px, 52%);
  border-radius:28px;
  padding:1.35rem 1.35rem 1.45rem;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.services-stage-card h2,
.contact-stage-card h2{
  margin:.75rem 0 .7rem;
  font-family:"Manrope","Inter",sans-serif;
  font-size:1.45rem;
  line-height:1.14;
  letter-spacing:-.04em;
}

.services-stage-card p,
.contact-stage-card p{
  margin:0;
  color:var(--muted);
}

.services-stage-secondary{
  position:absolute;
  right:1.2rem;
  bottom:1.2rem;
  width:min(300px, 34%);
  min-height:190px;
  margin:0;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow-card);
  background:#fff;
}

.services-stage-secondary img{
  width:100%;
  height:100%;
  min-height:190px;
  object-fit:cover;
}

.service-overview-grid,
.engagement-grid,
.inquiry-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:1rem;
}

.service-overview-card,
.engagement-card,
.inquiry-card{
  border-radius:24px;
  padding:1.5rem;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.service-overview-card h3,
.engagement-card h3,
.inquiry-card h3{
  margin:1rem 0 .7rem;
  font-family:"Manrope","Inter",sans-serif;
  font-size:1.24rem;
  line-height:1.15;
  letter-spacing:-.035em;
}

.service-overview-card p,
.engagement-card p,
.inquiry-card p{
  margin:0;
  color:var(--muted);
}

.detail-grid,
.contact-page-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(330px, .88fr);
  gap:2rem;
  align-items:start;
}

.detail-grid{
  align-items:center;
}

.detail-grid-reverse{
  grid-template-columns:minmax(330px, .88fr) minmax(0, 1fr);
}

.detail-grid-reverse .detail-copy{
  order:2;
}

.detail-grid-reverse .detail-side{
  order:1;
}

.detail-checklist{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin-top:1.6rem;
}

.detail-checklist span,
.contact-pill-row span,
.interest-chip-grid span{
  display:inline-flex;
  align-items:center;
  min-height:2.8rem;
  padding:.72rem .95rem;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-card);
  color:#31405e;
  font-weight:700;
}

.detail-side{
  display:grid;
  gap:1rem;
}

.detail-figure{
  margin:0;
  min-height:320px;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow-card);
  background:#fff;
}

.detail-figure img{
  width:100%;
  height:100%;
  min-height:320px;
  object-fit:cover;
}

.detail-panel{
  border-radius:24px;
  padding:1.3rem 1.3rem 1.4rem;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.detail-panel-list{
  margin:.9rem 0 0;
  padding-left:1.1rem;
  color:var(--muted);
}

.detail-panel-list li + li{
  margin-top:.5rem;
}

.cta-panel{
  border-radius:32px;
  padding:1.8rem;
  display:grid;
  grid-template-columns:minmax(0, 1fr) max-content;
  gap:1.5rem;
  align-items:center;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.cta-panel-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:1rem;
}

/* Contact page */

.contact-pill-row{
  margin-top:2rem;
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
}

.contact-stage{
  position:relative;
  min-height:620px;
  padding:1.2rem;
  border-radius:38px;
  background:
    radial-gradient(circle at 0% 0%, rgba(47,99,232,.14), transparent 26%),
    radial-gradient(circle at 100% 0%, rgba(123,77,255,.10), transparent 24%),
    linear-gradient(180deg, rgba(245,248,255,.95), rgba(255,255,255,.92));
  border:1px solid rgba(204,216,237,.8);
  box-shadow:var(--shadow);
}

.contact-stage-portrait{
  width:min(300px, 44%);
  min-height:370px;
  margin:0;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow-card);
  background:#fff;
}

.contact-stage-portrait img{
  width:100%;
  height:100%;
  min-height:370px;
  object-fit:cover;
}

.contact-stage-card{
  position:absolute;
  right:1.2rem;
  top:1.2rem;
  width:min(420px, 52%);
  border-radius:28px;
  padding:1.35rem 1.35rem 1.45rem;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.contact-stage-links{
  display:grid;
  gap:.6rem;
  margin-top:1rem;
}

.contact-stage-links a{
  font-weight:700;
  color:var(--accent);
}

.contact-stage-visual{
  position:absolute;
  right:1.2rem;
  bottom:1.2rem;
  width:min(360px, 42%);
  min-height:220px;
  margin:0;
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow-card);
  background:#fff;
}

.contact-stage-visual img{
  width:100%;
  height:100%;
  min-height:220px;
  object-fit:cover;
}

.contact-form-page h2,
.contact-side-card h2{
  margin:0;
  font-family:"Manrope","Inter",sans-serif;
  font-size:1.8rem;
  line-height:1.08;
  letter-spacing:-.04em;
}

.contact-form-page > p,
.contact-side-card > p{
  margin:.8rem 0 0;
  color:var(--muted);
}

.contact-side-stack{
  display:grid;
  gap:1rem;
}

.contact-side-card{
  border-radius:28px;
  padding:1.45rem 1.4rem 1.5rem;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.contact-detail-stack{
  display:grid;
  gap:.9rem;
  margin-top:1.3rem;
}

.contact-detail-stack a{
  display:flex;
  flex-direction:column;
  gap:.25rem;
  padding:1rem 1.05rem;
  border-radius:20px;
  background:rgba(246,249,255,.92);
  border:1px solid var(--line);
}

.contact-detail-stack strong{
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#4c63a8;
}

.contact-detail-stack span{
  font-family:"Manrope","Inter",sans-serif;
  font-weight:700;
  letter-spacing:-.03em;
}

.interest-chip-grid{
  margin-top:1rem;
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
}

.expectation-list{
  margin-top:1rem;
  display:grid;
  gap:1rem;
}

.expectation-step{
  display:grid;
  grid-template-columns:3.2rem 1fr;
  gap:.9rem;
  align-items:start;
}

.expectation-step strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:3rem;
  border-radius:999px;
  background:var(--accent-soft);
  color:var(--accent);
  font-weight:800;
  letter-spacing:.12em;
}

.expectation-step h3{
  margin:0 0 .35rem;
  font-family:"Manrope","Inter",sans-serif;
  font-size:1.1rem;
  letter-spacing:-.03em;
}

.expectation-step p{
  margin:0;
  color:var(--muted);
}

.quiet-cta-panel{
  border-radius:32px;
  padding:1.6rem 1.8rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem 1.5rem;
  background:rgba(255,255,255,.95);
  border:1px solid rgba(214,223,239,.92);
  box-shadow:var(--shadow-card);
}

.quiet-cta-copy h2{
  margin:.75rem 0 0;
  font-family:"Manrope","Inter",sans-serif;
  font-size:clamp(1.9rem, 3.2vw, 2.8rem);
  line-height:1.08;
  letter-spacing:-.045em;
}

/* Thank-you page */

.thank-you-layout-centered{
  grid-template-columns:minmax(0, 760px);
  justify-content:center;
}

.thank-you-page .thank-you-panel{
  text-align:center;
}

/* Responsive additions */

@media (max-width: 1180px){
  .detail-grid,
  .detail-grid-reverse,
  .contact-page-grid,
  .cta-panel{
    grid-template-columns:1fr;
  }

  .detail-grid-reverse .detail-copy,
  .detail-grid-reverse .detail-side{
    order:initial;
  }

  .page-proof-grid,
  .service-overview-grid,
  .engagement-grid,
  .inquiry-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .services-stage,
  .contact-stage{
    min-height:unset;
  }

  .services-stage-card,
  .services-stage-secondary,
  .contact-stage-card,
  .contact-stage-visual{
    position:relative;
    right:auto;
    left:auto;
    top:auto;
    bottom:auto;
    width:100%;
    margin-top:1rem;
  }

  .services-stage-visual,
  .contact-stage-portrait{
    width:100%;
  }

  .cta-panel-actions{
    justify-content:flex-start;
  }
}

@media (max-width: 920px){
  .page-proof-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 760px){
  .anchor-nav,
  .contact-pill-row,
  .detail-checklist,
  .interest-chip-grid{
    flex-direction:column;
    align-items:stretch;
  }

  .service-overview-grid,
  .engagement-grid,
  .inquiry-grid{
    grid-template-columns:1fr;
  }

  .cta-panel,
  .quiet-cta-panel{
    padding:1.4rem;
  }

  .quiet-cta-panel{
    align-items:flex-start;
    flex-direction:column;
  }

  .contact-stage-portrait img{
    min-height:300px;
  }

  .services-stage-visual img,
  .detail-figure img,
  .contact-stage-visual img{
    min-height:250px;
  }

  .expectation-step{
    grid-template-columns:1fr;
  }
}
