.landing-nav{z-index:100;border-bottom:1px solid #0000;padding:1.25rem 1.5rem;transition:background-color .25s,-webkit-backdrop-filter .25s,backdrop-filter .25s,box-shadow .25s,border-color .25s;position:fixed;top:0;left:0;right:0}.landing-nav--scrolled{background-color:color-mix(in srgb,var(--background)85%,transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);--webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-sm);border-bottom-color:var(--border)}.landing-nav__inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;display:flex}.landing-nav__logo{align-items:center;gap:.625rem;text-decoration:none;display:flex}.landing-nav__logo-image{flex-shrink:0;width:2.25rem;height:2.25rem;position:relative}.landing-nav__logo-text{font-family:var(--font-heading);color:var(--foreground);letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.landing-nav__actions{align-items:center;gap:.875rem;display:flex}@media (max-width:480px){.landing-nav__actions{gap:.5rem}}.landing-nav__lang-toggle{background-color:var(--muted);border-radius:var(--radius-sm);align-items:center;gap:.125rem;padding:.125rem;display:flex}.landing-nav__lang-toggle .lang-btn{font-size:.75rem;font-weight:600;font-family:var(--font-heading);color:var(--muted-foreground);cursor:pointer;border-radius:calc(var(--radius-sm) - 2px);letter-spacing:.04em;background:0 0;border:none;padding:.25rem .625rem;transition:color .15s,background-color .15s}.landing-nav__lang-toggle .lang-btn:hover{color:var(--foreground)}.landing-nav__lang-toggle .lang-btn--active{background-color:var(--background);color:var(--primary);box-shadow:var(--shadow-2xs)}.landing-nav__signup-btn{font-family:var(--font-heading);color:var(--foreground);padding:.5rem .875rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .15s,background-color .15s}.landing-nav__signup-btn:hover{color:var(--primary);background-color:var(--muted)}@media (max-width:360px){.landing-nav__signup-btn{display:none}}.landing-nav__signin-btn{height:2.5rem!important;font-family:var(--font-heading)!important;padding:0 1.125rem!important;font-size:.875rem!important;font-weight:600!important}.landing-hero{align-items:center;min-height:100dvh;padding:8rem 1.5rem 5rem;display:flex;position:relative;overflow:hidden}.landing-hero:before{content:"";background:radial-gradient(ellipse 70% 55% at 15% 45%,color-mix(in srgb,var(--primary)7%,transparent)0%,transparent 70%),radial-gradient(ellipse 55% 50% at 85% 55%,color-mix(in srgb,var(--accent-foreground)7%,transparent)0%,transparent 70%);pointer-events:none;position:absolute;inset:0}.landing-hero__inner{grid-template-columns:55% 1fr;align-items:center;gap:3.5rem;width:100%;max-width:1200px;margin:0 auto;display:grid}@media (max-width:900px){.landing-hero__inner{grid-template-columns:1fr;gap:3rem}}.landing-hero__content{flex-direction:column;gap:1.75rem;display:flex}.landing-hero__badge{background-color:color-mix(in srgb,var(--primary)9%,transparent);border:1px solid color-mix(in srgb,var(--primary)22%,transparent);width:fit-content;font-family:var(--font-heading);color:var(--primary);letter-spacing:.01em;border-radius:9999px;align-items:center;gap:.5rem;padding:.375rem 1rem;font-size:.8125rem;font-weight:500;display:inline-flex}.landing-hero__badge .badge-dot{background-color:var(--primary);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2.5s ease-in-out infinite pulse-dot}.landing-hero__headline{font-family:var(--font-heading);letter-spacing:-.035em;color:var(--foreground);font-size:clamp(2.5rem,5vw,3.75rem);font-weight:700;line-height:1.08}.landing-hero__headline .headline-accent{color:var(--primary)}.landing-hero__sub{font-family:var(--font-body-landing);color:var(--muted-foreground);max-width:500px;font-size:1.125rem;line-height:1.75}.landing-hero__ctas{flex-wrap:wrap;align-items:center;gap:.875rem;display:flex}.landing-hero__ctas .cta-primary{height:3rem!important;font-family:var(--font-heading)!important;border-radius:9999px!important;padding:0 1.75rem!important;font-size:1rem!important;font-weight:600!important}.landing-hero__ctas .cta-secondary{height:3rem;font-family:var(--font-heading);color:var(--foreground);border:1px solid var(--border);background-color:var(--background);cursor:pointer;border-radius:9999px;align-items:center;gap:.375rem;padding:0 1.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.landing-hero__ctas .cta-secondary:hover{border-color:color-mix(in srgb,var(--primary)50%,transparent);color:var(--primary);background-color:color-mix(in srgb,var(--primary)5%,transparent)}.landing-hero__ctas .cta-secondary .cta-arrow{transition:transform .2s}.landing-hero__ctas .cta-secondary:hover .cta-arrow{transform:translate(3px)}.landing-hero__stats{border-top:1px solid var(--border);align-items:center;gap:2.5rem;padding-top:1.25rem;display:flex}@media (max-width:480px){.landing-hero__stats{gap:1.5rem}}.landing-hero__stat{flex-direction:column;gap:.125rem;display:flex}.landing-hero__stat .stat-value{font-family:var(--font-heading);color:var(--accent-foreground);letter-spacing:-.03em;font-size:1.625rem;font-weight:700;line-height:1.15}.landing-hero__stat .stat-label{font-family:var(--font-body-landing);color:var(--muted-foreground);font-size:.8125rem}.landing-hero__visual{justify-content:center;align-items:center;padding:2rem 1.5rem;display:flex;position:relative}@media (max-width:900px){.landing-hero__visual{order:-1;padding:1rem 0}}.preview-card-wrap{width:100%;max-width:380px;margin:0 auto;position:relative}.preview-card-wrap .preview-card-main{border-radius:1.25rem;flex-direction:column;gap:1.25rem;padding:1.5rem;animation:5s ease-in-out infinite float-y;display:flex}.preview-card-wrap .preview-card-main .preview-card-header{justify-content:space-between;align-items:center;display:flex}.preview-card-wrap .preview-card-main .preview-card-header .preview-card-label{font-family:var(--font-heading);color:var(--card-foreground);font-size:.875rem;font-weight:600}.preview-card-wrap .preview-card-main .preview-card-header .preview-live-badge{color:#22c55e;font-size:.75rem;font-weight:500;font-family:var(--font-heading);align-items:center;gap:.375rem;display:flex}.preview-card-wrap .preview-card-main .preview-card-header .preview-live-badge .live-dot{background-color:#22c55e;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot}.preview-card-wrap .preview-card-main .preview-stats-grid{grid-template-columns:repeat(3,1fr);gap:.625rem;display:grid}.preview-card-wrap .preview-card-main .preview-stats-grid .preview-stat-item{background-color:var(--muted);border-radius:var(--radius-md);flex-direction:column;gap:.25rem;padding:.75rem .625rem;display:flex}.preview-card-wrap .preview-card-main .preview-stats-grid .preview-stat-item .psi-value{font-family:var(--font-heading);color:var(--foreground);font-size:1.375rem;font-weight:700;line-height:1}.preview-card-wrap .preview-card-main .preview-stats-grid .preview-stat-item .psi-label{font-family:var(--font-body-landing);color:var(--muted-foreground);font-size:.6875rem;line-height:1.3}.preview-card-wrap .preview-card-main .preview-progress-block{flex-direction:column;gap:.5rem;display:flex}.preview-card-wrap .preview-card-main .preview-progress-block .progress-header{justify-content:space-between;align-items:center;display:flex}.preview-card-wrap .preview-card-main .preview-progress-block .progress-header .progress-label{font-family:var(--font-body-landing);color:var(--muted-foreground);font-size:.75rem}.preview-card-wrap .preview-card-main .preview-progress-block .progress-header .progress-pct{font-family:var(--font-heading);color:var(--accent-foreground);font-size:.75rem;font-weight:600}.preview-card-wrap .preview-card-main .preview-progress-block .progress-track{background-color:var(--muted);border-radius:9999px;height:6px;overflow:hidden}.preview-card-wrap .preview-card-main .preview-progress-block .progress-track .progress-fill{background:linear-gradient(90deg,var(--primary),var(--accent-foreground));border-radius:9999px;width:67%;height:100%}.preview-card-wrap .preview-float-card{border-radius:var(--radius-lg);background-color:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-lg);white-space:nowrap;align-items:center;gap:.625rem;padding:.625rem .875rem;display:flex;position:absolute}.preview-card-wrap .preview-float-card .float-icon{border-radius:var(--radius-sm);background-color:color-mix(in srgb,var(--primary)12%,transparent);width:1.875rem;height:1.875rem;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.preview-card-wrap .preview-float-card .float-content{flex-direction:column;gap:.0625rem;display:flex}.preview-card-wrap .preview-float-card .float-content .float-title{font-family:var(--font-heading);color:var(--card-foreground);font-size:.75rem;font-weight:600}.preview-card-wrap .preview-float-card .float-content .float-sub{font-family:var(--font-body-landing);color:var(--muted-foreground);font-size:.6875rem}.preview-card-wrap .preview-float-card--top{animation:4.5s ease-in-out infinite float-y-reverse;top:-1.25rem;right:-1rem}.preview-card-wrap .preview-float-card--bottom{animation:6s ease-in-out infinite float-y;bottom:-1.25rem;left:-1rem}.landing-features{background-color:var(--muted);padding:6rem 1.5rem}.landing-features__inner{max-width:1200px;margin:0 auto}.landing-features__header{text-align:center;flex-direction:column;align-items:center;gap:1rem;margin-bottom:3.5rem;display:flex}.landing-features__label{background-color:color-mix(in srgb,var(--accent-foreground)12%,transparent);border:1px solid color-mix(in srgb,var(--accent-foreground)28%,transparent);font-family:var(--font-heading);color:var(--accent-foreground);letter-spacing:.07em;text-transform:uppercase;border-radius:9999px;align-items:center;padding:.3rem .875rem;font-size:.75rem;font-weight:600;display:inline-flex}.landing-features__headline{font-family:var(--font-heading);color:var(--foreground);letter-spacing:-.025em;max-width:580px;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.2}.landing-features__sub{font-family:var(--font-body-landing);color:var(--muted-foreground);max-width:480px;font-size:1.0625rem;line-height:1.7}.landing-features__grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}@media (max-width:560px){.landing-features__grid{grid-template-columns:1fr}}@media (min-width:1024px){.landing-features__grid{grid-template-columns:repeat(4,1fr)}}.feature-card{background-color:var(--card);border:1px solid var(--border);cursor:default;border-radius:1.25rem;flex-direction:column;gap:1rem;padding:1.75rem;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.feature-card:hover{box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--primary)35%,transparent);transform:translateY(-4px)}.feature-card__icon-wrap{border-radius:var(--radius-md);background-color:color-mix(in srgb,var(--primary)12%,transparent);width:3rem;height:3rem;color:var(--primary);flex-shrink:0;justify-content:center;align-items:center;transition:background-color .2s;display:flex}.feature-card:hover .feature-card__icon-wrap{background-color:color-mix(in srgb,var(--primary)20%,transparent)}.feature-card__title{font-family:var(--font-heading);color:var(--foreground);letter-spacing:-.015em;font-size:1.0625rem;font-weight:600;line-height:1.3}.feature-card__desc{font-family:var(--font-body-landing);color:var(--muted-foreground);font-size:.9375rem;line-height:1.65}.landing-app-availability{background-color:var(--background);padding:6rem 1.5rem}.landing-app-availability__inner{grid-template-columns:55% 1fr;align-items:center;gap:3.5rem;max-width:1200px;margin:0 auto;display:grid}@media (max-width:900px){.landing-app-availability__inner{grid-template-columns:1fr;gap:3rem}}.landing-app-availability__content{flex-direction:column;gap:1.25rem;display:flex}.landing-app-availability__label{background-color:color-mix(in srgb,var(--primary)9%,transparent);border:1px solid color-mix(in srgb,var(--primary)22%,transparent);width:fit-content;font-family:var(--font-heading);color:var(--primary);letter-spacing:.07em;text-transform:uppercase;border-radius:9999px;align-items:center;padding:.3rem .875rem;font-size:.75rem;font-weight:600;display:inline-flex}.landing-app-availability__headline{font-family:var(--font-heading);color:var(--foreground);letter-spacing:-.025em;max-width:480px;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.2}.landing-app-availability__sub{font-family:var(--font-body-landing);color:var(--muted-foreground);max-width:460px;font-size:1.0625rem;line-height:1.7}.landing-app-availability__badges{flex-wrap:wrap;align-items:center;gap:.875rem;padding-top:.5rem;display:flex}.store-badge{color:#fff;border-radius:var(--radius-md);background-color:#000;align-items:center;gap:.625rem;padding:.625rem 1.125rem;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.store-badge:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.store-badge__text{flex-direction:column;gap:.0625rem;line-height:1.15;display:flex}.store-badge__eyebrow{font-family:var(--font-body-landing);letter-spacing:.02em;font-size:.625rem}.store-badge__name{font-family:var(--font-heading);font-size:1.0625rem;font-weight:600}.qr-panel{background-color:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:.875rem;width:fit-content;margin-top:.75rem;padding:1.125rem 1.25rem;display:flex}@media (max-width:900px){.qr-panel{display:none}}.qr-panel__label{font-family:var(--font-heading);color:var(--muted-foreground);letter-spacing:.02em;align-items:center;gap:.4375rem;font-size:.75rem;font-weight:600;display:flex}.qr-panel__codes{align-items:flex-start;gap:1.5rem;display:flex}.qr-panel__item{flex-direction:column;align-items:center;gap:.5rem;display:flex}.qr-panel__swatch{border-radius:var(--radius-md);box-shadow:var(--shadow-2xs);background-color:#fff;padding:.5rem}.qr-panel__swatch img{width:5.75rem;height:5.75rem;display:block}.qr-panel__platform{font-family:var(--font-heading);color:var(--muted-foreground);font-size:.75rem;font-weight:600}.app-showcase-visual{flex-direction:column;align-items:center;gap:1.25rem;display:flex}@media (max-width:900px){.app-showcase-visual{order:-1}}.app-showcase-visual__frame{width:100%;max-width:320px;animation:6s ease-in-out infinite float-y}.app-showcase-visual__slide img{width:100%;height:auto;box-shadow:var(--shadow-lg);border-radius:1.5rem}.app-showcase-visual__dots{align-items:center;gap:.5rem;display:flex}.app-showcase-visual__dot{background-color:var(--border);cursor:pointer;border:none;border-radius:50%;width:.5rem;height:.5rem;padding:0;transition:background-color .2s,transform .2s}.app-showcase-visual__dot:hover{background-color:color-mix(in srgb,var(--primary)50%,transparent)}.app-showcase-visual__dot--active{background-color:var(--primary);transform:scale(1.3)}.landing-signup{background-color:var(--background);padding:6rem 1.5rem}.landing-signup__inner{flex-direction:column;align-items:center;gap:2.5rem;max-width:680px;margin:0 auto;display:flex}.landing-signup__header{text-align:center;flex-direction:column;align-items:center;gap:1rem;display:flex}.landing-signup__label{background-color:color-mix(in srgb,var(--primary)9%,transparent);border:1px solid color-mix(in srgb,var(--primary)22%,transparent);font-family:var(--font-heading);color:var(--primary);letter-spacing:.07em;text-transform:uppercase;border-radius:9999px;align-items:center;padding:.3rem .875rem;font-size:.75rem;font-weight:600;display:inline-flex}.landing-signup__headline{font-family:var(--font-heading);color:var(--foreground);letter-spacing:-.025em;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;line-height:1.2}.landing-signup__sub{font-family:var(--font-body-landing);color:var(--muted-foreground);font-size:1.0625rem;line-height:1.7}.landing-signup__card{border-radius:1.5rem;width:100%;padding:2.5rem}@media (max-width:480px){.landing-signup__card{padding:1.5rem}}.signup-form{flex-direction:column;gap:1.25rem;display:flex}.signup-form__row{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.signup-form__select-wrap{flex-direction:column;flex:1;display:flex}.signup-form__select-wrap label{color:var(--foreground);margin-bottom:.25rem;font-size:.875rem}.signup-form__select-wrap select{border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--background);height:2.5rem;color:var(--foreground);font-size:.875rem;font-family:var(--font-body-landing);cursor:pointer;outline:none;padding:0 .625rem;transition:border-color .15s}.signup-form__select-wrap select:focus{border-color:var(--primary)}.signup-form__select-wrap select option[value=""]{color:var(--muted-foreground)}.signup-form__submit{width:100%;margin-top:.5rem;height:3rem!important;font-family:var(--font-heading)!important;font-size:1rem!important;font-weight:600!important}.signup-form__success{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0;display:flex}.signup-form__success .success-icon{color:#22c55e;background-color:#22c55e24;border-radius:50%;justify-content:center;align-items:center;width:4rem;height:4rem;display:flex}.signup-form__success .success-title{font-family:var(--font-heading);color:var(--foreground);font-size:1.5rem;font-weight:700}.signup-form__success .success-text{font-family:var(--font-body-landing);color:var(--muted-foreground);font-size:1rem}.landing-footer{border-top:1px solid var(--border);background-color:var(--background);padding:1.75rem 1.5rem}.landing-footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;display:flex}@media (max-width:480px){.landing-footer__inner{flex-direction:column;justify-content:center}}.landing-footer__logo{align-items:center;gap:.5rem;display:flex}.landing-footer__logo .footer-logo-image{width:1.5rem;height:1.5rem;position:relative}.landing-footer__logo .footer-logo-text{font-family:var(--font-heading);color:var(--muted-foreground);font-size:.9375rem;font-weight:600}.landing-footer__copy{font-family:var(--font-body-landing);color:var(--muted-foreground);text-align:center;font-size:.8125rem}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.8)}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes float-y-reverse{0%,to{transform:translateY(0)}50%{transform:translateY(10px)}}
