/* Aarambha visual system — 25 October 2026
   Single typeface. White and blue. Compact editorial sections, not fullscreen panels. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--sans:'Inter',Arial,sans-serif;--serif:'Inter',Arial,sans-serif;--mono:'Inter',Arial,sans-serif;
--navy:#0b2447;--navy-2:#15365f;--navy-3:#214e7b;--ink:#112b4a;--muted:#59728b;
--paper:#f9fbff;--paper-2:#eff6ff;--white:#fff;--teal:#60a5fa;--teal-2:#3b82f6;--teal-deep:#2563eb;
--line:rgba(49,102,162,.16);--dark-line:rgba(49,102,162,.16);--orange:#93c5fd;--shadow:0 12px 36px rgba(32,84,145,.08)}
html{scroll-behavior:smooth}body{background:#fff;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;overflow-x:hidden}
body :is(h1,h2,h3,h4,h5,h6,.display,.eyebrow,.case-kicker,.case-company,.case-stat,.article-kicker,.pf-ui-eyebrow){font-family:var(--sans)!important;font-style:normal!important;letter-spacing:-.035em}
body :is(.eyebrow,.case-kicker,.article-kicker,.pf-ui-eyebrow){font-size:11px!important;letter-spacing:.1em!important;font-weight:700!important;text-transform:uppercase}
body h1,body .page-hero h1,body .hero-copy h1,body .blog-hero h1,body .case-hero h1,body .pf-hero h1,
body .longform-wrap>h1,body .longform-wrap h1,body .longform-article h1{font-size:clamp(31px,3.4vw,51px)!important;line-height:1.17!important;font-weight:750!important;letter-spacing:-.052em!important;max-width:900px;margin:10px 0 16px}
body h2,body .section-head h2,body .blog-section-head h2,body .case-section-heading h2,body .case-detail-copy h2,
body .pf-section-head h2,body .longform-wrap h2,body .founder-copy h2,body .founder-section h2,
body .case-outcomes h2,body .cta-grid h2{font-size:clamp(26px,2.45vw,36px)!important;line-height:1.22!important;font-weight:700!important;letter-spacing:-.045em!important;margin-top:0}
body h3,body .post-card h2,body .case-card h3,body .longform-wrap h3,body .founder-name h2{font-size:clamp(17px,1.65vw,21px)!important;line-height:1.4!important;font-weight:700!important;letter-spacing:-.025em!important}
body p,body .lead,body .hero-lede,body .longform-wrap p,body .longform-wrap li{font-family:var(--sans)!important;font-size:clamp(14px,1.02vw,16px)!important;line-height:1.75!important;letter-spacing:0!important}
body a,body button,body input,body textarea,body label,body select,body small{font-family:var(--sans)!important}
body .display em,body h1 em,body h2 em{font-family:var(--sans)!important;font-style:normal!important;color:#2563eb!important}
.section-wrap{width:min(1160px,calc(100% - 56px));margin-inline:auto}
/* Light, consistent navigation */
body .site-header{position:sticky;top:0;background:#fff;color:#14335b;border-bottom:1px solid #e0ebf8;height:72px;box-shadow:0 2px 14px rgba(15,55,105,.035)}
body .nav{height:72px}.site-header .brand{color:#123764;font-size:18px}
body .nav-links>a,body .nav-dropdown>summary{color:#24486e;font-size:13px}
body .nav-links>a:hover,body .nav-dropdown>summary:hover,body .nav-links>a.active,body .nav-dropdown>summary.active{background:#eff6ff;color:#155ac0}
body .dropdown-panel{background:#fff;border-color:#d9e6f4;box-shadow:0 12px 32px rgba(20,60,105,.12)}
body .dropdown-panel a{color:#19416c}body .dropdown-panel a small{color:#617b92}body .dropdown-panel a:hover{background:#eff6ff}
body .nav-cta,body .button-primary,body .footer-button{background:#2563eb!important;color:#fff!important;border:1px solid #2563eb!important;box-shadow:none!important;border-radius:9px;padding:11px 17px}
body .nav-cta:hover,body .button-primary:hover{background:#1d4ed8!important;box-shadow:0 8px 22px rgba(37,99,235,.13)!important}
body .button-secondary,body .button-secondary.dark{color:#1e4f85!important;background:#fff!important;border:1px solid #bed5ef!important}
body .menu-toggle{color:#174876}body .mobile-menu{background:#fff;border:1px solid #dae7f6;box-shadow:0 15px 25px #133d651c}
body .mobile-menu>a,body .mobile-menu summary,body .mobile-menu details>a{color:#16416e}
/* Shared intro rhythm: eyebrow, headline, concise paragraph, CTA; reveal next section on first viewport */
body .home-hero,body .hero,body .page-hero,body .blog-hero,body .case-hero,body .pf-hero,
body .pricing-hero,body .usecase-hero,body .alternative-hero{background:#f5f9ff!important;color:#102e53!important;min-height:0!important;height:auto!important;padding-block:clamp(52px,6vw,78px)!important;border-bottom:1px solid #e5eef9;overflow:visible}
body .hero::before,body .page-hero::before,body .page-hero::after{opacity:.16;pointer-events:none}
body .hero :is(p,.hero-lede),body .page-hero p,body .blog-hero p,body .case-hero p,body .pf-hero p{color:#55718d!important;max-width:670px;font-size:15px!important}
body .hero .eyebrow,body .page-hero .eyebrow,body .blog-hero .eyebrow,body .case-hero .eyebrow,body .pf-hero .eyebrow{color:#2563eb!important}
body .hero-grid,body .page-hero-grid,body .pf-hero-grid,body .blog-hero-grid,body .case-hero-wrap{gap:clamp(26px,4vw,55px)!important;align-items:center}
body .home-hero .hero-copy h1{max-width:760px}
body .hero-actions{margin-top:22px!important;gap:10px!important}
body .hero .analytics-shell{transform:none;box-shadow:0 18px 40px #12375c18}
body :is(.hero-grid,.page-hero-grid,.pf-hero-grid,.case-hero-wrap)>*{min-width:0}
/* Reduce scroll-blocking sections and PPT-height gaps */
body :is(.section-light,.section-dark,.channels-section,.knowledge-section,.value-section,.engagement-section,.faq-section,.process-section,.feature-section,.bestfit-section,.stack-section,.story-section,.method-section,.about-value,.blog-grid-section,.article-section,.mini-articles,.upgrade-section,.upgrade-flow,.upgrade-demo,.upgrade-evidence,.case-home,.case-library,.case-insights,.case-detail-main,.case-outcomes,.case-next,.case-cta,.founder-section,.pf-section,.blog-feature,.pricing-section,.compare-section,.cta-section,.reply-rate-section){padding-block:clamp(47px,5.3vw,72px)!important;min-height:0!important}
body :is(.section-dark,.knowledge-section,.case-insights,.case-outcomes,.pf-cream,.upgrade-section,.value-section){background:#eff6ff!important;color:#173860!important}
body :is(.section-light,.case-home,.case-library,.pf-paper,.founder-section,.blog-grid-section,.case-detail-main,.channels-section){background:#fff!important;color:#173860!important}
body .section-dark :is(h1,h2,h3,h4,p),body .section-dark .section-head h2,body .section-dark .section-head p{color:#173860!important}
body :is(.section-head,.case-section-heading,.pf-section-head){margin-bottom:24px!important;gap:25px!important}
body :is(.section-head,.case-section-heading,.pf-section-head) h2{max-width:720px}
body .case-section-heading{grid-template-columns:1.2fr .8fr}
body :is(.pain-card,.value-notes article,.channel-card,.post-card,.case-card,.pf-compact-card,.case-side-box,.faq-item,.founder-card,.featured-post){border:1px solid #dfeaf8!important;border-radius:13px!important;box-shadow:0 7px 22px rgba(34,78,130,.035)!important}
body :is(.pain-card,.value-notes article,.post-card,.case-card){min-height:0!important}
body .pain-card h3{margin-top:15px!important}body .post-card h2{margin:12px 0 10px!important}
body :is(.blog-post-card,.post-card){padding:18px!important}
/* consistent card/media proportions; heading isn't an image */
body .blog-card-image{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:10px!important}
body .blog-card-image-link{display:block;overflow:hidden;border-radius:10px}
body .blog-post-grid{gap:18px}
body .blog-hero{padding-block:56px!important}body .blog-hero h1{max-width:680px!important}
body .longform-article{padding:48px 0 80px!important;background:#fff}
body .longform-wrap{max-width:825px}
body .longform-wrap>h1{margin-bottom:15px!important}
body .longform-intro{margin:0 0 23px;max-width:720px;color:#55718d}
body .article-hero-image{aspect-ratio:16/9;object-fit:cover;max-height:440px;border-radius:12px!important;margin-bottom:30px!important}
body .longform-wrap h2{margin:37px 0 12px!important}
body .article-callout{padding:24px!important;background:#eff6ff!important;border-color:#d5e6f9!important}
body .case-hero h1{font-size:clamp(32px,3.1vw,46px)!important}
body .case-hero-result{box-shadow:none!important;border:1px solid #d8e6f6!important}
body .case-hero-result strong,body .case-stat{font-family:var(--sans)!important;letter-spacing:-.05em}
body .case-card{overflow:hidden}.case-grid{gap:16px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
body .case-card-content{padding:25px!important;display:flex;flex-direction:column;height:100%}
body .case-card-desc{flex:1}.case-statline{margin:20px 0 12px!important}.case-stat{font-size:clamp(32px,3.3vw,44px)!important}
body .case-card-foot{margin-top:18px!important}body .case-detail-layout{gap:32px}
body .case-outcome-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
body .case-outcome-grid article{background:#fff;border:1px solid #dce7f8;border-radius:12px;padding:22px}
body .case-source-link{display:inline-flex;margin-top:20px;font-weight:700;font-size:13px;color:#2563eb;text-decoration:underline;text-underline-offset:3px}
/* WhatsApp logo present in EVERY chat entry, including footer/floating links */
.wa-icon{width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;flex:none;vertical-align:middle;color:currentColor}
.wa-icon svg{display:block;width:100%;height:100%}
a[href*="wa.me/"]{display:inline-flex;align-items:center;gap:9px}
/* Anchors and accessibility */
a:focus-visible,button:focus-visible{outline:3px solid #60a5fa!important;outline-offset:3px}
:target{scroll-margin-top:90px}
/* No heavy type, oversized blocks, or uncontained elements on small screens */
@media(max-width:940px){
 body .section-wrap{width:min(1160px,calc(100% - 36px))}
 body .case-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body .home-hero .hero-grid{grid-template-columns:1fr!important}
 body .case-section-heading{grid-template-columns:1fr!important}
 body .mobile-menu{top:72px}
 body .case-hero-wrap{grid-template-columns:1fr!important}
}
@media(max-width:640px){
 body .site-header,body .nav{height:64px}
 body .mobile-menu{top:64px}
 body .home-hero,body .hero,body .page-hero,body .blog-hero,body .case-hero,body .pf-hero{padding-block:39px!important}
 body :is(h1,.hero-copy h1,.page-hero h1,.blog-hero h1,.pf-hero h1,.case-hero h1,.longform-wrap h1){font-size:clamp(30px,8vw,40px)!important;line-height:1.2!important}
 body :is(.section-head h2,.case-section-heading h2,.longform-wrap h2){font-size:clamp(25px,6vw,31px)!important}
 body .case-grid,body .case-outcome-grid{grid-template-columns:1fr!important}
 body .section-wrap{width:calc(100% - 32px)}
 body .case-card-content{padding:21px!important}
 body .blog-hero-grid{grid-template-columns:1fr!important}
 body .post-grid{grid-template-columns:1fr!important}
 body .page-hero-grid{grid-template-columns:1fr!important}
 body .hero-actions .button-primary,body .hero-actions .button-secondary{width:auto;max-width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Founder review / 25 Oct: contrast, clean section transitions and single-row flow.
   Keep this stylesheet last so previous dark-theme text colours do not leak
   onto the newer white/blue backgrounds. */

/* All of these heroes have light backgrounds in the current design. Their
   legacy near-white headline rules must not survive the palette change. */
body :is(.hero,.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.usecase-hero,.alternative-hero) :is(h1,h2,.display),
body .hero-copy h1,
body .blog-hero h1,
body .case-hero h1,
body .page-hero h1,
body .pf-hero h1 {
  color:#102f55!important;
}
body :is(.hero,.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.usecase-hero,.alternative-hero) :is(h1,h2,.display) em,
body .hero-copy h1 em,
body .blog-hero h1 em {
  color:#2563eb!important;
}
body :is(.hero,.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.usecase-hero,.alternative-hero) .eyebrow {
  color:#245cba!important;
}
body .blog-hero-grid>p,
body :is(.hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.usecase-hero,.alternative-hero) :is(.hero-lede,.lead) {
  color:#426183!important;
  opacity:1!important;
}

/* Prevent inherited dark-section text and dark cards from becoming
   unreadable when their parent has been switched to a pale blue section. */
body :is(.section-dark,.knowledge-section,.upgrade-flow) .eyebrow {
  color:#245cba!important;
}
body .section-dark .section-head p,
body .section-dark .sticky-copy p,
body .section-dark .system-item p,
body .section-dark .about-copy p {
  color:#48637f!important;
  opacity:1!important;
}
body .section-dark .system-number,
body .section-dark .system-tag {
  color:#1d56a5!important;
}
body .section-dark .system-tag {
  background:#fff;
  border:1px solid #cedff2!important;
}
body .about-origin {
  background:#eff6ff!important;
  color:#14365d!important;
  border-block:0;
}
body .about-origin .pain-grid,
body .section-dark .pain-grid {
  border:0!important;
  display:grid;
  gap:14px;
}
body .section-dark .pain-card,
body .about-origin .pain-card {
  background:#fff!important;
  color:#183b61!important;
  border:1px solid #d9e6f7!important;
  border-radius:14px!important;
  box-shadow:0 8px 24px rgba(20,63,117,.045)!important;
}
body .section-dark .pain-card h3,
body .about-origin .pain-card h3 {
  color:#163a64!important;
}
body .section-dark .pain-card p,
body .about-origin .pain-card p {
  color:#45617e!important;
}
body .section-dark .pain-card>span,
body .about-origin .pain-card>span {
  color:#245fc4!important;
}

/* Unified section canvases: consistent boundaries without old dark-mode
   colour strips and no gradients sitting across the main content blocks. */
body .upgrade-flow {
  background:#f0f6ff!important;
  color:#15365e!important;
  border-block:1px solid #e0ebfa;
}
body .upgrade-demo {
  background:#fff!important;
  color:#15365e!important;
  border-block:0;
}
body .upgrade-evidence {
  background:#f0f6ff!important;
  color:#15365e!important;
  border-block:1px solid #e0ebfa;
}
body .upgrade-section .upgrade-heading :is(h2,.display) {
  color:#10365f!important;
}
body .upgrade-heading p {
  color:#486581!important;
  opacity:1!important;
}

/* Always one horizontal workflow on desktop (the legacy bundle declared
   four columns). Tablet/phone can scroll along the same uninterrupted row. */
body #qualification-workflow .flow-track {
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch;
  width:100%;
}
body #qualification-workflow .flow-node {
  box-sizing:border-box;
  min-width:0;
  min-height:235px!important;
  padding:21px 17px!important;
  background:#fff!important;
  color:#173858!important;
  border:1px solid #d5e4f7!important;
  border-radius:14px!important;
  box-shadow:0 7px 24px rgba(32,80,150,.05)!important;
}
body #qualification-workflow .flow-node.flow-focus {
  background:#e9f2ff!important;
  border-color:#76a8f3!important;
  box-shadow:0 8px 26px rgba(37,99,235,.085)!important;
}
body #qualification-workflow .flow-node .flow-count {
  color:#245db9!important;
  font-size:10px!important;
  letter-spacing:.11em;
}
body #qualification-workflow .flow-node .flow-icon {
  width:42px;
  height:42px;
  margin:19px 0 17px;
  border-radius:11px;
  background:#e8f1ff!important;
  color:#225dc1!important;
  font-size:24px;
}
body #qualification-workflow .flow-node h3 {
  color:#12365f!important;
  font-size:clamp(15px,1.3vw,18px)!important;
  line-height:1.35!important;
  letter-spacing:-.025em!important;
  margin:0 0 9px!important;
}
body #qualification-workflow .flow-node p {
  color:#486581!important;
  font-size:13px!important;
  line-height:1.6!important;
  margin:0!important;
}
body #qualification-workflow .flow-node:not(:last-child)::after {
  color:#2563eb!important;
  background:#f0f6ff;
  border-radius:99px;
  width:20px;
  text-align:center;
  right:-16px;
  top:46%;
  font-size:20px;
  line-height:20px;
  z-index:3;
}
body #qualification-workflow .upgrade-caption {
  color:#4e6986!important;
}
@media(max-width:980px){
  body #qualification-workflow .flow-track{
    grid-template-columns:repeat(5,minmax(195px,1fr))!important;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x proximity;
    overscroll-behavior-x:contain;
    padding:3px 2px 14px;
    scrollbar-width:thin;
    scrollbar-color:#9fbee8 #e6effa;
  }
  body #qualification-workflow .flow-node{
    scroll-snap-align:start;
    min-height:223px!important;
  }
  body #qualification-workflow .flow-node:not(:last-child)::after{display:block!important;}
}
@media(max-width:640px){
  body #qualification-workflow .flow-track{
    grid-template-columns:repeat(5,minmax(205px,76vw))!important;
    gap:12px!important;
  }
  body #qualification-workflow .flow-node{
    min-height:205px!important;
    padding:19px 16px!important;
  }
  body #qualification-workflow .flow-node .flow-icon{margin:14px 0 12px;}
}

/* Secondary-page contrast audit: dark mockups stay dark and keep light type,
   while comparison/case-study callouts on pale canvases use dark type. */
body .analytics-shell .dashboard-disclosure {
  color:#d3e8f5!important;
  background:#16445e;
  font-size:11px!important;
  line-height:1.5!important;
}
body .analytics-shell .dashboard-period,
body .analytics-shell .dashboard-tabs span,
body .analytics-shell .chart-legend,
body .analytics-shell .metric small,
body .analytics-shell .activity-item small,
body .analytics-shell .activity-item time,
body .analytics-shell .dashboard-foot small {
  color:#b9d0e5!important;
}
body .analytics-shell .activity-item strong,
body .analytics-shell .card-title strong,
body .analytics-shell .metric strong {
  color:#f4faff!important;
}
body .analytics-shell .chart-legend{font-size:10px!important;}
body .analytics-shell .activity-item small,
body .analytics-shell .activity-item time{font-size:9px!important;}
body .analytics-shell .dashboard-foot small{font-size:10px!important;}
body .analytics-shell .metric small{font-size:10px!important;}
body .analytics-shell .dashboard-tabs span{font-size:10px!important;}

body .solution-preview {
  color:#edf7ff!important;
  background:#0c213a!important;
  border-color:#2b496b!important;
}
body .solution-preview :is(strong,h3,h4,.fit-badge),
body .solution-preview .email-to strong,
body .solution-preview .email-subject strong {
  color:#f4faff!important;
}
body .solution-preview :is(p,.email-body p,.research-block p,.message-block p) {
  color:#d1e1f2!important;
  opacity:1!important;
}
body .solution-preview :is(.preview-head,.email-score span),
body .solution-preview :is(.profile-row small,.research-block small,.message-block small) {
  color:#bed2e6!important;
}
body .solution-preview .email-body p {font-size:12px!important;line-height:1.7!important;}
body .solution-preview .research-block p,
body .solution-preview .message-block p {font-size:12px!important;}

body .comparison-hero .comparison-hero-card {
  background:#fff!important;
  border:1px solid #d4e5f9!important;
  box-shadow:0 10px 30px rgba(19,63,119,.07)!important;
  color:#173a62!important;
}
body .comparison-hero .comparison-hero-card h2 {
  color:#163a64!important;
}
body .comparison-hero .comparison-hero-card li {
  color:#425e7d!important;
}
body .comparison-hero .comparison-hero-card :is(.comparison-hero-label) {
  color:#2563bc!important;
}
body .comparison-hero .comparison-hero-card li::before {
  color:#2563eb!important;
}
body .comparison-choice-section {
  background:#0e2c50!important;
  color:#f5faff!important;
  border-block:0;
}
body .comparison-choice-section :is(h1,h2,h3,.display),
body .comparison-choice-section .comparison-callout strong {
  color:#fff!important;
}
body .comparison-choice-section p {
  color:#d6e4f5!important;
}
body .comparison-choice-section .eyebrow,
body .comparison-choice-section .comparison-callout span {
  color:#a9d0ff!important;
}
body .comparison-choice-section .comparison-callout {
  background:#183f6b!important;
  border-color:#4d739e!important;
}
body .case-hero-result {
  background:#fff!important;
  color:#15385f!important;
  border:1px solid #d5e6f9!important;
  border-radius:14px!important;
}
body .case-hero-result :is(p,small) {
  color:#45617f!important;
}
body .case-hero-result .eyebrow {
  color:#235cba!important;
}
body .case-hero-result strong {
  color:#2563eb!important;
}
body .post-meta span:last-child {
  color:#526c84!important;
}
body .pf-compact-card .pf-index,
body .pf-clean-step-strip b {
  color:#195c9d!important;
}

/* FAQ and qualification panels: old white text was invisible on new light
   sections; keep the card/section pair in the same readable palette. */
body .faq-section {
  background:#f0f6ff!important;
  color:#15385f!important;
  border-top:1px solid #e0ebf8!important;
}
body .faq-section :is(h2,.display,.faq-head h2),
body .faq-section .faq-item summary,
body .faq-section .faq-item summary span,
body .faq-section .faq-answer strong {
  color:#15385f!important;
}
body .faq-section :is(.faq-answer p,.faq-answer li,.faq-answer em) {
  color:#486581!important;
}
body .faq-section .eyebrow {color:#245fba!important;}
body .faq-section .faq-list {border:0!important;display:grid;gap:10px;}
body .faq-section .faq-item {
  background:#fff!important;
  border:1px solid #d7e6f7!important;
  border-radius:11px!important;
  padding:0 20px;
}
body .faq-section .faq-toggle {border-color:#a4c2e6!important;}
body .faq-section .faq-toggle::before,
body .faq-section .faq-toggle::after{background:#235cae!important;}
body .section-dark .check-panel {gap:12px;border:0!important;}
body .section-dark .check-panel>div {
  background:#fff!important;
  border:1px solid #d7e6f7!important;
  border-radius:12px!important;
  min-height:130px!important;
}
body .section-dark .check-panel strong {color:#173a61!important;}
body .section-dark .check-panel span {color:#235fba!important;}
body .section-dark .check-panel p {
  color:#4a6684!important;
  opacity:1!important;
  margin-top:17px!important;
}
body .section-dark .quality-grid>div:first-child p {color:#4a6684!important;}
/* Editorial/product preview small labels should never fade into white cards. */
body .preview-topline small,
body .preview-detail-grid small,
body .preview-record small,
body .pf-search-small,
body .pf-search-filter-grid div>span {
  color:#456581!important;
}
body .case-step-list li::marker{color:#235cbd;}

/* Clip oversized decorative gradients at each section boundary. The previous
   overflow:visible hero rule allowed a 700px radial element to extend beyond
   the viewport, causing unexpected horizontal background overflow. */
body :is(.hero,.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.usecase-hero,.alternative-hero) {
  overflow:hidden!important;
}


/* Founder review v3 — uniform hero alignment and high-contrast case panel
   A shared 80%-wide content grid keeps all opening text at the same X
   across single-column and split-column pages. Align each opening label
   and title at the same vertical origin, irrespective of side-card height. */
@media(min-width:961px){
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero) > .section-wrap,
  body .hero.home-hero > .section-wrap,
  body .case-detail-hero > .section-wrap {
    width:80%!important;
    max-width:1320px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero){
    padding-top:116px!important;
    padding-bottom:68px!important;
    min-height:0!important;
    height:auto!important;
  }
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero)
     :is(.hero-grid,.page-hero-grid,.blog-hero-grid,.case-hero-wrap,.pf-hero-grid,.comparison-hero-grid){
    align-items:start!important;
  }
  body .home-hero .hero-grid {grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr)!important;}
  body .page-hero-grid {align-items:start!important;}
  body .case-hero-wrap {align-items:start!important;}
  body .pf-hero-grid {align-items:start!important;}
  body .blog-hero-grid {align-items:start!important;}
}
/* Equal heading rhythm: small kicker, 12px pause, headline, short intro. */
body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero) :is(.eyebrow,.case-kicker){
  margin:0 0 12px!important;
  line-height:1.55!important;
  min-height:17px;
}
body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero) h1,
body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero) h1.display {
  margin:0 0 18px!important;
}
/* Comparison, use-case and About headings previously sat in an extra
   centred narrow wrap. Maintain readable text widths within one grid. */
body :is(.usecase-hero,.usecase-hub-hero,.about-hero,.comparison-hub-hero) .narrow-hero{
  max-width:1320px!important;
  margin-inline:auto!important;
}
body :is(.usecase-hero,.usecase-hub-hero,.about-hero,.comparison-hub-hero) .narrow-hero h1 {
  max-width:920px!important;
}
/* Case studies: dark slate background was left behind by the palette swap;
   its heading/rows were dark navy and impossible to read on slate. Use
   a white panel with blue accents and clear contrast for every row. */
body .case-hero .case-visual {
  background:#fff!important;
  color:#14365f!important;
  border:1px solid #d5e4f7!important;
  border-radius:16px!important;
  box-shadow:0 14px 34px rgba(27,76,126,.08)!important;
  padding:23px 25px!important;
}
body .case-hero .case-visual-head {
  color:#225baf!important;
  border-bottom:1px solid #dae6f7!important;
  font-weight:800!important;
}
body .case-hero .case-visual-row {
  border-bottom:1px solid #e3ebf7!important;
}
body .case-hero .case-visual-row strong {
  color:#123761!important;
  font-weight:750!important;
}
body .case-hero .case-visual-row span {
  color:#2563eb!important;
}
body .case-hero .case-visual-foot {
  color:#4d6785!important;
}
body .case-hero .case-kicker {
  color:#2563eb!important;
}
body .case-hero .case-kicker::before {
  background:#60a5fa!important;
}
/* The prior case-study header retained an old green glow over a light
   section. Keep the background uniform from edge to edge. */
body .case-hero::after {display:none!important;}
body .case-hero {background:#f5f9ff!important;}

@media(max-width:960px){
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero) > .section-wrap {
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin-inline:auto!important;
  }
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero){
    padding-block:52px 56px!important;
  }
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero) :is(.hero-grid,.page-hero-grid,.pf-hero-grid,.blog-hero-grid,.case-hero-wrap,.comparison-hero-grid){
    align-items:start!important;
  }
}
@media(max-width:640px){
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero) > .section-wrap {
    width:calc(100% - 32px)!important;
  }
  body :is(.home-hero,.page-hero,.blog-hero,.case-hero,.pf-hero,.pricing-hero,.alternative-hero){
    padding-block:40px 45px!important;
  }
  body .case-hero .case-visual {padding:18px!important;}
  body .case-hero .case-visual-row strong {font-size:13px!important;}
}

/* Detail pages include a breadcrumb above the heading. Give the breadcrumb
   its own line above the shared heading baseline, not an extra 51px shift. */
body .case-detail-hero > .section-wrap {position:relative!important;}
body .case-detail-hero .case-breadcrumb {
  position:absolute!important;
  top:-43px!important;
  left:0!important;
  margin:0!important;
  color:#466685!important;
}
body .case-detail-hero .case-breadcrumb a {color:#245eb5!important;}
@media(max-width:960px){body .case-detail-hero .case-breadcrumb{top:-31px!important;}}

/* The booking and policy pages use the same opening grid instead of the
   old standalone, over-spaced, dark introduction. */
body :is(.legal-hero,.booking-hero){
  background:#f5f9ff!important;
  color:#12365f!important;
  padding-block:116px 68px!important;
  border-bottom:1px solid #e0eaf8!important;
}
body :is(.legal-hero,.booking-hero) > .section-wrap {
  width:80%!important;
  max-width:1320px!important;
  margin-inline:auto!important;
}
body :is(.legal-hero,.booking-hero) :is(.legal-kicker,.eyebrow) {
  color:#2563eb!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.55!important;
  letter-spacing:.1em!important;
  margin:0 0 12px!important;
}
body :is(.legal-hero,.booking-hero) h1 {
  color:#12365f!important;
  margin:0 0 18px!important;
  font-size:clamp(31px,3.4vw,51px)!important;
  line-height:1.17!important;
}
body .legal-hero p,body .booking-hero p {color:#4d6986!important;}
body .booking-hero .booking-facts span {
  background:#fff!important;
  color:#315477!important;
  border:1px solid #d3e3f6!important;
}
@media(max-width:960px){
  body :is(.legal-hero,.booking-hero){padding-block:52px 56px!important;}
  body :is(.legal-hero,.booking-hero) > .section-wrap {width:calc(100% - 40px)!important;}
}
@media(max-width:640px){
  body :is(.legal-hero,.booking-hero){padding-block:40px 45px!important;}
  body :is(.legal-hero,.booking-hero) > .section-wrap {width:calc(100% - 32px)!important;}
  body :is(.legal-hero,.booking-hero) h1{font-size:clamp(30px,8vw,40px)!important;}
}
