*{box-sizing:border-box;margin:0;padding:0}html,body{color:#1a1a1a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f2ed;width:100%;min-height:100%;font-family:Bodoni Moda,Playfair Display,Georgia,serif;overflow-x:hidden}#root{width:100%;min-height:100%}:root{--site-nav-height:5rem}.scroll-container{pointer-events:none;height:600vh;position:relative}.fixed-title{z-index:10;pointer-events:none;position:fixed;top:5vh;left:5vw}.fixed-tagline{z-index:10;pointer-events:none;position:fixed;top:calc(5vh + 2.2em);left:5vw}.brand{letter-spacing:.3em;text-transform:uppercase;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(18px,2.2vw,26px);font-weight:500}.tagline{letter-spacing:.1em;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(13px,1.4vw,17px);font-style:italic;font-weight:300}.hero-nav{bottom:5vh;bottom:max(5vh, calc(env(safe-area-inset-bottom,0px) + 1vh));z-index:10;pointer-events:auto;justify-content:center;gap:3em;width:100%;transition:opacity .5s;display:flex;position:fixed;left:0}.hero-nav-link{letter-spacing:.2em;text-transform:uppercase;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(13px,1.3vw,16px);font-weight:500;text-decoration:none;transition:opacity .3s}.hero-nav-link:hover{opacity:1!important}.theme-toggle{top:5vh;top:max(5vh, env(safe-area-inset-top,0px));right:5vw;right:max(5vw, env(safe-area-inset-right,0px));z-index:20;cursor:pointer;pointer-events:auto;background:0 0;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:15px;transition:all .4s;display:flex;position:fixed}.theme-toggle:hover{opacity:.8;transform:scale(1.1)}.hero-mobile-nav{display:none}.mobile-pinch-hint{left:50%;bottom:max(1.85rem, calc(env(safe-area-inset-bottom,0px) + 1.85rem));z-index:12;pointer-events:none;align-items:center;gap:.85rem;font-family:Bodoni Moda,Playfair Display,Georgia,serif;transition:opacity .6s;display:none;position:fixed;transform:translate(-50%)}.mobile-pinch-arrow{flex-shrink:0;animation:2.6s ease-in-out infinite pinchBreathe}.mobile-pinch-hint>svg.mobile-pinch-arrow:last-of-type{animation-delay:.2s}@keyframes pinchBreathe{0%,to{opacity:.3}50%{opacity:.9}}.mobile-pinch-label{text-align:center;white-space:nowrap;letter-spacing:.34em;text-transform:uppercase;opacity:.55;min-width:4.5rem;font-size:9px;animation:2.6s ease-in-out infinite pinchLabelPulse}.mobile-pinch-label:empty{min-width:0;animation:none}@keyframes pinchLabelPulse{0%,to{opacity:.25}50%{opacity:.75}}.site-nav{z-index:100;padding-top:max(.9rem, calc(env(safe-area-inset-top,0px) + .75rem));padding-right:max(1rem, calc(env(safe-area-inset-right,0px) + 1rem));padding-bottom:.9rem;padding-left:max(1rem, calc(env(safe-area-inset-left,0px) + 1rem));pointer-events:auto;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.nav-brand{letter-spacing:.3em;text-transform:uppercase;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(14px,1.6vw,20px);font-weight:400;text-decoration:none;transition:opacity .3s}.nav-brand:hover{opacity:.7}.nav-links{align-items:center;gap:1.75em;display:flex}.nav-mobile-actions{align-items:center;gap:.75rem;display:none}.nav-link{letter-spacing:.15em;text-transform:uppercase;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(11px,1.1vw,14px);font-weight:400;text-decoration:none;transition:opacity .3s}.nav-link:hover,.nav-link.active{opacity:1!important}.theme-toggle-nav{cursor:pointer;background:0 0;border:1px solid;border-radius:50%;justify-content:center;align-items:center;min-width:44px;height:44px;font-size:14px;transition:all .4s;display:flex}.theme-toggle-nav:hover{opacity:.8;transform:scale(1.1)}.nav-menu-toggle,.mobile-nav-close{letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid;border-radius:999px;min-height:44px;padding:0 1rem;font-size:11px}.mobile-nav-overlay{z-index:140;position:fixed;inset:0}.mobile-nav-scrim{cursor:pointer;background:#0000002e;border:none;position:absolute;inset:0}.mobile-nav-sheet{top:max(.85rem, calc(env(safe-area-inset-top,0px) + .85rem));left:max(1rem, calc(env(safe-area-inset-left,0px) + 1rem));right:max(1rem, calc(env(safe-area-inset-right,0px) + 1rem));border:1px solid;flex-direction:column;gap:1rem;display:flex;position:absolute}.mobile-nav-header{border-bottom:1px solid;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.mobile-nav-meta{letter-spacing:.28em;text-transform:uppercase;font-size:10px}.mobile-nav-links{flex-direction:column;padding:0 1rem 1rem;display:flex}.mobile-nav-link{border-bottom:1px solid;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:20px;text-decoration:none;display:flex}.mobile-nav-link:last-child{border-bottom:none}.mobile-nav-link-status{letter-spacing:.22em;text-transform:uppercase;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10px}.page{min-height:100dvh;transition:background .4s,color .4s}.page-content{max-width:960px;padding-top:calc(var(--site-nav-height,5rem) + clamp(1.75rem, 4vh, 3rem));padding-right:max(1.25rem, calc(env(safe-area-inset-right,0px) + 1.25rem));padding-bottom:max(4rem, calc(env(safe-area-inset-bottom,0px) + 4rem));padding-left:max(1.25rem, calc(env(safe-area-inset-left,0px) + 1.25rem));margin:0 auto}.page-header{margin-bottom:8vh}.page-title{letter-spacing:.15em;text-transform:uppercase;margin-bottom:.5em;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(28px,4vw,48px);font-weight:400}.page-subtitle{letter-spacing:.05em;max-width:560px;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(14px,1.5vw,18px);font-style:italic;font-weight:300;line-height:1.65}.section{margin-bottom:8vh}.section-title{letter-spacing:.3em;text-transform:uppercase;margin-bottom:3em;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(11px,1vw,13px);font-weight:400}.service-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2em;display:grid}.service-card{border:1px solid;padding:2.5em 2em;transition:border-color .3s}.service-tier{letter-spacing:.3em;text-transform:uppercase;margin-bottom:1em;font-size:11px}.service-name{margin-bottom:.3em;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(16px,1.8vw,22px);font-weight:400}.service-price{margin-bottom:1.5em;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(14px,1.4vw,18px);font-weight:400}.service-scope{margin-bottom:1.5em;padding:0;list-style:none}.service-scope li{letter-spacing:.02em;font-size:clamp(12px,1.1vw,14px);line-height:1.9}.service-scope li:before{content:"— ";opacity:.3}.service-timeline{letter-spacing:.2em;text-transform:uppercase;font-size:11px}.industry-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5em;display:grid}.industry-card{border:1px solid;padding:2em 1.5em}.industry-name{margin-bottom:1em;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(14px,1.4vw,18px);font-weight:400}.industry-problems{padding:0;list-style:none}.industry-problems li{letter-spacing:.02em;font-size:clamp(11px,1vw,13px);line-height:1.85}.philosophy-text{letter-spacing:.01em;max-width:640px;font-size:clamp(14px,1.3vw,17px);line-height:1.9}.philosophy-text p{margin-bottom:1.5em}.project-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2em;display:grid}.project-card{border:1px solid;padding:2.5em 2em;text-decoration:none;transition:border-color .3s,transform .3s;display:block}.project-card:hover{transform:translateY(-2px)}.project-name{margin-bottom:.8em;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(16px,1.8vw,22px);font-weight:400}.project-what{margin-bottom:1.2em;font-size:clamp(12px,1.1vw,14px);line-height:1.8}.project-tech{letter-spacing:.15em;text-transform:uppercase;font-size:11px}.contact-section{max-width:480px}.contact-grid{flex-direction:column;gap:1.5em;display:flex}.contact-card{border:1px solid;padding:2em;text-decoration:none;transition:border-color .3s,transform .3s;display:block}.contact-card:hover{transform:translate(4px)}.contact-label{letter-spacing:.3em;text-transform:uppercase;margin-bottom:.5em;font-size:11px}.contact-card div:last-child{overflow-wrap:anywhere;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:clamp(14px,1.4vw,18px);line-height:1.45}.chat-overlay{z-index:150;padding-bottom:max(1rem, calc(env(safe-area-inset-bottom,0px) + 1rem));pointer-events:none;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@keyframes chatShellEnter{0%{opacity:0;transform:translateY(28px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-shell{-webkit-backdrop-filter:blur(24px)saturate(140%);pointer-events:auto;border:1px solid;border-radius:18px;flex-direction:column;width:min(620px,100% - 1.5rem);min-height:260px;max-height:56dvh;animation:.55s cubic-bezier(.16,1,.3,1) both chatShellEnter;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px -28px #0000008c}.chat-close-float{cursor:pointer;opacity:.45;z-index:2;background:0 0;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;padding:0;transition:opacity .3s,transform .4s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;top:.8rem;right:.8rem}.chat-close-float:hover,.chat-close-float:focus-visible{opacity:.95;outline:none;transform:rotate(90deg)}.chat-messages{scrollbar-width:none;flex-direction:column;flex:1;gap:1.1rem;padding:2.6rem 1.4rem 1.1rem;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{display:none}.chat-msg{letter-spacing:.01em;max-width:min(42rem,92%);font-family:Bodoni Moda,Playfair Display,Georgia,serif;line-height:1.7}.chat-msg-assistant{text-align:left;align-self:flex-start;font-size:clamp(16px,1.5vw,18px);font-weight:400}.chat-msg-user{text-align:right;opacity:.7;align-self:flex-end;font-size:clamp(13px,1vw,14px);font-style:italic;font-weight:300}.chat-emerge{opacity:0;filter:blur(8px);animation:.8s forwards emerge}@keyframes emerge{0%{opacity:0;filter:blur(8px)}to{opacity:1;filter:blur()}}.chat-thinking{opacity:.4;animation:1.5s ease-in-out infinite thinkingPulse}@keyframes thinkingPulse{0%,to{opacity:.2}50%{opacity:.6}}.chat-compose{border-top:1px solid;align-items:center;gap:.75rem;padding:.75rem 1.1rem;display:flex}.chat-input{letter-spacing:.05em;opacity:.8;touch-action:manipulation;background:0 0;border:none;border-bottom:1px solid;outline:none;flex:1;padding:.8rem 0;font-family:Bodoni Moda,Playfair Display,Georgia,serif;font-size:16px;font-style:italic;font-weight:300;line-height:1.4;transition:opacity .3s}.chat-input:focus{opacity:1}.chat-input::placeholder{font-size:inherit;opacity:.4;font-style:italic}.chat-send{cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:opacity .25s,transform .4s cubic-bezier(.2,.8,.2,1);display:flex}.chat-send:hover:not(:disabled){transform:translate(3px)}.chat-send:disabled{cursor:not-allowed}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=768px){.fixed-title,.fixed-tagline,.hero-nav,.theme-toggle{display:none}.hero-mobile-nav{display:block}.mobile-pinch-hint{display:flex}.nav-links{display:none}.nav-mobile-actions{display:flex}.page-content{padding-top:calc(var(--site-nav-height,5rem) + 2rem)}.page-header{margin-bottom:3rem}.page-title{letter-spacing:.12em;margin-bottom:.55rem;font-size:clamp(34px,10vw,44px)}.page-subtitle{max-width:32ch;font-size:16px;line-height:1.75}.section{margin-bottom:3rem}.section-title{letter-spacing:.26em;margin-bottom:1.5rem;font-size:10px}.service-grid,.industry-grid,.project-grid{grid-template-columns:1fr;gap:1rem}.service-card,.industry-card,.project-card,.contact-card{padding:1.35rem}.service-tier,.service-timeline,.project-tech,.contact-label{letter-spacing:.22em;font-size:10px}.service-name,.project-name{font-size:20px}.industry-name{font-size:18px}.service-price{margin-bottom:1rem;font-size:17px}.service-scope li,.industry-problems li,.project-what,.contact-card div:last-child{font-size:14px;line-height:1.8}.philosophy-text{font-size:16px;line-height:1.85}.chat-overlay{padding-bottom:max(.75rem, calc(env(safe-area-inset-bottom,0px) + .75rem))}.chat-shell{border-radius:14px;width:calc(100% - 1rem);max-height:54dvh}}@media (width>=769px){.nav-mobile-actions,.mobile-nav-overlay{display:none}.chat-shell{min-height:320px;max-height:52dvh}.chat-messages{gap:1.25rem;padding:2.9rem 1.6rem 1.2rem}.chat-compose{padding:.95rem 1.6rem 1.15rem}}@media (width<=480px){.hero-nav{gap:1.5em}.hero-nav-link{letter-spacing:.12em;font-size:clamp(11px,3vw,14px)}.mobile-nav-link{font-size:18px}}
