/*
Theme Name: Growth Studio
Theme URI: https://example.com
Author: Your Name
Author URI: https://example.com
Description: A performance-first agency theme with a bold hero, a scrolling stats ticker, a full-funnel capabilities grid, a simple process section, a differentiators grid, and a closing CTA. Dark by default.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: growth-studio
*/

:root{
  --background:#0b0b0c;
  --card:#131315;
  --foreground:#f5f5f4;
  --muted-foreground:#9a9a9d;
  --border:#26262a;
  --primary:#ffdd57;
  --primary-foreground:#0b0b0c;
  --radius:0.5rem;
  --container:1180px;
}

*{box-sizing:border-box;}

body{
  margin:0;
  background:var(--background);
  color:var(--foreground);
  font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,.font-headline{
  font-family:"Space Grotesk","Inter",system-ui,sans-serif;
  font-weight:700;
  line-height:1.05;
  margin:0;
}

a{color:inherit;text-decoration:none;}

.container{
  width:100%;
  max-width:var(--container);
  margin-inline:auto;
  padding-inline:1rem;
}

@media (min-width:768px){
  .container{padding-inline:1.5rem;}
}

.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  border-radius:var(--radius);font-weight:700;font-size:1.05rem;
  padding:.9rem 1.75rem;transition:background-color .2s ease, opacity .2s ease;
  white-space:nowrap;
}
.btn-primary{background:var(--primary);color:var(--primary-foreground);}
.btn-primary:hover{opacity:.9;}
.btn-outline{background:transparent;color:var(--foreground);border:1px solid var(--border);}
.btn-outline:hover{background:var(--card);}

/* Header */
.site-header{
  position:sticky;top:0;z-index:50;background:var(--background);
  border-bottom:1px solid transparent;
}
.site-header .container{
  display:flex;align-items:center;justify-content:space-between;
  padding-block:1rem;
}
.site-logo{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:1.25rem;}
.main-nav ul{list-style:none;display:flex;gap:1.5rem;margin:0;padding:0;}
.main-nav a{font-size:.9rem;font-weight:500;color:var(--foreground);}
.main-nav a:hover{color:var(--muted-foreground);}
.header-cta{display:none;}
.menu-toggle{display:inline-flex;background:none;border:0;color:var(--foreground);cursor:pointer;}

@media (min-width:768px){
  .main-nav{display:block;}
  .header-cta{display:block;}
  .menu-toggle{display:none;}
}
@media (max-width:767px){
  .main-nav{display:none;}
}

/* Hero */
.hero{
  position:relative;min-height:90vh;display:flex;align-items:center;justify-content:center;
  text-align:center;padding-block:6rem;overflow:hidden;
}
.hero::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:radial-gradient(ellipse 80% 80% at 50% -20%, rgba(255,221,87,0.12), rgba(0,0,0,0));
}
.hero-inner{position:relative;z-index:1;max-width:56rem;margin-inline:auto;}
.hero h1{font-size:clamp(2.5rem,6vw,5.5rem);letter-spacing:-0.02em;}
.hero h1 .accent{display:inline-block;color:var(--primary);}
.hero p{margin-top:1.5rem;font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--muted-foreground);max-width:38rem;margin-inline:auto;}
.hero-actions{margin-top:2.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;}
@media (min-width:640px){.hero-actions{flex-direction:row;}}

/* Ticker */
.ticker-wrap{
  position:relative;overflow:hidden;padding-block:1rem;
  border-top:1px solid var(--border);border-bottom:1px solid var(--border);
}
.ticker-wrap::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(to right, var(--background) 0%, transparent 10%, transparent 90%, var(--background) 100%);
}
.ticker-track{display:flex;width:max-content;animation:ticker-scroll 30s linear infinite;}
.ticker-item{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-inline:1.5rem;}
.ticker-item span{font-size:.85rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--muted-foreground);}
@keyframes ticker-scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

/* Positioning */
.section{padding-block:4rem;}
.section-card{background:var(--card);}
@media (min-width:768px){.section{padding-block:6rem;}}
.positioning-lines{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;}
.positioning-lines p{font-size:clamp(1.75rem,4.5vw,4rem);font-weight:700;font-family:"Space Grotesk",sans-serif;margin:0;}

/* Section headings */
.section-head{text-align:center;margin-bottom:3rem;}
.section-head h2{font-size:clamp(1.5rem,2.5vw,2.25rem);}
.section-head p{margin-top:1rem;font-size:1.1rem;color:var(--muted-foreground);max-width:36rem;margin-inline:auto;}

/* Capabilities grid */
.capabilities-grid{display:grid;grid-template-columns:1fr;gap:2rem;}
@media (min-width:768px){.capabilities-grid{grid-template-columns:repeat(3,1fr);}}
.capability-card{
  height:100%;border:1px solid var(--border);border-radius:var(--radius);
  background:rgba(255,255,255,0.02);padding:2rem;transition:transform .3s ease,border-color .3s ease;
  display:flex;flex-direction:column;gap:.75rem;
}
.capability-card:hover{transform:translateY(-4px);border-color:var(--primary);}
.capability-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;}
.capability-head h3{font-size:1.375rem;}
.badge{
  display:inline-flex;align-items:center;border:1px solid var(--primary);color:var(--primary);
  border-radius:999px;padding:.15rem .65rem;font-size:.75rem;font-weight:600;
}
.capability-card .lede{color:var(--muted-foreground);}
.capability-card .detail{color:var(--muted-foreground);opacity:.85;font-size:.925rem;}

/* Process */
.process-flow{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;}
.process-steps{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;}
@media (min-width:768px){.process-steps{flex-direction:row;gap:2rem;}}
.process-step{font-size:1.5rem;font-weight:700;font-family:"Space Grotesk",sans-serif;}
.process-arrow{color:var(--muted-foreground);transform:rotate(90deg);}
@media (min-width:768px){.process-arrow{transform:rotate(0);}}
.process-note{color:var(--muted-foreground);font-size:1.1rem;text-align:center;max-width:36rem;}

/* Differentiators */
.diff-grid{display:grid;grid-template-columns:1fr;gap:3rem;}
@media (min-width:640px){.diff-grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1024px){.diff-grid{grid-template-columns:repeat(4,1fr);}}
.diff-item{text-align:center;}
.diff-item .icon{width:2rem;height:2rem;margin-inline:auto;margin-bottom:1rem;}
.diff-item h3{font-size:1.15rem;}

/* CTA */
.cta-section{text-align:center;}
.cta-section h2{font-size:clamp(2rem,5vw,3.75rem);max-width:48rem;margin-inline:auto;}
.cta-section .btn{margin-top:2.5rem;}

/* Footer */
.site-footer{padding-block:2rem;border-top:1px solid var(--border);text-align:center;}
.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;row-gap:.5rem;margin-bottom:1.5rem;}
.footer-nav a{font-size:.9rem;color:var(--muted-foreground);}
.footer-nav a:hover{color:var(--foreground);}
.footer-note{font-size:.9rem;color:var(--muted-foreground);margin-bottom:1rem;}
.footer-copyright{font-size:.75rem;color:rgba(245,245,244,0.4);}

/* Sticky mobile CTA */
.sticky-cta{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:40;
  padding:1rem;background:rgba(11,11,12,0.85);backdrop-filter:blur(6px);
  border-top:1px solid var(--border);
}
.sticky-cta .btn{width:100%;}
@media (max-width:767px){.sticky-cta.is-visible{display:block;}}

/* Work page: filter tabs */
.work-filters{
  display:inline-flex;align-items:center;gap:.25rem;background:var(--card);
  border-radius:var(--radius);padding:.25rem;margin-inline:auto;margin-bottom:3rem;
  flex-wrap:wrap;justify-content:center;
}
.work-filters button{
  border:0;background:transparent;color:var(--muted-foreground);font-size:.9rem;font-weight:500;
  border-radius:calc(var(--radius) - 2px);padding:.4rem .9rem;cursor:pointer;transition:background-color .2s ease,color .2s ease;
}
.work-filters button.is-active{background:var(--background);color:var(--foreground);}
.work-filters button:hover:not(.is-active){color:var(--foreground);}

/* Work page: case study grid */
.work-grid{display:grid;grid-template-columns:1fr;gap:2rem;}
@media (min-width:768px){.work-grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1024px){.work-grid{grid-template-columns:repeat(3,1fr);}}
.work-card{
  display:flex;flex-direction:column;height:100%;border:1px solid var(--border);
  border-radius:var(--radius);background:rgba(255,255,255,0.02);
  transition:transform .3s ease,border-color .3s ease;
}
.work-card:hover{transform:translateY(-4px);border-color:var(--primary);}
.work-card-body{padding:1.5rem;flex-grow:1;}
.work-card-client{font-size:.875rem;font-weight:600;color:var(--muted-foreground);margin-bottom:.5rem;}
.work-card-title{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:1.25rem;margin-bottom:1rem;}
.work-card-note{font-size:.9rem;color:var(--muted-foreground);opacity:.9;line-height:1.6;}
.work-card-note strong{color:rgba(245,245,244,0.9);}
.work-card-footer{padding:0 1.5rem 1.5rem;}
.work-stat{
  display:inline-flex;align-items:center;border-radius:999px;background:var(--primary);
  color:var(--primary-foreground);padding:.35rem 1rem;font-size:1rem;font-weight:700;
}
.work-card[hidden]{display:none;}

/* Work page: live data band */
.live-data-section{text-align:center;}
.live-data-section .inner{max-width:42rem;margin-inline:auto;}
.live-data-section h2{font-size:clamp(1.5rem,2.5vw,2.25rem);}
.live-data-section p{margin-top:1.5rem;color:var(--muted-foreground);line-height:1.7;}

/* Page hero (shorter than the homepage hero) */
.page-hero{
  min-height:60vh;display:flex;align-items:center;justify-content:center;
  text-align:center;padding-block:6rem;
}
.page-hero .hero-inner{max-width:48rem;}
.page-hero h1{font-size:clamp(2.5rem,6vw,5.5rem);}
.page-hero p{margin-top:1.5rem;color:var(--muted-foreground);}
.page-hero .lede{font-size:clamp(1.05rem,1.5vw,1.25rem);max-width:44rem;margin-inline:auto;}
.page-hero .subnote{margin-top:1rem;font-size:.9rem;color:rgba(154,154,157,0.8);}

/* Alternating service sections */
.service-section{padding-block:4rem;}
@media (min-width:768px){.service-section{padding-block:6rem;}}
.service-row{
  display:grid;grid-template-columns:1fr;gap:3rem;align-items:center;
}
@media (min-width:768px){.service-row{grid-template-columns:repeat(2,1fr);}}
.service-row.reverse .service-copy{order:2;}
.service-row.reverse .service-stack{order:1;}
@media (min-width:768px){
  .service-row.reverse .service-copy{padding-left:3rem;}
  .service-row .service-copy{padding-right:3rem;}
  .service-row.reverse .service-copy{padding-right:0;}
}
.service-copy h2{font-size:clamp(1.75rem,3.5vw,2.75rem);}
.service-copy .lede{margin-top:1.5rem;font-size:1.25rem;color:var(--muted-foreground);line-height:1.6;}
.service-copy .detail{margin-top:1.5rem;font-size:1rem;color:var(--muted-foreground);opacity:.85;line-height:1.7;}

.service-stack{background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;}
.service-stack h4{font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--primary);margin-bottom:1.5rem;}
.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem;}
.checklist li{display:flex;align-items:flex-start;gap:.75rem;}
.checklist svg{flex-shrink:0;margin-top:.15rem;color:var(--primary);}
.checklist span{color:var(--muted-foreground);line-height:1.6;}

.section-divider{height:1px;width:100%;background:rgba(38,38,42,0.5);margin-block:4rem;}
@media (min-width:768px){.section-divider{margin-block:6rem;}}

/* How We Work (reuses process styles, centered narrower) */
.work-section .process-flow{max-width:48rem;margin-inline:auto;}
.work-section h2{font-size:clamp(1.5rem,2.5vw,2.25rem);}

/* Who This Is For */
.who-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:56rem;margin-inline:auto;}
@media (min-width:768px){.who-grid{grid-template-columns:repeat(3,1fr);}}
.who-card{
  background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:var(--radius);
  padding:1.5rem;text-align:center;
}
.who-card svg{margin-inline:auto;margin-bottom:1rem;color:var(--primary);}
.who-card p{font-weight:600;font-size:1.1rem;}
.who-note{margin-top:3rem;text-align:center;color:var(--muted-foreground);max-width:36rem;margin-inline:auto;}

/* Our Story page: narrative text blocks */
.narrative-section{padding-block:4rem;}
@media (min-width:768px){.narrative-section{padding-block:6rem;}}
.narrative-inner{max-width:42rem;margin-inline:auto;text-align:center;}
.narrative-inner h2{font-size:clamp(1.5rem,2.5vw,2.25rem);}
.narrative-body{margin-top:2rem;display:flex;flex-direction:column;gap:1.5rem;font-size:1.1rem;color:var(--muted-foreground);line-height:1.7;}
.narrative-body p{margin:0;}
.narrative-body .emphasis{font-weight:600;color:var(--foreground);}
.bold-list{margin-top:2rem;display:flex;flex-direction:column;gap:.5rem;font-size:1.1rem;font-weight:600;color:var(--foreground);}
.bold-list p{margin:0;}

/* Our Story page: principles grid */
.think-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:3rem;}
@media (min-width:640px){.think-grid{grid-template-columns:repeat(2,1fr);}}
.think-card{
  background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:var(--radius);
  padding:1.5rem;text-align:center;
}
.think-card p{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:1.25rem;}

/* Start a Project: full-screen qualification form */
.project-modal{
  position:fixed;inset:0;z-index:70;background:var(--background);
  display:flex;flex-direction:column;overflow:hidden;
}
.project-modal-header{
  flex-shrink:0;display:flex;align-items:center;justify-content:space-between;
  padding:1rem 1.5rem;border-bottom:1px solid rgba(38,38,42,0.5);
}
.project-modal-header .site-logo{font-size:1.1rem;}
.project-modal-header .eyebrow{
  font-size:.7rem;color:var(--muted-foreground);text-transform:uppercase;
  letter-spacing:.1em;margin-top:.25rem;
}
.project-modal-close{
  display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;
  border-radius:var(--radius);color:var(--foreground);
}
.project-modal-close:hover{background:rgba(255,255,255,0.06);}

.project-modal-progress{flex-shrink:0;padding:1rem 1.5rem 0;}
.project-modal-progress .step-label{
  font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;
  color:var(--muted-foreground);margin-bottom:.75rem;
}
.progress-track{position:relative;width:100%;height:4px;background:var(--card);overflow:hidden;}
.progress-fill{
  height:100%;background:var(--primary);transition:width .4s ease;width:16.6667%;
}

.project-modal-body{flex-grow:1;overflow-y:auto;padding:2rem 1.5rem 3rem;}
.project-modal-inner{width:100%;max-width:44rem;margin-inline:auto;}

.project-step{display:none;animation:gs-step-in .3s ease;}
.project-step.is-active{display:block;}
@keyframes gs-step-in{
  from{opacity:0;transform:translateY(10px);}
  to{opacity:1;transform:translateY(0);}
}

.step-head{margin-bottom:2rem;}
.step-head h2{font-size:clamp(1.5rem,3vw,2.25rem);}
.step-head p{margin-top:.5rem;font-size:.9rem;color:var(--muted-foreground);}

.option-grid{display:grid;grid-template-columns:1fr;gap:1rem;}
.option-grid-compact{grid-template-columns:1fr;max-width:38rem;}
@media (min-width:560px){.option-grid-compact{grid-template-columns:repeat(2,1fr);}}
.option-grid-compact .option-button{text-align:center;}
.option-grid-triple{grid-template-columns:1fr;max-width:46rem;}
@media (min-width:640px){.option-grid-triple{grid-template-columns:repeat(3,1fr);}}
.option-grid-triple .option-button{text-align:center;}
.option-button{
  width:100%;text-align:left;border:1px solid var(--border);background:var(--background);
  color:var(--foreground);border-radius:var(--radius);padding:1.25rem;font-size:1.1rem;
  cursor:pointer;transition:background-color .2s ease,border-color .2s ease;
}
.option-button:hover{background:rgba(255,255,255,0.04);}
.option-button.is-selected{border-color:var(--primary);background:rgba(255,221,87,0.08);}

.field-group{margin-bottom:1.5rem;}
.field-label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem;}
.field-input{
  width:100%;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);
  color:var(--foreground);padding:.85rem 1rem;font-size:1rem;font-family:inherit;
}
.field-input:focus{outline:none;border-color:var(--primary);}
.field-hint{margin-top:2rem;font-size:.8rem;color:var(--muted-foreground);}

/* Floating label fields (label sits inside the box, above the value) */
.field-group.floating{position:relative;max-width:38rem;}
.field-floating-label{
  position:absolute;top:.55rem;left:1rem;font-size:.7rem;font-weight:500;
  color:#7fd1ea;pointer-events:none;
}
.field-floating-label .req{color:var(--primary);}
.floating-input{padding:1.6rem 1rem .6rem;}

.phone-row{display:flex;gap:.75rem;max-width:38rem;}
.phone-code{
  flex-shrink:0;display:flex;align-items:center;justify-content:center;
  width:4rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);
  font-size:1rem;color:var(--foreground);
}
.phone-input-wrap{flex-grow:1;margin-bottom:0;max-width:none;}

.step-nav{display:flex;align-items:center;justify-content:space-between;margin-top:2.5rem;gap:1rem;}
.step-back{background:none;border:0;color:var(--muted-foreground);font-size:.95rem;cursor:pointer;padding:.5rem 0;}
.step-back:hover{color:var(--foreground);}
.step-back[hidden]{visibility:hidden;}
.btn[disabled]{opacity:.5;cursor:not-allowed;}
.btn[disabled]:hover{opacity:.5;}

.form-error{
  margin-top:1rem;font-size:.85rem;color:#ff8080;display:none;
}
.form-error.is-visible{display:block;}

.project-success{display:none;text-align:center;padding-block:3rem;}
.project-success.is-active{display:block;}
.project-success svg{color:var(--primary);margin-inline:auto;margin-bottom:1.5rem;}
.project-success h2{font-size:clamp(1.75rem,3.5vw,2.5rem);}
.project-success p{margin-top:1rem;color:var(--muted-foreground);font-size:1.1rem;max-width:32rem;margin-inline:auto;}
.project-success .btn{margin-top:2rem;}

/* Blog listing: card grid */
.blog-grid{display:grid;grid-template-columns:1fr;gap:2rem;}
@media (min-width:768px){.blog-grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1024px){.blog-grid{grid-template-columns:repeat(3,1fr);}}
.blog-card{
  display:flex;flex-direction:column;height:100%;border:1px solid var(--border);
  border-radius:var(--radius);background:rgba(255,255,255,0.02);padding:1.5rem;
  transition:transform .3s ease,border-color .3s ease;
}
.blog-card:hover{transform:translateY(-4px);border-color:var(--primary);}
.blog-card-meta{display:flex;align-items:center;gap:.65rem;font-size:.85rem;color:var(--muted-foreground);margin-bottom:.85rem;}
.blog-badge{
  display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;
  padding:.2rem .65rem;font-size:.7rem;font-weight:600;color:var(--foreground);
}
.blog-card-title{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:1.25rem;margin-bottom:.6rem;line-height:1.3;}
.blog-card-excerpt{font-size:.95rem;color:var(--muted-foreground);opacity:.9;line-height:1.6;}

/* Blog listing: pagination */
.blog-pagination{margin-top:3rem;}
.blog-pagination .nav-links{display:flex;justify-content:center;align-items:center;gap:.5rem;flex-wrap:wrap;}
.blog-pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;
  padding:0 .6rem;border-radius:var(--radius);border:1px solid var(--border);
  color:var(--muted-foreground);font-size:.9rem;
}
.blog-pagination a.page-numbers:hover{color:var(--foreground);border-color:var(--primary);}
.blog-pagination .page-numbers.current{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary);}
.blog-pagination .page-numbers.dots{border-color:transparent;}

/* Utility: hide on mobile, show from small breakpoint up */
.hide-mobile{display:none;}
@media (min-width:640px){.hide-mobile{display:inline-flex;}}

/* Single post */
.post-article{padding-block:6rem;}
.post-header{margin-bottom:3rem;text-align:center;}
.post-header h1{font-size:clamp(2rem,4.5vw,3.75rem);margin-top:1rem;}
.post-meta{
  margin-top:1.5rem;display:flex;justify-content:center;align-items:center;gap:.75rem;
  font-size:.85rem;color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.08em;
  flex-wrap:wrap;
}
.post-meta .dot{opacity:.5;}
.post-thumbnail{margin-bottom:3rem;border-radius:var(--radius);overflow:hidden;}
.post-thumbnail img{width:100%;height:auto;display:block;}

.post-content{color:rgba(245,245,244,0.9);line-height:1.8;font-size:1.1rem;}
.post-content p{margin:0 0 1.5rem;}
.post-content p:last-child{margin-bottom:0;}
.post-content h2,.post-content h3,.post-content h4{
  font-family:"Space Grotesk",sans-serif;font-weight:700;color:var(--foreground);
  margin:2.5rem 0 1rem;line-height:1.3;
}
.post-content h2{font-size:1.75rem;}
.post-content h3{font-size:1.35rem;}
.post-content a{color:var(--primary);text-decoration:underline;text-underline-offset:.2em;}
.post-content a:hover{color:rgba(255,221,87,0.8);}
.post-content strong{color:var(--foreground);font-weight:700;}
.post-content ul,.post-content ol{margin:0 0 1.5rem;padding-left:1.5rem;}
.post-content li{margin-bottom:.5rem;}
.post-content blockquote{
  margin:2rem 0;padding-left:1.25rem;border-left:2px solid var(--primary);
  color:var(--muted-foreground);font-style:italic;
}
.post-content img{max-width:100%;height:auto;border-radius:var(--radius);margin:2rem 0;}

.post-divider{height:1px;width:100%;background:rgba(38,38,42,0.5);margin:3rem 0;}

.post-cta-block{text-align:center;}
.post-cta-block p{font-size:1.1rem;font-style:italic;color:var(--muted-foreground);}
.post-cta-block .btn{margin-top:1.5rem;}

/* Case study detail page */
.cs-hero{
  min-height:70vh;display:flex;align-items:center;justify-content:center;
  text-align:center;padding-block:6rem;
}
.cs-hero-inner{max-width:56rem;margin-inline:auto;}
.cs-eyebrow{font-family:"Space Grotesk",sans-serif;font-size:1.1rem;color:var(--muted-foreground);}
.cs-hero h1{margin-top:1rem;font-size:clamp(1.5rem,3.5vw,2.25rem);max-width:42rem;margin-inline:auto;}
.cs-stat{margin-top:3rem;font-size:clamp(2.5rem,8vw,6rem);font-weight:700;color:var(--primary);font-family:"Space Grotesk",sans-serif;}

.cs-system-grid{display:grid;grid-template-columns:1fr;gap:2rem;max-width:56rem;margin-inline:auto;}
@media (min-width:768px){.cs-system-grid{grid-template-columns:repeat(3,1fr);}}
.cs-system-card{background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;}
.cs-system-icon{margin-bottom:1rem;color:var(--foreground);}
.cs-system-icon svg{width:1.5rem;height:1.5rem;}
.cs-system-card h3{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:1.2rem;margin-bottom:.5rem;}
.cs-system-card p{font-size:.9rem;color:var(--muted-foreground);line-height:1.6;}

.cs-quote{
  margin-top:2rem;padding-left:1.5rem;border-left:2px solid var(--primary);
  text-align:left;font-size:1.15rem;font-weight:600;color:var(--foreground);font-style:italic;
}

/* Mobile menu drawer */
.mobile-menu{
  position:fixed;inset:0;z-index:60;background:var(--background);
  display:none;flex-direction:column;padding:1.5rem;
}
.mobile-menu.is-open{display:flex;}
.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;}
.mobile-menu ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.5rem;}
.mobile-menu a{font-size:1.5rem;font-weight:600;font-family:"Space Grotesk",sans-serif;}
