/* Review refinements. The homepage hero is deliberately excluded. */
:root{--refined-plum:#2d0d35;--refined-muted:#6f5775;--refined-lilac:#cf9ee2}
body{padding-bottom:0}main{flex:1}.refined-footer{position:static;inset:auto;z-index:auto;margin-top:auto;padding:25px 0;background:var(--bg-primary);backdrop-filter:none}.refined-footer .footer-inner{gap:24px;align-items:center;flex-wrap:wrap}.refined-footer .footer-links{gap:24px}.refined-footer .footer-links a{font-size:.7rem}.refined-footer .footer-meta{margin:0}
.section:not(.home-hero) .section-head>.eyebrow,.section:not(.home-hero) .stack-section-heading .eyebrow{margin-bottom:18px}.section:not(.home-hero) .section-head h2,.section:not(.home-hero) .stack-section-heading h2{margin-top:0;line-height:1.1;text-wrap:balance}.section:not(.home-hero) .section-head p{margin-top:20px}.stack-section-heading h2{margin-top:0}.stack-section-heading p{margin-bottom:0}
.section:not(.home-hero) .btn-primary{background:#5a1b69;color:#fff;border-color:#5a1b69;box-shadow:0 5px 16px rgba(45,13,53,.12)}.section:not(.home-hero) .btn-primary:hover{background:#42104f;border-color:#42104f}.section:not(.home-hero) .btn-primary:focus-visible{outline:3px solid var(--accent-primary);outline-offset:4px}html[data-theme="dark"] .section:not(.home-hero) .btn-primary{background:#cf9ee2;border-color:#cf9ee2;color:#2d0d35}html[data-theme="dark"] .section:not(.home-hero) .btn-primary:hover{background:#e4c2ef;border-color:#e4c2ef}
.workflow-step:hover{transform:none;background:transparent}.workflow-step{transition:none}.workflow-icon{position:relative;z-index:3}.workflow-step h3{line-height:1.2}.workflow-step p{line-height:1.75}.audience-section .feature-card{min-height:0;padding:24px}.audience-section .feature-card p{text-align:left;margin:0}.audience-section .feature-card h3{font-size:1.55rem;line-height:1.2;margin-bottom:12px}.audience-section .feature-list{align-items:stretch}.refinement-icon{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--bg-secondary);color:var(--accent-primary);margin:0 0 18px}.refinement-icon svg{width:24px;height:24px}.feature-number{vertical-align:middle}.home-feature-list .feature-number,.grid-matrix .feature-number{display:block}.matrix-card h3{line-height:1.2}.matrix-card p{line-height:1.75}.home-feature-list .feature-card h3{line-height:1.2}
.case-card,.pricing-card{display:flex}.case-body,.pricing-body{display:flex;flex-direction:column;width:100%;min-width:0}.case-body h3{min-height:2.4em;line-height:1.2}.case-metrics{margin-top:8px}.case-body>p{flex:1}.case-quote{margin-top:20px}.mini-stat strong{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.1}.mini-stat span{line-height:1.5}.pricing-grid .pricing-body{gap:0}.pricing-grid .monthly-plan-description{min-height:6.5em;margin:0 0 20px;line-height:1.7}.pricing-grid .pricing-body h3{min-height:2.4em;line-height:1.2}.pricing-grid .cta{margin-top:auto}.pricing-grid .price-row{padding:12px 0}.pricing-grid .pricing-body>.cta{margin-top:24px}.project-addons .pricing-body>p{flex:1}.project-addons .pricing-body h3{min-height:2.3em}.tile strong{font-variant-numeric:tabular-nums}.tile span{font-size:.8rem;font-weight:700;line-height:1.5}
.operator-note{align-items:flex-start!important}.operator-note img{width:80px!important;height:80px!important;flex:0 0 80px!important;object-fit:cover}.operator-note strong{font-size:1.02rem}.operator-direct{display:block;margin-top:6px;font-size:.78rem;max-width:320px;line-height:1.6}.mobile-article-toc{display:none}.back-to-top{position:fixed;right:22px;bottom:22px;z-index:90;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--card-bg);color:var(--accent-primary);border:1px solid var(--border-color);box-shadow:var(--shadow-soft);font-size:1.3rem}.back-to-top[hidden]{display:none}.back-to-top:focus-visible,.mobile-article-toc summary:focus-visible{outline:3px solid var(--accent-primary);outline-offset:4px}.refined-footer .footer-links a:not([href="/terms"]){display:inline-flex}
@media(max-width:800px){.mobile-article-toc{display:block;margin:28px 0;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg);font-size:.9rem}.mobile-article-toc summary{display:flex;justify-content:space-between;padding:18px;cursor:pointer;list-style:none;font-weight:700}.mobile-article-toc summary::-webkit-details-marker{display:none}.mobile-article-toc[open] summary span{transform:rotate(45deg)}.mobile-article-toc nav{display:grid;gap:0;border-top:1px solid var(--border-color);padding:8px 18px 14px}.mobile-article-toc nav a{padding:10px 0;line-height:1.5;color:var(--accent-primary)}.case-body h3,.pricing-grid .pricing-body h3,.project-addons .pricing-body h3{min-height:0}.pricing-grid .monthly-plan-description{min-height:0}.section:not(.home-hero) .section-head>.eyebrow{margin-bottom:16px}.section:not(.home-hero) .section-head h2{font-size:clamp(1.9rem,7vw,2.6rem)}.refined-footer .footer-inner{flex-direction:column;gap:18px;padding:0 20px;width:100%}.refined-footer .footer-inner>.brand{display:flex}.refined-footer .footer-links{display:flex;width:auto;gap:20px;flex-wrap:wrap;justify-content:center}.refined-footer .footer-links a{padding:5px 0}.refined-footer .footer-meta{font-size:.68rem}.back-to-top{right:16px;bottom:16px}.workflow-icon{position:absolute}.audience-section .feature-card{padding:22px}}
@media(prefers-reduced-motion:reduce){.back-to-top,.refinement-icon,.mobile-article-toc summary span{transition:none}}

.refinement-icon{background:rgba(111,87,117,.09)}html[data-theme="dark"] .refinement-icon{background:rgba(111,87,117,.25)}.mobile-article-toc nav a{min-height:44px;display:flex;align-items:center}

/* Local vendor marks; names remain readable if an image is unavailable. */
.tool-logo-grid{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:10px}
.tool-brand{display:flex;align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid var(--border-color);border-radius:10px;background:var(--card-bg);color:var(--text-primary);font-size:.8rem;line-height:1.45;transition:border-color .2s,background-color .2s}
.tool-brand:hover{border-color:var(--accent-primary);background:var(--bg-secondary)}
.tool-brand>span:last-child{min-width:0;overflow-wrap:anywhere}.tool-brand-mark{display:flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;background:#fff;border:1px solid #e9e5eb;border-radius:7px}.tool-brand-mark img{width:24px;height:24px;object-fit:contain}.tool-brand-fallback{padding:14px 12px}.stack-audience-body .tool-logo-grid{margin-top:10px}
/* A single, restrained entrance. No ongoing motion or layout changes. */
@keyframes refined-hero-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes refined-portrait-enter{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:no-preference){.home-hero .hero-copy> *{animation:refined-hero-enter .65s cubic-bezier(.2,.65,.3,1) both}.home-hero .hero-copy>:nth-child(2){animation-delay:.08s}.home-hero .hero-copy>:nth-child(3){animation-delay:.16s}.home-hero .hero-copy>:nth-child(n+4){animation-delay:.24s}.home-hero .founder-photo-panel{animation:refined-portrait-enter .9s ease .12s both}}
/* Persistent, small movement makes the hero feel alive after its entrance. */
@keyframes refined-hero-breathe{0%,100%{translate:0 0}50%{translate:0 -6px}}
@media(prefers-reduced-motion:no-preference){.home-hero .hero-copy>*{animation-duration:1s}.home-hero .founder-photo-panel{animation-duration:1.3s}.home-hero .hero-photo{animation:refined-hero-breathe 8s ease-in-out 1.3s infinite;will-change:translate}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.home-hero .hero-copy h1{transform-origin:center;transition:rotate .35s ease,translate .35s ease;cursor:default}.home-hero .hero-copy h1:hover{rotate:-.7deg;translate:0 -3px}}

/* Compact service cards: one metadata row, then content. */
.grid-matrix .matrix-card{padding:22px 24px;min-height:0;display:flex;flex-direction:column;justify-content:flex-start;gap:0}
.service-card-meta{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.grid-matrix .service-card-meta .refinement-icon{width:38px;height:38px;margin:0;border-radius:10px}
.grid-matrix .service-card-meta .feature-number{display:inline-block;margin:0;line-height:1;font-size:.75rem}
.grid-matrix .matrix-card h3{margin:0 0 12px;line-height:1.2;font-size:clamp(1.2rem,1.65vw,1.45rem)}
.grid-matrix .matrix-card p{margin:0;line-height:1.65}
.proof-cases-section{padding-bottom:24px}.proof-metrics-section{padding-top:24px;padding-bottom:48px}
.proof-metrics-section .tile-grid{margin-top:0}.proof-metrics-section .tile{padding:20px 22px}
@media(max-width:640px){.grid-matrix .matrix-card{padding:20px}.service-card-meta{margin-bottom:14px}.proof-cases-section{padding-bottom:16px}.proof-metrics-section{padding-top:16px;padding-bottom:32px}}

/* Slow light travelling around the project approach container. */
@property --approach-light-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
@keyframes approach-border-orbit{to{--approach-light-angle:360deg}}
.workflow-card{position:relative;isolation:isolate}
.workflow-card::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:2px;pointer-events:none;z-index:1;background:conic-gradient(from var(--approach-light-angle),transparent 0deg,transparent 265deg,rgba(167,105,188,.18) 300deg,rgba(203,157,222,.7) 333deg,rgba(244,223,255,.95) 347deg,transparent 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
@media(prefers-reduced-motion:no-preference){.workflow-card::after{animation:approach-border-orbit 12s linear infinite}.workflow-card:hover::after{animation-play-state:paused}}
@media(prefers-reduced-motion:reduce){.workflow-card::after{background:rgba(181,130,201,.4)}}

/* Size the mobile portrait from its grid column, not a fixed height. */
@media(max-width:760px){
 .home-hero .hero-grid{grid-template-columns:minmax(0,1fr)}
 .home-hero .hero-grid>*{min-width:0;max-width:100%}
 .home-hero .founder-photo-panel{width:100%;max-width:100%;min-width:0;height:auto;min-height:0;max-height:none;aspect-ratio:.95;justify-self:stretch;box-sizing:border-box}
 .home-hero .founder-photo-panel .hero-photo{width:100%;height:100%;max-width:100%;max-height:none;object-fit:cover;object-position:center top}
}

.audit-invitation{margin:24px 0;padding:22px;border:1px solid var(--border-color);border-radius:14px;background:var(--bg-secondary)}
.audit-invitation h2{margin:0 0 10px;font-size:1.3rem;line-height:1.25}.audit-invitation p{margin:0 0 18px;color:var(--text-secondary);font-size:.92rem;line-height:1.65}.audit-invitation .btn{max-width:100%;white-space:normal;text-align:center}
