:root{color-scheme:light dark;--color-primary:#0086c9;--color-primary-container:#cdeaff;--color-on-primary:#ffffff;--color-on-primary-container:#003a54;--color-secondary:#4a4340;--color-secondary-container:#ece0da;--color-tertiary:#6b4a2f;--color-surface:#f9fafb;--color-surface-container:#eef1f4;--color-surface-container-high:#e4e8ec;--color-on-surface:#1b1b1b;--color-on-surface-variant:#45494c;--color-outline:#75797c;--color-outline-variant:#c4c8cb;--color-error:#ba1a1a;--color-chorefire:#ff5a2e;--color-chorefire-dark:#b71f14;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:24px;--spacing-xxl:32px;--radius-xs:12px;--radius-sm:16px;--radius-md:24px;--radius-lg:28px;--radius-full:30px;--shadow-color:rgba(0, 0, 0, 0.1)}@media(prefers-color-scheme:dark){:root{--color-primary:#7fd0ff;--color-primary-container:#00293d;--color-on-primary:#003349;--color-on-primary-container:#cdeaff;--color-secondary:#d0c4bd;--color-secondary-container:#332c29;--color-tertiary:#dcb691;--color-surface:#121212;--color-surface-container:#1d1d1d;--color-surface-container-high:#282828;--color-on-surface:#e6e6e6;--color-on-surface-variant:#c4c8cb;--color-outline:#8f9397;--color-outline-variant:#45494c;--color-error:#ffb4ab;--color-chorefire:#ff8259;--color-chorefire-dark:#ff6644;--shadow-color:rgba(0, 0, 0, 0.4)}}*,*::before,*::after{box-sizing:border-box}body{font-family:segoe ui,trebuchet ms,lucida sans unicode,lucida grande,lucida sans,Arial,sans-serif;background-color:var(--color-surface);color:var(--color-on-surface);line-height:1.6;margin:0;padding:0}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md)var(--spacing-xl);background-color:var(--color-surface-container);border-bottom:1px solid var(--color-outline-variant);gap:var(--spacing-lg);position:relative;z-index:30}.header-brand{display:flex;align-items:center;gap:var(--spacing-md);text-decoration:none;color:var(--color-on-surface);flex-shrink:0}.header-brand:hover{text-decoration:none}.header-logo{height:40px;width:auto}.header-title{font-size:1.25rem;font-weight:600;color:var(--color-primary)}.header-nav{flex:1;display:flex;justify-content:flex-end}.nav-menu{display:flex;list-style:none;margin:0;padding:0;gap:var(--spacing-sm)}.nav-menu a{color:var(--color-on-surface);font-weight:500;padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--radius-xs);transition:background-color .2s;white-space:nowrap}.nav-menu a:hover,.nav-menu a.active{background-color:var(--color-primary-container);text-decoration:none}.menu-toggle{display:none;background:0 0;border:none;padding:var(--spacing-sm);cursor:pointer;flex-shrink:0}.menu-icon{display:block;width:24px;height:2px;background-color:var(--color-on-surface);position:relative;transition:background-color .2s}.menu-icon::before,.menu-icon::after{content:"";position:absolute;left:0;width:24px;height:2px;background-color:var(--color-on-surface);transition:transform .2s}.menu-icon::before{top:-7px}.menu-icon::after{top:7px}.menu-toggle[aria-expanded=true] .menu-icon{background-color:initial}.menu-toggle[aria-expanded=true] .menu-icon::before{transform:rotate(45deg)translate(5px,5px)}.menu-toggle[aria-expanded=true] .menu-icon::after{transform:rotate(-45deg)translate(5px,-5px)}@media only screen and (max-width:768px){.menu-toggle{display:block}.header-nav{display:none;position:absolute;top:100%;left:0;right:0;background-color:var(--color-surface-container);border-bottom:1px solid var(--color-outline-variant);padding:var(--spacing-md)var(--spacing-xl);box-shadow:0 4px 6px var(--shadow-color);z-index:20}.header-nav.open{display:block}.nav-menu{flex-direction:column;gap:var(--spacing-xs)}.nav-menu a{display:block;padding:var(--spacing-md)}}section{overflow:auto;position:relative}main{width:100%;max-width:960px;margin:0 auto;padding:var(--spacing-xl);position:relative;z-index:1}.is-not-home main{max-width:760px}.hero-logo-large{position:absolute;top:0;right:0;overflow:hidden;z-index:0;pointer-events:none}.hero-logo-large img{height:45vw;max-height:480px;width:auto;opacity:.08;transform:translateX(25%)}.hero-intro{padding:var(--spacing-xxl)0 var(--spacing-xl)}.hero-intro h2{font-size:clamp(2rem,4vw,2.75rem);color:var(--color-primary);margin-top:0;line-height:1.2}.hero-intro p{font-size:1.15rem;color:var(--color-on-surface-variant);max-width:640px}.products-heading{margin-top:var(--spacing-xxl)}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl);margin:var(--spacing-lg)0 var(--spacing-xxl)}.product-card{display:flex;flex-direction:column;gap:var(--spacing-md);background-color:var(--color-surface-container);border-radius:var(--radius-md);padding:var(--spacing-xl);border-top:4px solid var(--product-accent,var(--color-primary));box-shadow:0 8px 24px var(--shadow-color);transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px var(--shadow-color)}.product-card--chorefire{--product-accent:var(--color-chorefire)}.product-card-header{display:flex;align-items:center;gap:var(--spacing-md)}.product-card-logo{height:48px;width:auto;flex-shrink:0}.product-card-title{font-size:1.4rem;font-weight:700;margin:0;color:var(--color-on-surface)}.product-card-description{color:var(--color-on-surface-variant);margin:0;flex:1}.product-card-link{align-self:flex-start;background-color:var(--product-accent,var(--color-primary));color:#fff;padding:var(--spacing-sm)var(--spacing-lg);border-radius:var(--radius-full);font-weight:600;white-space:nowrap;transition:opacity .2s}.product-card-link:hover{opacity:.9;text-decoration:none}footer{width:100%;text-align:center;padding:var(--spacing-xl);background-color:var(--color-surface-container);border-top:1px solid var(--color-outline-variant);margin-top:var(--spacing-xxl);position:relative;z-index:1}footer nav{display:flex;justify-content:center;margin-bottom:var(--spacing-lg)}footer nav ul{list-style-type:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-lg)}footer nav ul li{margin:0}footer a{white-space:nowrap;color:var(--color-on-surface-variant);font-size:.9em}footer a:hover{color:var(--color-primary)}footer p{margin:var(--spacing-sm)0;color:var(--color-on-surface-variant);font-size:.9em}h1,h2,h3,h4,h5,h6{color:var(--color-on-surface);font-weight:600;line-height:1.3}.terms-of-use ol>li::marker,.privacy-policy ol>li::marker{content:counters(list-item,".")". "}.terms-of-use table,.terms-of-use th,.terms-of-use td,.privacy-policy table,.privacy-policy th,.privacy-policy td{border:1px solid var(--color-outline-variant);border-collapse:collapse;padding:var(--spacing-sm)var(--spacing-md)}.terms-of-use th,.privacy-policy th{background-color:var(--color-surface-container-high)}.float-left{display:inline;float:left;margin:var(--spacing-md);max-width:40%}.float-left img{max-width:100%;border-radius:var(--radius-sm)}.float-right{display:inline;float:right;margin:var(--spacing-md);max-width:40%}.float-right img{max-width:100%;border-radius:var(--radius-sm)}@media only screen and (max-width:620px){main{width:100%;padding:var(--spacing-lg)}.hero-logo-large img{opacity:.06}}