:root{--bg-deep: #050b12;--bg-base: #081521;--bg-elevated: #102233;--bg-deep-rgb: 5 11 18;--bg-base-rgb: 8 21 33;--bg-elevated-rgb: 16 34 51;--bg-soft: rgb(var(--bg-elevated-rgb) / .78);--text-main: #f2f7f8;--text-muted: #a8bfc9;--text-muted-rgb: 168 191 201;--line: rgb(var(--text-muted-rgb) / .18);--line-strong: rgb(var(--text-muted-rgb) / .34);--accent: #73d5d1;--accent-strong: #b7f3ee;--accent-deep: #176389;--accent-rgb: 115 213 209;--accent-deep-rgb: 23 99 137;--accent-soft: rgb(var(--accent-rgb) / .12);--shadow-soft: 0 24px 80px rgb(2 8 14 / .38);--display-font: "Iowan Old Style", "New York", "Palatino Linotype", "Book Antiqua", Georgia, ui-serif, serif;--body-font: "Avenir Next", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--mono-font: "SFMono-Regular", "Cascadia Mono", "Segoe UI Mono", Consolas, "Liberation Mono", monospace;color-scheme:dark;font-family:var(--body-font);line-height:1.5;font-weight:400;background:var(--bg-deep);color:var(--text-main)}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;min-height:100%;background:radial-gradient(circle at top left,rgb(var(--accent-rgb) / .15),transparent 26%),radial-gradient(circle at 85% 10%,rgb(var(--accent-deep-rgb) / .12),transparent 18%),linear-gradient(180deg,var(--bg-deep) 0%,var(--bg-base) 52%,#07111b 100%)}body{min-width:320px}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}.skip-link{position:fixed;top:12px;left:24px;z-index:100;padding:10px 14px;border:1px solid var(--line-strong);border-radius:8px;background:var(--bg-elevated);color:var(--text-main);font-family:var(--mono-font);font-size:.75rem;letter-spacing:0;opacity:0;text-transform:uppercase;transform:translateY(-160%);transition:opacity .14s ease,transform .14s ease}.skip-link:focus-visible{opacity:1;transform:translateY(0)}main:focus{outline:none}.page-shell{width:min(1160px,calc(100vw - 40px));margin:0 auto;padding:0 0 112px}.site-header{position:sticky;top:0;z-index:20;width:100%;min-height:72px;border-bottom:1px solid var(--line);background:rgb(var(--bg-deep-rgb) / .86);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.site-header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;width:min(1160px,100%);min-height:72px;margin:0 auto;padding:18px 24px}.nav-brand,.nav-contact,.site-nav a{font-family:var(--mono-font);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.nav-brand{color:var(--text-main);font-weight:700}.site-nav{display:flex;align-items:center;justify-content:center;gap:38px;color:var(--text-muted)}.site-nav a,.nav-contact{transition:color .18s ease,border-color .18s ease}.site-nav a:hover,.site-nav a:focus-visible,.nav-contact:hover,.nav-contact:focus-visible{color:var(--accent-strong)}.nav-contact{justify-self:end;min-height:36px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;color:var(--text-main)}.section{padding:clamp(56px,9vw,104px) 0;border-top:1px solid var(--line)}.hero.section{min-height:calc(100svh - 72px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,1fr);gap:clamp(28px,6vw,72px);align-items:center;border-top:0;overflow:clip}.hero-copy{display:grid;gap:16px;max-width:560px}.hero-copy h1,.section-heading h2,.service-card h3,.process-step h3{margin:0;font-family:var(--display-font);letter-spacing:0}.hero-copy h1{max-width:13ch;font-size:3.35rem;line-height:1.06}.lead,.section-copy p,.section-intro,.service-card p,.process-step p,.contact-note,.contact-action-note{max-width:64ch;margin:0;color:var(--text-muted);font-size:1rem}.eyebrow{margin:0 0 16px;color:var(--accent);font-size:.75rem;font-family:var(--mono-font);text-transform:uppercase;letter-spacing:.12em}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid var(--line);border-radius:10px;font-size:.95rem;white-space:nowrap;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.button:hover,.button:focus-visible{border-color:var(--line-strong);transform:translateY(-1px)}.button-primary{background:var(--accent);color:var(--bg-deep);border-color:transparent}.button-secondary{background:rgb(var(--bg-elevated-rgb) / .72);color:var(--text-main)}.section-heading{display:grid;gap:14px}.section-heading h2{font-size:3rem;line-height:1}.section-heading-wide{max-width:62rem}.about-layout,.contact-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:clamp(24px,4vw,48px);align-items:start;margin-top:28px}.section-copy{display:grid;gap:16px}.bullet-list{display:grid;gap:14px;margin:0;padding:0;list-style:none}.bullet-list-item{padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:var(--bg-soft);color:var(--text-main);box-shadow:var(--shadow-soft)}.services-section,.contact-section{display:grid;gap:30px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{display:grid;gap:14px;min-height:100%;padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgb(var(--bg-elevated-rgb) / .96),rgb(var(--bg-base-rgb) / .96));box-shadow:var(--shadow-soft)}.service-card-tag,.process-step-number,.contact-action-label{margin:0;color:var(--accent);font-family:var(--mono-font);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.service-card h3,.process-step h3{font-size:1.7rem;line-height:1.05}.service-card-summary{color:var(--text-main)}.service-card-details{padding-top:16px;border-top:1px solid var(--line)}.process-panel{padding:clamp(26px,4vw,42px);border:1px solid rgb(var(--accent-rgb) / .18);border-radius:28px;background:radial-gradient(circle at top left,rgb(var(--accent-rgb) / .08),transparent 22%),linear-gradient(180deg,rgb(var(--bg-base-rgb) / .98),rgb(var(--bg-deep-rgb) / .98));box-shadow:var(--shadow-soft)}.process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:32px 0 0;padding:0;list-style:none}.process-step{display:grid;gap:14px;min-height:100%;padding:22px;border:1px solid var(--line);border-radius:22px;background:rgb(var(--bg-base-rgb) / .86)}.lab-panel{display:grid;gap:24px;max-width:52rem}.lab-note{color:var(--accent-strong)}.contact-note{padding:20px 22px;border:1px solid var(--line);border-radius:20px;background:var(--bg-soft)}.contact-actions{display:grid;gap:14px}.contact-action{display:grid;gap:10px;width:100%;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgb(var(--bg-elevated-rgb) / .94),rgb(var(--bg-base-rgb) / .94));color:var(--text-main);text-align:left;box-shadow:var(--shadow-soft);transition:border-color .18s ease,transform .18s ease}.contact-action:hover,.contact-action:focus-visible{border-color:var(--line-strong);transform:translateY(-1px)}.contact-action strong{font-size:1.05rem;font-weight:600}.contact-action-note{line-height:1.45}@media(max-width:1024px){.page-shell{width:min(100vw - 28px,1160px)}.site-header-inner{grid-template-columns:auto 1fr auto;padding-inline:14px;gap:14px}.site-nav{justify-content:flex-end;gap:14px}.hero.section,.about-layout,.contact-layout,.service-grid,.process-grid{grid-template-columns:1fr;min-height:auto}.hero.section{gap:10px;padding:24px 0 34px}.hero-object{order:-1;min-height:190px}.hero-copy h1{max-width:13ch;font-size:2.3rem}.section-heading h2{font-size:2.35rem}}@media(max-width:620px){.page-shell{padding-bottom:88px}.section{padding:44px 0}.site-header,.site-header-inner{min-height:64px}.site-nav{display:none}.nav-brand,.nav-contact{font-size:.7rem}.hero.section{gap:18px;padding:28px 0 36px}.button{width:100%}.hero-actions{display:grid;gap:10px}.hero-object{min-height:220px;border-radius:22px}.hero-copy h1{max-width:12ch;font-size:2.08rem}.lead{font-size:.96rem}.button{min-height:42px}.process-panel,.service-card,.contact-action,.contact-note,.bullet-list-item{padding:18px}}:root{--hero-mark-panel-aura: rgb(var(--accent-rgb) / .14);--hero-mark-panel-start: rgb(var(--bg-elevated-rgb) / .9);--hero-mark-panel-end: rgb(var(--bg-base-rgb) / .95);--hero-mark-ring-stroke: var(--accent-strong);--hero-mark-petal-stop-0: #0a2238;--hero-mark-petal-stop-1: var(--accent-deep);--hero-mark-petal-stop-2: var(--accent);--hero-mark-petal-opacity: .88;--hero-mark-vein: var(--accent-strong);--hero-mark-vein-opacity: .34;--hero-mark-vein-width: .55;--hero-mark-tip: var(--accent-strong);--hero-mark-tip-glow-opacity: .32;--hero-mark-glow-color: var(--accent-strong);--hero-mark-glow-opacity: .22;--hero-mark-core-stop-0: #ffffff;--hero-mark-core-stop-1: var(--accent-strong);--hero-mark-core-stop-2: var(--accent-deep);--hero-mark-core-glow-color: var(--accent);--hero-mark-core-glow-opacity: .42}.hero-object{position:relative;display:grid;place-items:center;min-height:460px;padding:0;border:0;border-radius:0;background:radial-gradient(circle at center,var(--hero-mark-panel-aura),transparent 38%),linear-gradient(180deg,transparent 0%,transparent 100%);overflow:visible;opacity:1;box-shadow:none}.hero-mark-frame{position:relative;z-index:1;display:grid;place-items:center;width:clamp(440px,42vw,620px)}.hero-mark{width:clamp(440px,42vw,620px);height:auto;overflow:visible}.hero-mark-rotation-group,.hero-mark-petal-motion,.hero-mark-core-pulse{transform-box:view-box}.hero-mark-petal-motion{transform-origin:512px 410px;will-change:transform,opacity}.hero-mark-core-pulse{transform-origin:512px 410px}.hero-copy{position:relative;z-index:2}.has-js .hero[data-hero-intro=idle] .hero-copy,.has-js .hero[data-hero-intro=ready] .hero-copy{opacity:0;transform:translate(-20px)}.has-js .hero[data-hero-intro=idle] .hero-object,.has-js .hero[data-hero-intro=ready] .hero-object{transform:translate(calc(-50% - 20px)) scale(.88)}@media(prefers-reduced-motion:reduce){.hero-copy,.hero-object,.hero-mark-rotation-group,.hero-mark-petal-motion,.hero-mark-core-pulse{animation:none!important;opacity:1;transform:none}}@media(max-width:1024px){.hero-object{min-height:190px;padding:10px 0 0}.hero-mark-frame,.hero-mark{width:clamp(250px,30vw,300px)}.has-js .hero[data-hero-intro=idle] .hero-copy,.has-js .hero[data-hero-intro=ready] .hero-copy{transform:translateY(16px)}.has-js .hero[data-hero-intro=idle] .hero-object,.has-js .hero[data-hero-intro=ready] .hero-object{transform:scale(.9)}}@media(max-width:620px){.hero-object{min-height:220px;padding:8px 0 0}.hero-mark-frame,.hero-mark{width:clamp(240px,72vw,300px)}}
