/* =========================================================================
   WORDY CLASSROOM — Refined Schoolbook
   ========================================================================= */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
    --color-primary:#d4a72c;
    --color-primary-dark:#a17e1f;
    --color-accent-tint:#f6ecc8;
    --color-text:#14213d;
    --color-text-light:#5a5e72;
    --color-text-muted:#8a8e9c;
    --color-bg:#fbf8f1;
    --color-bg-alt:#f3eee2;
    --color-bg-dark:#14213d;
    --color-border:#e6e0d0;
    --color-rule:#d9d2bf;
    --color-success:#2f7a4a;
    --font-body:'Inter',-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif;
    --font-heading:'Playfair Display','Source Serif 4',Georgia,serif;
    --font-mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;
    --radius:6px;--radius-lg:12px;
    --shadow:0 4px 16px rgba(20,33,61,.07);
    --t-fast:160ms cubic-bezier(.4,0,.2,1);
    --t:280ms cubic-bezier(.4,0,.2,1);
    --container-max:1180px;
    --container-pad:clamp(1.25rem,4vw,2.5rem);
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--color-bg)}
body{font-family:var(--font-body);font-size:17px;line-height:1.62;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
:where(p,li) a:not([class]){color:var(--color-primary-dark)}
ul,ol{list-style:none}
::selection{background:var(--color-primary);color:var(--color-text)}

.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad)}
.skip-link{position:absolute;top:-100%;left:0;background:var(--color-text);color:var(--color-bg);padding:.6rem 1rem;z-index:9999;font-weight:600;font-size:.875rem}
.skip-link:focus{top:0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--color-text-light)}
.eyebrow::before{content:"";width:18px;height:1px;background:var(--color-primary-dark)}

.highlight{position:relative;white-space:nowrap;font-style:italic;color:var(--color-text);z-index:1}
.highlight::after{content:"";position:absolute;left:-.05em;right:-.05em;bottom:.05em;height:.32em;background:var(--color-primary);opacity:.45;z-index:-1;border-radius:2px;transform:skewX(-6deg)}

.section-header{text-align:left;margin-bottom:2.5rem;max-width:720px}
.section-header.center{text-align:center;margin-left:auto;margin-right:auto}
.section-header.center .eyebrow{justify-content:center}
.section-header h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(1.75rem,3.4vw,2.5rem);line-height:1.12;letter-spacing:-.015em;margin-top:.75rem;text-wrap:balance}
.section-header p{color:var(--color-text-light);font-size:1.05rem;margin-top:.85rem;max-width:56ch;text-wrap:pretty}
.section-header.center p{margin-left:auto;margin-right:auto}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.4rem;border-radius:var(--radius);font-family:var(--font-body);font-weight:500;font-size:.95rem;letter-spacing:.01em;cursor:pointer;transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast);border:1px solid transparent;text-align:center;line-height:1.2;white-space:nowrap}
.btn::after{content:"→";transition:transform var(--t-fast);font-family:var(--font-body)}
.btn:hover::after{transform:translateX(3px)}
.btn-primary{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}
.btn-primary:hover,.btn-primary:focus-visible{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#fff}
.btn-outline{background:transparent;color:var(--color-text);border-color:var(--color-rule)}
.btn-outline:hover,.btn-outline:focus-visible{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}
.btn-lg{padding:1.05rem 1.7rem;font-size:1rem}
.btn-full{width:100%}
.service-card .btn,.related-service-card .btn-outline{align-self:flex-start;padding:0;border:0;background:transparent;color:var(--color-text);font-size:.9rem;font-weight:600;letter-spacing:0;border-bottom:1px solid var(--color-text);border-radius:0;padding-bottom:2px}
.service-card .btn:hover,.related-service-card .btn-outline:hover{background:transparent;color:var(--color-primary-dark);border-bottom-color:var(--color-primary-dark);transform:none}
button:focus-visible,a:focus-visible,[role="menuitem"]:focus-visible,summary:focus-visible{outline:2px solid var(--color-primary-dark);outline-offset:3px;border-radius:2px}

/* Header & nav */
.header{position:sticky;top:0;background:color-mix(in srgb,var(--color-bg) 92%,transparent);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--color-rule);z-index:1000;padding:.85rem 0}
.nav{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.logo{display:inline-flex;align-items:baseline;gap:.4rem}
.logo-text{font-family:var(--font-heading);font-size:1.2rem;font-weight:600;color:var(--color-text);letter-spacing:-.005em;white-space:nowrap;display:inline-block;position:relative}
.logo-text[data-typing="active"]::after,.logo-text[data-typing="done"]::after{content:"";display:inline-block;width:2px;height:.95em;background:var(--color-primary-dark);margin-left:3px;transform:translateY(2px);animation:caret-blink 1.05s steps(2,end) infinite;vertical-align:baseline}
@keyframes caret-blink{0%,49%{opacity:1}50%,100%{opacity:0}}

.nav-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:.5rem}
.nav-toggle-bar{width:22px;height:1.5px;background:var(--color-text);transition:var(--t-fast);border-radius:1px}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.nav-menu{position:absolute;top:100%;left:0;right:0;background:var(--color-bg);border-bottom:1px solid var(--color-rule);padding:.5rem var(--container-pad) 1rem;display:none;flex-direction:column;gap:.25rem;box-shadow:var(--shadow)}
.nav-menu.open{display:flex}
.nav-link{padding:.7rem .9rem;border-radius:var(--radius);font-size:.95rem;font-weight:500;color:var(--color-text);transition:color var(--t-fast),background var(--t-fast);position:relative}
.nav-link:hover,.nav-link:focus-visible{color:var(--color-primary-dark)}

/* Hero */
.hero{padding:clamp(3rem,7vw,5.5rem) 0 clamp(3rem,6vw,4.5rem);background:var(--color-bg);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,var(--color-rule) 1px,transparent 0);background-size:28px 28px;opacity:.25;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 70% 20%,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 70% 20%,#000 30%,transparent 75%);pointer-events:none}
.hero .container{position:relative}
.hero-content{text-align:left;max-width:920px}
.hero h1{font-family:var(--font-heading);font-weight:600;font-size:clamp(2.1rem,6.5vw,4.4rem);line-height:1.05;letter-spacing:-.022em;margin-bottom:1.25rem;text-wrap:balance;color:var(--color-text)}
.hero-subtitle{font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.55;color:var(--color-text-light);margin-bottom:2.25rem;max-width:56ch;text-wrap:pretty}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-bottom:2.5rem;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);padding:1.4rem 0;max-width:600px}
.stat{text-align:left;padding:0 1.25rem;border-right:1px solid var(--color-rule)}
.stat:first-child{padding-left:0}.stat:last-child{border-right:0}
.stat-number{display:block;font-family:var(--font-heading);font-style:italic;font-weight:600;font-size:clamp(1.7rem,3vw,2.25rem);color:var(--color-text);line-height:1;letter-spacing:-.01em}
.stat-label{display:block;margin-top:.5rem;font-size:.72rem;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.15em;font-weight:500}

/* Services */
.services{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--color-bg-alt);border-top:1px solid var(--color-rule)}
.services-grid{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--color-rule);counter-reset:service-counter}
.service-card{padding:2rem 0;border-bottom:1px solid var(--color-rule);transition:background var(--t-fast);position:relative;display:flex;flex-direction:column;gap:.6rem;counter-increment:service-counter}
.service-card::before{content:"0" counter(service-counter);font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:.4rem;display:block}
.service-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-primary-dark);border:1px solid var(--color-rule);border-radius:50%;background:var(--color-bg);margin:.25rem 0 .5rem}
.service-icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.service-card h3{font-family:var(--font-heading);font-weight:600;font-size:1.4rem;line-height:1.2;letter-spacing:-.01em;color:var(--color-text)}
.service-card p{color:var(--color-text-light);font-size:.98rem;line-height:1.6;max-width:58ch}
.services-cta{margin-top:2.5rem;display:flex;justify-content:flex-start}

/* About */
.about{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--color-bg);border-top:1px solid var(--color-rule)}
.about-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start}
.about-image{position:relative}
.about-image-placeholder{width:100%;max-width:360px;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius-lg);background:var(--color-bg-alt);position:relative;z-index:1;box-shadow:0 6px 20px rgba(212,167,44,.12),var(--shadow)}
.about-content h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(1.75rem,3.2vw,2.4rem);line-height:1.15;letter-spacing:-.015em;margin-bottom:1.25rem;text-wrap:balance}
.about-content p{color:var(--color-text-light);margin-bottom:1.1rem;font-size:1rem;line-height:1.7;max-width:60ch}
.expertise-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}
.tag{background:var(--color-accent-tint);border:1px solid var(--color-primary);color:var(--color-primary-dark);padding:.35rem .8rem;border-radius:999px;font-size:.78rem;font-weight:500;letter-spacing:.02em}
.about-content .btn{margin-top:.75rem}

/* Testimonials */
.testimonials{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--color-bg-alt);border-top:1px solid var(--color-rule)}
.testimonials-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
.testimonial-card{background:var(--color-bg);padding:2.25rem 1.75rem 1.75rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);position:relative;overflow:hidden}
.testimonial-card::before{content:"\201C";position:absolute;top:-.35em;left:.5rem;font-family:var(--font-heading);font-size:6rem;line-height:1;color:var(--color-primary);opacity:.35;font-weight:700}
.testimonial-card p{font-family:var(--font-heading);font-style:italic;font-weight:400;font-size:1.05rem;line-height:1.55;color:var(--color-text);margin-bottom:1.25rem;position:relative;z-index:1}
.testimonial-card footer{border-top:1px solid var(--color-rule);padding-top:.85rem}
.testimonial-card cite{font-style:normal;font-weight:500;font-size:.82rem;color:var(--color-text-light);letter-spacing:.02em}

/* FAQ */
.faq{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--color-bg);border-top:1px solid var(--color-rule)}
.faq-list{max-width:760px;margin:0 auto;border-top:1px solid var(--color-rule)}
.faq-item{border-bottom:1px solid var(--color-rule);background:transparent}
.faq-item summary{padding:1.15rem 0;font-family:var(--font-heading);font-weight:600;font-size:1.1rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--color-text);transition:color var(--t-fast)}
.faq-item summary:hover{color:var(--color-primary-dark)}
.faq-item summary::after{content:"";width:14px;height:14px;flex-shrink:0;background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-size:14px 1.5px,1.5px 14px;background-position:center;background-repeat:no-repeat;transition:transform var(--t)}
.faq-item[open] summary::after{background-size:14px 1.5px,0 0}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item p{padding:0 0 1.25rem;color:var(--color-text-light);font-size:.98rem;line-height:1.7;max-width:64ch}

/* CTA */
.section-cta{padding:clamp(3.5rem,7vw,5.5rem) 0;text-align:left;background:var(--color-bg);border-top:1px solid var(--color-rule)}
.section-cta .container{display:flex;flex-direction:column;gap:1rem;max-width:720px}
.section-cta h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(1.8rem,3.5vw,2.6rem);letter-spacing:-.015em;line-height:1.15;margin-bottom:.25rem;text-wrap:balance;color:var(--color-text)}
.section-cta p{color:var(--color-text-light);margin-bottom:1.25rem;font-size:1.05rem;max-width:56ch}
.section-cta .btn{align-self:flex-start}

/* Footer */
.footer{background:var(--color-bg-dark);color:color-mix(in srgb,var(--color-bg) 70%,transparent);padding:4rem 0 1.5rem}
.footer-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;margin-bottom:3rem;padding-bottom:2.5rem;border-bottom:1px solid color-mix(in srgb,var(--color-bg) 15%,transparent)}
.footer-brand .logo-text{color:var(--color-bg);margin-bottom:.75rem;display:block;font-size:1.4rem}
.footer-brand .logo-text::after{display:none!important}
.footer-brand p{font-size:.95rem;color:color-mix(in srgb,var(--color-bg) 55%,transparent);max-width:32ch;line-height:1.6}
.footer-nav h4,.footer-contact h4{color:var(--color-bg);margin-bottom:1rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;font-family:var(--font-body)}
.footer-nav ul li a,.footer-contact a{color:color-mix(in srgb,var(--color-bg) 60%,transparent);font-size:.95rem;padding:.3rem 0;display:inline-block;transition:color var(--t-fast)}
.footer-nav ul li a:hover,.footer-contact a:hover{color:var(--color-primary)}
.footer-contact p{font-size:.95rem;margin-bottom:.2rem}
.footer-bottom{display:flex;flex-direction:column;gap:1rem;font-size:.85rem;color:color-mix(in srgb,var(--color-bg) 45%,transparent)}
.footer-legal{display:flex;gap:1.5rem}
.footer-legal a{color:color-mix(in srgb,var(--color-bg) 45%,transparent);transition:color var(--t-fast)}
.footer-legal a:hover{color:var(--color-primary)}

/* Breadcrumb / page hero */
.breadcrumb{padding:.95rem 0;background:var(--color-bg);border-bottom:1px solid var(--color-rule)}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.82rem;color:var(--color-text-light);font-family:var(--font-mono);letter-spacing:.02em}
.breadcrumb li:not(:last-child)::after{content:"/";margin-left:.5rem;color:var(--color-text-muted)}
.breadcrumb a{color:var(--color-text-light);transition:color var(--t-fast)}
.breadcrumb a:hover{color:var(--color-primary-dark)}
.breadcrumb [aria-current="page"]{color:var(--color-text);font-weight:500}

.page-hero{padding:clamp(3.5rem,6vw,5.5rem) 0 clamp(2.5rem,5vw,4rem);background:var(--color-bg);text-align:left;border-bottom:1px solid var(--color-rule);position:relative}
.page-hero .container{max-width:880px}
.page-hero h1{font-family:var(--font-heading);font-weight:600;font-size:clamp(1.9rem,4.5vw,3.1rem);line-height:1.08;letter-spacing:-.02em;margin-bottom:1rem;text-wrap:balance}
.page-hero-subtitle{font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--color-text-light);max-width:60ch;line-height:1.55;text-wrap:pretty}

/* Services hero — table-of-contents style */
.services-hero{padding:clamp(3.5rem,6vw,5.5rem) 0 clamp(3rem,5vw,4.5rem);background:var(--color-bg);border-bottom:1px solid var(--color-rule);position:relative;overflow:hidden}
.services-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,var(--color-rule) 1px,transparent 0);background-size:28px 28px;opacity:.22;-webkit-mask-image:radial-gradient(ellipse 70% 65% at 20% 20%,#000 30%,transparent 75%);mask-image:radial-gradient(ellipse 70% 65% at 20% 20%,#000 30%,transparent 75%);pointer-events:none}
.services-hero .container{position:relative;display:grid;grid-template-columns:1fr;gap:3rem;align-items:start}
.services-hero-lede{max-width:560px}
.services-hero-lede h1{font-family:var(--font-heading);font-weight:600;font-size:clamp(2.2rem,5.5vw,3.75rem);line-height:1.06;letter-spacing:-.02em;margin:.85rem 0 1.25rem;text-wrap:balance;color:var(--color-text)}
.services-hero-subtitle{font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--color-text-light);max-width:48ch;line-height:1.55;text-wrap:pretty;margin-bottom:2rem}
.services-hero-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);padding:1.1rem 0;max-width:560px}
.services-hero-facts > div{padding:0 1rem;border-right:1px solid var(--color-rule);min-width:0}
.services-hero-facts > div:first-child{padding-left:0}
.services-hero-facts > div:last-child{border-right:0}
.services-hero-facts dt{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-light);font-weight:600;margin-bottom:.4rem}
.services-hero-facts dd{font-family:var(--font-heading);font-weight:600;font-style:italic;font-size:clamp(1.05rem,1.7vw,1.35rem);color:var(--color-text);line-height:1.1;letter-spacing:-.01em}
.services-hero-facts dd span{font-family:var(--font-body);font-style:normal;font-weight:400;font-size:.78rem;color:var(--color-text-light);letter-spacing:0;display:block;margin-top:.2rem}

.services-index{position:relative}
.services-index-title{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.22em;color:var(--color-text-light);font-weight:600;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-rule)}
.services-index ol{display:flex;flex-direction:column;gap:0;counter-reset:none}
.services-index li{border-bottom:1px dotted var(--color-rule)}
.services-index li:last-child{border-bottom:0}
.services-index a{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:baseline;padding:.85rem 0;color:var(--color-text);transition:color var(--t-fast),padding var(--t-fast)}
.services-index a:hover,.services-index a:focus-visible{color:var(--color-primary-dark);padding-left:.4rem}
.services-index .num{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;color:var(--color-text-muted);font-weight:500}
.services-index .name{font-family:var(--font-heading);font-weight:600;font-size:1.05rem;line-height:1.25;letter-spacing:-.005em}
.services-index .arrow{font-family:var(--font-body);font-size:1rem;color:var(--color-text-muted);transition:transform var(--t-fast),color var(--t-fast)}
.services-index a:hover .arrow,.services-index a:focus-visible .arrow{color:var(--color-primary-dark);transform:translateX(4px)}

/* Content sections */
.content-section{padding:clamp(3rem,6vw,5rem) 0;background:var(--color-bg);counter-reset:service-detail}
.content-section--alt{background:var(--color-bg-alt);border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule)}
.content-narrow{max-width:720px;margin:0 auto}
.content-section h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.2;letter-spacing:-.01em;margin-bottom:1.25rem;text-wrap:balance}
.content-section p{color:var(--color-text-light);line-height:1.75;margin-bottom:1rem;font-size:1rem}

/* Pricing */
.pricing-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}
.pricing-card{background:var(--color-bg);padding:2rem 1.75rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);text-align:left;position:relative;transition:border-color var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast);display:flex;flex-direction:column}
.pricing-card:hover{border-color:var(--color-primary);transform:translateY(-3px);box-shadow:var(--shadow)}
.pricing-card.featured{border-color:var(--color-text);background:var(--color-text);color:var(--color-bg)}
.pricing-card.featured h3,.pricing-card.featured .price{color:var(--color-bg)}
.pricing-card.featured .price-detail,.pricing-card.featured .pricing-features li{color:color-mix(in srgb,var(--color-bg) 75%,transparent)}
.pricing-card.featured .pricing-features li{border-color:color-mix(in srgb,var(--color-bg) 18%,transparent)}
.pricing-card .badge{position:absolute;top:1.25rem;right:1.25rem;background:var(--color-text);color:var(--color-bg);padding:.25rem .7rem;border-radius:999px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em}
.pricing-card.featured .badge{background:var(--color-primary);color:var(--color-text)}
.pricing-card h3{font-family:var(--font-heading);font-weight:600;font-size:1.15rem;margin-bottom:.75rem;color:var(--color-text)}
.price{font-family:var(--font-heading);font-size:3rem;font-weight:600;color:var(--color-text);line-height:1;letter-spacing:-.02em}
.price-detail{color:var(--color-text-light);font-size:.88rem;margin:.4rem 0 1.5rem}
.pricing-features{margin-bottom:1.5rem;flex:1}
.pricing-features li{padding:.6rem 0;padding-left:1.4rem;position:relative;font-size:.92rem;color:var(--color-text-light);border-bottom:1px solid var(--color-rule)}
.pricing-features li:last-child{border-bottom:0}
.pricing-features li::before{content:"";position:absolute;left:0;top:1.1rem;width:10px;height:1px;background:var(--color-primary-dark)}
.pricing-card.featured .pricing-features li::before{background:var(--color-primary)}
.pricing-card .btn{align-self:flex-start}
.pricing-card.featured .btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text)}
.pricing-card.featured .btn-outline{color:var(--color-bg);border-color:var(--color-bg)}
.pricing-card.featured .btn-outline:hover{background:var(--color-bg);color:var(--color-text)}

/* Service detail cards */
.service-detail-card{padding:2.5rem 0;border-top:1px solid var(--color-rule);background:transparent;counter-increment:service-detail;position:relative;display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:start}
.service-detail-card::before{content:"0" counter(service-detail);font-family:var(--font-mono);font-size:.85rem;color:var(--color-text-muted);letter-spacing:.1em;padding-top:.4rem}
.service-detail-card:last-child{border-bottom:1px solid var(--color-rule)}
.service-detail-content h3{font-family:var(--font-heading);font-weight:600;font-size:clamp(1.3rem,2.4vw,1.7rem);margin-bottom:.85rem;line-height:1.2}
.service-detail-content h3 a{color:var(--color-text);border-bottom:1px solid transparent;transition:border-color var(--t-fast)}
.service-detail-content h3 a:hover{color:var(--color-primary-dark);border-bottom-color:var(--color-primary-dark)}
.service-detail-content > p{color:var(--color-text-light);font-size:1rem;line-height:1.7;margin-bottom:1.25rem;max-width:62ch}
.service-highlights{margin-bottom:1.5rem}
.service-highlights li{padding:.3rem 0;padding-left:1.5rem;position:relative;font-size:.95rem;color:var(--color-text-light)}
.service-highlights li::before{content:"";position:absolute;left:0;top:.85rem;width:12px;height:1px;background:var(--color-primary-dark)}
.service-detail-meta{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;padding-top:1rem;border-top:1px solid var(--color-rule)}
.service-price-tag{font-family:var(--font-heading);font-weight:600;font-style:italic;font-size:1.1rem;color:var(--color-text)}

/* Quals/approach */
.quals-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:start}
.approach-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
.quals-grid .qual-item:last-child{grid-column:1/-1}
.qual-item,.approach-item{padding:1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg)}
.qual-item h3,.approach-item h3{font-family:var(--font-heading);font-weight:600;font-size:1.1rem;margin-bottom:.5rem}
.qual-item p,.approach-item p{color:var(--color-text-light);font-size:.95rem;margin-bottom:0;line-height:1.65}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr;gap:2.5rem}
.form-group{margin-bottom:1.25rem}
.form-group label{display:block;font-weight:500;margin-bottom:.4rem;font-size:.85rem;letter-spacing:.02em;color:var(--color-text)}
.optional-label{font-weight:400;color:var(--color-text-muted);letter-spacing:0}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:.85rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);font-family:var(--font-body);font-size:1rem;background:var(--color-bg);color:var(--color-text);transition:border-color var(--t-fast),box-shadow var(--t-fast);appearance:none;-webkit-appearance:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-dark);box-shadow:0 0 0 3px var(--color-accent-tint)}
.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' stroke='%2314213d' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}
.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.contact-info{padding:2rem;background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius-lg)}
.contact-info h3{font-family:var(--font-heading);margin-bottom:1.25rem;font-size:1.25rem}
.info-list dt{font-weight:500;font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:var(--color-text-light);margin-top:1.25rem}
.info-list dt:first-child{margin-top:0}
.info-list dd{font-size:.98rem;margin-top:.3rem}
.info-list dd a{color:var(--color-text);border-bottom:1px solid var(--color-primary-dark);padding-bottom:1px;transition:color var(--t-fast)}
.info-list dd a:hover{color:var(--color-primary-dark)}
.social-links{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--color-rule)}
.social-links h4{font-size:.72rem;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.18em;color:var(--color-text-light);font-weight:500}
.social-links a{display:inline-block;margin-right:1.25rem;padding:.3rem 0;color:var(--color-text);font-size:.92rem;transition:color var(--t-fast);border-bottom:1px solid var(--color-rule)}
.social-links a:hover{color:var(--color-primary-dark);border-bottom-color:var(--color-primary-dark)}

.checklist{margin:1rem 0 1.5rem}
.checklist li{padding:.4rem 0;padding-left:1.5rem;position:relative;font-size:.95rem;color:var(--color-text-light)}
.checklist li::before{content:"";position:absolute;left:0;top:.95rem;width:10px;height:1px;background:var(--color-primary-dark)}
.contact-pricing-summary{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-rule)}
.contact-pricing-summary h4{font-family:var(--font-heading);font-size:1.05rem;margin-bottom:.5rem}

/* Service landing */
.service-hero{padding:clamp(3.5rem,6vw,5.5rem) 0 clamp(2.5rem,5vw,4rem);background:var(--color-bg);border-bottom:1px solid var(--color-rule)}
.service-hero-content{margin-bottom:2rem}
.service-hero h1{font-family:var(--font-heading);font-weight:600;font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.08;letter-spacing:-.02em;margin-bottom:1rem;text-wrap:balance}
.service-hero-subtitle{font-size:1.05rem;color:var(--color-primary-dark);font-weight:500;margin-bottom:1.25rem;font-style:italic;font-family:var(--font-heading)}
.service-hero-intro{font-size:1.05rem;color:var(--color-text-light);line-height:1.7;margin-bottom:1.75rem;max-width:58ch}
.service-hero-stats{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);padding:1rem 0}
.stat-pill{padding:.5rem 1.25rem;text-align:left;flex:1;min-width:110px;border-right:1px solid var(--color-rule)}
.stat-pill:first-child{padding-left:0}.stat-pill:last-child{border-right:0}
.stat-pill-value{display:block;font-family:var(--font-heading);font-weight:600;font-style:italic;font-size:1.2rem;color:var(--color-text)}
.stat-pill-label{display:block;font-size:.7rem;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.15em;margin-top:.25rem;font-weight:500}
.service-section{padding:clamp(3rem,6vw,5rem) 0;background:var(--color-bg)}
.service-section--alt{background:var(--color-bg-alt);border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule)}
.service-section h2{font-family:var(--font-heading);font-weight:600;font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.2;letter-spacing:-.01em;margin-bottom:1.25rem;text-wrap:balance}
.service-section p{color:var(--color-text-light);line-height:1.7;margin-bottom:1rem;font-size:1rem}
.section-subtitle{color:var(--color-text-light);margin-bottom:2rem;font-size:1.05rem;max-width:60ch}
.topic-block{margin-bottom:2.25rem;padding-bottom:2.25rem;border-bottom:1px solid var(--color-rule)}
.topic-block:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.topic-block h3{font-family:var(--font-heading);font-weight:600;font-size:1.25rem;margin-bottom:.85rem}
.audience-list{display:grid;grid-template-columns:1fr;gap:1.25rem}
.audience-item{padding:1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg)}
.audience-item h3{font-family:var(--font-heading);font-weight:600;font-size:1.1rem;margin-bottom:.5rem}
.audience-item p{margin-bottom:0;font-size:.95rem;line-height:1.65}
.audience-item--cta{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text);margin-top:1.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 2rem}
.audience-item--cta h3{color:var(--color-bg);flex:0 0 100%}
.audience-item--cta p{color:color-mix(in srgb,var(--color-bg) 80%,transparent);margin-bottom:0;flex:1;min-width:180px}
.audience-item--cta .btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text);flex-shrink:0}.audience-item--cta .btn-outline{color:var(--color-bg);border-color:var(--color-bg);flex-shrink:0}.audience-item--cta .btn-outline:hover,.audience-item--cta .btn-outline:focus-visible{background:var(--color-bg);border-color:var(--color-bg);color:var(--color-text)}
.service-pricing-card{background:var(--color-bg);border:1px solid var(--color-text);border-radius:var(--radius-lg);padding:2.25rem 1.75rem;text-align:left;max-width:460px;margin:0 auto;box-shadow:var(--shadow)}
.service-pricing-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
.service-pricing-grid .service-pricing-card{max-width:none;margin:0}
.service-pricing-header h3{font-family:var(--font-heading);font-weight:600;font-size:1.2rem;margin-bottom:.5rem}
.service-price{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-rule)}
.service-price-amount{font-family:var(--font-heading);font-size:3.25rem;font-weight:600;color:var(--color-text);line-height:1;letter-spacing:-.02em}
.service-price-unit{display:block;font-size:.9rem;color:var(--color-text-light);margin-top:.5rem}
.service-pricing-includes{text-align:left;margin-bottom:1.5rem;padding:0}
.service-pricing-includes li{padding:.65rem 0;padding-left:1.4rem;position:relative;font-size:.95rem;color:var(--color-text-light);border-bottom:1px solid var(--color-rule)}
.service-pricing-includes li:last-child{border-bottom:0}
.service-pricing-includes li::before{content:"";position:absolute;left:0;top:1.2rem;width:10px;height:1px;background:var(--color-primary-dark)}
.related-services-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}
.related-service-card{padding:1.75rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);display:flex;flex-direction:column;gap:.6rem;transition:border-color var(--t-fast),transform var(--t-fast)}
.related-service-card:hover{border-color:var(--color-primary);transform:translateY(-2px)}
.related-service-card h3{font-family:var(--font-heading);font-weight:600;font-size:1.15rem;margin:0}
.related-service-tagline{color:var(--color-primary-dark)!important;font-weight:500;font-size:.85rem!important;font-style:italic;margin-bottom:.25rem!important;font-family:var(--font-heading)}
.related-service-card p:last-of-type{margin-bottom:.5rem;color:var(--color-text-light);font-size:.95rem;line-height:1.6}

/* Blog */
.blog-feed{padding:clamp(3rem,6vw,5rem) 0;background:var(--color-bg)}
.blog-grid{display:grid;grid-template-columns:1fr;gap:2rem}
.blog-card{border:0;border-radius:0;overflow:visible;display:flex;flex-direction:column;background:transparent;transition:transform var(--t-fast)}
.blog-card:hover{transform:translateY(-2px)}
.blog-card-image{aspect-ratio:4/3;overflow:hidden;background:var(--color-bg-alt);border-radius:var(--radius-lg);margin-bottom:1.25rem;border:1px solid var(--color-border)}
.blog-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.blog-card:hover .blog-card-image img{transform:scale(1.04)}
.blog-card-body{padding:0;display:flex;flex-direction:column;flex:1}
.blog-card-category{display:inline-block;color:var(--color-primary-dark);font-family:var(--font-mono);font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.18em;margin-bottom:.75rem;background:transparent;border:0;padding:0}
.blog-card-title{font-family:var(--font-heading);font-weight:600;font-size:1.35rem;line-height:1.2;margin-bottom:.75rem;color:var(--color-text);letter-spacing:-.005em}
.blog-card-title a{color:inherit;transition:color var(--t-fast)}
.blog-card-title a:hover{color:var(--color-primary-dark)}
.blog-card-excerpt{color:var(--color-text-light);font-size:.96rem;line-height:1.65;margin-bottom:1.25rem;flex:1}
.blog-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--color-rule);gap:1rem}
.blog-card-meta{font-size:.78rem;color:var(--color-text-muted);display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);letter-spacing:.02em}
.blog-card-meta-sep{opacity:.5}
.blog-card-link{font-size:.85rem;font-weight:500;color:var(--color-text);border-bottom:1px solid var(--color-text);padding-bottom:1px;white-space:nowrap;transition:color var(--t-fast)}
.blog-card-link:hover{color:var(--color-primary-dark);border-bottom-color:var(--color-primary-dark)}
.blog-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-rule)}
.blog-filter-btn{background:transparent;border:1px solid var(--color-rule);border-radius:999px;padding:.5rem 1rem;font-size:.82rem;font-weight:500;cursor:pointer;color:var(--color-text-light);transition:var(--t-fast);font-family:var(--font-body)}
.blog-filter-btn:hover,.blog-filter-btn.active{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}

.article-hero-image{background:var(--color-bg-alt);overflow:hidden;border-bottom:1px solid var(--color-rule);aspect-ratio:2048/1152;width:100%}
.article-hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.article-header{padding:clamp(3rem,6vw,5rem) 0 clamp(2rem,4vw,3rem);background:var(--color-bg);text-align:center;border-bottom:1px solid var(--color-rule)}
.article-category{display:inline-block;color:var(--color-primary-dark);font-family:var(--font-mono);font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.2em;margin-bottom:1.25rem;background:transparent;border:0;padding:0}
.article-title{font-family:var(--font-heading);font-weight:600;font-size:clamp(2rem,5vw,3.25rem);line-height:1.1;margin-bottom:1.25rem;max-width:800px;margin-left:auto;margin-right:auto;letter-spacing:-.018em;text-wrap:balance}
.article-lead{font-family:var(--font-heading);font-style:italic;font-size:clamp(1.1rem,1.6vw,1.3rem);color:var(--color-text-light);max-width:680px;margin:0 auto 1.75rem;line-height:1.55;font-weight:400;text-wrap:pretty}
.article-meta{display:flex;align-items:center;justify-content:center;gap:.6rem;font-size:.82rem;color:var(--color-text-light);flex-wrap:wrap;font-family:var(--font-mono);letter-spacing:.02em}
.article-meta-sep{opacity:.4}
.article-meta a{text-decoration:underline;text-underline-offset:2px}
.article-body-section{padding:clamp(3rem,6vw,5rem) 0;background:var(--color-bg)}
.article-body{max-width:700px;margin:0 auto}
.article-body h2{font-family:var(--font-heading);font-weight:600;font-size:1.6rem;line-height:1.25;margin-top:3rem;margin-bottom:1rem;letter-spacing:-.01em;text-wrap:balance}
.article-body h3{font-family:var(--font-heading);font-weight:600;font-size:1.2rem;margin-top:2.25rem;margin-bottom:.75rem}
.article-body p{color:var(--color-text);line-height:1.8;margin-bottom:1.25rem;font-size:1.05rem}
.article-body ul,.article-body ol{list-style:none;margin-bottom:1.5rem;padding-left:0}
.article-body ul li,.article-body ol li{padding:.4rem 0;padding-left:1.75rem;position:relative;font-size:1rem;color:var(--color-text);line-height:1.7}
.article-body ul li::before{content:"";position:absolute;left:0;top:1.05rem;width:12px;height:1px;background:var(--color-primary-dark)}
.article-body ol{counter-reset:article-counter}
.article-body ol li{counter-increment:article-counter}
.article-body ol li::before{content:counter(article-counter) ".";position:absolute;left:0;color:var(--color-primary-dark);font-weight:600;font-family:var(--font-heading)}
.article-body ol ol{counter-reset:article-subcounter}
.article-body ol ol li{counter-increment:article-subcounter}
.article-body ol ol li::before{content:counter(article-subcounter,lower-alpha) ")"}
.article-body blockquote{border-left:2px solid var(--color-primary);padding:.5rem 1.5rem;margin:2rem 0;background:transparent}
.article-body blockquote p{font-family:var(--font-heading);font-style:italic;margin-bottom:0;color:var(--color-text);font-size:1.2rem;line-height:1.5}
.article-divider{border:0;border-top:1px solid var(--color-rule);margin:3rem 0}
.author-bio{max-width:700px;margin:3rem auto 0;padding:1.75rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;gap:1.25rem;align-items:flex-start;background:var(--color-bg-alt)}
.author-bio-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;flex-shrink:0}
.author-bio-content h4{font-family:var(--font-heading);font-size:1.05rem;margin-bottom:.3rem}
.author-bio-content p{font-size:.92rem;color:var(--color-text-light);line-height:1.6;margin-bottom:0}
.author-bio-content a{text-decoration:underline;text-underline-offset:2px}
.related-posts{padding:clamp(3rem,6vw,5rem) 0;background:var(--color-bg-alt);border-top:1px solid var(--color-rule)}
.related-posts-grid{display:grid;grid-template-columns:1fr;gap:2rem}


/* Webinar pages */
.webinar-cover{width:100%;overflow:hidden;border-bottom:1px solid var(--color-rule);background:var(--color-bg-alt);aspect-ratio:2048/1152}
.webinar-cover-img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
@media (min-width:768px){
    .article-hero-image{max-width:min(820px,calc((100vh - 8rem) * (2048/1152)));margin:clamp(3rem,6vw,5rem) auto 0;border:1px solid var(--color-rule);border-radius:var(--radius-lg)}
    .webinar-cover{max-width:min(820px,calc((100vh - 8rem) * (2048/1152)));margin:clamp(3rem,6vw,5rem) auto 0;border:1px solid var(--color-rule);border-radius:var(--radius-lg)}
}
.webinar-badge{display:inline-flex;align-items:center;gap:.4rem;background:var(--color-accent-tint);color:var(--color-primary-dark);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;padding:.3rem .8rem;border-radius:999px;margin-bottom:.85rem;font-family:var(--font-body);border:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent)}
.webinar-meta{display:flex;flex-wrap:wrap;gap:.75rem 2rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-rule)}
.webinar-meta-item{display:inline-flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--color-text-light)}
.webinar-meta-item svg{flex-shrink:0;color:var(--color-primary-dark)}
.registration-closed-notice{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;background:var(--color-accent-tint);border:1px solid color-mix(in srgb,var(--color-primary) 40%,transparent);border-radius:var(--radius);margin-bottom:1.25rem;font-size:.93rem;color:var(--color-text);line-height:1.65}
.registration-closed-notice svg{flex-shrink:0;color:var(--color-primary-dark);margin-top:.15rem}
.webinar-register-intro{color:var(--color-text-light);font-size:.98rem;margin-bottom:1.5rem;line-height:1.7}
.newsletter-cta{margin-top:1.5rem}
.contact-form{display:flex;flex-direction:column}
.form-error-message{padding:1rem 1.25rem;background:#fbe9e7;color:#5a1a14;border:1px solid #f3c5be;border-radius:var(--radius);margin-bottom:1.25rem;font-size:.9rem;line-height:1.6}
.content-section h3{font-family:var(--font-heading);font-weight:600;font-size:1.25rem;line-height:1.25;letter-spacing:-.008em;margin-top:2rem;margin-bottom:.75rem;color:var(--color-text)}
.content-section ul{margin:0 0 1.25rem;padding:0}
.content-section ul li{padding:.35rem 0;padding-left:1.5rem;position:relative;font-size:.98rem;color:var(--color-text-light);line-height:1.65}
.content-section ul li::before{content:"";position:absolute;left:0;top:.9rem;width:12px;height:1px;background:var(--color-primary-dark)}

/* Responsive */
@media (min-width:640px){
    .services-grid{grid-template-columns:repeat(2,1fr);column-gap:2.5rem}
    .pricing-grid{grid-template-columns:repeat(2,1fr)}
    .service-pricing-grid{grid-template-columns:repeat(2,1fr)}
    .testimonials-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}
    .contact-grid{grid-template-columns:1fr 1fr}
    .footer-grid{grid-template-columns:2fr 1fr 1fr 1.2fr}
    .footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}
    .quals-grid{grid-template-columns:repeat(2,1fr)}
    .approach-grid{grid-template-columns:repeat(2,1fr)}
    .audience-list{grid-template-columns:repeat(2,1fr)}
    .related-services-grid{grid-template-columns:repeat(2,1fr)}
    .blog-grid{grid-template-columns:repeat(2,1fr)}
    .related-posts-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:900px){
    .nav-toggle{display:none}
    .nav-menu{position:static;display:flex;flex-direction:row;background:transparent;border:0;padding:0;box-shadow:none;gap:.5rem}
    .nav-link{padding:.5rem .75rem}
    .nav-link::after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:.25rem;height:1px;background:var(--color-text);transform:scaleX(0);transform-origin:left;transition:transform var(--t-fast)}
    .nav-link:hover::after,.nav-link.active::after{transform:scaleX(1)}
    .nav-link.active::after{background:var(--color-primary-dark)}
    .services-grid{grid-template-columns:repeat(4,1fr);column-gap:2rem}
    .about-grid{grid-template-columns:.9fr 1.4fr;gap:4rem;align-items:center}
    .testimonials-grid{grid-template-columns:repeat(3,1fr)}
    .quals-grid{grid-template-columns:repeat(2,1fr)}
    .audience-list{grid-template-columns:repeat(2,1fr)}
    .related-services-grid{grid-template-columns:repeat(3,1fr)}
    .blog-grid{grid-template-columns:repeat(3,1fr)}
    .related-posts-grid{grid-template-columns:repeat(3,1fr)}
    .service-hero .container{display:grid;grid-template-columns:1.25fr 1fr;gap:4rem;align-items:center}
    .service-hero-content{margin-bottom:0}
    .service-hero-stats{flex-direction:column;padding:1.5rem 0;gap:0}
    .service-hero-stats .stat-pill{flex:none;padding:.7rem 0;border-right:0;border-bottom:1px solid var(--color-rule);display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
    .service-hero-stats .stat-pill:last-child{border-bottom:0}
    .service-hero-stats .stat-pill-label{margin-top:0}
    .pricing-grid{grid-template-columns:repeat(4,1fr)}
    .services-hero .container{grid-template-columns:1.15fr 1fr;gap:4.5rem;align-items:start}
    .services-hero-lede{max-width:none}
}
@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{transition:none!important;animation:none!important}
    html{scroll-behavior:auto}
    .logo-text[data-typing="active"]::after,.logo-text[data-typing="done"]::after{display:none}
}
@media print{
    .header,.nav-toggle,.btn,.footer{display:none}
    body{font-size:12pt;color:#000;background:#fff}
    .hero,.page-hero,.about,.services{background:#fff;padding:1rem 0}
}
