:root{--bg-void:#0b0b10;--bg-void-soft:#131019;--surface:#12121a;--surface-dim:#181824;--surface-elevated:#1a1a28;--surface-active:#1d1b2e;--nyx-violet:#8b5cf6;--nyx-violet-glow:#a855f7;--nyx-blue:#5b6ef5;--text-primary:#f3f4f6;--text-muted:#9ca3af;--text-accent:#c084fc;--ink-dark:#f3f4f6;--border-soft:#8a2be233;--border-dim:#2d2d3f;--font-display:"Space Grotesk", sans-serif;--font-body:"IBM Plex Sans", sans-serif;--font-mono:"IBM Plex Mono", monospace;--text-xs:clamp(.75rem, .72rem + .15vw, .8rem);--text-sm:clamp(.875rem, .84rem + .15vw, .925rem);--text-base:clamp(1rem, .96rem + .2vw, 1.05rem);--text-readable-min:1.1rem;--text-lg:clamp(1.125rem, 1.05rem + .35vw, 1.25rem);--text-xl:clamp(1.375rem, 1.25rem + .6vw, 1.6rem);--text-2xl:clamp(1.75rem, 1.55rem + 1vw, 2.1rem);--text-3xl:clamp(2.25rem, 1.9rem + 1.7vw, 2.9rem);--text-4xl:clamp(2.75rem, 2.2rem + 2.5vw, 3.75rem);--text-5xl:clamp(3.25rem, 2.5rem + 3.5vw, 4.75rem);--weight-regular:400;--weight-medium:500;--weight-readable:550;--weight-semibold:600;--weight-bold:700;--leading-tight:1.1;--leading-normal:1.5;--leading-relaxed:1.7;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--space-6:6rem;--max-width:1200px;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-full:999px;--shadow-sm:0 2px 8px #0006;--shadow-md:0 8px 32px #00000080;--shadow-glow:0 0 32px #8b5cf659;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--z-navbar:50;--z-overlay:80;--z-modal:100}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body html,body body,body #root{background-color:var(--bg-void);min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;font-family:inherit}.container{max-width:var(--max-width);padding:0 var(--space-3);margin:0 auto}.home-page{isolation:isolate;--bg-void:#0f0c16;--bg-void-soft:#171321;--surface:#0f0c16;--surface-dim:#171321;--surface-elevated:#20182b;--surface-active:#241a33;--nyx-violet:#a855f7;--nyx-violet-glow:#c084fc;--text-primary:#fff;--text-muted:#c4b5d0;--text-accent:#d8b4fe;--ink-dark:#fff;--border-soft:#a855f738;--border-dim:#a855f729;min-height:100vh;position:relative}.home-page__background{z-index:0;pointer-events:none;background:#000;position:fixed;inset:0;overflow:hidden}.home-page__background--fallback{background:radial-gradient(at 18% 20%,#896abd33,#0000 42%),radial-gradient(at 84% 78%,#a855f72e,#0000 48%),#000}.home-page__background .home-page__aero-shards{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.home-page__background--fallback .home-page__aero-shards{opacity:0;pointer-events:none}.home-page__content{z-index:1;min-height:100vh;position:relative}.home-page :is(.hero__subtitle,.services__card-description,.services__summary,.services__details-button,.services-modal__intro,.services-modal__list li,.services-modal__ideal li,.services-modal__footer span,.services-modal__footer button,.projects__carousel-hint,.projects__category,.projects__description,.projects__selected ul,.projects__preview-note,.projects__visit,.projects__cta p,.projects__cta a,.projects__client-note,.quote__step-description,.quote__option,.quote__option-head strong,.quote__option-description,.quote__option-more,.quote__educational-box strong,.quote__educational-box p,.quote__checkbox,.quote__checkbox-content strong,.quote__checkbox-content small,.quote__ownership-note,.quote__price-description,.quote__price-note p,.quote__price-info-button,.quote__price-info strong,.quote__price-info p,.quote__estimate div,.quote__summary-header h4,.quote__summary-header span,.quote__selected-modality-header>div>span,.quote__selected-project span,.quote__estimate-label,.quote__summary-item span,.quote__summary-item strong,.quote__selected-modality>p,.quote__text-button,.quote__details-button,.quote__disclaimer,.quote__final-summary strong,.quote__final-summary span,.quote__final-summary small,.quote__label,.quote__label>span,.quote__label small,.quote__input,.quote__required-note,.quote__whatsapp-instructions,.quote__error,.quote__success p,.quote__success-note,.quote__nav button,.quote__modal-footer button,.quote__modal-body>p,.quote__modal-benefit,.quote__modal-note p,.contact__intro p,.contact__link strong,.contact__quote p,.contact__quote a,.contact__label,.contact__input,.contact__message,.navbar__links,.navbar__cta,.btn){font-size:var(--text-readable-min);font-weight:var(--weight-readable);line-height:var(--leading-relaxed)}.home-page :is(.services__card-description,.services__summary,.services-modal__intro,.services-modal__list li,.services-modal__ideal li,.projects__carousel-hint,.projects__description,.projects__selected ul,.projects__preview-note,.projects__client-note,.quote__step-description,.quote__option-description,.quote__educational-box p,.quote__ownership-note,.quote__price-description,.quote__price-note p,.quote__price-info p,.quote__selected-modality>p,.quote__disclaimer,.quote__required-note,.quote__whatsapp-instructions,.contact__intro p,.contact__quote p){color:#d1c5da}.neon-panel{isolation:isolate;border-radius:var(--radius-lg);background:radial-gradient(at 8% 0,#a855f71a,#0000 48%),#0f0c16e0;border:1px solid #a855f73d;transition:border-color .22s,box-shadow .22s,background-color .22s;position:relative;box-shadow:inset 0 1px #ffffff09,0 0 0 1px #7c3aed09,0 12px 30px #0000003d,0 0 16px #7c3aed14}.neon-panel:before{z-index:-1;border-radius:inherit;content:"";pointer-events:none;background:radial-gradient(at 0 0,#a855f71c,#0000 58%);position:absolute;inset:0}.neon-panel>*{z-index:1;position:relative}.neon-panel--interactive:hover,.neon-panel--interactive:focus-within{border-color:#a855f77a;box-shadow:inset 0 1px #ffffff0d,0 0 0 1px #a855f717,0 14px 32px #00000047,0 0 22px #7c3aed2b}.section-title-panel{width:fit-content;max-width:100%;margin-bottom:var(--space-4);border-radius:var(--radius-md);padding:clamp(1rem,2vw,1.5rem)}.services__card.neon-panel{background:#0f0c16;border-color:#a855f738;box-shadow:inset 0 1px #ffffff06,0 8px 24px #0003,0 0 13px #7c3aed13}.services__card.neon-panel--interactive:hover,.services__card.neon-panel--interactive:focus-within,.projects__grid .project-card.neon-panel--interactive:hover,.projects__grid .project-card.neon-panel--interactive:focus-within{box-shadow:inset 0 1px #ffffff0a,0 12px 28px #00000040,0 0 20px #7c3aed29}.projects__grid .project-card.neon-panel{background:#0f0c16e6;border-color:#a855f738}.contact__info.neon-panel{background:radial-gradient(circle at 10% 10%,#a855f717,#0000 48%),#0f0c16e6}.contact__form-card.neon-panel,.quote__card.neon-panel,.quote__success.neon-panel{background:radial-gradient(at 8% 0,#a855f713,#0000 48%),#0f0c16e6}@media (width<=600px){.section-title-panel{width:100%;margin-bottom:var(--space-3);padding:1rem}}.navbar{z-index:var(--z-navbar);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-soft);background:#0a0a10c7;position:sticky;top:0}.navbar__inner{justify-content:space-between;align-items:center;min-height:72px;display:flex}.navbar__logo{flex-shrink:0;align-items:center;display:flex}.navbar__links{font-family:var(--font-body);font-size:.9rem;font-weight:var(--weight-medium);align-items:center;gap:2rem;display:flex}.navbar__links a{color:var(--text-muted);padding:.5rem 0;text-decoration:none;transition:color .2s,transform .2s;position:relative}.navbar__links a:after{content:"";background:var(--nyx-violet);width:0;height:1px;transition:width .2s;position:absolute;bottom:0;left:0}.navbar__links a:hover{color:var(--text-primary);transform:translateY(-1px)}.navbar__links a:hover:after{width:100%}.navbar__cta{font-size:var(--text-xs);flex-shrink:0;padding:.55rem 1.1rem}@media (width<=900px){.navbar__links{gap:1.2rem}}@media (width<=720px){.navbar__inner{min-height:64px}.navbar__links{display:none}.navbar__cta{padding:.5rem .9rem}}.logo{width:auto;height:70px;display:block}.btn{font-family:var(--font-mono);font-size:var(--text-sm);border-radius:var(--radius-md);transition:background var(--transition-base), border-color var(--transition-base), transform var(--transition-fast), box-shadow var(--transition-base);align-items:center;gap:.4rem;padding:.85rem 1.5rem;display:inline-flex}.btn--primary{color:var(--text-primary);box-shadow:var(--shadow-glow);background:linear-gradient(135deg,#7c3aed,#a855f7)}.btn--primary:hover{transform:translateY(-2px);box-shadow:0 0 40px #a855f780}.btn--secondary{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-primary);border:1.5px solid var(--nyx-violet);background:#ffffff08}.btn--secondary:hover{background:#8b5cf626;transform:translateY(-2px)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.hero{padding:var(--space-6) 0;align-items:center;min-height:90vh;display:flex;position:relative;overflow:hidden}.hero__inner{z-index:1;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,3.5vw,3.5rem);width:100%;max-width:1440px;display:grid;position:relative}.hero__copy-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;min-width:0;padding:clamp(1.5rem,3vw,2.75rem)}.hero__eyebrow{font-family:var(--font-body);color:var(--nyx-violet-glow);letter-spacing:.03em;margin-bottom:1rem;font-size:1.05rem;font-weight:700;line-height:1.5;display:block}.hero__title{width:100%;font-family:var(--font-display);max-width:100%;font-size:clamp(2.75rem,5.8vw,4.5rem);font-weight:var(--weight-semibold);color:var(--text-primary);margin-bottom:var(--space-3);text-wrap:balance;flex-direction:column;align-items:flex-start;line-height:1.08;display:flex}.hero__stroke-line{width:100%;min-width:0;max-width:100%;min-height:1.08em;display:block}.hero__stroke-text{max-width:100%}.hero__stroke-text .stroke-text__svg{margin-left:0;margin-right:0}.hero__subtitle{font-family:var(--font-body);font-size:var(--text-lg);line-height:var(--leading-relaxed);color:var(--text-muted);max-width:42ch;margin-bottom:var(--space-4)}.hero__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.hero__card{z-index:1;width:100%;min-width:0;max-width:100%;font-family:var(--font-mono);font-size:clamp(.875rem,1.15vw,1.1rem);position:relative}.hero__card.neon-panel{background:radial-gradient(at 8% 0,#a855f713,#0000 48%),#0f0c16eb;border-color:#a855f738}.hero__card-bar{background:var(--surface-dim);gap:.4rem;padding:1rem 1.25rem;display:flex}.hero__card-dot{border-radius:var(--radius-full);background:var(--nyx-violet);opacity:.5;width:10px;height:10px}.hero__card-dot:nth-child(2){opacity:.3}.hero__card-dot:nth-child(3){opacity:.2}.hero__card-body{min-height:220px;color:var(--text-primary);font-size:inherit;white-space:pre;padding:clamp(1.25rem,3vw,2.25rem);line-height:1.9}.hero__visual{isolation:isolate;width:100%;min-width:0;padding:clamp(1rem,2vw,2rem);position:relative}.hero__visual:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(at 75% 25%,#a855f71f,#0000 58%),#0f0c163d;border:1px solid #a855f72e;border-radius:28px;position:absolute;inset:8% 3%;transform:rotate(-3deg);box-shadow:0 0 28px #7c3aed1a}.hero__visual-glyph{z-index:2;color:#d8b4feb8;font-family:var(--font-mono);text-shadow:0 0 18px #a855f74d;pointer-events:none;font-size:clamp(1.15rem,2vw,1.65rem);font-weight:700;line-height:1;position:absolute}.hero__visual-glyph--top{top:.75rem;right:1rem}.hero__visual-glyph--bottom{bottom:.75rem;left:1rem}.hero__card-key{color:var(--nyx-violet-glow)}.hero__card-string{color:#4ade80}.hero__card-muted{color:var(--text-muted)}.hero__glow{z-index:0;pointer-events:none;width:480px;height:480px;position:absolute;top:50%;left:18%;transform:translate(-50%,-50%)}.hero__glow:before{content:"";background:radial-gradient(ellipse at center, var(--nyx-violet) 0%, transparent 70%);filter:blur(80px);opacity:.35;animation:6s ease-in-out infinite hero-breathe;position:absolute;inset:0}.hero__glow:after{content:"";background:var(--bg-void);border-radius:var(--radius-full);filter:blur(6px);opacity:.5;width:60%;height:14%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-12deg)}@keyframes hero-breathe{0%,to{opacity:.25;transform:scale(1)}50%{opacity:.4;transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.hero__glow:before{animation:none}}@media (width<=1100px){.hero__inner{grid-template-columns:1fr}.hero__visual{justify-self:center;width:min(100%,760px)}.hero__title{font-size:clamp(2.75rem,5.8vw,4.5rem)}.hero__card{width:100%}}@media (width<=600px){.hero{min-height:auto;padding:var(--space-5) 0}.hero__inner{gap:var(--space-3)}.hero__title{font-size:clamp(2rem,8vw,2.75rem)}.hero__copy-panel{border-radius:var(--radius-md);padding:1.2rem}.hero__visual{padding:1.5rem 1rem}.hero__actions{grid-template-columns:minmax(0,1fr);display:grid}.hero__actions .btn{justify-content:center;width:100%}.hero__card-body{min-height:180px;padding:1rem;font-size:.75rem;overflow-x:auto}}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.card--padded{padding:var(--space-3)}.stroke-text{width:100%;line-height:0;display:block}.stroke-text--hover{cursor:pointer}.stroke-text__svg{width:100%;max-width:var(--stroke-text-width,600px);height:auto;margin:0 auto;display:block;overflow:visible}.stroke-text__stroke,.stroke-text__fill{-webkit-user-select:none;user-select:none}.services{padding:var(--space-6) 0;width:100%;max-width:100%;overflow-x:hidden}.services__cta{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin-top:2rem;display:flex;position:relative}.services__cta>p{z-index:1;color:#fff;font-weight:600;line-height:1.5;position:relative}.services__cta>.btn{z-index:1;position:relative}.services__grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;width:100%;max-width:100%;display:grid}.services__card{color:var(--text-primary);min-width:0;transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);background:#0f0c16;border:1px solid #a855f72e;height:100%;padding:0;overflow:hidden}.services__card:hover{box-shadow:var(--shadow-glow);border-color:var(--nyx-violet);transform:translateY(-5px)}.services__card-content{min-width:0;height:100%;padding:var(--space-3);flex-direction:column;display:flex}.services__card-top{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;min-width:0;display:flex}.services__icon{border-radius:var(--radius-sm);width:50px;height:50px;color:var(--nyx-violet);background:color-mix(in srgb, var(--nyx-violet) 12%, transparent);border:1px solid color-mix(in srgb, var(--nyx-violet) 25%, transparent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.services__card-number{font-family:var(--font-mono);font-size:var(--text-xs);color:#c4b5d0;opacity:.8;flex-shrink:0}.services__card-title{font-family:var(--font-display);color:#fff;margin:0 0 var(--space-1);overflow-wrap:anywhere;font-size:1.2rem;font-weight:800;line-height:1.3}.services__card-description{font-family:var(--font-body);color:#c4b5d0;overflow-wrap:anywhere;flex:1;margin:0;font-size:1rem;font-weight:500;line-height:1.65}.services__summary{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-dim);font-family:var(--font-body);color:#c4b5d0;flex-wrap:wrap;align-items:center;gap:.45rem;min-width:0;font-size:.9rem;font-weight:600;line-height:1.5;display:flex}.services__summary strong{color:var(--nyx-violet)}.services__summary span{min-width:0}.services__summary span:last-child{align-items:center;gap:.3rem;display:inline-flex}.services__summary-separator{opacity:.5}.services__details-button{width:100%;max-width:100%;margin-top:var(--space-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-body);cursor:pointer;box-sizing:border-box;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem .9rem;font-size:.95rem;font-weight:700;display:flex}.services__details-button:hover{background:var(--nyx-violet);border-color:var(--nyx-violet);color:#fff}.services-modal{z-index:1000;box-sizing:border-box;-webkit-backdrop-filter:blur(8px);background:#0a0812c7;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;animation:.18s ease-out servicesModalFade;display:flex;position:fixed;inset:0;overflow:hidden}.services-modal__window{box-sizing:border-box;background:var(--surface);width:100%;max-width:900px;max-height:min(850px,90vh);color:var(--text-primary);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:0 25px 80px #0006, var(--shadow-glow);animation:.25s ease-out servicesModalOpen;overflow:hidden auto}.services-modal__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-dim);min-width:0;display:flex}.services-modal__header-info{align-items:center;gap:var(--space-2);min-width:0;display:flex}.services-modal__icon{border-radius:var(--radius-sm);width:62px;height:62px;color:var(--nyx-violet);background:color-mix(in srgb, var(--nyx-violet) 13%, transparent);border:1px solid color-mix(in srgb, var(--nyx-violet) 28%, transparent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.services-modal__eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--nyx-violet);letter-spacing:.08em;margin-bottom:.35rem;display:block}.services-modal__header h2{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem);font-weight:var(--weight-semibold);overflow-wrap:anywhere;margin:0}.services-modal__close{border:1px solid var(--border-dim);width:40px;height:40px;color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.services-modal__close:hover{background:var(--nyx-violet);border-color:var(--nyx-violet);color:#fff}.services-modal__body{padding:var(--space-4);min-width:0}.services-modal__intro{max-width:720px;font-family:var(--font-body);color:#c4bfd2;overflow-wrap:anywhere;margin:0;font-size:1.05rem;font-weight:500;line-height:1.75}.services-modal__separator{height:1px;margin:var(--space-3) 0;background:var(--border-dim)}.services-modal__columns{gap:var(--space-5);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);min-width:0;display:grid}.services-modal__columns>div{min-width:0}.services-modal__heading{margin-bottom:var(--space-2);color:var(--nyx-violet);align-items:center;gap:.55rem;display:flex}.services-modal__heading h3{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text-primary);overflow-wrap:anywhere;margin:0}.services-modal__list,.services-modal__ideal{min-width:0;margin:0;padding:0;list-style:none}.services-modal__list{flex-direction:column;gap:.8rem;display:flex}.services-modal__list li{font-family:var(--font-body);color:#c4bfd2;align-items:flex-start;gap:.7rem;min-width:0;font-size:1rem;font-weight:500;line-height:1.65;display:flex}.services-modal__list li>span{width:23px;height:23px;color:var(--nyx-violet);background:color-mix(in srgb, var(--nyx-violet) 12%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.services-modal__list li p{overflow-wrap:anywhere;min-width:0;margin:0}.services-modal__ideal{flex-direction:column;gap:.8rem;display:flex}.services-modal__ideal li{font-family:var(--font-body);color:#c4bfd2;overflow-wrap:anywhere;padding-left:1.1rem;font-size:1rem;font-weight:500;line-height:1.6;position:relative}.services-modal__ideal li:before{content:"";background:var(--nyx-violet);border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.services-modal__pricing{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;display:grid}.services-modal__price{min-width:0;padding:var(--space-2);border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--nyx-violet) 5%, transparent);box-sizing:border-box;align-items:center;gap:.85rem;display:flex}.services-modal__price-icon{border-radius:var(--radius-sm);width:42px;height:42px;color:var(--nyx-violet);background:color-mix(in srgb, var(--nyx-violet) 10%, transparent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.services-modal__price div:last-child{flex-direction:column;gap:.25rem;min-width:0;display:flex}.services-modal__price span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.services-modal__price strong{font-family:var(--font-display);font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere}.services-modal__footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-dim);background:color-mix(in srgb, var(--nyx-violet) 4%, transparent);min-width:0;display:flex}.services-modal__footer>div{flex-direction:column;gap:.3rem;min-width:0;display:flex}.services-modal__footer strong{font-family:var(--font-display);font-size:var(--text-base);overflow-wrap:anywhere}.services-modal__footer span{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-muted);overflow-wrap:anywhere}.services-modal__footer button{white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.services__status{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-3)}.services__status--error{color:#e5484d}@keyframes servicesModalFade{0%{opacity:0}to{opacity:1}}@keyframes servicesModalOpen{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1100px){.services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.services{padding:var(--space-5) 0;width:100%;max-width:100%;overflow-x:hidden}.services__grid{grid-template-columns:minmax(0,1fr);width:100%;max-width:100%}.services__card{width:100%;max-width:100%}.services__card-content{padding:var(--space-3);box-sizing:border-box;width:100%}.services-modal{justify-content:center;align-items:center;width:100vw;max-width:100vw;padding:.75rem;overflow:hidden}.services-modal__window{border-radius:var(--radius-sm);width:100%;max-width:100%;max-height:94vh;overflow:hidden auto}.services-modal__header{padding:var(--space-3)}.services-modal__header-info{gap:.8rem}.services-modal__icon{width:50px;height:50px}.services-modal__body{padding:var(--space-3)}.services-modal__columns{gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.services-modal__pricing{grid-template-columns:minmax(0,1fr)}.services-modal__footer{padding:var(--space-3);flex-direction:column;align-items:stretch}.services-modal__footer>div{text-align:center}.services-modal__footer button{width:100%}}.section-title{margin-bottom:var(--space-4)}.section-title--center{text-align:center}.section-title__eyebrow{font-family:var(--font-mono);color:var(--nyx-violet-glow);letter-spacing:.04em;margin-bottom:var(--space-1);font-size:1rem;font-weight:700;line-height:1.5;display:block}.section-title__title{font-family:var(--font-display);color:var(--text-primary);font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.15}.section-title__subtitle{font-family:var(--font-body);font-size:var(--text-readable-min,1.1rem);font-weight:var(--weight-readable,550);color:#c4bfd2;max-width:50ch;margin-top:var(--space-1);line-height:1.7}.section-title--center .section-title__subtitle{margin-left:auto;margin-right:auto}.projects{padding:var(--space-6) 0}.projects__carousel-panel{border-radius:var(--radius-lg);background:radial-gradient(at 50% 35%,#7c3aed1a,#0000 62%),#0f0c16c2;border:1px solid #a855f74d;padding:clamp(.9rem,2vw,1.5rem);position:relative;overflow:hidden;box-shadow:inset 0 0 28px #a855f70b,0 0 24px #7c3aed1f}.projects__heading{max-width:760px;margin:0 0 var(--space-3)}.projects__carousel-hint{color:#c4b5d0;font-size:var(--text-sm);text-align:center;margin:0}.projects__carousel.circular-carousel{color:#fff;--cc-radius:14px;height:clamp(390px,42vw,520px)}.projects__carousel-stage{min-width:0;position:relative}.projects__carousel-arrow{z-index:5;color:#fff;cursor:pointer;background:#0f0c16e0;border:1px solid #a855f78f;border-radius:50%;place-items:center;width:46px;height:46px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 0 18px #7c3aed33}.projects__carousel-arrow:hover,.projects__carousel-arrow:focus-visible{background:#7c3aed66;border-color:#c084fc;box-shadow:0 0 24px #a855f752}.projects__carousel-arrow--previous{left:clamp(.25rem,2vw,1.25rem)}.projects__carousel-arrow--next{right:clamp(.25rem,2vw,1.25rem)}.projects__indicators{justify-content:center;align-items:center;gap:.65rem;padding:.15rem 0 1rem;display:flex}.projects__indicator{cursor:pointer;background:#a855f733;border:1px solid #c084fcb3;border-radius:50%;width:9px;height:9px;padding:0;transition:width .18s,border-radius .18s,background .18s,box-shadow .18s}.projects__indicator[data-active]{background:#a855f7;border-radius:999px;width:26px;box-shadow:0 0 12px #a855f7bf}.projects__carousel .circular-carousel__caption{text-shadow:0 2px 14px #000000f2;bottom:28px}.projects__carousel .circular-carousel__title{font-weight:700}.projects__carousel .circular-carousel__subtitle{color:#d1c5da;opacity:1}.circular-carousel__tile--preview{border-radius:var(--cc-radius);backface-visibility:hidden;overflow:visible}.circular-carousel__preview-frame{border-radius:var(--cc-radius);isolation:isolate;background:#100b18;border:1px solid #a855f76b;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 24px #a855f71c,0 0 20px #7c3aed33}.project-preview-frame.circular-carousel__iframe{z-index:1;border-radius:inherit;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.circular-carousel__preview-fallback{border-radius:inherit;color:#d8b4fe;font-family:var(--font-mono);text-align:center;background:radial-gradient(#a855f729,#0000 72%),#100b18;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;display:flex;position:absolute;inset:0}.circular-carousel__preview-fallback span{text-transform:uppercase;letter-spacing:.06em;font-size:.65rem}.circular-carousel__preview-fallback strong{color:#fff;font-family:var(--font-display);font-size:1.1rem}.circular-carousel__tile--preview .circular-carousel__shade{z-index:2;border-radius:inherit;opacity:calc(var(--cc-depth,0) * .45)}.circular-carousel__card[data-active] .circular-carousel__preview-frame{border-color:#c084fcd9;box-shadow:inset 0 0 28px #a855f726,0 0 26px #a855f75c}.projects__selected{isolation:isolate;border-radius:var(--radius-lg);background:radial-gradient(at 8% 0,#a855f71f,#0000 52%),#0f0c16f0;border:1px solid #a855f757;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;gap:clamp(1rem,2vw,1.75rem);margin-top:.75rem;padding:clamp(1rem,2vw,1.5rem);transition:border-color .22s,box-shadow .22s;display:grid;position:relative;box-shadow:inset 0 1px #ffffff09,0 10px 30px #00000040,0 0 18px #7c3aed1f}.projects__browser{border-radius:var(--radius-md);background:#0d0a12;border:1px solid #a855f76b;min-width:0;overflow:hidden;box-shadow:inset 0 0 22px #a855f714,0 0 18px #7c3aed1f}.projects__browser-toolbar{background:#181221f5;border-bottom:1px solid #a855f733;align-items:center;gap:6px;height:38px;padding:0 .75rem;display:flex}.projects__browser-toolbar>span{opacity:.75;background:#a855f7;border-radius:50%;width:8px;height:8px}.projects__browser-toolbar>span:first-child{background:#f87171}.projects__browser-toolbar>span:nth-child(2){background:#fbbf24}.projects__browser-toolbar>span:nth-child(3){background:#4ade80}.projects__browser-address{color:#c4b5d0;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-left:.35rem;font-size:.72rem;overflow:hidden}.projects__selected-preview{aspect-ratio:16/10;width:100%;height:auto}.projects__browser .projects__preview-note{border-top:1px solid #a855f729;padding:.55rem .75rem;margin:0!important}.projects__selected:before{z-index:-1;border-radius:inherit;content:"";pointer-events:none;background:radial-gradient(at 0 0,#a855f71a,#0000 55%);position:absolute;inset:0}.projects__selected:hover,.projects__selected:focus-within{border-color:#a855f78c;box-shadow:inset 0 1px #ffffff0b,0 12px 32px #00000047,0 0 24px #7c3aed33}.projects__selected-copy{min-width:0}.projects__selected-header{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.projects__selected h3,.projects__selected p{margin:0}.projects__selected h3{color:#fff;font-family:var(--font-display);font-size:var(--text-lg)}.projects__category{color:#d8b4fe;font-size:var(--text-sm)}.projects__description{color:#c4b5d0;line-height:1.6;margin-top:.35rem!important}.projects__selected ul{color:#c4b5d0;font-size:var(--text-sm);flex-wrap:wrap;gap:.35rem 1.2rem;margin:.65rem 0 0;padding-left:1.1rem;line-height:1.5;display:flex}.projects__preview-note{color:#a99cb4;font-size:var(--text-xs);line-height:1.5}.projects__visit{border-radius:var(--radius-md);color:#fff;background:#7c3aed29;border:1px solid #a855f773;flex:none;justify-content:center;align-items:center;gap:.5rem;min-height:42px;padding:.55rem .8rem;font-weight:600;text-decoration:none;transition:border-color .18s,background .18s,box-shadow .18s;display:inline-flex}.projects__visit:hover,.projects__visit:focus-visible{background:#7c3aed47;border-color:#a855f7;box-shadow:0 0 16px #a855f733}.projects__footer-panel{isolation:isolate;max-width:1100px;margin:var(--space-3) auto 0;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f0c16eb;border:1px solid #a855f742;flex-direction:column;gap:1rem;padding:clamp(1rem,2vw,1.5rem);transition:border-color .22s,box-shadow .22s;display:flex;position:relative;box-shadow:inset 0 1px #ffffff09,0 10px 28px #00000038,0 0 18px #7c3aed1a}.projects__footer-panel:before{z-index:-1;border-radius:inherit;content:"";pointer-events:none;background:radial-gradient(at 0 0,#a855f71a,#0000 55%);position:absolute;inset:0}.projects__footer-panel:hover,.projects__footer-panel:focus-within{border-color:#a855f76b;box-shadow:inset 0 1px #ffffff0b,0 12px 30px #00000040,0 0 22px #7c3aed29}.projects__cta{color:#fff;font-family:var(--font-body);border-top:1px solid #a855f733;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;font-size:1rem;font-weight:600;line-height:1.5;display:flex}.projects__cta p{color:#fff;margin:0}.projects__cta a{border-radius:var(--radius-md);color:#c084fc;border:1px solid #c084fc52;justify-content:center;align-items:center;gap:.4rem;min-height:44px;padding:.55rem .9rem;font-weight:700;text-decoration:none;transition:color .2s,text-shadow .2s,border-color .2s,background .2s;display:inline-flex}.projects__cta a:hover{color:#fff;text-shadow:0 0 10px #8b5cf680;background:#a855f71a;border-color:#c084fc99}.projects__client-note{color:#d1c5da;max-width:none;font-size:var(--text-base);text-align:left;margin:0;line-height:1.7}@media (width<=900px){.projects__carousel.circular-carousel{height:450px}.projects__selected{grid-template-columns:minmax(0,1fr)}.projects__selected-preview{height:auto}.projects__visit{width:100%}}@media (width<=600px){.projects__carousel-panel{border-radius:var(--radius-md);padding:.75rem}.projects__carousel.circular-carousel{height:350px}.projects__carousel-arrow{width:38px;height:38px}.projects__selected-header{flex-direction:column}.projects__selected-preview{height:auto}.projects__selected{border-radius:var(--radius-md);padding:1rem}.projects__footer-panel{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);gap:.9rem;padding:1rem}.projects__cta{text-align:center;flex-direction:column;align-items:stretch;gap:.5rem}.projects__cta a{width:100%}.projects__client-note{font-size:var(--text-sm);text-align:center}}@media (prefers-reduced-motion:reduce){.projects__selected,.projects__visit,.projects__footer-panel,.projects__cta a{transition:none}}.circular-carousel{--cc-fade:#000;--cc-radius:12px;--cc-inner:.4;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;width:100%;height:100%;position:relative;overflow:hidden}.circular-carousel[data-axis=x]{touch-action:pan-x}.circular-carousel[data-draggable]{cursor:grab}.circular-carousel[data-dragging]{cursor:grabbing}.circular-carousel:focus-visible{box-shadow:inset 0 0 0 2px #80808c8c}.circular-carousel__view{position:absolute;inset:0}.circular-carousel[data-shape=wheel] .circular-carousel__view{-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}.circular-carousel[data-shape=panorama] .circular-carousel__view{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.circular-carousel__stage{opacity:0;justify-content:center;align-items:center;transition:opacity .45s;display:flex;position:absolute;inset:0}.circular-carousel[data-ready] .circular-carousel__stage{opacity:1}.circular-carousel__camera,.circular-carousel__ring,.circular-carousel__card{width:0;height:0;transform-style:preserve-3d}.circular-carousel__camera{position:relative}.circular-carousel__ring,.circular-carousel__card{position:absolute;top:0;left:0}.circular-carousel__tile{backface-visibility:hidden;outline:1px solid #0000;position:absolute}.circular-carousel__frame{width:100%;position:absolute;top:0;left:0;overflow:hidden}.circular-carousel__photo{object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:none;display:block;position:absolute}.circular-carousel__photo--leaving{animation:.7s cubic-bezier(.33,1,.68,1) both circular-carousel-leave}.circular-carousel__shade,.circular-carousel__inner{pointer-events:none;position:absolute;inset:0}.circular-carousel__shade{background:var(--cc-fade);opacity:var(--cc-depth,0)}.circular-carousel__inner{opacity:var(--cc-inner);background:#000}.circular-carousel__caption{color:inherit;text-align:center;pointer-events:none;flex-direction:column;align-items:center;gap:6px;padding:0 16px;animation:.9s both circular-carousel-reveal;display:flex;position:absolute;bottom:22px;left:0;right:0}.circular-carousel__title{flex-direction:column;align-items:center;max-width:100%;font-size:15px;font-weight:500;line-height:1.35;animation:.52s cubic-bezier(.22,1,.36,1) circular-carousel-title;display:flex}.circular-carousel__subtitle{opacity:.6;font-weight:400}.circular-carousel__count{font-variant-numeric:tabular-nums;opacity:.5;align-items:center;gap:3px;font-size:12px;line-height:1;display:inline-flex}.circular-carousel__slash{opacity:.6}.circular-carousel__digits{display:inline-flex}.circular-carousel__digit{height:1em;display:inline-block;overflow:hidden}.circular-carousel__reel{flex-direction:column;transition:transform .6s cubic-bezier(.22,1,.36,1);display:flex}.circular-carousel__reel>span{height:1em}.circular-carousel__live{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes circular-carousel-title{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes circular-carousel-leave{0%{opacity:1}to{opacity:0}}@keyframes circular-carousel-reveal{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.circular-carousel__stage,.circular-carousel__reel{transition:none}.circular-carousel__caption,.circular-carousel__title{animation:none}}.project-preview-frame{isolation:isolate;background:#100b18;min-width:0;position:relative;overflow:hidden}.project-preview-frame__iframe{transform-origin:0 0;pointer-events:none;background:#100b18;border:0;max-width:none;display:block;position:absolute}.quote{padding:var(--space-8) 0}.quote__card{max-width:760px;color:var(--text-primary);border:1px solid var(--border-soft);margin:0 auto;padding:clamp(1.25rem,3vw,2rem)}.quote__progress{justify-content:center;align-items:center;gap:.75rem;width:100%;max-width:520px;margin:0 auto 2.5rem;display:flex}.quote__progress-step{color:#ffffff73;width:38px;height:38px;font-family:var(--font-body);background:#ffffff0a;border:1px solid #ffffff29;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;transition:background-color .25s,border-color .25s,color .25s,transform .25s,box-shadow .25s;display:flex;position:relative}.quote__progress-step span{line-height:1}.quote__progress-step:not(:last-child):after{content:"";background:#ffffff1f;width:.75rem;height:2px;position:absolute;left:calc(100% + .75rem)}.quote__progress-step--active{border-color:var(--nyx-violet);background:var(--nyx-violet);color:#fff;transform:scale(1.05);box-shadow:0 0 18px #8b5cf640}.quote__progress-line{background:#ffffff1f;flex:1;width:100%;max-width:100px;height:2px;transition:background-color .3s,opacity .3s}.quote__progress-line--active{background:var(--nyx-violet)}.quote__intro{align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.quote__intro-icon{border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-active);width:44px;height:44px;color:var(--nyx-violet-glow);flex-shrink:0;justify-content:center;align-items:center;display:flex}.quote__step-number{font-family:var(--font-body);letter-spacing:.04em;color:var(--nyx-violet-glow);font-size:1rem;font-weight:700;line-height:1.5}.quote__step-title{font-family:var(--font-display);color:var(--text-primary);margin:0 0 .45rem;font-size:clamp(1.8rem,3vw,2.4rem);font-weight:800;line-height:1.2}.quote__step-description{max-width:620px;font-family:var(--font-body);color:#c4bfd2;margin:0;font-size:1.1rem;font-weight:500;line-height:1.7}.quote__options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.quote__option-content{flex-direction:column;align-items:flex-start;gap:.4rem;min-width:0;display:flex}.quote__options--stacked{grid-template-columns:1fr}.quote__option{border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-dim);width:100%;color:var(--text-primary);font-family:var(--font-body);text-align:left;cursor:pointer;transition:border-color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem 1.1rem;font-size:.95rem;display:flex}.quote__option:hover{border-color:var(--nyx-violet);background:var(--surface-active);transform:translateY(-2px)}.quote__option:focus-visible{border-color:var(--nyx-violet);outline:none;box-shadow:0 0 0 3px #8b5cf626,0 0 20px #8b5cf61f}.quote__option--active{border-color:var(--nyx-violet);background:var(--surface-active);box-shadow:0 0 20px #8b5cf62e}.quote__option-head{align-items:center;gap:.55rem;width:100%;display:flex}.quote__option-helper{display:block}.quote__option-head strong{font-family:var(--font-display);font-size:1rem;font-weight:700}.quote__option-arrow{color:var(--nyx-violet-glow);opacity:.7;flex-shrink:0;margin-left:auto}.quote__option-icon{color:var(--nyx-violet-glow);flex-shrink:0;display:flex}.quote__option-description{font-family:var(--font-body);color:#c4bfd2;font-size:.95rem;font-weight:500;line-height:1.6}.quote__option-more{font-family:var(--font-body);color:var(--nyx-violet-glow);margin-top:.1rem;font-size:.85rem;font-weight:700}.quote__educational-box{border:1px dashed var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-elevated);align-items:flex-start;gap:.75rem;margin-top:1.5rem;padding:1rem;display:flex}.quote__educational-box>svg{color:var(--nyx-violet-glow);flex-shrink:0;margin-top:.15rem}.quote__educational-box strong{font-family:var(--font-body);color:var(--text-primary);margin-bottom:.3rem;font-size:.95rem;font-weight:700;display:block}.quote__educational-box p{font-family:var(--font-body);color:#c4bfd2;margin:0;font-size:.95rem;font-weight:500;line-height:1.65}.quote__selected-project{border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-elevated);margin-bottom:1rem;padding:.85rem 1rem}.quote__selected-project span{font-family:var(--font-mono);letter-spacing:.07em;color:var(--text-muted);margin-bottom:.25rem;font-size:.68rem;font-weight:700;display:block}.quote__selected-project strong{font-family:var(--font-display);color:var(--text-primary);font-size:1rem}.quote__checkboxes{flex-direction:column;gap:.65rem;display:flex}.quote__checkbox{border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-dim);color:var(--text-primary);font-family:var(--font-body);cursor:pointer;transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);align-items:flex-start;gap:.75rem;padding:.9rem;font-size:.95rem;display:flex}.quote__checkbox:hover{border-color:var(--nyx-violet)}.quote__checkbox:focus-within{border-color:var(--nyx-violet);box-shadow:0 0 0 3px #8b5cf61f}.quote__checkbox--active{border-color:var(--nyx-violet);background:var(--surface-active)}.quote__checkbox input{cursor:pointer;width:18px;height:18px;accent-color:var(--nyx-violet);flex-shrink:0;margin-top:.1rem}.quote__checkbox-content{flex-direction:column;gap:.2rem;display:flex}.quote__checkbox-content strong{font-weight:650}.quote__checkbox-content small{color:var(--text-muted);font-size:.85rem;font-weight:500;line-height:1.5}.quote__section-divider{background:var(--border-dim);height:1px;margin:1.75rem 0}.quote__modality-heading{margin-bottom:1rem}.quote__ownership-note{border:1px dashed var(--nyx-violet-glow);border-radius:var(--radius-sm);background:var(--surface-elevated);font-family:var(--font-body);color:var(--text-muted);align-items:flex-start;gap:.6rem;margin-top:1rem;padding:1rem;font-size:.9rem;font-weight:500;line-height:1.6;display:flex}.quote__ownership-icon{color:var(--nyx-violet-glow);flex-shrink:0;margin-top:.15rem}.quote__nav{justify-content:space-between;gap:.75rem;margin-top:1.75rem;display:flex}.quote__estimate-main{margin-top:var(--space-4);border:1px solid color-mix(in srgb, var(--nyx-violet) 35%, var(--border-dim));border-radius:var(--radius-md);background:linear-gradient(135deg, color-mix(in srgb, var(--nyx-violet) 10%, transparent), transparent 65%), var(--surface-dim);padding:1.5rem;box-shadow:0 0 0 1px #ffffff05,0 12px 40px #0000002e}.quote__estimate-main-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.quote__estimate-label{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--nyx-violet);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.35rem;display:block}.quote__estimate-main h4{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);margin:0}.quote__estimate-badge{border:1px solid color-mix(in srgb, var(--nyx-violet) 35%, transparent);background:color-mix(in srgb, var(--nyx-violet) 8%, transparent);color:var(--nyx-violet-glow);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);white-space:nowrap;border-radius:999px;align-items:center;padding:.35rem .65rem;display:inline-flex}.quote__price-range{text-align:center;justify-content:center;align-items:baseline;gap:.75rem;margin:1.75rem 0 .75rem;display:flex}.quote__price-range strong{font-family:var(--font-display);font-size:clamp(1.7rem,4vw,2.6rem);font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--text-primary);line-height:1.1}.quote__price-range span{font-family:var(--font-display);color:var(--text-muted);font-size:1.5rem}.quote__price-description{max-width:650px;font-family:var(--font-body);text-align:center;color:var(--text-muted);margin:0 auto;font-size:1rem;font-weight:500;line-height:1.65}.quote__price-note{border:1px dashed var(--border-dim);border-radius:var(--radius-sm);background:#ffffff05;align-items:flex-start;gap:.75rem;margin-top:1.4rem;padding:1rem;display:flex}.quote__price-note svg{color:var(--nyx-violet-glow);flex-shrink:0;margin-top:.15rem}.quote__price-note p{font-family:var(--font-body);color:#c4bfd2;margin:0;font-size:.95rem;font-weight:500;line-height:1.65}.quote__price-info-button{color:var(--nyx-violet-glow);font-family:var(--font-body);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;margin-top:.85rem;font-size:.9rem;font-weight:600;display:inline-flex}.quote__price-info-button:hover{text-decoration:underline}.quote__price-info-button:focus-visible{outline:2px solid var(--nyx-violet);outline-offset:4px}.quote__price-info{border:1px dashed var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-elevated);align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;padding:1rem;display:flex}.quote__price-info>svg{color:var(--nyx-violet-glow);flex-shrink:0;margin-top:.15rem}.quote__price-info strong{font-family:var(--font-body);color:var(--text-primary);margin-bottom:.4rem;font-size:.95rem;font-weight:700;display:block}.quote__price-info p{font-family:var(--font-body);color:var(--text-muted);margin:0 0 .5rem;font-size:.9rem;font-weight:500;line-height:1.6}.quote__price-info p:last-child{margin-bottom:0}.quote__estimate{border:1px solid var(--border-dim);border-radius:var(--radius-sm);flex-direction:column;display:flex;overflow:hidden}.quote__estimate div{border-bottom:1px solid var(--border-dim);font-family:var(--font-body);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;font-size:.95rem;display:flex}.quote__estimate div:last-child{border-bottom:0}.quote__estimate span{color:var(--text-muted);font-weight:500}.quote__estimate strong{color:var(--text-primary);text-align:right;font-weight:700}.quote__summary-card{margin-top:var(--space-3);border:1px solid var(--border-dim);border-radius:var(--radius-md);background:var(--surface-dim);padding:1.25rem}.quote__summary-header{border-bottom:1px solid var(--border-dim);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.quote__summary-header span,.quote__selected-modality-header>div>span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.3rem;display:block}.quote__summary-header h4,.quote__selected-modality-header h4{font-family:var(--font-display);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);margin:0}.quote__info-button{border:1px solid var(--border-dim);width:38px;height:38px;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.quote__info-button:hover{color:var(--text-primary);border-color:var(--nyx-violet);background:color-mix(in srgb, var(--nyx-violet) 8%, transparent)}.quote__info-button:focus-visible{outline:2px solid var(--nyx-violet);outline-offset:3px}.quote__summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:.5rem;display:grid}.quote__summary-item{flex-direction:column;gap:.35rem;min-width:0;padding:1rem;display:flex}.quote__summary-item:nth-child(odd){border-right:1px solid var(--border-dim)}.quote__summary-item:nth-child(-n+2){border-bottom:1px solid var(--border-dim)}.quote__summary-item span{font-family:var(--font-body);font-size:var(--text-xs);color:var(--text-muted)}.quote__summary-item strong{overflow-wrap:anywhere;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary)}.quote__selected-modality{margin-top:var(--space-3);border:1px solid var(--border-dim);border-radius:var(--radius-md);background:linear-gradient(135deg, color-mix(in srgb, var(--nyx-violet) 5%, transparent), transparent), var(--surface-dim);padding:1.25rem}.quote__selected-modality-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.quote__selected-modality-header div{flex-direction:column;gap:.25rem;display:flex}.quote__selected-modality>p{font-family:var(--font-body);color:var(--text-muted);margin:.9rem 0 0;font-size:1rem;font-weight:500;line-height:1.65}.quote__text-button,.quote__details-button{font-family:var(--font-body);font-weight:var(--weight-semibold);cursor:pointer;transition:color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast)}.quote__text-button{color:var(--nyx-violet-glow);font-size:var(--text-sm);background:0 0;border:0;padding:0}.quote__text-button:hover{color:var(--text-primary)}.quote__text-button:focus-visible{outline:2px solid var(--nyx-violet);outline-offset:4px}.quote__details-button{border:1px solid var(--border-dim);border-radius:var(--radius-sm);color:var(--nyx-violet-glow);background:0 0;padding:.55rem .8rem;font-size:.85rem}.quote__details-button:hover{background:var(--surface-active);border-color:var(--nyx-violet)}.quote__details-button:focus-visible{outline:2px solid var(--nyx-violet);outline-offset:3px}.quote__disclaimer{font-family:var(--font-body);color:#aaa4b8;align-items:flex-start;gap:.5rem;margin-top:1rem;font-size:.95rem;font-weight:500;line-height:1.6;display:flex}.quote__disclaimer svg{color:var(--nyx-violet-glow);flex-shrink:0;margin-top:.15rem}.quote__disclaimer p{margin:0}.quote__final-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.quote__final-summary>div{border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-elevated);flex-direction:column;gap:.35rem;padding:.9rem 1rem;display:flex}.quote__final-summary span{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;margin-bottom:.3rem;font-size:.68rem;font-weight:700;display:block}.quote__final-summary strong{font-family:var(--font-display);color:var(--text-primary);font-size:.95rem;line-height:1.3}.quote__final-summary small{font-family:var(--font-body);color:#c4bfd2;margin-top:.2rem;font-size:1rem;font-weight:600;line-height:1.5;display:block}.quote__label{font-family:var(--font-body);color:var(--text-primary);flex-direction:column;gap:.4rem;margin-bottom:1rem;font-size:1rem;font-weight:600;line-height:1.5;display:flex}.quote__label>span{font-family:var(--font-body);color:var(--text-primary);font-size:1rem;font-weight:700;line-height:1.5}.quote__label b{color:var(--nyx-violet-glow);margin-left:.2rem}.quote__label small{font-family:var(--font-body);color:#aaa4b8;margin-top:.4rem;font-size:.95rem;font-weight:500;line-height:1.5;display:block}.quote__input{box-sizing:border-box;border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-dim);width:100%;color:var(--text-primary);font-family:var(--font-body);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);outline:none;padding:.8rem .9rem;font-size:1rem;font-weight:500;line-height:1.5}.quote__input::placeholder{color:var(--text-muted);opacity:.7}.quote__input:focus{border-color:var(--nyx-violet);box-shadow:0 0 0 3px #8b5cf626}.quote__input:disabled{opacity:.65;cursor:not-allowed}.quote__required-note{font-family:var(--font-body);color:var(--text-muted);margin:-.25rem 0 0;font-size:.85rem;font-weight:500;line-height:1.5}.quote__whatsapp-instructions{border-left:2px solid var(--nyx-violet);border-radius:var(--radius-sm);color:var(--text-secondary);background:#8b5cf614;margin:1rem 0 0;padding:.8rem 1rem;font-size:.9rem;line-height:1.5}.quote__error{border-radius:var(--radius-sm);font-family:var(--font-body);color:#ff6b70;background:#e5484d14;border:1px solid #e5484d59;margin-top:1rem;padding:.8rem 1rem;font-size:.95rem;font-weight:600;line-height:1.5}.quote__success{border:1px solid var(--border-soft);max-width:640px;color:var(--text-primary);text-align:center;margin:0 auto;padding:2rem}.quote__success-icon{border:1px solid var(--nyx-violet);background:var(--surface-active);width:56px;height:56px;color:var(--nyx-violet-glow);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.quote__success h3{font-family:var(--font-display);margin:0 0 .75rem;font-size:clamp(1.3rem,3vw,1.6rem)}.quote__success p{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:1rem;font-weight:500;line-height:1.65}.quote__success-note{margin-top:1rem!important;font-size:.9rem!important}.quote__success-restart{margin-top:1.5rem}.quote__modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000c2;justify-content:center;align-items:center;padding:1.5rem;animation:.2s quoteModalFadeIn;display:flex;position:fixed;inset:0}.quote__modal{border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-elevated);overscroll-behavior:contain;width:min(760px,100%);max-height:min(850px,90vh);padding:2rem;animation:.25s quoteModalSlideUp;position:relative;overflow-y:auto;box-shadow:0 25px 70px #0000008c,0 0 35px #8b5cf624}.quote__modal-close{border:1px solid var(--border-dim);background:var(--surface-dim);width:40px;height:40px;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:1rem;right:1rem}.quote__modal-close:hover{color:var(--text-primary);border-color:var(--nyx-violet);background:var(--surface-active);transform:rotate(90deg)}.quote__modal-close:focus-visible{outline:2px solid var(--nyx-violet);outline-offset:3px}.quote__modal-header{align-items:center;gap:1rem;padding-right:3rem;display:flex}.quote__modal-icon{border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-active);width:56px;height:56px;color:var(--nyx-violet-glow);flex-shrink:0;justify-content:center;align-items:center;display:flex}.quote__modal-eyebrow{font-family:var(--font-mono);color:var(--nyx-violet-glow);letter-spacing:.08em;margin-bottom:.3rem;font-size:.72rem;font-weight:700;display:block}.quote__modal-title{font-family:var(--font-display);color:var(--text-primary);margin:0;font-size:clamp(1.25rem,3vw,1.5rem)}.quote__modal-devices{border-bottom:1px solid var(--border-dim);color:var(--nyx-violet-glow);opacity:.65;gap:.5rem;margin-top:1.5rem;padding-bottom:1rem;display:flex}.quote__modal-body{padding-top:1.5rem}.quote__modal-body h4{font-family:var(--font-display);color:var(--text-primary);margin:0 0 .7rem;font-size:1.1rem}.quote__modal-body>p{max-width:680px;font-family:var(--font-body);color:#c4bfd2;margin:0;font-size:1rem;font-weight:500;line-height:1.75}.quote__modal-benefits{border-top:1px solid var(--border-dim);margin-top:1.7rem;padding-top:1.4rem}.quote__modal-benefit{font-family:var(--font-body);color:#c4bfd2;align-items:flex-start;gap:.7rem;margin-top:.8rem;font-size:1rem;font-weight:500;line-height:1.65;display:flex}.quote__modal-benefit svg{color:var(--nyx-violet-glow);flex-shrink:0;margin-top:.15rem}.quote__modal-note{border:1px dashed var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-dim);align-items:flex-start;gap:.7rem;margin-top:1.7rem;padding:1rem;display:flex}.quote__modal-note svg{color:var(--nyx-violet-glow);flex-shrink:0;margin-top:.15rem}.quote__modal-note p{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:.9rem;font-weight:500;line-height:1.65}.quote__modal-footer{border-top:1px solid var(--border-dim);justify-content:flex-end;gap:.7rem;margin-top:2rem;padding-top:1.2rem;display:flex}@keyframes quoteModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes quoteModalSlideUp{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.quote__option,.quote__progress-step,.quote__progress-line,.quote__checkbox,.quote__input,.quote__modal,.quote__modal-overlay,.quote__modal-close{transition:none;animation:none}}@media (width<=600px){.quote{padding:3rem 0}.quote__card{padding:1rem}.quote__progress{gap:.5rem;max-width:320px;margin-bottom:2rem}.quote__progress-step{width:34px;height:34px;font-size:.9rem}.quote__progress-step:not(:last-child):after{width:.5rem;left:calc(100% + .5rem)}.quote__progress-line{max-width:60px}.quote__intro{gap:.75rem}.quote__intro-icon{width:38px;height:38px}.quote__step-title{font-size:1.7rem}.quote__step-description{font-size:1rem}.quote__options{grid-template-columns:1fr}.quote__nav{flex-direction:column-reverse}.quote__nav button{width:100%}.quote__estimate-main{padding:1.15rem}.quote__estimate-main-header{align-items:flex-start}.quote__estimate-badge{font-size:.68rem}.quote__price-range{gap:.45rem;margin-top:1.5rem}.quote__price-range strong{font-size:1.55rem}.quote__price-range span{font-size:1.1rem}.quote__price-description{font-size:.95rem}.quote__price-note{padding:.85rem}.quote__estimate div{flex-direction:column;align-items:flex-start;gap:.25rem}.quote__estimate strong{text-align:left}.quote__summary-card,.quote__selected-modality{padding:1rem}.quote__summary-grid{grid-template-columns:1fr}.quote__summary-item{border-bottom:1px solid var(--border-dim);padding:.85rem 0;border-right:0!important}.quote__summary-item:last-child{border-bottom:0}.quote__selected-modality-header{flex-direction:column;align-items:flex-start}.quote__text-button{align-self:flex-start}.quote__details-button{width:100%}.quote__final-summary{grid-template-columns:1fr}.quote__modal-overlay{align-items:flex-end;padding:.75rem}.quote__modal{border-radius:var(--radius-md) var(--radius-md) 0 0;width:100%;max-height:94vh;padding:1.25rem}.quote__modal-header{padding-right:2.5rem}.quote__modal-footer{flex-direction:column-reverse}.quote__modal-footer button{width:100%}}@media (width<=380px){.quote__card{padding:.85rem}.quote__progress{gap:.35rem}.quote__progress-step{width:32px;height:32px;font-size:.85rem}.quote__progress-step:not(:last-child):after{width:.35rem;left:calc(100% + .35rem)}.quote__price-range{flex-direction:column;align-items:center;gap:.15rem}.quote__price-range strong{font-size:1.45rem}.quote__price-range span{font-size:1rem}.quote__modal-icon{width:48px;height:48px}}.contact{padding:var(--space-6) 0}.contact__grid{gap:var(--space-3);grid-template-columns:.9fr 1.1fr;align-items:stretch;display:grid}.contact__info{padding:var(--space-4);border:1px solid var(--border-dim);background:radial-gradient(circle at 10% 10%, #8b5cf614, transparent 45%), var(--surface-dim);flex-direction:column;display:flex}.contact__terminal{margin-bottom:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--nyx-violet-glow);display:inline-block}.contact__intro h3{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.5rem);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:1.1}.contact__intro h3 span{color:var(--nyx-violet-glow)}.contact__intro p{max-width:520px;font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--text-muted);margin:0}.contact__links{margin-top:var(--space-4);flex-direction:column;gap:.7rem;display:flex}.contact__link{border:1px solid var(--border-dim);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);align-items:center;gap:.8rem;padding:.8rem;text-decoration:none;display:flex}.contact__link:hover{border-color:var(--nyx-violet);background:#8b5cf60f;transform:translate(3px)}.contact__link-icon{border-radius:var(--radius-sm);width:38px;height:38px;color:var(--nyx-violet-glow);border:1px solid #8b5cf64d;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact__link>span:nth-child(2){flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.contact__link small{font-family:var(--font-mono);color:var(--text-muted);font-size:.65rem}.contact__link strong{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contact__link>svg{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.contact__link:hover>svg{color:var(--nyx-violet-glow);transform:translate(2px,-2px)}.contact__quote{padding-top:var(--space-3);justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;display:flex}.contact__quote p{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);margin:0}.contact__quote a{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--nyx-violet-glow);align-items:center;gap:.25rem;text-decoration:none;display:inline-flex}.contact__quote a:hover{color:var(--text-primary)}.contact__form-card{padding:var(--space-4);border:1px solid var(--border-dim)}.contact__form{gap:var(--space-2);flex-direction:column;display:flex}.contact__form-header{margin-bottom:var(--space-1);align-items:center;gap:.7rem;display:flex}.contact__form-header span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--nyx-violet-glow)}.contact__form-header h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);margin:0}.contact__label{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);flex-direction:column;gap:.35rem;display:flex}.contact__input{box-sizing:border-box;border:1px solid var(--border-dim);border-radius:var(--radius-sm);background:var(--surface-dim);width:100%;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);outline:none;padding:.75rem .85rem}.contact__input::placeholder{color:var(--text-muted);opacity:.7}.contact__input:focus{border-color:var(--nyx-violet);background:var(--surface-active);box-shadow:0 0 0 2px #8b5cf626}.contact__textarea{resize:vertical;min-height:140px;line-height:1.5}.contact__submit{justify-content:center;align-items:center;gap:.45rem;width:100%;margin-top:.25rem;display:flex}@media (width<=850px){.contact__grid{grid-template-columns:1fr}.contact__info{min-height:auto}.contact__quote{margin-top:var(--space-3)}}@media (width<=600px){.contact{padding:var(--space-6) 0}.contact__info,.contact__form-card{padding:var(--space-3)}.contact__intro h3{font-size:1.8rem}.contact__link strong{font-size:var(--text-xs)}.contact__quote{flex-direction:column;align-items:flex-start}}.contact__message{border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);margin:0;padding:.8rem .9rem;line-height:1.5}.contact__message--success{color:#86efac;background:#22c55e14;border:1px solid #22c55e4d}.contact__message--notice{color:var(--text-secondary);background:#8b5cf614;border:1px solid #8b5cf64d}.contact__message--error{color:#fca5a5;background:#ef444414;border:1px solid #ef44444d}.contact__input:disabled,.contact__submit:disabled{opacity:.65;cursor:not-allowed}
