:root{color-scheme:light;--primary: #e21c2a;--primary-dark: #b81622;--accent: #ffcc00;--bg: #f3f8ff;--bg-subtle: #e8eef8;--card: #ffffff;--text: #000000;--muted: #3d3d3d;--border: #d4dde8;--primary-tint: #fdeaec;--primary-border: #f0c4c8;--badge-works: #166534;--badge-works-bg: #ecfdf5;--badge-dev: #1e40af;--badge-dev-bg: #eff6ff;--badge-concept: #7c2d12;--badge-concept-bg: #fff7ed;--badge-org: #5b21b6;--badge-org-bg: #f5f3ff;--font-display: "PT Sans Narrow", "Arial Narrow", arial, sans-serif;--font-body: "PT Sans", arial, sans-serif;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .04);--shadow-md: 0 4px 16px rgba(0, 0, 0, .07);--shadow-hover: 0 6px 20px rgba(226, 28, 42, .12);--ease-out: cubic-bezier(.22, 1, .36, 1);--layout-max: 1040px;--layout-gutter: 1.25rem;font-family:var(--font-body);line-height:1.55}h1,h2,h3,.brand-title,.section-title,.hero h1,.page-hero h1,.content-section h2{font-family:var(--font-display);font-weight:700}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(226,28,42,.06),transparent),linear-gradient(180deg,var(--bg) 0%,#e9f0fa 100%);background-attachment:fixed;color:var(--text);display:flex;flex-direction:column}a{color:var(--primary)}a:hover{color:var(--primary-dark)}.site-header{background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:3px solid var(--primary);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:10}.site-header-inner,.site-main,.site-footer-inner{width:100%;max-width:var(--layout-max);margin-inline:auto;padding-inline:var(--layout-gutter)}.site-header-inner{padding-block:1rem}.site-header-inner{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:1.25rem;row-gap:.75rem}.site-header-minimal{grid-template-columns:1fr}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;min-width:0}.brand-mark{width:44px;height:44px;flex-shrink:0;display:block;object-fit:contain;border-radius:6px}.brand-text{min-width:0}.brand-kicker{display:block;font-family:var(--font-display);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}.brand-title{display:block;font-size:1.15rem;font-weight:700}.site-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem .75rem;font-size:.9rem;min-width:0}.site-nav a,.nav-dropdown-trigger{text-decoration:none;color:var(--text);font-weight:600;cursor:pointer;border-radius:8px;padding:.4rem .55rem;transition:color .2s var(--ease-out),background .2s var(--ease-out),box-shadow .2s var(--ease-out)}.site-nav a.nav-link:hover,.nav-dropdown-trigger:hover,.nav-dropdown.is-open .nav-dropdown-trigger{color:var(--primary);background:var(--primary-tint)}.site-nav a.nav-link.active,.nav-dropdown-trigger.active{color:var(--primary);box-shadow:inset 0 -2px 0 var(--primary)}.site-nav a.nav-link.active:hover,.nav-dropdown-trigger.active:hover,.nav-dropdown.is-open .nav-dropdown-trigger.active{background:var(--primary-tint)}.nav-dropdown-trigger:focus-visible,.site-nav a.nav-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:inline-block}.nav-dropdown-panel{position:absolute;top:100%;left:0;min-width:12rem;margin-top:.35rem;padding:.5rem;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:.25rem;z-index:20;animation:dropdown-in .18s var(--ease-out)}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nav-dropdown-panel:before{content:"";position:absolute;top:-.5rem;left:0;right:0;height:.5rem}.nav-dropdown-panel a{padding:.35rem .5rem;border-radius:4px;transition:color .15s ease,background .15s ease}.nav-dropdown-panel a:hover,.nav-dropdown-panel a:focus-visible{color:var(--primary);background:var(--primary-tint)}.nav-dropdown:not(.is-open) .nav-dropdown-panel{display:none}@media(hover:hover)and (pointer:fine){.nav-dropdown:hover .nav-dropdown-panel,.nav-dropdown.is-open .nav-dropdown-panel{display:flex}.nav-dropdown:not(:hover):not(.is-open) .nav-dropdown-panel{display:none}}.site-main{flex:1;padding-top:1.25rem;padding-bottom:2.5rem}.site-footer-inner{padding-top:1.5rem;padding-bottom:1.25rem}@media(prefers-reduced-motion:no-preference){.site-main{animation:page-in .4s var(--ease-out)}}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.site-footer{border-top:3px solid var(--primary);background:var(--bg-subtle);color:var(--muted);font-size:.9rem;margin-top:auto}.footer-about{max-width:36rem;margin:0 0 1rem;line-height:1.5}.footer-grid{display:grid;gap:1.25rem;margin-bottom:1.25rem}@media(min-width:640px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}.footer-brand{margin:0 0 .35rem;font-weight:700;color:var(--text);font-size:1rem}.footer-label{margin:0 0 .5rem;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text)}.footer-links{display:flex;flex-direction:column;gap:.35rem}.footer-links a{text-decoration:none;color:var(--muted);font-weight:500}.footer-links a:hover{color:var(--primary)}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem 1rem;padding-top:1rem;border-top:1px solid var(--border)}.footer-org{margin:0;font-size:.85rem;color:var(--muted)}.site-footer-inner p{margin:0 0 .35rem}.muted{color:var(--muted)}.small{font-size:.85rem}.hero{background:var(--card);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:12px;padding:2rem 1.5rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow .25s var(--ease-out)}.hero:hover{box-shadow:var(--shadow-md)}.hero h1{margin:0 0 .75rem;font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.15}.hero-lead{margin:0 0 1.25rem;font-size:1.05rem;max-width:44rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn-action{display:inline-block;padding:.75rem 1.1rem;border:1px solid var(--border);border-radius:10px;font-weight:600;text-decoration:none;color:var(--text);background:var(--card);box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease-out),color .2s var(--ease-out),box-shadow .2s var(--ease-out),transform .2s var(--ease-out)}.btn-action:hover{border-color:var(--primary);color:var(--primary);box-shadow:var(--shadow-hover);transform:translateY(-1px)}.btn-action:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-action--accent-left{border-left:4px solid var(--primary)}.btn{display:inline-block;padding:.65rem 1.1rem;border-radius:10px;font-weight:600;text-decoration:none;border:1px solid transparent;transition:background .2s var(--ease-out),border-color .2s var(--ease-out),color .2s var(--ease-out),transform .2s var(--ease-out)}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--primary-dark);color:#fff;box-shadow:var(--shadow-hover)}.btn-secondary{background:var(--card);border-color:var(--border);color:var(--text);box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--primary);color:var(--primary)}.btn-nav{font-size:.85rem;white-space:nowrap}@media(max-width:720px){.site-header-inner{grid-template-columns:1fr}.site-nav{justify-content:flex-start}}.grid{display:grid;gap:1rem}@media(min-width:640px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem;height:100%;transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out),transform .2s var(--ease-out)}.card:not(.card-static):hover{border-color:#e21c2a59;box-shadow:var(--shadow-md);transform:translateY(-2px)}.card h2,.card h3{margin:0 0 .5rem;font-size:1.1rem}.card p{margin:0;color:var(--muted);font-size:.95rem}.card-static{cursor:default}.card-static:hover{border-color:var(--border);box-shadow:none}.card-static h3{color:var(--text)}.card a.stretched{text-decoration:none;color:inherit;display:block}.card a.stretched:hover h2,.card a.stretched:hover h3{color:var(--primary)}.section-title{margin:1.5rem 0 .75rem;font-size:1.25rem}.page-header{margin-bottom:1.5rem}.page-header h1{margin:.5rem 0 0;font-size:clamp(1.5rem,3.5vw,2rem)}.content-section{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.35rem 1.5rem 1.5rem;margin-bottom:1rem;box-shadow:var(--shadow-sm);transition:box-shadow .25s var(--ease-out)}.content-section:hover{box-shadow:var(--shadow-md)}.content-section h2{margin:0 0 .5rem;font-size:1.05rem}.content-section p,.content-section li{margin:0 0 .85rem;color:var(--text)}.content-section ul{margin:.5rem 0 0;padding-left:1.25rem}.content-section ul:last-child{margin-bottom:0}.content-section p:last-child,.content-section li:last-child{margin-bottom:0}.quote-card{border-left:3px solid var(--primary);padding-left:1rem;margin:.75rem 0}.quote-card cite{display:block;margin-top:.35rem;font-style:normal;font-size:.9rem;color:var(--muted)}.badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.02em}.badge-works{background:var(--badge-works-bg);color:var(--badge-works)}.badge-dev,.badge-pilot{background:var(--badge-dev-bg);color:var(--badge-dev)}.badge-concept{background:var(--badge-concept-bg);color:var(--badge-concept)}.badge-org{background:var(--badge-org-bg);color:var(--badge-org)}.two-products{margin-top:1rem;padding:1rem 1.25rem;background:var(--bg-subtle);border-left:3px solid var(--accent);border-radius:8px;font-size:.95rem}.timeline{list-style:none;margin:0}.timeline.content-section{padding:1.35rem 1.5rem 1.5rem}.timeline li{padding:1rem .75rem 1.1rem;border-bottom:1px solid var(--border);border-radius:8px;transition:background .2s var(--ease-out)}.timeline li:hover{background:var(--primary-tint)}.timeline li:first-child{padding-top:.15rem}.timeline li:last-child{border-bottom:none;padding-bottom:.15rem}.timeline strong{display:block;margin-bottom:.25rem}.page-hero{background:var(--card);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:12px;padding:1.5rem 1.5rem 1.25rem;margin-bottom:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow .25s var(--ease-out)}.page-hero:hover{box-shadow:var(--shadow-md)}.page-hero-kicker{margin:0 0 .35rem;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--primary)}.page-hero h1{margin:0;font-size:clamp(1.5rem,3.5vw,2rem);line-height:1.2}.page-hero-lead{margin:.75rem 0 0;max-width:42rem;color:var(--muted);font-size:1.02rem}.data-table{width:100%;border-collapse:collapse;font-size:.92rem}.data-table th,.data-table td{padding:.6rem .75rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.data-table th{font-weight:700;color:var(--text);background:var(--bg-subtle)}.content-section .data-table{margin-top:.5rem}.callout{margin-top:1rem;padding:.85rem 1rem;background:var(--primary-tint);border:1px solid var(--primary-border);border-radius:8px;font-size:.92rem}.scheme{margin:.75rem 0 0;padding:1rem 1.25rem;background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;font-family:ui-monospace,Cascadia Code,Source Code Pro,monospace;font-size:.85rem;line-height:1.45;overflow-x:auto;white-space:pre}.page-hero .badge{margin-bottom:.5rem}.solution-page .page-hero h1{margin-top:.35rem}.page-trail{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.page-trail .btn-action{flex:1 1 14rem;display:block;max-width:calc((100% - .75rem)/2)}.page-trail .btn-action:not(.btn-action--accent-left):only-child{margin-left:auto}.page-trail-btn-label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:.25rem}.page-trail-btn-title{display:block;font-family:var(--font-display);font-weight:700;font-size:1rem;line-height:1.25}.presentation-download-lead{margin:0 0 1rem;max-width:36rem}.presentation-download .btn-action{margin-top:.25rem}@media(prefers-reduced-motion:reduce){.site-main,.nav-dropdown-panel{animation:none}.btn-action:hover,.btn:hover,.card:not(.card-static):hover{transform:none}}
