:root{--ink:#12161c;--ink-soft:#3a424e;--mist:#e8ecef;--paper:#f4f6f8;--accent:#1a4a5c;--line:#12161c1a;--glow:#1a4a5c14;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Manrope,system-ui,sans-serif}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100vh}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--accent)}img{max-width:100%;display:block}.page{--pad:clamp(1.25rem, 4vw, 3rem);min-height:100vh;padding:var(--pad);background:radial-gradient(ellipse 80% 55% at 50% -10%, var(--glow), transparent 55%), linear-gradient(165deg, #f7f9fb 0%, #e9eef2 42%, #dfe7ec 100%);place-items:center;display:grid;position:relative;overflow:hidden}.page:before{content:"";background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);pointer-events:none;opacity:.45;background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 40%,#000,#0000 75%)}.atmosphere{filter:blur(8px);pointer-events:none;background:radial-gradient(circle,#1a4a5c1f,#0000 68%);border-radius:50%;width:min(48rem,90vw);height:min(48rem,90vw);animation:14s ease-in-out infinite alternate drift;position:absolute}.atmosphere-a{top:-18%;left:-12%}.atmosphere-b{animation-duration:18s;animation-delay:-4s;bottom:-22%;right:-16%}@keyframes drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(2%,3%)scale(1.06)}}.hero{z-index:1;text-align:center;width:min(44rem,100%);padding:clamp(2rem,5vw,3.5rem) clamp(1.25rem,4vw,2.5rem);animation:.9s cubic-bezier(.22,1,.36,1) both rise;position:relative}@keyframes rise{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}.logo-wrap{justify-content:center;margin-bottom:clamp(1.25rem,3vw,2rem);animation:.9s cubic-bezier(.22,1,.36,1) 80ms both rise;display:flex}.logo{border-radius:1.5rem;width:clamp(7.5rem,22vw,11rem);height:auto;box-shadow:0 18px 40px #12161c14}.brand{letter-spacing:-.02em;color:var(--ink);margin:0 0 .85rem;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(2.6rem,8vw,5rem);font-weight:600;line-height:.95;animation:.9s cubic-bezier(.22,1,.36,1) .14s both rise}.tagline{color:var(--ink-soft);margin:0 0 1.35rem;font-size:clamp(1.15rem,2.6vw,1.55rem);font-weight:500;animation:.9s cubic-bezier(.22,1,.36,1) .2s both rise}.rule{background:linear-gradient(90deg, transparent, var(--accent), transparent);width:4.5rem;height:1px;margin:0 auto 1.35rem;animation:.9s cubic-bezier(.22,1,.36,1) .24s both rise}.services{color:var(--ink-soft);margin:0 0 1.75rem;max-width:32rem;margin-inline:auto;font-size:clamp(.98rem,2vw,1.15rem);line-height:1.55;animation:.9s cubic-bezier(.22,1,.36,1) .28s both rise}.contacts{gap:.65rem;margin:0 0 2.25rem;animation:.9s cubic-bezier(.22,1,.36,1) .34s both rise;display:grid}.contacts a{letter-spacing:.01em;font-size:clamp(.98rem,2vw,1.1rem);font-weight:500}.location{color:var(--ink-soft);margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.1rem,2.4vw,1.35rem);font-style:italic;animation:.9s cubic-bezier(.22,1,.36,1) .4s both rise}@media (prefers-reduced-motion:reduce){.atmosphere,.hero,.logo-wrap,.brand,.tagline,.rule,.services,.contacts,.location{animation:none}}
