/* Root64 executive design correction — controlled type, spacing and imagery. */
:root{
  --shell:1240px;
  --gutter:clamp(1.25rem,3.5vw,3rem);
  --r:10px;
}
body{font-size:16px;line-height:1.65}
h1{font-size:clamp(2.5rem,4.6vw,4rem);line-height:1.08;letter-spacing:-.045em}
h2{font-size:clamp(2rem,3.3vw,2.875rem);line-height:1.14;letter-spacing:-.035em}
h3{font-size:clamp(1.25rem,1.8vw,1.55rem);line-height:1.25}
.band{padding-block:clamp(4rem,6.5vw,5.5rem)}
.band--tight{padding-block:clamp(3rem,5vw,4rem)}
.sec-head{max-width:720px;margin-bottom:36px}
.sec-head h2{max-width:22ch}
.mark{font-size:.75rem;line-height:1.5;letter-spacing:.1em;margin-bottom:18px}
.lede,.page-head p,.article p{font-size:1.0625rem}
.card{padding:26px}
.card--feature{min-height:330px;padding:28px}
.btn{min-height:48px;padding:14px 20px;font-size:.875rem}

/* Compact and balanced navigation. */
.masthead__inner{min-height:78px;gap:22px}
.brand-symbol{width:44px;height:44px;transform:scale(1.12)}
.brand-lockup{gap:10px}
.brand-wordmark{font-size:28px;letter-spacing:-1.5px}
.brand-wordmark small{font-size:7.5px;line-height:1.25;letter-spacing:1.15px;margin-top:6px;max-width:220px}
.nav>a{font-size:.8125rem;padding:10px 9px}
.nav__urgent{font-size:.6875rem!important;padding:10px 13px!important}
.nav>.nav__cta{min-height:44px;padding:11px 17px;margin-left:8px;font-size:.6875rem}

/* Homepage: editorial scale instead of a full-screen poster. */
.route-home .hero{min-height:auto;display:block;padding:0}
.hero__shell{padding-top:68px}
.route-home .hero__grid{grid-template-columns:minmax(0,1.12fr) minmax(300px,.72fr);gap:clamp(36px,6vw,72px);align-items:center}
.hero__copy{padding-bottom:18px}
.hero__status{font-size:.75rem;margin-bottom:22px;padding:7px 11px}
.route-home .hero .mark{font-size:.75rem;margin-bottom:18px}
.route-home .hero h1{font-size:clamp(3rem,5.2vw,4.75rem);line-height:1.02;letter-spacing:-.055em;max-width:11ch;margin-bottom:22px}
.route-home .hero__accent{font-style:normal;font-weight:650}
.route-home .hero__lede{font-size:1.0625rem;line-height:1.7;max-width:54ch}
.route-home .hero .btn-row{margin-top:26px}
.hero__micro{margin-top:22px;font-size:.75rem;line-height:1.5;gap:10px 20px}
.hero__scan{width:460px;right:3%;top:10%;opacity:.55;box-shadow:0 0 0 52px #8b5cf608,0 0 0 104px #23d5e705}

/* Amit portrait: one calm editorial card, without the oversized portal effect. */
.hero-portrait{min-height:430px;align-self:center;align-items:center;margin:0;padding:34px 20px 26px}
.hero-portrait:before{width:320px;height:320px;aspect-ratio:auto;bottom:auto;border-radius:18px;background:linear-gradient(145deg,#16243e,#29154a);box-shadow:0 24px 70px #0008;transform:rotate(3deg)}
.hero-portrait__orbit{width:340px;height:340px;aspect-ratio:auto;bottom:auto;border-radius:20px;border:1px solid #8b5cf64a;box-shadow:none;transform:rotate(-2deg)}
.hero-portrait__orbit:before{inset:14px;border-radius:14px;border:1px dashed #23d5e733}
.hero-portrait__orbit:after,.hero-portrait__orbit i{display:none}
.hero-portrait .image-frame{width:286px;margin:0;overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 18px 55px #0009;transform:none}
.hero-portrait .image-slot{width:100%;height:auto;aspect-ratio:255/261;object-fit:cover;border:0;border-radius:14px;box-shadow:none}
.hero-portrait__identity{right:0;bottom:25px;min-width:250px;padding:12px 15px;border-radius:7px}
.hero-portrait__identity strong{font-size:1rem}
.hero-portrait__identity span{font-size:.75rem}
.route-home .hero__strip{margin-top:34px}
.route-home .hero__strip>div{padding:22px 20px 24px 0}
.route-home .hero__strip>div+div{padding-left:20px}
.proof-index{font-size:.75rem;margin-bottom:12px}
.hero__strip dt{font-size:.9375rem}
.hero__strip dd{font-size:.8125rem}
.signal-rail{min-height:62px;font-size:.75rem;letter-spacing:.09em}

/* Homepage content: remove the oversized exhibition-panel proportions. */
.coverage-stage{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:48px}
.coverage-stage__visual{position:static;min-height:560px;padding:36px}
.coverage-stage__visual:before{inset:14px}
.coverage-stage__copy h2{font-size:clamp(2.5rem,4vw,3.5rem);max-width:10ch}
.coverage-stage__copy p{font-size:1rem}
.coverage-stage .orbit-visual{height:290px;margin-top:26px;border-radius:10px}
.coverage-stage .orbit-visual img{transform:scale(1.05)}
.coverage-stage__status,.coverage-row__number{font-size:.75rem}
.coverage-row{grid-template-columns:34px 54px 1fr 20px;gap:18px;min-height:138px;padding:25px 16px}
.coverage-row__icon{width:50px;height:50px}
.coverage-row h3{font-size:1.25rem;margin-bottom:7px}
.coverage-row p{font-size:.9375rem;line-height:1.6}
.deliverable-card{min-height:280px}
.speaker-teaser--visual{min-height:390px}

/* Inner-page introductions use the same predictable hierarchy. */
.page-head{padding:26px 0 58px}
.page-head__grid{grid-template-columns:minmax(0,1fr) 160px;gap:48px}
.page-head h1,.route-amit-dubey .page-head h1{font-size:clamp(2.75rem,4.8vw,4.25rem);margin-bottom:18px}
.page-head p{line-height:1.7}
.page-head__brand{padding:11px}

/* Speaker page: professional biography, not an oversized event poster. */
.speaker-hero{min-height:580px;padding-block:58px}
.speaker-hero__grid{grid-template-columns:minmax(0,1fr) 350px;gap:clamp(40px,6vw,76px)}
.speaker-kicker{font-size:.75rem;margin-bottom:24px}
.speaker-hero h1{font-size:clamp(3.75rem,6.2vw,5.4rem);line-height:.92;letter-spacing:-.06em;margin-bottom:24px}
.speaker-hero h1 em{display:inline;font-style:normal;font-weight:540;margin-left:.12em}
.speaker-hero p{font-size:1.0625rem;line-height:1.7;max-width:50ch}
.speaker-hero__facts{margin-top:24px}
.speaker-hero__facts span{font-size:.75rem;padding:7px 11px}
.speaker-portrait{min-height:380px;padding:30px 18px}
.speaker-portrait__orbit{width:320px;height:320px;aspect-ratio:auto;border-radius:18px;box-shadow:none;transform:rotate(-2deg)}
.speaker-portrait__orbit:before{inset:12px;border-radius:13px}
.speaker-portrait .image-frame{width:270px;overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 18px 55px #0009}
.speaker-portrait .image-slot{width:100%;height:auto;aspect-ratio:255/261;object-fit:cover;border:0;border-radius:14px;box-shadow:none}
.speaker-portrait__label{right:0;bottom:18px;font-size:.75rem;padding:8px 11px}
.speaker-intro__grid{grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);gap:clamp(48px,7vw,88px)}
.speaker-bio h2{font-size:clamp(2.5rem,4vw,3.5rem);max-width:15ch}
.speaker-bio p{font-size:1.0625rem}
.speaker-credentials{top:108px}
.speaker-credentials .scope{border-radius:14px;padding:32px;background:#f4f0f9}
.speaker-topic-grid{gap:16px}
.speaker-topic{min-height:300px;padding:28px}
.speaker-topic__icon{width:62px;height:62px;margin-bottom:32px}
.speaker-topic h3{font-size:1.3rem}
.speaker-topic p{font-size:.9375rem}
.speaker-stage-band{min-height:460px}
.speaker-stage-band__copy{padding-bottom:54px}
.speaker-stage-band h2{font-size:clamp(2.75rem,4.5vw,4rem);max-width:12ch}
.speaker-stage-band p{font-size:1.0625rem;max-width:56ch}
.booking-panel{padding:clamp(28px,4vw,44px)}

@media(max-width:1050px){
  .masthead__inner{min-height:74px}
  .route-home .hero__grid{grid-template-columns:minmax(0,1fr) 310px;gap:28px}
  .route-home .hero h1{font-size:clamp(2.8rem,6vw,4.15rem)}
  .hero-portrait{min-height:390px}
  .hero-portrait:before{width:280px;height:280px}
  .hero-portrait__orbit{width:300px;height:300px}
  .hero-portrait .image-frame{width:250px}
  .coverage-stage{grid-template-columns:1fr}
  .coverage-stage__visual{min-height:auto}
  .speaker-hero__grid{grid-template-columns:minmax(0,1fr) 300px;gap:32px}
  .speaker-portrait__orbit{width:280px;height:280px}
  .speaker-portrait .image-frame{width:235px}
}

@media(max-width:700px){
  body{font-size:16px}
  h1{font-size:2.5rem}
  h2{font-size:2rem}
  .band{padding-block:3.75rem}
  .masthead__inner{min-height:68px}
  .brand-symbol{width:40px;height:40px}
  .brand-wordmark{font-size:25px}
  .brand-wordmark small{font-size:7px;max-width:180px}
  .hero__shell{padding-top:48px}
  .route-home .hero__grid{grid-template-columns:1fr;gap:22px}
  .route-home .hero h1{font-size:clamp(2.75rem,13vw,3.6rem);line-height:1.02;max-width:10ch}
  .route-home .hero__lede{font-size:1rem}
  .hero__micro{font-size:.75rem}
  .hero-portrait{min-height:350px;margin-top:0;padding:18px 10px 42px}
  .hero-portrait:before{width:248px;height:248px}
  .hero-portrait__orbit{width:268px;height:268px;bottom:auto}
  .hero-portrait .image-frame{width:220px;margin:0}
  .hero-portrait__identity{left:50%;right:auto;bottom:8px;min-width:245px;transform:translateX(-50%)}
  .route-home .hero__strip{grid-template-columns:1fr 1fr;margin-top:24px}
  .route-home .hero__strip>div{padding:18px 12px 20px 0}
  .route-home .hero__strip>div+div{padding-left:12px}
  .signal-rail{justify-content:flex-start;overflow:auto;padding-inline:20px;min-height:58px}
  .coverage-stage__visual{padding:28px 22px}
  .coverage-stage__copy h2{font-size:2.5rem}
  .coverage-stage .orbit-visual{height:250px;border-radius:8px}
  .coverage-row{grid-template-columns:28px 44px 1fr;gap:12px;min-height:auto;padding:22px 4px}
  .coverage-row__icon{width:42px;height:42px}
  .page-head{padding:34px 0 48px}
  .page-head h1,.route-amit-dubey .page-head h1{font-size:2.75rem}
  .speaker-hero{min-height:auto;padding-block:48px}
  .speaker-hero__grid{grid-template-columns:1fr;gap:22px}
  .speaker-hero h1{font-size:3.6rem;line-height:.95}
  .speaker-portrait{min-height:320px;margin-top:0;padding:16px 8px 34px}
  .speaker-portrait__orbit{width:250px;height:250px}
  .speaker-portrait .image-frame{width:210px}
  .speaker-portrait__label{right:50%;bottom:0;transform:translateX(50%)}
  .speaker-intro__grid{grid-template-columns:1fr;gap:40px}
  .speaker-bio h2{font-size:2.45rem}
  .speaker-credentials .scope{padding:26px;border-radius:12px}
  .speaker-stage-band{min-height:390px}
  .speaker-stage-band h2{font-size:2.75rem}
}

/* Final Root64 cross-page type and media guardrails. */
:is(.about-manifesto__copy,.evidence-cases__head,.training-gallery__head,.trust-site__grid>div:first-child,.insights-feature__copy,.insights-journal__head,.services-catalog__head,.service-opening__copy,.service-process__head) h2{
  font-size:clamp(2.25rem,3.8vw,3.5rem);
  line-height:1.12;
}
.contact-command__overlay h2,.training-stage__content h2,.training-speaker__copy h2{
  font-size:clamp(2.75rem,4.6vw,4.25rem);
  line-height:1.06;
}
:is(.orbit-label,.coverage-card__icon span,.deliverable-card__ring span,.speaker-topic>span,.page-head__brand small,.about-manifesto__badge,.about-principle>span,.about-method__grid span,.about-method__grid small,.contact-command__status,.contact-channels dt,.evidence-note__panel span,.evidence-case__visual>span,.evidence-delivery__visual span,.faq-command__nav a span,.faq-group__head>span,.faq-group__head small,.legal-command__seal span,.legal-command__meta,.legal-section>span,.training-stage__modes span,.training-format>div>span,.training-format small,.trust-handling__visual span,.trust-control-list article>span,.insights-feature__visual span,.article-signal__grid span,.article-signal__grid small,.insight-reading__marker span,.services-scoping__visual span,.service-opening__status,.insight-card__edition){
  font-size:.75rem;
  line-height:1.5;
}
.contact-command__visual{min-height:620px}
.evidence-delivery__visual{height:480px;border-radius:16px}
.training-stage{min-height:520px}
.training-speaker__panel{min-height:500px}
.trust-handling__visual{height:520px;border-radius:16px}

@media(max-width:700px){
  :is(.about-manifesto__copy,.evidence-cases__head,.training-gallery__head,.trust-site__grid>div:first-child,.insights-feature__copy,.insights-journal__head,.services-catalog__head,.service-opening__copy,.service-process__head) h2{font-size:2.25rem}
  .contact-command__overlay h2,.training-stage__content h2,.training-speaker__copy h2{font-size:2.75rem}
  .contact-command__visual{min-height:500px}
  .evidence-delivery__visual,.trust-handling__visual{height:420px}
  .training-stage,.training-speaker__panel{min-height:460px}
}
