@font-face{font-family:Stack Sans Text;src:url(/assets/StackSansText-VariableFont_wght-DANniibb.ttf) format("truetype-variations");font-weight:200 700;font-style:normal;font-display:swap}:root{--gray-1000: #0d0d0d;--gray-900: #171717;--gray-800: #262626;--gray-600: #595859;--gray-100: #f2f2f2;--color-bg: var(--gray-1000);--color-bg-secondary: var(--gray-900);--color-surface: #161616;--color-surface-2: var(--gray-800);--color-border: rgba(242, 242, 242, .08);--color-border-hover: rgba(242, 242, 242, .16);--color-text: var(--gray-100);--color-text-secondary: #acacac;--color-muted: var(--gray-600);--color-accent: #bf7665;--color-accent-hover: #d08f80;--color-accent-soft: rgba(191, 118, 101, .12);--color-accent-glow: rgba(191, 118, 101, .35);--color-success: #4ade80;--color-success-soft: rgba(74, 222, 128, .1);--color-error: #f87171;--color-error-soft: rgba(239, 68, 68, .1);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .35);--shadow-md: 0 10px 25px -5px rgba(0, 0, 0, .45);--shadow-lg: 0 20px 50px -12px rgba(0, 0, 0, .65);--shadow-glow: 0 0 24px var(--color-accent-glow);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 999px;--container: 1200px;--font: "Stack Sans Text", system-ui, -apple-system, sans-serif;--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--color-text);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(circle at 20% 30%,rgba(191,118,101,.1),transparent 40%),radial-gradient(circle at 80% 70%,rgba(191,118,101,.06),transparent 40%);pointer-events:none}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:50px 50px;pointer-events:none}img{max-width:100%;height:auto}a{color:var(--color-accent);text-decoration-thickness:.08em;text-underline-offset:.15em;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover);text-decoration:none}.container{width:min(100% - 2rem,var(--container));margin-inline:auto}.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}.layout{min-height:100vh;display:flex;flex-direction:column}.layout__main{flex:1}.navbar{position:sticky;top:0;z-index:40;background:#0d0d0dcc;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--color-border);animation:slideInDown .5s ease-out forwards}.navbar__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.75rem}.navbar__brand{display:inline-flex;align-items:center;gap:.65rem;color:inherit;text-decoration:none;font-weight:700;letter-spacing:-.02em}.navbar__logo{width:40px;height:40px;border-radius:8px;flex-shrink:0;object-fit:contain;transition:transform var(--transition)}.navbar__logo:hover{transform:scale(1.05)}.navbar__title{font-size:1.15rem;font-weight:600;letter-spacing:-.02em;color:var(--color-text);-webkit-text-fill-color:initial}.navbar__toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;transition:all var(--transition-fast)}.navbar__toggle:hover{border-color:var(--color-border-hover);background:var(--color-surface-2)}@media(min-width:900px){.navbar__toggle{display:none}}.navbar__toggle{color:var(--color-text)}.navbar__nav{display:none}.navbar__nav--open{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;padding:6.5rem 2rem 3rem;background:#0d0d0df7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;align-items:center;gap:2rem}.navbar__nav--open .navbar__list{align-items:center;gap:1rem}.navbar__nav--open .navbar__link{font-size:1.35rem;font-weight:600}@media(min-width:900px){.navbar__nav{display:flex;position:static;padding:0;border-bottom:0;background:transparent;flex-direction:row;align-items:center;gap:1.25rem}}.navbar__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem}@media(min-width:900px){.navbar__list{flex-direction:row;align-items:center;gap:.5rem}}.navbar__link{display:inline-flex;padding:.55rem .75rem;border-radius:var(--radius-sm);color:var(--color-text-secondary);text-decoration:none;font-weight:500;transition:all var(--transition-fast);position:relative}.navbar__link:after{content:"";position:absolute;bottom:.4rem;left:.75rem;right:.75rem;height:2px;background:var(--color-accent);border-radius:1px;transform:scaleX(0);transition:transform var(--transition)}.navbar__link:hover{color:var(--color-text);background:#ffffff0d}.navbar__link:hover:after{transform:scaleX(1)}.navbar__link--active{color:var(--color-accent);background:var(--color-accent-soft)}.navbar__link--active:after{transform:scaleX(1)}.navbar__cta{text-decoration:none;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.1rem;border-radius:var(--radius);border:1px solid transparent;font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none;transition:all var(--transition)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.65;cursor:not-allowed}.btn--primary{background:var(--color-accent);color:var(--gray-1000);box-shadow:0 4px 14px #bf766559;position:relative;overflow:hidden;transition:all var(--transition);font-weight:600}.btn--primary:hover{background:var(--color-accent-hover);transform:translateY(-2px);box-shadow:0 6px 20px #bf766566;color:var(--gray-1000)}.btn--ghost{background:transparent;border-color:var(--color-border);color:var(--color-text)}.btn--ghost:hover{background:#ffffff0d;border-color:var(--color-border-hover);color:var(--color-text)}.btn--large{padding:.85rem 1.5rem;font-size:1rem}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding:clamp(6rem,12vh,9rem) 0 clamp(3rem,8vh,5rem);background:var(--color-bg)}.hero__video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.6}.hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero__overlay--left{background:linear-gradient(90deg,var(--color-bg) 0%,rgba(13,13,13,.55) 35%,transparent 65%)}.hero__overlay--bottom{background:linear-gradient(0deg,var(--color-bg) 0%,rgba(13,13,13,.4) 25%,transparent 50%)}.hero__grid-lines{display:none}@media(min-width:900px){.hero__grid-lines{display:block;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero__grid-lines span{position:absolute;top:0;bottom:0;width:1px;background:#ffffff1a}.hero__grid-lines span:nth-child(1){left:25%}.hero__grid-lines span:nth-child(2){left:50%}.hero__grid-lines span:nth-child(3){left:75%}}.hero__glow{position:absolute;top:-80px;left:50%;transform:translate(-50%);width:min(1100px,120vw);height:auto;pointer-events:none}.hero__content{position:relative;z-index:1}.glass-card{width:200px;height:200px;transform:translateY(-50px);position:relative;border-radius:20px;padding:1.1rem;display:flex;flex-direction:column;justify-content:space-between;background:#ffffff03;background-blend-mode:luminosity;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);box-shadow:inset 0 1px 1px #ffffff1a}.glass-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1.4px;background:linear-gradient(180deg,#ffffff8c,#ffffff0f);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}.glass-card__tag{font-family:var(--font);font-size:14px;letter-spacing:.1em;color:#ffffffb3}.glass-card__title{margin:0;font-size:18px;line-height:1.25;font-weight:600;color:#fff}.glass-card__title em{font-family:var(--font);font-style:italic;font-weight:400}.glass-card__desc{margin:0;font-size:11px;line-height:1.45;color:#fff9}.hero__eyebrow{margin:0 0 1rem;font-family:var(--font);font-weight:700;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--color-accent)}.hero__title{margin:0 0 1.25rem;font-family:var(--font);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(40px,6vw,72px);line-height:1.02;color:#fff;max-width:18ch}.hero__dot{color:var(--color-accent)}.hero__subtitle{margin:0 0 2rem;font-size:14px;line-height:1.6;color:#ffffffb3;max-width:512px}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem}.hero__cta{display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 1.75rem;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--gray-1000);text-transform:uppercase;font-weight:700;font-size:.85rem;letter-spacing:.05em;text-decoration:none;transition:all var(--transition)}.hero__cta:hover{background:var(--color-accent-hover);color:var(--gray-1000);transform:translateY(-2px);box-shadow:0 8px 24px #bf766559}.hero__ghost{display:inline-flex;align-items:center;padding:.9rem 1.75rem;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.15);color:#fff;font-weight:600;font-size:.85rem;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;transition:all var(--transition)}.hero__ghost:hover{border-color:#ffffff59;background:#ffffff0d;color:#fff}.section{padding:clamp(2.25rem,4vw,3.5rem) 0}.section--muted{background:linear-gradient(180deg,transparent,rgba(191,118,101,.03));border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.section__header{max-width:70ch;margin-bottom:1.75rem}.section__title{margin:0 0 .5rem;font-size:clamp(1.5rem,2.6vw,2rem);letter-spacing:-.02em;background:linear-gradient(135deg,var(--color-text) 0%,var(--color-text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section__lead{margin:0;color:var(--color-text-secondary)}.preview-grid{display:grid;gap:1rem}@media(min-width:720px){.preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.preview-card{display:block;padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);color:inherit;text-decoration:none;transition:all var(--transition);position:relative;overflow:hidden}.preview-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);transform:scaleX(0);transition:transform var(--transition)}.preview-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--color-accent);background:var(--color-surface-2)}.preview-card:hover:before{transform:scaleX(1)}.preview-card{opacity:0;animation:fadeInUp .6s ease-out forwards}.preview-card:nth-child(1){animation-delay:.1s}.preview-card:nth-child(2){animation-delay:.2s}.preview-card:nth-child(3){animation-delay:.3s}.preview-card:nth-child(4){animation-delay:.4s}.preview-card__title{margin:0 0 .35rem;font-size:1.05rem}.preview-card__text{margin:0 0 .75rem;color:var(--color-text-secondary);font-size:.95rem}.preview-card__cta{font-weight:700;color:var(--color-accent);font-size:.9rem;position:relative;z-index:1}.preview-card:hover .preview-card__cta{color:var(--color-accent-hover)}.cases-grid{display:grid;gap:1rem}@media(min-width:720px){.cases-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.case-card{display:flex;flex-direction:column;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);color:inherit;text-decoration:none;overflow:hidden;transition:all var(--transition)}.case-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-lg);transform:translateY(-6px);color:inherit}.case-card__media{position:relative;aspect-ratio:16 / 10;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border)}.case-card__logo{max-width:70%;max-height:100%;object-fit:contain;display:block;transition:transform var(--transition);filter:drop-shadow(0 8px 20px rgba(0,0,0,.35))}.case-card:hover .case-card__logo{transform:scale(1.05)}.case-card__visit{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding-bottom:1.25rem;background:linear-gradient(180deg,transparent 60%,rgba(13,13,13,.85) 100%);opacity:0;transition:opacity var(--transition)}.case-card__visit-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--gray-1000);font-weight:700;font-size:.8rem;letter-spacing:.02em;transform:translateY(6px);transition:transform var(--transition)}.case-card:hover .case-card__visit-pill{transform:translateY(0)}.case-card:hover .case-card__visit{opacity:1}.case-card__body{display:flex;flex-direction:column;gap:.5rem;padding:1.5rem}.case-card__meta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.case-card__stage{padding:.2rem .6rem;border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.case-card__sector{color:var(--color-muted);font-size:.82rem}.case-card__name{margin:.25rem 0 0;font-size:1.2rem}.case-card__text{margin:0;color:var(--color-text-secondary);font-size:.95rem;flex:1}.case-card__link{display:inline-flex;align-items:center;gap:.35rem;margin-top:.5rem;font-weight:700;font-size:.9rem;color:var(--color-accent);text-decoration:none}.case-card__link:hover{color:var(--color-accent-hover)}.pillars{display:grid;gap:1rem}@media(min-width:900px){.pillars{grid-template-columns:repeat(3,minmax(0,1fr))}}.pillar{border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);padding:2.5rem;transition:all var(--transition);opacity:0;animation:fadeInUp .6s ease-out forwards;position:relative;overflow:hidden}.pillar:before{display:none}.pillar:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);border-color:var(--color-accent);background:var(--color-surface-2)}.pillar__icon{width:48px;height:48px;border-radius:var(--radius);background:linear-gradient(135deg,var(--color-accent-soft),var(--color-blue-soft));display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:var(--color-accent);position:relative}.pillar__icon:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:calc(var(--radius) + 2px);background:linear-gradient(135deg,var(--color-accent),var(--color-blue));opacity:0;z-index:-1;filter:blur(8px);transition:opacity var(--transition)}.pillar:hover .pillar__icon:after{opacity:.4}.pillar__title{margin:0 0 .5rem;font-size:1.1rem}.pillar__text{margin:0;color:var(--color-text-secondary)}.cta-section{padding:clamp(2.25rem,4vw,3.25rem) 0 3.5rem}.cta-section__inner{border-radius:calc(var(--radius-xl) + 4px);border:1px solid var(--color-border);background:linear-gradient(135deg,var(--color-surface),var(--color-bg-secondary));box-shadow:var(--shadow-md);padding:clamp(1.25rem,3vw,2rem);display:grid;gap:1.25rem;position:relative;overflow:hidden}.cta-section__inner:before{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,var(--color-accent-glow),transparent 70%);pointer-events:none}@media(min-width:900px){.cta-section__inner{grid-template-columns:1.2fr .8fr;align-items:center}}.cta-section__title{margin:0 0 .5rem;font-size:clamp(1.35rem,2.4vw,1.75rem);letter-spacing:-.02em}.cta-section__text{margin:0;color:var(--color-text-secondary)}.cta-section__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start}@media(min-width:900px){.cta-section__actions{justify-content:flex-end}}.page{padding-bottom:3rem}.page__hero{padding:clamp(2rem,4vw,3rem) 0 1.5rem}.page__eyebrow{margin:0 0 .5rem;color:var(--color-accent);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.page__title{margin:0 0 .75rem;font-size:clamp(1.75rem,3vw,2.25rem);letter-spacing:-.03em}.page__subtitle{margin:0;color:var(--color-text-secondary);max-width:75ch}.page__tagline{margin:1rem 0 0;color:var(--color-accent);font-weight:600;font-size:1.05rem}.page__stack{display:grid;gap:2.5rem;padding-top:1rem}.page__narrow{max-width:640px;padding-top:.5rem}.service-group{scroll-margin-top:96px}.service-group__header{margin-bottom:1rem}.service-group__title{margin:0 0 .5rem;font-size:1.35rem}.service-group__summary{margin:0;color:var(--color-text-secondary);max-width:85ch}.service-group__grid{display:grid;gap:1rem}@media(min-width:780px){.service-group__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.service-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:1.1rem 1.15rem;transition:all var(--transition)}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--color-accent)}.service-card__title{margin:0 0 .5rem;font-size:1.05rem}.service-card__text{margin:0;color:var(--color-text-secondary);font-size:.95rem}.about-block__title{margin:0 0 .5rem;font-size:1.35rem}.about-block__text{margin:0 0 .75rem;color:var(--color-text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;text-align:center}@media(max-width:640px){.stats-grid{grid-template-columns:1fr;gap:1rem}}.stat-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);opacity:0;animation:fadeInUp .6s ease-out forwards}.stat-value{display:block;font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-hover));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.5rem}.stat-label{color:var(--color-text-secondary);font-size:.95rem}.about-cta{margin-top:1rem}.about-list{margin:0;padding-left:1.1rem;color:var(--color-text-secondary)}.contact-form{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:clamp(1.25rem,3vw,2rem);box-shadow:var(--shadow-md)}.contact-form__success{display:flex;align-items:flex-start;gap:.75rem;margin:0 0 1.25rem;padding:1rem;border-radius:var(--radius);background:var(--color-success-soft);color:var(--color-success);border:1px solid rgba(74,222,128,.2)}.contact-form__success svg{flex-shrink:0;margin-top:.15rem}.contact-form__success p{margin:0}.contact-form__error{margin:0 0 1rem;padding:.75rem .85rem;border-radius:var(--radius);background:var(--color-error-soft);color:var(--color-error);border:1px solid rgba(239,68,68,.2)}.field{display:grid;gap:.35rem;margin-bottom:1rem}.field label{font-weight:600;font-size:.95rem;color:var(--color-text-secondary)}.field input,.field textarea{width:100%;padding:.75rem .85rem;border-radius:var(--radius);border:1px solid var(--color-border);font:inherit;background:var(--color-bg-secondary);color:var(--color-text);transition:all var(--transition-fast)}.field textarea{resize:vertical;min-height:140px}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--color-accent-soft);outline-offset:2px;border-color:var(--color-accent)}.field input::placeholder,.field textarea::placeholder{color:var(--color-muted)}.field__error{color:var(--color-error);font-size:.9rem}.contact-form__actions{display:flex;justify-content:flex-start;margin-top:.25rem}.footer{border-top:1px solid var(--color-border);background:var(--color-bg-secondary)}.footer__grid{display:grid;gap:1.5rem;padding:2.25rem 0}@media(min-width:800px){.footer__grid{grid-template-columns:1.2fr .8fr 1fr}}.footer__brand{margin:0 0 .35rem;font-weight:800;font-size:1.25rem;letter-spacing:-.02em}.footer__logo{width:100px;height:100px;border-radius:10px;margin-bottom:.75rem;object-fit:contain}.footer__brand-section{opacity:0;animation:fadeInUp .5s ease-out forwards}.footer__links-section{opacity:0;animation:fadeInUp .5s ease-out .1s forwards}.footer__contact-section{opacity:0;animation:fadeInUp .5s ease-out .2s forwards}.footer__social{display:flex;gap:.75rem;margin-top:.75rem}.footer__social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);transition:all var(--transition-fast)}.footer__social a:hover{background:var(--color-accent);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-glow)}.footer__muted{margin:0;color:var(--color-text-secondary)}.footer__badges{display:flex;gap:.5rem;margin-left:auto}.footer__badge{font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:4px;background:var(--color-accent-soft);color:var(--color-accent)}.footer__heading{margin:0 0 .5rem;font-weight:700}.footer__links{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.footer__links a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.footer__links a:hover{color:var(--color-accent);text-decoration:none}.footer__bar{border-top:1px solid var(--color-border);background:var(--color-surface)}.footer__bar-inner{padding:.9rem 0;color:var(--color-muted);font-size:.875rem}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;background:#0a0a0fcc}.overlay--loading{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.spinner{display:inline-flex;align-items:center;justify-content:center}.spinner__ring{width:42px;height:42px;border-radius:var(--radius-pill);border:3px solid var(--color-accent-soft);border-top-color:var(--color-accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:70;max-width:min(560px,calc(100% - 2rem));padding:.85rem 1rem;border-radius:var(--radius);border:1px solid var(--color-border);box-shadow:var(--shadow-md);background:var(--color-surface)}.toast--error{border-color:#ef44444d;background:var(--color-error-soft);color:var(--color-error)}.toast--success{border-color:#4ade804d;background:var(--color-success-soft);color:var(--color-success)}.whatsapp-fab{position:fixed;right:1rem;bottom:1rem;z-index:50;width:60px;height:60px;border-radius:var(--radius-pill);background:#22c55e;box-shadow:var(--shadow-md);display:grid;place-items:center;color:#fff;text-decoration:none;transition:all var(--transition);overflow:hidden}.whatsapp-fab:hover{filter:brightness(1.03);transform:scale(1.05);box-shadow:0 0 20px #22c55e66}.whatsapp-fab__img{width:36px;height:36px;object-fit:contain}.not-found{padding:3rem 0;text-align:center}.not-found__title{margin:0 0 .5rem;font-size:3rem;letter-spacing:-.04em}.not-found__text{margin:0 0 1.25rem;color:var(--color-text-secondary)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .6s ease-out forwards}.animate-slide-in-left{animation:slideInLeft .6s ease-out forwards}.animate-slide-in-right{animation:slideInRight .6s ease-out forwards}.animate-scale-in{animation:scaleIn .5s ease-out forwards}.animate-float{animation:float 3s ease-in-out infinite}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.error-fallback{min-height:60vh;display:grid;place-content:center;gap:.75rem;padding:2rem;text-align:center}.error-fallback h1{margin:0}.error-fallback p{margin:0;color:var(--color-text-secondary);max-width:52ch}
