*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-body);color:var(--text);background:var(--bg);overflow:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .6s var(--ease),color .6s var(--ease)}a{color:inherit;text-decoration:none}h1,h2,h3,p,ul{margin:0}ul{list-style:none;padding:0}button{font:inherit;color:inherit}:root{--font-display:'Space Grotesk',system-ui,-apple-system,sans-serif;--font-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;--font-serif:'Fraunces',Georgia,'Times New Roman',serif;--nav-h:74px;--foot-h:46px;--radius:16px;--radius-lg:24px;--ease:cubic-bezier(.22,.61,.36,1);--gutter:clamp(20px, 4vw, 52px);--demoH:440px}[data-theme=night]{--bg:#05060a;--surface:rgba(255,255,255,.045);--surface-2:rgba(255,255,255,.07);--text:#e9edf7;--text-dim:#9aa3bd;--muted:#5d667f;--line:rgba(255,255,255,.09);--accent:#7aa2ff;--accent-2:#b69bff;--glow:rgba(122,162,255,.35);--sky-a:#0b1124;--sky-b:#070a16;--sky-c:#04050b;--celest:#e7ecff;--celest-2:#cdd6f5;color-scheme:dark}[data-theme=sunrise]{--bg:#0a0710;--surface:rgba(255,255,255,.05);--surface-2:rgba(255,255,255,.08);--text:#fbeee6;--text-dim:#d8b6a6;--muted:#8a6a62;--line:rgba(255,200,170,.13);--accent:#ff9e6d;--accent-2:#ffd27a;--glow:rgba(255,158,109,.4);--sky-a:#150f24;--sky-b:#2a1622;--sky-c:#46221d;--celest:#ffd9a0;--celest-2:#ffb27a;color-scheme:dark}[data-theme=day]{--bg:#080d15;--surface:rgba(255,255,255,.05);--surface-2:rgba(255,255,255,.08);--text:#e8f1fb;--text-dim:#9db4cf;--muted:#5a7088;--line:rgba(160,200,255,.12);--accent:#5fd0ff;--accent-2:#8ad9ff;--glow:rgba(95,208,255,.34);--sky-a:#336aa0;--sky-b:#1e4163;--sky-c:#152c45;--celest:#f6fbff;--celest-2:#cfe7ff;color-scheme:dark}[data-theme=sunset]{--bg:#0c0810;--surface:rgba(255,255,255,.05);--surface-2:rgba(255,255,255,.08);--text:#fbe9ec;--text-dim:#d6a9b5;--muted:#87616c;--line:rgba(255,170,190,.13);--accent:#ff7e6b;--accent-2:#c77dff;--glow:rgba(255,126,107,.38);--sky-a:#1b1230;--sky-b:#301726;--sky-c:#45191e;--celest:#ffc08a;--celest-2:#ff9e7a;color-scheme:dark}#sky{position:fixed;inset:0;width:100%;height:100%;z-index:0;display:block}.app-shell{position:relative;z-index:1;height:100dvh;display:flex;flex-direction:column}.nav{position:relative;z-index:3;flex:0 0 var(--nav-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--gutter);border-bottom:1px solid var(--line);transition:border-color .6s var(--ease)}.brand{justify-self:start}.nav__links{justify-self:end}.brand{display:inline-flex;align-items:center;gap:11px}.brand__logo{display:block;height:40px;width:auto}.brand__mark{color:var(--accent);display:inline-flex;transition:color .6s var(--ease)}.brand__word{font-family:var(--font-display);font-weight:600;font-size:19px;letter-spacing:-.02em;color:var(--text)}.nav__links{display:flex;align-items:center;gap:clamp(18px, 3vw, 34px)}.nav__links a{position:relative;font-size:14px;font-weight:500;letter-spacing:.01em;color:var(--text-dim);padding:6px 2px;transition:color .25s var(--ease)}.nav__links a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1.5px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.nav__links a:hover{color:var(--text)}.nav__links a:hover:after{transform:scaleX(1)}.stage{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0, 1fr) 1px minmax(0, 1fr);align-items:center;padding:clamp(14px, 2.4vh, 30px) var(--gutter);gap:clamp(20px, 3vw, 48px)}.divider-v{width:1px;height:62%;align-self:center;background:linear-gradient(to bottom,transparent,var(--line) 14%,var(--line) 86%,transparent);transition:background .6s var(--ease)}.block{height:100%;min-width:0;display:flex;align-items:center;justify-content:center;gap:clamp(16px, 2vw, 36px);outline:none}.block--reflectar{flex-direction:row}.block--alcolog{flex-direction:row-reverse}.demo{display:flex;align-items:center;justify-content:center}.demo-frame{border:0;display:block;background:0 0}.demo--phone{width:calc(var(--demoH) * 0.482);max-width:26vw;height:var(--demoH)}.demo-frame--phone{width:100%;height:100%;pointer-events:none}.demo--ar{width:calc(var(--demoH) * 0.6);max-width:33vw;height:var(--demoH);border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.45);box-shadow:0 24px 70px -28px rgba(0,0,0,.55);transition:border-color .35s var(--ease),box-shadow .35s var(--ease)}.block--reflectar:hover .demo--ar,.block--reflectar:focus-within .demo--ar{border-color:var(--accent)}.demo-frame--ar{width:100%;height:100%}.copy{display:flex;flex-direction:column;gap:14px;max-width:300px}.copy--mirror{align-items:flex-end;text-align:right}.app-name{font-family:var(--font-display);font-weight:600;font-size:clamp(22px, 2.4vw, 30px);letter-spacing:-.02em;color:var(--text);line-height:0}.app-logo{display:block;height:clamp(28px, 3.2vw, 38px);width:auto}.app-logo--reflectar{filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}.app-tag{font-size:15px;color:var(--text-dim);line-height:1.45;white-space:nowrap}.bullets{display:flex;flex-direction:column;gap:11px}.bullets li{position:relative;padding-left:22px;font-size:14.5px;color:var(--text-dim);line-height:1.4}.bullets li:before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--glow);transition:background .6s var(--ease)}.copy--mirror .bullets li{padding-left:0;padding-right:22px}.copy--mirror .bullets li:before{left:auto;right:0}.app-cta{align-self:flex-start;margin-top:4px;font-family:var(--font-display);font-size:13.5px;font-weight:500;letter-spacing:.02em;color:var(--text);padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);transition:border-color .25s var(--ease),background .25s var(--ease),transform .25s var(--ease)}.copy--mirror .app-cta{align-self:flex-end}.app-cta:hover{border-color:var(--accent);background:var(--surface-2);transform:translateY(-1px)}.app-badge{align-self:flex-start;display:inline-flex;line-height:0;margin-top:4px;border-radius:9px;transition:transform .25s var(--ease)}.app-badge img{height:42px;width:auto;display:block}.app-badge:hover{transform:translateY(-1px)}.app-badge:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.copy--mirror .app-badge{align-self:flex-end}.demo-col{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0}.demo-hint{margin:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;text-align:center;line-height:1.3;font-family:var(--font-display);font-weight:500;font-size:13px}.demo-hint__txt{color:var(--text);text-shadow:0 1px 8px rgba(0,0,0,.6),0 0 2px rgba(0,0,0,.45)}.demo-hint__ic{display:inline-flex}.demo-hint__ic svg{display:block}.demo-hint--reflectar .demo-hint__ic{color:#e0855a}.demo-hint--alcolog .demo-hint__ic{color:#54ccbf}.demo-hint__ic--mouse,.demo-hint__txt--mouse{display:none}.block--reflectar .demo-hint{max-width:calc(var(--demoH) * 0.6)}.block--alcolog .demo-hint{max-width:calc(var(--demoH) * 0.482)}@media (hover:hover) and (pointer:fine){.demo-hint__ic--mouse{display:inline-flex}.demo-hint__txt--mouse{display:inline}.demo-hint__ic--touch,.demo-hint__txt--touch{display:none}}.foot{flex:0 0 var(--foot-h);display:flex;align-items:center;justify-content:center;border-top:1px solid var(--line);transition:border-color .6s var(--ease)}.foot p{font-size:12.5px;color:var(--text-dim);letter-spacing:.01em}.heart-flutter{color:#ff5a6e;position:relative;display:inline-block;cursor:pointer;user-select:none;-webkit-user-select:none;transition:transform .2s cubic-bezier(.4,0,.2,1)}.heart-flutter:hover{transform:scale(1.18)}.heart-flutter:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:3px}.heart-particle{position:absolute;pointer-events:none;opacity:0;left:50%;top:50%}.tod-controls{justify-self:center;display:flex;align-items:center;gap:12px}.tod-nav{display:flex;align-items:center;gap:2px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--surface);backdrop-filter:blur(8px)}.tod-dial{width:50px;height:50px;flex:0 0 auto;cursor:grab;touch-action:none;outline:none}.tod-dial__time{fill:var(--text);font-family:var(--font-display);font-weight:600;font-size:8.5px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.tod-dial:active{cursor:grabbing}.tod-dial svg{width:100%;height:100%;display:block;overflow:visible}.tod-dial__track{fill:none;stroke:var(--line);stroke-width:2.5}.tod-dial__tick{fill:var(--text-dim);opacity:.5}.tod-dial__handle{fill:var(--accent);stroke:var(--bg);stroke-width:1.4;transition:fill .3s var(--ease)}.tod-dial:focus-visible .tod-dial__track{stroke:var(--accent)}.tod-meta{display:flex;flex-direction:row;align-items:center;gap:9px;margin-right:10px}.tod-timer{display:inline-flex;align-items:stretch;font:600 18px/1 var(--font-display);color:var(--text);font-variant-numeric:tabular-nums}.tod-timer.flashing{animation:timerFlash 1.1s ease-in-out infinite}@keyframes timerFlash{0%,100%{opacity:1}50%{opacity:.3}}.tdig{position:relative;display:inline-block;overflow:hidden;clip-path:inset(0);width:.58em;height:1em;text-align:center}.tdig__c,.tdig__n{display:block;width:100%;transition:transform .3s cubic-bezier(.2,.8,.25,1),opacity .3s}.tdig__c.out{transform:translateY(-115%);opacity:0}.tdig__n{position:absolute;inset:0;transform:translateY(115%);opacity:0}.tdig__n.in{transform:translateY(0);opacity:1}.tcol{display:inline-block;padding:0 1px}.tod-seen{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.tod-seen__item{display:inline-flex;align-items:center;gap:4px;font:500 11px var(--font-display);color:var(--text-dim);font-variant-numeric:tabular-nums}.tod-seen__item svg{opacity:.75}.seen-tip{position:absolute;top:calc(100% + 12px);left:0;width:max-content;max-width:244px;padding:10px 13px;font:400 12px/1.55 var(--font-body);color:var(--text);text-align:left;letter-spacing:0;text-transform:none;background:rgba(12,15,24,.94);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 34px rgba(0,0,0,.45);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .22s var(--ease),transform .22s var(--ease);pointer-events:none;z-index:30}.seen-tip:before{content:"";position:absolute;bottom:100%;left:22px;border:6px solid transparent;border-bottom-color:rgba(12,15,24,.94)}.tod-seen:hover .seen-tip,.tod-seen:focus-within .seen-tip{opacity:1;visibility:visible;transform:translateY(0)}.cookie-banner{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:60;width:min(680px, calc(100vw - 24px));display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 16px;background:rgba(12,15,24,.95);border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 44px rgba(0,0,0,.5);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font:400 13px/1.5 var(--font-body);color:var(--text-dim);animation:cookieIn .4s var(--ease) both}.cookie-banner[hidden]{display:none}@keyframes cookieIn{from{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%,0)}}.cookie-banner__text{margin:0;flex:1 1 280px}.cookie-banner__text a{color:var(--text);text-decoration:underline}.cookie-banner__actions{display:flex;gap:8px;flex:0 0 auto;margin-left:auto}.cookie-btn{font:600 13px var(--font-display);padding:8px 18px;border-radius:999px;cursor:pointer;border:1px solid var(--line);transition:filter .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}.cookie-btn--ghost{background:0 0;color:var(--text-dim)}.cookie-btn--ghost:hover{color:var(--text);border-color:rgba(255,255,255,.28)}.cookie-btn--accept{background:var(--accent);color:#06121c;border-color:transparent}.cookie-btn--accept:hover{filter:brightness(1.08)}.foot-cookie-link{background:0 0;border:0;padding:0;cursor:pointer;font:inherit;color:var(--text-dim);text-decoration:underline;opacity:.85}.foot-cookie-link:hover{color:var(--text);opacity:1}@media (max-width:560px){.cookie-banner{bottom:10px;gap:10px}.cookie-banner__actions{margin-left:0;width:100%;justify-content:flex-end}}.tod-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:30px;border:0;border-radius:999px;color:var(--text-dim);background:0 0;cursor:pointer;transition:color .2s var(--ease),background .2s var(--ease)}.tod-btn:hover{color:var(--text)}.tod-btn[aria-pressed=true]{color:var(--accent);background:var(--surface-2)}.tod-sep{width:1px;height:16px;background:var(--line);margin:0 3px}.nav-menu{display:contents}.nav-burger{display:none}.nav-close{display:none}.fly-debug{position:fixed;left:14px;bottom:14px;z-index:7;display:flex;flex-wrap:wrap;align-items:center;gap:4px;width:190px;max-height:70vh;overflow-y:auto;padding:8px 9px;background:rgba(8,10,16,.92);border:1px solid var(--line);border-radius:12px;backdrop-filter:blur(10px)}.fly-debug__title{width:100%;font:600 10px/1 var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.fly-debug__row{width:100%;font:500 9px/1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);opacity:.6;margin-top:4px}.fly-debug button{font:500 11px var(--font-display);color:var(--text-dim);background:0 0;border:1px solid var(--line);border-radius:8px;padding:3px 8px;cursor:pointer}.fly-debug button:hover{color:var(--text);border-color:var(--accent)}.fly-debug button[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}@media (max-width:900px){html{overflow-x:clip}html,body{height:auto;min-height:100%}body{overflow:visible}.app-shell{height:auto;min-height:100dvh}.nav{position:sticky;top:0;z-index:5;min-height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;background:rgba(8,10,16,.55);backdrop-filter:blur(12px)}.brand__logo{height:40px;max-width:64vw;object-fit:contain;object-position:left center}.nav-burger{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;justify-self:end;width:42px;height:42px;padding:0;background:0 0;border:0;cursor:pointer}.nav-burger span{width:22px;height:2px;border-radius:2px;background:var(--text);transition:transform .3s var(--ease),opacity .2s}.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-burger.open span:nth-child(2){opacity:0}.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-menu{display:flex;flex-direction:column;align-items:center;gap:20px;position:fixed;top:0;left:0;right:0;z-index:6;padding:56px 20px 30px;background:rgba(8,10,16,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);transform:translateY(-102%);transition:transform .32s var(--ease);max-height:100dvh;overflow-y:auto}.nav-menu.open{transform:translateY(0)}.nav-close{display:inline-flex;align-items:center;justify-content:center;position:absolute;top:12px;right:14px;width:40px;height:40px;padding:0;color:var(--text);background:var(--surface-2);border:1px solid var(--line);border-radius:50%;cursor:pointer;transition:background .2s var(--ease),border-color .2s var(--ease)}.nav-close:hover{background:var(--surface);border-color:var(--accent)}.nav-menu .tod-controls{flex-direction:column;align-items:center;gap:18px;margin:0}.nav-menu .tod-btn{width:46px;height:42px}.nav-menu .tod-dial{width:58px;height:58px}.nav-menu .nav__links{gap:36px;font-size:16px}.nav-menu .nav__links a{padding:8px 4px}.stage{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:46px;padding:26px 18px 44px;min-height:0}.divider-v{display:none}.block{flex-direction:column !important;height:auto;gap:18px;width:100%}.copy,.copy--mirror{order:-1;align-items:center;text-align:center;max-width:90vw}.app-tag{white-space:normal}.copy .bullets,.copy--mirror .bullets{text-align:left;align-self:center}.copy--mirror .bullets li{padding-left:22px;padding-right:0}.copy--mirror .bullets li:before{left:0;right:auto}.copy .app-cta,.copy--mirror .app-cta{align-self:center}.copy .app-badge,.copy--mirror .app-badge{align-self:center}.block--reflectar .demo-hint{max-width:min(84vw, 380px)}.block--alcolog .demo-hint{max-width:min(70vw, 290px)}.demo-hint__ic--touch{display:inline-flex}.demo-hint__txt--touch{display:inline}.demo-hint__ic--mouse,.demo-hint__txt--mouse{display:none}.demo--phone{width:min(70vw, 290px);max-width:none;height:auto;aspect-ratio:.482}.demo--ar{width:min(84vw, 380px);max-width:none;height:auto;aspect-ratio:.6}.foot{position:relative;z-index:1;text-align:center;padding:0 18px}}body.contact-page{overflow-x:hidden;overflow-y:auto}.contact-page .app-shell{height:auto;min-height:100dvh}.stage--contact{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:clamp(28px, 5vh, 64px) var(--gutter)}.contact-card{width:min(560px, 100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(24px, 4vw, 40px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 30px 80px -42px rgba(0,0,0,.6);transition:background .6s var(--ease),border-color .6s var(--ease)}.contact-title{font-family:var(--font-display);font-weight:600;font-size:clamp(26px, 3.4vw, 36px);letter-spacing:-.02em;color:var(--text)}.contact-sub{margin-top:8px;color:var(--text-dim);font-size:15px;line-height:1.5}.contact-form{display:flex;flex-direction:column;gap:15px;margin-top:26px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-family:var(--font-display);font-size:12.5px;font-weight:500;letter-spacing:.02em;color:var(--text-dim)}.field input,.field textarea{font:inherit;font-size:15px;color:var(--text);width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:11px 14px;transition:border-color .2s var(--ease),background .2s var(--ease)}.field textarea{resize:vertical;min-height:130px}.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);background:var(--surface)}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-send{align-self:flex-start;margin-top:2px;cursor:pointer}.contact-send[disabled]{opacity:.6;cursor:default}.contact-status{min-height:1.3em;font-size:14px;line-height:1.4}.contact-status.ok{color:#4fd08a}.contact-status.err{color:#ff6b75}.g-recaptcha{transform-origin:left top}@media (max-width:360px){.g-recaptcha{transform:scale(.86)}}@media (prefers-reduced-motion:reduce){*{transition:none !important}}