/* Shared public navigation and hero treatment. Loaded after page-specific themes. */
.marketing-site{--shared-hero:linear-gradient(135deg,#fbfaff 0%,#f1edff 55%,#e8e0ff 100%);--shared-ink:#161326;--shared-purple:#6942d7;--shared-muted:#5f576c}

/* Navigation */
.marketing-site.kataboom-theme .site-header{color:var(--shared-ink);border-bottom-color:rgba(74,55,122,.14);background:rgba(255,255,255,.94);box-shadow:0 8px 30px rgba(50,35,92,.07);backdrop-filter:blur(18px)}
.marketing-site.kataboom-theme .site-header.is-scrolled{background:rgba(255,255,255,.97)}
.marketing-site.kataboom-theme .site-header .brand--mark .brand-mark-frame{background:#fff;box-shadow:0 8px 22px rgba(76,49,149,.14)}
.marketing-site.kataboom-theme .site-header .brand--mark .brand-wordmark{color:var(--shared-ink)}
.marketing-site.kataboom-theme .site-header .brand--mark:hover .brand-wordmark{color:var(--shared-purple)}
.marketing-site.kataboom-theme .site-header .primary-nav,.marketing-site.kataboom-theme .site-header .primary-nav a,.marketing-site.kataboom-theme .site-header .text-link{color:#403852}
.marketing-site.kataboom-theme .site-header .primary-nav a:hover,.marketing-site.kataboom-theme .site-header .primary-nav a:focus-visible,.marketing-site.kataboom-theme .site-header .text-link:hover{color:var(--shared-purple)}
.marketing-site.kataboom-theme .site-header .header-actions .button--light{color:#fff;border-color:var(--shared-purple);background:var(--shared-purple);box-shadow:0 9px 24px rgba(105,66,215,.2)}
.marketing-site.kataboom-theme .site-header .header-actions .button--light:hover{color:#fff;background:#5731c5;box-shadow:0 12px 28px rgba(105,66,215,.27)}
.marketing-site.kataboom-theme .site-header .header-dashboard{color:#513990;border-color:#d9d0ee;background:#f3effc}
.marketing-site.kataboom-theme .site-header .header-signout{color:#665e73;border-color:#d9d3e2}
.marketing-site.kataboom-theme .site-header .menu-button{color:var(--shared-ink);border-color:#d8d0e8;background:#f7f4fc}
.marketing-site.kataboom-theme .site-header .menu-button i{background:currentColor}

@media(max-width:1080px){.marketing-site.kataboom-theme .site-header .primary-nav{color:#403852;border-top-color:#e3ddec;background:#fff}.marketing-site.kataboom-theme .site-header .primary-nav a{color:#403852;border-bottom-color:#eeeaf3}.marketing-site.kataboom-theme .site-header .primary-nav .mobile-nav-signup,.marketing-site.kataboom-theme .site-header .primary-nav .mobile-nav-dashboard{color:#fff;background:var(--shared-purple)}.marketing-site.kataboom-theme .site-header .primary-nav .mobile-nav-signout button{color:#51495e;border-color:#d8d1e1;background:#f8f6fa}}

/* One luminous hero surface across the public site. */
.marketing-site :is(.hero,.field-hero,.concept-about-hero,.concept-privacy-hero,.faq-hero,.pricing-hero,.editorial-hero,.legal-hero,.page-hero,.guide-library-hero,.guide-detail-hero,.blog-hero,.article-hero,.concept-lead-stage){color:var(--shared-ink);background:var(--shared-hero)}
.marketing-site :is(.hero,.field-hero,.concept-about-hero,.concept-privacy-hero,.faq-hero,.pricing-hero,.editorial-hero,.legal-hero,.page-hero,.guide-library-hero,.guide-detail-hero,.blog-hero,.article-hero,.concept-lead-stage) h1{color:var(--shared-ink)}

/* Product pages */
.product-theme-page .hero:before{background:radial-gradient(circle,rgba(105,66,215,.2),transparent 68%);opacity:1}
.product-theme-page .hero:after{background-image:linear-gradient(rgba(89,58,166,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(89,58,166,.055) 1px,transparent 1px)}
.product-theme-page .breadcrumb{color:#746b82}.product-theme-page .breadcrumb a:hover{color:var(--shared-purple)}
.product-theme-page .availability{color:#28684d;border-color:#abdcc5;background:rgba(218,248,232,.82)}
.product-theme-page .hero-lead{color:var(--shared-muted)}
.product-theme-page .hero .button--outline{color:#372c4a;border-color:#b9acd2;background:rgba(255,255,255,.48)}
.product-theme-page .hero-visual{border-color:rgba(105,66,215,.14);background:rgba(255,255,255,.48);box-shadow:0 30px 70px rgba(55,35,101,.18)}

/* Company, legal, pricing and FAQ pages */
.concept-about-hero .concept-eyebrow,.concept-about-hero .concept-eyebrow span{color:#6246a0}
.concept-about-hero h1 em{color:var(--shared-purple)}
.concept-about-hero-grid>div:first-child>p:not(.concept-eyebrow),.concept-privacy-hero-grid>div>p:not(.concept-eyebrow),.faq-hero-copy>p:not(.eyebrow),.pricing-hero-copy>p:not(.eyebrow),.editorial-hero-copy>p:not(.eyebrow),.legal-hero-copy>p:not(.eyebrow){color:var(--shared-muted)}
.concept-about-hero .button--outline,.faq-hero-contact{color:#372c4a;border-color:#b9acd2;background:rgba(255,255,255,.48)}
.concept-privacy-hero aside,.pricing-rule,.privacy-promise{border-color:#cfc3e4;background:rgba(255,255,255,.54)}
.faq-hero:before{border-color:rgba(105,66,215,.11);box-shadow:0 0 0 80px rgba(109,67,223,.06),0 0 0 160px rgba(109,67,223,.035)}
.faq-hero .eyebrow{color:#6246a0}
.faq-guide{color:#fff;border-color:rgba(255,255,255,.15);background:linear-gradient(145deg,#39304f,#241e37);box-shadow:0 28px 70px rgba(55,35,101,.2)}

/* Guides */
.guide-site .guide-library-copy>p:not(.eyebrow),.guide-site .guide-detail-copy>p:not(.eyebrow){color:var(--shared-muted)}
.guide-site :is(.guide-library-hero,.guide-detail-hero) .eyebrow{color:#6246a0}
.guide-site .guide-breadcrumb,.guide-site .guide-breadcrumb a{color:#6f6384}
.guide-site .guide-order-card,.guide-site .guide-before-card{color:#fff;border-color:rgba(255,255,255,.14);background:linear-gradient(145deg,#39304f,#241e37);box-shadow:0 28px 70px rgba(55,35,101,.2)}

/* Blog and articles */
.blog-site :is(.blog-hero-copy,.article-hero-copy) .blog-eyebrow{color:#6246a0}
.blog-site .blog-hero-copy>p:not(.blog-eyebrow),.blog-site .article-hero-copy>p:not(.blog-eyebrow){color:var(--shared-muted)}
.blog-site .article-breadcrumb,.blog-site .article-breadcrumb a,.blog-site .article-byline{color:#756b82}
.blog-site .article-byline span:first-child{color:#3d334b}
.blog-site .article-hero figure{border-color:rgba(105,66,215,.13);box-shadow:0 28px 70px rgba(55,35,101,.17)}

/* The blog directory pairs the shared light hero with a readable editorial card. */
.marketing-site.blog-library-page .blog-hero{padding:clamp(58px,6vw,82px) 0 clamp(66px,7vw,94px)}
.marketing-site.blog-library-page .blog-hero-grid{grid-template-columns:minmax(0,.94fr) minmax(480px,1.06fr);gap:clamp(38px,5vw,68px);align-items:center}
.marketing-site.blog-library-page .blog-hero-copy{max-width:610px}
.marketing-site.blog-library-page .blog-hero-copy h1{max-width:590px;margin-bottom:24px;font-size:clamp(3.25rem,4.35vw,4.85rem);line-height:1.01;letter-spacing:-.055em;text-wrap:balance}
.marketing-site.blog-library-page .blog-hero-copy>p:not(.blog-eyebrow){max-width:570px;font-size:1.04rem;line-height:1.72}
.marketing-site.blog-library-page .blog-featured{border-color:#d9d0e8;background:#fff;box-shadow:0 28px 70px rgba(55,35,101,.16);color:var(--shared-ink)}
.marketing-site.blog-library-page .blog-featured>img{aspect-ratio:16/7.6}
.marketing-site.blog-library-page .blog-featured>div{padding:26px 30px 28px}
.marketing-site.blog-library-page .blog-featured span{color:#6745bf}
.marketing-site.blog-library-page .blog-featured h2{max-width:650px;margin:9px 0 12px;color:var(--shared-ink);font-size:clamp(1.85rem,2.45vw,2.65rem);line-height:1.06;text-wrap:balance}
.marketing-site.blog-library-page .blog-featured p{color:#675f70}
.marketing-site.blog-library-page .blog-featured b{border-top-color:#e5deed;color:#5b35c5}
.marketing-site.blog-library-page .blog-featured:hover{border-color:#bfaee3;box-shadow:0 34px 82px rgba(55,35,101,.21)}

@media(max-width:1040px){
    .marketing-site.blog-library-page .blog-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);gap:34px}
    .marketing-site.blog-library-page .blog-hero-copy h1{font-size:clamp(3rem,5.1vw,4rem)}
}

@media(max-width:820px){
    .marketing-site.blog-library-page .blog-hero{padding:58px 0 72px}
    .marketing-site.blog-library-page .blog-hero-grid{grid-template-columns:1fr;gap:46px}
    .marketing-site.blog-library-page .blog-hero-copy{max-width:680px}
    .marketing-site.blog-library-page .blog-featured{max-width:680px}
}

@media(max-width:580px){
    .marketing-site.blog-library-page .blog-hero{padding:44px 0 58px}
    .marketing-site.blog-library-page .blog-hero-copy h1{font-size:clamp(2.75rem,13.5vw,3.45rem);line-height:1.03}
    .marketing-site.blog-library-page .blog-featured>img{aspect-ratio:16/9}
    .marketing-site.blog-library-page .blog-featured>div{padding:22px}
    .marketing-site.blog-library-page .blog-featured h2{font-size:1.9rem}
}

/* Contact/demo and the legacy field-sales landing page already use dark text. */
.concept-lead-stage .concept-lead-summary,.field-hero .ecosystem-lead,.field-hero .availability-detail,.page-hero p{color:var(--shared-muted)}

/* A consistent, readable type scale across public pages. */
.marketing-site.kataboom-theme .primary-nav{font-size:.9rem}
.marketing-site.kataboom-theme .header-actions{font-size:.86rem}
.marketing-site :is(.eyebrow,.concept-eyebrow,.blog-eyebrow){font-size:.75rem;line-height:1.4}
.marketing-site .button{font-size:.92rem}
.marketing-site :is(.hero-lead,.field-hero .ecosystem-lead,.page-hero p,.concept-lead-summary,.concept-about-hero-grid>div:first-child>p:not(.concept-eyebrow),.concept-privacy-hero-grid>div>p:not(.concept-eyebrow),.faq-hero-copy>p:not(.eyebrow),.pricing-hero-copy>p:not(.eyebrow),.editorial-hero-copy>p:not(.eyebrow),.legal-hero-copy>p:not(.eyebrow),.guide-library-copy>p:not(.eyebrow),.guide-detail-copy>p:not(.eyebrow),.blog-hero-copy>p:not(.blog-eyebrow),.article-hero-copy>p:not(.blog-eyebrow)){font-size:1.08rem;line-height:1.75}

/* Home page */
.marketing-site .hero-trust{font-size:.82rem}.marketing-site .hero-proof p,.marketing-site .hero-proof div{font-size:.8rem}
.marketing-site .channels-copy>p:not(.eyebrow),.marketing-site .section-heading>p{font-size:1rem}.marketing-site .channels-guardrail p{font-size:.85rem}
.marketing-site .problem-card>p:not(.problem-prompt),.marketing-site .problem-copy>p:last-child{font-size:.96rem;line-height:1.7}.marketing-site .problem-answer p{font-size:.9rem;line-height:1.65}.marketing-site .problem-answer a,.marketing-site .mini-answer em{font-size:.82rem}
.marketing-site .platform-principles p{font-size:.9rem;line-height:1.65}
.marketing-site .product-kicker{font-size:.7rem}.marketing-site .product-content>p:not(.product-kicker){font-size:.94rem;line-height:1.65}.marketing-site .product-content li{font-size:.72rem}.marketing-site .product-content a{font-size:.84rem}
.marketing-site .payment-methods-card header p,.marketing-site .receipt-card header p{font-size:.9rem}.marketing-site .receipt-grid strong{font-size:.82rem}.marketing-site .receipt-grid small{font-size:.7rem}.marketing-site .payment-flow strong{font-size:.82rem}.marketing-site .payment-flow small{font-size:.7rem}.marketing-site .payment-flow>a{font-size:.78rem}
.marketing-site .social-copy>p:not(.eyebrow){font-size:1rem;line-height:1.75}.marketing-site .social-copy li{font-size:.94rem}.marketing-site .journey-steps small{font-size:.68rem}.marketing-site .journey-steps strong{font-size:1rem}.marketing-site .journey-steps p{font-size:.85rem;line-height:1.65}

/* Company, legal, pricing and FAQ pages */
.marketing-site .principle-grid p,.marketing-site .concept-principle-grid p{font-size:.9rem;line-height:1.72}
.marketing-site .privacy-promise p{font-size:.82rem}.marketing-site .privacy-promise strong{font-size:1rem}
.marketing-site .legal-summary p{font-size:.86rem;line-height:1.7}.marketing-site .legal-aside p{font-size:.9rem}.marketing-site .legal-aside a{font-size:.82rem}.marketing-site .legal-item p{font-size:.95rem;line-height:1.8}.marketing-site .legal-updated{font-size:.75rem}
.marketing-site .faq-guide header strong{font-size:1rem}.marketing-site .faq-guide li a{font-size:.9rem}.marketing-site .faq-guide footer{font-size:.78rem}.marketing-site .faq-topic-nav a{font-size:.82rem}.marketing-site .faq-group-intro p{font-size:.92rem}.marketing-site .faq-group-intro a{font-size:.84rem}.marketing-site .faq-questions p{font-size:.95rem}

/* Product and guide pages */
.marketing-site.product-theme-page :is(.problem-copy>p,.capability p,.workflow-copy>p,.guardrail p,.family-card p,.closing p,.hub-card p){font-size:.94rem;line-height:1.7}
.marketing-site.product-theme-page :is(.capability small,.family-card small,.hub-card small){font-size:.7rem}.marketing-site.product-theme-page :is(.capability a,.family-card strong,.hub-card strong){font-size:.82rem}
.marketing-site.guide-site .guide-order-card li strong{font-size:.88rem}.marketing-site.guide-site .guide-order-card li small{font-size:.76rem}.marketing-site.guide-site .guide-card p{font-size:.96rem}.marketing-site.guide-site .guide-card>b{font-size:.82rem}.marketing-site.guide-site .guide-principle-grid p{font-size:.94rem}.marketing-site.guide-site .guide-before-card li{font-size:.88rem}.marketing-site.guide-site .guide-contents nav a{font-size:.84rem}.marketing-site.guide-site .guide-step-actions li{font-size:.95rem}.marketing-site.guide-site .guide-step-outcome{font-size:.9rem}.marketing-site.guide-site .guide-checklist li{font-size:.92rem}.marketing-site.guide-site .guide-next p{font-size:.94rem}

/* Blog directory, articles, and shared footer */
.marketing-site.blog-site :is(.blog-card p,.blog-featured p,.related-grid p){font-size:.94rem;line-height:1.7}.marketing-site.blog-site .article-section>p{font-size:1.08rem;line-height:1.85}
.marketing-site .site-footer .footer-brand p{font-size:.92rem}.marketing-site .site-footer .footer-join>span{font-size:.86rem}.marketing-site .site-footer .footer-join a{font-size:.82rem}.marketing-site .site-footer .footer-directory .footer-links strong{font-size:.84rem}.marketing-site .site-footer .footer-directory .footer-links a{font-size:.92rem}.marketing-site .site-footer .footer-bottom{font-size:.8rem}

@media(max-width:620px){.marketing-site :is(.hero-lead,.field-hero .ecosystem-lead,.page-hero p,.concept-lead-summary,.concept-about-hero-grid>div:first-child>p:not(.concept-eyebrow),.concept-privacy-hero-grid>div>p:not(.concept-eyebrow),.faq-hero-copy>p:not(.eyebrow),.pricing-hero-copy>p:not(.eyebrow),.editorial-hero-copy>p:not(.eyebrow),.legal-hero-copy>p:not(.eyebrow),.guide-library-copy>p:not(.eyebrow),.guide-detail-copy>p:not(.eyebrow),.blog-hero-copy>p:not(.blog-eyebrow),.article-hero-copy>p:not(.blog-eyebrow)){font-size:1rem}.marketing-site .button{font-size:.88rem}}
