.product-site-root{--product-read: 40rem;--product-wide: 68rem;font-family:var(--font-sans);background:var(--page-ground);color:var(--color-text)}.product-site-root body{min-height:100vh;background:var(--page-ground);font-family:var(--font-sans)}.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}.product-crumb{padding-top:calc(6rem + env(safe-area-inset-top,0px));padding-bottom:.75rem}.product-crumb__inner{max-width:var(--product-wide)}.product-crumb__list{display:flex;flex-wrap:wrap;gap:.35rem .5rem;list-style:none;margin:0;padding:0;font-size:.8125rem;color:var(--color-text-tertiary)}.product-crumb__list li{display:inline-flex;align-items:center;gap:.5rem}.product-crumb__list li:not(:last-child):after{content:"/";opacity:.45}.product-crumb__list a{color:var(--color-text-secondary);text-decoration:none}.product-crumb__list a:hover{color:var(--color-text)}.product-crumb__list [aria-current=page]{color:var(--color-text);font-weight:500}.product-page{max-width:var(--product-wide);margin:0 auto;padding:clamp(2rem,5vw,3rem) var(--container-inline) clamp(5rem,10vw,7rem)}.product-page__header--detail{margin-bottom:0;border-bottom:none;padding-bottom:0}.product-page__title{font-size:clamp(1.7rem,7.5vw,3.25rem);font-weight:700;letter-spacing:-.03em;line-height:1.08;margin-bottom:1rem;overflow-wrap:anywhere}.product-page__lead{font-size:clamp(1.125rem,2.2vw,1.3125rem);font-weight:500;line-height:1.45;color:var(--color-text);margin-bottom:1rem}.product-page__intro{font-size:1.0625rem;line-height:1.65;color:var(--color-text-secondary);max-width:36rem}.product-page__status--live{color:var(--color-text-secondary)}.product-page__actions{display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin-top:1.75rem}.product-index__links a[href^=http]:after,.product-page__body{max-width:none}.product-page__body>.product-block:not(.product-block--wide){max-width:var(--product-read)}.product-block{margin-bottom:clamp(3.5rem,7vw,5.5rem)}.product-block:last-child{margin-bottom:0}.product-page .section__label,.product-close .section__label{position:relative;padding-top:1rem}.product-page .section__label:before,.product-close .section__label:before{content:"";position:absolute;top:0;left:0;width:30px;height:3px;border-radius:2px;background:var(--color-amber)}.product-hero__meta .section__label{padding-top:0}.product-hero__meta .section__label:before{display:none}.product-block__title{font-size:1.25rem;font-weight:600;letter-spacing:-.02em;margin:1.75rem 0 .75rem}.product-block__title:first-of-type{margin-top:1rem}.product-block>.section__label+.product-block__title{margin:.25rem 0 1.5rem}.product-block p{font-size:1.0625rem;line-height:1.7;color:var(--color-text-secondary);margin-bottom:1rem}.product-list{margin:.5rem 0 0;padding:0;list-style:none}.product-list li{position:relative;padding-left:1.125rem;font-size:1rem;line-height:1.6;color:var(--color-text-secondary);margin-bottom:.5rem}.product-list li:before{content:"";position:absolute;left:0;top:.65em;width:5px;height:1px;background:var(--color-text-tertiary)}.product-features{margin:0;padding:0;list-style:none}.product-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.75rem,3.5vw,2.75rem) clamp(2rem,4vw,3.5rem)}.product-features li{padding:0}.product-features__title{font-size:var(--text-title);font-weight:var(--weight-title);letter-spacing:-.015em;line-height:1.25;margin-bottom:.5rem;color:var(--color-text)}.product-features__desc{font-size:.9375rem;line-height:1.6;color:var(--color-text-secondary);margin:0}.product-steps{margin:.5rem 0 0;padding:0;list-style:none;counter-reset:product-step}.product-steps li{counter-increment:product-step;display:grid;grid-template-columns:2rem 1fr;gap:.35rem 1.25rem;padding:1.25rem 0;border-bottom:1px solid var(--color-border)}.product-steps li:before{content:counter(product-step,decimal-leading-zero);font-size:.8125rem;font-weight:600;letter-spacing:.04em;color:var(--color-text-tertiary);padding-top:.15rem}.product-steps__title{font-size:1rem;font-weight:600;margin-bottom:.25rem}.product-steps__desc{font-size:.9375rem;line-height:1.6;color:var(--color-text-secondary);margin:0}.product-seo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(2rem,4vw,3.5rem);align-items:start}.product-seo__text .product-block__title{margin-top:.5rem}.product-seo__text>p{max-width:var(--measure)}.product-seo__stats,.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem;margin:2rem 0 0}.stat-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.product-seo__stats div,.stat-grid div{display:grid;gap:.35rem}.product-seo__stats dt,.stat-grid dt{font-size:var(--text-h3);font-weight:var(--weight-display);letter-spacing:-.03em;line-height:1;color:var(--color-text)}.product-seo__stats dd,.stat-grid dd{margin:0;font-size:var(--text-sm);line-height:1.55;color:var(--color-text-secondary)}.product-seo__media{margin-bottom:0}.admin-lead{max-width:var(--measure);margin-bottom:clamp(2.5rem,5vw,3.5rem)}.admin-part{padding-top:clamp(2rem,4vw,2.75rem);margin-top:clamp(2rem,4vw,2.75rem);border-top:1px solid var(--color-border)}.admin-part__label{font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);margin:0 0 .75rem}.admin-part__title{font-size:var(--text-h3);font-weight:var(--weight-heading);letter-spacing:-.02em;line-height:1.15;max-width:30ch;margin:0 0 1rem}.admin-part__intro{max-width:var(--measure)}.admin-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.25rem,3vw,2rem);margin:2rem 0 2.5rem;padding:0;list-style:none;counter-reset:admin-flow}.admin-flow__step{counter-increment:admin-flow;position:relative;padding-top:1rem;border-top:2px solid var(--color-text)}.admin-flow__step:before{content:counter(admin-flow,decimal-leading-zero);position:absolute;top:-1.6rem;left:0;font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.06em;color:var(--color-text-tertiary)}.admin-flow__who{display:block;font-size:var(--text-title);font-weight:var(--weight-title);letter-spacing:-.015em;margin-bottom:.5rem;color:var(--color-text)}.admin-flow__step p{font-size:var(--text-sm);line-height:1.6;margin:0;overflow-wrap:anywhere}.admin-part__media{margin:0 0 2.5rem}.admin-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.25rem) clamp(2rem,4vw,3.5rem);margin:0 0 2.5rem;padding:0;list-style:none}@media (min-width: 761px){.admin-highlights:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}}.admin-highlights__title{font-size:var(--text-title);font-weight:var(--weight-title);letter-spacing:-.015em;line-height:1.25;margin:0 0 .4rem;color:var(--color-text)}.admin-highlights__text{font-size:.9375rem;line-height:1.6;margin:0}.admin-quote{margin:0 0 2.5rem;padding-left:1.25rem;border-left:3px solid var(--color-amber)}.admin-quote p{font-size:var(--text-lead);font-style:italic;color:var(--color-text);margin:0}.product-stack{max-width:var(--product-wide);margin:clamp(3rem,6vw,4.5rem) auto clamp(3.5rem,7vw,5.5rem)}.tech-stack{margin:0;border-top:1px solid var(--color-border)}.tech-stack>div{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:.5rem 1.5rem;align-items:start;padding:.9rem 0;border-bottom:1px solid var(--color-border)}.tech-stack dt{padding-top:.35rem;font-size:var(--text-sm);font-weight:var(--weight-ui);color:var(--color-text)}.tech-stack dd{margin:0}@media (max-width: 640px){.tech-stack>div{grid-template-columns:1fr;gap:.4rem}.tech-stack dt{padding-top:0}}.product-cases{margin:0;padding:0;list-style:none}.product-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,4vw,3rem) clamp(2rem,4vw,3.5rem)}.product-cases li{padding:0}.product-cases__for{display:inline-block;font-size:var(--text-sm);line-height:1.2;padding:5px 10px;margin-bottom:.75rem;border-radius:999px;border:1px solid var(--color-border-light);color:var(--color-text-secondary)}.product-cases__title{font-size:var(--text-title);font-weight:var(--weight-title);letter-spacing:-.015em;line-height:1.25;margin-bottom:.4rem}.product-cases__desc{font-size:.9375rem;line-height:1.65;color:var(--color-text-secondary);margin:0}.product-faq{margin:0;padding:0}.product-faq details{border-bottom:1px solid var(--color-border)}.product-faq details:first-child{border-top:1px solid var(--color-border)}.product-faq summary{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;font-size:var(--text-lead);font-weight:500;padding:1.25rem 0;cursor:pointer;list-style:none;color:var(--color-text)}.product-faq summary::-webkit-details-marker{display:none}.product-faq summary:hover{color:var(--color-accent)}.product-faq__icon{flex-shrink:0;width:20px;height:20px;color:var(--color-text-tertiary);transition:transform .2s var(--ease-smooth),color .2s var(--ease-smooth)}.product-faq details[open] .product-faq__icon{transform:rotate(180deg);color:var(--color-accent)}.product-faq p{font-size:var(--text-body);line-height:1.7;color:var(--color-text-secondary);margin:0 0 1.5rem;max-width:var(--measure)}.product-principles{margin-top:clamp(3rem,6vw,4rem);padding-top:clamp(2.5rem,5vw,3.5rem);border-top:1px solid var(--color-border);max-width:var(--product-wide)}.product-principles__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem 3rem;margin-top:2rem}.product-principles__title{font-size:1rem;font-weight:600;margin-bottom:.35rem}.product-principles__desc{font-size:.9375rem;line-height:1.6;color:var(--color-text-secondary);margin:0}.product-footer{border-top:1px solid var(--color-border);padding:2.5rem var(--container-inline) 3rem;margin-top:0}.product-footer__inner{max-width:var(--product-wide);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}.product-footer__tagline{font-size:.9375rem;font-weight:500;margin:0}.product-footer__links{display:flex;flex-wrap:wrap;gap:1rem 1.5rem}.product-footer__links a{font-size:.875rem;color:var(--color-text-secondary);text-decoration:none}.product-footer__links a:hover{color:var(--color-text)}.product-footer__copy{width:100%;font-size:.8125rem;color:var(--color-text-tertiary);margin:1rem 0 0}@media (max-width: 768px){.product-principles__grid{grid-template-columns:1fr;gap:1.5rem}.product-footer__inner{flex-direction:column;align-items:flex-start}}.product-page .steps__marker{color:var(--page-ground)}.product-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:start;max-width:var(--product-wide);margin-bottom:clamp(2.5rem,5vw,3.5rem);padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--color-border)}.product-hero__text{max-width:var(--product-read)}.product-hero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem}.product-hero__meta .section__label{margin-bottom:0}.product-hero__facts{margin:0;display:grid;gap:1.25rem;border-left:2px solid var(--color-border);padding:0 0 0 clamp(1.25rem,3vw,2rem)}.product-hero__facts div{display:grid;gap:.25rem;align-content:start}.product-hero__facts dt{font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary)}.product-hero__facts dd{margin:0;font-size:var(--text-body);font-weight:500;line-height:1.45;color:var(--color-text)}.product-split{max-width:var(--product-wide);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,4vw,3.5rem);margin-bottom:clamp(3rem,6vw,4.5rem)}.product-split__label{grid-column:1 / -1;margin-bottom:0}.product-split__col p{max-width:34rem}.product-list--problem li,.product-list--solution li{position:relative;padding-left:1.5rem;list-style:none}.product-list--problem li:before,.product-list--solution li:before{content:"";position:absolute;left:0;top:.6em;width:12px;height:2px;border-radius:1px;background:var(--color-action)}.product-list--solution li:before{background:var(--color-accent)}.product-block--wide{max-width:var(--product-wide)}.product-shots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,2rem)}.product-shots .media{margin-bottom:0}.product-shots .media--lead{grid-column:1 / -1}.phase-track{max-width:var(--product-wide);margin-bottom:clamp(3rem,6vw,4.5rem)}.phase-track__list{list-style:none;margin:0;padding:0}.phase{display:grid;grid-template-columns:3.5rem minmax(0,1fr);gap:clamp(1.25rem,3vw,2rem);padding-bottom:clamp(2rem,4vw,3rem)}.phase__rail{position:relative;display:flex;justify-content:center}.phase__rail:before{content:"";position:absolute;top:0;bottom:calc(clamp(2rem,4vw,3rem)*-1);left:50%;width:2px;transform:translate(-50%);background:var(--color-border)}.phase:last-child .phase__rail:before{display:none}.phase__marker{position:relative;display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;font-size:var(--text-sm);font-weight:700;font-variant-numeric:tabular-nums;background:var(--color-text);color:var(--page-ground)}.phase__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;margin-bottom:.5rem}.phase__title{font-size:var(--text-h3);font-weight:var(--weight-heading);letter-spacing:-.02em;line-height:1.15;margin:0}.phase__duration{font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid var(--color-border-light);color:var(--color-text-secondary)}.phase__summary{font-size:var(--text-lead);line-height:1.55;margin:0 0 .75rem;max-width:38rem}.phase__text{margin:0 0 1.25rem;color:var(--color-text-secondary);line-height:1.65;max-width:38rem}.phase__deliverables{padding:1.25rem 1.5rem;border-radius:var(--radius-card);background:var(--color-bg-elevated);border:1px solid var(--color-border);max-width:38rem}.phase__deliverables-label{margin:0 0 .5rem;font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary)}.phase__deliverables ul{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}.phase__deliverables li{font-size:var(--text-sm);line-height:1.5;color:var(--color-text-secondary)}.product-principles{max-width:var(--product-wide);margin-bottom:clamp(3rem,6vw,4.5rem)}.product-principles__heading{font-size:var(--text-h3);font-weight:var(--weight-heading);letter-spacing:-.02em;margin:0 0 clamp(1.5rem,3vw,2rem)}.product-principles__index{display:block;font-size:var(--text-sm);font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-accent);margin-bottom:.5rem}.product-close{margin:clamp(3rem,6vw,5rem) 0 0;padding:clamp(3rem,7vw,5rem) clamp(1.5rem,4vw,3rem);background:var(--color-bg);border-radius:var(--radius-card);max-width:var(--product-wide);color:#fff;--color-text: #ffffff;--color-text-secondary: #c0e2d8;--color-text-tertiary: #add4ca;--color-accent: #9cdcd0;--color-accent-hover: #c2eae1;--color-border: rgba(255, 255, 255, .14);--color-border-light: rgba(255, 255, 255, .22)}.product-close__inner{max-width:var(--product-read)}.product-close__title{font-size:var(--text-h3);font-weight:var(--weight-heading);letter-spacing:-.02em;margin:0 0 .5rem}.product-close__text{margin:0 0 1.75rem;color:var(--color-text-secondary);line-height:1.6}@media (max-width: 860px){.product-hero,.product-split,.product-shots{grid-template-columns:1fr}.product-hero__facts{border-left:none;border-top:2px solid var(--color-border);padding:1.5rem 0 0;grid-template-columns:repeat(2,minmax(0,1fr))}.product-hero__fact--wide{grid-column:1 / -1}.phase{grid-template-columns:2.75rem minmax(0,1fr)}.phase__marker{width:2.5rem;height:2.5rem}}.product-showcase{list-style:none;margin:0 0 clamp(2rem,4vw,3rem);padding:0;max-width:var(--product-wide);display:grid;gap:clamp(3rem,7vw,5.5rem)}.product-showcase__item{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(1.75rem,4vw,3.5rem);align-items:center}.product-showcase__item:nth-child(2n) .product-showcase__media{order:2}.product-showcase__media{display:block;text-decoration:none}.product-showcase__media .media{margin-bottom:0}.product-showcase__media .frame{transition:transform .3s var(--ease-smooth),border-color .3s var(--ease-smooth)}.product-showcase__item:hover .frame{transform:translateY(-3px);border-color:var(--color-border-light)}.product-showcase__text{max-width:32rem}.product-showcase__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 .75rem}.product-showcase__category{font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary)}.product-showcase__name{font-size:var(--text-h3);font-weight:var(--weight-heading);letter-spacing:-.025em;line-height:1.1;margin:0 0 .5rem}.product-showcase__name a{color:inherit;text-decoration:none}.product-showcase__name a:hover{color:var(--color-accent)}.product-showcase__tagline{font-size:var(--text-lead);font-weight:500;line-height:1.45;color:var(--color-text-secondary);margin:0 0 1.5rem}.work-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1.25rem;padding:0;list-style:none}.work-tags li{font-size:var(--text-sm);font-weight:var(--weight-ui);line-height:1.2;padding:6px 10px;border-radius:6px;background:#0b5c4624;color:var(--color-text-secondary)}.work-tags li.work-tags__more{padding:0;background:none}.work-tags__more a{display:inline-block;padding:5px 9px;border-radius:6px;border:1px solid var(--color-border);color:var(--color-text-secondary);text-decoration:none;transition:color .2s var(--ease-smooth),border-color .2s var(--ease-smooth)}.work-tags__more a:hover{color:var(--color-accent);border-color:var(--color-accent)}.product-showcase__work-label{font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary);margin:0 0 .6rem}.product-showcase .work-tags{margin-bottom:1.75rem}.product-hero__facts .work-tags{margin-bottom:0}.product-showcase__links{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center}.product-showcase__link{font-size:var(--text-body);font-weight:500;color:var(--color-accent);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}.product-showcase__link:hover{color:var(--color-accent-hover)}.product-showcase__link--external:after{content:" ↗";font-size:.9em}@media (max-width: 860px){.product-showcase__item{grid-template-columns:1fr}.product-showcase__item:nth-child(2n) .product-showcase__media{order:0}.product-showcase__text{max-width:none}}@media (max-width: 760px){.product-features,.product-cases,.product-seo,.admin-highlights{grid-template-columns:1fr}.admin-flow,.stat-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}.legal-page{max-width:var(--product-wide)}.legal-page__header{max-width:var(--product-read);margin-bottom:clamp(2.5rem,5vw,3.5rem)}.legal-page__updated{margin:.75rem 0 0;font-size:var(--text-sm);color:var(--color-text-tertiary)}.legal-body{max-width:var(--product-read)}.legal-body__section{padding-top:clamp(1.75rem,3vw,2.25rem);margin-top:clamp(1.75rem,3vw,2.25rem);border-top:1px solid var(--color-border)}.legal-body__section:first-child{padding-top:0;margin-top:0;border-top:0}.legal-body h2{font-size:var(--text-title);font-weight:var(--weight-heading);letter-spacing:-.02em;margin:0 0 .75rem}.legal-body h3{font-size:var(--text-body);font-weight:var(--weight-title);margin:1.5rem 0 .4rem}.legal-body p,.legal-body li{font-size:1.0625rem;line-height:1.7;color:var(--color-text-secondary)}.legal-body p{margin:0 0 1rem}.legal-body ul{margin:0 0 1rem;padding-left:1.25rem}.legal-body li{margin-bottom:.4rem}.legal-body a{color:var(--color-accent);text-decoration:underline;text-underline-offset:2px}.legal-body code{font-size:.9em;padding:1px 5px;border-radius:4px;background:var(--color-surface)}.legal-table{overflow-x:auto;margin:0 0 1rem}.legal-table table{width:100%;min-width:36rem;border-collapse:collapse;font-size:var(--text-sm)}.legal-table th,.legal-table td{padding:.65rem .75rem .65rem 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border);line-height:1.5;color:var(--color-text-secondary)}.legal-table th{font-weight:var(--weight-ui);color:var(--color-text)}.legal-page__aside{max-width:var(--product-read);margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:1.5rem;border-top:2px solid var(--color-border)}.legal-page__aside-label{margin:0 0 .5rem;font-size:var(--text-label);font-weight:var(--weight-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-tertiary)}.legal-page__aside ul{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin:0;padding:0;list-style:none}.legal-page__aside a{font-size:var(--text-body);font-weight:500;color:var(--color-accent);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
