/* FOGETO — type, space and a fold. The identity is the interface. */
:root { --paper:#25292b; --ink:#f1efe7; --mint:#a3aa6d; --muted:#b5b8b5; --line:#494d4d; --surface:#2e3234; --surface-deep:#202426; --radius:0px; }
html { scroll-padding-top:110px; }
body { overflow-wrap:break-word; }
.wrap { width:min(1344px,calc(100% - 104px)); }
h1,h2 { font-family:var(--font); font-weight:450; font-kerning:normal; font-feature-settings:normal; text-transform:none; letter-spacing:-.06em; line-height:1.1; }
h3 { font-weight:500; letter-spacing:-.035em; }
p { text-wrap:pretty; }
.icon { stroke-width:1.5; }
.eyebrow,.page-kicker { margin:0; color:var(--muted); font:11px/1.5 var(--mono); letter-spacing:.035em; text-transform:none; }
.eyebrow::before { content:''; display:inline-block; width:8px; height:8px; border-left:1px solid var(--mint); border-bottom:1px solid var(--mint); transform:translateY(-2px); margin-right:12px; }
.button { min-height:52px; display:inline-flex; align-items:center; justify-content:space-between; gap:30px; padding:14px 20px; background:var(--mint); color:#25292b; border:0; border-radius:0; font-size:12px; font-weight:550; transition:background .2s; }
.button:hover { background:#bec49a; }
.button .icon { width:20px; height:20px; }
.text-link { display:inline-flex; align-items:center; gap:22px; min-height:44px; font-size:12px; border-bottom:1px solid var(--line); padding:0 0 4px; }
.text-link .icon { width:18px; height:18px; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:2px solid var(--mint); outline-offset:6px; }
.site-header { background:#25292bf5; backdrop-filter:blur(12px); border-bottom:1px solid #494d4d70; }
.header { height:90px; gap:30px; }.brand-logo { width:180px; }.header nav { gap:35px; }.header nav a { font-size:12px; color:var(--muted); }
.header nav a:hover,.header nav a[aria-current="page"] { color:var(--ink); }.header nav a[aria-current="page"]::after { height:1px; bottom:7px; }
.header-actions { gap:28px; }.language-switch { font:11px var(--mono); }.language-switch .icon { display:none; }
.button-small { min-height:42px; padding:8px 0 8px 16px; border-left:1px solid var(--line); background:none; color:var(--ink); }
.button-small:hover { background:none; color:var(--mint); }.button-small .icon { transition:transform .2s; }.button-small:hover .icon { transform:translate(3px,-3px); }
.menu-toggle { border:0; border-radius:0; width:44px; height:44px; padding:10px; }
.mobile-menu.wrap { width:100%; margin:0; }
.mobile-menu { position:absolute; top:100%; left:0; width:100%; padding:20px 36px 30px; max-height:calc(100dvh - 76px); overflow-y:auto; border-block:1px solid var(--line); background:var(--paper); }
.mobile-navigation>a { padding:19px 0; font-size:28px; }.mobile-menu-bottom { padding-top:8px; }.menu-backdrop { background:#16191ac9; }

/* Give the headline and moving symbol separate space at every breakpoint. */
.hero-stage { position:relative; isolation:isolate; overflow:hidden; padding-bottom:42px; }
.hero-layout { position:relative; z-index:1; }
.hero-title { position:relative; display:grid; grid-template-columns:minmax(0,1fr) 28%; align-items:center; gap:clamp(32px,4vw,64px); margin-top:48px; padding-bottom:24px; }
.hero-title h1 { position:relative; z-index:2; font-family:var(--display); font-weight:800; min-width:0; font-size:clamp(48px,7vw,113px); text-transform:uppercase; letter-spacing:-.025em; line-height:1.12; text-wrap:initial; pointer-events:none; }
.hero-line { display:block; white-space:nowrap; }.hero-line:first-child { font-size:1.1em; }.hero-line-accent { color:var(--mint); }
.hero-title .fold-sculpture { position:relative; width:100%; min-width:0; z-index:0; }
.fold-sculpture { perspective:1000px; pointer-events:none; }
.fold-sculpture svg { width:100%; height:auto; overflow:visible; transform:rotate(-6deg) rotateX(var(--fold-x,0deg)) rotateY(var(--fold-y,0deg)); transition:transform .5s ease-out; }
.fold-face { transition:transform .6s cubic-bezier(.2,.65,.2,1); }.hero-stage.is-engaged .fold-face { transform:translate(-7px,-10px); }
.hero-bottom { display:grid; grid-template-columns:90px minmax(0,1fr) auto; align-items:center; gap:36px; padding-top:18px; padding-bottom:48px; }
.hero-bottom>p { max-width:390px; font-size:15px; line-height:1.85; }
.hero-bottom .button { min-width:198px; }
.hero-explore { width:64px; height:64px; border:1px solid #787e63; border-radius:50%; display:grid; place-items:center; color:var(--mint); transition:background .25s,color .25s; }
.hero-explore .icon { width:25px; height:25px; }.hero-explore:hover { background:var(--mint); color:var(--paper); }

/* Capabilities form an index you can open, not a repeated set of cards. */
.capabilities { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); align-items:start; gap:10%; padding-block:105px 125px; }
.capabilities-intro { position:sticky; top:130px; }.capabilities-intro h2 { font-size:clamp(36px,4.1vw,58px); margin-top:32px; }.capabilities-intro>p:last-child { font-size:13px; max-width:270px; margin-top:26px; }
.capability { border-top:1px solid var(--line); }.capability:last-child { border-bottom:1px solid var(--line); }
.capability summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:99px; padding:25px 0; cursor:pointer; font-size:clamp(22px,2.2vw,31px); letter-spacing:-.05em; line-height:1.3; transition:color .2s; }
.capability summary::-webkit-details-marker { display:none; }.capability summary::marker { content:''; }.capability[open] summary,.capability summary:hover { color:var(--mint); }
.capability-toggle { position:relative; display:block; width:22px; height:22px; flex:none; }.capability-toggle::before,.capability-toggle::after { content:''; position:absolute; top:10px; left:3px; width:16px; height:1px; background:currentColor; }.capability-toggle::after { transform:rotate(90deg); transition:transform .25s; }.capability[open] .capability-toggle::after { transform:rotate(0); }
.capability-body { padding:0 42px 30px 0; }.capability-body>p { font-size:14px; line-height:1.85; max-width:470px; }.capability-body ul { list-style:none; display:flex; flex-wrap:wrap; gap:6px 20px; padding:0; margin:22px 0 24px; font:10px/1.8 var(--mono); color:var(--muted); }.capability-body li::before { content:'—'; color:var(--mint); margin-right:7px; }
.capability-body .text-link { font-size:11px; }
.capabilities-full { padding-top:36px; }

/* A manifesto is one large composition, with no box around each thought. */
.manifesto { background:#303435; border-block:1px solid #454a4a; padding:68px 0 76px; overflow:hidden; }
.manifesto-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:52px; }.manifesto-sign { color:var(--mint); }.manifesto-sign .icon { width:36px; height:36px; stroke-width:1; }
.manifesto-statement { font-size:clamp(42px,6.5vw,93px); line-height:1.1; letter-spacing:-.068em; }.manifesto-statement>span { display:block; }.manifesto-statement .statement-accent { color:var(--mint); padding-left:8%; }
.manifesto-bottom { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-top:48px; padding-left:8%; }.manifesto-bottom>p { font-size:14px; line-height:1.9; max-width:520px; }.manifesto-bottom .text-link { flex:none; }
.principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; margin-top:70px; padding-top:32px; border-top:1px solid #5b6059; }.principles h3 { font-size:23px; margin-bottom:15px; }.principles p { font-size:12px; }
.process-section { padding-block:96px 110px; }
.process-heading { display:flex; justify-content:space-between; gap:35px; align-items:center; margin-bottom:53px; }.process-heading>h2 { font-size:13px; font-weight:400; letter-spacing:0; }
.process-track { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; }
.process-word { display:flex; align-items:center; justify-content:space-between; padding-bottom:25px; margin-bottom:29px; border-bottom:1px solid var(--line); font-size:clamp(30px,3.6vw,53px); letter-spacing:-.055em; line-height:1.1; }.process-word .icon { color:var(--mint); width:23px; height:23px; stroke-width:1.2; }
.process-track h3 { font-size:16px; line-height:1.4; margin-bottom:14px; max-width:290px; }.process-track p { font-size:12px; line-height:1.85; max-width:320px; }
.invitation { padding:55px 0 70px; border-top:1px solid var(--line); }.invitation>.eyebrow { margin-bottom:36px; }
.invitation-link { display:flex; justify-content:space-between; align-items:center; gap:40px; font-size:clamp(44px,6.2vw,87px); letter-spacing:-.065em; line-height:1.08; }.invitation-link em { color:var(--mint); font-style:normal; }
.invitation-arrow { display:grid; place-items:center; border:1px solid #737b59; width:120px; height:120px; border-radius:50%; flex:none; color:var(--mint); transition:background .25s,color .25s,transform .25s; }.invitation-arrow .icon { width:48px; height:48px; stroke-width:1.1; }.invitation-link:hover .invitation-arrow { background:var(--mint); color:var(--paper); transform:rotate(8deg); }
.invitation-bottom { display:flex; align-items:center; justify-content:space-between; gap:30px; padding-top:30px; font-size:11px; }.invitation-bottom>span { color:var(--mint); }

/* Full-width typographic signature closes the story. */
.footer { background:#202426; border-top:1px solid var(--line); padding:50px 0 0; overflow:hidden; }.footer .brand-logo { width:174px; }.footer-grid { gap:50px; grid-template-columns:1.65fr 1fr .6fr; }.footer-grid>div:first-child>p { max-width:260px; font-size:12px; }.footer-links { font-size:11px; }.footer-links strong { color:var(--muted); font:10px var(--mono); }.footer-links a { min-height:28px; }.footer-bottom { border-top:1px solid var(--line); margin-top:35px; padding-top:23px; font:10px/1.6 var(--mono); }.footer-legal { display:flex; flex-wrap:wrap; gap:22px; }
.footer-signature { display:flex; align-items:center; justify-content:space-between; gap:35px; margin-top:42px; padding-bottom:10px; font:800 clamp(70px,16.3vw,245px)/.86 var(--display); letter-spacing:-.035em; color:#565c51; user-select:none; }.footer-signature>span { align-self:start; display:flex; padding-top:10px; }.footer-signature .icon { width:clamp(28px,6vw,80px); height:auto; stroke-width:.8; color:var(--mint); }
.back-to-top { display:grid; place-items:center; width:44px; height:44px; right:22px; bottom:24px; padding:0; color:var(--mint); border:1px solid #727957; border-radius:50%; background:#25292bf2; box-shadow:none; }.back-to-top .icon { width:18px; height:18px; }.back-to-top:hover { background:var(--mint); color:var(--paper); }

/* Interior pages: large type, a different fold, one precise baseline. */
.page-section { padding:35px 0 90px; }.compact-heading { padding-bottom:0; }.page-heading { display:block; position:relative; padding:10px 0 42px; margin-bottom:48px; border:0; border-bottom:1px solid var(--line); background:none; }
.page-kicker { margin-bottom:53px; }.page-kicker::before { content:'/'; color:var(--mint); padding-right:12px; }
.heading-main { display:grid; grid-template-columns:minmax(0,1fr) 260px; align-items:center; gap:60px; }.page-heading h1 { max-width:990px; font-size:clamp(48px,7.1vw,98px); font-weight:450; line-height:1.04; letter-spacing:-.07em; }
.heading-baseline { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:70px; align-items:start; margin-top:48px; }.heading-rule { display:block; width:65px; height:3px; background:var(--mint); margin-top:10px; }.page-lead { font-size:14px; line-height:1.9; max-width:570px; margin:0; }
.page-motif { justify-self:end; position:relative; height:220px; width:260px; color:var(--mint); }.page-motif>span { position:absolute; width:170px; height:90px; left:28px; top:50px; border:1px solid #a3aa6d77; transform:skewY(-24deg); }.page-motif>span:nth-child(1) { transform:translateY(-34px) skewY(-24deg); }.page-motif>span:nth-child(2) { transform:translateY(-6px) skewY(-24deg); }.page-motif>span:nth-child(3) { transform:translateY(22px) skewY(-24deg); }.page-motif>span:nth-child(4) { transform:translateY(50px) skewY(-24deg); background:#a3aa6d1c; }
.motif-about>span { width:140px; height:140px; left:40px; top:35px; transform:rotate(15deg)!important; border-radius:50%; }.motif-about>span:nth-child(2) { transform:translateX(24px) rotate(15deg)!important; }.motif-about>span:nth-child(3) { transform:translateX(48px) rotate(15deg)!important; }.motif-about>span:nth-child(4) { width:5px; height:5px; top:169px; left:159px; border:0; background:var(--mint); }
.motif-contact>span { width:176px; height:112px; transform:rotate(-14deg)!important; }.motif-contact>span:nth-child(2) { transform:rotate(3deg)!important; }.motif-contact>span:nth-child(3) { transform:rotate(20deg)!important; }.motif-contact>span:nth-child(4) { display:none; }
.motif-articles>span { width:110px; height:160px; top:25px; transform:skewY(-18deg) translateX(0)!important; }.motif-articles>span:nth-child(2) { transform:skewY(-18deg) translateX(24px)!important; }.motif-articles>span:nth-child(3) { transform:skewY(-18deg) translateX(48px)!important; }.motif-articles>span:nth-child(4) { transform:skewY(-18deg) translateX(72px)!important; background:#a3aa6d1c; }
.motif-brand img { display:block; width:220px; height:220px; object-fit:contain; }.motif-privacy { transform:rotate(-12deg); }.motif-privacy>span { border-radius:4px 4px 70px 70px; }
.section-fold { display:none; }

/* A tiny, useful interaction: choose a topic before opening your mail app. */
.contact-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr); gap:12%; }.project-picker h2 { font-size:31px; margin-bottom:29px; }.project-topics { display:flex; flex-wrap:wrap; gap:12px; }.project-topics button { display:flex; align-items:center; gap:20px; min-height:48px; padding:12px 16px; border:1px solid #61665c; border-radius:0; background:transparent; color:var(--ink); font-size:12px; transition:background .2s,color .2s; }.project-topics .icon { width:15px; height:15px; }.project-topics button:hover,.project-topics button[aria-pressed="true"] { background:var(--mint); color:var(--paper); border-color:var(--mint); }
.contact-send { margin-top:45px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 0; border-block:1px solid var(--line); color:var(--mint); font-size:clamp(23px,2.8vw,38px); letter-spacing:-.05em; line-height:1.2; }.contact-send .icon { width:28px; height:28px; }.contact-note { font-size:11px; margin-top:16px; }
.conversation-card { padding:10px 0; border:0; background:none; }.conversation-card ul { list-style:none; padding:0; margin:28px 0 0; }.conversation-card li { padding:18px 0; border-bottom:1px solid var(--line); font-size:13px; color:var(--muted); }.conversation-card li::before { content:"—"; color:var(--mint); margin-right:12px; }

/* Journal, identity library and policy pages. */
.public-empty { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1fr); gap:10%; align-items:center; padding:0 0 20px; background:none; border:0; }.journal-proof { position:relative; display:grid; place-items:center; height:290px; border:1px solid var(--line); background:#2d3132; overflow:hidden; }.journal-proof>span { font:800 220px/.9 var(--display); color:var(--mint); transform:rotate(-12deg); opacity:.68; }.journal-proof>i { position:absolute; inset:30px; border:1px solid #a3aa6d40; transform:rotate(-12deg); }.empty-copy h2 { font-size:40px; margin-top:24px; }.empty-copy>p:not(.eyebrow) { font-size:14px; margin-top:22px; }.empty-copy .text-link { margin-top:23px; }
.blog-index { gap:40px; }.public-post-card { background:none; border:0; border-bottom:1px solid var(--line); border-radius:0; }.public-post-card>div { padding:25px 0; }.public-post-card h2 { font-size:29px; line-height:1.25; }.public-article { width:min(900px,calc(100% - 104px)); padding:55px 0 90px; }.public-article>header { padding-bottom:30px; border-bottom:1px solid var(--line); }.public-article h1 { font-size:clamp(40px,5vw,67px); }.article-body { max-width:730px; margin-inline:auto; }.article-body h2 { font-size:35px; }.article-excerpt { font-size:18px; }.article-cover { border-radius:0; }.article-footer { max-width:730px; margin-inline:auto; }
.brand-lockups { display:grid; grid-template-columns:2fr 1fr; gap:26px; margin-bottom:70px; }.brand-presentation { padding:45px; display:flex; flex-direction:column; justify-content:center; gap:45px; border:1px solid var(--line); background:var(--surface-deep); margin:0; }.brand-presentation img { width:100%; }.brand-symbol-card { padding:28px; background:#353a30; display:grid; place-items:center; gap:20px; }.brand-symbol-card img { width:160px; height:190px; object-fit:contain; }.brand-symbol-card>span { font:10px var(--mono); color:var(--muted); }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:45px; margin-bottom:36px; }.section-heading h2 { font-size:40px; margin-top:25px; }.section-heading>p { font-size:13px; max-width:290px; }.brand-swatches { gap:0; }.brand-swatch { min-height:200px; padding:26px; border:1px solid #73795c; border-radius:0; }.brand-swatch strong { font-size:19px; font-weight:500; }.brand-swatch span { font:12px var(--mono); }.swatch-0 { background:#25292b; color:#f1efe7; }.swatch-1 { background:#a3aa6d; color:#25292b; }.swatch-2 { background:#f1efe7; color:#25292b; }
.brand-typography { display:flex; justify-content:space-between; align-items:center; gap:45px; border-block:1px solid var(--line); padding:45px 0; }.brand-typography h2 { font-family:var(--display); text-transform:uppercase; font-size:40px; font-weight:800; letter-spacing:-.025em; margin-top:24px; }.brand-typography p:not(.eyebrow) { font-size:13px; max-width:530px; margin-top:22px; }.brand-typography>span { font-size:110px; letter-spacing:-.07em; color:var(--mint); }.brand-download-row { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:35px; }.brand-download-row>p { font-size:13px; }
.privacy-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:9%; align-items:start; }.privacy-navigation { position:sticky; top:120px; border-top:1px solid var(--line); padding-top:25px; }.privacy-navigation>.eyebrow { margin-bottom:22px; }.privacy-navigation>a { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:14px 0; border-bottom:1px solid var(--line); font-size:11px; color:var(--muted); }.privacy-navigation .icon { width:14px; height:14px; }.prose { max-width:720px; }.prose section { padding-bottom:32px; margin-bottom:32px; border-bottom:1px solid var(--line); }.prose .feature-icon { display:none; }.prose h2 { font-size:28px; }.prose p { font-size:14px; }

/* Motion has a beginning and an end; nothing flashes or loops behind copy. */
@media (prefers-reduced-motion:no-preference) {
 .hero-line { animation:type-arrive .85s cubic-bezier(.2,.75,.2,1) both; }.hero-line-accent { animation-delay:.1s; }.fold-sculpture { animation:fold-arrive 1.2s cubic-bezier(.2,.75,.2,1) both; }.hero-bottom { animation:fade-arrive 1s .2s both; }
 .capability[open] .capability-body { animation:fade-arrive .3s both; }
 .reveal-pending { opacity:0; transform:translateY(20px); transition:opacity .7s,transform .7s cubic-bezier(.2,.75,.2,1); }.reveal-visible { opacity:1; transform:none; }
}
@keyframes type-arrive { from { opacity:0; transform:translateY(35px); } to { opacity:1; transform:none; } }
@keyframes fold-arrive { from { opacity:0; transform:translate(25px,-15px) rotate(8deg); } to { opacity:1; transform:none; } }
@keyframes fade-arrive { from { opacity:0; } to { opacity:1; } }

@media (max-width:1100px) {
 .wrap { width:calc(100% - 72px); }.header nav { gap:25px; }.hero-bottom { gap:25px; grid-template-columns:70px 1fr auto; }.hero-bottom>p { max-width:340px; font-size:14px; }
 .capabilities { gap:7%; }.capabilities-intro h2 { font-size:43px; }.capability summary { font-size:26px; }.process-track { gap:26px; }.process-word { font-size:3.6vw; }.heading-main { grid-template-columns:minmax(0,1fr) 220px; gap:30px; }.page-motif { transform:scale(.85); transform-origin:right center; width:260px; }.page-heading h1 { font-size:7.1vw; }.contact-layout { gap:8%; }
}
@media (max-width:960px) {
 .header { height:76px; }.brand-logo { width:168px; }.header nav,.header-actions { display:none; }.menu-toggle { display:block; }.menu-backdrop { top:76px; }
 .hero-title { margin-top:36px; padding-bottom:24px; }.hero-title h1 { font-size:6.8vw; }.hero-bottom { grid-template-columns:50px minmax(0,1fr) auto; gap:24px; padding-bottom:30px; }.hero-bottom>p { font-size:12px; }.hero-explore { width:48px; height:48px; }.hero-bottom .button { min-width:0; font-size:11px; padding:14px 16px; gap:18px; }
 .capabilities { padding-block:72px 80px; gap:6%; grid-template-columns:1fr 1.1fr; }.capabilities-intro { top:110px; }.capabilities-intro h2 { font-size:35px; }.capability summary { font-size:23px; min-height:86px; }.capability-body { padding-right:10px; }.capability-body>p { font-size:13px; }.capabilities-intro>p:last-child { font-size:12px; }
 .manifesto { padding-block:52px 60px; }.manifesto-top { margin-bottom:40px; }.manifesto-statement { font-size:6.7vw; }.manifesto-bottom { gap:35px; padding-left:4%; margin-top:35px; }.manifesto-bottom>p { font-size:13px; max-width:440px; }.manifesto-statement .statement-accent { padding-left:4%; }.principles { gap:27px; margin-top:48px; }.principles h3 { font-size:21px; }
 .process-section { padding-block:72px 80px; }.process-heading { margin-bottom:37px; }.process-word { font-size:3.7vw; gap:12px; }.process-word .icon { width:17px; }.process-track h3 { font-size:14px; }.process-track p { font-size:11px; }.invitation { padding-block:45px 60px; }.invitation-link { font-size:6.6vw; }.invitation-arrow { width:90px; height:90px; }.invitation-arrow .icon { width:36px; height:36px; }
 .footer-grid { gap:35px; }.footer-signature { font-size:16vw; margin-top:38px; }.footer-signature .icon { width:5vw; }
 .heading-main { grid-template-columns:minmax(0,1fr) 180px; gap:15px; }.page-heading h1 { font-size:7.2vw; }.page-motif { width:260px; transform:scale(.72); transform-origin:right center; }.heading-baseline { gap:36px; }.page-lead { font-size:13px; }.page-kicker { margin-bottom:30px; }.page-section { padding-top:28px; }.contact-layout { gap:7%; grid-template-columns:1.2fr .8fr; }.project-picker h2 { font-size:28px; }.project-topics { gap:9px; }.project-topics button { font-size:11px; padding:11px 12px; gap:12px; }.contact-send { font-size:26px; }.conversation-card li { font-size:12px; }
 .public-empty { gap:7%; }.journal-proof { height:245px; }.empty-copy h2 { font-size:33px; }.privacy-layout { grid-template-columns:190px minmax(0,1fr); gap:6%; }.brand-presentation { padding:30px; }.brand-symbol-card img { width:135px; height:155px; }.brand-typography h2 { font-size:32px; }
}
@media (max-width:680px) {
 .wrap { width:calc(100% - 40px); }.header { height:70px; }.brand-logo { width:150px; }.menu-backdrop { top:70px; }.mobile-menu { padding-inline:20px; max-height:calc(100dvh - 70px); }.eyebrow,.page-kicker { font-size:10px; }
 /* Put the message first; keep the fold beside supporting copy, not on a separate empty row. */
 .hero-stage { padding-bottom:0; }
 .hero-layout { display:grid; grid-template-columns:minmax(0,1fr) 104px; align-items:center; gap:22px 16px; padding-top:36px; padding-bottom:32px; }
 .hero-title,.hero-bottom { display:contents; }
 .hero-title h1 { grid-column:1/-1; grid-row:1; margin:0; font-size:9.3vw; letter-spacing:-.035em; line-height:1.2; }
 .hero-line:first-child { font-size:1.23em; }
 .hero-title .fold-sculpture { grid-column:2; grid-row:2; width:104px; margin:0; }
 .hero-bottom>p { grid-column:1; grid-row:2; margin:0; max-width:none; font-size:13px; line-height:1.8; }
 .hero-explore { display:none; }
 .hero-bottom .button { grid-column:1/-1; grid-row:3; justify-self:stretch; min-height:50px; font-size:12px; padding:14px 18px; }

 .capabilities { display:block; padding-block:62px 70px; }.capabilities-intro { position:static; margin-bottom:35px; }.capabilities-intro h2 { font-size:39px; margin-top:24px; }.capabilities-intro>p:last-child { font-size:13px; max-width:320px; margin-top:20px; }.capability summary { min-height:81px; padding-block:23px; font-size:25px; letter-spacing:-.05em; }.capability-body { padding:0 20px 27px 0; }.capability-body>p { font-size:13px; }.capability-body ul { font-size:10px; margin-block:18px 21px; }.capabilities-full { padding-top:0; }
 .manifesto { padding-block:40px 46px; }.manifesto-top { margin-bottom:35px; }.manifesto-sign .icon { width:27px; height:27px; }.manifesto-statement { font-size:clamp(32px,9.5vw,57px); letter-spacing:-.065em; line-height:1.18; }.manifesto-statement>span { text-wrap:initial; }.manifesto-statement .statement-accent { padding-left:0; }.manifesto-bottom { display:block; padding:0; margin-top:28px; }.manifesto-bottom>p { font-size:13px; }.manifesto-bottom .text-link { margin-top:22px; }.principles { display:block; margin-top:35px; padding-top:5px; }.principles article { padding:23px 0; border-bottom:1px solid var(--line); }.principles article:last-child { border-bottom:0; padding-bottom:0; }.principles h3 { font-size:24px; margin-bottom:10px; }.principles p { font-size:12px; }
 .process-section { padding-block:60px 65px; }.process-heading { display:block; margin-bottom:30px; }.process-heading>h2 { margin-top:17px; font-size:13px; }.process-track { grid-template-columns:1fr; gap:33px; }.process-word { font-size:44px; padding-bottom:19px; margin-bottom:21px; }.process-word .icon { width:24px; height:24px; }.process-track h3 { font-size:16px; max-width:none; margin-bottom:12px; }.process-track p { font-size:13px; max-width:440px; }
 .invitation { padding-block:37px 48px; }.invitation>.eyebrow { margin-bottom:27px; }.invitation-link { align-items:end; gap:20px; font-size:clamp(33px,8.8vw,54px); }.invitation-arrow { width:48px; height:48px; margin-bottom:6px; }.invitation-arrow .icon { width:24px; height:24px; }.invitation-bottom { padding-top:24px; display:block; }.invitation-bottom>span { display:none; }.invitation-bottom>p { font-size:11px; }
 .footer { padding-top:38px; }.footer-grid { grid-template-columns:1fr 1fr; gap:26px; }.footer-grid>div:first-child { grid-column:1/-1; }.footer .brand-logo { width:175px; }.footer-grid>div:first-child>p { max-width:none; font-size:11px; }.footer-links { font-size:11px; }.footer-bottom { font-size:9px; margin-top:27px; gap:17px; }.footer-legal { gap:16px; }.footer-signature { font-size:15.9vw; gap:12px; margin-top:31px; padding-bottom:14px; }.footer-signature>span { padding-top:0; }.footer-signature .icon { width:6vw; }.back-to-top { width:40px; height:40px; right:14px; bottom:calc(16px + env(safe-area-inset-bottom)); }
 .page-section { padding:27px 0 63px; }.compact-heading { padding-bottom:0; }.page-heading { padding-top:0; padding-bottom:28px; margin-bottom:33px; }.page-kicker { margin-bottom:28px; }.heading-main { display:block; position:relative; padding-bottom:0; }.page-heading h1 { font-size:clamp(43px,12.5vw,72px); letter-spacing:-.065em; line-height:1.04; position:relative; z-index:1; max-width:100%; }.page-motif { position:absolute; right:0; top:-70px; height:220px; width:260px; transform:scale(.28); transform-origin:top right; }.motif-brand img { max-width:none; }.heading-baseline { display:block; margin-top:29px; }.heading-rule { width:40px; height:2px; margin-bottom:20px; }.page-lead { font-size:13px; line-height:1.85; max-width:470px; }
 .contact-layout { grid-template-columns:1fr; gap:37px; }.project-picker h2 { font-size:27px; margin-bottom:22px; }.project-topics button { min-height:48px; padding:12px 14px; font-size:11px; }.contact-send { margin-top:30px; padding-block:22px; font-size:27px; }.contact-send .icon { width:24px; height:24px; }.conversation-card { padding-top:6px; }.conversation-card ul { margin-top:17px; }.conversation-card li { font-size:13px; padding-block:15px; }
 .public-empty { display:flex; flex-direction:column; align-items:stretch; gap:32px; }.journal-proof { height:220px; }.journal-proof>span { font-size:185px; }.journal-proof>i { inset:26px 40px; }.empty-copy h2 { font-size:33px; margin-top:23px; }.empty-copy>p:not(.eyebrow) { font-size:13px; }.blog-index { grid-template-columns:1fr; gap:26px; }.public-post-card h2 { font-size:28px; }.public-article { width:calc(100% - 40px); padding-top:30px; }.public-article h1 { font-size:37px; }.article-excerpt { font-size:16px; }.article-body { font-size:15px; }.article-body h2 { font-size:30px; }
 .brand-lockups { grid-template-columns:1fr; gap:18px; margin-bottom:40px; }.brand-presentation { padding:28px 24px; gap:30px; }.brand-symbol-card { grid-template-columns:90px 1fr; gap:20px; padding:23px; }.brand-symbol-card img { width:90px; height:100px; }.section-heading { display:block; }.section-heading h2 { font-size:32px; }.section-heading>p { max-width:none; margin-top:20px; font-size:12px; }.brand-swatches { grid-template-columns:1fr; }.brand-swatch { min-height:145px; padding:25px; }.brand-swatch strong { font-size:19px; }.brand-swatch .icon { margin-top:15px; }.brand-typography { display:block; position:relative; padding-block:30px; }.brand-typography h2 { font-size:29px; }.brand-typography>span { display:none; }.brand-typography p:not(.eyebrow) { font-size:13px; }.brand-download-row { flex-direction:column; align-items:start; gap:23px; }.brand-download-row>p { font-size:13px; }
 .privacy-layout { display:block; }.privacy-navigation { position:static; margin-bottom:34px; }.privacy-navigation>a { font-size:12px; }.prose h2 { font-size:27px; }.prose p { font-size:13px; }.prose>.text-link { font-size:11px; overflow-wrap:anywhere; }
}
@media (max-width:360px) {
 .wrap { width:calc(100% - 32px); }.hero-title h1 { font-size:9.2vw; }.hero-layout { grid-template-columns:minmax(0,1fr) 88px; gap:20px 12px; padding-top:30px; }.hero-title .fold-sculpture { width:88px; }.capability summary { font-size:23px; }.invitation-link { font-size:8.8vw; gap:14px; }.invitation-arrow { width:40px; height:40px; }.page-heading h1 { font-size:12vw; }.project-topics { gap:8px; }.project-topics button { font-size:10px; padding-inline:11px; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; } *,*::before,*::after { animation:none!important; transition:none!important; }.reveal-pending { opacity:1; transform:none; }
}
.analytics-consent {
  position: fixed;
  z-index: 90;
  inset: auto 20px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  max-width: 820px;
  margin-inline: auto;
  padding: 20px 23px;
  color: #f1efe7;
  background: #25292b;
  border: 1px solid #69715a;
  border-radius: 16px;
  box-shadow: 0 16px 40px #10151855;
}
.analytics-consent[hidden] { display: none; }
.analytics-consent strong { display: block; font-size: 15px; }
.analytics-consent p { margin: 6px 0 0; color: #c9cbc2; font-size: 12px; line-height: 1.6; }
.analytics-consent a { color: #c9d49a; text-underline-offset: 3px; }
.analytics-consent-actions { display: flex; flex: none; gap: 8px; }
.analytics-consent-actions button {
  min-height: 42px;
  padding: 0 14px;
  color: #f1efe7;
  background: transparent;
  border: 1px solid #69715a;
  border-radius: 9px;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
}
.analytics-consent-actions button:last-child { color: #25292b; background: #a3aa6d; border-color: #a3aa6d; }
.analytics-consent-actions button:focus-visible { outline: 2px solid #f1efe7; outline-offset: 3px; }
.privacy-preference-button {
  margin-top: 12px;
  padding: 10px 14px;
  color: #25292b;
  background: #c3c99c;
  border: 0;
  border-radius: 8px;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
}
.privacy-preference-button:focus-visible { outline: 2px solid #a3aa6d; outline-offset: 3px; }
@media (max-width: 600px) {
  .analytics-consent { inset: auto 12px 12px; display: block; padding: 16px; }
  .analytics-consent-actions { margin-top: 14px; }
  .analytics-consent-actions button { flex: 1; }
}
