:root{--paper: #efe8d8;--paper-2: #e4dcc8;--ink: #141210;--ink-soft: #3c3731;--mute: #7a7268;--line: rgba(20, 18, 16, .12);--line-strong: rgba(20, 18, 16, .22);--thread: #d4ff3f;--thread-ink: #172000;--night: #11100e;--night-2: #1c1a17;--cream: #f7f2e7;--shadow: 0 24px 60px rgba(20, 18, 16, .14);--font-display: "Bricolage Grotesque", sans-serif;--font-serif: "Instrument Serif", serif;--font-sans: "Sora", sans-serif;--pad: clamp(1.25rem, 4vw, 3.5rem);--max: 1280px;--nav-h: 72px;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 12px)}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}::selection{background:var(--thread);color:var(--thread-ink)}.skip{position:absolute;left:1rem;top:-4rem;z-index:100;background:var(--ink);color:var(--paper);padding:.6rem 1rem}.skip:focus{top:1rem}.wrap{width:min(var(--max),calc(100% - var(--pad) * 2));margin-inline:auto}.eyebrow{display:flex;align-items:center;gap:.75rem;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);font-weight:500}.eyebrow:before{content:"";width:28px;height:1px;background:var(--thread)}h1,h2,h3,.display{font-family:var(--font-display);font-weight:680;letter-spacing:-.045em;line-height:.92;margin:0}.serif{font-family:var(--font-serif);font-style:italic;font-weight:400;letter-spacing:-.02em}.nav{position:fixed;inset:0 0 auto;z-index:50;height:var(--nav-h);display:flex;align-items:center}.nav.is-scrolled{mix-blend-mode:normal;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;width:min(var(--max),calc(100% - var(--pad) * 2))}.brand{display:flex;align-items:center;gap:.7rem;font-family:var(--font-display);font-weight:760;letter-spacing:-.06em;font-size:1.35rem}.mark{width:22px;height:22px}.nav-links{display:flex;align-items:center;gap:1.6rem}.nav-links a:not(.btn){font-size:.86rem;color:var(--ink-soft);position:relative}.nav-links a:not(.btn):after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.nav-links a:not(.btn):hover:after{transform:scaleX(1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:44px;padding:.7rem 1.05rem;border-radius:999px;background:var(--ink);color:var(--paper);font-size:.84rem;font-weight:500;transition:transform .35s var(--ease),background .25s ease}.btn:hover{transform:translateY(-1px);background:#000}.btn-thread{background:var(--thread);color:var(--thread-ink)}.btn-thread:hover{background:#e1ff73}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line-strong)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.hero{position:relative;display:flex;align-items:center;min-height:100svh;padding:calc(var(--nav-h) + 1.6rem) 0 3.2rem;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center}.kicker{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem 1rem;margin-bottom:1.6rem;color:var(--ink-soft);font-size:.9rem}.dot{width:7px;height:7px;border-radius:50%;background:var(--thread);box-shadow:0 0 0 6px color-mix(in srgb,var(--thread) 22%,transparent)}.hero h1{font-size:clamp(3.4rem,9.4vw,8.4rem);max-width:11ch}.hero h1 em{font-family:var(--font-serif);font-style:italic;font-weight:400;letter-spacing:-.03em}.hero-copy{margin-top:1.8rem;max-width:36rem;font-size:1.08rem;color:var(--ink-soft)}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.define{margin-top:3.2rem;padding-top:1.4rem;border-top:1px solid var(--line);display:grid;grid-template-columns:4.2rem 1fr;gap:1.2rem 1.2rem;max-width:34rem;font-size:.92rem}.define dt{font-family:var(--font-display);font-weight:700;letter-spacing:-.04em}.define dd{margin:0;color:var(--ink-soft)}.loom{position:relative;height:min(68vh,620px);border:1px solid var(--line);border-radius:28px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 40%,transparent),transparent 30%),var(--paper-2)}.loom svg{width:100%;height:100%;display:block}.loom-caption{position:absolute;left:1.2rem;bottom:1.1rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}.ticker{border-block:1px solid var(--line);background:var(--ink);color:var(--paper);overflow:hidden;padding:.95rem 0}.ticker-track{display:flex;gap:2.4rem;width:max-content;animation:marquee 28s linear infinite;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase}.ticker-track span{display:inline-flex;align-items:center;gap:2.4rem;white-space:nowrap}.ticker-track i{font-style:normal;color:var(--thread)}@keyframes marquee{to{transform:translate(-50%)}}.section{padding:clamp(4.5rem,10vw,8.5rem) 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(2rem,5vw,3.5rem)}.section-head h2{font-size:clamp(2.4rem,5.6vw,4.6rem)}.section-head p{max-width:28rem;margin:0;color:var(--ink-soft)}.work-list{display:grid;gap:1.25rem}.case{position:relative;display:grid;min-height:min(64vh,640px);border-radius:28px;overflow:hidden;isolation:isolate}.case-dopelist{background:radial-gradient(circle at 80% 20%,rgba(212,255,63,.18),transparent 28%),linear-gradient(160deg,#17150f,#0d0c0a 70%);color:var(--cream);grid-template-columns:1fr 1fr}.case-cetres{color:var(--cream);grid-template-columns:1.05fr .95fr}.case-media,.case-body{min-width:0}.case-body{padding:clamp(1.6rem,4vw,3.4rem);display:flex;flex-direction:column;justify-content:center;z-index:1}.case-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.1rem 0 1.5rem}.tag{border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:999px;padding:.28rem .7rem;font-size:.72rem;letter-spacing:.04em}.case h3{font-size:clamp(2.4rem,5vw,4.4rem)}.case p{max-width:34rem;color:color-mix(in srgb,currentColor 72%,transparent);font-size:1.02rem}.case-meta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}.case-media{position:relative;display:grid;place-items:center;padding:2rem 1.5rem 0}.phone{width:min(320px,72%);filter:drop-shadow(0 30px 50px rgba(0,0,0,.45));transform:rotate(-6deg) translateY(24px);transition:transform .7s var(--ease)}.case:hover .phone{transform:rotate(-2deg) translateY(8px)}.case-bg{position:absolute;inset:0;z-index:0}.case-bg img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.05);transform:scale(1.04);transition:transform 1.1s var(--ease)}.case:hover .case-bg img{transform:scale(1.1)}.case-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0c0e10c7,#0c0e106b 52%,#0c0e102e),linear-gradient(180deg,#0c0e1026,#0c0e1073)}.cetres-logo{width:min(220px,60%);height:auto;background:#fff;padding:.7rem .9rem;border-radius:8px}.ofici{background:var(--night);color:var(--cream)}.ofici .eyebrow{color:color-mix(in srgb,var(--cream) 55%,transparent)}.ofici .section-head p{color:color-mix(in srgb,var(--cream) 68%,transparent)}.craft-list{display:grid;border-top:1px solid rgba(247,242,231,.12)}.craft{display:grid;grid-template-columns:4.5rem 1fr auto;gap:1.4rem;align-items:start;padding:1.7rem 0;border-bottom:1px solid rgba(247,242,231,.12);transition:color .3s ease}.craft-n{font-family:var(--font-serif);font-style:italic;font-size:1.4rem;color:var(--thread)}.craft h3{font-size:clamp(1.8rem,3.4vw,2.8rem);margin-bottom:.45rem}.craft p{margin:0;max-width:46rem;color:color-mix(in srgb,var(--cream) 64%,transparent)}.craft-arrow{color:var(--thread);opacity:0;transform:translate(-8px);transition:.35s var(--ease);font-size:1.4rem;align-self:center}.craft:hover .craft-arrow{opacity:1;transform:none}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.step{background:var(--cream);border:1px solid var(--line);border-radius:22px;padding:1.4rem 1.3rem 1.5rem;min-height:220px;display:flex;flex-direction:column;justify-content:space-between}.step span{font-family:var(--font-serif);font-style:italic;color:var(--mute)}.step h3{font-size:1.7rem;margin:1.4rem 0 .5rem}.step p{margin:0;color:var(--ink-soft);font-size:.94rem}.contact{position:relative}.contact h2{font-size:clamp(3.4rem,10vw,8.8rem);margin:.4rem 0 .8rem}.mail{font-family:var(--font-display);font-size:clamp(1.4rem,3.4vw,2.6rem);letter-spacing:-.045em;background-image:linear-gradient(var(--ink),var(--ink));background-position:0 92%;background-repeat:no-repeat;background-size:100% 2px}.mail:hover{background-image:linear-gradient(var(--thread),var(--thread))}.contact-note{margin-top:1.2rem;color:var(--ink-soft);max-width:34rem}.contact-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.footer{border-top:1px solid var(--line);padding:1.4rem 0 1.8rem;font-size:.84rem;color:var(--mute)}.footer .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.lost{min-height:100svh;display:grid;place-items:center;text-align:center;padding:4rem 1.5rem}.lost h1{font-size:clamp(4rem,14vw,10rem)}.reveal{animation:rise .9s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}.loom .weft{stroke-dasharray:720;stroke-dashoffset:720;animation:weave 4.8s var(--ease) infinite}@keyframes weave{0%{stroke-dashoffset:720}45%,70%{stroke-dashoffset:0}to{stroke-dashoffset:-720}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track,.loom .weft,.reveal,.phone,.case-bg img{animation:none;transition:none}}@media(max-width:920px){.hero{display:block;min-height:auto;padding-bottom:2rem}.hero-grid,.case-dopelist,.case-cetres,.steps,.craft{grid-template-columns:1fr}.loom{height:200px;order:-1}.cetres-logo{display:none}.case-media{padding-bottom:1.4rem}.nav-links a:not(.btn){display:none}.case{min-height:auto}.phone{width:min(240px,62%);transform:rotate(-4deg) translateY(18px)}.craft-arrow{display:none}.section-head{flex-direction:column;align-items:start}}@media(max-width:560px){.hero{padding-top:calc(var(--nav-h) + 1.4rem)}.define{grid-template-columns:1fr;gap:.25rem 0}.define dt+dt{margin-top:.9rem}}
