html,body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}#root{width:100%}:root{--bg: #f5f3ee;--bg-alt: #ffffff;--ink: #0a0a0a;--ink-soft: #4a4a4a;--ink-muted: #8a8580;--accent: #0a3a8f;--accent-soft: #1949c1;--red: #c8202b;--line: #e3dfd2;--max-w: 1180px;--serif: "Fraunces", Georgia, serif;--sans: "Inter Tight", -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.container{max-width:var(--max-w);margin:0 auto;padding:0 32px;position:relative;z-index:2}nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:24px 0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border-bottom:1px solid transparent;transition:border-color .3s}nav.scrolled{border-bottom-color:var(--line)}nav .container{display:flex;justify-content:space-between;align-items:center}.logo{font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-size:48px;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}.logo-mark{width:72px;height:72px;display:block}.nav-links{display:flex;gap:36px;font-size:14px;font-weight:400}.nav-links a{color:var(--ink-soft);text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--ink)}@media(max-width:720px){.nav-links{display:none}}.hero{padding:200px 0 140px;position:relative}.hero:before{content:"";position:absolute;top:120px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(10,58,143,.1) 0%,transparent 60%);pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:center}@media(max-width:960px){.hero-grid{grid-template-columns:1fr;gap:60px}.hero-visual{max-width:420px}}.hero-visual{position:relative;opacity:0;animation:fade-up 1.2s .6s forwards}.hero-visual svg{width:100%;height:auto;display:block}.room-arc-a{animation:arc-drift-a 14s ease-in-out infinite;transform-origin:center}.room-arc-b{animation:arc-drift-b 14s ease-in-out infinite;transform-origin:center}@keyframes arc-drift-a{0%,to{opacity:.5}50%{opacity:.9}}@keyframes arc-drift-b{0%,to{opacity:.9}50%{opacity:.5}}.pulse-human{animation:pulse-node 5s ease-in-out infinite;transform-origin:160px 200px}.pulse-agent{animation:pulse-node 5s ease-in-out 2.5s infinite;transform-origin:310px 270px}@keyframes pulse-node{0%,to{opacity:.35}50%{opacity:.9}}.call-line{stroke-dasharray:150;stroke-dashoffset:150;animation:draw-call 8s ease-in-out infinite}.call-arrow{opacity:0;animation:fade-arrow-call 8s ease-in-out infinite}@keyframes draw-call{0%{stroke-dashoffset:150}12%{stroke-dashoffset:0}45%{stroke-dashoffset:0}60%{stroke-dashoffset:-150}to{stroke-dashoffset:-150}}@keyframes fade-arrow-call{0%,11%{opacity:0}13%,45%{opacity:1}60%,to{opacity:0}}.response-line{stroke-dasharray:200;stroke-dashoffset:200;animation:draw-response 8s ease-in-out infinite}.response-arrow{opacity:0;animation:fade-arrow-response 8s ease-in-out infinite}@keyframes draw-response{0%,18%{stroke-dashoffset:200}38%{stroke-dashoffset:0}55%{stroke-dashoffset:0}72%{stroke-dashoffset:-200}to{stroke-dashoffset:-200}}@keyframes fade-arrow-response{0%,37%{opacity:0}39%,55%{opacity:1}72%,to{opacity:0}}.ghost-note{opacity:0;animation:ghost-blink 8s ease-in-out infinite}@keyframes ghost-blink{0%,20%{opacity:0}28%,40%{opacity:.5}50%,to{opacity:0}}@media(prefers-reduced-motion:reduce){.call-line,.response-line{stroke-dashoffset:0;animation:none}.call-arrow,.response-arrow{opacity:1;animation:none}.ghost-note{opacity:.5;animation:none}.pulse-human,.pulse-agent,.room-arc-a,.room-arc-b{animation:none}}.cap-label{display:inline-block;font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-right:10px;padding:3px 8px;border:1px solid var(--red);border-radius:2px}.cap-muted{color:var(--ink-muted);font-size:12px;font-style:italic}.eyebrow{font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:28px;opacity:0;animation:fade-up .8s .1s forwards}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.4vw,72px);line-height:1.05;letter-spacing:-.025em;margin-bottom:36px;opacity:0;animation:fade-up .8s .25s forwards}.hero h1 em{font-style:italic;color:var(--accent);font-weight:400}.hero-sub{font-size:20px;line-height:1.55;color:var(--ink-soft);max-width:640px;font-weight:300;opacity:0;animation:fade-up .8s .4s forwards}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}section{padding:120px 0;position:relative}.section-label{font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:24px;display:flex;align-items:center;gap:14px}.section-label:before{content:"";width:36px;height:1px;background:var(--red)}.section-title{font-family:var(--serif);font-weight:400;font-size:clamp(32px,4.2vw,52px);line-height:1.1;letter-spacing:-.02em;max-width:820px;margin-bottom:56px}.vision{border-top:1px solid var(--line)}.vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}@media(max-width:860px){.vision-grid{grid-template-columns:1fr;gap:40px}}.vision-text p{font-size:17px;line-height:1.5;color:var(--ink-soft);margin-bottom:14px}.vision-text p.vision-text-tail{margin-top:28px;margin-bottom:0;color:var(--ink);font-style:italic}.vision-pull{font-family:var(--serif);font-size:28px;line-height:1.35;font-weight:400;color:var(--ink);border-left:2px solid var(--accent);padding-left:28px;font-style:italic}.vision-pull em{color:var(--accent);font-weight:500}.vision-pull-attr{font-family:var(--sans);font-size:12px;font-style:normal;color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;margin-top:20px;font-weight:500}.products{background:var(--bg-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.products-lede{font-size:17px;line-height:1.7;color:var(--ink-soft);max-width:720px;margin:-32px 0 56px;font-weight:300}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}@media(max-width:860px){.product-grid{grid-template-columns:1fr}}.product-card{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:40px 36px;position:relative;transition:transform .4s,border-color .4s}.product-card:hover{transform:translateY(-4px);border-color:var(--accent-soft)}.product-card-offset{transform:none}.product-card-offset:hover{transform:translateY(-4px)}.product-icon{width:144px;height:144px;margin-bottom:28px}.product-icon svg{width:100%;height:100%;display:block}.product-num{font-family:var(--serif);font-size:13px;font-weight:500;color:var(--red);letter-spacing:.1em;margin-bottom:16px}.product-name{font-family:var(--serif);font-size:23px;font-weight:500;margin-bottom:16px;letter-spacing:-.015em;line-height:1.25}.product-desc{font-size:15px;line-height:1.65;color:var(--ink-soft)}.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:40px}@media(max-width:860px){.diff-grid{grid-template-columns:1fr;gap:40px}}.diff-item{padding:36px 0;border-top:1px solid var(--line)}.diff-num{font-family:var(--serif);font-size:14px;color:var(--accent);margin-bottom:18px;font-weight:500}.diff-title{font-family:var(--serif);font-size:26px;font-weight:500;margin-bottom:14px;letter-spacing:-.01em}.diff-desc{font-size:15px;line-height:1.7;color:var(--ink-soft)}.diff-lede{font-size:17px;line-height:1.7;color:var(--ink-soft);max-width:720px}.team{background:var(--bg-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.team-title{max-width:960px}.team-title-indent{display:inline-block;padding-left:1.4em}.team-title-tail{display:inline-block;margin-top:.5em;font-size:.72em;font-style:italic;color:var(--accent);font-weight:400}@media(max-width:720px){.team-title-indent{padding-left:.6em}.team-title-tail{font-size:.8em}}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}@media(max-width:860px){.team-grid{grid-template-columns:1fr;gap:40px}}.team-member{background:var(--bg);padding:40px 32px;border:1px solid var(--line);border-radius:12px}.team-avatar{width:160px;height:160px;border-radius:50%;margin-bottom:28px;overflow:hidden;position:relative;background:linear-gradient(135deg,#f5f3ee,#e3dfd2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.team-avatar img{width:100%;height:100%;object-fit:cover;display:block}.team-name{font-family:var(--serif);font-size:24px;font-weight:500;margin-bottom:4px}.team-role{font-size:13px;color:var(--red);letter-spacing:.04em;margin-bottom:20px;text-transform:uppercase;font-weight:500}.team-bio{font-size:14px;line-height:1.75;color:var(--ink-soft)}.team-bio p{margin:0}.heritage{padding:140px 0;position:relative}.heritage-lede{font-size:18px;line-height:1.7;color:var(--ink-soft);max-width:720px;margin-bottom:24px;font-weight:300}.heritage-pull{font-family:var(--serif);font-size:24px;line-height:1.4;color:var(--ink);max-width:720px;margin-bottom:72px;font-weight:400;border-left:2px solid var(--accent);padding-left:24px}.heritage-pull em{font-style:italic}.heritage-figure{margin:0;position:relative}.heritage-figure figcaption{margin-top:20px;font-size:13px;line-height:1.6;color:var(--ink-soft);max-width:680px}.heritage-main{margin-bottom:100px}.heritage-main img{width:100%;max-width:1000px;height:auto;display:block;border-radius:12px;box-shadow:0 30px 80px #1a1a1a2e}.case-study{display:grid;grid-template-columns:1fr 1.3fr;gap:72px;align-items:center;margin-bottom:120px;max-width:1080px}.case-study.case-reversed{grid-template-columns:1.3fr 1fr}.case-study.case-reversed .case-visual{order:2}.case-study.case-reversed .case-text{order:1}@media(max-width:860px){.case-study,.case-study.case-reversed{grid-template-columns:1fr;gap:40px;margin-bottom:80px}.case-study.case-reversed .case-visual,.case-study.case-reversed .case-text{order:0}}.case-visual{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:48px 36px;display:flex;align-items:center;justify-content:center;min-height:320px}.case-visual img{max-width:100%;max-height:340px;width:auto;height:auto;display:block;filter:drop-shadow(0 20px 40px rgba(26,26,26,.16))}.case-meta{display:flex;gap:14px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.case-year{font-family:var(--serif);font-size:14px;color:var(--red);font-style:italic;font-weight:500}.case-tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);padding:4px 10px;border:1px solid var(--line);border-radius:2px}.case-title{font-family:var(--serif);font-size:34px;font-weight:500;line-height:1.15;letter-spacing:-.015em;margin-bottom:20px;color:var(--ink)}.case-desc{font-size:16px;line-height:1.7;color:var(--ink-soft);margin-bottom:24px}.case-achievements{list-style:none;padding:0;margin:0 0 24px}.case-achievements li{font-size:14px;line-height:1.6;color:var(--ink-soft);padding:10px 0 10px 22px;position:relative;border-top:1px solid var(--line)}.case-achievements li:last-child{border-bottom:1px solid var(--line)}.case-achievements li:before{content:"";position:absolute;left:0;top:18px;width:10px;height:1px;background:var(--red)}.case-achievements strong{color:var(--ink);font-weight:500}.case-hook{color:var(--red);font-weight:600}.case-credit{margin-top:4px}.contact{background:var(--ink);color:var(--bg);border-top:1px solid var(--line)}.contact .section-label{color:#f5f3ee80}.contact .section-label:before{background:var(--red)}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start}@media(max-width:860px){.contact-grid{grid-template-columns:1fr;gap:40px}}.contact h2{font-family:var(--serif);font-size:clamp(36px,5vw,56px);font-weight:400;line-height:1.1;letter-spacing:-.02em;margin-bottom:32px}.contact h2 em{color:var(--accent);font-style:italic;font-weight:300}.contact h2 .final-dot{display:inline-block;color:var(--accent);font-weight:500;margin-left:.02em}.contact-info{font-size:15px;line-height:1.8}.contact-label{font-size:12px;color:#f5f3ee80;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px;margin-top:28px}.contact-label:first-child{margin-top:0}.contact-hq{color:#f5f3eeb3}.contact-info a{color:var(--red);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.contact-info a:hover{border-bottom-color:var(--red)}.site-footer{background:#fff;color:var(--ink-muted);padding:48px 0;font-size:13px;border-top:1px solid var(--line)}.site-footer .container{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px}.site-footer a{color:var(--ink-muted);text-decoration:none;margin-left:24px;transition:color .2s}.site-footer a:hover{color:var(--ink)}.footer-left{display:flex;flex-direction:column;gap:6px}.footer-tagline{font-family:var(--serif);font-size:15px;color:var(--ink-soft);letter-spacing:.005em}.footer-tagline em{font-style:italic;color:var(--accent);font-weight:500}.footer-copyright{font-size:12px;color:var(--ink-muted)}
