html{scroll-behavior:smooth}body{background:radial-gradient(circle at 10% 0%,rgba(228,236,242,.48),transparent 24%),radial-gradient(circle at 100% 0%,rgba(217,229,241,.44),transparent 24%),linear-gradient(180deg,#fcfcfb,#f7f7f4 34%,#f6f4ef);color:#1f2937;text-rendering:optimizeLegibility;overflow-x:hidden}h1,h2{font-family:Fraunces,ui-serif,Georgia,serif;letter-spacing:-.035em;text-wrap:balance}h3,h4{letter-spacing:-.02em}p{text-wrap:pretty}::-moz-selection{background:#4cbcbc38;color:#102a2a}::selection{background:#4cbcbc38;color:#102a2a}section.bg-white{background-color:#fffffcd6;backdrop-filter:blur(2px)}section.bg-stone-50{background-color:#eef3ef}.btn-primary{display:inline-flex;align-items:center;justify-content:center;border-radius:.95rem;background:linear-gradient(135deg,#1f8585,#156666);padding:.9rem 1.8rem;color:#fff;font-weight:700;letter-spacing:-.01em;box-shadow:0 16px 30px #15666638;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 38px #15666642;filter:saturate(1.04)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:.95rem;border:1px solid rgba(214,219,225,.95);background:#ffffffdb;padding:.9rem 1.8rem;color:#1f2937;font-weight:700;letter-spacing:-.01em;box-shadow:0 10px 24px #0f172a0f;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background-color .2s ease}.btn-secondary:hover{transform:translateY(-2px);border-color:#4cbcbc59;background:#fffffff5;box-shadow:0 16px 30px #0f172a14}.paper-panel{position:relative;overflow:hidden;border:1px solid rgba(226,232,240,.9);background:linear-gradient(180deg,#fffffffa,#fafaf7f0),linear-gradient(180deg,rgba(15,23,42,.03) 1px,transparent 1px);background-size:auto,100% 2.4rem;box-shadow:0 22px 54px #0f172a1a}.paper-panel:before{content:"";position:absolute;inset:0 auto 0 0;width:.4rem;background:linear-gradient(180deg,#4cbcbca6,#7da8d952)}.paper-panel:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.68);border-radius:inherit;pointer-events:none}.proof-surface{position:relative;border:1px solid rgba(226,232,240,.92);background:linear-gradient(180deg,#fffffff2,#f9f7f2f5),linear-gradient(90deg,#4cbcbc0a,#d6b5950f);box-shadow:0 18px 40px #0f172a1a}.proof-surface:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px #ffffffbf}.proof-rule{position:relative;padding-left:1rem}.proof-rule:before{content:"";position:absolute;left:0;top:.2rem;bottom:.2rem;width:1px;background:linear-gradient(180deg,#4cbcbcc7,#0f172a29)}.evidence-grid{display:grid;gap:1rem}.evidence-chip{border:1px solid rgba(226,232,240,.95);background:#ffffffd1;box-shadow:0 10px 24px #0f172a0d}.image-caption{position:absolute;left:1rem;right:auto;bottom:1rem;max-width:min(18rem,calc(100% - 2rem));border:1px solid rgba(255,255,255,.16);background:#0f172aad;backdrop-filter:blur(10px)}.dark-stage{background:radial-gradient(circle at top left,rgba(76,188,188,.12),transparent 20%),radial-gradient(circle at top right,rgba(125,168,217,.12),transparent 18%),linear-gradient(135deg,#0e1c1f,#13282d 52%,#182f35)}.project-montage{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.project-montage>:first-child{grid-row:span 2}.doc-kicker{display:inline-flex;align-items:center;gap:.6rem;letter-spacing:.18em}.doc-kicker:before{content:"";width:2.4rem;height:1px;background:#4cbcbcb8}.editorial-frame{position:relative;overflow:hidden;border:1px solid rgba(220,228,236,.9);background:linear-gradient(180deg,#ffffffeb,#f7f9f7f0);box-shadow:0 24px 60px #0f172a1f}.editorial-frame:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.6);border-radius:inherit;pointer-events:none}.gallery-card{overflow:hidden;border:1px solid rgba(226,232,240,.92);background:#ffffffe0;box-shadow:0 14px 32px #0f172a12}.gallery-card img{transition:transform .46s cubic-bezier(.22,1,.36,1),filter .46s ease;will-change:transform,filter}.gallery-card:hover img{transform:scale(1.07) translateY(-2px);filter:saturate(1.08) contrast(1.05)}.filter-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(226,232,240,.95);background:#ffffffeb;padding:.55rem 1rem;color:#475569;font-size:.95rem;font-weight:600;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.filter-pill:hover{transform:translateY(-1px);border-color:#4cbcbc52;color:#0f766e}.filter-pill.is-active{border-color:#156666f2;background:linear-gradient(135deg,#1f8585,#156666);color:#fff;box-shadow:0 10px 20px #1566662e}.about-timeline{position:relative;display:grid;gap:1.1rem}.about-timeline:before{content:"";position:absolute;left:1.2rem;top:.4rem;bottom:.4rem;width:2px;background:linear-gradient(180deg,#1f8585c7,#0f172a24)}.about-timeline-item{position:relative;display:grid;grid-template-columns:3.2rem 1fr;gap:1rem;align-items:start}.about-timeline-item:before{content:"";position:absolute;left:1rem;top:1.15rem;width:.45rem;height:.45rem;border-radius:999px;background:#1f8585;box-shadow:0 0 0 6px #1f85851f}.about-timeline-year{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;border-radius:.9rem;background:linear-gradient(135deg,#1f8585,#156666);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.14em;box-shadow:0 12px 24px #1566662e}.about-timeline-card{min-height:100%}@media (min-width: 768px){.about-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.1rem}.about-timeline:before{left:.9rem;right:.9rem;top:1.2rem;bottom:auto;width:auto;height:2px}.about-timeline-item{grid-template-columns:1fr;gap:.7rem;padding-top:.9rem}.about-timeline-item:before{left:1.1rem;top:.05rem}.about-timeline-year{min-height:2.25rem;max-width:4.5rem;padding-inline:.8rem;font-size:.72rem}}@media (min-width: 1024px){.about-timeline-item{padding-top:1rem}}@media (max-width: 767px){.btn-primary,.btn-secondary{width:100%;padding:.95rem 1.2rem}.paper-panel{background-size:auto,100% 2rem;box-shadow:0 16px 34px #0f172a17}.proof-surface{box-shadow:0 12px 26px #0f172a14}.proof-rule{padding-left:.8rem}.image-caption{left:.7rem;right:auto;bottom:.7rem;max-width:min(15rem,calc(100% - 1.4rem))}.doc-kicker{gap:.45rem;letter-spacing:.14em}.doc-kicker:before{width:1.35rem}.filter-pill{flex:0 0 auto;padding:.5rem .85rem;font-size:.85rem;white-space:nowrap}.hero-card{box-shadow:0 20px 40px #0f172a1f}.project-montage{grid-template-columns:1fr;gap:.85rem}.project-montage>:first-child{grid-row:auto}}.js-loaded section{opacity:0;transform:translateY(28px)}.js-loaded section.is-visible{opacity:1;transform:none;transition:opacity .82s cubic-bezier(.22,1,.36,1),transform .82s cubic-bezier(.22,1,.36,1)}.js-loaded section.stagger-section{opacity:1!important;transform:none!important;transition:none!important}.js-loaded .stagger-grid>*{opacity:0;transform:translateY(42px) scale(.965);transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1)}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(1){opacity:1;transform:none;transition-delay:0ms}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(2){opacity:1;transform:none;transition-delay:.14s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(3){opacity:1;transform:none;transition-delay:.28s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(4){opacity:1;transform:none;transition-delay:.42s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(5){opacity:1;transform:none;transition-delay:.56s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(6){opacity:1;transform:none;transition-delay:.7s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(7){opacity:1;transform:none;transition-delay:.84s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(8){opacity:1;transform:none;transition-delay:.98s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(9){opacity:1;transform:none;transition-delay:1.12s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(10){opacity:1;transform:none;transition-delay:1.26s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(11){opacity:1;transform:none;transition-delay:1.4s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(12){opacity:1;transform:none;transition-delay:1.54s}.js-loaded section.stagger-section.is-visible .stagger-grid>*:nth-child(n+13){opacity:1;transform:none;transition-delay:1.68s}@media (max-width: 767px){.js-loaded .stagger-grid>*{opacity:1;transform:none;transition:none}}.hero-mesh{background-image:radial-gradient(circle at 12% 14%,rgba(209,220,228,.16),transparent 23%),radial-gradient(circle at 88% 8%,rgba(121,160,206,.1),transparent 20%),radial-gradient(circle at 76% 22%,rgba(214,181,149,.06),transparent 14%),linear-gradient(135deg,#fcfcf9fa,#fffffff2 42%,#f7f6f2fa);box-shadow:inset 0 -1px #94a3b81f}.ambient-grid{background-image:linear-gradient(rgba(148,163,184,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.07) 1px,transparent 1px);background-size:52px 52px}.glow-blob{filter:blur(74px);opacity:.42;pointer-events:none;mix-blend-mode:normal}.float-gentle{animation:float-gentle 11s ease-in-out infinite}.float-delayed{animation-delay:-3s}.pan-slow{animation:pan-slow 22s ease-in-out infinite alternate;transform-origin:center}.card-lift{transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s cubic-bezier(.22,1,.36,1),border-color .32s ease;box-shadow:0 16px 38px #0f172a0f;will-change:transform,box-shadow}.card-lift:hover{transform:translateY(-5px);box-shadow:0 28px 58px #0f172a1c;border-color:#1c707038}.hero-card{box-shadow:0 30px 68px #0f172a21;backdrop-filter:blur(10px)}img[src*="/img/"],img[src*=land-aerial],img[src*=marcus],img[src*=letter-preview],img[src*=office-preview]{filter:saturate(1.04) contrast(1.03)}@media (prefers-reduced-motion: reduce){.js-loaded section,.js-loaded section.is-visible,.float-gentle,.pan-slow{animation:none!important;transition:none!important;transform:none!important}}@keyframes float-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pan-slow{0%{transform:scale(1.02) translate(-.6%)}to{transform:scale(1.07) translate(.8%)}}
