:root{--background:#fff;--surface:#f7f8fa;--foreground:#111;--muted:#6b7280;--border:#d9dee7;--accent:#1a4b59;--accent-secondary:#90d0a8;--font-display:var(--font-inter), Inter, system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-body:var(--font-inter), Inter, system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--radius:8px;--control-height:44px;--ease-out:cubic-bezier(.23, 1, .32, 1);--cta-height:48px}*{box-sizing:border-box}html{scroll-behavior:smooth;color-scheme:light;background:var(--background)}body{min-width:320px;color:var(--foreground);background:var(--background);font-family:var(--font-body);margin:0;line-height:1.5}body.menu-open{overflow:hidden}img{max-width:100%;display:block}figure{margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}svg{display:block}.site-header{border-bottom:1px solid var(--border);background:var(--background);align-items:center;min-height:80px;display:flex}.header-inner,.section-inner{width:min(1240px,100% - 48px);margin:0 auto}.header-inner{justify-content:space-between;align-items:center;gap:32px;display:flex}.brand-label{min-height:var(--control-height);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand-name{color:var(--accent);letter-spacing:-.02em;font-size:20px;font-weight:700}.desktop-nav{align-items:center;gap:30px;display:flex}.desktop-nav a{min-height:var(--control-height);color:var(--muted);letter-spacing:.02em;align-items:center;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.desktop-nav a:hover{color:var(--foreground)}.header-cta,.primary-cta,.secondary-cta{min-height:var(--cta-height);border-radius:var(--radius);letter-spacing:.02em;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .14s cubic-bezier(.2,0,0,1),background .2s cubic-bezier(.2,0,0,1);display:inline-flex}.header-cta,.secondary-cta{border:1px solid var(--muted);background:var(--background);color:var(--foreground)}.header-cta:hover,.secondary-cta:hover{background:var(--surface)}.header-cta:active,.secondary-cta:active{transform:translateY(1px)}.primary-cta{border:1px solid var(--accent);background:var(--accent);color:var(--background)}.primary-cta:hover{transform:translateY(-1px)}.primary-cta:active{transform:translateY(1px)}.primary-cta:disabled{opacity:.55;transform:none}.primary-cta svg,.secondary-cta svg{stroke-width:1.8px;width:18px;height:18px}.menu-button{width:var(--cta-height);height:var(--cta-height);border:1px solid var(--muted);border-radius:var(--radius);background:var(--background);color:var(--foreground);place-items:center;display:none}.menu-button:hover{background:var(--surface)}.menu-button:active{transform:translateY(1px)}.menu-button svg{stroke-width:1.8px;width:22px;height:22px}.hero{padding:48px 0 64px}.hero-grid{grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);align-items:center;gap:clamp(40px,5vw,72px);display:grid}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 16px;font-size:12px;font-weight:700}h1,h2,h3{font-family:var(--font-display);margin-top:0}h1{letter-spacing:-.03em;text-wrap:balance;max-width:600px;margin-bottom:24px;font-size:clamp(48px,4.8vw,64px);line-height:1}h2{letter-spacing:-.025em;max-width:760px;margin-bottom:18px;font-size:clamp(34px,4vw,52px);line-height:1.05}h3{margin-bottom:10px;font-size:20px;line-height:1.25}h2,h3{text-wrap:balance}.hero-copy{z-index:2;position:relative}.launch-note{border:1px solid var(--border);background:var(--surface);width:fit-content;min-height:36px;color:var(--foreground);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:9px;margin-bottom:24px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.launch-note:before{content:"";background:var(--accent-secondary);border-radius:50%;width:8px;height:8px}.hero-copy .lead{max-width:52ch;color:var(--muted);margin:0;font-size:18px;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero-media{border-radius:var(--radius);background:var(--surface);min-height:560px;position:relative;overflow:hidden}.hero-media img{object-fit:cover;object-position:64% center;width:100%;height:100%;min-height:560px}.hero-caption{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);max-width:260px;padding:14px 16px;position:absolute;bottom:20px;right:20px}.caption-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700}.caption-text{margin-top:5px;font-size:13px;font-weight:700;line-height:1.45}.section-media{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);position:relative;overflow:hidden}.section-media img{object-fit:cover;width:100%;height:100%}.media-caption{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);max-width:300px;color:var(--foreground);padding:11px 13px;font-size:12px;font-weight:700;line-height:1.45;position:absolute;bottom:16px;right:16px}.section{padding:104px 0}.section.surface{background:var(--surface)}.section-header{margin-bottom:56px}.section-header p{max-width:58ch;color:var(--muted);margin:0;font-size:16px;line-height:1.65}.section-header h2{margin-bottom:20px}.portfolio{grid-template-columns:310px minmax(0,1fr);gap:clamp(32px,5vw,72px);display:grid}.portfolio-tabs{border-top:1px solid var(--border);align-content:start;gap:0;display:grid}.portfolio-tab{border:0;border-bottom:1px solid var(--border);min-height:72px;color:var(--muted);text-align:left;background:0 0;border-radius:0;grid-template-columns:40px 1fr 24px;align-items:center;gap:12px;padding:10px 16px;transition:background .2s cubic-bezier(.2,0,0,1),color .2s cubic-bezier(.2,0,0,1);display:grid}.portfolio-tab:hover{background:var(--surface);color:var(--foreground)}.portfolio-tab.active{border-bottom-color:var(--accent);color:var(--foreground);background:0 0}.portfolio-tab:active{transform:translateY(1px)}.tab-number{font-variant-numeric:tabular-nums;letter-spacing:.06em;font-size:12px;font-weight:700}.tab-name{letter-spacing:-.01em;font-size:16px;font-weight:700}.portfolio-tab svg{stroke-width:1.8px;width:20px;height:20px;transition:transform .18s cubic-bezier(.2,0,0,1)}.portfolio-tab.active svg{transform:translate(4px)}.portfolio-panel{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(250px,.75fr);align-items:end;gap:40px 48px;min-height:430px;padding:clamp(32px,5vw,64px);display:grid}.panel-media{grid-column:1/-1;height:clamp(220px,27vw,330px)}.panel-media img{object-position:center 54%}.panel-tag{min-height:32px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.portfolio-panel h3{letter-spacing:-.025em;margin:24px 0 16px;font-size:clamp(30px,4vw,48px);line-height:1.04}.panel-description{max-width:58ch;color:var(--muted);margin:0;font-size:16px;line-height:1.65}.panel-list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.panel-list li{border-top:1px solid var(--border);color:var(--foreground);align-items:flex-start;gap:12px;padding-top:16px;font-size:14px;line-height:1.5;display:flex}.panel-list svg{width:18px;height:18px;color:var(--accent-secondary);stroke-width:2px;flex:none}.technology-layout{grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);align-items:center;gap:clamp(48px,8vw,120px);display:grid}.technology-copy p{max-width:58ch;color:var(--muted);margin:0;font-size:16px;line-height:1.65}.technology-points{gap:20px;margin-top:32px;display:grid}.technology-point{grid-template-columns:40px 1fr;gap:16px;display:grid}.technology-icon{border:1px solid var(--border);border-radius:var(--radius);background:var(--background);place-items:center;width:40px;height:40px;display:grid}.technology-icon svg{stroke-width:1.8px;width:20px;height:20px}.technology-point strong{margin-bottom:4px;font-size:14px;display:block}.technology-point span{color:var(--muted);font-size:13px;line-height:1.5}.lab-window{min-height:540px}.lab-window img{object-position:center 54%}.institutional-section{border-bottom:1px solid var(--border)}.institutional-media{aspect-ratio:16/9}.institutional-media video{background:var(--foreground);width:100%;height:100%;display:block}.process-media{height:clamp(260px,32vw,400px);margin-bottom:56px}.process-media img{object-position:center 57%}.process-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);column-gap:clamp(48px,8vw,120px);display:grid}.process-step{border-top:1px solid var(--border);min-height:220px;padding:28px 0 40px;position:relative}.process-step:nth-child(2n){transform:translateY(56px)}.process-number{color:var(--muted);letter-spacing:.08em;font-size:12px;font-weight:700}.process-step h3{margin:44px 0 12px}.process-step p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.own-brand{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);align-items:center;gap:clamp(48px,8vw,112px);padding:64px 0;display:grid}.own-brand p{max-width:60ch;color:var(--muted);margin:0;font-size:16px;line-height:1.65}.own-brand-visual{gap:24px;display:grid}.own-brand-media{aspect-ratio:16/9}.own-brand-media img{object-position:center 58%}.own-brand-list{grid-template-columns:1fr 1fr;column-gap:32px;display:grid}.own-brand-item{border-top:1px solid var(--border);align-items:center;min-height:80px;font-size:14px;font-weight:700;display:flex}.contact-section{border-top:1px solid var(--border);padding:104px 0}.contact-grid{grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);align-items:start;gap:clamp(48px,8vw,120px);display:grid}.contact-copy p{max-width:52ch;color:var(--muted);margin:0;font-size:16px;line-height:1.65}.contact-media{height:220px;margin-top:32px}.contact-media img{object-position:center 46%}.contact-note{border-top:1px solid var(--border);color:var(--muted);margin-top:32px;padding-top:24px;font-size:12px;line-height:1.55}.contact-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:32px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{gap:8px;display:grid}.field.full{grid-column:1/-1}label{letter-spacing:.02em;font-size:12px;font-weight:700}input,select,textarea{border:1px solid var(--muted);border-radius:var(--radius);background:var(--background);width:100%;color:var(--foreground);padding:12px 14px;transition:border-color .15s cubic-bezier(.2,0,0,1),background .15s cubic-bezier(.2,0,0,1)}input:hover,select:hover,textarea:hover{background:var(--surface)}input[aria-invalid=true]{border-color:var(--accent)}input,select{min-height:var(--cta-height)}textarea{resize:vertical;min-height:112px}input::placeholder,textarea::placeholder{color:var(--muted)}.field-error{min-height:17px;color:var(--accent);font-size:11px;line-height:1.4}.form-footer{justify-content:space-between;align-items:center;gap:20px;margin-top:20px;display:flex}.form-status{max-width:42ch;min-height:32px;color:var(--muted);align-items:center;margin:0;font-size:11px;line-height:1.45;display:flex}.form-status[data-state=success],.form-status[data-state=error]{color:var(--foreground);font-weight:700}.site-footer{border-top:1px solid var(--border);padding:48px 0}.footer-grid{grid-template-columns:1fr auto;align-items:end;gap:40px;display:grid}.footer-brand{letter-spacing:-.02em;font-size:18px;font-weight:700}.footer-copy{max-width:68ch;color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.6}.footer-links{gap:24px;display:flex}.footer-links a{min-height:var(--control-height);color:var(--muted);align-items:center;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.footer-links a:hover{color:var(--foreground)}.mobile-panel{display:none}@media (width<=980px){.desktop-nav,.header-cta{display:none}.menu-button{display:grid}.mobile-panel{visibility:hidden;z-index:50;background:var(--background);opacity:0;pointer-events:none;padding:24px;transition:opacity .14s cubic-bezier(.2,0,0,1),transform .2s cubic-bezier(.2,0,0,1),visibility 0s linear .14s;display:block;position:fixed;inset:0;transform:translateY(-8px)}.mobile-panel.open{visibility:visible;opacity:1;pointer-events:auto;transition-duration:.2s,.2s,0s;transition-delay:0s;transform:translateY(0)}.mobile-panel-head{justify-content:space-between;align-items:center;display:flex}.mobile-links{margin-top:56px;display:grid}.mobile-links a{border-bottom:1px solid var(--border);min-height:64px;color:var(--foreground);letter-spacing:-.02em;justify-content:space-between;align-items:center;font-size:24px;font-weight:700;text-decoration:none;display:flex}.mobile-links svg{stroke-width:1.8px;width:22px;height:22px}.hero-grid,.technology-layout,.contact-grid{grid-template-columns:1fr}.hero-media,.hero-media img{min-height:520px}.portfolio{grid-template-columns:1fr}.portfolio-tabs{grid-template-columns:none;grid-auto-columns:minmax(180px,1fr);grid-auto-flow:column;padding-bottom:4px;overflow-x:auto}.portfolio-tab{grid-template-columns:32px 1fr;min-width:180px}.portfolio-tab svg{display:none}.process-grid{grid-template-columns:repeat(2,1fr);column-gap:48px}.own-brand{grid-template-columns:1fr;gap:40px}}@media (width<=640px){.header-inner,.section-inner{width:min(100% - 32px,1240px)}.site-header{min-height:72px}.hero{padding:40px 0 48px}.hero-grid{flex-direction:column;gap:32px;display:flex}h1{font-size:clamp(40px,12vw,48px)}.hero-copy .lead{font-size:16px}.hero-actions{grid-template-columns:1fr;display:grid}.hero-media{width:100%;min-height:420px}.hero-media img{object-position:63% center;min-height:420px}.hero-caption{max-width:none;bottom:16px;left:16px;right:16px}.section{padding:80px 0}.portfolio-tabs{grid-auto-columns:72%}.portfolio-panel{grid-template-columns:1fr;gap:36px;min-height:auto;padding:28px}.panel-media{grid-column:auto;height:240px}.lab-window{border-left:0;border-top:1px solid var(--border);min-height:440px}.process-media{height:240px;margin-bottom:32px}.process-grid{grid-template-columns:1fr}.process-step,.process-step+.process-step{border-right:0;border-bottom:1px solid var(--border);min-height:auto;padding:28px 0}.process-step:nth-child(2n){transform:none}.process-step:last-child{border-bottom:0}.process-step h3{margin-top:34px}.own-brand{padding:40px 0}.own-brand-list{grid-template-columns:1fr}.contact-form{padding:24px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-footer{flex-direction:column;align-items:stretch}.form-footer .primary-cta{width:100%}.footer-grid{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}}@keyframes hero-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.motion-reveal{opacity:0;will-change:opacity, transform;transition:opacity .38s cubic-bezier(.2,0,0,1),transform .42s cubic-bezier(.2,0,0,1);transform:translateY(18px)}.motion-reveal.is-visible{opacity:1;will-change:auto;transform:none}@media (prefers-reduced-motion:no-preference){.hero-copy{animation:.42s cubic-bezier(.2,0,0,1) both hero-enter}.hero-media{animation:.48s cubic-bezier(.2,0,0,1) 70ms both hero-enter}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.motion-reveal{opacity:1!important;transform:none!important}}
