:root{--bg: #090909;--bg-deep: #060606;--fg: #e8e6e3;--muted: #8a8784;--line: rgba(232, 230, 227, .12);--accent: #b8a99a;--font-sans: "Inter", system-ui, sans-serif;--font-display: "Cormorant Garamond", "Times New Roman", serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.75rem;--space-lg: 3rem;--space-xl: 5rem;--max: 38rem}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;min-height:100%;background-color:var(--bg-deep);background-image:radial-gradient(ellipse 100% 55% at 50% -8%,rgba(196,180,160,.085),transparent 52%),radial-gradient(ellipse 70% 45% at 100% 0%,rgba(55,48,42,.35),transparent 50%),radial-gradient(ellipse 55% 40% at 0% 100%,rgba(28,26,24,.9),transparent 55%),linear-gradient(168deg,#0f0e0d 0%,var(--bg) 38%,#070707 100%)}body{margin:0;min-height:100vh;background:transparent;color:var(--fg);font-family:var(--font-sans);font-weight:300;font-size:.9375rem;line-height:1.65;letter-spacing:.01em;-webkit-font-smoothing:antialiased}#root{min-height:100vh;background:transparent}.shell{min-height:100vh;padding:var(--space-md) var(--space-sm) var(--space-xl)}.shell__inner{max-width:calc(var(--max) + 4rem);margin:0 auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-bottom:var(--space-lg);border-bottom:1px solid var(--line);margin-bottom:var(--space-xl)}.topbar__brand{font-family:var(--font-display);font-size:.8125rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}.lang{display:flex;gap:.25rem}.lang__btn{font:inherit;font-size:.6875rem;letter-spacing:.2em;padding:.35rem .5rem;border:none;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s ease,opacity .2s ease}.lang__btn:hover{color:var(--fg)}.lang__btn--active{color:var(--fg);opacity:1}.logo-mark{min-height:3rem;margin-bottom:var(--space-md)}.logo-mark__img{display:block;max-width:10rem;height:auto;opacity:.92}.hero{padding-bottom:var(--space-xl);border-bottom:1px solid var(--line);margin-bottom:var(--space-xl)}.hero__title{font-family:var(--font-display);font-weight:400;font-size:clamp(2.5rem,6vw,3.75rem);letter-spacing:.06em;line-height:1.05;margin:0 0 var(--space-md);text-transform:uppercase}.hero__subtitle{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(1.125rem,2.5vw,1.35rem);color:var(--accent);margin:0 0 var(--space-md);max-width:var(--max);line-height:1.45}.hero__lead{margin:0;max-width:var(--max);color:var(--muted);font-weight:300}.section{padding-bottom:var(--space-xl);border-bottom:1px solid var(--line);margin-bottom:var(--space-xl)}.section:last-of-type{border-bottom:none}.section__label{margin:0 0 var(--space-md);font-size:.6875rem;letter-spacing:.35em;text-transform:uppercase;color:var(--muted)}.section__body{max-width:var(--max)}.prose{margin:0;color:var(--fg);font-weight:300}.prose--tight{margin-top:var(--space-md);color:var(--muted);font-size:.875rem}.services{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-lg)}.services__name{font-family:var(--font-display);font-size:1.5rem;font-weight:500;letter-spacing:.04em;margin:0 0 var(--space-xs)}.services__desc{margin:0;color:var(--muted);font-weight:300}.lines{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-sm)}.lines li{position:relative;padding-left:1rem;color:var(--fg);font-weight:300}.lines li:before{content:"";position:absolute;left:0;top:.65em;width:3px;height:3px;background:var(--accent);border-radius:50%;opacity:.85}.contact__intro{margin:0 0 var(--space-sm);color:var(--muted)}.contact__email{color:var(--fg);text-decoration:none;letter-spacing:.04em;border-bottom:1px solid var(--line);padding-bottom:2px;transition:border-color .2s ease,color .2s ease}.contact__email:hover{border-color:var(--accent);color:var(--accent)}.footer{padding-top:var(--space-lg);margin-top:var(--space-xl);border-top:1px solid var(--line)}.footer p{margin:0;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.state{text-align:center;color:var(--muted);padding:var(--space-xl);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.state--error{max-width:32rem;margin:0 auto;line-height:1.7;text-transform:none;letter-spacing:.02em}.state__hint{display:block;margin-top:var(--space-md);font-size:.8125rem;font-weight:300;color:var(--muted);line-height:1.65}.state__hint code{font-size:.85em;padding:.1em .35em;border-radius:2px;background:#e8e6e30f;color:var(--fg)}
