/*
Theme Name: Catalyse Digital Astra Child
Theme URI: https://catalysedigital.com/
Description: Premium Apple/Stripe-inspired brand and layout layer for Catalyse Digital on Astra.
Author: Catalyse Digital
Version: 1.1.0
Template: astra
Text Domain: catalyse-digital
*/
:root{
  --catalyse-black:#000000;
  --catalyse-teal:#00BFA5;
  --catalyse-white:#FFFFFF;
  --catalyse-offwhite:#F6F7F8;
  --catalyse-soft:#EEF1F2;
  --catalyse-text:#0A0A0A;
  --catalyse-muted:#5B6067;
  --catalyse-border:#E4E7EA;
  --catalyse-max:1180px;
  --catalyse-wide:1320px;
  --catalyse-radius:24px;
  --catalyse-font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue","Segoe UI",Arial,sans-serif;
}
html{scroll-behavior:smooth}
body{font-family:var(--catalyse-font);color:var(--catalyse-text);background:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{font-family:var(--catalyse-font);letter-spacing:-.04em;color:var(--catalyse-black);font-weight:650}
p,li{font-family:var(--catalyse-font)}
a{color:var(--catalyse-black);text-underline-offset:3px}
a:hover{color:var(--catalyse-teal)}
.site-content{overflow:hidden}
.ast-container{max-width:var(--catalyse-wide);padding-left:24px;padding-right:24px}
.catalyse-managed-page .site-content>.ast-container{max-width:none;padding:0;display:block}
.catalyse-managed-page #primary{width:100%;margin:0;padding:0}
.catalyse-managed-page .entry-content{margin:0}
.catalyse-managed-page .entry-header,.catalyse-managed-page .entry-title{display:none}
.catalyse-managed-page .site-main{padding:0}

/* Header */
.site-primary-header-wrap{border-bottom:1px solid rgba(0,0,0,.06);background:rgba(255,255,255,.96);backdrop-filter:saturate(180%) blur(18px)}
.ast-primary-header-bar{min-height:74px}
.site-logo-img img{max-height:42px;width:auto}
.main-header-menu .menu-link{font-weight:520;letter-spacing:-.015em;font-size:.96rem;color:#151515}
.main-header-menu .menu-link:hover{color:var(--catalyse-teal)}

/* Shared layout */
.catalyse-shell{width:min(calc(100% - 48px),var(--catalyse-max));margin:0 auto}
.catalyse-hero,.catalyse-section,.catalyse-final-cta,.catalyse-legal-page{padding:clamp(72px,9vw,132px) 24px}
.catalyse-section>.wp-block-group__inner-container,.catalyse-hero>.wp-block-group__inner-container,.catalyse-final-cta>.wp-block-group__inner-container{max-width:var(--catalyse-max);margin:0 auto}
.catalyse-kicker{font-size:.78rem!important;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--catalyse-teal);margin:0 0 22px}
.catalyse-section-title{font-size:clamp(2.2rem,4.2vw,4.2rem)!important;line-height:1.02;margin:0 0 26px;max-width:900px}
.catalyse-section-lead{font-size:clamp(1.12rem,1.8vw,1.35rem)!important;line-height:1.62;color:var(--catalyse-muted);max-width:820px}
.catalyse-section p{font-size:1.08rem;line-height:1.75}

/* Hero */
.catalyse-hero{padding-top:clamp(92px,12vw,172px);padding-bottom:clamp(88px,11vw,156px);background:#fff;position:relative}
.catalyse-hero-title{font-size:clamp(3.25rem,7.4vw,7.4rem)!important;line-height:.92;max-width:1160px;margin:0 0 34px;font-weight:650;letter-spacing:-.06em}
.catalyse-hero-title em{font-style:normal;color:var(--catalyse-teal)}
.catalyse-hero-lead{font-size:clamp(1.18rem,2vw,1.55rem)!important;line-height:1.55;max-width:820px;color:var(--catalyse-muted);margin:0 0 34px}
.catalyse-hero-actions{display:flex!important;gap:12px;flex-wrap:wrap;margin-top:8px}
.catalyse-hero-actions .wp-block-buttons{margin:0}
.wp-block-button__link{border-radius:999px!important;padding:15px 25px!important;font-family:var(--catalyse-font);font-weight:620!important;font-size:.95rem!important;letter-spacing:-.01em;text-decoration:none!important;transition:all .2s ease;box-shadow:none!important}
.catalyse-primary-button .wp-block-button__link{background:var(--catalyse-black)!important;color:#fff!important;border:1px solid var(--catalyse-black)!important}
.catalyse-primary-button .wp-block-button__link:hover{background:var(--catalyse-teal)!important;border-color:var(--catalyse-teal)!important;color:#000!important;transform:translateY(-1px)}
.is-style-outline .wp-block-button__link{border:1px solid #B9BEC4!important;color:var(--catalyse-black)!important;background:#fff!important}
.is-style-outline .wp-block-button__link:hover{border-color:var(--catalyse-black)!important;transform:translateY(-1px)}

/* Quick answer */
.catalyse-quick{background:var(--catalyse-black);color:#fff}
.catalyse-quick .catalyse-section-title{color:#fff;font-size:clamp(1.8rem,2.8vw,3rem)!important}
.catalyse-quick-answer{font-size:clamp(1.28rem,2.5vw,2rem)!important;line-height:1.45!important;font-weight:430;color:#F3F4F5;max-width:1040px!important;margin:0}
.catalyse-quick-answer strong{color:var(--catalyse-teal);font-weight:650}

/* Who / problem / solution */
.catalyse-who{background:#fff}
.catalyse-who .catalyse-section-lead{font-size:clamp(1.35rem,2.4vw,2.1rem)!important;line-height:1.42;max-width:1000px;color:#202226}
.catalyse-problem{background:var(--catalyse-offwhite)}
.catalyse-problem-grid,.catalyse-solution-steps,.catalyse-bottleneck-grid,.catalyse-solution-grid,.catalyse-work-grid,.catalyse-why-grid{display:grid!important;gap:16px}
.catalyse-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:42px}
.catalyse-card{background:#fff;border:1px solid var(--catalyse-border);border-radius:var(--catalyse-radius);padding:30px;min-height:100%;transition:transform .2s ease,border-color .2s ease}
.catalyse-card:hover{transform:translateY(-2px);border-color:#C7CDD2}
.catalyse-card h3{font-size:1.3rem!important;margin:0 0 12px;letter-spacing:-.025em}
.catalyse-card p{font-size:1rem;line-height:1.62;color:var(--catalyse-muted);margin:0}
.catalyse-solution{background:#fff}
.catalyse-solution-steps{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:48px;counter-reset:steps}
.catalyse-step{border-top:1px solid var(--catalyse-border);padding:22px 4px 0;counter-increment:steps}
.catalyse-step:before{content:"0" counter(steps);display:block;color:var(--catalyse-teal);font-size:.76rem;font-weight:700;letter-spacing:.08em;margin-bottom:18px}
.catalyse-step h3{font-size:1.2rem!important;margin:0 0 8px}
.catalyse-step p{font-size:.95rem;color:var(--catalyse-muted);line-height:1.55;margin:0}

/* Bottleneck */
.catalyse-bottleneck{background:#101112;color:#fff}
.catalyse-bottleneck .catalyse-section-title,.catalyse-bottleneck h3{color:#fff}
.catalyse-bottleneck .catalyse-section-lead{color:#B9BEC4}
.catalyse-bottleneck-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:44px}
.catalyse-bottleneck-card{padding:24px;border:1px solid #2A2D30;border-radius:20px;background:#151719}
.catalyse-bottleneck-card .catalyse-tag{color:var(--catalyse-teal);font-size:.75rem;font-weight:700;letter-spacing:.08em;margin-bottom:12px}
.catalyse-bottleneck-card p{color:#D2D5D8;font-size:.98rem;line-height:1.55;margin:0}

/* Flywheel */
.catalyse-flywheel{background:#fff;text-align:center}
.catalyse-flywheel .catalyse-section-title{margin-left:auto;margin-right:auto}
.catalyse-flywheel .catalyse-section-lead{margin-left:auto;margin-right:auto}
.catalyse-flywheel-row{display:flex!important;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:42px}
.catalyse-pill{border:1px solid var(--catalyse-border);border-radius:999px;padding:12px 18px;background:#fff;font-size:.88rem;font-weight:650;letter-spacing:.01em}
.catalyse-pill:nth-child(4){background:var(--catalyse-teal);border-color:var(--catalyse-teal);color:#000}

/* Solutions */
.catalyse-solutions{background:var(--catalyse-offwhite)}
.catalyse-solution-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:44px}
.catalyse-solution-card{background:#fff;border-radius:var(--catalyse-radius);padding:34px;border:1px solid var(--catalyse-border);min-height:240px;display:flex!important;flex-direction:column;justify-content:space-between}
.catalyse-solution-card h3{font-size:1.45rem!important;margin:0 0 12px}
.catalyse-solution-card p{color:var(--catalyse-muted);font-size:1rem;line-height:1.6}
.catalyse-solution-card a{font-weight:650;text-decoration:none}
.catalyse-solution-card a:after{content:" →";color:var(--catalyse-teal)}

/* How we work */
.catalyse-work{background:#fff}
.catalyse-work-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:44px}
.catalyse-work-item{padding-right:20px}
.catalyse-work-number{font-size:.78rem;color:var(--catalyse-teal);font-weight:700;letter-spacing:.08em;margin-bottom:12px}
.catalyse-work-item h3{font-size:1.3rem!important;margin:0 0 8px}
.catalyse-work-item p{color:var(--catalyse-muted);font-size:.96rem;line-height:1.55}

/* AI */
.catalyse-ai{background:var(--catalyse-teal);color:#000}
.catalyse-ai .catalyse-kicker{color:#000}
.catalyse-ai .catalyse-section-title{color:#000;max-width:1040px}
.catalyse-ai .catalyse-section-lead{color:#0A3D35;max-width:980px}

/* CatalyseOne */
.catalyse-one{background:#000;color:#fff}
.catalyse-one .catalyse-section-title{color:#fff}
.catalyse-one .catalyse-section-lead{color:#C9CDD1}
.catalyse-one-mark{font-size:clamp(3rem,7vw,6.6rem)!important;font-weight:650;letter-spacing:-.06em;margin:0 0 24px;color:#fff}
.catalyse-one-mark span{color:var(--catalyse-teal)}

/* Why */
.catalyse-why{background:#fff}
.catalyse-why-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:44px}
.catalyse-why-item{border-top:2px solid #111;padding-top:18px}
.catalyse-why-item h3{font-size:1.15rem!important;margin:0 0 8px}
.catalyse-why-item p{font-size:.94rem;color:var(--catalyse-muted);line-height:1.55}

/* Proof */
.catalyse-proof{background:var(--catalyse-offwhite)}
.catalyse-proof-note{border:1px dashed #BFC5CA;border-radius:20px;padding:28px;color:var(--catalyse-muted);max-width:820px;background:#fff}

/* Assessment */
.catalyse-assessment{background:#fff}
.catalyse-assessment-box{background:var(--catalyse-black);color:#fff;border-radius:32px;padding:clamp(34px,6vw,72px);max-width:var(--catalyse-max);margin:0 auto}
.catalyse-assessment-box h2{color:#fff;font-size:clamp(2.2rem,4.8vw,4.8rem)!important;line-height:.98;max-width:900px}
.catalyse-assessment-box p{color:#C9CDD1;max-width:800px;font-size:1.15rem}

/* FAQ */
.catalyse-faq{background:var(--catalyse-offwhite)}
.catalyse-faq details{border-top:1px solid #D6DADF;padding:20px 0}
.catalyse-faq details:last-child{border-bottom:1px solid #D6DADF}
.catalyse-faq summary{font-weight:620;font-size:1.08rem;cursor:pointer;list-style:none;padding-right:32px;position:relative}
.catalyse-faq summary::-webkit-details-marker{display:none}
.catalyse-faq summary:after{content:"+";position:absolute;right:0;top:-2px;font-size:1.45rem;color:var(--catalyse-teal)}
.catalyse-faq details[open] summary:after{content:"−"}
.catalyse-faq details p{color:var(--catalyse-muted);max-width:880px;padding-top:12px;margin:0}

/* Final CTA */
.catalyse-final-cta{text-align:center;background:#fff;border-top:1px solid var(--catalyse-border)}
.catalyse-final-cta h2{font-size:clamp(2.5rem,5vw,5.2rem)!important;line-height:.98;max-width:1000px;margin:0 auto 24px}
.catalyse-final-cta p{max-width:760px;margin:0 auto 30px;color:var(--catalyse-muted);font-size:1.15rem}
.catalyse-final-cta .wp-block-buttons{justify-content:center}

/* Legal */
.catalyse-legal-page{max-width:940px;margin:0 auto}
.catalyse-legal-page h1{font-size:clamp(2.5rem,5vw,4.5rem)!important}
.catalyse-legal-page h2{font-size:1.8rem!important;margin-top:48px}
.catalyse-legal-page p,.catalyse-legal-page li{line-height:1.75}
.catalyse-legal-updated{color:var(--catalyse-muted);font-size:.95rem}

@media(max-width:1024px){
  .catalyse-problem-grid,.catalyse-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalyse-solution-steps,.catalyse-bottleneck-grid,.catalyse-work-grid,.catalyse-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:768px){
  .catalyse-hero,.catalyse-section,.catalyse-final-cta,.catalyse-legal-page{padding-left:20px;padding-right:20px}
  .catalyse-hero-title{font-size:clamp(3rem,13vw,4.4rem)!important}
  .catalyse-problem-grid,.catalyse-solution-grid,.catalyse-solution-steps,.catalyse-bottleneck-grid,.catalyse-work-grid,.catalyse-why-grid{grid-template-columns:1fr}
  .catalyse-card,.catalyse-solution-card{padding:24px}
  .catalyse-hero-actions{display:block!important}
  .catalyse-hero-actions .wp-block-buttons{margin-bottom:10px}
  .wp-block-button,.wp-block-button__link{width:100%;text-align:center}
}
