@layer tokens,base,layout,components,utilities,motion,themes,pages;@layer core{:root{--bg:#fafbfc;--surface:#ffffff;--surface-alt:#f8fafc;--text:#0f172a;--text-secondary:#475569;--muted:#64748b;--border:#e2e8f0;--border-subtle:#f1f5f9;--container:1120px;--gap:1rem;--gap-lg:clamp(1.5rem,3vw,3rem);--measure:68ch;--radius:12px;--radius-sm:8px;--radius-lg:16px;--blue-400:#60a5fa;--blue-500:#3b82f6;--blue-600:#2563eb;--blue-700:#1d4ed8;--green-400:#34d399;--green-500:#10b981;--green-600:#059669;--purple-50:#faf5ff;--purple-100:#f3e8ff;--purple-400:#c084fc;--purple-500:#a855f7;--purple-600:#9333ea;--purple-700:#7e22ce;--purple-800:#6b21a8;--rose-50:#fff1f2;--rose-100:#ffe4e6;--rose-400:#fb7185;--rose-500:#f43f5e;--rose-600:#e11d48;--rose-700:#be123c;--rose-800:#9f1239;--brand-1:#5b4db7;--brand-2:#6d63c6;--brand-3:#8b7ad8;--brand-4:#c48adf;--brand-5:#f39acb;--brand-gradient:linear-gradient(90deg,var(--brand-2) 0%,var(--brand-4) 55%,var(--brand-5) 100%);--brand-gradient-soft:linear-gradient(135deg,#ffffff 0%,#f6f3ff 45%,#fff1f8 100%);--accent-50:#fbfaff;--accent-100:#f6f3ff;--accent-200:#efeaff;--accent-300:#e3d8ff;--accent-400:#c48adf;--accent-500:#8b7ad8;--accent-600:#6d63c6;--accent-700:#5b4db7;--accent-800:#4b3ea3;--accent-900:#3b2f84;--accent-ink:#ffffff;--accent:var(--accent-600);--accent-hover:var(--accent-700);--focus:rgba(109,99,198,.55);--error:var(--rose-600);--error-hover:var(--rose-700);--error-bg:var(--rose-50);--error-border:var(--rose-400);--success:var(--green-600);--success-bg:#ecfdf5;--success-border:var(--green-400);--hero-bg:var(--brand-gradient-soft);--hero-pattern:radial-gradient(circle at 20% 10%,rgba(243,154,203,.18),transparent 45%),radial-gradient(circle at 80% 30%,rgba(109,99,198,.14),transparent 50%),radial-gradient(circle at 40% 90%,rgba(196,138,223,.12),transparent 55%);--hero-text:#0f172a;--hero-lead:#475569;--hero-min-h:clamp(320px,42vh,420px);--section-alt:var(--surface-alt);--section-accent:linear-gradient(135deg,#faf5ff 0%,#f3e8ff 100%);--ring:0 0 0 3px rgba(168,85,247,.2);--ring-offset:0 0 0 2px var(--surface);--shadow-sm:0 1px 2px rgba(15,23,42,.04);--shadow:0 2px 4px rgba(15,23,42,.05),0 1px 2px rgba(15,23,42,.03);--shadow-md:0 4px 8px rgba(15,23,42,.06),0 2px 4px rgba(15,23,42,.04);--shadow-lg:0 10px 20px rgba(15,23,42,.08),0 4px 8px rgba(15,23,42,.05);--shadow-xl:0 16px 32px rgba(15,23,42,.1),0 8px 16px rgba(15,23,42,.06);--shadow-card:var(--shadow-md);--shadow-card-hover:0 8px 16px rgba(168,85,247,.15),0 4px 8px rgba(15,23,42,.06);--glass-bg:rgba(255,255,255,.8);--glass-border:rgba(255,255,255,.2);--glass-blur:blur(12px);--transition-fast:150ms cubic-bezier(.4,0,.2,1);--transition-base:200ms cubic-bezier(.4,0,.2,1);--transition-slow:300ms cubic-bezier(.4,0,.2,1);--transition-bounce:400ms cubic-bezier(.68,-.55,.265,1.55);--chip-bg:#ffffff;--chip-border:var(--border);--chip-hover-bg:var(--accent-50);--chip-hover-border:var(--accent-400);}@media(width >= 641px){:root{--hero-min-h:clamp(360px,45vh,460px);}}@media(width >= 1025px){:root{--hero-min-h:clamp(400px,48vh,500px);--radius:14px;}}@media(prefers-color-scheme:dark){:root{--bg:#0f172a;--surface:#1e293b;--surface-alt:#334155;--text:#f1f5f9;--text-secondary:#cbd5e1;--muted:#94a3b8;--border:#475569;--border-subtle:#334155;}}}@layer core{*,*::before,*::after{box-sizing:border-box;}html,body{height:100%;}html{scroll-behavior:smooth;scroll-padding-top:80px;}body{background:var(--bg);color:var(--text);display:flex;flex-direction:column;font:16px/1.7 'Inter',system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;min-height:100svh;}main{flex:1 0 auto;padding-bottom:var(--gap-lg);}img{display:block;height:auto;max-width:100%;}.container{margin-inline:auto;max-width:var(--container);padding-inline:clamp(16px,4vw,24px);}a{color:var(--text-secondary);font-weight:500;text-decoration:none;transition:color var(--transition-base);}a:hover{color:var(--accent-700);}a:focus-visible,button:focus-visible,[role="button"]:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:var(--radius-sm);}h1,h2,h3,h4,h5,h6{color:var(--text);font-weight:700;letter-spacing:-.02em;line-height:1.2;}h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 1rem;text-wrap:balance;}h2{font-size:clamp(1.5rem,3.5vw,2rem);margin:0 0 .75rem;}h3{font-size:clamp(1.25rem,2.5vw,1.5rem);margin:0 0 .8rem;}p{line-height:1.7;margin:0 0 1rem;}strong{font-weight:600;}.measure{max-width:var(--measure);}.muted{color:var(--muted);}section{border-top:1px solid var(--border-subtle);padding-block:var(--gap-lg);position:relative;}section:first-of-type{border-top:0;}section.alt{background:var(--section-alt);}section.accent{background:var(--section-accent);}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute !important;white-space:nowrap;width:1px;}.skip{background:var(--surface);border:2px solid var(--accent-600);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);color:var(--accent-600);font-weight:600;left:-9999px;padding:12px 20px;position:absolute;transition:left var(--transition-base),top var(--transition-base);z-index:9999;}.skip:focus{left:20px;top:20px;}::selection{background:var(--accent-200);color:var(--accent-900);}}@layer layout{header.site-header{backdrop-filter:saturate(1.1);background:var(--surface-alt);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30;}.topbar{align-items:center;display:flex;gap:12px;justify-content:space-between;padding-block:12px;position:relative;}.site-nav{align-items:center;display:flex;flex-shrink:0;}.site-footer{background:var(--surface-alt);border-top:1px solid var(--border);color:var(--text-secondary);font-size:.95rem;margin-top:auto;padding-block:.6rem;text-align:center;}.foot{align-items:center;display:grid;gap:1rem;text-align:center;transition:gap .18s;}.foot-left,.foot-right{align-items:center;display:inline-flex;flex-wrap:wrap;gap:.75rem;justify-content:center;transition:gap .18s;}.foot-left strong{color:var(--text);font-weight:600;}.foot-links{align-items:center;display:inline-flex;gap:1rem;white-space:nowrap;}.foot a{color:var(--text-secondary) !important;font-weight:500;text-decoration:none;transition:color .18s;}.foot a:hover{color:var(--accent-600) !important;}.foot-year{color:var(--text-secondary);}.sep{opacity:.4;transition:opacity .18s;}@media(width >=641px){.foot{grid-template-columns:1fr auto;text-align:left;}.foot-left{justify-content:flex-start;}.foot-right{gap:1rem;justify-content:flex-end;justify-self:end;white-space:nowrap;}}}@layer components{.brand{align-items:center;display:inline-flex;gap:.25rem;min-width:0;text-decoration:none;transition:opacity var(--transition-base);position:relative;margin-right:1.5rem;}.brand:hover::after,.brand:focus::after{opacity:.9;transform:scaleX(1);}.brand:hover,.brand:focus{opacity:.7;}.brand .logo{display:block;height:40px;width:40px;transition:height var(--transition-base),width var(--transition-base),transform var(--transition-base);}.brand:hover .logo,.brand:focus .logo{transform:scale(1.05);}.brand .brand-text,.brand > span{color:var(--text);font-weight:500;font-size:1.125rem;letter-spacing:-.01em;line-height:1.2;white-space:nowrap;align-self:center;margin-top:.1875rem;}@media(width >= 641px){.brand{gap:.3125rem;margin-right:2rem;}.brand .logo{height:48px;width:48px;}.brand .brand-text,.brand > span{font-size:1.175rem;margin-top:.15rem;}}@media(width >= 1025px){.brand{gap:.375rem;margin-right:2.5rem;}.brand .logo{height:56px;width:56px;}.brand .brand-text,.brand > span{font-size:1.25rem;margin-top:.125rem;}}}.site-brand:hover,.brand:hover,.brand-link:hover{opacity:.92;transform:translateY(-1px)}.site-brand,.brand,.brand-link{transition:opacity var(--transition-base),transform var(--transition-base)}@layer components{.menu,.nav-inline{list-style:none;margin:0;padding:0;}.menu a,.nav-inline a{border-radius:var(--radius-sm);color:var(--text-secondary);display:block;font-weight:500;padding:.65rem 1rem;position:relative;text-decoration:none;transition:background var(--transition-base),color var(--transition-base);}.menu a:hover,.nav-inline a:hover,.menu a:focus-visible,.nav-inline a:focus-visible{background:var(--accent-50);color:var(--accent-700);outline:none;}.site-nav .nav-mobile{display:block;position:relative;}.site-nav .nav-mobile > summary{align-items:center;background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;display:flex;font-weight:600;gap:.5rem;list-style:none;padding:.65rem 1rem;transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base);user-select:none;}.site-nav .nav-mobile > summary:hover{border-color:var(--purple-400);box-shadow:0 0 0 3px rgba(168,85,247,.15);}.site-nav .nav-mobile[open]> summary{border-color:var(--purple-500);box-shadow:0 0 0 3px rgba(168,85,247,.2);}.site-nav .nav-mobile > .menu{animation:dropdown-slide var(--transition-base);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xl);margin-top:.5rem;padding:.5rem;position:absolute;right:0;top:100%;width:min(90vw,320px);z-index:50;}@keyframes dropdown-slide{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}.site-nav a.is-active{background:linear-gradient(135deg,var(--accent-100) 0%,var(--accent-50) 100%);color:var(--accent-700);font-weight:600;}.nav-inline{align-items:center;display:none;gap:.25rem;}.nav-inline li{display:inline-block;}@media(min-width:900px){.site-nav .nav-mobile{display:none;}.nav-inline{display:flex;}.nav-desktop-wrapper .lang-switcher{display:inline-flex;}}@media(max-width:899px){.nav-desktop-wrapper .lang-switcher{display:none;}}@media(max-width:375px){.site-nav .nav-mobile{display:block;}.nav-inline{display:none !important;}}}@layer components{#home,.hero-section{border-top:0;color:var(--hero-text);min-height:var(--hero-min-h);overflow:clip;padding-block:clamp(2.5rem,6vw,3.5rem);position:relative;border-bottom:1px solid var(--border,#dcdcdc);}#home::before,.hero-section::before{background:var(--hero-bg);content:"";height:100%;left:50%;position:absolute;top:0;transform:translateX(-50%);width:100vw;z-index:0;}#home::after,.hero-section::after{background:var(--hero-pattern);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:0;}#home > *,.hero-section > *{position:relative;z-index:1;}.hero-section .container{display:grid;place-items:center start;}.hero-grid{align-items:center;display:grid;gap:1.5rem;grid-template-columns:1fr;place-items:center start;transition:gap var(--transition-base);}@media(width >= 641px){.hero-grid{gap:2rem;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);}}@media(width >= 1025px){.hero-grid{gap:2.5rem;}}.hero{display:grid;gap:1rem;width:min(100%,56rem);}.hero h1{color:var(--text);font-size:clamp(2rem,5.5vw,3.25rem);font-weight:800;line-height:1.15;margin:0;text-wrap:balance;letter-spacing:-.03em;}.hero h1 .accent{background:var(--brand-gradient) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.hero .lead{color:var(--hero-lead);font-size:clamp(1.05rem,2vw,1.25rem);font-weight:400;line-height:1.65;margin:0;max-width:60ch;}.hero .cta-row{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem;align-items:center;}.hero .muted{margin-top:0;padding-left:.5rem;font-size:.9rem;opacity:.9;max-width:36ch;}.hero-side{display:none;transition:opacity var(--transition-slow);}.hero-compact{--hero-min-h:clamp(280px,38vh,360px);}.hero-profile{padding-block:clamp(1.6rem,3.6vw,2.2rem);}@media(width >= 641px){.hero-side{display:block;animation:float 6s ease-in-out infinite;}@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-15px);}}}}@layer components{.btn,a.btn{align-items:center;background:var(--accent-600);border:none;border-radius:var(--radius);color:#ffffff !important;cursor:pointer;display:inline-flex;font-weight:700;font-size:1rem;gap:.5rem;justify-content:center;letter-spacing:.02em;line-height:1.5;min-height:48px;padding:0 2rem;position:relative;text-decoration:none;box-shadow:0 2px 8px rgba(243,154,203,.22),0 1px 3px rgba(0,0,0,.1);transition:transform var(--transition-base),box-shadow var(--transition-base),background var(--transition-base);user-select:none;white-space:nowrap;}.btn:hover,.btn:focus,a.btn:hover,a.btn:focus{background:var(--accent-700);color:#ffffff !important;box-shadow:0 8px 20px rgba(109,99,198,.35),0 3px 6px rgba(0,0,0,.12);transform:translateY(-2px);}.btn:active,a.btn:active{background:var(--accent-800);color:#ffffff !important;transform:translateY(0);box-shadow:0 2px 8px rgba(243,154,203,.22),0 1px 3px rgba(0,0,0,.1);}.btn:focus-visible,a.btn:focus-visible{outline:3px solid var(--accent-400);outline-offset:3px;box-shadow:0 8px 20px rgba(109,99,198,.35),0 3px 6px rgba(0,0,0,.12),0 0 0 4px rgba(168,85,247,.2);}.btn.secondary,a.btn.secondary{background:var(--surface);border:2px solid var(--accent-600);color:var(--accent-700) !important;box-shadow:var(--shadow-sm);}.btn.secondary:hover,.btn.secondary:focus,a.btn.secondary:hover,a.btn.secondary:focus{background:var(--accent-50);border-color:var(--accent-700);color:var(--accent-800) !important;box-shadow:0 0 0 3px rgba(168,85,247,.15),var(--shadow);transform:translateY(-2px);}.btn.secondary:active,a.btn.secondary:active{background:var(--accent-100);color:var(--accent-800) !important;transform:translateY(0);}.btn.secondary:focus-visible,a.btn.secondary:focus-visible{outline:3px solid var(--accent-400);outline-offset:3px;}.btn.ghost,a.btn.ghost{background:transparent;border:2px solid transparent;color:var(--accent-600) !important;box-shadow:none;}.btn.ghost:hover,.btn.ghost:focus,a.btn.ghost:hover,a.btn.ghost:focus{background:var(--accent-50);border-color:transparent;color:var(--accent-700) !important;box-shadow:none;}.btn.success,a.btn.success{background:var(--green-600);color:#ffffff !important;box-shadow:0 2px 8px rgba(5,150,105,.3),0 1px 3px rgba(0,0,0,.1);}.btn.success:hover,.btn.success:focus,a.btn.success:hover,a.btn.success:focus{background:var(--green-700);color:#ffffff !important;box-shadow:0 8px 20px rgba(5,150,105,.45),0 3px 6px rgba(0,0,0,.12);}.btn.success:active,a.btn.success:active{background:#065f46;color:#ffffff !important;}.btn:disabled,.btn.disabled,a.btn.disabled{background:var(--border);color:var(--muted) !important;cursor:not-allowed;opacity:.6;transform:none;box-shadow:none;}.btn:disabled:hover,.btn.disabled:hover,a.btn.disabled:hover{background:var(--border);color:var(--muted) !important;transform:none;box-shadow:none;}.btn.small,a.btn.small{font-size:.875rem;min-height:40px;padding:0 1.5rem;}.btn.large,a.btn.large{font-size:1.125rem;min-height:56px;padding:0 2.5rem;}.btn.icon,a.btn.icon{aspect-ratio:1;min-height:48px;padding:0;width:48px;}.btn.icon.small,a.btn.icon.small{min-height:40px;width:40px;}.btn.icon.large,a.btn.icon.large{min-height:56px;width:56px;}}@layer components{.grid{display:grid;gap:var(--gap);overflow-x:clip;transition:gap var(--transition-base),grid-template-columns var(--transition-base);}@media(width >= 641px){.grid{gap:clamp(.85rem,1.8vw,1.2rem);grid-template-columns:repeat(2,1fr);}}@media(width >= 1025px){.grid{gap:clamp(1.2rem,2vw,1.6rem);grid-template-columns:repeat(3,1fr);}}.grid.grid-2{grid-template-columns:1fr;}@media(width >= 641px){.grid.grid-2{grid-template-columns:repeat(2,1fr);}}.grid.grid-4{grid-template-columns:repeat(2,1fr);}@media(width >= 1025px){.grid.grid-4{grid-template-columns:repeat(4,1fr);}}.grid.auto-fit{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));}}@layer components{.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow:hidden;padding:clamp(.9rem,2.5vw,1.3rem);position:relative;transition:box-shadow var(--transition-slow),border-color var(--transition-base),transform var(--transition-base);scroll-margin-top:calc(var(--hero-min-h) + 2rem);}.card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--brand-gradient);opacity:0;transition:opacity var(--transition-base);}.card.wide{grid-column:1 / -1;}.card:hover,.card:focus-within{border-color:var(--accent-400);box-shadow:var(--shadow-card-hover);transform:translateY(-4px);}.card:hover::before,.card:focus-within::before{opacity:1;}.card.emphasis{border-color:rgba(147,51,234,.18);box-shadow:0 5px 11px rgba(15,23,42,.09),0 2px 5px rgba(15,23,42,.06);}.card.emphasis::before{opacity:.25;}.card.subdued{border-color:rgba(226,232,240,.7);box-shadow:0 2px 6px rgba(15,23,42,.04),0 1px 3px rgba(15,23,42,.02);opacity:.95;}.card.subdued:hover{border-color:var(--border);opacity:1;}.card.prominent{box-shadow:0 4px 10px rgba(15,23,42,.08),0 2px 5px rgba(15,23,42,.05);border-color:rgba(147,51,234,.15);}.card.prominent::before{opacity:.4;}.card h3 + ul,.card h3 + p{margin-top:1rem;}.card-header{border-bottom:1px solid var(--border-subtle);margin-bottom:1rem;padding-bottom:.75rem;}.card-header h2,.card-header h3{margin:0;}.card-footer{border-top:1px solid var(--border-subtle);margin-top:1rem;padding-top:1rem;}.card.error{background:linear-gradient(135deg,var(--rose-50) 0%,var(--rose-100) 100%);border-color:var(--error-border);}.card.error::before{background:linear-gradient(90deg,var(--rose-600) 0%,var(--rose-700) 100%);opacity:1;}.card.error:hover{border-color:var(--rose-400);transform:translateY(-2px);}.card.success{background:linear-gradient(135deg,var(--success-bg) 0%,#d1fae5 100%);border-color:var(--success-border);}.card.success::before{background:var(--success);opacity:1;}.card.info{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border-color:#93c5fd;}.card.info::before{background:var(--blue-500);opacity:1;}.card.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);}@media(width >= 1025px){.card{padding:clamp(1.3rem,2.5vw,1.7rem);}}}@layer components{.chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:.75rem 0 0;padding:0;}.chip{align-items:center;background:var(--chip-bg);border:1.5px solid var(--chip-border);box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);display:inline-flex;font-size:.875rem;font-weight:500;gap:.375rem;line-height:1.2;padding:.5rem .875rem;text-decoration:none;transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base);}.chip:hover{background:var(--chip-hover-bg);border-color:var(--chip-hover-border);box-shadow:0 0 0 2px rgba(59,130,246,.1),var(--shadow);transform:translateY(-1px);}.chip.is-action,.chips a.chip{color:var(--text);cursor:pointer;text-decoration:none;}.chip.small{font-size:.8125rem;padding:.375rem .625rem;}.chip.ramp{background:var(--green-500);color:var(--accent-ink);border-color:var(--green-500);font-weight:600;}.chip.ramp:hover{background:var(--green-600);border-color:var(--green-600);box-shadow:0 0 0 2px rgba(34,197,94,.15),var(--shadow);}.chip.accent{background:var(--accent-100);border-color:var(--accent-400);color:var(--accent-700);}.chip.accent:hover{background:var(--accent-200);border-color:var(--accent-500);}}@layer components{.svc-more{margin-top:1rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:0;background:var(--surface);transition:border-color var(--transition-base),background-color var(--transition-base);}.svc-more summary{cursor:pointer;padding:.875rem 1rem;font-weight:600;color:var(--purple-700);list-style:none;display:flex;align-items:center;justify-content:space-between;transition:color var(--transition-base),background-color var(--transition-base);user-select:none;border-radius:var(--radius-sm);position:relative;}.svc-more summary::marker{display:none;}.svc-more summary::-webkit-details-marker{display:none;}.svc-more summary::after{content:"";display:inline-block;width:.5rem;height:.5rem;border-right:2px solid var(--purple-600);border-bottom:2px solid var(--purple-600);transform:rotate(45deg);transition:transform var(--transition-base),border-color var(--transition-base);margin-left:.5rem;}.svc-more summary:hover{background-color:var(--purple-50);color:var(--purple-800);}.svc-more summary:hover::after{border-color:var(--purple-800);}.svc-more summary:focus{outline:none;box-shadow:0 0 0 2px var(--purple-600);}.svc-more[open]{border-color:var(--purple-300);}.svc-more[open]summary{border-bottom:1px solid var(--border-subtle);background-color:var(--purple-50);color:var(--purple-800);border-bottom-left-radius:0;border-bottom-right-radius:0;}.svc-more[open]summary::after{transform:rotate(-45deg) translateY(2px);}.svc-more ul,.svc-more p{margin:0;padding:1rem;}.svc-more ul{padding-left:2.5rem;}.svc-more li{margin-bottom:.5rem;}.svc-more li:last-child{margin-bottom:0;}@media(prefers-color-scheme:dark){.svc-more summary{color:var(--purple-300);}.svc-more summary:hover{background-color:var(--purple-900);color:var(--purple-200);}.svc-more[open]summary{background-color:var(--purple-900);color:var(--purple-200);}.svc-more summary:focus{box-shadow:0 0 0 2px var(--purple-400);}.svc-more summary::after{border-color:var(--purple-400);}.svc-more summary:hover::after{border-color:var(--purple-200);}}}@layer components{.form-grid{display:grid;gap:1.25rem;grid-template-columns:1fr;transition:gap var(--transition-base);}@media(width >= 641px){.form-grid{gap:1.5rem;grid-template-columns:1fr 1fr;}}.span-2{grid-column:1 / -1;}.card .field{display:flex;flex-direction:column;gap:.5rem;margin-bottom:0;}.card .field.checkbox{align-items:center;flex-direction:row;gap:.65rem;padding-top:.5rem;}.card .field.checkbox input[type="checkbox"]{accent-color:var(--accent-600);cursor:pointer;height:1.15rem;margin:0;width:1.15rem;}.card .field.checkbox input[type="checkbox"]:focus-visible{outline:2px solid var(--focus);outline-offset:2px;}.card label{color:var(--text);font-size:.95rem;font-weight:600;letter-spacing:-.01em;margin:0;}.card .help{color:var(--muted);display:block;font-size:.875rem;line-height:1.5;margin-top:.375rem;}.card input:not([type="checkbox"]),.card textarea,.card select{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;line-height:1.5;padding:.75rem 1rem;transition:border-color var(--transition-base),box-shadow var(--transition-base),background var(--transition-base);width:100%;}.card input:not([type="checkbox"]):hover,.card textarea:hover,.card select:hover{border-color:var(--purple-400);}.card input:not([type="checkbox"]):focus,.card textarea:focus,.card select:focus{background:var(--surface);border-color:var(--purple-500);box-shadow:0 0 0 3px rgba(168,85,247,.15);outline:none;}.card input:not([type="checkbox"]):disabled,.card textarea:disabled,.card select:disabled{background:var(--surface-alt);border-color:var(--border-subtle);color:var(--muted);cursor:not-allowed;opacity:.6;}.card textarea{min-height:120px;resize:vertical;}@media(width >= 1025px){.card textarea{min-height:180px;}}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem;}.field-error input:not([type="checkbox"]),.field-error textarea,.field-error select,.input-validation-error{border-color:var(--error-border) !important;background:var(--surface) !important;}.field-error input:not([type="checkbox"]):focus,.field-error textarea:focus,.field-error select:focus,.input-validation-error:focus{border-color:var(--error) !important;box-shadow:0 0 0 3px rgba(225,29,72,.08) !important;}.field-success input:not([type="checkbox"]),.field-success textarea,.field-success select{border-color:var(--success);background:var(--success-bg);}.field-success input:not([type="checkbox"]):focus,.field-success textarea:focus,.field-success select:focus{border-color:var(--success);box-shadow:0 0 0 3px rgba(16,185,129,.15);}.error,.field-validation-error,.validation-summary-errors{color:var(--error);font-size:.875rem;font-weight:500;line-height:1.5;margin-top:.375rem;}.validation-summary-errors ul{list-style:none;margin:.5rem 0 0 0;padding:0;}.validation-summary-errors li{margin-bottom:.25rem;}.success-message{color:var(--success);font-size:.875rem;font-weight:500;margin-top:.375rem;}.hp{height:1px;left:-10000px !important;overflow:hidden;position:absolute !important;top:auto !important;width:1px;}}@layer pages{.quick-jump{display:flex;flex-wrap:wrap;gap:.5rem;isolation:isolate;margin:.25rem 0 1rem;overflow:visible;-webkit-overflow-scrolling:touch;padding-top:.35rem;position:relative;transition:gap .18s,margin .18s;}.quick-jump .pill{background:#fff;border:1px solid var(--border);border-radius:999px;box-shadow:0 1px 6px rgb(0 0 0 / 6%);color:#333 !important;display:inline-block;font-size:.95rem;padding:.4rem .7rem;position:relative;text-decoration:none;transition:background .18s,border-color .18s,box-shadow .18s,color .18s;white-space:nowrap;}.quick-jump .pill:hover,.quick-jump .pill:focus-visible{background:var(--chip-bg-hover,#f0f8ff);box-shadow:0 8px 18px rgb(0 0 0 / 12%);transform:translateY(-1px);color:var(--accent-700) !important;}.quick-jump .pill.is-active{background:var(--accent-600);color:#ffffff !important;box-shadow:0 4px 12px rgba(147,51,234,.3);}.quick-jump .pill.is-active:hover{background:var(--accent-700);color:#ffffff !important;}}@layer components{.to-top{background:var(--accent-600);border:2px solid var(--accent-700);border-radius:999px;bottom:20px;box-shadow:0 4px 16px rgba(147,51,234,.4),0 2px 8px rgba(0,0,0,.1);color:#ffffff !important;display:grid;font-size:24px;font-weight:700;height:48px;line-height:1;opacity:0;place-items:center;pointer-events:none;position:fixed;right:20px;text-decoration:none;transform:translateY(8px);transition:opacity var(--transition-base),transform var(--transition-base),visibility var(--transition-base),background var(--transition-base),box-shadow var(--transition-base);visibility:hidden;width:48px;z-index:100;}.to-top:hover{background:var(--accent-700);box-shadow:0 6px 20px rgba(147,51,234,.5),0 3px 10px rgba(0,0,0,.15);color:#ffffff !important;transform:translateY(-2px);}.to-top:focus-visible{outline:3px solid var(--accent-400);outline-offset:3px;}.to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible;}}@layer components{.lang-toggle{margin:0;padding:0;}.lang-btn{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;flex-shrink:0;font-family:inherit;font-size:.875rem;font-weight:600;gap:.25rem;justify-content:center;letter-spacing:.025em;min-width:2.5rem;padding:.65rem 1rem;text-transform:uppercase;transition:background var(--transition-base),color var(--transition-base);user-select:none;white-space:nowrap;}.lang-btn:hover,.lang-btn:focus-visible{background:var(--accent-50);color:var(--accent-700);outline:none;}.lang-btn:active{background:var(--accent-100);}.nav-desktop-wrapper{align-items:center;display:none;flex-shrink:0;gap:.25rem;}.nav-desktop-wrapper .lang-toggle{border-left:1px solid var(--border);margin-left:.5rem;padding-left:.5rem;}.menu .lang-toggle{display:block;margin:0;padding:0;}.menu .lang-btn{display:block;font-size:1rem;font-weight:500;padding:.65rem 1rem;text-align:left;width:100%;}@media(width >= 641px){.nav-desktop-wrapper{display:flex;}}}@layer utilities{.stack > * + *{margin-top:var(--gap);}.stack-lg > * + *{margin-top:var(--gap-lg);}.cta-row{display:flex;flex-wrap:wrap;gap:.625rem;transition:gap .18s;}.cta-row--margin-top{margin-top:.25rem;}}@layer motion{@media(prefers-reduced-motion:no-preference){.btn,.menu a{transition:background .2s,box-shadow .2s,color .2s,transform .12s;}.btn:active{transform:translateY(1px);}.card{transition:box-shadow .2s,transform .15s;}.card:hover{box-shadow:0 3px 14px rgb(0 0 0 / 10%);transform:translateY(-2px);}.hero .cta-row .btn:hover{box-shadow:0 6px 18px rgb(0 0 0 / 10%);transform:translateY(-1px);}}}@layer pages{.about-grid{display:grid;gap:var(--gap);transition:gap .18s,grid-template-columns .18s;}.about-grid > *{align-content:start;display:grid;gap:var(--gap);}@media(width >=641px){.about-grid{gap:1.25rem 1.5rem;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);}}@media(width >=1025px){.about-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);}}}@layer pages{.contact-grid{display:grid;gap:var(--gap);transition:gap .18s,grid-template-columns .18s;align-items:start;}@media(width >=641px){.contact-grid{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr);}}.map-card iframe{aspect-ratio:4/3;border:0;border-radius:var(--radius);box-shadow:var(--shadow-soft);display:block;transition:box-shadow .18s,border-radius .18s;width:100%;}.contact-grid > div > aside.card,.contact-grid > div > #contact-card{margin-top:0;}#contact .intro{margin:0 0 1rem 0;font-size:.9rem;}.map-card .note{margin-top:.6rem !important;font-size:.875rem;}.map-card .cta-row--margin-top{margin-top:1rem;}@media(width >= 768px){.map-card .cta-row--margin-top{margin-top:1.5rem;}}}