@charset "UTF-8";
:root{--paper:#f4f1e9;--ink:#262722;--muted:#6d6c63;--stone:#c6bfaf;--line:#d9d5ca;--dark:#242720;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;--gutter:clamp(22px,5.3vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}::selection{background:#c5bea9;color:#20211d}:focus-visible{outline:2px solid currentColor;outline-offset:6px}h1,h2,h3,p{margin:0}em{font-family:var(--serif);font-weight:400}h2{font-size:clamp(40px,4.9vw,76px);letter-spacing:-.055em;line-height:1.06;font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:10px;left:15px;z-index:100;background:var(--ink);color:var(--paper);padding:15px;transform:translateY(-160%)}.skip:focus{transform:none}.header{height:108px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:5px;font-size:25px;font-weight:800;letter-spacing:-1.7px}.brand img{width:48px;height:48px;mix-blend-mode:multiply}.brand-dot{font-size:11px;vertical-align:top;margin-left:4px;letter-spacing:0}.navigation{display:flex;align-items:center;gap:clamp(22px,3vw,47px);font-size:12px}.navigation>a{padding:13px 0;position:relative}.navigation>a:after{content:'';position:absolute;left:0;right:0;bottom:5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.navigation>a:hover:after{transform:scaleX(1)}.nav-contact{margin-left:20px;border-bottom:1px solid var(--ink);display:flex;gap:25px}.nav-contact span{font-size:20px}.menu-button{display:none}.hero{padding:60px var(--gutter) 24px;display:grid;grid-template-columns:1.06fr 1fr;gap:4vw;align-items:center;min-height:690px;max-width:1800px;margin:auto}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:600;line-height:1.6}.hero .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:30px;font-size:9px}.small-star{font-size:24px;line-height:1}.hero h1{font-size:clamp(49px,5.9vw,92px);font-weight:500;letter-spacing:-.066em;line-height:1.01}.hero h1 em{letter-spacing:-.065em;display:inline-block;padding-right:.06em}.hero-description{font-size:14px;line-height:1.8;color:var(--muted);margin:26px 0 28px;letter-spacing:-.01em}.button{min-height:54px;padding:17px 24px;display:inline-flex;justify-content:space-between;align-items:center;gap:35px;border:1px solid transparent;border-radius:2px;font-size:12px;font-weight:500;transition:background .25s,transform .25s}.button>span:not(.sr-only){font-size:21px;line-height:1;transition:transform .25s}.button:hover>span:not(.sr-only){transform:translate(3px,-3px)}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#43463b}.hero-footnote{display:flex;align-items:center;gap:10px;font-size:9px;color:var(--muted);margin-top:39px}.mini-line{width:24px;height:1px;background:#aaa492}.hero-visual{min-width:0;position:relative}.scene{aspect-ratio:1/1.02;position:relative;overflow:hidden;background:#e8e2d7;border-radius:48% 48% 3px 3px;isolation:isolate;--mx:0;--my:0}.scene-image{width:100%;height:100%;object-fit:cover;transform:scale(1.05) translate(calc(var(--mx)*-5px),calc(var(--my)*-5px));will-change:transform;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.scene-top{position:absolute;top:24%;left:9%;right:9%;display:flex;justify-content:space-between;font-size:7px;letter-spacing:.14em;color:#5c5b52}.scene-orbit{position:absolute;top:33%;right:15%;font-size:49px;transform:rotate(calc(var(--mx)*15deg));transition:transform 1s;color:#33372d}.scene-label{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);white-space:nowrap;display:flex;align-items:center;gap:10px;background:var(--paper);padding:13px 15px;font-size:9px;border:1px solid #d8d1c3;box-shadow:0 8px 20px #25231e08}.status-dot{width:5px;height:5px;background:#656d54;border-radius:50%}.label-wave{font-size:17px;margin-left:8px}.visual-caption{display:flex;justify-content:space-between;gap:12px;font-size:7px;letter-spacing:.1em;margin-top:16px;color:var(--muted)}.hero-bottom{margin:35px var(--gutter) 0;padding:24px 0 28px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:10px}.hero-bottom>a{display:flex;align-items:center;gap:13px}.scroll-icon{font-size:19px}.location{font-size:8px;letter-spacing:.12em;display:flex;gap:24px}.section-pad{padding:100px var(--gutter)}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:36px}.section-side{font-size:11px;line-height:1.7;color:var(--muted)}.experiences{background:var(--dark);color:var(--paper);position:relative}.experiences .section-heading{color:#c5c6b9}.experiences .section-side{color:#b3b4a6}.experience-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:55px}.experience-intro>p{max-width:280px;font-size:13px;line-height:1.8;color:#bfc0b3;padding-bottom:6px}.showcase-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.showcase:nth-child(2){margin-top:90px}.showcase-art{height:460px;position:relative;overflow:hidden;isolation:isolate}.demo-tag{position:absolute;z-index:3;top:21px;left:22px;border:1px solid #33382b33;padding:8px 10px;font-size:7px;letter-spacing:.12em;color:#343b2b;background:#ffffff18}.invitation-showcase .showcase-art{background:#d9d6c6}.invitation-art{position:absolute;inset:0;display:flex;align-items:center;flex-direction:column;color:#414b36;transition:transform .8s}.invitation-topline{font-size:7px;letter-spacing:.24em;margin-top:77px}.invitation-number{font:italic 210px/.95 var(--serif);letter-spacing:-.1em;position:relative;margin:0 15px 0 0;z-index:1}.invitation-script{font:italic 47px/.96 var(--serif);text-align:center;position:relative;z-index:2;margin-top:-15px;letter-spacing:-.05em}.invitation-date{font-size:8px;letter-spacing:.21em;margin-top:25px}.invitation-rings{position:absolute;width:260px;height:320px;top:70px;border:1px solid #75836950;border-radius:50%;transform:rotate(-25deg)}.invitation-rings:after{content:'';position:absolute;inset:13px -20px;border:1px solid #75836930;border-radius:50%}.circle-arrow{position:absolute;z-index:5;right:24px;bottom:24px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--paper);color:var(--ink);font-size:23px;transition:transform .3s,background .3s}.showcase:hover .circle-arrow{transform:rotate(45deg);background:white}.showcase:hover .invitation-art,.showcase:hover .object-art{transform:scale(1.025)}.object-art{position:absolute;inset:0;background:#b3ab9b;color:#2b2b26;transition:transform .8s}.object-logo{position:absolute;left:32px;top:65px;font-size:46px;letter-spacing:-.09em;font-weight:600}.object-logo>span{font-size:18px;vertical-align:top}.object-subtitle{position:absolute;left:34px;top:131px;font-size:7px;letter-spacing:.11em;line-height:1.65}.object-caption{position:absolute;bottom:32px;left:34px;font-size:7px;letter-spacing:.16em}.sculpture{position:absolute;right:12%;top:28%;width:45%;height:61%;background:linear-gradient(100deg,#e1d8c5,#d0c3aa 65%,#b5a58c);border-radius:49% 49% 4% 4%;box-shadow:20px 15px 0 #8175603b,30px 40px 25px #62584729;transform:rotate(-9deg)}.sculpture-hole{position:absolute;inset:19% 21% 18%;background:#a79c87;border-radius:48% 48% 0 0;box-shadow:inset 13px 10px 7px #6459413b}.showcase-info{display:flex;justify-content:space-between;gap:12px;margin-top:24px;align-items:flex-end}.project-type{font-size:7px;letter-spacing:.15em;color:#afb2a2}.showcase h3{font-size:20px;font-weight:400;letter-spacing:-.035em;margin-top:8px;line-height:1.25}.project-index{font-size:10px;color:#a4a898}.project-description{color:#b4b7a7;font-size:11px;line-height:1.7;margin-top:10px}.demo-disclosure{font-size:9px;color:#b3b6a6;margin-top:52px;line-height:1.7;max-width:550px}.services{padding-top:110px;padding-bottom:110px}.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.service-item{display:flex;gap:24px;padding:28px 0 36px;border-top:1px solid var(--line)}.service-number{font-size:9px;padding-top:5px;color:var(--muted)}.service-item h3{font-size:23px;font-weight:500;letter-spacing:-.04em;margin-bottom:16px}.service-item p{font-size:13px;line-height:1.85;color:var(--muted);max-width:390px}.text-link{display:inline-flex;gap:40px;align-items:center;font-size:11px;padding:17px 0 5px;border-bottom:1px solid var(--ink)}.text-link span{font-size:18px}.manifesto{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#e5e0d4;align-items:center;overflow:hidden;padding-top:55px;padding-bottom:55px}.manifesto-copy h2{font-size:clamp(34px,3.6vw,58px);margin:27px 0}.manifesto-copy>p:not(.eyebrow){font-size:13px;line-height:1.85;max-width:365px;color:#626257}.manifesto-signature{display:block;font-size:9px;margin-top:30px;color:#67685c}.manifesto-art{height:450px;position:relative;isolation:isolate}.arch{position:absolute;border-radius:50% 50% 0 0}.arch-back{width:68%;height:88%;left:7%;top:2%;border:60px solid #c1b8a5;border-bottom:0;transform:rotate(-9deg);box-shadow:-20px 10px 0 #d8d0c1}.arch-front{width:64%;height:64%;right:-5%;bottom:0;border:50px solid #f5f1e7;border-bottom:0;transform:rotate(14deg);box-shadow:16px 0 0 #beb5a2}.manifesto-floor{position:absolute;bottom:-30px;left:-15%;width:130%;height:120px;background:#d4cbb9;border-radius:50%;border-top:24px solid #efeadf;transform:rotate(-8deg)}.manifesto-art img{position:absolute;bottom:8%;left:33%;width:36%;height:auto;filter:drop-shadow(8px 16px 6px #302f2520);transform:rotate(-8deg)}.process h2{margin-bottom:60px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:0;list-style:none}.steps li{border-top:1px solid #bdb9aa;padding-top:25px;position:relative}.steps li:before{content:'';position:absolute;height:3px;top:-2px;left:0;width:25px;background:var(--ink)}.step-index{font-size:9px;color:var(--muted)}.steps h3{font-size:19px;letter-spacing:-.04em;font-weight:500;margin:28px 0 14px}.steps p{font-size:12px;color:var(--muted);line-height:1.8;max-width:220px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:7vw;border-top:1px solid var(--line);padding-top:85px;padding-bottom:100px}.faq h2{font-size:clamp(36px,3.6vw,56px);margin-top:24px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:13px;padding:25px 0;line-height:1.5}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:22px;font-weight:300;transition:transform .3s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:12px;color:var(--muted);line-height:1.85;padding:0 35px 25px 0}.connect{background:var(--dark);color:var(--paper);position:relative;overflow:hidden}.connect .eyebrow{color:#b7bba7}.connect h2{font-size:clamp(44px,6.6vw,100px);margin-top:28px;position:relative;z-index:1}.connect-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:55px;position:relative;z-index:1}.connect-bottom>p{font-size:12px;line-height:1.8;color:#b8bcab}.social-links{display:flex;gap:12px;flex-wrap:wrap}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#fff}.button-outline{border-color:#666c59;color:var(--paper)}.button-outline:hover{background:#373e2f}.connect-decoration{position:absolute;right:4%;top:4%;font:italic 450px/1 var(--serif);color:#ffffff04;pointer-events:none}.footer{display:flex;align-items:center;gap:30px;justify-content:space-between;padding:40px var(--gutter)}.footer-brand{font-size:25px;font-weight:800;letter-spacing:-.07em}.footer-brand>span{font-size:9px;vertical-align:top;letter-spacing:0;margin-left:4px}.footer>p{font-size:10px;color:var(--muted);margin-right:auto}.footer>div{display:flex;align-items:center;gap:25px;font-size:9px;color:var(--muted)}.footer>div>a:last-child{font-size:21px;color:var(--ink)}
@media(prefers-reduced-motion:no-preference){.hero-copy,.hero-visual{animation:arrive 1s cubic-bezier(.2,.7,.2,1) both}.hero-visual{animation-delay:.12s}.reveal-pending{opacity:.15;transform:translateY(24px);transition:opacity .85s,transform .85s}.reveal-pending.is-visible{opacity:1;transform:none}@keyframes arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}}
@media(min-width:1800px){.hero{min-height:800px}.scene{max-height:650px}.section-pad>*{max-width:1500px;margin-left:auto;margin-right:auto}}
@media(max-width:1100px){.hero{gap:3vw;min-height:610px}.hero h1{font-size:6.4vw}.navigation{gap:24px}.nav-contact{margin-left:0}.showcase-art{height:390px}.invitation-topline{margin-top:65px}.invitation-number{font-size:175px}.invitation-script{font-size:42px}.manifesto{gap:4vw}.manifesto-art{height:370px}.connect-bottom{align-items:flex-start;flex-direction:column}.arch-back{border-width:45px}.arch-front{border-width:40px}}
@media(max-width:760px){:root{--gutter:24px}html{scroll-padding-top:25px}.header{height:82px}.brand{font-size:23px}.brand img{width:41px;height:41px}.menu-button{display:flex;align-items:center;gap:12px;border:0;background:none;padding:12px 0 12px 12px;min-height:44px;font-size:11px}.menu-button i{display:block;width:21px;height:8px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:transform .2s}.menu-button[aria-expanded=true] i{transform:rotate(-45deg)}.navigation{display:none;position:absolute;left:0;right:0;top:82px;background:var(--paper);padding:28px var(--gutter) 40px;border-bottom:1px solid var(--line);box-shadow:0 30px 40px #24272015;flex-direction:column;align-items:stretch;gap:12px}.navigation.is-open{display:flex}.navigation>a{font-size:18px;padding:15px 0}.nav-contact{margin-top:5px}.hero{padding-top:38px;grid-template-columns:1fr;gap:32px;min-height:0}.hero .eyebrow{font-size:8px;letter-spacing:.11em;margin-bottom:24px;gap:9px}.hero h1{font-size:clamp(47px,10.9vw,78px);line-height:1.01;letter-spacing:-.068em}.hero h1 br:first-child{display:none}.hero-description{font-size:12px;line-height:1.8;margin:22px 0}.hero .button{min-height:50px}.hero-footnote{margin-top:23px;font-size:8px}.hero-visual{width:100%;max-width:510px;justify-self:center}.scene{aspect-ratio:1.06/1;border-radius:46% 46% 2px 2px}.scene-label{font-size:8px;bottom:6%;padding:11px 12px}.scene-top{font-size:6px;top:25%}.scene-orbit{font-size:37px;right:16%}.visual-caption{font-size:6px;letter-spacing:.06em;margin-top:12px}.hero-bottom{margin-top:4px;padding:21px 0 24px;font-size:9px}.location{display:none}.section-pad{padding:65px var(--gutter)}h2{font-size:44px}.section-heading{margin-bottom:28px}.eyebrow{font-size:8px}.section-side{font-size:9px}.experience-intro{display:block;margin-bottom:32px}.experience-intro>p{margin-top:24px;max-width:290px;font-size:12px}.showcase-grid{grid-template-columns:1fr;gap:40px}.showcase:nth-child(2){margin-top:0}.showcase-art{height:auto;aspect-ratio:1/1.05}.invitation-topline{margin-top:17%}.invitation-number{font-size:clamp(160px,45vw,220px)}.invitation-script{font-size:clamp(40px,11vw,55px)}.invitation-date{font-size:7px;margin-top:20px}.invitation-rings{width:65%;height:70%;top:17%}.demo-tag{font-size:6px;left:17px;top:17px}.showcase-info{margin-top:20px}.showcase h3{font-size:19px}.project-description{font-size:11px}.demo-disclosure{font-size:8px;margin-top:34px}.services-layout{grid-template-columns:1fr;gap:35px}.service-item{gap:19px;padding-top:23px;padding-bottom:28px}.service-item h3{font-size:22px}.service-item p{font-size:12px}.manifesto{grid-template-columns:1fr;gap:30px;padding-top:40px;padding-bottom:60px}.manifesto-art{height:330px;width:min(90%,400px);margin:auto;order:2}.manifesto-copy h2{font-size:40px;margin:22px 0}.manifesto-copy>p:not(.eyebrow){font-size:12px}.manifesto-signature{margin-top:23px}.process h2{margin-bottom:37px}.steps{grid-template-columns:1fr 1fr;gap:33px 22px}.steps li{padding-top:18px}.steps h3{font-size:18px;line-height:1.2;margin:20px 0 12px}.steps p{font-size:11px}.faq{grid-template-columns:1fr;gap:32px}.faq h2{font-size:40px;margin-top:20px}.faq summary{font-size:12px;min-height:70px;padding:22px 0}.faq details p{font-size:12px}.connect h2{font-size:clamp(40px,10.8vw,70px);margin-top:23px}.connect-bottom{margin-top:30px;gap:26px}.connect-bottom>p{font-size:12px}.social-links{width:100%;flex-direction:column;gap:12px}.social-links .button{width:100%;font-size:12px;min-height:55px}.connect-decoration{font-size:330px;right:-5%;top:10%}.footer{flex-wrap:wrap;gap:20px;padding-top:30px;padding-bottom:30px}.footer>p{font-size:9px}.footer>div{width:100%;justify-content:space-between;gap:10px;font-size:9px}.footer-brand{font-size:24px}.object-logo{font-size:42px;left:25px;top:20%}.object-subtitle{left:27px;top:38%;font-size:6px}.object-caption{left:27px;bottom:27px;font-size:6px}}
@media(max-width:360px){:root{--gutter:20px}.hero h1{font-size:45px}.hero .eyebrow{font-size:7px}.hero-footnote{font-size:7px}.scene-label{gap:7px;font-size:7px}.steps{column-gap:15px}.steps h3{font-size:16px}.desktop-break{display:none}.section-side{font-size:8px}h2{font-size:39px}.manifesto-copy h2{font-size:35px}}
/* Direct section navigation remains immediate; motion belongs to the scenes. */
html{scroll-behavior:auto}
@media(max-width:760px){.hero h1{font-size:clamp(40px,10.8vw,78px)}.hero h1 br:first-child{display:initial}}
@media(prefers-reduced-motion:no-preference){
  .manifesto-art .arch-back{transform:translateY(calc(var(--journey,0)*-30px)) rotate(calc(-9deg + var(--journey,0)*8deg))}
  .manifesto-art .arch-front{transform:translateY(calc(var(--journey,0)*20px)) rotate(calc(14deg - var(--journey,0)*8deg))}
  .manifesto-art img{transform:translateY(calc(var(--journey,0)*-35px)) rotate(calc(-8deg + var(--journey,0)*14deg))}
  .scene{animation:portal-entry 1.3s cubic-bezier(.2,.7,.2,1) both}
  @keyframes portal-entry{from{clip-path:inset(8% 8% 0 round 48% 48% 2px 2px);opacity:.3}to{clip-path:inset(0 round 48% 48% 2px 2px);opacity:1}}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scene-image{transform:none;will-change:auto}.reveal-pending{opacity:1;transform:none}}
