:root{
  --bg:#f7f9ff;
  --bg-soft:#eef4ff;
  --surface:#ffffff;
  --surface-2:#f2f6ff;
  --text:#0b1733;
  --muted:#56627f;
  --line:#dfe7fb;
  --line-strong:#cad6fb;
  --accent:#5d74ff;
  --accent-2:#8de0ff;
  --accent-3:#7f8fff;
  --shadow:0 28px 60px rgba(18,33,79,.12);
  --shadow-soft:0 16px 38px rgba(18,33,79,.08);
  --radius-xl:32px;
  --radius-lg:24px;
  --radius-md:18px;
  --radius-sm:14px;
  --container:1200px;
}

*,
*::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 top left, rgba(126,144,255,.14), transparent 34%),
    radial-gradient(circle at top right, rgba(141,224,255,.2), transparent 28%),
    linear-gradient(180deg, #fbfcff 0%, var(--bg) 36%, #ffffff 100%);
  line-height:1.65;
}

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:var(--surface);
  padding:.8rem 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{
  padding:5.75rem 0;
  position:relative;
}

.section-soft{
  background:
    radial-gradient(circle at 80% 0%, rgba(138,225,255,.18), transparent 28%),
    linear-gradient(180deg, rgba(242,246,255,.85), rgba(247,249,255,.35));
}

.section-kicker,
.eyebrow{
  display:inline-block;
  color:#4b65b6;
  font-size:.88rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  margin-bottom:1.35rem;
}

.eyebrow-chip,
.card-chip{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.55rem .85rem;
  border-radius:999px;
  border:1px solid rgba(93,116,255,.18);
  background:rgba(255,255,255,.8);
  color:#405ac1;
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  backdrop-filter:blur(10px);
}

.card-chip{
  font-size:.72rem;
  letter-spacing:.12em;
  background:rgba(255,255,255,.88);
}

.section-heading{
  max-width:780px;
  margin-bottom:2.4rem;
}
.section-heading h2,
.story-copy h2,
.panel-card h2,
.proof-copy h2,
.cta-copy h2,
.blank-shell h1{
  margin:.75rem 0 1rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:clamp(2.2rem, 4vw, 3.45rem);
  line-height:1.08;
  letter-spacing:-.04em;
}

.section-heading p,
.story-copy p,
.proof-copy p,
.panel-card p,
.cta-copy p,
.blank-shell p{
  color:var(--muted);
  font-size:1.05rem;
  margin:0;
}

.site-header{
  position:sticky;
  top:0;
  z-index:80;
  padding:1rem 0;
  transition:padding .25s ease, background .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.site-header::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(251,252,255,.64);
  backdrop-filter:blur(18px);
  border-bottom:1px solid transparent;
  transition:inherit;
  z-index:-1;
}

.site-header.is-scrolled{
  padding:.7rem 0;
}
.site-header.is-scrolled::before{
  background:rgba(255,255,255,.78);
  box-shadow:0 10px 40px rgba(19,37,86,.07);
  border-color:rgba(198,210,245,.72);
}

.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{
  flex:none;
  width:2.75rem;
  height:2.75rem;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%);
  color:#fff;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.22rem;
  font-weight:800;
  box-shadow:0 12px 28px rgba(93,116,255,.28);
}

.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:#5c6887;
  font-size:.73rem;
  line-height:1.35;
}

.site-nav{
  display:flex;
  align-items:center;
  gap:1.4rem;
}
.site-nav > a:not(.button){
  color:#31415d;
  font-weight:600;
  position:relative;
}
.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), var(--accent-2));
  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)}

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

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

.button-primary{
  color:#fff;
  background:linear-gradient(135deg, var(--accent) 0%, #80afff 50%, var(--accent-2) 100%);
  box-shadow:0 14px 32px rgba(93,116,255,.28);
}

.button-secondary{
  color:var(--text);
  background:rgba(255,255,255,.85);
  border-color:var(--line-strong);
  box-shadow:var(--shadow-soft);
}

.button-secondary:hover,
.button-secondary:focus-visible{
  border-color:#b8c7f8;
  background:#fff;
}

.menu-toggle{
  display:none;
  width:3rem;
  height:3rem;
  border:1px solid var(--line);
  border-radius:1rem;
  background:rgba(255,255,255,.9);
  box-shadow:var(--shadow-soft);
  padding:0;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:.28rem;
  cursor:pointer;
}
.menu-toggle span{
  width:1.15rem;
  height:2px;
  background:var(--text);
  border-radius:99px;
  transition:transform .2s ease, opacity .2s ease;
}

.hero{
  padding-top:7rem;
}

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

.hero-copy h1{
  margin:.9rem 0 1rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:clamp(3rem, 6vw, 5.55rem);
  line-height:.95;
  letter-spacing:-.06em;
}
.hero-copy h1 span{
  color:#405ac1;
  display:block;
}
.hero-intro{
  max-width:43rem;
  margin:0;
  color:var(--muted);
  font-size:1.12rem;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
  margin:1.8rem 0 1.7rem;
}

.hero-mini-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.mini-stat{
  padding:1.15rem 1rem;
  border-radius:22px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(202,214,251,.75);
  box-shadow:var(--shadow-soft);
}
.mini-stat strong{
  display:block;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:2rem;
  line-height:1;
  letter-spacing:-.04em;
}
.mini-stat span:last-child{
  display:block;
  margin-top:.35rem;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.4;
}

.trust-note{
  display:flex;
  align-items:flex-start;
  gap:.8rem;
  margin-top:1.35rem;
  max-width:38rem;
}
.trust-note p{
  margin:0;
  color:#425172;
}
.trust-dot{
  width:.8rem;
  height:.8rem;
  flex:none;
  margin-top:.45rem;
  border-radius:999px;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  box-shadow:0 0 0 7px rgba(93,116,255,.08);
}

.hero-collage{
  position:relative;
  min-height:42rem;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-template-rows:repeat(6,1fr);
  gap:1rem;
}

.collage-card{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(207,217,245,.76);
  background:#fff;
  box-shadow:var(--shadow);
}
.collage-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.collage-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 55%, rgba(10,22,51,.22) 100%);
  pointer-events:none;
}
.collage-caption{
  position:absolute;
  left:1.1rem;
  right:1.1rem;
  bottom:1.1rem;
  color:#fff;
  z-index:2;
}
.collage-caption h3{
  margin:.6rem 0 0;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.2rem;
  line-height:1.15;
  letter-spacing:-.04em;
}

.collage-portrait{
  grid-column:1 / span 3;
  grid-row:1 / span 5;
}
.collage-dashboard{
  grid-column:4 / span 3;
  grid-row:1 / span 2;
}
.collage-governance{
  grid-column:4 / span 2;
  grid-row:3 / span 4;
}
.collage-architecture{
  grid-column:6 / span 1;
  grid-row:3 / span 4;
}

.floating-insight{
  position:absolute;
  left:1rem;
  right:5rem;
  bottom:-1.1rem;
  padding:1rem 1.15rem;
  border-radius:24px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(202,214,251,.85);
  backdrop-filter:blur(16px);
  box-shadow:0 22px 45px rgba(18,33,79,.12);
}
.floating-insight p{
  margin:.55rem 0 0;
  color:#41506f;
  font-size:.98rem;
  line-height:1.55;
}

.logo-rail{
  padding:1.1rem 0 0;
}
.logo-track{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:1rem;
}
.logo-track span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:5rem;
  padding:1rem;
  border-radius:22px;
  text-align:center;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(202,214,251,.78);
  box-shadow:var(--shadow-soft);
  color:#2a3c60;
  font-weight:700;
  letter-spacing:-.02em;
}

.story-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.94fr);
  gap:2.5rem;
  align-items:center;
}

.story-points{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-top:1.8rem;
}
.story-points article{
  padding:1.15rem;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(208,216,241,.8);
  box-shadow:var(--shadow-soft);
}
.story-points strong,
.outcome-stack strong,
.contact-detail-grid strong{
  display:block;
  margin-bottom:.35rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.05rem;
  letter-spacing:-.03em;
}
.story-points p,
.outcome-stack p,
.contact-detail-grid span{
  margin:0;
  color:var(--muted);
  font-size:.95rem;
  line-height:1.55;
}

.story-visual{
  position:relative;
}
.feature-frame{
  overflow:hidden;
  border-radius:32px;
  border:1px solid rgba(208,216,241,.85);
  box-shadow:var(--shadow);
  background:#fff;
}
.feature-frame img{
  aspect-ratio:1.02 / 1;
  object-fit:cover;
}
.story-note-card{
  position:absolute;
  right:1.25rem;
  bottom:-1.5rem;
  width:min(22rem, 78%);
  padding:1.2rem 1.25rem;
  border-radius:28px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(202,214,251,.88);
  box-shadow:0 20px 42px rgba(18,33,79,.14);
  backdrop-filter:blur(16px);
}
.story-note-card ul{
  margin:.65rem 0 0;
  padding-left:1.1rem;
  color:#41506f;
}
.story-note-card li + li{margin-top:.5rem}

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

.service-card{
  position:relative;
  padding:1.35rem 1.2rem 1.25rem;
  background:#fff;
  border:1px solid rgba(204,214,243,.9);
  border-radius:28px;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.service-card::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:8px;
  background:linear-gradient(90deg, rgba(93,116,255,.95), rgba(141,224,255,.95));
}
.service-index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:2.3rem;
  height:2.3rem;
  border-radius:999px;
  background:var(--surface-2);
  color:#435ec4;
  font-size:.85rem;
  font-weight:800;
}
.service-icon{
  width:3.4rem;
  height:3.4rem;
  display:grid;
  place-items:center;
  margin:1rem 0 1rem;
  border-radius:1.1rem;
  background:linear-gradient(135deg, rgba(93,116,255,.12), rgba(141,224,255,.22));
}
.service-icon svg{
  width:1.7rem;
  height:1.7rem;
  fill:var(--text);
}
.service-card h3{
  margin:0 0 .75rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.32rem;
  line-height:1.08;
  letter-spacing:-.04em;
}
.service-card p{
  margin:0 0 1rem;
  color:var(--muted);
  font-size:.97rem;
}
.service-card ul{
  margin:0;
  padding-left:1.05rem;
  color:#334261;
}
.service-card li + li{margin-top:.45rem}

.example-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr .95fr;
  gap:1rem;
}
.example-card{
  position:relative;
  min-height:25rem;
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(207,217,245,.8);
  box-shadow:var(--shadow);
  background:#fff;
}
.example-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.example-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(10,22,51,0) 28%, rgba(10,22,51,.65) 100%);
}
.example-card-tall{
  min-height:34rem;
}
.example-copy{
  position:absolute;
  left:1.2rem;
  right:1.2rem;
  bottom:1.1rem;
  color:#fff;
  z-index:2;
}
.example-copy h3{
  margin:.7rem 0 .55rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.55rem;
  line-height:1.05;
  letter-spacing:-.04em;
}
.example-copy p{
  margin:0;
  color:rgba(255,255,255,.88);
  max-width:26rem;
}

.proof-layout{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:1.2rem;
  align-items:start;
}
.proof-feature{
  display:grid;
  gap:1.1rem;
}
.proof-image{
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(207,217,245,.8);
  box-shadow:var(--shadow);
  background:#fff;
}
.proof-image img{
  aspect-ratio:1.04 / .94;
  object-fit:cover;
}
.proof-copy{
  padding:1.3rem 1.35rem;
  border-radius:28px;
  border:1px solid rgba(207,217,245,.82);
  background:rgba(255,255,255,.85);
  box-shadow:var(--shadow-soft);
}
.proof-copy .button{margin-top:1.1rem}

.proof-list{
  display:grid;
  gap:1rem;
}
.proof-card{
  display:block;
  padding:1.15rem 1.2rem;
  border-radius:24px;
  border:1px solid rgba(206,215,241,.85);
  background:#fff;
  box-shadow:var(--shadow-soft);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.proof-card:hover,
.proof-card:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 22px 44px rgba(18,33,79,.12);
  border-color:#bfcdf7;
}
.proof-card h3{
  margin:.65rem 0 .35rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.22rem;
  line-height:1.15;
  letter-spacing:-.04em;
}
.proof-card p{
  margin:0;
  color:var(--muted);
}

.split-panel{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.2rem;
}
.panel-card{
  padding:1.45rem 1.35rem;
  background:#fff;
  border-radius:30px;
  border:1px solid rgba(205,214,241,.85);
  box-shadow:var(--shadow-soft);
}
.chip-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1.45rem;
}
.chip-cloud span{
  padding:.72rem 1rem;
  border-radius:999px;
  background:var(--surface-2);
  border:1px solid #dce5fd;
  color:#2f466e;
  font-weight:600;
}
.outcome-stack{
  display:grid;
  gap:.85rem;
  margin-top:1rem;
}
.outcome-stack article{
  padding:1rem 1rem;
  border-radius:20px;
  background:linear-gradient(180deg, rgba(241,246,255,.95), rgba(255,255,255,.95));
  border:1px solid rgba(207,217,245,.8);
}

.resource-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1rem;
}
.resource-card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:.65rem;
  min-height:10rem;
  padding:1.15rem;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(206,215,241,.88);
  box-shadow:var(--shadow-soft);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.resource-card:hover,
.resource-card:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 20px 40px rgba(18,33,79,.11);
  border-color:#bfd0fb;
}
.resource-card strong{
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.1rem;
  line-height:1.15;
  letter-spacing:-.03em;
}
.resource-card span{
  color:var(--muted);
  font-size:.95rem;
  line-height:1.5;
}

.cta-section{
  padding-bottom:6.5rem;
}
.cta-layout{
  display:grid;
  grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
  gap:1.2rem;
  align-items:start;
}
.contact-detail-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-top:1.5rem;
}
.contact-detail-grid article{
  padding:1rem;
  border-radius:22px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(208,216,241,.86);
  box-shadow:var(--shadow-soft);
}
.contact-detail-grid a{
  color:#435ec4;
  font-weight:600;
}

.contact-form{
  padding:1.4rem;
  border-radius:30px;
  background:#fff;
  border:1px solid rgba(206,215,241,.88);
  box-shadow:var(--shadow);
}
.contact-form h3{
  margin:0 0 1rem;
  font-family:"Manrope", "Inter", sans-serif;
  font-size:1.7rem;
  line-height:1.08;
  letter-spacing:-.04em;
}
.form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.form-grid label{
  display:grid;
  gap:.5rem;
}
.form-grid label span{
  font-size:.92rem;
  font-weight:700;
  color:#354667;
}
.full-width{grid-column:1 / -1}

input,
select,
textarea{
  width:100%;
  border:1px solid #d6e0fb;
  border-radius:18px;
  background:#fbfcff;
  padding:1rem 1rem;
  color:var(--text);
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
textarea{resize:vertical}
input:focus,
select:focus,
textarea:focus{
  outline:none;
  border-color:#90a5ff;
  box-shadow:0 0 0 4px rgba(93,116,255,.12);
  background:#fff;
}
.form-note{
  margin:1rem 0 1.2rem;
  color:var(--muted);
  font-size:.93rem;
}

.site-footer{
  padding:2.3rem 0 1.8rem;
  border-top:1px solid rgba(208,216,241,.85);
  background:linear-gradient(180deg, rgba(248,250,255,.84), rgba(255,255,255,.96));
}
.footer-shell{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:1.3rem;
}
.footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:1rem 1.3rem;
}
.footer-links a{
  color:#445472;
  font-weight:600;
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  margin-top:1.45rem;
  padding-top:1.25rem;
  border-top:1px solid rgba(208,216,241,.8);
  color:#5f6d89;
  font-size:.92rem;
}

.blank-page{
  min-height:calc(100vh - 10rem);
  display:grid;
  align-items:center;
}
.blank-shell{
  max-width:46rem;
  padding:2.2rem;
  background:rgba(255,255,255,.88);
  border-radius:34px;
  border:1px solid rgba(204,214,243,.86);
  box-shadow:var(--shadow);
}
.blank-shell .button{margin-top:1.2rem}

.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .65s ease, transform .65s ease;
}
.reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:3px solid rgba(93,116,255,.25);
  outline-offset:3px;
}

@media (max-width: 1100px){
  .hero-layout,
  .story-layout,
  .proof-layout,
  .cta-layout,
  .split-panel{
    grid-template-columns:1fr;
  }

  .hero-collage{
    min-height:36rem;
  }

  .service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

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

  .story-points{
    grid-template-columns:1fr;
  }

  .contact-detail-grid{
    grid-template-columns:1fr;
  }

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

@media (max-width: 860px){
  .menu-toggle{
    display:flex;
  }

  .site-nav{
    position:absolute;
    top:calc(100% + .8rem);
    left:1rem;
    right:1rem;
    flex-direction:column;
    align-items:stretch;
    gap:.35rem;
    padding:.75rem;
    border-radius:24px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(202,214,251,.9);
    box-shadow:var(--shadow);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px);
    transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
  }
  .site-nav.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .site-nav > a:not(.button){
    padding:.85rem 1rem;
    border-radius:16px;
  }
  .site-nav > a:not(.button):hover,
  .site-nav > a:not(.button):focus-visible{
    background:var(--surface-2);
  }
  .site-nav > a:not(.button)::after{display:none}
  .nav-button{margin-top:.35rem}

  .brand-tag{
    display:none;
  }

  .hero{
    padding-top:6rem;
  }

  .hero-mini-grid,
  .example-grid,
  .resource-grid{
    grid-template-columns:1fr;
  }

  .hero-collage{
    min-height:29rem;
  }
  .collage-portrait{
    grid-column:1 / span 3;
    grid-row:1 / span 4;
  }
  .collage-dashboard{
    grid-column:4 / span 3;
    grid-row:1 / span 2;
  }
  .collage-governance{
    grid-column:4 / span 3;
    grid-row:3 / span 2;
  }
  .collage-architecture{
    display:none;
  }
  .floating-insight{
    position:static;
    margin-top:1rem;
    width:100%;
  }

  .service-grid{
    grid-template-columns:1fr;
  }

  .footer-shell,
  .footer-bottom{
    flex-direction:column;
  }
}

@media (max-width: 640px){
  .section{
    padding:4.5rem 0;
  }
  .hero-copy h1{
    font-size:clamp(2.55rem, 13vw, 4rem);
  }
  .hero-mini-grid{
    grid-template-columns:1fr;
  }
  .logo-track{
    grid-template-columns:1fr 1fr;
  }
  .hero-collage{
    min-height:24rem;
    grid-template-columns:repeat(2,1fr);
    grid-template-rows:auto;
  }
  .collage-portrait,
  .collage-dashboard,
  .collage-governance{
    grid-column:auto;
    grid-row:auto;
    min-height:13rem;
  }
  .story-note-card{
    position:static;
    width:100%;
    margin-top:1rem;
  }
  .panel-card,
  .contact-form,
  .blank-shell{
    padding:1.25rem;
  }
  .form-grid{
    grid-template-columns:1fr;
  }
  .logo-track span{
    min-height:4.4rem;
    font-size:.92rem;
  }
}
