*,::before,::after{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{background:transparent}svg{display:block}h1,h2,h3,p,figure{margin:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}




@font-face{font-family:'Cabinet Grotesk';src:url('fonts/cabinet-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Cabinet Grotesk';src:url('fonts/cabinet-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Cabinet Grotesk';src:url('fonts/cabinet-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Cabinet Grotesk';src:url('fonts/cabinet-800.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Cabinet Grotesk';src:url('fonts/cabinet-900.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}
:root{--background:#141414;--foreground:#f5f5f0;--card:#1c1e18;--card-foreground:#f5f5f0;--popover:#171913;--popover-foreground:#f5f5f0;--primary:#d1a32a;--primary-foreground:#141414;--secondary:#262820;--secondary-foreground:#f5f5f0;--muted:#262820;--muted-foreground:#b0b3a5;--accent:#d1a32a;--accent-foreground:#141414;--destructive:#ff7d7d;--border:#f5f5f018;--input:#f5f5f025;--ring:#d1a32a;--radius:2rem;--paper:#f4f3ef;--ink:#141414;--ease:cubic-bezier(.22,.8,.2,1);--page-pad:clamp(1rem,4vw,4rem);--layer-nav:30;--layer-cursor:40;--layer-modal:50}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:8rem}
body{margin:0;background:var(--background);color:var(--foreground);font-family:'Cabinet Grotesk',sans-serif;font-weight:500;-webkit-font-smoothing:antialiased}
::selection{background:var(--primary);color:var(--ink)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
button{border:0}
button:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:6px}
.contact a:focus-visible,.service-trigger:focus-visible{outline-color:var(--ink)}
img{display:block;width:100%;height:100%;object-fit:cover}
p,h1,h2,h3,blockquote{margin:0}
main{overflow-x:hidden;width:100%;max-width:100%}
.site-root::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:5;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'/%3E%3C/svg%3E")}
.skip-link{position:fixed;top:.5rem;left:1rem;z-index:60;background:var(--primary);color:var(--ink);padding:1rem;border-radius:1rem;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;background:var(--primary);transform:scaleX(0);transform-origin:left;z-index:var(--layer-nav)}
.navigation{position:fixed;top:1.5rem;left:var(--page-pad);right:var(--page-pad);z-index:var(--layer-nav);display:flex;align-items:center;justify-content:space-between;border-radius:6rem;padding:.75rem 1.5rem;background:#15170eb3;backdrop-filter:blur(24px);box-shadow:inset 0 1px 0 #fff1;max-width:1600px;margin:auto}
.wordmark{font-size:2rem;font-weight:900;letter-spacing:-.06em;line-height:1.2}
.wordmark-period{color:var(--primary)}
.desktop-nav{display:flex;align-items:center;gap:2.5rem;font-size:.95rem}
.desktop-nav>a{transition:color .4s var(--ease)}
.desktop-nav>a:hover{color:var(--primary)}
.desktop-nav .nav-contact{display:flex;gap:1.5rem;align-items:center;padding:.4rem .4rem .4rem 1.2rem;border-radius:3rem;background:var(--paper);color:var(--ink)}
.desktop-nav .nav-contact:hover{color:var(--ink);background:var(--primary)}
.icon-island{display:inline-flex;align-items:center;justify-content:center;flex:none;width:2rem;height:2rem;border-radius:50%;font-size:1.3rem;font-weight:400;background:#14141412;transition:transform .6s var(--ease)}
.pill:hover .icon-island,.nav-contact:hover .icon-island{transform:rotate(90deg) scale(1.08)}
.menu-button{display:none;position:relative;width:2.75rem;height:2.75rem;background:transparent}
.menu-button span{position:absolute;height:1px;width:1.5rem;background:var(--foreground);left:.6rem;transition:transform .5s var(--ease)}
.menu-button span:first-child{top:1.1rem}.menu-button span:last-child{top:1.6rem}
.menu-button[data-state=open] span:first-child{transform:translateY(.25rem) rotate(45deg)}
.menu-button[data-state=open] span:last-child{transform:translateY(-.25rem) rotate(-45deg)}
.menu-overlay[data-slot=dialog-content]{inset:0;left:0;top:0;transform:none!important;width:100%;max-width:none;min-height:100dvh;border:0;border-radius:0;background:#141414ef;backdrop-filter:blur(32px);padding:2rem;display:flex;flex-direction:column;gap:4rem;box-shadow:none;z-index:var(--layer-modal)}
.menu-top{display:flex;justify-content:space-between;align-items:center}.menu-links{display:flex;flex-direction:column;margin:auto 0}
.menu-links a{font-size:clamp(2.5rem,8vw,5rem);letter-spacing:-.04em;display:flex;justify-content:space-between;align-items:center;animation:menu-in .9s var(--ease) both;overflow:hidden}
.menu-links a span{font-size:2rem;color:var(--primary)}
.menu-location{color:var(--muted-foreground)}
@keyframes menu-in{from{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}
.hero{padding:11rem var(--page-pad) 0;position:relative;background:radial-gradient(ellipse at 50% 35%,#2a272066,transparent 65%)}
.hero-eyebrow{text-align:center;font-size:.75rem;letter-spacing:.15em;color:var(--muted-foreground);margin-bottom:2.25rem}
.hero-title{width:100%;max-width:72rem;margin:0 auto;text-align:center;font-size:clamp(3rem,8.2vw,8.5rem);font-weight:800;line-height:1.02;letter-spacing:-.065em}
.line-mask{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}.line-mask>span{display:block}
.hero-title .second-line{color:var(--primary)}
.hero-bottom{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:3rem auto 3.5rem;gap:2rem}
.hero-bottom>p:first-child{font-size:1.1rem;line-height:1.5}
.hero-actions{display:flex;gap:.75rem}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:1.5rem;border-radius:4rem;font-size:1rem;line-height:1.5;padding:.6rem .6rem .6rem 1.5rem;min-height:3.25rem;transition:background .6s var(--ease),color .6s var(--ease),box-shadow .6s var(--ease);white-space:nowrap}
.pill:active{transform:scale(.98)}
.pill.primary{background:var(--primary);color:var(--ink)}.pill.primary:hover{background:var(--paper)}
.pill.secondary{padding:.8rem 1.75rem;background:var(--secondary);color:var(--foreground);box-shadow:inset 0 0 0 1px #fff1}.pill.secondary:hover{background:#36392d}
.scroll-note{text-align:right;font-size:.75rem;line-height:1.5;letter-spacing:.09em;color:var(--muted-foreground)}
.hero-visual-shell{padding:.5rem;background:#f5f5f009;border-radius:2.5rem;box-shadow:inset 0 0 0 1px #ffffff0a;max-width:1600px;margin:0 auto}
.hero-visual{aspect-ratio:16/8.5;overflow:hidden;position:relative;border-radius:2rem;background:var(--primary);transform-origin:center bottom}
.hero-visual img{object-position:center center;height:115%;margin-top:-4%}
.visual-caption{position:absolute;bottom:2rem;left:2rem;right:2rem;display:flex;justify-content:space-between;font-size:.75rem;color:var(--ink);letter-spacing:.08em}
.section-space{padding:clamp(6rem,12vw,12rem) var(--page-pad)}
.section-top{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:4rem}
.micro-label{font-size:.75rem;letter-spacing:.13em;font-weight:700;line-height:1.5}.section-note{font-size:1rem;color:var(--muted-foreground)}
.projects{padding-bottom:9rem}
.projects-layout{display:grid;grid-template-columns:5fr 7fr;gap:6vw;position:relative}
.projects-heading{align-self:start;padding-top:1rem}
.projects-heading h2{font-size:clamp(3rem,4.4vw,5.5rem);font-weight:700;line-height:1.05;letter-spacing:-.055em}
.projects-heading h2>span{color:var(--muted-foreground)}
.projects-heading>p{font-size:1.1rem;line-height:1.6;margin-top:2rem;color:var(--muted-foreground)}
.project-counter{display:flex;align-items:baseline;gap:1rem;margin-top:4rem;color:var(--muted-foreground);font-size:1rem}
.project-counter>span:first-child{font-size:5rem;font-weight:700;letter-spacing:-.07em;color:var(--foreground)}
.projects-heading>.concept-note{font-size:.8rem;margin-top:1rem}
.project-gallery{display:flex;flex-direction:column;gap:6rem}
.project-shell{padding:.5rem;border-radius:2rem;background:#fff06;box-shadow:inset 0 0 0 1px #ffffff0a}
.project-image{display:block;width:100%;aspect-ratio:4/4.2;position:relative;overflow:hidden;border-radius:1.5rem;background:var(--primary);text-align:left}
.project-image img{transition:transform 1s var(--ease)}.project-image:hover img,.project-image:focus-visible img{transform:scale(1.055)}
.project-image img[src*=chrome]{object-position:68% center}
.project-open{position:absolute;bottom:1.5rem;right:1.5rem;display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;background:var(--ink);color:var(--foreground);font-size:1.75rem;transition:transform .6s var(--ease)}
.project-image:hover .project-open{transform:rotate(90deg)}
.project-meta{padding:1.5rem 1rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.project-meta p{font-size:.85rem;color:var(--muted-foreground);margin-bottom:.5rem}.project-meta h3{font-size:1.65rem;font-weight:700;letter-spacing:-.035em}.project-index{font-size:.85rem;color:var(--muted-foreground)}
.project-dialog[data-slot=dialog-content]{width:min(960px,calc(100% - 2rem));max-width:960px!important;max-height:90dvh;overflow:auto;padding:.5rem;gap:0;background:var(--ink);border:0;border-radius:2rem;box-shadow:inset 0 0 0 1px #fff2}
.project-dialog>img{height:auto;aspect-ratio:16/8.5;border-radius:1.5rem;object-fit:cover}
.dialog-copy{padding:2rem 2.5rem 2.5rem}.dialog-copy [data-slot=dialog-title]{font-size:clamp(2rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.04em;margin:1rem 0}
.dialog-copy [data-slot=dialog-description]{font-size:1.125rem;line-height:1.6;color:var(--muted-foreground);max-width:700px;margin-bottom:2rem}
.dialog-close{position:absolute;top:1.5rem;right:1.5rem;z-index:1;background:var(--ink)!important;color:var(--foreground)!important}
.marquee-region{padding:3rem 0;background:var(--primary);color:var(--ink);overflow:hidden;transform:rotate(-2deg) scale(1.03);margin:2rem 0}
.marquee-track{display:flex;width:max-content}.marquee-sequence{display:flex;align-items:center;flex-shrink:0;gap:3rem;padding-right:3rem;white-space:nowrap;font-size:clamp(2.5rem,5vw,5rem);font-weight:700;letter-spacing:-.04em}
.marquee-mark{font-size:.65em;font-family:serif;font-weight:400}
.studio{padding-top:12rem}.scrub-text{font-size:clamp(2.5rem,5.4vw,6rem);font-weight:700;line-height:1.14;letter-spacing:-.045em;max-width:1300px}.scrub-text span{display:inline}
.studio-bottom{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;gap:4rem;margin-top:4rem}.studio-signature{font-size:5rem;line-height:1;font-weight:900;letter-spacing:-.09em;color:var(--primary)}
.studio-bottom>p{font-size:1.15rem;line-height:1.6;color:var(--muted-foreground)}
.text-link{display:flex;align-items:center;gap:1.5rem;font-size:1rem;justify-self:end}.text-link .icon-island{background:var(--primary);color:var(--ink)}.text-link:hover .icon-island{transform:rotate(90deg)}
.bento{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;grid-template-rows:repeat(2,280px);gap:1rem;margin-top:7rem}
.shell{padding:.5rem;background:#ffffff06;border-radius:2rem;box-shadow:inset 0 0 0 1px #ffffff0a}
.bento-inner{height:100%;overflow:hidden;position:relative;border-radius:1.5rem;box-shadow:inset 0 1px 0 #ffffff12}
.bento-main{grid-column:span 8;grid-row:span 2}.bento-main .bento-inner>div{position:absolute;left:2rem;bottom:2rem;right:2rem;color:white}
.bento-main img{filter:brightness(.6);transition:transform 1s var(--ease)}.bento-main:hover img{transform:scale(1.045)}.bento-main h3{font-size:clamp(2rem,3.5vw,4rem);letter-spacing:-.045em;font-weight:700;line-height:1.08;margin-top:1rem}
.bento-words,.bento-motion{grid-column:span 4}.bento-words .bento-inner{padding:2rem;background:var(--paper);color:var(--ink)}
.bento-words p{font-size:2rem;font-weight:700;line-height:1.12;letter-spacing:-.03em;margin-top:1.5rem}.bento-words em{font-style:normal;color:#696d58}
.bento-motion .bento-inner{background:var(--primary);color:var(--ink);padding:2rem}.bento-motion p{font-size:.95rem;line-height:1.4;margin-top:1rem}
.kinetic-word{display:flex;justify-content:center;gap:.7rem;font-size:4rem;font-weight:900;line-height:1.2;margin-top:1rem}.kinetic-word span:nth-child(even){color:transparent;-webkit-text-stroke:1px var(--ink)}
.services{background:var(--paper);color:var(--ink)}.services .section-top{margin-bottom:2rem}
.section-title{font-size:clamp(2.5rem,5vw,5.5rem);letter-spacing:-.05em;line-height:1.08;font-weight:700}
.service-accordion{display:flex;gap:.75rem;margin-top:5rem;min-height:480px}
.service-slice{position:relative;flex:1;overflow:hidden;border-radius:2rem;padding:.5rem;background:#14141409;transition:flex .8s var(--ease);min-width:0}
.service-slice.is-active{flex:3}
.service-trigger{position:absolute;z-index:2;left:.5rem;right:.5rem;top:.5rem;width:calc(100% - 1rem);display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:2rem 1.5rem;background:transparent;font-size:1.35rem;text-align:left;letter-spacing:-.02em;font-weight:700}
.service-symbol{width:2rem;height:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#14141412;font-weight:400}
.service-panel{height:100%;min-height:464px;background:#dfe1d6;border-radius:1.5rem;display:flex;flex-direction:column;justify-content:space-between;padding:7rem 1.5rem 2rem}
.service-identity .service-panel{background:var(--primary)}.service-communication .service-panel{background:#d7dbcd}.service-digital .service-panel{background:var(--ink);color:var(--paper)}.service-digital .service-trigger{color:var(--paper)}.service-digital .service-symbol{background:#ffffff16}
.service-big-word{display:block;font-size:clamp(3rem,7vw,8rem);line-height:1.1;letter-spacing:-.07em;font-weight:800;opacity:.12;transform:translateX(0);transition:opacity .6s var(--ease),transform .8s var(--ease);white-space:nowrap}
.is-active .service-big-word{opacity:1}
.service-description{opacity:0;transform:translateY(1rem);transition:opacity .5s var(--ease),transform .6s var(--ease);pointer-events:none}.is-active .service-description{opacity:1;transform:translateY(0);transition-delay:.2s}
.service-description p{font-size:clamp(1.25rem,1.8vw,2rem);line-height:1.3;letter-spacing:-.03em;max-width:380px;margin-bottom:1rem}.service-description>span{font-size:.85rem;line-height:1.5;display:block}
.manifesto{display:grid;grid-template-columns:3fr 7fr;gap:4rem;align-items:center;background:radial-gradient(ellipse at 10% 50%,#39312444,transparent 60%)}
.manifesto-mark{font-size:clamp(10rem,22vw,25rem);font-weight:900;line-height:1;letter-spacing:-.12em;color:var(--primary);padding-right:.1em}
.manifesto-content>.micro-label{color:var(--muted-foreground)}.quote-stage{margin-top:2rem;min-height:240px}.quote-stage blockquote{font-size:clamp(2rem,3.7vw,4rem);font-weight:500;line-height:1.18;letter-spacing:-.04em;animation:quote-in .8s var(--ease) both}
.quote-stage>p{font-size:1rem;color:var(--muted-foreground);margin-top:2rem;animation:quote-in .8s var(--ease) both}
@keyframes quote-in{from{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}
.carousel-controls{display:flex;align-items:center;justify-content:space-between;margin-top:2rem}.carousel-controls>div{display:flex;gap:.5rem}.quote-count{font-size:1rem}.quote-count>span{color:var(--muted-foreground)}
.round-control{display:inline-flex;width:3rem;height:3rem;border-radius:50%;background:var(--secondary);justify-content:center;align-items:center;font-size:1.5rem;font-weight:400;transition:background .5s var(--ease),transform .5s var(--ease)}.round-control:hover{background:var(--primary);color:var(--ink);transform:scale(1.05)}.round-control:active{transform:scale(.95)}
.contact{background:var(--primary);color:var(--ink);border-radius:3rem 3rem 0 0;padding-top:6rem;padding-bottom:6rem}
.contact .section-top{margin-bottom:3rem}.contact .section-top>span{font-size:1rem}
.contact-title{font-size:clamp(3rem,11.2vw,11rem);font-weight:800;line-height:.98;letter-spacing:-.065em;max-width:1400px}
.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:4rem}.contact-bottom p{font-size:1.125rem;line-height:1.5}
.contact-button{background:var(--ink);color:var(--foreground);font-size:1.125rem;padding:.75rem .75rem .75rem 2rem}.contact-button .icon-island{background:var(--primary);color:var(--ink);width:3rem;height:3rem;font-size:1.5rem}.contact-button:hover{background:#303326}
.footer{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:3rem var(--page-pad);background:var(--ink);font-size:.8rem;color:var(--muted-foreground)}.footer>.wordmark{color:var(--foreground);font-size:1.75rem}.footer>p{font-size:.95rem}.footer-links{display:flex;gap:1.5rem;align-items:center}.footer-links a:hover{color:var(--primary)}.footer-links button{background:transparent;font-size:.8rem}.footer-links button:hover{color:var(--primary)}
.cursor-follower{position:fixed;top:0;left:0;width:5rem;height:5rem;margin:-2.5rem 0 0 -2.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--primary);color:var(--ink);font-size:.8rem;font-weight:700;letter-spacing:.05em;pointer-events:none;opacity:0;visibility:hidden;z-index:var(--layer-cursor);transform:scale(.4)}
[data-motion=off] .cursor-follower{display:none}[data-motion=off] .quote-stage blockquote,[data-motion=off] .quote-stage>p,[data-motion=off] .menu-links a{animation:none}
@media(min-width:1600px){.hero,.section-space,.footer{padding-left:max(4rem,calc((100vw - 1520px)/2));padding-right:max(4rem,calc((100vw - 1520px)/2))}}
@media(max-width:1200px){.service-trigger{padding:1.5rem 1rem;font-size:1.1rem}.bento{grid-template-rows:repeat(2,260px)}.bento-words .bento-inner,.bento-motion .bento-inner{padding:1.5rem}.bento-words p{font-size:1.75rem}.bento .micro-label{font-size:.7rem}.studio-bottom{gap:2rem}.hero-title{font-size:8.6vw}.quote-stage{min-height:270px}.footer{flex-wrap:wrap}.footer>span{margin-left:auto}}
@media(max-width:1023px){.projects-layout{grid-template-columns:1fr;gap:3rem}.projects-heading h2 br{display:none}.projects-heading>p{margin-top:1.5rem}.project-counter{display:none}.projects-heading>.concept-note{font-size:.85rem}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.project-image{aspect-ratio:4/5}.project-meta h3{font-size:1.25rem}.project-meta p{font-size:.75rem}.bento{grid-template-rows:repeat(2,250px)}.bento-main{grid-column:span 7}.bento-words,.bento-motion{grid-column:span 5}.studio-bottom{grid-template-columns:1fr 4fr}.studio-bottom .text-link{grid-column:2;justify-self:start}.scroll-note{display:none}.hero-bottom{justify-content:space-between}.hero-visual{aspect-ratio:16/10}.service-accordion{min-height:440px}.service-panel{min-height:424px}.service-trigger{font-size:1rem;gap:.25rem}.service-symbol{width:1.5rem;height:1.5rem}.service-description>span{font-size:.8rem}.manifesto{gap:2rem}.quote-stage{min-height:220px}}
@media(max-width:767px){html{scroll-padding-top:7rem}.navigation{top:1rem;padding:.75rem 1rem;left:1rem;right:1rem}.wordmark{font-size:1.75rem}.desktop-nav{display:none}.menu-button{display:block}.hero{padding-top:9rem}.hero-eyebrow{font-size:.65rem;letter-spacing:.08em;margin-bottom:2rem}.hero-title{font-size:clamp(2.25rem,8.75vw,4rem);line-height:1.05;letter-spacing:-.05em}.hero-bottom{display:flex;flex-direction:column;margin-top:2rem;margin-bottom:2.5rem;gap:1.5rem;text-align:center}.hero-bottom>p:first-child{font-size:1rem}.hero-bottom>p:first-child br{display:none}.hero-actions{gap:.5rem}.pill{font-size:.875rem;padding-left:1.125rem;gap:.75rem}.pill.secondary{padding:.75rem 1.25rem}.hero-visual-shell{padding:.35rem;border-radius:1.5rem;margin-left:-.4rem;margin-right:-.4rem}.hero-visual{border-radius:1.125rem;aspect-ratio:4/4.3}.hero-visual img{object-position:70% center}.visual-caption{bottom:1rem;left:1rem;right:1rem;font-size:.6rem}.visual-caption>span:last-child{display:none}.section-space{padding:5rem 1rem}.section-top{gap:1rem;align-items:flex-start;margin-bottom:2.5rem}.micro-label{font-size:.7rem}.section-note{font-size:.875rem;text-align:right;max-width:145px}.projects-heading h2{font-size:2.75rem;max-width:500px}.projects-heading h2 br{display:block}.projects-heading>p{font-size:1rem}.projects-layout{gap:2rem}.project-gallery{display:flex;gap:2rem}.project-image{aspect-ratio:4/4}.project-meta{padding:1.25rem .75rem .75rem}.project-meta h3{font-size:1.4rem}.project-meta p{font-size:.8rem}.project-shell{border-radius:1.75rem}.project-image{border-radius:1.25rem}.marquee-region{padding:2rem 0;margin:1rem 0;transform:rotate(-2deg) scale(1.03)}.marquee-sequence{gap:2rem;padding-right:2rem;font-size:2.75rem}.studio{padding-top:6rem}.scrub-text{font-size:clamp(2rem,6.7vw,3rem);line-height:1.2}.studio-bottom{grid-template-columns:1fr;gap:1.5rem;margin-top:2.5rem}.studio-signature{font-size:3.5rem}.studio-bottom>p{font-size:1.05rem;max-width:600px}.studio-bottom .text-link{grid-column:auto;margin-top:.5rem}.bento{grid-template-columns:1fr;grid-template-rows:auto;gap:1.25rem;margin-top:4rem}.bento-main,.bento-words,.bento-motion{grid-column:1;grid-row:auto}.bento-main{height:390px}.bento-main .bento-inner>div{left:1.5rem;right:1.5rem;bottom:1.5rem}.bento-main h3{font-size:2.5rem}.bento-words{min-height:290px}.bento-words p{font-size:2.5rem}.bento-motion{min-height:290px}.bento-motion .bento-inner{padding:1.5rem}.bento-motion p{font-size:1rem}.kinetic-word{font-size:5rem;justify-content:flex-start}.section-title{font-size:2.4rem}.service-accordion{flex-direction:column;min-height:0;margin-top:3rem;gap:1rem}.service-slice{flex:none;min-height:90px;border-radius:1.5rem;padding:.35rem;transition:background .6s var(--ease)}.service-slice.is-active{flex:none}.service-trigger{position:relative;top:auto;left:auto;right:auto;width:100%;padding:1.5rem 1.25rem;font-size:1.2rem;min-height:80px;background:var(--primary);border-radius:1.15rem}.service-communication .service-trigger{background:#d7dbcd}.service-digital .service-trigger{background:var(--ink)}.service-panel{display:none;min-height:0;padding:1rem 1.5rem 2rem;box-shadow:none;margin-top:-1rem;border-radius:0 0 1.15rem 1.15rem}.is-active .service-panel{display:flex;gap:1.5rem}.service-big-word{font-size:4.5rem}.service-description p{font-size:1.5rem}.service-description>span{font-size:.85rem}.manifesto{grid-template-columns:1fr;gap:2rem}.manifesto-mark{font-size:6rem;letter-spacing:-.1em}.quote-stage{min-height:230px;margin-top:1.5rem}.quote-stage blockquote{font-size:2.1rem;line-height:1.18}.quote-stage>p{font-size:.95rem}.carousel-controls{margin-top:1rem}.contact{border-radius:2rem 2rem 0 0;padding-top:4rem;padding-bottom:4rem}.contact .section-top{margin-bottom:3rem}.contact .section-top>span{font-size:.875rem}.contact-title{font-size:clamp(2.75rem,10.4vw,5rem);line-height:1.02}.contact-bottom{flex-direction:column;align-items:flex-start;gap:2rem;margin-top:3rem}.contact-bottom p{font-size:1rem}.contact-button{font-size:1rem}.contact-button .icon-island{width:2.5rem;height:2.5rem}.footer{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:2.5rem 1rem}.footer>span{margin-left:0}.footer-links{gap:1.5rem}.project-dialog[data-slot=dialog-content]{border-radius:1.5rem;max-height:92dvh}.project-dialog>img{aspect-ratio:4/3;border-radius:1rem}.dialog-copy{padding:1.5rem 1rem}.dialog-copy [data-slot=dialog-description]{font-size:1rem}.dialog-copy .pill{white-space:normal}.dialog-close{top:1rem;right:1rem}}
@media(max-width:360px){.hero-title{font-size:8.6vw}.hero-actions{gap:.4rem}.pill{font-size:.8rem;padding-left:1rem}.pill.secondary{padding:.7rem 1rem}.hero-eyebrow{font-size:.6rem}.service-big-word{font-size:3.5rem}.projects-heading h2{font-size:2.3rem}.quote-stage blockquote{font-size:1.85rem}.footer-links{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.cursor-follower{display:none}}
.project-layer{min-width:0}.project-gallery .project-layer{position:relative}
[data-motion=off] .pill,[data-motion=off] .project-image img,[data-motion=off] .service-slice,[data-motion=off] .service-panel,[data-motion=off] .service-description,[data-motion=off] .service-big-word,[data-motion=off] .icon-island,[data-motion=off] .round-control{transition:none}
/* Karbayo: brand, portfolio and editorial pages. */
.logo-link{display:inline-flex;align-items:center;flex-shrink:0}.brand-logo{width:176px;height:auto;object-fit:contain;filter:brightness(0) invert(1)}.navigation .desktop-nav{gap:1.75rem}.navigation .brand-logo{width:180px}.navigation{background:#171717cf;box-shadow:inset 0 1px 0 #ffffff15}.menu-top .brand-logo{width:180px}.hero-bottom>p:first-child{max-width:320px;font-size:1rem}.hero-visual{background:var(--secondary)}.hero-visual img{object-position:center 50%}.visual-caption{color:var(--foreground);padding:1rem 1.5rem;background:#141414df;border-radius:1rem;left:1.5rem;right:1.5rem;bottom:1.5rem;transition:background .6s var(--ease)}.visual-caption:hover{background:var(--ink)}.projects-all{justify-self:start;margin-top:2rem;justify-content:flex-start}.project-summary{font-size:1rem;line-height:1.5;color:var(--muted-foreground);padding:0 1rem 1rem;max-width:540px}.project-image{aspect-ratio:4/3.5}.project-meta h3 a:hover{color:var(--primary)}.studio-signature .brand-logo{width:190px}.bento-main h3{font-size:clamp(1.75rem,3vw,3.5rem)}.bento-link{display:inline-flex;font-size:1rem;margin-top:1.5rem;text-decoration:underline;text-underline-offset:.25rem}.bento-main img{filter:brightness(.46)}.services .text-link .icon-island{background:var(--ink);color:var(--primary)}.service-description p{font-size:clamp(1.125rem,1.5vw,1.5rem)}.service-big-word{font-size:clamp(2.5rem,5.4vw,6rem)}.manifesto-mark{padding:0;display:flex;align-items:center;justify-content:center}.manifesto-mark img{width:min(75%,250px);height:auto;border-radius:2rem;object-fit:contain}.quote-stage>p{line-height:1.7}.quote-stage>p strong{font-weight:700;color:var(--foreground)}.review-source{font-size:.8rem;color:var(--muted-foreground);text-decoration:underline;text-underline-offset:.25rem}.contact-direct{display:flex;gap:3rem;flex-wrap:wrap;margin-top:3rem;font-size:1rem}.contact-direct a{text-decoration:underline;text-underline-offset:.25rem}.contact-direct a:hover{text-decoration-thickness:2px}.contact .icon-island{color:var(--ink)}
.journal{background:#1a1a18}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin-top:4rem;grid-auto-flow:dense}.article-card{display:flex;flex-direction:column;min-width:0;border-radius:2rem;padding:.5rem}.article-image{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:1.5rem;background:var(--secondary)}.article-image img{transition:transform 1s var(--ease)}.article-image:hover img{transform:scale(1.05)}.article-card-copy{padding:1.5rem 1rem 1rem;display:flex;flex-direction:column;flex:1}.article-date{display:flex;justify-content:space-between;gap:.75rem;color:var(--muted-foreground);font-size:.75rem;line-height:1.5;margin-bottom:1.25rem}.article-card h3{font-size:clamp(1.25rem,1.75vw,1.75rem);font-weight:700;letter-spacing:-.035em;line-height:1.2;margin-bottom:1rem}.article-card h3 a:hover{color:var(--primary)}.article-card-copy>p:not(.article-date){font-size:1rem;line-height:1.55;color:var(--muted-foreground);margin-bottom:1.5rem}.article-read{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;font-size:.95rem}.article-read .icon-island{background:var(--primary);color:var(--ink)}.article-read:hover .icon-island{transform:rotate(90deg)}
.commercial-footer{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr;gap:3rem;align-items:start;padding-top:4rem;padding-bottom:2rem}.footer-brand p{font-size:1rem;line-height:1.6;margin-top:1.5rem}.footer-column{display:flex;flex-direction:column;gap:.85rem;font-size:1rem}.footer-column>span{font-size:.7rem;letter-spacing:.12em;margin-bottom:.5rem;color:var(--foreground)}.footer-column a:hover{color:var(--primary)}.footer-legal{grid-column:1/-1;display:flex;gap:2rem;align-items:center;justify-content:space-between;padding-top:2rem;margin-top:1rem;font-size:.8rem;box-shadow:inset 0 1px 0 #ffffff0c}.footer-legal button{background:transparent;color:inherit;font-size:.8rem}.footer-legal button:hover{color:var(--primary)}
.page-heading{padding:12rem var(--page-pad) 4rem;max-width:1600px;margin:auto}.page-heading>.micro-label{color:var(--muted-foreground);margin-bottom:2rem}.page-heading h1{font-size:clamp(3rem,6.8vw,7rem);font-weight:700;letter-spacing:-.055em;line-height:1.04;max-width:1200px}.page-heading h1>span{color:var(--primary)}.page-heading>p:last-of-type{font-size:1.25rem;line-height:1.6;max-width:760px;color:var(--muted-foreground);margin-top:2rem}.portfolio-index{padding-top:2rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;grid-auto-flow:dense}.portfolio-index .project-layer:first-child{grid-column:1/-1}.portfolio-index .project-layer:first-child .project-image{aspect-ratio:16/8}.portfolio-index .project-image{aspect-ratio:4/4}.portfolio-index .project-summary{max-width:700px}.related-story{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;background:var(--paper);color:var(--ink)}.related-story h2{font-size:clamp(3rem,5.5vw,6rem);font-weight:700;line-height:1.05;letter-spacing:-.05em;margin:2rem 0}.related-story p:not(.micro-label){font-size:1.2rem;line-height:1.5;max-width:480px;margin-bottom:2rem}.related-story>a{display:block;padding:.5rem;background:#1414140b;border-radius:2rem;overflow:hidden}.related-story img{height:auto;border-radius:1.5rem;max-height:700px;object-fit:contain}.blog-index{padding-top:1rem}.blog-index .journal-grid{margin-top:0}.service-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding-top:2rem;grid-auto-flow:dense}.service-detail{display:flex;min-width:0}.service-detail-core{display:flex;flex-direction:column;padding:2.5rem;flex:1;border-radius:1.5rem;background:var(--card)}.service-detail:nth-child(2) .service-detail-core{background:var(--primary);color:var(--ink)}.service-detail h2{font-size:clamp(1.75rem,2.5vw,3rem);line-height:1.1;letter-spacing:-.04em;margin:1.5rem 0}.service-detail p{font-size:1.1rem;line-height:1.65;color:var(--muted-foreground)}.service-detail:nth-child(2) p{color:var(--ink)}.service-detail .service-scope{font-size:1rem;margin:2rem 0;color:var(--foreground)}.service-detail:nth-child(2) .service-scope{color:var(--ink)}.service-detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:auto;padding-top:1rem}.service-detail:nth-child(2) .pill.primary{background:var(--ink);color:var(--foreground)}.service-detail:nth-child(2) .pill .icon-island{background:#ffffff15}.service-case{font-size:.95rem;text-decoration:underline;text-underline-offset:.3rem}.service-positioning{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:3rem 5rem}.service-positioning>.micro-label{grid-column:1/-1}.service-positioning h2{font-size:clamp(3rem,5vw,5.5rem);line-height:1.1;letter-spacing:-.05em;font-weight:700}.service-positioning>p:last-child{font-size:1.25rem;line-height:1.65;max-width:650px;align-self:center}.about-visual{margin:0 var(--page-pad);padding:.5rem;border-radius:2rem;background:#ffffff06}.about-visual img{aspect-ratio:16/7;height:auto;object-fit:cover;border-radius:1.5rem}.prose-section .post-body{max-width:850px;margin:auto}
.breadcrumbs{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;font-size:.8rem;color:var(--muted-foreground);margin-bottom:2rem;line-height:1.5}.breadcrumbs>span:last-child{max-width:600px}.breadcrumbs a:hover{color:var(--primary)}.detail-heading h1{font-size:clamp(2.2rem,4.8vw,5rem);max-width:1300px}.case-study .detail-heading h1{font-size:clamp(3rem,7vw,7rem)}.detail-heading>p:last-of-type{max-width:1000px}.project-facts{display:grid;grid-template-columns:1fr 1fr 2fr;gap:3rem;max-width:1000px;margin:3rem 0 0}.project-facts dt{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-foreground);margin-bottom:.75rem}.project-facts dd{font-size:1.15rem;margin:0}.article-byline{display:flex;gap:2rem;flex-wrap:wrap;margin-top:2rem;font-size:.9rem;color:var(--muted-foreground)}.detail-hero-image{margin:0 var(--page-pad);padding:.5rem;background:#ffffff06;border-radius:2rem;overflow:hidden}.detail-hero-image img{height:auto;max-height:850px;object-fit:contain;border-radius:1.5rem}.article-content-layout{display:grid;grid-template-columns:1fr 2fr;gap:6rem;padding-top:6rem;align-items:start}.reading-aside{position:sticky;top:8rem;max-width:340px}.reading-aside>p:nth-child(2){font-size:1.75rem;line-height:1.25;letter-spacing:-.03em;margin:1.5rem 0 2rem}.reading-aside .pill{font-size:.875rem;gap:.75rem}.reading-aside>.text-link{justify-self:start;justify-content:flex-start;margin-top:1.5rem;font-size:1rem;color:var(--muted-foreground)}.post-body{font-size:1.2rem;line-height:1.85;min-width:0;overflow-wrap:anywhere;color:#dedfd6}.post-body h2{font-size:clamp(1.6rem,2.5vw,2.5rem);font-weight:700;line-height:1.2;letter-spacing:-.035em;color:var(--foreground);margin:3.5rem 0 1.5rem}.post-body h2:first-child{margin-top:0}.post-body p{margin:0 0 1.5rem}.post-body ul,.post-body ol{padding-left:1.5rem;margin:1.5rem 0 2rem}.post-body li{margin:.75rem 0}.post-body strong,.post-body b{font-weight:700;color:var(--foreground)}.post-body a{color:var(--primary);text-decoration:underline;text-underline-offset:.2rem}.post-body figure{margin:3rem 0;padding:.4rem;border-radius:1.5rem;background:#ffffff08;overflow:hidden}.post-body figure img{height:auto;border-radius:1.125rem}.related-section{background:#1a1a18;padding-top:6rem;padding-bottom:6rem}.related-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:4rem}.related-projects .project-image{aspect-ratio:4/3}.contact-page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2.5rem}.contact-page-actions>.text-link{padding:1rem}.contact-details-layout{padding-top:1rem;display:grid;grid-template-columns:1fr 1.5fr;gap:5rem;align-items:start}.contact-info>a{display:block;font-size:clamp(1.1rem,2vw,1.8rem);letter-spacing:-.02em;margin-top:1.5rem;overflow-wrap:anywhere}.contact-info>a:hover{color:var(--primary)}.contact-info>p{font-size:1.05rem;line-height:1.65;color:var(--muted-foreground);margin-top:1.5rem}.contact-info h2{font-size:2rem;line-height:1.2;letter-spacing:-.035em;margin-top:3rem}.contact-info nav{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.95rem;margin-top:2rem}.contact-info nav a:hover{color:var(--primary)}.contact-brief-core{padding:2.5rem;border-radius:1.5rem;background:var(--card)}.contact-brief h2{font-size:2.25rem;line-height:1.1;letter-spacing:-.04em}.contact-brief p{font-size:1rem;line-height:1.55;color:var(--muted-foreground);margin:1rem 0 2rem}.contact-brief label{display:block;font-size:.95rem;margin-bottom:.75rem}.contact-brief input,.contact-brief textarea{background:#11111170;border:1px solid #ffffff18;border-radius:.75rem;box-shadow:none;color:var(--foreground);font-family:inherit;font-size:1rem;min-height:3rem;padding:.75rem 1rem;width:100%;outline-color:var(--primary)}.contact-brief textarea{min-height:10rem;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.contact-brief .pill{margin-top:1.5rem}.contact-brief .form-note{font-size:.8rem;margin-bottom:0;line-height:1.5}.prepared-message{margin-top:2rem}.prepared-message textarea{font-size:.9rem}.prepared-message>.text-link{margin-top:1rem;color:var(--primary);background:transparent}.not-found{min-height:70dvh}.not-found .hero-actions{margin-top:2.5rem}
@media(min-width:1600px){.page-heading{padding-left:max(4rem,calc((100vw - 1520px)/2));padding-right:max(4rem,calc((100vw - 1520px)/2));max-width:none}.detail-hero-image,.about-visual{margin-left:max(4rem,calc((100vw - 1520px)/2));margin-right:max(4rem,calc((100vw - 1520px)/2))}}
@media(max-width:1100px){.navigation .desktop-nav{gap:1.25rem;font-size:.85rem}.navigation .brand-logo{width:160px}.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commercial-footer{grid-template-columns:2fr 2fr;gap:3rem}.service-detail-core{padding:2rem}.article-content-layout{grid-template-columns:1fr 2.5fr;gap:3rem}.reading-aside .pill{white-space:normal}.contact-details-layout{gap:2.5rem}.contact-brief-core{padding:2rem}.hero-bottom>p:first-child{max-width:250px}.hero-actions{gap:.5rem}.hero-bottom .pill{font-size:.9rem;gap:1rem}.related-story{gap:3rem}.studio-signature .brand-logo{width:150px}}
@media(max-width:767px){.navigation .brand-logo{width:150px}.hero-bottom>p:first-child{max-width:none}.hero-visual img{object-position:50% 50%}.visual-caption{bottom:1rem;left:.75rem;right:.75rem;padding:.8rem;font-size:.6rem}.project-image{aspect-ratio:4/3.5}.project-summary{font-size:.95rem;padding:0 .75rem 1rem}.projects-all{font-size:.95rem;margin-top:1.5rem}.studio-signature .brand-logo{width:170px}.bento-main h3{font-size:2rem;max-width:330px}.service-big-word{font-size:clamp(2.75rem,11vw,4.5rem)}.service-description p{font-size:1.25rem}.services .section-top .text-link{font-size:.8rem;gap:.5rem}.services .section-top .micro-label{max-width:170px}.services .text-link .icon-island{width:1.5rem;height:1.5rem}.manifesto-mark{justify-content:flex-start}.manifesto-mark img{width:90px;border-radius:1rem}.quote-stage{min-height:240px}.contact-direct{gap:1.25rem;margin-top:2.5rem;flex-direction:column;font-size:.95rem}.journal-grid{grid-template-columns:1fr;gap:1.5rem;margin-top:3rem}.journal .section-top{align-items:center}.journal .text-link{font-size:.9rem;gap:.75rem}.article-card h3{font-size:1.55rem}.article-card-copy{padding:1.25rem .75rem .75rem}.article-date{font-size:.75rem}.commercial-footer{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem;padding:3rem 1rem 2rem}.footer-brand{grid-column:1/-1}.footer-brand .brand-logo{width:170px}.footer-column{font-size:.95rem}.footer-column:nth-child(2){grid-column:1/-1}.footer-legal{flex-wrap:wrap;gap:1.25rem;justify-content:flex-start;padding-top:1.5rem;font-size:.75rem}.page-heading{padding:9rem 1rem 3rem}.page-heading>.micro-label{font-size:.65rem;letter-spacing:.08em;max-width:320px;margin-bottom:1.75rem}.page-heading h1{font-size:clamp(2.2rem,8.4vw,4rem);line-height:1.08;letter-spacing:-.045em}.page-heading>p:last-of-type{font-size:1.1rem;line-height:1.6;margin-top:1.5rem}.portfolio-index{grid-template-columns:1fr;gap:2rem;padding-top:1rem}.portfolio-index .project-layer:first-child{grid-column:auto}.portfolio-index .project-layer:first-child .project-image,.portfolio-index .project-image{aspect-ratio:4/3.5}.related-story{grid-template-columns:1fr;gap:2.5rem}.related-story h2{font-size:3rem;margin:1.5rem 0}.related-story p:not(.micro-label){font-size:1.1rem}.related-story img{max-height:600px}.blog-index{padding-top:1rem}.blog-index .journal-grid{margin-top:0}.service-details{grid-template-columns:1fr;padding-top:1rem;gap:1.5rem}.service-detail-core{padding:1.5rem}.service-detail h2{font-size:2rem}.service-detail p{font-size:1.05rem}.service-detail-actions{gap:1.5rem}.service-positioning{grid-template-columns:1fr;gap:2rem}.service-positioning>.micro-label{grid-column:auto}.service-positioning h2{font-size:2.75rem}.service-positioning>p:last-child{font-size:1.1rem}.about-visual{margin:0 1rem;padding:.35rem;border-radius:1.5rem}.about-visual img{border-radius:1.15rem;aspect-ratio:4/3}.detail-heading h1{font-size:clamp(1.9rem,6.3vw,3rem);line-height:1.15}.case-study .detail-heading h1{font-size:clamp(2.75rem,10vw,4rem)}.breadcrumbs{font-size:.75rem;gap:.5rem;margin-bottom:2rem}.breadcrumbs>span:last-child{display:none}.project-facts{grid-template-columns:1fr 1fr;gap:1.75rem;margin-top:2rem}.project-facts>div:last-child{grid-column:1/-1}.project-facts dd{font-size:1rem}.article-byline{font-size:.8rem;gap:.75rem 1.25rem;line-height:1.5;margin-top:1.5rem}.detail-hero-image{margin:0 1rem;padding:.35rem;border-radius:1.5rem}.detail-hero-image img{border-radius:1.15rem;max-height:600px}.article-content-layout{display:flex;flex-direction:column-reverse;gap:3rem;padding-top:3rem}.reading-aside{position:static;max-width:none;width:100%;padding:1.5rem;border-radius:1.5rem;background:var(--secondary)}.reading-aside>p:nth-child(2){font-size:1.5rem}.post-body{font-size:1.1rem;line-height:1.8;width:100%}.post-body h2{font-size:1.65rem;margin-top:2.5rem;line-height:1.25}.post-body figure{margin:2rem 0}.related-section{padding:4rem 1rem}.related-projects{grid-template-columns:1fr;gap:2rem;margin-top:3rem}.contact-page-actions{gap:1rem}.contact-page-actions .pill{font-size:.85rem}.contact-page-actions>.text-link{padding:.75rem .5rem}.contact-details-layout{grid-template-columns:1fr;gap:3rem;padding-top:1rem}.contact-info>a{font-size:1.35rem}.contact-info h2{font-size:2rem;margin-top:2.5rem}.contact-brief-core{padding:1.5rem}.contact-brief h2{font-size:2rem}.contact-brief .pill{font-size:.85rem;gap:.75rem;white-space:normal}.form-row{grid-template-columns:1fr;gap:1.5rem}.menu-links{gap:.5rem}.menu-links a{font-size:clamp(2rem,7vw,3rem)}.menu-overlay[data-slot=dialog-content]{gap:2rem}.desktop-break{display:none}}
@media(max-width:360px){.navigation .brand-logo{width:130px}.hero-bottom .pill{font-size:.75rem;padding-left:.9rem;gap:.4rem}.hero-actions{gap:.4rem}.hero-actions .pill.secondary{padding:.75rem .9rem}.service-big-word{font-size:2.75rem}.page-heading h1{font-size:2.1rem}.detail-heading h1{font-size:1.8rem}.contact-direct{font-size:.875rem}.article-card h3{font-size:1.35rem}.contact-brief-core{padding:1.25rem}}

/* Touch layouts preserve the desktop composition and the Karbayo identity. */
.mobile-contact { display: none; }

@media (max-width: 1023px) {
  html { scroll-padding-top: calc(6rem + env(safe-area-inset-top)); }
  .navigation {
    top: calc(.75rem + env(safe-area-inset-top));
    left: max(.75rem, env(safe-area-inset-left));
    right: max(.75rem, env(safe-area-inset-right));
    padding: .5rem .75rem;
    gap: .5rem;
    border-radius: 2rem;
    backdrop-filter: blur(16px);
  }
  .navigation .desktop-nav { display: none; }
  .navigation .brand-logo { width: clamp(6.25rem, 28vw, 8rem); }
  .mobile-contact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    min-height: 2.75rem;
    padding: .5rem .875rem;
    border-radius: 2rem;
    background: var(--primary);
    color: var(--ink);
    font-size: .875rem;
    font-weight: 700;
    white-space: nowrap;
  }
  .menu-button { display: block; flex: 0 0 2.75rem; }
  .menu-overlay[data-slot=dialog-content] {
    translate: none !important;
    height: 100dvh;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: calc(1.25rem + env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right)) calc(1.5rem + env(safe-area-inset-bottom)) max(1.25rem, env(safe-area-inset-left));
    gap: 1.5rem;
  }
  .menu-top { flex-shrink: 0; }
  .menu-top .brand-logo { width: 8.5rem; }
  .menu-links { gap: .25rem; }
  .menu-links a { min-height: 3.5rem; padding: .5rem 0; font-size: clamp(2rem, 6vw, 3.5rem); line-height: 1.15; }
  .menu-location { font-size: 1rem; line-height: 1.5; max-width: 28rem; }
  .hero-bottom { flex-wrap: wrap; }
  .hero-visual img { height: 100%; margin-top: 0; }
  .cursor-follower, .site-root::after { display: none; }
  .service-accordion { flex-direction: column; min-height: 0; gap: 1rem; margin-top: 2.5rem; }
  .service-slice, .service-slice.is-active { flex: none; min-height: 0; padding: .375rem; border-radius: 1.5rem; }
  .service-trigger { position: relative; inset: auto; width: 100%; min-height: 4rem; padding: 1.25rem; font-size: 1.25rem; background: var(--primary); border-radius: 1.125rem; }
  .service-communication .service-trigger { background: #d7dbcd; }
  .service-digital .service-trigger { background: var(--ink); }
  .service-symbol { width: 2rem; height: 2rem; flex-shrink: 0; }
  .service-panel { display: none; height: auto; min-height: 0; margin-top: -1rem; padding: 1.5rem 1.25rem; border-radius: 0 0 1.125rem 1.125rem; gap: 1.5rem; }
  .is-active .service-panel { display: flex; }
  .service-big-word { font-size: clamp(2.25rem, 10vw, 4rem); }
  .service-description p { font-size: 1.25rem; max-width: 36rem; line-height: 1.4; }
  .service-description > span { font-size: 1rem; line-height: 1.6; }
  .scrub-text span { opacity: 1; }
  .service-detail, .article-card, .contact-brief, .contact-info { min-width: 0; }
  .contact-details-layout { grid-template-columns: minmax(0, 1fr); gap: 3rem; }
  .article-content-layout { display: flex; flex-direction: column-reverse; gap: 3rem; }
  .reading-aside { position: static; width: 100%; max-width: none; padding: 1.5rem; border-radius: 1.5rem; background: var(--secondary); }
  .post-body { width: 100%; }
}

@media (max-width: 767px) {
  :root { --page-pad: 1.25rem; }
  .hero { padding: calc(7.5rem + env(safe-area-inset-top)) 1.25rem 0; }
  .hero-eyebrow { font-size: .75rem; letter-spacing: .06em; line-height: 1.6; margin-bottom: 1.5rem; }
  .hero-title { font-size: clamp(2rem, 9.8vw, 3.75rem); line-height: 1.1; letter-spacing: -.04em; }
  .hero-bottom { gap: 1.5rem; margin-top: 1.5rem; margin-bottom: 2rem; }
  .hero-bottom > p:first-child { max-width: 25rem; font-size: 1.0625rem; line-height: 1.6; }
  .hero-actions { display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; max-width: 25rem; gap: .625rem; }
  .hero-bottom .pill, .hero-actions .pill.secondary { width: 100%; min-height: 3.25rem; font-size: 1rem; padding: .75rem 1.25rem; gap: 1rem; white-space: normal; }
  .hero-actions .pill.primary { justify-content: space-between; }
  .hero-visual-shell { margin: 0; padding: .375rem; border-radius: 1.5rem; }
  .hero-visual { aspect-ratio: 4 / 3; border-radius: 1.125rem; }
  .hero-visual img { height: 100%; margin: 0; object-position: center; }
  .visual-caption { left: .625rem; right: .625rem; bottom: .625rem; min-height: 2.75rem; display: flex; align-items: center; padding: .75rem; font-size: .75rem; letter-spacing: .03em; border-radius: .75rem; }
  .section-space { padding: 4rem 1.25rem; }
  .section-top { gap: 1rem; flex-wrap: wrap; margin-bottom: 2rem; }
  .micro-label { font-size: .75rem; letter-spacing: .08em; }
  .section-note { max-width: none; font-size: 1rem; line-height: 1.5; text-align: left; }
  .section-title { font-size: clamp(2rem, 8vw, 3rem); line-height: 1.15; letter-spacing: -.035em; }
  .projects-layout { gap: 2rem; }
  .projects-heading { padding-top: 0; }
  .projects-heading h2 { font-size: clamp(2.25rem, 9vw, 3.5rem); letter-spacing: -.04em; }
  .projects-heading > p { font-size: 1rem; margin-top: 1.25rem; }
  .projects-all { min-height: 2.75rem; font-size: 1rem; margin-top: 1.25rem; }
  .project-gallery { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .project-shell { padding: .375rem; border-radius: 1.5rem; }
  .project-image, .portfolio-index .project-image, .portfolio-index .project-layer:first-child .project-image { aspect-ratio: 4 / 3; border-radius: 1.125rem; }
  .project-open { bottom: 1rem; right: 1rem; width: 2.75rem; height: 2.75rem; }
  .project-meta { align-items: start; padding: 1.25rem .75rem .75rem; }
  .project-meta h3 { font-size: 1.625rem; line-height: 1.2; }
  .project-meta h3 a { display: inline-flex; align-items: center; min-height: 2.75rem; }
  .project-meta p, .project-index { font-size: .8125rem; line-height: 1.5; }
  .project-summary { font-size: 1rem; line-height: 1.6; padding: 0 .75rem 1rem; }
  .marquee-region { padding: 1.5rem 0; }
  .marquee-sequence { font-size: 2.5rem; gap: 1.5rem; }
  .scrub-text { font-size: clamp(1.875rem, 7.5vw, 2.75rem); line-height: 1.25; letter-spacing: -.035em; }
  .studio-bottom { margin-top: 2rem; gap: 1.5rem; }
  .studio-bottom > p { font-size: 1.0625rem; line-height: 1.7; }
  .text-link { min-height: 2.75rem; }
  .bento { margin-top: 3rem; gap: 1rem; }
  .bento-main { height: clamp(20rem, 110vw, 26rem); }
  .bento-main h3 { font-size: clamp(1.75rem, 7vw, 2.5rem); line-height: 1.15; }
  .bento-main .bento-inner > div { left: 1.25rem; right: 1.25rem; bottom: 1.25rem; }
  .bento-words { min-height: 15rem; }
  .bento-motion { min-height: 14rem; }
  .bento .micro-label { font-size: .75rem; }
  .bento-words .bento-inner, .bento-motion .bento-inner { padding: 1.25rem; }
  .kinetic-word { font-size: 3.5rem; gap: .5rem; }
  .services .section-top .micro-label { max-width: none; }
  .services .section-top .text-link, .journal .text-link { font-size: 1rem; gap: .75rem; }
  .services .text-link .icon-island { width: 2rem; height: 2rem; }
  .manifesto { gap: 1.5rem; }
  .quote-stage blockquote { font-size: clamp(1.75rem, 7vw, 2.5rem); letter-spacing: -.03em; line-height: 1.3; }
  .quote-stage { min-height: 14rem; }
  .quote-stage > p { margin-top: 1.5rem; font-size: 1rem; }
  .review-source { display: inline-flex; align-items: center; min-height: 2.75rem; font-size: .875rem; }
  .journal-grid { gap: 1.5rem; margin-top: 2rem; }
  .article-card { padding: .375rem; border-radius: 1.5rem; }
  .article-image { aspect-ratio: 16 / 10; border-radius: 1.125rem; }
  .article-card-copy { padding: 1.25rem .75rem .75rem; }
  .article-card h3 { font-size: 1.5rem; line-height: 1.3; letter-spacing: -.025em; }
  .article-date { font-size: .8125rem; margin-bottom: 1rem; flex-wrap: wrap; }
  .article-card-copy > p:not(.article-date) { font-size: 1rem; line-height: 1.65; }
  .article-read { min-height: 2.75rem; font-size: 1rem; }
  .contact { border-radius: 2rem 2rem 0 0; }
  .contact-title { font-size: clamp(2.75rem, 10.2vw, 4.75rem); line-height: 1.08; letter-spacing: -.04em; }
  .contact-bottom { margin-top: 2rem; gap: 1.5rem; }
  .contact-bottom p { font-size: 1.0625rem; line-height: 1.6; }
  .contact-button { width: 100%; justify-content: space-between; font-size: 1rem; padding: .75rem 1rem; white-space: normal; }
  .contact-direct { width: 100%; gap: .25rem; margin-top: 2rem; font-size: 1rem; }
  .contact-direct a { display: flex; align-items: center; width: 100%; min-height: 3rem; padding: .5rem 0; border-bottom: 1px solid #14141424; text-decoration: none; overflow-wrap: anywhere; }
  .commercial-footer { padding: 3rem 1.25rem calc(2rem + env(safe-area-inset-bottom)); gap: 2rem 1.5rem; }
  .footer-column { gap: .125rem; font-size: 1rem; }
  .footer-column > span { font-size: .75rem; }
  .footer-column a { display: inline-flex; align-items: center; min-height: 2.75rem; overflow-wrap: anywhere; }
  .footer-legal { font-size: .8125rem; gap: .5rem 1.25rem; line-height: 1.5; }
  .footer-legal a, .footer-legal button { display: inline-flex; align-items: center; min-height: 2.75rem; font-size: .875rem; }
  .page-heading { padding: calc(7.5rem + env(safe-area-inset-top)) 1.25rem 2.5rem; }
  .page-heading > .micro-label { font-size: .75rem; line-height: 1.6; margin-bottom: 1.5rem; }
  .page-heading h1 { font-size: clamp(2.125rem, 9.2vw, 3.75rem); line-height: 1.12; letter-spacing: -.035em; overflow-wrap: anywhere; }
  .page-heading > p:last-of-type { font-size: 1.0625rem; line-height: 1.7; }
  .portfolio-index, .service-details, .contact-details-layout { padding-top: 1rem; }
  .related-story h2, .service-positioning h2 { font-size: clamp(2.25rem, 9vw, 3.5rem); }
  .service-detail-core { padding: 1.5rem 1.25rem; }
  .service-detail-actions { gap: 1rem; }
  .service-detail-actions .pill { width: 100%; white-space: normal; font-size: 1rem; padding: .75rem 1rem; }
  .service-case { display: inline-flex; align-items: center; min-height: 2.75rem; font-size: 1rem; }
  .about-visual, .detail-hero-image { margin-left: 1.25rem; margin-right: 1.25rem; }
  .detail-heading h1 { font-size: clamp(1.75rem, 7.2vw, 2.75rem); line-height: 1.2; }
  .case-study .detail-heading h1 { font-size: clamp(2.5rem, 10vw, 4rem); }
  .breadcrumbs { margin-bottom: 1.5rem; font-size: .8125rem; }
  .breadcrumbs a { display: inline-flex; align-items: center; min-height: 2.75rem; }
  .project-facts dt { font-size: .8125rem; }
  .article-byline { font-size: .875rem; }
  .post-body { font-size: 1.0625rem; line-height: 1.8; }
  .post-body h2 { font-size: 1.625rem; line-height: 1.3; letter-spacing: -.025em; }
  .reading-aside { padding: 1.5rem 1.25rem; }
  .reading-aside .pill { width: 100%; white-space: normal; font-size: 1rem; padding: .75rem 1rem; }
  .related-projects { margin-top: 2rem; }
  .contact-page-actions { display: grid; grid-template-columns: minmax(0, 1fr); gap: .75rem; }
  .contact-page-actions .pill { width: 100%; font-size: 1rem; padding: .75rem 1rem; white-space: normal; }
  .contact-page-actions > .text-link { justify-self: stretch; justify-content: center; min-height: 3.25rem; border: 1px solid var(--border); border-radius: 2rem; }
  .contact-info nav { gap: .25rem 1rem; font-size: 1rem; }
  .contact-info nav a { display: inline-flex; align-items: center; min-height: 2.75rem; }
  .contact-brief-core { padding: 1.5rem 1.25rem; }
  .contact-brief h2 { font-size: 1.875rem; }
  .contact-brief input, .contact-brief textarea { font-size: 1rem; min-height: 3.25rem; scroll-margin-top: 7rem; }
  .contact-brief textarea { min-height: 10rem; }
  .contact-brief .pill { width: 100%; font-size: 1rem; min-height: 3.25rem; padding: .75rem 1rem; }
  .contact-brief .form-note { font-size: .875rem; line-height: 1.65; }
  .prepared-message .text-link { min-height: 2.75rem; font-size: 1rem; }
}

@media (pointer: coarse) {
  .project-image:hover img, .article-image:hover img, .bento-main:hover img { transform: none; }
  .pill, .round-control, .service-trigger, .mobile-contact, .menu-button { touch-action: manipulation; }
}

/* Flat editorial layouts, large type, and vivid orange across Karbayo. */
:root {
  --background:#080808; --foreground:#f4f4f0; --card:#111; --card-foreground:#f4f4f0;
  --popover:#080808; --popover-foreground:#f4f4f0;
  --primary:#ff4a00; --primary-foreground:#080808; --accent:#ff4a00; --accent-foreground:#080808;
  --secondary:#171717; --secondary-foreground:#f4f4f0; --muted:#171717; --muted-foreground:#a8a8a2;
  --border:#ffffff2b; --input:#ffffff40; --ring:#ff4a00; --radius:.25rem;
  --paper:#f4f4f0; --ink:#080808; --page-pad:clamp(1.25rem,4vw,4rem);
}
.site-root::after{display:none}
.navigation{top:1rem;padding:.75rem 0;border-radius:0;background:var(--ink);border-bottom:1px solid var(--border);backdrop-filter:none;box-shadow:none}
.navigation .brand-logo{width:10.625rem}
.desktop-nav{gap:2rem;font-size:1rem}
.desktop-nav .nav-contact{border-radius:0;background:var(--primary);padding:.5rem .5rem .5rem 1.25rem}
.pill,.icon-island,.round-control,.mobile-contact,.skip-link{border-radius:0}
.pill.secondary{background:transparent;border:1px solid var(--border);box-shadow:none}
.pill.secondary:hover{background:var(--paper);color:var(--ink)}
.round-control{border:1px solid var(--border);background:transparent}
.menu-overlay[data-slot=dialog-content]{translate:none!important;background:var(--primary);color:var(--ink);backdrop-filter:none}
.menu-overlay .brand-logo{filter:none}
.menu-overlay .round-control{border-color:#08080855}
.menu-links a{border-bottom:1px solid #08080855;padding:.35rem 0}
.menu-links a span,.menu-location{color:var(--ink)}
.hero{padding-top:10rem;background:var(--ink)}
.hero-eyebrow{text-align:left;font-size:.875rem;letter-spacing:.035em;margin-bottom:2rem}
.hero-title{max-width:none;margin:0;text-align:left;font-size:clamp(4rem,10.4vw,10.5rem);font-weight:800;letter-spacing:-.048em;line-height:1.02}
.hero-title .second-line{width:fit-content;background:var(--primary);color:var(--ink);padding:.035em .12em .08em}
.hero-bottom{max-width:none;margin:2.5rem 0 3rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.hero-bottom>p:first-child{font-size:1.125rem;max-width:23rem}
.hero-visual-shell{padding:0;border-radius:0;background:transparent;box-shadow:none}
.hero-visual{aspect-ratio:16/8;border-radius:0}
.visual-caption{left:0;right:auto;bottom:0;gap:4rem;padding:1rem 1.25rem;background:var(--primary);font-size:.8125rem;letter-spacing:.025em;border-radius:0}
.section-space{padding-top:clamp(5rem,9vw,9rem);padding-bottom:clamp(5rem,9vw,9rem)}
.section-top{padding-top:1.5rem;border-top:1px solid currentColor;margin-bottom:3rem}
.micro-label{font-size:.8125rem;letter-spacing:.045em}
.section-title{font-weight:800;letter-spacing:-.045em}
.project-name-index{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;margin-bottom:5rem;font-size:clamp(3rem,6.8vw,7rem);line-height:1.08;letter-spacing:-.045em;font-weight:700}
.project-name-index a{padding:.015em .06em;transition:color .25s,background .25s}
.project-name-index a:nth-child(2),.project-name-index a:hover{background:var(--primary);color:var(--ink)}
.projects-layout{grid-template-columns:4fr 8fr;gap:5vw}
.projects-heading h2{font-size:clamp(3rem,4.5vw,5rem)}
.project-shell{padding:0;border-radius:0;background:transparent;box-shadow:none}
.project-image,.portfolio-index .project-image,.portfolio-index .project-layer:first-child .project-image{border-radius:0;aspect-ratio:4/3}
.project-open{border-radius:0;color:var(--ink);background:var(--primary)}
.project-meta{padding:1.25rem 0;border-bottom:1px solid var(--border)}
.project-meta h3{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.05}
.project-meta p,.project-index{font-size:.875rem}
.project-summary{padding:1rem 0 0;font-size:1rem}
.marquee-region{transform:none;margin:0;padding:2rem 0}
.marquee-sequence{font-size:clamp(3rem,7vw,7rem);font-weight:800}
.studio,.services{background:var(--paper);color:var(--ink)}
.studio .section-note,.studio-bottom>p{color:#555550}
.studio .brand-logo{filter:none}
.scrub-text{font-size:clamp(2.5rem,5.4vw,5.75rem);font-weight:800}
.shell,.bento-inner,.article-card,.article-image{border-radius:0;box-shadow:none}
.shell{padding:0;background:transparent}
.bento-words .bento-inner{background:#e4e4df}
.bento-words em{color:var(--ink)}
.bento-words p{font-size:clamp(2rem,2.7vw,3rem)}
.bento-motion .bento-inner{background:var(--primary)}
.services .section-title{font-size:clamp(3rem,6.8vw,6.5rem)}
.editorial-service-list{margin-top:5rem;border-top:1px solid #08080880}
.editorial-service{border-bottom:1px solid #08080880}
.editorial-service-trigger{display:grid;grid-template-columns:4rem minmax(0,1fr) 4rem;align-items:center;gap:1rem;width:100%;padding:1.25rem .5rem;color:var(--ink);background:transparent;text-align:left;transition:background .3s}
.editorial-service-trigger:hover,.editorial-service.is-active .editorial-service-trigger{background:var(--primary)}
.editorial-service-trigger:focus-visible{outline-color:var(--ink);outline-offset:-4px}
.editorial-service-index{align-self:start;padding-top:.65rem;font-size:1rem;font-weight:500}
.editorial-service-title{font-size:clamp(3.5rem,7.8vw,8rem);font-weight:700;line-height:1.04;letter-spacing:-.055em}
.editorial-service-symbol{text-align:right;font-size:2.5rem;font-weight:400}
.editorial-service-body{display:grid;grid-template-columns:1.3fr 1fr;gap:4rem;padding:3rem 0 3rem 5rem;animation:service-open .45s var(--ease) both}
.editorial-service-body[hidden]{display:none}
.editorial-service-copy>p{font-size:clamp(1.25rem,2vw,2rem);line-height:1.3;max-width:36rem;letter-spacing:-.025em}
.editorial-service-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.5rem;border-top:1px solid #08080880;padding:1.25rem 0 0;margin:2rem 0;list-style:none;font-size:1rem}
.editorial-service-copy .text-link{justify-self:start}
.service-proof{display:block;align-self:start;overflow:hidden}
.service-proof img{height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .6s var(--ease)}
.service-proof:hover img{transform:scale(1.025)}
.service-proof>span{display:flex;justify-content:space-between;padding:1rem 0;border-bottom:1px solid #08080880;font-size:1rem}
@keyframes service-open{from{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:translateY(0)}}
.manifesto{background:var(--ink)}
.manifesto-mark img{filter:grayscale(1);border-radius:0}
.quote-stage blockquote{font-weight:700}
.journal .article-copy{border-top:1px solid var(--border)}
.contact{border-radius:0}
.contact-title{font-size:clamp(4rem,12vw,12rem);font-weight:800;letter-spacing:-.055em;line-height:1.02}
.contact-button{background:var(--ink)}
.contact-button:hover{background:#252525}
.contact-direct{border-top:1px solid #08080880}
.footer{border-top:1px solid var(--border)}
.page-heading h1{font-weight:800;letter-spacing:-.05em}
.page-heading h1 em,.page-heading h1>span{font-style:normal;color:var(--primary)}
.detail-hero-image,.detail-gallery img,.about-image,.about-photo,.service-detail,.contact-brief,.reading-aside,.post-body figure img,.article-hero-image{border-radius:0}
.contact-brief input,.contact-brief textarea,.contact-brief select{border-radius:0}
.detail-hero-image img,.service-detail-core,.contact-brief-core,.about-visual,.about-visual img,.related-story>a,.related-story img,.post-body figure{border-radius:0}
.about-visual,.detail-hero-image,.related-story>a{padding:0;background:transparent}
[data-motion=off] .editorial-service-body{animation:none}
@media(max-width:1023px){
 .navigation{top:calc(.75rem + env(safe-area-inset-top));padding:.5rem .75rem;backdrop-filter:none}
 .navigation .brand-logo{width:clamp(6.25rem,28vw,8rem)}
 .hero{padding-top:calc(8rem + env(safe-area-inset-top))}
 .project-name-index{font-size:clamp(2.5rem,7vw,5rem)}
 .projects-layout{grid-template-columns:1fr;gap:2rem}
 .editorial-service-trigger{grid-template-columns:3rem minmax(0,1fr) 3rem}
 .editorial-service-title{font-size:clamp(3rem,7vw,5.5rem)}
 .editorial-service-body{gap:2rem;padding-left:3.5rem}
}
@media(max-width:767px){
 :root{--page-pad:1.25rem}
 .hero{padding:calc(7.5rem + env(safe-area-inset-top)) 1.25rem 0}
 .hero-eyebrow{font-size:.75rem;margin-bottom:1.5rem}
 .hero-title{font-size:clamp(2rem,11.5vw,5rem);line-height:1.08;letter-spacing:-.04em}
 .hero-bottom{align-items:start;text-align:left;margin-top:1.5rem;margin-bottom:2rem}
 .hero-bottom>p:first-child{font-size:1.0625rem}
 .hero-visual-shell{padding:0;border-radius:0}
 .hero-visual{aspect-ratio:4/3;border-radius:0}
 .visual-caption{left:0;right:0;bottom:0;border-radius:0;padding:.75rem;font-size:.75rem}
 .section-space{padding:4rem 1.25rem}
 .section-top{padding-top:1rem;margin-bottom:2rem}
 .micro-label{font-size:.75rem}
 .project-name-index{gap:.5rem 1rem;margin-bottom:2.5rem;font-size:clamp(1.875rem,8.5vw,3.5rem)}
 .project-gallery{grid-template-columns:minmax(0,1fr);gap:2.5rem}
 .project-meta{padding:1.25rem 0}
 .project-meta h3{font-size:2rem}
 .project-summary{padding:1rem 0 0}
 .marquee-region{padding:1.5rem 0}
 .marquee-sequence{font-size:2.5rem}
 .scrub-text{font-size:clamp(1.875rem,7.5vw,2.75rem);line-height:1.25}
 .bento-main{height:clamp(20rem,80vw,26rem)}
 .bento-words p{font-size:2.5rem}
 .services .section-title{font-size:clamp(2rem,8vw,3rem)}
 .editorial-service-list{margin-top:2.5rem}
 .editorial-service-trigger{grid-template-columns:1.5rem minmax(0,1fr) 1.75rem;gap:.5rem;padding:1rem .375rem;min-height:4.5rem}
 .editorial-service-index{font-size:.875rem;padding-top:.25rem}
 .editorial-service-title{font-size:clamp(1.65rem,6.9vw,2.9rem);letter-spacing:-.045em}
 .editorial-service-symbol{font-size:1.75rem}
 .editorial-service-body{grid-template-columns:minmax(0,1fr);gap:2rem;padding:1.75rem 0 2rem}
 .editorial-service-copy>p{font-size:1.25rem}
 .editorial-service-copy ul{gap:.5rem 1rem;font-size:1rem}
 .service-proof img{aspect-ratio:16/10}
 .quote-stage blockquote{font-size:clamp(1.75rem,7vw,2.5rem)}
 .contact-title{font-size:clamp(2.75rem,11vw,5rem);line-height:1.08}
 .contact-direct a{font-size:1rem}
}
@media(pointer:coarse){.service-proof:hover img{transform:none}.editorial-service-trigger{touch-action:manipulation}}
@media(prefers-reduced-motion:reduce){.editorial-service-body{animation:none}}

/* Structural repairs and the studio / digital editorial system. */
.project-layer{position:relative;isolation:isolate}
.project-shell{background:var(--ink);opacity:1}
.projects .project-gallery{gap:4rem}
.bento{grid-template-rows:repeat(2,minmax(22rem,auto))}
.bento-words .bento-inner,.bento-motion .bento-inner{height:auto;min-height:100%}
.bento-words .bento-inner{overflow:visible}
.bento-words p{font-size:clamp(2rem,2.7vw,3rem);line-height:1.15}
.bento-words,.bento-motion{min-width:0}
.section-top>span,.digital-project-top,.digital-demo-note{font-size:1rem;line-height:1.5}
.navigation{will-change:transform}
.studio-hero-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:5rem;align-items:end}
.studio-hero h1{font-size:clamp(4rem,7.7vw,8rem);line-height:1.06;max-width:none}
.studio-hero-intro{padding-bottom:.5rem;max-width:32rem}
.studio-hero-intro p{font-size:1.125rem;line-height:1.65;color:var(--muted-foreground)}
.studio-hero-intro p:first-child{font-size:1.5rem;line-height:1.4;color:var(--foreground);margin-bottom:1.25rem}
.studio-hero-intro .text-link{margin-top:2rem;justify-self:start}
.studio-brand-strip{display:flex;align-items:center;justify-content:space-between;gap:4rem;padding:4rem var(--page-pad);background:var(--primary);color:var(--ink)}
.studio-brand-strip .brand-logo{width:clamp(20rem,53vw,58rem);height:auto;max-width:70%;filter:none}
.studio-brand-strip p{font-size:clamp(1.5rem,2.6vw,3rem);line-height:1.12;font-weight:700;letter-spacing:-.035em}
.studio-purpose{background:var(--paper);color:var(--ink)}
.studio-statement{font-size:clamp(3.5rem,8vw,8.5rem);font-weight:800;line-height:1.04;letter-spacing:-.05em;margin-bottom:4rem}
.studio-statement em{font-style:normal;color:var(--primary)}
.studio-purpose-bottom{display:grid;grid-template-columns:1.25fr 1fr;gap:5rem;align-items:center}
.studio-proof{overflow:hidden;min-width:0}
.studio-proof img{height:auto;aspect-ratio:4/3;object-fit:cover}
.studio-proof a{display:flex;justify-content:space-between;gap:1rem;font-size:1rem;line-height:1.5;border-bottom:1px solid #08080860;padding:1rem 0}
.studio-purpose-copy{max-width:32rem}
.studio-purpose-copy p{font-size:1.125rem;line-height:1.7;color:#555550;margin-bottom:1.5rem}
.studio-purpose-copy p:first-child{font-size:clamp(1.5rem,2.6vw,2.5rem);line-height:1.2;letter-spacing:-.03em;color:var(--ink);font-weight:700}
.studio-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;margin-top:5rem}
.studio-value{border-top:1px solid #08080880;padding-top:1.5rem}
.studio-value h3{font-size:clamp(2rem,3.2vw,3.5rem);font-weight:700;line-height:1.1;letter-spacing:-.035em;margin:1.5rem 0 1rem}
.studio-value p{font-size:1.0625rem;line-height:1.65;color:#555550}
.studio-process-grid{display:grid;grid-template-columns:1fr 1.7fr;gap:5rem}
.studio-process h2{font-size:clamp(3rem,5vw,5.5rem)}
.studio-process h2 span{color:var(--primary)}
.studio-process ol{list-style:none;padding:0;margin:0}
.studio-step{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:1.5rem;border-top:1px solid var(--border);padding:2rem 0}
.studio-step h3{font-size:clamp(2.5rem,4.5vw,4.5rem);font-weight:700;line-height:1.1;letter-spacing:-.045em}
.studio-step p{font-size:1.125rem;line-height:1.6;max-width:38rem;color:var(--muted-foreground);margin-top:1rem}
.studio-step .micro-label{color:var(--primary);padding-top:.5rem}
.studio-digital,.home-digital{background:var(--secondary)}
.studio-digital h2,.home-digital h2{font-size:clamp(3.5rem,7.5vw,8rem);font-weight:800;letter-spacing:-.045em;line-height:1.08;margin:2rem 0}
.home-digital h2 span{color:var(--primary)}
.studio-digital-bottom,.home-digital-bottom{display:flex;justify-content:space-between;align-items:center;gap:3rem;margin-top:3rem}
.studio-digital-bottom p,.home-digital-bottom p{font-size:1.25rem;line-height:1.55;color:var(--muted-foreground);max-width:38rem}
.digital-heading h1{font-size:clamp(4rem,9.8vw,10rem);line-height:1.04;letter-spacing:-.05em}
.digital-intro{display:flex;justify-content:space-between;gap:4rem;align-items:center;margin-top:3rem;border-top:1px solid var(--border);padding-top:1.5rem}
.digital-intro>p{font-size:1.25rem;line-height:1.55;color:var(--muted-foreground);max-width:44rem}
.digital-disciplines{display:flex;flex-wrap:wrap;gap:.5rem 2rem;padding:2.5rem var(--page-pad);background:var(--primary);color:var(--ink);font-size:clamp(2.5rem,5.3vw,5.25rem);font-weight:800;line-height:1.1;letter-spacing:-.04em}
.digital-collection .section-top{border-top:0;padding-top:0}
.digital-collection .section-top>p{font-size:1rem;color:var(--muted-foreground)}
.digital-project{border-top:1px solid var(--border);padding:2rem 0 3rem;min-width:0}
.digital-project-top{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;gap:1rem;margin-bottom:2rem;color:var(--muted-foreground)}
.digital-project-top .micro-label{color:var(--primary)}
.digital-access{border:1px solid var(--border);padding:.375rem .625rem;font-size:.875rem}
.digital-project h3{font-size:clamp(3rem,6.6vw,7rem);font-weight:700;line-height:1.12;letter-spacing:-.045em;max-width:100%;overflow-wrap:break-word}
.digital-project h3 a{box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:color .25s}
.digital-project h3 a:hover{color:var(--primary)}
.digital-project.lorca h3 a,.digital-project.europa h3 a{background:var(--primary);color:var(--ink);padding:0 .06em}
.digital-project-bottom{display:flex;align-items:start;justify-content:space-between;gap:3rem;margin-top:2rem}
.digital-project-bottom>p{font-size:1.125rem;line-height:1.6;color:var(--muted-foreground);max-width:43rem}
.digital-project-bottom .text-link{flex-shrink:0}
.digital-image{display:block;overflow:hidden;aspect-ratio:16/9;margin-bottom:2rem}
.digital-image img{height:100%;object-fit:cover;object-position:top}
.digital-demo-note{padding-top:2rem;border-top:1px solid var(--border);color:var(--muted-foreground);max-width:50rem}
.digital-demo-note a{text-decoration:underline;text-underline-offset:.2rem;color:var(--foreground)}
.digital-offer{background:var(--paper);color:var(--ink)}
.digital-offer h2{font-size:clamp(3.5rem,8vw,8rem);font-weight:800;line-height:1.08;letter-spacing:-.045em}
.digital-offer h2 em{font-style:normal;background:var(--primary);padding:0 .06em}
.digital-offer-bottom{display:flex;justify-content:space-between;align-items:center;gap:3rem;margin-top:3rem}
.digital-offer-bottom p{font-size:1.25rem;line-height:1.6;max-width:37rem}
.contact-brief select{width:100%;min-height:3.25rem;padding:.75rem 1rem;margin-bottom:1.5rem;background:var(--card);color:var(--foreground);border:1px solid var(--input);font:inherit;border-radius:0;outline-color:var(--primary)}
.contact-brief label span{color:var(--muted-foreground)}
.contact-brief .privacy-consent{display:flex;align-items:start;gap:.75rem;line-height:1.55;margin-top:1.5rem;font-size:1rem}
.contact-brief .privacy-consent input{appearance:auto;flex:0 0 1.25rem;width:1.25rem;height:1.25rem;min-height:1.25rem;padding:0;margin-top:.2rem;accent-color:var(--primary)}
.privacy-consent a{text-decoration:underline;text-underline-offset:.2rem;color:var(--foreground)}
.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-brief button:disabled{opacity:.65;cursor:wait;transform:none}
.form-feedback{margin-top:1.5rem;border:1px solid var(--border);padding:1.25rem;outline-offset:4px}
.form-feedback p{margin:0;color:var(--foreground)}
.form-feedback.success{border-color:var(--primary)}
.form-feedback.error{border-color:var(--destructive)}
.form-feedback a{display:inline-flex;min-height:2.75rem;align-items:center;margin-top:.75rem;color:var(--primary);text-decoration:underline;text-underline-offset:.2rem}
@media(max-width:1100px){.studio-hero-grid,.studio-purpose-bottom,.studio-process-grid{gap:3rem}.desktop-nav{gap:1.25rem;font-size:.9375rem}}
@media(max-width:1023px){
 .studio-hero-grid{grid-template-columns:1fr;gap:2.5rem}
 .studio-hero-intro{max-width:40rem}
 .studio-hero h1{font-size:clamp(3.25rem,8.6vw,8rem)}
 .studio-values{gap:2rem}
 .studio-process-grid{grid-template-columns:1fr}
 .digital-intro{gap:2rem}
 .digital-project h3{font-size:clamp(3rem,7vw,6rem)}
 .bento{grid-template-rows:repeat(2,minmax(22rem,auto))}
}
@media(max-width:767px){
 .bento{grid-template-rows:auto}
 .bento-words .bento-inner,.bento-motion .bento-inner{height:auto;min-height:18rem}
 .bento-words p{font-size:2.5rem}
 .projects .project-gallery{gap:2.5rem}
 .studio-hero h1{font-size:clamp(2.75rem,12vw,4rem);line-height:1.1}
 .studio-hero-intro p{font-size:1.0625rem}
 .studio-hero-intro p:first-child{font-size:1.375rem}
 .studio-brand-strip{flex-direction:column;align-items:start;gap:2rem;padding:2.5rem 1.25rem}
 .studio-brand-strip .brand-logo{width:100%;max-width:28rem}
 .studio-brand-strip p{font-size:1.5rem}
 .studio-brand-strip p br{display:none}
 .studio-brand-strip p{max-width:20rem;word-spacing:.25rem}
 .studio-statement{font-size:clamp(2.5rem,10vw,4rem);margin-bottom:2.5rem}
 .studio-purpose-bottom{grid-template-columns:1fr;gap:2.5rem}
 .studio-purpose-copy p{font-size:1.0625rem}
 .studio-purpose-copy p:first-child{font-size:1.5rem}
 .studio-values{grid-template-columns:1fr;gap:2rem;margin-top:3rem}
 .studio-value h3{font-size:2rem;margin-top:1rem}
 .studio-process-grid{gap:2.5rem}
 .studio-process h2{font-size:2.75rem}
 .studio-step{grid-template-columns:1.5rem minmax(0,1fr);gap:1rem;padding:1.5rem 0}
 .studio-step h3{font-size:2.25rem}
 .studio-step p{font-size:1.0625rem}
 .studio-digital h2,.home-digital h2{font-size:clamp(2.5rem,9vw,4rem)}
 .studio-digital-bottom,.home-digital-bottom,.digital-intro,.digital-project-bottom,.digital-offer-bottom{flex-direction:column;align-items:start;gap:1.5rem;margin-top:2rem}
 .studio-digital-bottom p,.home-digital-bottom p,.digital-intro>p,.digital-offer-bottom p{font-size:1.0625rem;line-height:1.6}
 .studio-digital .pill,.home-digital .pill,.digital-intro .pill,.digital-offer .pill{width:100%;min-height:3.25rem;white-space:normal;justify-content:space-between}
 .digital-heading h1{font-size:clamp(2.75rem,11.8vw,5rem);line-height:1.1}
 .digital-disciplines{padding:2rem 1.25rem;gap:.25rem 1rem;font-size:2rem}
 .digital-collection .section-top{align-items:start}
 .digital-project{padding:1.5rem 0 2.5rem}
 .digital-project-top{grid-template-columns:1.5rem minmax(0,1fr);gap:.5rem;margin-bottom:1.5rem;font-size:.875rem}
 .digital-access{grid-column:2;justify-self:start;font-size:.8125rem}
 .digital-project h3{font-size:clamp(2rem,8.9vw,3.5rem);line-height:1.15}
 .digital-project-bottom>p{font-size:1.0625rem}
 .digital-project-bottom .text-link{min-height:2.75rem}
 .digital-demo-note{font-size:1rem;line-height:1.65}
 .digital-offer h2{font-size:clamp(2.5rem,10vw,4rem)}
 .contact-brief select{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){.navigation{will-change:auto}}

/* Karbayo: precise light framing, orange / ink panels, generous image scale. */
:root{--background:#eaeae5;--foreground:#111110;--card:#deded8;--card-foreground:#111110;--popover:#eaeae5;--popover-foreground:#111110;--primary:#ff4a00;--primary-foreground:#111110;--secondary:#deded8;--secondary-foreground:#111110;--muted:#deded8;--muted-foreground:#60605b;--border:#11111030;--input:#11111055;--paper:#eaeae5;--ink:#111110;--radius:0;--ease:cubic-bezier(.22,.8,.2,1)}
body{font-weight:400}
.brand-logo{filter:none}
.navigation{position:sticky;top:0;left:auto;right:auto;max-width:none;margin:0;padding:0 var(--page-pad);background:var(--paper);color:var(--ink);border-bottom:1px solid var(--border);box-shadow:none;backdrop-filter:none}
.navigation-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;width:100%;max-width:1520px;margin:auto;padding:.75rem 0}
.navigation .brand-logo{width:8.5rem}
.navigation .desktop-nav{font-size:.9375rem;font-weight:500;gap:1.75rem}
.desktop-nav>a{position:relative;display:inline-flex;align-items:center;min-height:2.75rem}
.desktop-nav>a::after{content:"";position:absolute;left:0;right:0;bottom:.25rem;height:2px;background:var(--primary);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.desktop-nav>a:hover::after,.desktop-nav>a[aria-current=page]::after{transform:scaleX(1)}
.desktop-nav .nav-contact{background:transparent;color:var(--ink);padding:.5rem 0;gap:.625rem;margin-left:.5rem}
.desktop-nav .nav-contact:hover{background:transparent;color:var(--ink)}
.desktop-nav .nav-contact .icon-island{background:var(--primary);color:var(--ink);width:1.5rem;height:1.5rem;font-size:1rem}
.menu-button span{background:var(--ink)}
.mobile-contact{background:transparent;color:var(--ink);font-weight:500;padding:.5rem;min-height:2.75rem}
.menu-overlay .brand-logo{filter:none}
.menu-links a{font-weight:500;animation:none}.menu-links a[aria-current=page]{border-bottom-width:2px}.menu-overlay[data-slot=dialog-content]{animation:none}
.micro-label,.hero-eyebrow{font-size:.875rem;letter-spacing:.025em;font-weight:500;line-height:1.5}
.section-space{padding-top:clamp(5rem,9vw,10rem);padding-bottom:clamp(5rem,9vw,10rem)}
.section-top{border-top:1px solid var(--border);padding-top:1rem;margin-bottom:3rem}
.section-title{font-weight:500;letter-spacing:-.045em}
.pill{font-weight:500;transition:background .5s var(--ease),color .5s var(--ease),transform .5s var(--ease);min-height:3.25rem}
.pill.primary{background:var(--ink);color:var(--paper)}
.pill.primary .icon-island{background:#ffffff18;color:inherit}
.pill.primary:hover{background:var(--primary);color:var(--ink)}
.pill.secondary{border-color:var(--border);color:var(--ink)}
.pill.secondary:hover{background:var(--ink);color:var(--paper)}
.text-link{font-weight:500}
.text-link .icon-island{background:var(--ink);color:var(--paper);width:1.8rem;height:1.8rem}
.hero.agency-hero{background:var(--paper);padding-top:3rem}
.hero-kicker{display:flex;align-items:start;justify-content:space-between;gap:2rem;margin-bottom:2rem}
.hero-kicker .hero-eyebrow{margin:0;color:var(--ink)}
.hero-kicker>p:last-child{text-align:right;font-size:.875rem;line-height:1.5;color:var(--muted-foreground)}
.hero-stage{display:grid;grid-template-columns:1.12fr 1fr;gap:.75rem;min-height:clamp(34rem,43vw,43rem)}
.hero-copy-panel{display:flex;flex-direction:column;justify-content:space-between;gap:3rem;background:var(--primary);color:var(--ink);padding:clamp(1.75rem,3.5vw,4rem);min-width:0}
.hero-title{font-size:clamp(3.5rem,6.6vw,7.25rem);font-weight:500;letter-spacing:-.055em;line-height:1;max-width:72rem}
.hero-title .second-line{color:inherit;background:none;padding:0;width:100%}
.hero-title .line-mask{padding-bottom:.14em;margin-bottom:-.14em}
.hero-bottom{display:block;padding:0;border:0;margin:0}
.hero-bottom>p:first-child{font-size:1.125rem;line-height:1.5;max-width:26rem;color:var(--ink)}
.hero-actions{margin-top:2rem;gap:.75rem;flex-wrap:wrap}
.hero-actions .pill{font-size:1rem;min-height:3.25rem}
.hero-copy-panel .pill.primary:hover{background:var(--paper);color:var(--ink)}
.hero-copy-panel .pill.secondary{border-color:#11111055}
.hero-visual-shell{background:var(--ink);margin:0;min-width:0;display:flex;padding:0}
.hero-visual{width:100%;height:100%;aspect-ratio:auto;min-height:34rem;transform-origin:center;background:var(--ink)}
.hero-visual img{height:100%;margin:0;object-position:50% 50%;object-fit:cover}
.visual-caption{position:absolute;left:0;right:0;bottom:0;background:#111110eb;color:var(--paper);padding:1.75rem;display:flex;align-items:end;gap:1rem;font-size:.875rem;letter-spacing:0}
.visual-caption>span:first-child{display:flex;flex-direction:column;gap:.5rem}
.visual-caption strong{font-size:clamp(2rem,3vw,3rem);font-weight:500;line-height:1.05;letter-spacing:-.04em}
.visual-caption .micro-label{color:#b9b9b0}
.visual-caption>.icon-island{display:flex;width:2.75rem;height:2.75rem;background:var(--primary);color:var(--ink);font-size:1.5rem}
.visual-caption:hover{background:var(--ink)}
.hero-baseline{display:flex;justify-content:space-between;gap:2rem;padding:1.25rem 0;font-size:.875rem;line-height:1.5;color:var(--muted-foreground)}
.hero-baseline a{color:var(--ink);display:inline-flex;align-items:center;gap:1rem;min-height:2rem}
.projects{background:var(--paper)}
.project-name-index{gap:1.5rem;font-size:1rem;font-weight:400;letter-spacing:0;line-height:1.5;margin:0 0 3rem}
.project-name-index a{padding:0;border-bottom:1px solid var(--border);min-height:2rem}
.project-name-index a:nth-child(2){background:transparent;color:var(--ink)}
.project-name-index a:hover{background:none;color:#b73200;border-color:#b73200}
.projects-layout{grid-template-columns:3.5fr 8.5fr;gap:6vw}
.projects-heading h2{font-weight:500;font-size:clamp(2.75rem,4vw,4.75rem);letter-spacing:-.045em}
.projects-heading h2>span{color:var(--ink)}
.projects-heading>p{font-size:1.0625rem}
.project-counter{margin-top:3rem}
.project-counter>span:first-child{font-weight:400;font-size:5rem;letter-spacing:-.06em}
.projects .project-gallery{gap:5rem}
.project-shell{background:var(--paper);color:var(--ink);--muted-foreground:#60605b}
.project-image,.portfolio-index .project-image,.portfolio-index .project-layer:first-child .project-image{aspect-ratio:3/2}
.project-meta{align-items:end;padding:1.25rem 0;border:0}
.project-meta p,.project-index{font-size:.875rem;line-height:1.5}
.project-meta h3{font-size:clamp(2.5rem,4.3vw,5rem);font-weight:500;line-height:1.05}
.project-meta h3 a:hover{color:#b73200}
.project-summary{font-size:1.0625rem;line-height:1.55;max-width:40rem;padding:0}
.project-open{background:var(--paper);color:var(--ink);width:2.75rem;height:2.75rem;font-size:1.5rem;bottom:1rem;right:1rem}
.marquee-region{background:var(--ink);color:var(--paper);padding:2rem 0}
.marquee-sequence{font-weight:500;font-size:clamp(3rem,6vw,6rem)}
.marquee-mark{color:var(--primary)}
.studio{background:var(--paper)}
.scrub-text{font-size:clamp(3rem,6.1vw,6.75rem);font-weight:500;letter-spacing:-.05em;line-height:1.12;max-width:1400px}
.scrub-text .inline-work{display:inline-flex;width:1.45em;height:.82em;vertical-align:middle;margin:0 .12em .1em;overflow:hidden}
.inline-work img{height:100%;width:100%;object-fit:cover}
.studio-bottom{grid-template-columns:1fr 2fr 1fr;gap:3rem;align-items:start;margin-top:4rem}
.studio-bottom>p{font-size:1.125rem;line-height:1.65}
.studio-signature .brand-logo{width:clamp(9rem,16vw,13rem)}
.studio-bottom .text-link{white-space:nowrap}
.bento{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:minmax(29rem,auto) auto;gap:.75rem;grid-auto-flow:dense;margin-top:5rem}
.bento-main{grid-column:span 6;grid-row:1;height:auto;min-height:29rem}
.bento-words{grid-column:span 6;grid-row:1;min-height:29rem}
.bento-main .bento-inner{height:100%}
.bento-main .bento-inner>div{left:2rem;right:2rem;bottom:2rem}
.bento-main img{filter:brightness(.65)}
.bento-main h3{font-size:clamp(2rem,3.2vw,3.5rem);font-weight:500;max-width:32rem;line-height:1.1}
.bento-words .bento-inner{padding:2.5rem;background:var(--primary);height:100%;display:flex;flex-direction:column;justify-content:space-between;gap:2.5rem}
.bento-words p{font-weight:500;font-size:clamp(2.5rem,4.8vw,5.5rem);line-height:1.06;letter-spacing:-.045em;margin:0}
.bento-words em{color:inherit}
.bento-motion{grid-column:1/-1;grid-row:2;min-height:0}
.bento-motion .bento-inner{padding:2rem;min-height:0;display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;gap:2rem;background:var(--ink);color:var(--paper)}
.brand-mark{display:block;width:4rem;aspect-ratio:302/304;background:currentColor;mask:url('images/karbayo-logo.png') 0 0/568.2119% 136.5132% no-repeat;-webkit-mask:url('images/karbayo-logo.png') 0 0/568.2119% 136.5132% no-repeat}
.kinetic-word{justify-content:center;gap:1rem;color:var(--primary);margin:0;padding:1rem 0}
.kinetic-word span.brand-mark{width:clamp(2.75rem,4vw,4rem);flex:0 0 auto;color:var(--primary);-webkit-text-stroke:0}
.bento-motion p{font-size:1rem;line-height:1.5;margin:0;justify-self:end}
.home-digital{background:var(--paper);padding-top:0}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.capability-panel{min-height:37rem;padding:clamp(1.75rem,3.5vw,4rem);display:flex;flex-direction:column;align-items:start;overflow:hidden}
.capability-brand{background:var(--primary);color:var(--ink)}
.capability-digital{background:var(--ink);color:var(--paper)}
.capability-panel h2{font-size:clamp(3rem,5.7vw,6.5rem);font-weight:500;line-height:1.04;margin:3rem 0 2rem}
.capability-panel>p:not(.micro-label){font-size:1.125rem;line-height:1.55;max-width:30rem}
.capability-panel ul{list-style:none;padding:1.5rem 0 0;margin:2rem 0;border-top:1px solid #11111060;width:100%;font-size:1rem;line-height:1.85}
.capability-panel .text-link{margin-top:auto;padding-top:2rem;gap:1rem;width:100%;justify-content:space-between}
.capability-digital .text-link .icon-island{background:var(--paper);color:var(--ink)}
.digital-preview-names{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin:2rem 0;color:#ffffff65;font-size:clamp(2rem,3.3vw,3.75rem);font-weight:500;line-height:1.08;letter-spacing:-.04em}
.services{background:var(--paper);padding-top:0}
.services .section-title{font-size:clamp(3rem,6.6vw,7rem);font-weight:500;line-height:1.06}
.editorial-service-list{display:flex;gap:.75rem;align-items:stretch;margin-top:4rem;border:0}
.editorial-service{flex:1;min-width:0;display:flex;flex-direction:column;background:#d6d6cf;border:0;--muted-foreground:#41413d;--border:#11111055}
.editorial-service.is-active{flex:1.8}
.editorial-service:nth-child(1){background:var(--primary)}
.editorial-service:nth-child(3){background:#111110;color:var(--paper);--ink:#eaeae5;--muted-foreground:#b0b0a8;--border:#ffffff40}
.editorial-service-trigger{grid-template-columns:1.5rem minmax(0,1fr) 1.5rem;align-items:center;gap:.5rem;padding:1.75rem 1.5rem;color:inherit}
.editorial-service-trigger:hover,.editorial-service.is-active .editorial-service-trigger{background:transparent}
.editorial-service-index{font-size:.875rem;padding-top:0;align-self:center}
.editorial-service-title{font-size:clamp(1.5rem,2.4vw,3rem);font-weight:500;letter-spacing:-.045em;line-height:1.1}
.editorial-service-symbol{font-size:1.5rem}
.editorial-service-body{display:block;padding:0 1.5rem 1.75rem;animation:none}
.editorial-service-body[hidden]{display:none}
.editorial-service-copy>p{font-size:1.25rem;line-height:1.4}
.editorial-service-copy ul{display:block;font-size:.9375rem;line-height:1.75;border-color:var(--border);padding-top:1rem;margin:1.5rem 0}
.editorial-service-copy .text-link{font-size:.9375rem;gap:1rem;justify-content:space-between}
.service-proof{margin-top:auto;display:block;align-self:stretch;padding:0 1.5rem 1.25rem}
.service-proof img{height:auto;aspect-ratio:4/5;object-fit:cover}
.editorial-service.is-active .service-proof img{aspect-ratio:16/9}
.service-proof>span{padding:.75rem 0 0;border:0;font-size:.875rem;line-height:1.5}
.editorial-service:nth-child(3) .icon-island{background:var(--paper);color:#111110}
.manifesto,.studio-process,.studio-digital,.related-section,.footer{background:#111110;color:var(--paper);--foreground:#eaeae5;--muted-foreground:#aaa99f;--border:#ffffff30}
.manifesto{grid-template-columns:1fr 3fr;gap:5rem}
.manifesto-mark .brand-mark{width:clamp(5rem,10vw,9rem);color:var(--primary)}
.quote-stage{min-height:17rem}
.quote-stage blockquote{font-size:clamp(2.5rem,4.7vw,5rem);font-weight:400;letter-spacing:-.045em;line-height:1.12}
.manifesto .round-control{background:transparent;border-color:#ffffff55}
.journal{background:var(--paper);color:var(--ink);--foreground:#111110;--muted-foreground:#60605b;--border:#11111030;border-radius:0}
.journal .section-title{font-size:clamp(2.75rem,5.2vw,5.5rem);font-weight:500;line-height:1.08}
.journal-grid{gap:3rem 1.5rem;grid-auto-flow:dense}
.blog-index{padding-top:1.5rem}
.blog-index .journal-grid,.related-section .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.article-card{background:transparent;color:inherit;--muted-foreground:inherit;padding:0;border-radius:0;box-shadow:none}
.article-card-copy{padding:1.25rem 0 0;border-top:1px solid var(--border);margin-top:1.25rem}
.article-card :is(h2,h3){font-weight:500;font-size:clamp(1.5rem,2vw,2.2rem);line-height:1.2;letter-spacing:-.025em;margin-bottom:1rem;overflow-wrap:break-word}.article-card :is(h2,h3) a:hover{color:#b73200}
.article-image{aspect-ratio:4/3;overflow:hidden}
.article-image img{transition:transform .8s var(--ease)}
.article-image:hover img{transform:scale(1.05)}
.article-date{font-size:.875rem;color:var(--muted-foreground)}
.article-read{font-size:1rem;min-height:2.75rem;border-top:1px solid var(--border);padding-top:.75rem}
.article-read .icon-island{background:var(--ink);color:var(--paper)}
.related-section .article-read .icon-island{background:var(--primary);color:var(--ink)}
.related-section .article-card :is(h2,h3) a:hover{color:var(--primary)}
.page-heading.blog-heading h1{font-size:clamp(3rem,6.3vw,6.25rem)}
.contact-title{font-size:clamp(3.5rem,10.6vw,11.5rem);font-weight:500;line-height:1.03;letter-spacing:-.05em}
.contact .section-top{border-color:#11111055}
.contact-button{background:var(--ink);color:var(--paper)}
.contact-direct{font-size:1.125rem;line-height:1.5}
.commercial-footer{padding-top:5rem;padding-bottom:2rem;gap:3rem 2rem;border:0}
.footer .brand-logo{filter:brightness(0) invert(1)}
.footer-column{font-size:1rem;line-height:1.6}
.footer-column>span{font-size:.875rem;letter-spacing:.025em}
.footer-legal{font-size:.875rem}
.footer-brand .brand-logo{width:12rem;max-width:100%}
.page-heading{padding-top:4.5rem;padding-bottom:4rem;background:var(--paper)}
.page-heading h1{font-weight:500;font-size:clamp(3.75rem,7.8vw,8.5rem);line-height:1.06;letter-spacing:-.05em;max-width:1400px}
.page-heading h1>span,.page-heading h1 em{color:var(--ink);background:var(--primary);padding:0 .06em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.page-heading>p:last-of-type{font-size:1.25rem;line-height:1.6}
.detail-heading h1{font-size:clamp(2.5rem,4.5vw,5rem)}
.case-study .detail-heading h1{font-size:clamp(4rem,9vw,10rem)}
.project-facts{border-top:1px solid var(--border);padding-top:1.5rem;max-width:900px}
.project-facts dt,.article-byline,.breadcrumbs{font-size:.875rem}
.portfolio-index{gap:5rem 1.5rem}
.portfolio-index .project-layer:first-child .project-image{aspect-ratio:16/8}
.portfolio-index .project-meta h3{font-size:clamp(3rem,5vw,5.5rem)}
.reading-aside{background:#deded8}
.reading-aside .text-link{color:var(--ink)}
.post-body{font-weight:400;color:var(--ink)}
.post-body :is(p,li,blockquote){color:inherit}
.post-body a{color:#a82e00;text-decoration:underline;text-underline-offset:.2em}
.post-body h2{font-weight:500;letter-spacing:-.035em}
.post-body strong{font-weight:700}
.related-section .section-title{font-weight:500}
.related-section .project-shell{padding-bottom:1.5rem}
.related-section .project-meta,.related-section .project-summary{padding-left:1.5rem;padding-right:1.5rem}
.related-section .article-card{color:var(--paper);--muted-foreground:#aaa99f}
.service-details{gap:.75rem}
.service-detail-core{padding:3rem;background:#111110;color:var(--paper);--foreground:#eaeae5;--muted-foreground:#b0b0a8}
.service-detail h2{font-size:clamp(2.5rem,3.5vw,4.5rem);font-weight:500;line-height:1.08}
.service-detail p{font-size:1.125rem}
.service-detail .pill.primary{background:var(--primary);color:#111110}
.service-detail:nth-child(2) .service-detail-core{background:var(--primary);color:#111110;--foreground:#111110;--muted-foreground:#111110}
.service-detail:nth-child(2) .pill.primary{background:#111110;color:var(--paper)}
.service-detail:nth-child(3) .service-detail-core{background:#d6d6cf;color:#111110;--foreground:#111110;--muted-foreground:#41413d}
.service-detail:nth-child(3) .pill.primary{background:#111110;color:var(--paper)}
.service-positioning h2,.related-story h2{font-weight:500;line-height:1.1}
.studio-hero h1{font-size:clamp(4rem,7.7vw,8rem);font-weight:500}
.studio-hero h1 span{background:var(--primary);padding:0 .06em}
.studio-brand-strip{gap:3rem;padding:4rem var(--page-pad)}
.studio-brand-strip p{font-weight:500}
.studio-statement{font-weight:500;line-height:1.07}
.studio-statement em{color:#b73200}
.studio-values{gap:.75rem;grid-template-columns:1.1fr 1fr 1fr}
.studio-value{border:0;padding:2.5rem;background:#d6d6cf}
.studio-value:nth-child(2){background:var(--primary)}
.studio-value:nth-child(3){background:#111110;color:var(--paper)}
.studio-value h3{font-weight:500}
.studio-value p{color:#41413d}
.studio-value:nth-child(3) p{color:#aaa99f}
.studio-step h3{font-weight:500}
.studio-step .micro-label{color:var(--paper)}
.studio-process h2 span{color:var(--primary)}
.studio-digital h2{font-weight:500}
.studio-digital .pill.primary{background:var(--primary);color:#111110}
.digital-heading h1{font-size:clamp(4rem,9vw,10rem);font-weight:500}
.digital-intro{border:0}
.digital-disciplines{font-weight:500;font-size:clamp(2.5rem,5vw,5rem)}
.digital-collection{background:var(--paper)}
.digital-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;grid-auto-flow:dense}
.digital-project{display:flex;flex-direction:column;border:0;padding:2.5rem;min-height:26rem;background:#111110;color:var(--paper);--muted-foreground:#b0b0a8;--border:#ffffff45}
.digital-project:nth-child(3n+2){background:#d6d6cf;color:#111110;--muted-foreground:#41413d;--border:#11111055}
.digital-project:nth-child(3n+1){background:var(--primary);color:#111110;--muted-foreground:#111110;--border:#11111055}
.digital-project-top{font-size:.875rem;grid-template-columns:1.5rem minmax(0,1fr);align-items:start;margin-bottom:2.5rem}
.digital-project-top .micro-label{color:inherit}
.digital-access{grid-column:2;justify-self:start;padding:0;border:0;font-size:.875rem;color:var(--muted-foreground)}
.digital-project h3{font-size:clamp(2.5rem,4.1vw,4.5rem);font-weight:500;line-height:1.08}
.digital-project.lorca h3 a,.digital-project.europa h3 a{padding:0;background:transparent;color:inherit}
.digital-project h3 a:hover{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.1em}
.digital-project-bottom{margin-top:auto;padding-top:2.5rem;flex-direction:column;gap:1.5rem;align-items:start}
.digital-project-bottom>p{font-size:1.0625rem;line-height:1.55}
.digital-project-bottom .text-link{width:100%;justify-content:space-between}
.digital-project .icon-island{background:var(--paper);color:#111110}
.digital-project:nth-child(3n+1) .icon-island,.digital-project:nth-child(3n+2) .icon-island{background:#111110;color:var(--paper)}
.digital-demo-note{border:0;margin-top:2rem;padding:0}
.digital-offer h2{font-weight:500}
.contact-page-actions>.text-link{border-radius:0}
.contact-info h2{font-weight:500}
.contact-info>a{font-weight:500;color:var(--ink)}
.contact-brief-core{background:#deded8;padding:3rem}
.contact-brief h2{font-weight:500;letter-spacing:-.04em}
.contact-brief input,.contact-brief textarea,.contact-brief select{background:transparent;color:var(--ink);border-color:#11111055}
.contact-brief input:focus-visible,.contact-brief textarea:focus-visible,.contact-brief select:focus-visible{outline:2px solid #111110;outline-offset:3px}
.contact-brief .privacy-consent span{color:#41413d}
.contact-brief .privacy-consent a{color:var(--ink)}
.contact-brief .form-feedback.error{border-color:#9f2700}
.contact-brief .form-feedback a{color:#9f2700}
@media(min-width:1600px){.hero-stage{min-height:40rem}.hero-title{font-size:7rem}}
@media(max-width:1200px){.studio-bottom{grid-template-columns:1fr 2fr;gap:2rem}.studio-bottom .text-link{grid-column:2;justify-self:start}.editorial-service-trigger{padding:1.5rem 1rem}.editorial-service-body{padding:0 1rem 1.5rem}.service-proof{padding:0 1rem 1rem}.digital-project{padding:2rem}.studio-value{padding:2rem}}
@media(max-width:1023px){
 .navigation{top:0;padding:env(safe-area-inset-top) max(1.25rem,env(safe-area-inset-right)) 0 max(1.25rem,env(safe-area-inset-left))}
 .navigation-inner{padding:.5rem 0;gap:.5rem}
 .navigation .menu-button{border-left:1px solid var(--border);height:2.75rem}
 .navigation .brand-logo{width:clamp(6.5rem,25vw,8rem)}
 .hero.agency-hero{padding-top:2.5rem}
 .journal .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .journal .article-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
 .journal .article-card:last-child .article-card-copy{margin:0}
 .hero-stage{min-height:30rem}
 .hero-copy-panel{padding:1.5rem;gap:2rem}
 .hero-title{font-size:clamp(2.75rem,6.4vw,4.75rem)}
 .hero-bottom>p:first-child{font-size:1rem;max-width:none}
 .hero-actions{margin-top:1.5rem;flex-direction:column}
 .hero-actions .pill{width:100%;font-size:1rem}
 .hero-visual{min-height:30rem}
 .visual-caption{padding:1.25rem}
 .visual-caption strong{font-size:2rem}
 .projects-layout{grid-template-columns:1fr;gap:2.5rem}
 .projects-heading h2{font-size:3.5rem}
 .project-gallery{display:flex}
 .studio-bottom{grid-template-columns:1fr 3fr}
 .studio-bottom .text-link{grid-column:2}
 .bento{grid-template-rows:minmax(25rem,auto) auto}
 .bento-main,.bento-words{min-height:25rem}
 .bento-words .bento-inner{padding:2rem}
 .bento-motion .bento-inner{grid-template-columns:1fr 1fr;gap:1rem}
 .bento-motion p{grid-column:2;justify-self:start}
 .kinetic-word{font-size:3rem;justify-content:start}
 .capability-panel{padding:2rem;min-height:34rem}
 .capability-panel h2{font-size:clamp(3rem,5.7vw,5rem)}
 .editorial-service-list{flex-direction:column;gap:.75rem}
 .editorial-service{flex:none}.editorial-service.is-active{flex:none}
 .editorial-service-trigger{padding:1.5rem;grid-template-columns:2rem minmax(0,1fr) 2rem}
 .editorial-service-title{font-size:2.5rem}
 .editorial-service-body{padding:0 1.5rem 1.5rem}
 .editorial-service .service-proof{display:none}
 .editorial-service.is-active .service-proof{display:block;padding:0 1.5rem 1.5rem}
 .editorial-service.is-active .service-proof img{aspect-ratio:16/8}
 .manifesto{gap:3rem;grid-template-columns:1fr 3fr}
 .quote-stage blockquote{font-size:3rem}
 .studio-hero h1{font-size:clamp(3.5rem,8.6vw,7rem)}
 .studio-values{grid-template-columns:1fr}
 .studio-value{padding:2rem}
 .studio-value h3{font-size:3rem}
 .digital-project h3{font-size:2.75rem}
 .digital-project{min-height:25rem;padding:1.75rem}
}
@media(max-width:767px){
 .section-space{padding:4rem 1.25rem}
 .micro-label,.hero-eyebrow{font-size:.875rem;letter-spacing:.015em}
 .hero.agency-hero{padding:2rem 1.25rem 0}
 .hero-kicker{gap:1rem;margin-bottom:1.5rem}.hero-kicker>p:last-child{display:none}
 .hero-kicker .hero-eyebrow{max-width:21rem}
 .hero-stage{grid-template-columns:1fr;gap:.625rem;min-height:0}
 .hero-copy-panel{padding:1.5rem;gap:2.5rem;min-height:27rem}
 .hero-title{font-size:clamp(2.625rem,12.1vw,5.25rem);line-height:1.02}
 .hero-bottom>p:first-child{font-size:1.0625rem;line-height:1.5}
 .hero-actions{display:grid;grid-template-columns:1fr;max-width:none;gap:.625rem;margin-top:1.5rem}
 .hero-actions .pill,.hero-actions .pill.secondary{min-height:3.25rem;justify-content:space-between;padding:.75rem 1rem;font-size:1rem;white-space:normal}
 .hero-actions .pill.secondary{justify-content:center}
 .hero-visual{min-height:0;aspect-ratio:4/4.3;height:auto}
 .hero-visual img{height:100%;position:absolute;inset:0;object-position:50% 50%}
 .visual-caption{padding:1.25rem;align-items:end;gap:.75rem;font-size:.875rem}
 .visual-caption strong{font-size:2rem}
 .visual-caption>.icon-island{display:flex}
 .visual-caption .micro-label{font-size:.75rem}
 .hero-baseline{font-size:.875rem;flex-direction:column;gap:.375rem;padding:1.25rem 0}
 .hero-baseline a{min-height:2.75rem}
 .section-top{margin-bottom:2rem;gap:1rem}
 .project-name-index{gap:.75rem 1rem;font-size:1rem;margin-bottom:2.5rem}
 .projects-heading h2{font-size:clamp(2.5rem,10vw,3.5rem)}
 .projects .project-gallery{gap:3rem}
 .project-image,.portfolio-index .project-image,.portfolio-index .project-layer:first-child .project-image{aspect-ratio:4/3}
 .project-meta h3{font-size:clamp(2rem,9vw,3rem)}
 .project-meta p{font-size:.875rem;line-height:1.5}
 .project-meta{padding:1.25rem 0 .75rem}
 .project-summary{font-size:1.0625rem;padding:0}
 .marquee-region{padding:1.5rem 0}.marquee-sequence{font-size:2.5rem}
 .scrub-text{font-size:clamp(2.5rem,10vw,3.5rem);line-height:1.14}
 .studio-bottom{grid-template-columns:1fr;gap:1.5rem;margin-top:2.5rem}
 .studio-bottom .text-link{grid-column:auto;white-space:normal}
 .studio-bottom>p{font-size:1.0625rem;line-height:1.65}
 .studio-signature .brand-logo{width:10rem}
 .bento{grid-template-columns:1fr;grid-template-rows:auto;gap:.625rem;margin-top:3rem}
 .bento-main,.bento-words,.bento-motion{grid-column:1;grid-row:auto;min-height:0}
 .bento-main{height:24rem}
 .bento-main .bento-inner>div{left:1.5rem;right:1.5rem;bottom:1.5rem}
 .bento-main h3{font-size:2rem;line-height:1.12}
 .bento-words .bento-inner{height:auto;min-height:24rem;padding:1.5rem}
 .bento-words p{font-size:clamp(2.5rem,10.5vw,3.5rem)}
 .bento-motion .bento-inner{grid-template-columns:1fr;padding:1.5rem;gap:2rem;height:auto}
 .bento-motion p{grid-column:1;font-size:1rem;justify-self:start}
 .kinetic-word{font-size:3rem;justify-content:start;gap:1rem}
 .home-digital,.services{padding-top:0}
 .capability-grid{grid-template-columns:1fr;gap:.625rem}
 .capability-panel{min-height:0;padding:1.5rem}
 .capability-panel h2{font-size:clamp(2.75rem,11vw,4rem);line-height:1.08;margin:2.5rem 0 1.5rem}
 .capability-panel>p:not(.micro-label){font-size:1.0625rem}
 .capability-panel .text-link{padding-top:2rem;white-space:normal;font-size:1rem;gap:.75rem}
 .digital-preview-names{font-size:2.5rem}
 .services .section-title,.journal .section-title{font-size:clamp(2.5rem,10vw,3.5rem);line-height:1.1}
 .editorial-service-list{margin-top:2.5rem;gap:.625rem}
 .editorial-service-trigger{padding:1.5rem 1rem;grid-template-columns:1.5rem minmax(0,1fr) 1.5rem;gap:.5rem}
 .editorial-service-title{font-size:clamp(1.5rem,6.8vw,2.75rem)}
 .editorial-service-body{padding:0 1rem 1.5rem}
 .editorial-service-copy>p{font-size:1.25rem}
 .editorial-service-copy ul{font-size:1rem}
 .editorial-service-copy .text-link{font-size:1rem;white-space:normal}
 .editorial-service.is-active .service-proof{padding:0 1rem 1rem}
 .editorial-service.is-active .service-proof img{aspect-ratio:4/3}
 .manifesto{grid-template-columns:1fr;gap:2rem}
 .manifesto-mark img{width:5rem}
 .quote-stage{min-height:18rem}
 .quote-stage blockquote{font-size:clamp(2rem,8vw,3rem);line-height:1.16}
 .blog-index{padding-top:1.5rem}
 .journal-grid,.blog-index .journal-grid,.related-section .journal-grid,.journal .journal-grid{grid-template-columns:1fr;gap:2.5rem}
 .journal .article-card:last-child{grid-column:auto;display:flex;gap:0}
 .journal .article-card:last-child .article-card-copy{margin-top:1.25rem}
 .article-card :is(h2,h3){font-size:1.5rem;line-height:1.25}
 .article-card-copy{padding:1.25rem 0 0}
 .contact-title{font-size:clamp(2.75rem,11vw,5rem);line-height:1.09}
 .contact-direct{font-size:1rem}
 .commercial-footer{padding:3rem 1.25rem calc(2rem + env(safe-area-inset-bottom));gap:2rem 1.5rem}
 .page-heading{padding:3rem 1.25rem}
 .page-heading>.micro-label{font-size:.875rem;margin-bottom:2rem}
 .page-heading h1{font-size:clamp(2.75rem,11vw,4.5rem);line-height:1.1;letter-spacing:-.04em;overflow-wrap:normal}
 .page-heading>p:last-of-type{font-size:1.0625rem;line-height:1.65}
 .page-heading.blog-heading h1{font-size:clamp(1.875rem,8.3vw,3.5rem);line-height:1.14}
 .manifesto-mark .brand-mark{width:4.5rem}
 .detail-heading h1{font-size:clamp(2rem,7.5vw,3.5rem);line-height:1.16}
 .case-study .detail-heading h1{font-size:clamp(3rem,11vw,5rem)}
 .portfolio-index{gap:3rem}
 .portfolio-index .project-meta h3{font-size:2.75rem}
 .service-details{gap:.625rem}
 .service-detail-core{padding:2rem 1.5rem}
 .service-detail h2{font-size:2.5rem;line-height:1.1}
 .service-detail p{font-size:1.0625rem}
 .studio-hero h1{font-size:clamp(2.75rem,11.2vw,4.5rem)}
 .studio-hero-intro p:first-child{font-size:1.375rem}
 .studio-brand-strip{padding:2.5rem 1.25rem;gap:1.5rem}
 .studio-statement{font-size:clamp(2.5rem,10vw,4rem)}
 .studio-values{gap:.625rem}
 .studio-value{padding:1.5rem}.studio-value h3{font-size:2.5rem}
 .studio-process h2{font-size:2.75rem}
 .studio-step h3{font-size:2.25rem}
 .studio-digital h2{font-size:clamp(2.5rem,9vw,4rem)}
 .digital-heading h1{font-size:clamp(2.75rem,11.5vw,4.5rem)}
 .digital-disciplines{font-size:2rem}
 .digital-projects{grid-template-columns:1fr;gap:.625rem}
 .digital-project{padding:1.5rem;min-height:23rem}
 .digital-project h3{font-size:clamp(2.5rem,10vw,3.5rem);line-height:1.1}
 .digital-project-top{margin-bottom:2rem}
 .digital-project-bottom{padding-top:2rem}
 .digital-project-bottom>p{font-size:1.0625rem}
 .digital-offer h2{font-size:clamp(2.5rem,10vw,4rem)}
 .contact-details-layout{padding-top:0}
 .contact-brief-core{padding:1.5rem 1.25rem}
 .contact-brief h2{font-size:2rem}
}
@media(prefers-reduced-motion:reduce){.article-image img,.pill{transition:none}}

/* Legal pages share the studio's editorial grid and readable ink. */
.footer-legal nav{display:flex;flex-wrap:wrap;gap:1rem 1.5rem}
.legal-heading{padding-bottom:3rem}
.legal-heading .legal-intro{font-size:1.25rem;line-height:1.6;max-width:48rem;margin-top:2rem;color:var(--muted-foreground)}
.legal-heading p.legal-updated{font-size:.875rem;line-height:1.5;margin-top:1.5rem;color:var(--muted-foreground)}
.legal-layout{display:grid;grid-template-columns:minmax(12rem,.35fr) minmax(0,1fr);gap:clamp(2rem,5vw,6rem);max-width:1600px;margin:auto;padding-top:1rem}
.legal-index{position:sticky;top:6rem;align-self:start;min-width:0}
.legal-index ol{list-style:none;padding:0;margin:1.5rem 0 0;display:grid;gap:.5rem}
.legal-index a{display:flex;align-items:baseline;gap:1rem;padding:.5rem 0;font-size:1rem;line-height:1.4}
.legal-index a span{font-size:.75rem;color:var(--muted-foreground)}
.legal-index a:hover{color:#a82e00}
.legal-copy{max-width:50rem;min-width:0;color:var(--ink);font-size:1.125rem;line-height:1.75;overflow-wrap:anywhere}
.legal-section{padding-bottom:2.5rem;margin-bottom:2.5rem;border-bottom:1px solid var(--border);scroll-margin-top:6rem}
.legal-section:last-child{margin-bottom:0}
.legal-section h2{font-size:clamp(1.75rem,2.5vw,2.5rem);font-weight:500;letter-spacing:-.035em;line-height:1.2;margin-bottom:1.5rem}
.legal-section p+p,.legal-section ul+p{margin-top:1rem}
.legal-section a{color:#a82e00;text-decoration:underline;text-underline-offset:.2em}
.legal-section ul{padding-left:1.25rem;margin:0 0 1rem}
.legal-section li+li{margin-top:.5rem}
.legal-facts{margin:1.5rem 0}
.legal-facts>div{display:grid;grid-template-columns:minmax(9rem,.4fr) minmax(0,1fr);gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border)}
.legal-facts dt{color:var(--muted-foreground);font-size:1rem}
.legal-facts dd{margin:0}
.legal-section .legal-pending{margin-top:1.5rem;padding:1rem 1.25rem;background:var(--card);border-left:3px solid var(--primary);font-size:1rem;line-height:1.6}
.legal-table-wrap{overflow-x:auto;margin:1.5rem 0}
.legal-table{width:100%;min-width:32rem;border-collapse:collapse;font-size:1rem;line-height:1.6}
.legal-table caption{text-align:left;margin-bottom:.75rem;font-weight:700}
.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:.875rem 1rem;border:1px solid var(--border)}
.legal-table thead th{background:var(--card);font-weight:700}
.legal-table tbody th{font-weight:500}
.legal-table th:first-child{min-width:10rem}
.legal-table code{white-space:nowrap}
@media(max-width:767px){
 .legal-heading{padding-bottom:2rem}
 .legal-heading .legal-intro{font-size:1.0625rem;line-height:1.65;margin-top:1.5rem}
 .legal-layout{grid-template-columns:1fr;gap:2.5rem;padding-top:0}
 .legal-index{position:static;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}
 .legal-index ol{margin-top:1rem;gap:.25rem}
 .legal-index a{min-height:2.75rem;padding:.5rem 0}
 .legal-copy{font-size:1.0625rem;line-height:1.75}
 .legal-section{padding-bottom:2rem;margin-bottom:2rem}
 .legal-section h2{font-size:1.75rem}
 .legal-facts>div{grid-template-columns:1fr;gap:.125rem}
 .footer-legal nav{gap:.75rem 1.25rem}
}

/* Karbayo: oversized type and an opening built around its K. */
.cinema-hero{padding:1.5rem var(--page-pad) 0;background:var(--paper);color:var(--ink);min-width:0}
.cinema-overline{display:flex;justify-content:space-between;gap:2rem;padding-bottom:1.25rem;font-size:.875rem;line-height:1.5}
.cinema-overline p:last-child{text-align:right;color:var(--muted-foreground)}
.cinema-stage{position:relative;isolation:isolate;min-height:clamp(40rem,calc(100svh - 14rem),58rem);overflow:hidden;background:var(--primary);color:var(--ink)}
.cinema-copy{position:relative;z-index:8;padding:clamp(1.75rem,3vw,3rem);pointer-events:none}
.cinema-title{font-size:clamp(4rem,10.5vw,10.5rem);font-weight:800;letter-spacing:-.045em;line-height:.99;max-width:100rem}
.cinema-type-line{display:block;width:max-content;max-width:100%;white-space:nowrap;overflow:hidden;padding:0 .04em .1em;margin-bottom:-.065em}
.cinema-type-accent{background:var(--ink);color:var(--paper);padding-right:.1em;margin-top:.045em}
.cinema-word,.cinema-title-tail{display:inline-block}
.cinema-char{display:inline-block;transform-origin:50% 100%}
.cinema-space,.cinema-title-gap{display:inline-block;width:.22em}
.cinema-intro{margin-top:2.25rem;max-width:21rem}
.cinema-intro>p{font-size:1.125rem;line-height:1.5;color:var(--ink)}
.cinema-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;pointer-events:auto}
.cinema-actions .pill{font-size:1rem;min-height:3.25rem}
.cinema-actions .pill.primary{background:var(--ink);color:var(--paper)}
.cinema-actions .pill.primary .icon-island{background:var(--paper);color:var(--ink)}
.cinema-actions .pill.primary:hover{background:var(--paper);color:var(--ink)}
.cinema-actions .pill.secondary{color:var(--ink);border-color:var(--ink)}
.cinema-actions .pill.secondary:hover{background:var(--ink);color:var(--paper)}
.cinema-canvas{position:absolute;z-index:3;inset:31% 4.5% 8% 36%;perspective:1400px;transform-origin:60% 60%;touch-action:pan-y;cursor:grab}
.cinema-canvas:active{cursor:grabbing}
.cinema-camera{position:absolute;inset:0;width:100%;height:100%;transform-style:preserve-3d;box-shadow:1rem 1rem 0 var(--ink)}
.cinema-slide{position:absolute;inset:0;opacity:0;visibility:hidden;overflow:hidden;transform-origin:50% 100%;background:var(--ink);border:1px solid var(--ink);backface-visibility:hidden}
.cinema-slide:first-child{opacity:1;visibility:visible}
.cinema-slide[data-active=false]{pointer-events:none}
.cinema-image-frame{position:absolute;inset:0;overflow:hidden}
.cinema-image{width:100%;height:100%;object-fit:cover;object-position:center;transform-origin:center}
.cinema-wash{position:absolute;z-index:4;inset:0;pointer-events:none;background:linear-gradient(0deg,#111110df 0%,#11111066 26%,#11111000 65%)}
.cinema-depth-shade{position:absolute;z-index:5;inset:0;background:var(--ink);opacity:0;pointer-events:none}
.cinema-caption{position:absolute;z-index:6;inset:auto 1.75rem 1.25rem;text-align:left;color:var(--paper)}
.cinema-caption p{font-size:.875rem;line-height:1.5;margin-bottom:.375rem}
.cinema-caption h2{font-size:clamp(2.5rem,6vw,6.5rem);font-weight:700;letter-spacing:-.055em;line-height:1.05}
.cinema-caption h2 a{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:3rem}
.cinema-caption h2 a>span{display:grid;place-items:center;flex-shrink:0;width:3rem;height:3rem;background:var(--primary);color:var(--ink);font-size:1.75rem;line-height:1;transition:transform .35s var(--ease)}
.cinema-caption h2 a:hover>span{transform:rotate(90deg)}
.cinema-stack-previews{position:absolute;inset:0;pointer-events:none}
.cinema-stack-preview{position:absolute;inset:0;border:2px solid var(--ink);overflow:hidden;background:var(--paper);transform-origin:50% 100%}
.cinema-stack-preview img{width:100%;height:100%;object-fit:cover}
.cinema-stack-preview-2{transform:translate(1rem,1rem) rotate(5deg)}
.cinema-stack-preview-1{transform:translate(.5rem,.5rem) rotate(2.5deg)}
.cinema-wipe{position:absolute;z-index:7;inset:0;display:grid;place-items:center;overflow:hidden;background:var(--ink);color:var(--primary);visibility:hidden;pointer-events:none}
.cinema-wipe .brand-mark{width:clamp(5rem,11vw,10rem)}
.cinema-watermark{position:absolute;z-index:1;bottom:2rem;left:2rem;color:var(--ink);opacity:.075;pointer-events:none}
.cinema-watermark .brand-mark{width:clamp(10rem,18vw,19rem);transform:rotate(-8deg)}
.cinema-signoff{position:absolute;z-index:8;left:clamp(1.75rem,3vw,3rem);bottom:1.5rem;font-size:.875rem;line-height:1.5;color:var(--ink);pointer-events:none}
.cinema-doors{position:absolute;z-index:12;inset:0;pointer-events:none;overflow:hidden}
.cinema-door{position:absolute;top:0;bottom:0;width:50%;overflow:hidden;background:var(--primary);visibility:hidden}
.cinema-door-left{left:0}.cinema-door-right{right:0}
.cinema-door-inner{position:absolute;inset:0 auto 0 0;width:200%;display:grid;place-items:center;color:var(--ink)}
.cinema-door-right .cinema-door-inner{left:-100%}
.cinema-door-mark.brand-mark{width:clamp(9rem,21vw,22rem)}
.cinema-footer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:2rem;padding:1rem 0 0}
.cinema-tabs{display:flex;gap:2rem;min-width:0}
.cinema-tabs button{position:relative;display:flex;align-items:center;gap:.625rem;padding:.625rem 0 .875rem;min-height:2.75rem;background:transparent;color:var(--ink);font-size:.9375rem;line-height:1.5;cursor:pointer;white-space:nowrap}
.cinema-tabs button[aria-pressed=true]{font-weight:700}
.cinema-tab-index{color:var(--muted-foreground);font-size:.75rem}
.cinema-tab-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--primary);transform:scaleX(0);transform-origin:left}
.cinema-count{font-size:.875rem;line-height:1.5;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}
.cinema-toggle{display:inline-flex;align-items:center;gap:.75rem;background:transparent;color:var(--ink);min-height:2.75rem;padding:.5rem 0;font-size:.9375rem;cursor:pointer}
.cinema-toggle:disabled{color:var(--muted-foreground);cursor:default}
.cinema-play-icon{display:block;width:.625rem;height:.75rem;border-left:.625rem solid currentColor;border-top:.375rem solid transparent;border-bottom:.375rem solid transparent}
.cinema-play-icon.is-playing{width:.75rem;height:.75rem;border:0;border-left:3px solid currentColor;border-right:3px solid currentColor}
.cinema-hero :is(a,button):focus-visible{outline:2px solid var(--primary);outline-offset:5px}
.cinema-actions a:focus-visible{outline-color:var(--ink)}
.cinema-caption a:focus-visible{outline-color:var(--paper)}
@media(min-width:768px) and (max-width:1023px){
 .cinema-title{font-size:10.5vw}.cinema-canvas{inset:35% 5% 8% 38%}
 .cinema-copy{padding:1.75rem}.cinema-intro{max-width:14rem;margin-top:1.5rem}
 .cinema-intro>p{font-size:1rem}.cinema-actions{gap:.625rem;margin-top:1.25rem;flex-wrap:nowrap}
 .cinema-actions .pill{font-size:.875rem;padding:.625rem;min-height:3rem;gap:.625rem}
 .cinema-actions .icon-island{width:1.5rem;height:1.5rem}
 .cinema-caption{left:1.25rem;right:1.25rem}.cinema-caption h2{font-size:5vw}
 .cinema-caption h2 a>span{width:2.25rem;height:2.25rem;font-size:1.5rem}
}
@media(min-width:1024px) and (max-width:1199px){.cinema-canvas{left:41%}.cinema-caption h2{font-size:5vw}}
@media(max-width:767px){
 .cinema-hero{padding:1rem 1.25rem 0}
 .cinema-overline{gap:1rem;font-size:.75rem;padding-bottom:1rem;align-items:start}
 .cinema-overline p:first-child{max-width:11rem}.cinema-overline p:last-child{max-width:7rem}
 .cinema-stage{min-height:0;display:flex;flex-direction:column}
 .cinema-copy{order:0;padding:1.25rem 1rem .75rem}
 .cinema-title{font-size:clamp(2.5rem,14vw,4rem);line-height:.99;letter-spacing:-.045em}
 .cinema-title-tail{display:block}.cinema-title-gap{display:none}
 .cinema-intro{margin-top:1rem;max-width:none}
 .cinema-intro>p{font-size:1rem;line-height:1.45}
 .cinema-actions{gap:.625rem;margin-top:1rem;flex-wrap:nowrap}
 .cinema-actions .pill{min-height:2.875rem;font-size:.875rem;padding:.625rem .875rem;gap:.625rem;white-space:nowrap}
 .cinema-actions .icon-island{width:1.5rem;height:1.5rem}
 .cinema-canvas{position:relative;order:1;inset:auto;margin:.75rem 1rem 2.5rem;aspect-ratio:1.25;perspective:none}
 .cinema-camera{box-shadow:.5rem .5rem 0 var(--ink)}
 .cinema-caption{inset:auto .875rem .875rem}
 .cinema-caption p{font-size:.75rem;line-height:1.5}
 .cinema-caption h2{font-size:clamp(1.5rem,8.5vw,3rem);line-height:1.05}
 .cinema-caption h2 a{gap:.5rem}.cinema-caption h2 a>span{width:2rem;height:2rem;font-size:1.25rem}
 .cinema-stack-preview-2{transform:translate(.5rem,.5rem) rotate(4deg)}
 .cinema-stack-preview-1{transform:translate(.25rem,.25rem) rotate(2deg)}
 .cinema-watermark{left:auto;right:1rem;top:4rem;bottom:auto}
 .cinema-watermark .brand-mark{width:9rem}
 .cinema-signoff{display:none}
 .cinema-footer{grid-template-columns:1fr auto;gap:.5rem 1rem;padding-top:.5rem}
 .cinema-tabs{grid-column:1/-1;gap:1rem;justify-content:space-between}
 .cinema-tabs button{font-size:.875rem;gap:.375rem;white-space:normal}
 .cinema-tab-index{display:none}.cinema-count{font-size:.8125rem}.cinema-toggle{font-size:.875rem}
}
@media(min-width:480px) and (max-width:767px){.cinema-title{font-size:9vw}.cinema-title-tail{display:inline-block}.cinema-title-gap{display:inline}}
@media(max-width:360px){.cinema-actions .pill{padding-inline:.625rem}}
@media(prefers-reduced-motion:reduce){.cinema-caption h2 a>span{transition:none}}
@media(max-width:767px){.cinema-hero-type .cinema-copy{padding-bottom:2rem}}

/* Final responsive layer: reading, touch controls and consent share the brand system. */
.site-root main{min-width:0}
:is(a,button,input,textarea,select,summary):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.footer-legal nav button{font:inherit;background:transparent;color:inherit;cursor:pointer}
.contact-info>a{overflow-wrap:anywhere}
.contact-brief{scroll-margin-top:6rem}
.contact-brief .form-row>div{min-width:0}
.post-body :is(img,video,iframe){max-width:100%}
.post-body :is(p,li,h2,h3,a){overflow-wrap:anywhere}
.post-body a{color:#9f2d00}
.legal-mobile-index{display:none}
.cookie-banner{position:fixed;z-index:60;bottom:max(1rem,env(safe-area-inset-bottom));left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));max-width:92rem;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding:1.5rem 2rem;background:var(--paper);color:var(--ink);border:1px solid var(--ink);box-shadow:.5rem .5rem 0 #111110}
.cookie-banner h2{font-size:1.5rem;font-weight:700;letter-spacing:-.025em;margin-bottom:.5rem}
.cookie-banner p{font-size:1rem;line-height:1.5;max-width:55rem}
.cookie-banner a,.cookie-policy-link a{text-decoration:underline;text-underline-offset:.2em}
.cookie-actions{display:flex;flex-wrap:wrap;gap:.5rem}
.cookie-actions button{min-height:3rem;padding:.75rem 1rem;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font:inherit;font-weight:500;cursor:pointer}
.cookie-actions button:hover{background:var(--primary);color:var(--ink)}
.cookie-actions .cookie-configure{background:transparent;color:var(--ink)}
.cookie-dialog[data-slot=dialog-content]{width:calc(100% - 2rem);max-width:42rem;max-height:calc(100dvh - 2rem);overflow-y:auto;overscroll-behavior:contain;border-radius:0;padding:2rem;background:var(--paper);color:var(--ink);border:1px solid var(--ink);gap:1.25rem}
.cookie-dialog [data-slot=dialog-title]{font-size:2rem;font-weight:700;letter-spacing:-.035em;line-height:1.1;padding-right:1rem}
.cookie-dialog [data-slot=dialog-description]{color:#41413d;font-size:1rem;line-height:1.6}
.cookie-purpose{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;border-top:1px solid var(--border);padding-top:1rem;font-size:1rem}
.cookie-purpose h3{font-size:1.25rem;font-weight:700;margin-bottom:.25rem}
.cookie-purpose p{line-height:1.5;color:#41413d}
.cookie-purpose>span{font-size:.875rem;white-space:nowrap}
.cookie-purpose small{display:block;margin-top:.375rem;font-size:.875rem;color:#60605b}
.cookie-purpose input{appearance:auto;width:1.5rem;height:1.5rem;flex:0 0 1.5rem;accent-color:var(--ink)}
.cookie-dialog .cookie-actions{display:grid;grid-template-columns:1fr 1fr}
.cookie-dialog .cookie-save{grid-column:1/-1;background:var(--primary);color:var(--ink)}
.cookie-policy-link{font-size:.9375rem;line-height:1.5}
.cookie-dialog .cookie-close{position:absolute;display:grid;place-items:center;min-width:2.75rem;min-height:2.75rem;top:.25rem;right:.25rem;background:transparent;color:var(--ink);font-size:1.75rem;cursor:pointer}
@media(max-width:1023px){
 .navigation{transform:none!important}
 .menu-overlay[data-slot=dialog-content]{gap:1rem}
 .menu-links{margin:1.5rem 0 auto;gap:0}
 .menu-links a{min-height:3.25rem;font-size:clamp(1.75rem,6.2vw,3rem);line-height:1.12;padding:.75rem 0}
 .menu-location{margin-top:1rem;font-size:1rem}
 .cookie-banner{grid-template-columns:1fr;gap:1rem}
 .cookie-actions{justify-content:flex-start}
}
@media(max-width:767px){
 html{scroll-padding-top:5.5rem}
 .section-space{padding-block:3.5rem}
 .page-heading{padding-block:2.5rem}
 .page-heading>.micro-label{margin-bottom:1.25rem}
 .page-heading h1{max-width:100%;font-size:clamp(2.25rem,10vw,4.5rem);letter-spacing:-.035em;line-height:1.1}
 .page-heading .legal-intro{margin-top:1.5rem}
 .detail-heading h1{font-size:clamp(1.75rem,7.1vw,3rem);line-height:1.2;overflow-wrap:anywhere}
 .case-study .detail-heading h1{font-size:clamp(2.5rem,10.5vw,4rem)}
 .studio-hero h1,.digital-heading h1{font-size:clamp(2.5rem,10.5vw,4rem)}
 .section-top .text-link,.project-name-index a{min-height:2.75rem}
 .project-gallery{min-width:0}
 .project-meta h3,.portfolio-index .project-meta h3{font-size:clamp(1.875rem,8vw,2.75rem)}
 .project-open{min-width:2.75rem;min-height:2.75rem}
 .digital-project{min-height:0}
 .digital-project h3{font-size:clamp(2rem,8.5vw,3rem);overflow-wrap:anywhere}
 .service-detail h2{font-size:clamp(2rem,8vw,2.5rem);overflow-wrap:anywhere}
 .post-body{font-size:1.0625rem;line-height:1.75}
 .post-body h2{font-size:1.625rem;line-height:1.3}
 .article-content-layout{padding-top:2rem}
 .article-byline{gap:.5rem 1rem}
 .reading-aside{background:#deded8;color:var(--ink)}
 .contact-info>a{font-size:clamp(1.0625rem,4.9vw,1.375rem);min-height:3rem;display:flex;align-items:center}
 .contact-details-layout{gap:2rem}
 .contact-brief-core{padding:1.5rem 1rem}
 .contact-brief :is(input,textarea,select){font-size:1rem;min-height:3.25rem;scroll-margin-block:6rem 2rem}
 .contact-brief textarea{min-height:10rem;resize:vertical}
 .contact-brief .privacy-consent input{min-height:1.25rem}
 .contact-brief .form-row{gap:1.25rem}
 .contact-brief label{font-size:1rem}
 .form-note{overflow-wrap:anywhere}
 .footer-legal{align-items:flex-start}
 .footer-legal nav{width:100%;gap:.25rem 1.25rem}
 .footer-legal :is(a,button){min-height:2.75rem}
 .legal-index{display:none}
 .legal-mobile-index{display:block;margin:0 1.25rem 2rem;border-block:1px solid var(--border)}
 .legal-mobile-index summary{min-height:3.25rem;display:flex;align-items:center;justify-content:space-between;padding-block:.75rem;cursor:pointer;font-size:1rem;font-weight:700;list-style:none}
 .legal-mobile-index summary::-webkit-details-marker{display:none}
 .legal-mobile-index summary::after{content:"+";font-size:1.5rem;font-weight:400}
 .legal-mobile-index[open] summary::after{content:"−"}
 .legal-mobile-index ol{margin:0;padding:0 0 1rem;list-style:none}
 .legal-mobile-index a{display:flex;align-items:center;min-height:2.75rem;font-size:1rem}
 .legal-layout{padding-top:0}
 .cookie-banner{bottom:0;left:0;right:0;padding:1.25rem max(1.25rem,env(safe-area-inset-right)) calc(1.25rem + env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));box-shadow:none;border-width:1px 0 0;max-height:75dvh;overflow:auto}
 .cookie-banner h2{font-size:1.375rem}
 .cookie-banner p{font-size:.9375rem}
 .cookie-banner .cookie-actions{display:grid;grid-template-columns:1fr 1fr}
 .cookie-banner .cookie-configure{grid-column:1/-1}
 .cookie-dialog[data-slot=dialog-content]{padding:1.5rem 1rem}
 .cookie-dialog [data-slot=dialog-title]{font-size:1.75rem}
 .cookie-purpose{gap:1rem;align-items:flex-start}
 .cookie-purpose>span{white-space:normal;text-align:right;max-width:5rem}
 .cookie-purpose h3{font-size:1.125rem}
 .cookie-actions button{font-size:.9375rem;padding-inline:.625rem}
}
@media(max-height:480px) and (max-width:1023px){
 .menu-links{margin-block:.5rem}
 .menu-links a{font-size:1.5rem;min-height:2.75rem;padding-block:.375rem}
 .menu-location{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cookie-dialog{animation:none!important}}

@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorant-latin.woff') format('woff');font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:'Zamora';src:url('fonts/zamora.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
/* Karbayo: an editorial journey, with projects and writing in the same folio. */
:root{--background:#35342f;--foreground:#f1ece4;--paper:#f8f7f3;--ink:#292823;--primary:#d83b05;--primary-foreground:#fff;--secondary:#e7e5df;--secondary-foreground:#292823;--muted:#e7e5df;--muted-foreground:#615e57;--border:#29282330;--input:#29282355;--card:#f8f7f3;--card-foreground:#292823;--popover:#f8f7f3;--popover-foreground:#292823;--ring:#d83b05;--radius:0;--folio-serif:'Cormorant Garamond',Georgia,serif;--rail-width:4rem}
body{font-weight:400;background:var(--background);color:var(--foreground)}
html{scroll-padding-top:2rem}
.site-root{padding-left:var(--rail-width)}
.site-root::after{display:none}
.site-root main{overflow-x:clip}
.navigation{position:fixed;inset:0 auto 0 0;width:var(--rail-width);height:100svh;padding:0;background:var(--background);color:var(--foreground);border:0;border-right:1px solid #f1ece42b;transform:none!important;z-index:40}
.navigation-inner{width:100%;height:100%;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0}
.navigation .desktop-nav,.navigation .mobile-contact{display:none}
.navigation .logo-link{position:absolute;top:49%;left:.65rem;width:2.7rem;overflow:hidden}
.navigation .brand-logo{width:11.2rem;max-width:none;height:auto;filter:brightness(0) invert(1)}
.rail-edition{position:absolute;top:6rem;font-size:.75rem;line-height:1;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.06em}
.rail-year{position:absolute;bottom:1.5rem;font-size:.75rem;writing-mode:vertical-rl;transform:rotate(180deg)}
.navigation .menu-button{position:absolute;inset:0 0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:4rem;width:4rem;margin:0;border-bottom:1px solid #f1ece42b;background:transparent}
.navigation .menu-button span{display:block;width:1.8rem;height:1px;background:currentColor}
.menu-overlay[data-slot=dialog-content]{background:var(--background);color:var(--foreground);border:0;padding:3rem 5vw;max-width:none;width:100vw;height:100svh;max-height:100svh;overflow-y:auto;justify-content:space-between}
.menu-overlay .brand-logo{filter:brightness(0) invert(1)}
.menu-links a{font-family:var(--folio-serif);font-weight:400;font-size:clamp(2rem,5.7vw,5rem);line-height:1.1;letter-spacing:-.055em;padding:.25rem 0;border-color:#f1ece42b;min-height:0}
.menu-links a:hover{color:#f99c7d}.menu-links a>span{font-family:'Cabinet Grotesk',sans-serif}
.menu-top .round-control{color:var(--foreground);border-color:#f1ece450;background:none}
.folio-surface{background:var(--background)}
.folio-track{position:relative}
.folio-panel{position:relative;min-width:0;padding:clamp(2rem,4.5vw,5rem);scroll-margin-top:0;min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;background:var(--background);color:var(--foreground)}
.folio-light{background:var(--paper);color:var(--ink)}
.folio-hero{padding-top:2rem}
.folio-hero-top{display:grid;grid-template-columns:2.1fr 1fr;gap:3vw;align-items:start}
.folio-hero-title{font-family:var(--folio-serif);font-size:clamp(4rem,12vw,12rem);font-weight:400;line-height:.92;letter-spacing:-.073em;overflow:hidden}
.folio-hero-title span{display:block;white-space:nowrap;padding-bottom:.13em}
.folio-hero-description{padding-top:1rem;font-size:clamp(1.125rem,1.65vw,1.5rem);line-height:1.3;max-width:26rem}
.folio-hero-description .folio-link{font-size:1rem;margin-top:2rem}
.folio-hero-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:2rem;padding-bottom:1rem;font-size:1rem;line-height:1.5}
.folio-scroll{font-family:var(--folio-serif);font-size:2rem;letter-spacing:-.04em;justify-self:end}
.folio-chapter{display:flex;align-items:center;gap:2rem;font-size:.875rem;line-height:1.4;min-height:2rem;margin-bottom:2rem}
.folio-chapter>span{font-family:var(--folio-serif);font-size:1.5rem;letter-spacing:-.04em;white-space:nowrap}
.folio-chapter>.folio-link{margin-left:auto}
.folio-link{display:inline-flex;align-items:center;gap:1.5rem;font-size:1rem;line-height:1.5;border-bottom:1px solid currentColor;padding-bottom:.25rem;width:fit-content;transition:opacity .2s}
.folio-link>span{font-size:1.5rem;font-family:'Cabinet Grotesk',sans-serif;font-weight:400;line-height:1}.folio-link:hover{opacity:.65}
.folio-intro-content{max-width:66rem;margin:auto 0}
.folio-intro h2{font-family:var(--folio-serif);font-size:clamp(3rem,5.6vw,6rem);font-weight:400;line-height:1.05;letter-spacing:-.055em}
.folio-panel em{font-weight:400}
.folio-intro-content>p{font-size:clamp(1.125rem,2vw,1.75rem);line-height:1.4;max-width:43rem;margin-top:2rem}
.folio-intro-bottom{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-top:3rem}
.folio-intro-bottom .brand-mark{width:7rem;height:7rem;background:var(--primary);flex-shrink:0}
.folio-intro-bottom>p{margin-right:auto;font-size:1rem;line-height:1.4}
.folio-section-title{font-family:var(--folio-serif);font-size:clamp(3rem,5.5vw,5.5rem);font-weight:400;line-height:1.05;letter-spacing:-.055em;margin-bottom:2.5rem;max-width:100%}
.folio-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.folio-project{min-width:0}
.folio-project-image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#e6e3de}
.folio-project-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.folio-project-image:hover img{transform:scale(1.04)}
.folio-project-view{position:absolute;bottom:1rem;right:1rem;padding:.6rem .8rem;background:var(--paper);color:var(--ink);display:flex;align-items:center;gap:2rem;font-size:.875rem}
.folio-project-view>span{font-size:1.5rem;line-height:1}
.folio-project-caption{display:flex;align-items:start;gap:1rem;padding-top:1.25rem;line-height:1.5}
.folio-project-caption>span{font-size:.875rem;padding-top:.25rem}
.folio-project-caption>span:last-child{margin-left:auto}
.folio-project-caption h3{font-family:var(--folio-serif);font-size:2.5rem;line-height:1.1;letter-spacing:-.05em;font-weight:400}
.folio-project-caption p{font-size:.875rem;line-height:1.4;margin-top:.5rem;color:var(--muted-foreground)}
.folio-project-summary{font-size:1rem;line-height:1.4;max-width:34rem;margin-top:1rem}
.folio-article-list{display:grid;grid-template-columns:1fr 1fr;gap:0 3rem}
.folio-article-link{display:flex;align-items:center;gap:1rem;min-width:0;padding:1rem 0;border-top:1px solid var(--border)}
.folio-article-link img{width:5rem;height:6rem;flex-shrink:0;object-fit:cover}
.folio-article-link>div{min-width:0}
.folio-article-link p{display:flex;gap:1rem;flex-wrap:wrap;font-size:.8125rem;line-height:1.4;color:var(--muted-foreground);margin-bottom:.5rem}
.folio-article-link h3{font-size:1.3125rem;line-height:1.2;font-weight:400;letter-spacing:-.02em}
.folio-article-number{font-size:.8125rem;margin-left:auto;align-self:start}
.folio-article-link:hover h3{text-decoration:underline;text-underline-offset:.2em}
.folio-service-list>a,.folio-digital-list>a{display:flex;align-items:start;gap:1.5rem;padding:1.5rem 0;border-top:1px solid var(--border)}
.folio-service-list>a>span,.folio-digital-list>a>span{font-size:.875rem;line-height:1.5}
.folio-service-list>a>span:last-child,.folio-digital-list>a>span:last-child{margin-left:auto;font-size:1.5rem}
.folio-service-list h3{font-family:var(--folio-serif);font-weight:400;font-size:2.5rem;line-height:1.1;letter-spacing:-.04em}
.folio-service-list p{font-size:1rem;line-height:1.4;margin-top:.5rem}
.folio-digital-layout{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;margin-block:auto}
.folio-digital-layout>div>p{font-size:1.25rem;line-height:1.4;max-width:25rem;margin:2rem 0}
.folio-digital-list>a{border-color:#f1ece440;padding:1rem 0}
.folio-digital-list h3{font-size:1.5rem;font-weight:400;letter-spacing:-.025em;line-height:1.15}
.folio-digital-list p{font-size:.875rem;line-height:1.4;color:#c2beb5;margin-top:.375rem}
.folio-contact h2{font-family:var(--folio-serif);font-size:clamp(3.5rem,8vw,9rem);font-weight:400;line-height:.95;letter-spacing:-.06em;margin:auto 0}
.folio-contact-bottom{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-top:3rem}
.folio-contact-bottom p{font-size:.875rem;margin-bottom:.75rem}
.folio-email{display:block;font-size:clamp(1.5rem,3vw,3rem);line-height:1.25;letter-spacing:-.04em;overflow-wrap:anywhere;margin-bottom:1rem}
.folio-socials{display:flex;flex-direction:column;gap:.5rem;font-size:1rem}
.folio-chapter-nav{display:none}
.folio-home>.footer{border-top:1px solid #f1ece435;background:var(--background);color:var(--foreground)}
.footer .brand-logo{filter:brightness(0) invert(1)}
.footer-legal{border-color:#f1ece435}
.folio-home[data-horizontal=true] .folio-track{display:flex;flex-wrap:nowrap;width:max-content;height:100svh}
.folio-home[data-horizontal=true] .folio-panel{width:calc(100vw - var(--rail-width));height:100svh;min-height:0;flex-shrink:0}
.folio-home[data-horizontal=true] .folio-work{width:calc((100vw - var(--rail-width))*2.65)}
.folio-home[data-horizontal=true] .folio-work-grid{gap:3rem;margin-block:auto}
.folio-home[data-horizontal=true] .folio-project-image{height:54svh;aspect-ratio:auto}
.folio-home[data-horizontal=true] .folio-journal{width:calc((100vw - var(--rail-width))*1.4)}
.folio-home[data-horizontal=true] .folio-digital{width:calc((100vw - var(--rail-width))*1.15)}
.folio-home[data-horizontal=true] .folio-section-title{margin-bottom:1.75rem}
.folio-home[data-horizontal=true] .folio-article-list{margin-block:auto}
.folio-home[data-horizontal=true] .folio-chapter-nav{position:fixed;bottom:0;left:var(--rail-width);right:0;z-index:35;display:flex;justify-content:center;gap:2rem;padding:.7rem 1rem;background:#35342feb;color:var(--foreground);border-top:1px solid #f1ece430;backdrop-filter:blur(12px)}
.folio-chapter-nav a{font-size:.8125rem;display:flex;align-items:center;gap:.5rem;line-height:1.5;opacity:.65}.folio-chapter-nav a[aria-current]{opacity:1}.folio-chapter-nav a[aria-current]>span{color:#ffaa89}
.folio-home[data-horizontal=true] .folio-panel{padding-bottom:5rem}
.interior-page{background:var(--paper);color:var(--ink)}
.interior-page .page-heading{padding-top:4rem}
.interior-page .page-heading h1,.interior-page .section-title,.interior-page .contact-title,.interior-page .detail-heading h1{font-family:var(--folio-serif);font-weight:400;letter-spacing:-.055em}
.interior-page .page-heading h1>span{color:var(--ink)}
.interior-page .footer{background:var(--background);color:var(--foreground)}
.project-shell,.article-card{border-radius:0}.project-meta :is(h2,h3){font-family:var(--folio-serif);font-weight:400}
.contact{background:var(--background);color:var(--foreground);border-radius:0}
.contact .section-top{border-color:#f1ece430}.contact .contact-button{background:var(--paper);color:var(--ink)}
.contact-direct{border-color:#f1ece430}.contact-title{font-family:var(--folio-serif);font-weight:400;letter-spacing:-.055em}
.cookie-banner{background:var(--paper);color:var(--ink)}
@media(max-width:1099px){
 .folio-work-grid{grid-template-columns:1fr 1fr}.folio-project:first-child{grid-column:1/-1}.folio-project:first-child .folio-project-image{aspect-ratio:16/8}
 .folio-panel{min-height:80svh}.folio-hero{min-height:calc(100svh - 0rem)}
 .folio-hero-top{grid-template-columns:1fr}.folio-hero-description{max-width:28rem;margin-top:2rem}
 .folio-hero-title{font-size:clamp(5rem,13vw,9rem)}
 .folio-hero-bottom{margin-top:5rem}
 .folio-article-list{gap:0 1.5rem}
}
@media(max-width:767px){
 :root{--rail-width:0rem}
 .site-root{padding-left:0;padding-top:4rem}
 .navigation{inset:0 0 auto;width:100%;height:4rem;border-right:0;border-bottom:1px solid #f1ece430}
 .navigation-inner{flex-direction:row;justify-content:space-between;padding:0 1rem}
 .navigation .logo-link{position:static;overflow:visible;width:auto}.navigation .brand-logo{width:7rem;max-width:100%}
 .rail-edition,.rail-year{display:none}
 .navigation .menu-button{left:auto;border-bottom:0;right:.25rem}
 .menu-overlay[data-slot=dialog-content]{padding:1.25rem;gap:1.5rem}
 .menu-top{padding-top:0}.menu-top .brand-logo{width:8rem}
 .menu-links a{font-size:clamp(2rem,9vw,3rem);line-height:1.1;padding:.45rem 0}
 .folio-panel{padding:2rem 1.25rem 3rem;min-height:0;scroll-margin-top:4rem}
 .folio-hero{min-height:calc(100svh - 4rem);padding-top:2rem}
 .folio-hero-title{font-size:clamp(3.25rem,18vw,6rem);line-height:1;letter-spacing:-.065em}
 .folio-hero-description{margin-top:1rem;padding-top:0;font-size:1.25rem;line-height:1.35}
 .folio-hero-description .folio-link{margin-top:1.25rem}
 .folio-hero-bottom{grid-template-columns:1fr 1fr;gap:1rem;font-size:.875rem;margin-top:4rem;padding-bottom:0}.folio-scroll{grid-column:1/-1;justify-self:start;font-size:1.75rem;margin-top:1rem}
 .folio-chapter{gap:1rem;flex-wrap:wrap;margin-bottom:2rem;align-items:baseline;font-size:.75rem}.folio-chapter>span{font-size:1.25rem}.folio-chapter>.folio-link{margin-left:0;width:100%;font-size:.875rem}
 .folio-intro h2,.folio-section-title{font-size:clamp(2.5rem,10vw,4rem);line-height:1.05;letter-spacing:-.05em}
 .folio-intro-content>p{font-size:1.25rem;line-height:1.45;margin-top:1.5rem}
 .folio-intro-bottom{flex-wrap:wrap;gap:1.5rem;margin-top:2.5rem}.folio-intro-bottom .brand-mark{width:4rem;height:4rem}.folio-intro-bottom>.folio-link{width:100%;margin-top:1rem}
 .folio-work-grid{grid-template-columns:1fr;gap:2.5rem}.folio-project:first-child{grid-column:auto}.folio-project:first-child .folio-project-image,.folio-project-image{aspect-ratio:4/3}
 .folio-project-caption h3{font-size:2.25rem}.folio-project-caption{gap:.75rem}.folio-project-caption p{font-size:.8125rem}.folio-project-view{bottom:.75rem;right:.75rem;font-size:.75rem;gap:1rem}
 .folio-project-summary{font-size:1rem;line-height:1.5}
 .folio-article-list{grid-template-columns:1fr;gap:0}.folio-article-link{gap:.875rem;padding:1.25rem 0}.folio-article-link img{width:4rem;height:5rem}.folio-article-link h3{font-size:1.125rem;line-height:1.25}.folio-article-number{display:none}.folio-article-link p{font-size:.75rem;gap:.5rem}
 .folio-service-list>a{gap:1rem;padding:1.5rem 0}.folio-service-list h3{font-size:2rem}.folio-service-list p{font-size:1rem;line-height:1.5}
 .folio-digital-layout{grid-template-columns:1fr;gap:2.5rem}.folio-digital-layout>div>p{font-size:1.125rem;margin:1.5rem 0}.folio-digital-list h3{font-size:1.25rem}
 .folio-contact{min-height:80svh}.folio-contact h2{font-size:clamp(3rem,12vw,5rem);margin-block:2rem}.folio-contact-bottom{flex-direction:column;align-items:start;gap:2rem}.folio-socials{flex-direction:row;gap:1.5rem;font-size:.9375rem}.folio-email{font-size:1.5rem}
 .interior-page .page-heading{padding-top:2.5rem}.interior-page .page-heading h1,.interior-page .detail-heading h1{font-size:clamp(2.5rem,10vw,4rem)}
 .footer{padding-bottom:2rem}.footer-legal nav{flex-wrap:wrap}.cookie-banner{left:1rem;right:1rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.folio-project-image img{transition:none}}
[data-motion=off] .folio-project-image img{transition:none}

@media(min-width:768px){.navigation .logo-link{width:2.25rem;left:.875rem;overflow:visible}.navigation .logo-link .brand-logo{display:none}.navigation .rail-brand{width:2.25rem;height:2.25rem;background:var(--foreground)}}
@media(max-width:767px){.navigation .rail-brand{display:none}}

.menu-links a>span,.menu-location{color:var(--foreground)}
.footer-column a:hover{color:#ffad91}
.digital-project[id]{scroll-margin-top:2rem}

.folio-home[data-horizontal=true]>.footer{padding-bottom:6rem}
@media(max-height:820px) and (min-width:1100px){
 .folio-home[data-horizontal=true] .folio-panel{padding:1.75rem 3rem 4rem}
 .folio-home[data-horizontal=true] .folio-chapter{margin-bottom:1rem}
 .folio-home[data-horizontal=true] .folio-section-title{font-size:clamp(3rem,4.4vw,4rem);margin-bottom:1rem}
 .folio-home[data-horizontal=true] .folio-project-image{height:45svh}
 .folio-home[data-horizontal=true] .folio-project-caption h3{font-size:2rem}
 .folio-home[data-horizontal=true] .folio-project-summary{margin-top:.5rem}
 .folio-home[data-horizontal=true] .folio-article-link{padding:.625rem 0}
 .folio-home[data-horizontal=true] .folio-article-link img{height:4.5rem;width:3.5rem}
 .folio-home[data-horizontal=true] .folio-service-list>a{padding:1rem 0}
 .folio-home[data-horizontal=true] .folio-service-list h3{font-size:2rem}
 .folio-home[data-horizontal=true] .folio-digital-list>a{padding:.75rem 0}
}

/* A single typographic and spatial system, from the cover to every inner page. */
:root{--accent:#d83b05;--accent-foreground:#fff;--page-pad:clamp(1.25rem,4.5vw,5rem)}
:focus-visible{outline:2px solid var(--primary);outline-offset:5px}
.folio-panel em,.interior-page h1 em,.interior-page h2 em{font-style:normal}
.folio-panel :is(h2,h3),.menu-links a{letter-spacing:-.035em}
.folio-hero-top{display:flex;flex-direction:column;gap:clamp(1.5rem,3vh,3rem)}
.folio-hero-kicker{font-size:.8125rem;letter-spacing:.12em;line-height:1.5}
.folio-hero-title{width:100%;max-width:78rem;line-height:1;overflow:visible}
.folio-hero-title .brand-logo{display:block;width:100%;height:auto;filter:brightness(0) saturate(100%) invert(95%) sepia(9%) saturate(213%);max-width:none}
.folio-hero-description{align-self:flex-end;margin:0;width:34%;max-width:26rem;padding:0;font-size:clamp(1.125rem,1.5vw,1.375rem);line-height:1.4}
.folio-hero-description .folio-link{margin-top:1.25rem}
.folio-hero-bottom{padding:0;margin-top:2.5rem}
.folio-intro h2,.folio-section-title{font-size:clamp(2.75rem,4.6vw,5.25rem);line-height:1.08}
.folio-chapter>span{font-family:'Cabinet Grotesk',sans-serif;font-size:.8125rem;letter-spacing:.025em}
.folio-project-caption h3{font-size:clamp(1.75rem,2.6vw,3rem)}
.folio-service-list h3{font-size:clamp(1.75rem,2.5vw,2.75rem)}
.folio-contact h2{font-size:clamp(3.25rem,7vw,8rem);line-height:1.05}
.social-icons{display:flex;align-items:center;gap:.5rem}
.social-icons a{width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;color:inherit;border:1px solid transparent;transition:background .2s,color .2s}
.social-icons svg{width:1.125rem;height:1.125rem;flex:none}
.social-icons a:hover{background:var(--primary);color:#fff}
.rail-socials{position:absolute;bottom:5rem;flex-direction:column;gap:.125rem}
.menu-bottom{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.menu-bottom .menu-location{margin:0}
.folio-home .folio-chapter-nav{position:fixed;bottom:0;left:var(--rail-width);right:0;z-index:35;display:flex;justify-content:center;gap:clamp(.75rem,2vw,2rem);padding:0 1rem max(0px,env(safe-area-inset-bottom));background:#35342ff5;color:var(--foreground);border-top:1px solid #f1ece430;backdrop-filter:blur(12px);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
.folio-home .folio-chapter-nav a{flex:none;min-height:3rem;position:relative;opacity:1;color:#c2beb5;font-size:.875rem}
.folio-home .folio-chapter-nav a[aria-current]{color:var(--foreground)}
.folio-chapter-nav a[aria-current]::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--primary)}
.folio-chapter-nav a:hover{color:#fff}
.folio-home>.footer{padding-bottom:6rem}
.folio-home[data-horizontal=true] .folio-digital{width:calc((100vw - var(--rail-width))*1.4)}
.folio-digital-layout{grid-template-columns:minmax(0,.85fr) minmax(0,2fr);gap:4vw}
.folio-digital-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;min-width:0}
.folio-digital-list>a{display:grid;grid-template-columns:clamp(5rem,8vw,9rem) minmax(0,1fr) 1rem;align-items:center;gap:1rem;padding:1.25rem 0;min-width:0}
.folio-digital-thumb{display:block;overflow:hidden;aspect-ratio:8/5;background:#262520}
.folio-digital-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.folio-digital-list>a:hover img{transform:scale(1.06)}
.folio-digital-list>a:hover h3{text-decoration:underline;text-underline-offset:.2em}
.folio-digital-list h3{font-size:clamp(1.125rem,1.3vw,1.5rem);line-height:1.2;margin-top:.5rem;letter-spacing:-.02em}
.folio-digital-list p{font-size:.8125rem;line-height:1.4;margin:0}
.folio-digital-list>a>span:last-child{margin-left:0}
.interior-page .page-heading{max-width:none;margin:0;padding:clamp(3rem,6vw,6rem) var(--page-pad);background:var(--background);color:var(--foreground);--border:#f1ece435;--muted-foreground:#c2beb5;min-height:65svh;display:flex;flex-direction:column;justify-content:center}
.interior-page .page-heading h1{font-family:var(--folio-serif);font-weight:400;font-size:clamp(3rem,6.5vw,7rem);line-height:1.08;letter-spacing:-.04em;max-width:70rem;text-wrap:balance}
.interior-page .page-heading h1>span,.interior-page .page-heading h1 em,.interior-page .studio-hero h1 span{background:none;color:inherit;padding:0}
.interior-page .page-heading>.micro-label{font-size:.8125rem;letter-spacing:.07em;margin-bottom:2.5rem;color:#c2beb5;max-width:none}
.interior-page .page-heading>p:last-of-type:not(.micro-label){font-size:clamp(1.125rem,1.5vw,1.375rem);line-height:1.6;max-width:43rem;margin-top:2.5rem}
.interior-page .section-space{padding-block:clamp(4rem,7vw,8rem)}
.interior-page :is(.studio-statement,.studio-digital h2,.studio-step h3,.studio-value h3,.service-detail h2,.service-positioning h2,.related-story h2,.digital-project h3,.digital-offer h2,.contact-info h2,.contact-brief h2,.reading-aside>p:nth-child(2),.post-body h2,.post-body h3,.article-card h2,.article-card h3,.digital-disciplines){font-family:var(--folio-serif);font-weight:400;letter-spacing:-.03em;line-height:1.15}
.interior-page :is(.related-section,.studio-process,.studio-digital,.contact){background:var(--background);--border:#f1ece435}
.interior-page .contact-title{font-size:clamp(2.75rem,7.5vw,8rem);line-height:1.1}
.interior-page .portfolio-index{gap:4rem 2.5rem}
.interior-page .project-meta :is(h2,h3){font-size:clamp(2rem,3.4vw,3.75rem);line-height:1.15}
.interior-page :is(.project-shell,.article-card,.related-story>a,.related-story img,.detail-hero-image,.detail-hero-image img,.reading-aside,.service-detail-core,.contact-brief-core){border-radius:0;box-shadow:none}
.interior-page .detail-hero-image{padding:0;margin:0;background:var(--background)}
.interior-page .detail-hero-image img{max-height:none;width:100%;height:auto;object-fit:contain}
.interior-page .detail-heading{min-height:65svh}
.interior-page .blog-post .detail-heading h1{font-size:clamp(2.5rem,4.6vw,5.25rem);max-width:70rem}
.interior-page .breadcrumbs{color:#c2beb5;line-height:1.5;margin-bottom:2.5rem;flex-wrap:wrap}
.interior-page .breadcrumbs a:hover{color:#fff}
.interior-page .project-facts{margin-top:3rem;max-width:65rem}
.interior-page .project-facts dt,.interior-page .article-byline{color:#c2beb5}
.interior-page .project-facts dd{color:var(--foreground)}
.interior-page .article-byline{margin-top:2rem}
.interior-page .post-body{max-width:49rem;font-size:1.125rem;line-height:1.85}
.interior-page .post-body h2{font-size:clamp(1.75rem,2.5vw,2.5rem);margin-top:3rem}
.interior-page .reading-aside{padding:2rem 0;background:transparent;border-top:1px solid var(--border)}
.interior-page .article-card :is(h2,h3){font-size:clamp(1.375rem,2vw,2rem)}
.interior-page .journal-grid{gap:3rem 2rem}
.interior-page .service-details{display:block;padding-top:1rem}
.interior-page .service-detail{border-bottom:1px solid var(--border)}
.interior-page .service-detail-core,.interior-page .service-detail:nth-child(n) .service-detail-core{padding:3rem 0;background:var(--paper);color:var(--ink);--muted-foreground:#615e57;--foreground:#292823}
.interior-page .service-detail-core{display:grid;grid-template-columns:1fr 1.2fr;gap:0 4rem;align-items:start}
.interior-page .service-detail-core>.micro-label{grid-column:1;margin-bottom:1.5rem}
.interior-page .service-detail-core>h2{grid-column:1;grid-row:2/5;margin:0;max-width:27rem}
.interior-page .service-detail-core>p,.interior-page .service-detail-actions{grid-column:2}
.interior-page .service-detail .service-scope{color:var(--muted-foreground);margin:1.5rem 0}
.interior-page .service-detail:nth-child(n) .pill.primary{background:var(--primary);color:#fff}
.interior-page .studio-brand-strip{padding-block:4rem;background:var(--paper)}
.interior-page .studio-values{gap:2.5rem;margin-top:4rem}
.interior-page .studio-value:nth-child(n){background:transparent;color:var(--ink);padding:2rem 0;border-top:1px solid var(--border)}
.interior-page .studio-value:nth-child(n) p{color:var(--muted-foreground)}
.interior-page .studio-statement em,.interior-page .studio-process h2 span{color:inherit}
.interior-page .studio-digital .pill.primary{background:var(--primary);color:#fff}
.interior-page .digital-disciplines{font-size:clamp(1.5rem,3.5vw,3.5rem);padding-block:3rem;border-bottom:1px solid var(--border)}
.interior-page .digital-projects{gap:4rem 2.5rem}
.interior-page .digital-project:nth-child(n){min-height:0;padding:0;background:transparent;color:var(--ink);--muted-foreground:#615e57;--border:#29282330;scroll-margin-top:3rem}
.interior-page .digital-project-top{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem;padding-top:1rem;border-top:1px solid var(--border)}
.interior-page .digital-project-top>p{margin-right:auto}
.interior-page .digital-image{display:block;margin:0 0 1.5rem;aspect-ratio:8/5;overflow:hidden;background:#e7e5df}
.interior-page .digital-image img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;transition:transform .65s var(--ease)}
.interior-page .digital-image:hover img{transform:scale(1.035)}
.interior-page .digital-project h3{font-size:clamp(1.75rem,2.8vw,3rem)}
.interior-page .digital-project-bottom{padding-top:1.25rem;gap:1.5rem}
.interior-page .digital-project:nth-child(n) .icon-island{background:var(--primary);color:#fff}
.interior-page .contact-info h2,.interior-page .contact-brief h2{font-size:2rem}
.interior-page .contact-brief-core{background:#eeece6}
.interior-page .contact-page-actions{margin-top:2rem}
@media(min-width:1100px) and (max-height:820px){
 .folio-hero-title{max-width:55rem}
 .folio-hero-description{font-size:1.125rem;width:37%}
 .folio-hero-description .folio-link{margin-top:.75rem}
 .folio-hero-top{gap:1.25rem}
 .folio-home[data-horizontal=true] .folio-section-title{font-size:3rem}
 .folio-home[data-horizontal=true] .folio-digital-list>a{padding:1rem 0}
 .folio-digital-list>a{grid-template-columns:6rem minmax(0,1fr) 1rem}
 .folio-contact h2{font-size:6vw}
}
@media(min-width:768px) and (max-width:1099px){.folio-digital-layout{grid-template-columns:1fr;gap:3rem}.folio-hero-description{width:55%;align-self:flex-end}.folio-hero-title{max-width:100%}.folio-contact h2{margin-block:4rem}}
@media(max-width:767px){
 .folio-hero-top{gap:2rem}.folio-hero-title{max-width:100%}.folio-hero-kicker{font-size:.75rem}
 .folio-hero-description{width:100%;max-width:22rem;align-self:start;font-size:1.25rem;margin-top:1rem}
 .folio-hero{min-height:calc(100svh - 4rem);padding-bottom:6rem;justify-content:space-between}
 .folio-hero-bottom{margin-top:3rem}.folio-hero-bottom .folio-scroll{font-size:1.5rem}
 .folio-intro h2,.folio-section-title{font-size:clamp(2rem,8.6vw,3.5rem)}
 .folio-panel{padding-block:3rem 4rem}
 .folio-contact h2{font-size:clamp(2.5rem,10vw,4rem)}
 .navigation .logo-link{width:6rem;flex:none}.navigation .brand-logo{width:6rem}
 .rail-socials{position:static;flex-direction:row;gap:0;margin-left:auto;margin-right:2.75rem}
 .rail-socials a{width:2.25rem;height:2.75rem}.rail-socials svg{width:1rem;height:1rem}
 .menu-bottom{flex-direction:column;align-items:start;gap:1rem}
 .folio-home .folio-chapter-nav{justify-content:flex-start;gap:1.25rem;padding-inline:1.25rem}
 .folio-home .folio-chapter-nav a{font-size:.8125rem;min-height:3.25rem}
 .folio-digital-layout{grid-template-columns:1fr;gap:3rem}
 .folio-digital-list{grid-template-columns:1fr}.folio-digital-list>a{grid-template-columns:6rem minmax(0,1fr) 1rem;padding:1.25rem 0;gap:1rem}
 .folio-digital-list h3{font-size:1.125rem}.folio-digital-list p{font-size:.75rem}
 .interior-page .page-heading{padding:3rem 1.25rem;min-height:65svh}
 .interior-page .page-heading h1{font-size:clamp(2.5rem,10vw,4rem);line-height:1.12}
 .interior-page .page-heading>.micro-label{font-size:.75rem;margin-bottom:2rem;line-height:1.6}
 .interior-page .page-heading>p:last-of-type:not(.micro-label){font-size:1.125rem;margin-top:2rem}
 .interior-page .blog-post .detail-heading h1{font-size:clamp(2rem,7.5vw,3rem)}
 .interior-page .portfolio-index,.interior-page .digital-projects{gap:3.5rem}
 .interior-page .project-meta :is(h2,h3){font-size:2rem}.interior-page .project-facts{margin-top:2.5rem}
 .interior-page .section-space{padding-block:4rem}
 .interior-page .service-detail-core{display:block;padding-block:2.5rem}
 .interior-page .service-detail-core>h2{font-size:2rem;margin-bottom:1.5rem}
 .interior-page .studio-values{gap:1rem}
 .interior-page .digital-project-top{font-size:.8125rem;gap:.75rem;flex-wrap:wrap}
 .interior-page .digital-access{font-size:.75rem}
 .interior-page .digital-disciplines{padding-block:2rem;gap:1rem;flex-wrap:wrap}
 .interior-page .digital-image{aspect-ratio:8/5}
 .interior-page .contact-title{font-size:clamp(2.5rem,10vw,4rem)}
 .digital-project[id]{scroll-margin-top:5rem}
}
@media(prefers-reduced-motion:reduce){.folio-digital-thumb img,.interior-page .digital-image img,.social-icons a{transition:none}}
[data-motion=off] .folio-digital-thumb img,[data-motion=off] .digital-image img{transition:none}
.folio-home[data-horizontal=true] .folio-digital{width:calc(100vw - var(--rail-width))}
.folio-digital-layout{grid-template-columns:minmax(0,.85fr) minmax(0,2fr);gap:3vw}
.folio-digital-list{gap:0 1.5rem}
.folio-digital-list>a{grid-template-columns:clamp(4.5rem,6vw,7rem) minmax(0,1fr) .75rem;gap:.75rem}
.folio-digital-list h3{font-size:clamp(1rem,1.2vw,1.375rem)}
.folio-digital-layout .folio-section-title{font-size:clamp(2.5rem,4vw,5rem)}
@media(max-width:1099px){.folio-digital-layout{grid-template-columns:1fr}}
@media(max-width:767px){.folio-digital-list>a{grid-template-columns:6rem minmax(0,1fr) 1rem}.folio-digital-list h3{font-size:1.125rem}.folio-digital-layout .folio-section-title{font-size:clamp(2rem,8.6vw,3.5rem)}}
.folio-home[data-horizontal=true] .folio-chapter-nav{padding:0 1rem max(0px,env(safe-area-inset-bottom))}
@media(max-height:820px) and (min-width:1100px){.folio-home[data-horizontal=true] .folio-panel{padding-bottom:5rem}}

/* A quiet editorial frame; the work supplies the colour and movement. */
.constructed-wordmark{display:block;width:100%;height:auto;overflow:visible;filter:brightness(0) saturate(100%) invert(95%) sepia(9%) saturate(213%)}
.wordmark-piece{transform-box:fill-box;transform-origin:center}
.folio-hero-title{padding-block:2rem}.folio-panel em{font-style:italic}
.folio-home[data-horizontal=true] .folio-chapter{max-width:calc(100vw - var(--rail-width) - 2 * var(--page-pad))}
.digital-showcase{min-width:0}.digital-teaser{scroll-margin-top:6rem}
.digital-showcase-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}
.digital-teaser-link{display:grid;grid-template-columns:clamp(5rem,9vw,9rem) minmax(0,1fr) 1.5rem;align-items:center;gap:1.1rem;padding:1.35rem 0;border-top:1px solid #f1ece440}
.digital-teaser-image{display:block;overflow:hidden;aspect-ratio:8/5;background:#262520;transition:transform .45s cubic-bezier(.2,.7,.2,1);transform-origin:left center}
.digital-teaser-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.digital-teaser-link:is(:hover,:focus-visible) .digital-teaser-image{transform:scale(1.08)}
.digital-teaser-link:is(:hover,:focus-visible) img{transform:scale(1.07)}
.digital-teaser-meta{font-size:.75rem;display:block;line-height:1.4;color:#c2beb5;letter-spacing:.025em}
.digital-teaser-title{display:block;font-size:1.3rem;line-height:1.15;margin-top:.6rem;letter-spacing:-.025em}
.digital-teaser-plus{font-size:1.75rem;font-weight:300;transition:transform .3s}
.digital-teaser-link:hover .digital-teaser-plus{transform:rotate(90deg)}
.hover-project-preview{position:fixed;z-index:45;padding:.65rem;background:var(--paper);color:var(--ink);box-shadow:0 16px 50px #0005;pointer-events:none;animation:preview-appear .28s cubic-bezier(.16,1,.3,1) both;transform-origin:center bottom}
.hover-project-preview>p{font-size:1rem;margin:.6rem .3rem .2rem}
.preview-bar{display:flex;justify-content:space-between;gap:1rem;padding:.4rem .25rem .7rem;font-size:.625rem;letter-spacing:.06em;text-transform:uppercase}
.preview-viewport{position:relative;width:100%;aspect-ratio:2/1;overflow:hidden;background:#262520}
.preview-scroll-image{position:absolute;inset:0;width:100%;height:125%;object-fit:cover;max-width:none}
.is-moving .preview-scroll-image{animation:preview-scan 5s cubic-bezier(.35,0,.2,1) .5s infinite alternate}
.preview-progress{position:absolute;right:.3rem;top:.3rem;width:2px;height:22%;background:#fff9;mix-blend-mode:difference}
.is-moving .preview-progress{animation:preview-progress 5s ease-in-out .5s infinite alternate}
@keyframes preview-scan{0%,15%{transform:translateY(0)}85%,100%{transform:translateY(-20%)}}
@keyframes preview-progress{0%,15%{top:4%}85%,100%{top:74%}}
@keyframes preview-appear{from{opacity:0;transform:translateY(12px) scale(.94)}to{opacity:1;transform:none}}
.project-popup[data-slot=dialog-content]{width:min(1120px,calc(100vw - 3rem));max-width:1120px;padding:0;gap:0;border:0;border-radius:0;background:var(--paper);color:var(--ink);max-height:calc(100svh - 3rem);overflow-y:auto;box-shadow:0 30px 100px #0005}
.project-popup-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding:.75rem 1.5rem;font-size:.6875rem;letter-spacing:.07em}
.project-popup-close{font-size:2rem;line-height:1;width:2.5rem;height:2.5rem;cursor:pointer;background:transparent}
.project-popup-layout{display:grid;grid-template-columns:1.1fr 1fr}
.project-popup-media{padding:2.5rem;background:#e8e6df;display:flex;flex-direction:column;justify-content:center}
.project-popup-media>p{font-size:.75rem;color:#615e57;line-height:1.6;margin-top:1rem;max-width:27rem}
.project-popup-copy{padding:3rem;display:flex;flex-direction:column;align-items:start}
.project-popup-copy .micro-label{font-size:.65rem;letter-spacing:.06em;margin-bottom:1.5rem}
.project-popup-copy [data-slot=dialog-title]{font:400 clamp(2.1rem,3.6vw,3.4rem)/1.04 var(--folio-serif);letter-spacing:-.035em}
.project-popup-copy [data-slot=dialog-description]{font-size:1rem;line-height:1.6;color:#615e57;margin-top:1.25rem}
.project-popup-copy ul{margin:1.5rem 0 2rem;padding:0;list-style:none;width:100%}
.project-popup-copy li{font-size:.8125rem;border-top:1px solid var(--border);padding:.65rem 0}
.project-live-link{background:var(--primary);color:white;width:100%;padding:1rem;display:flex;align-items:center;justify-content:space-between;font-size:.9375rem;gap:1rem}
.project-live-link>span[aria-hidden]{font-size:1.5rem;line-height:1}.project-live-link:hover{background:#b82f00}
.project-private-note{font-size:.75rem;line-height:1.5;color:#615e57;margin-top:1rem}.project-private-note a{text-decoration:underline}
.digital-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 2.5rem}
.digital-showcase-grid .digital-teaser-link{grid-template-columns:minmax(0,1fr) 2rem;padding:0;border:0;gap:1.5rem}
.digital-showcase-grid .digital-teaser-image{grid-column:1/-1;width:100%;aspect-ratio:8/5;transform:none!important}
.digital-showcase-grid .digital-teaser-meta{color:#615e57}.digital-showcase-grid .digital-teaser-title{font:400 clamp(2rem,3vw,3rem)/1.1 var(--folio-serif)}
.digital-teaser-description{display:block;max-width:34rem;margin-top:1rem;font-size:1rem;line-height:1.6;color:#615e57}.digital-showcase-grid .digital-teaser-plus{align-self:start}
.interior-page .post-body{color:var(--ink)}
.interior-page .post-body :is(h1,h2,h3,h4,strong,b,em,li,blockquote){color:var(--ink)}
.interior-page .post-body strong{font-family:inherit;font-weight:700}
.interior-page .post-body a{color:#b92f00;text-underline-offset:.2em}
.interior-page .post-body :is(h2,h3){scroll-margin-top:6rem}
.route-dock{position:fixed;bottom:0;left:var(--rail-width);right:0;z-index:35;display:flex;justify-content:center;gap:2rem;padding:0 1rem max(0px,env(safe-area-inset-bottom));background:#35342ff5;color:#c2beb5;border-top:1px solid #f1ece430;backdrop-filter:blur(12px);overflow:auto;scrollbar-width:none}
.route-dock a{flex:none;display:flex;align-items:center;font-size:.8125rem;min-height:3rem;position:relative}
.route-dock a[aria-current]{color:#fff}.route-dock a[aria-current]:before{content:'';position:absolute;inset:0 0 auto;height:2px;background:var(--primary)}
.route-dock a:hover{color:white}.interior-page>.footer{padding-bottom:6rem}
.legal-crossnav{padding:1.5rem var(--page-pad);display:flex;gap:2rem;flex-wrap:wrap;border-bottom:1px solid var(--border);font-size:.875rem}
.legal-crossnav a[aria-current]{color:var(--primary);text-decoration:underline;text-underline-offset:.4em}
@media(max-width:1099px){.folio-hero-title{padding-block:1rem}.digital-showcase-compact{grid-template-columns:1fr}.digital-teaser-link{grid-template-columns:8rem minmax(0,1fr) 1.5rem}.project-popup-copy{padding:2rem}.project-popup-media{padding:1.5rem}}
@media(max-width:767px){.digital-showcase-grid{grid-template-columns:1fr;gap:3rem}.digital-teaser-link{grid-template-columns:6rem minmax(0,1fr) 1.25rem;gap:1rem}.digital-teaser-title{font-size:1.2rem}.project-popup[data-slot=dialog-content]{width:calc(100vw - 1.5rem);max-height:calc(100svh - 1.5rem)}.project-popup-layout{grid-template-columns:1fr}.project-popup-media{padding:1rem}.project-popup-copy{padding:1.5rem}.project-popup-copy ul{margin:1rem 0}.project-popup-copy .micro-label{margin-bottom:1rem}.project-popup-bar{padding:.4rem 1rem}.project-popup-copy [data-slot=dialog-title]{font-size:2.25rem}.route-dock{justify-content:flex-start;gap:1.5rem;padding-inline:1.25rem}.legal-crossnav{gap:1.25rem}.hover-project-preview{display:none}}
@media(prefers-reduced-motion:reduce){.hover-project-preview,.is-moving .preview-scroll-image,.is-moving .preview-progress{animation:none!important}.digital-teaser-image,.digital-teaser-image img,.digital-teaser-plus{transition:none!important}}
[data-motion=off] :is(.preview-scroll-image,.preview-progress){animation:none!important}[data-motion=off].hover-project-preview{animation:none}

.journal-selection{display:grid;grid-template-columns:1.4fr 1fr;gap:4rem;align-items:start}
.journal-cover{min-width:0}.journal-cover-image{display:block;position:relative;overflow:hidden;background:#e5e0d6;aspect-ratio:6/5}
.journal-cover-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.journal-cover-image:hover img{transform:scale(1.035)}
.journal-cover-image>span{position:absolute;left:1rem;bottom:1rem;right:1rem;display:flex;justify-content:space-between;padding:.8rem 1rem;background:var(--paper);color:var(--ink);font-size:.6875rem;letter-spacing:.08em}
.journal-cover-copy{padding-top:1.5rem}.journal-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.75rem;line-height:1.5;color:#615e57}
.journal-cover-copy :is(h2,h3){font:400 clamp(2.75rem,4vw,4.5rem)/.98 var(--folio-serif);letter-spacing:-.045em;margin:1rem 0}
.journal-cover-copy>p:last-child{max-width:32rem;font-size:1.0625rem;line-height:1.6}
.journal-cover-copy em{font-style:italic}.journal-shortlist>.micro-label{font-size:.75rem;margin-bottom:1.5rem;letter-spacing:.05em}
.journal-shortlist article{border-top:1px solid var(--border)}
.journal-shortlist article>a{display:grid;grid-template-columns:1.5rem minmax(0,1fr) 5rem;gap:1rem;padding:1.75rem 0;align-items:start}
.journal-story-number{font-size:.75rem;line-height:1.5;color:#615e57}
.journal-shortlist article img{width:5rem;height:6.5rem;object-fit:cover}
.journal-shortlist :is(h2,h3){font:400 clamp(1.4rem,2vw,2rem)/1.1 var(--folio-serif);letter-spacing:-.025em;margin-top:.65rem}
.journal-shortlist article>a:hover :is(h2,h3){text-decoration:underline;text-underline-offset:.15em}
.journal-shortlist>.folio-link{margin-top:2rem}.journal-front{padding-inline:var(--page-pad)}
.journal-archive-heading{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--border);padding-top:2rem;margin-bottom:3rem}
.journal-archive-heading h2{font:400 clamp(3rem,5vw,5rem)/1 var(--folio-serif);letter-spacing:-.04em}
.journal-archive-heading p{font-size:.875rem}
.interior-page .blog-index{padding-top:0}.interior-page .blog-index .article-image{aspect-ratio:4/3}
.interior-page .blog-index .article-card{background:transparent;border:0}.interior-page .blog-index .article-card-copy{padding:1.5rem 0}
.interior-page .article-card :is(h2,h3){color:var(--ink)}
.folio-home[data-horizontal=true] .folio-journal{width:calc(100vw - var(--rail-width))}
.journal-selection-home{gap:3rem;grid-template-columns:1.15fr 1fr;margin-block:auto}
.journal-selection-home .journal-cover{display:grid;grid-template-columns:1fr .95fr;gap:1.5rem;align-items:center}
.journal-selection-home .journal-cover-image{aspect-ratio:3/4;min-height:17rem;max-height:44svh}
.journal-selection-home .journal-cover-copy{padding:0}.journal-selection-home .journal-cover-copy h3{font-size:clamp(2.25rem,3vw,3.3rem)}
.journal-selection-home .journal-cover-copy>p:last-child{font-size:1rem;line-height:1.5}
.journal-selection-home .journal-shortlist article>a{padding:1rem 0;grid-template-columns:1rem minmax(0,1fr) 3.5rem;gap:.75rem}
.journal-selection-home .journal-shortlist article img{width:3.5rem;height:4rem}
.journal-selection-home .journal-shortlist h3{font-family:'Cabinet Grotesk',sans-serif;font-size:1.0625rem;line-height:1.25;letter-spacing:-.01em;margin-top:.4rem}
.journal-selection-home .journal-shortlist>.micro-label{margin-bottom:1rem}.journal-selection-home .journal-shortlist>.folio-link{margin-top:1rem}
.interior-page .case-study .detail-heading h1{font-size:clamp(5rem,12vw,12rem);line-height:.95;max-width:none;letter-spacing:-.055em}
.interior-page .case-study .detail-heading>p:last-of-type{font-size:clamp(1.5rem,2.75vw,3rem);font-family:var(--folio-serif);max-width:48rem;line-height:1.2;margin-top:2rem}
.case-concept{display:grid;grid-template-columns:1.25fr 1fr;gap:6vw;padding-inline:var(--page-pad);align-items:start}
.case-concept .micro-label{font-size:.75rem;margin-bottom:2rem;letter-spacing:.05em}
.case-concept h2{font:400 clamp(3rem,5vw,5.5rem)/1 var(--folio-serif);letter-spacing:-.045em;max-width:40rem}
.case-concept-copy{padding-top:3rem;max-width:36rem}.case-concept-copy p{font-size:clamp(1.125rem,1.6vw,1.5rem);line-height:1.6;margin-bottom:1.5rem}.case-concept-copy p+p{font-size:1rem;color:#615e57}.case-concept-copy .folio-link{margin-top:1rem}
.case-gallery{display:grid;grid-template-columns:1fr 1fr;gap:3rem 1.5rem;padding:0 var(--page-pad)}
.case-gallery-piece:first-child,.case-gallery-piece:last-child:nth-child(odd){grid-column:1/-1}
.case-gallery-image{overflow:hidden;background:#e8e6df}.case-gallery-image img{display:block;width:100%;height:auto;max-height:105svh;object-fit:contain}
.case-gallery-piece figcaption{display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;font-size:.75rem;line-height:1.5;color:#615e57}
.case-narrative{padding-inline:var(--page-pad)}
.case-narrative details{border-block:1px solid var(--border);padding-block:2rem;margin-bottom:2rem}
.case-narrative summary{display:flex;align-items:center;justify-content:space-between;gap:2rem;cursor:pointer;list-style:none;font:400 clamp(2rem,3vw,3rem)/1.1 var(--folio-serif)}
.case-narrative summary::-webkit-details-marker{display:none}.case-narrative summary>span:last-child{font-family:'Cabinet Grotesk',sans-serif;transition:transform .25s}.case-narrative details[open] summary>span:last-child{transform:rotate(45deg)}
.case-narrative .post-body{padding-top:2rem;margin-left:auto}
.interior-page .reading-aside{position:sticky;top:3rem;align-self:start}.reading-aside nav{margin:1.5rem 0 2rem}.reading-aside ol{list-style:none;counter-reset:reading-index;margin:0;padding:0}.reading-aside li{counter-increment:reading-index;display:flex;gap:.75rem;margin-bottom:1rem;font-size:.8125rem;line-height:1.5}.reading-aside li:before{content:counter(reading-index,decimal-leading-zero);font-size:.625rem;color:var(--primary);padding-top:.2rem}.reading-aside a:hover{text-decoration:underline;text-underline-offset:.2em}
.interior-page .blog-post .detail-hero-image{background:#e8e6df;padding:3rem var(--page-pad)}
.interior-page .blog-post .detail-hero-image img{max-height:90svh;object-fit:contain}
@media(max-height:820px) and (min-width:1100px){.journal-selection-home .journal-shortlist article>a{padding:.65rem 0}.journal-selection-home .journal-cover-copy>p:last-child{font-size:.9375rem}.journal-selection-home .journal-shortlist>.micro-label{display:none}.journal-selection-home .journal-cover-image{min-height:15rem}.folio-hero-title{padding-block:0}}
@media(max-width:1099px){.journal-selection{gap:2.5rem}.journal-selection-home{grid-template-columns:1fr}.journal-selection-home .journal-cover{grid-template-columns:1fr 1fr}.journal-selection-home .journal-cover-image{max-height:none;min-height:0;aspect-ratio:4/3}.journal-selection-home .journal-shortlist article>a{grid-template-columns:1rem minmax(0,1fr) 5rem}.case-concept{gap:3rem}.case-concept-copy{padding-top:2rem}}
@media(max-width:767px){.journal-selection{grid-template-columns:1fr}.journal-selection-home .journal-cover{grid-template-columns:1fr}.journal-selection-home .journal-cover-image{aspect-ratio:4/3}.journal-cover-copy :is(h2,h3){font-size:3rem}.journal-shortlist article>a{grid-template-columns:1rem minmax(0,1fr) 4.5rem}.journal-shortlist article img{width:4.5rem;height:5.5rem}.journal-archive-heading{align-items:start;flex-direction:column;gap:1rem}.case-concept{grid-template-columns:1fr;gap:1rem}.case-concept h2{font-size:3rem}.case-concept-copy{padding-top:1rem}.case-gallery{grid-template-columns:1fr;gap:2.5rem}.case-gallery-piece:first-child{grid-column:auto}.case-gallery-piece figcaption{flex-direction:column;gap:.5rem}.interior-page .case-study .detail-heading h1{font-size:clamp(4.5rem,18vw,7rem)}.interior-page .reading-aside{position:static}.interior-page .blog-post .detail-hero-image{padding:1.25rem}.interior-page .reading-aside nav{margin:1rem 0}.reading-aside li{font-size:.8125rem}.folio-hero-title{padding-block:0}}
@media(prefers-reduced-motion:reduce){.journal-cover-image img{transition:none}}

/* White canvas, one persistent bottom navigation. */
:root{--rail-width:0rem;--paper:#fff;--page-pad:clamp(1.25rem,5vw,6rem)}
body{background:#fff}.site-root{padding-left:0;padding-top:0}
.ui-symbol{display:inline-block;width:1.25rem;height:1.25rem;flex:none;vertical-align:middle}
.folio-home,.folio-home .folio-surface,.folio-home .folio-panel,.folio-home>.footer{background:#fff;color:var(--ink);--foreground:#292823;--muted-foreground:#615e57;--border:#29282330}
.folio-home .folio-hero-title .constructed-wordmark,.folio-home .footer .brand-logo{filter:brightness(0) saturate(100%)}
.folio-home .folio-panel{border-right:1px solid #29282312}
.folio-home .digital-teaser-link{border-color:var(--border)}.folio-home .digital-teaser-meta{color:#615e57}
.folio-home .folio-socials a:hover{color:var(--primary)}
.folio-home .footer-legal,.folio-home>.footer{border-color:var(--border)}.folio-home .footer-column a:hover{color:var(--primary)}
.folio-home .footer-column>span{color:#615e57}
.folio-home .folio-chapter-nav,.folio-home[data-horizontal=true] .folio-chapter-nav,.route-dock{left:0;background:#fffffff5;color:var(--ink);border-color:#29282325;padding:.4rem 1.25rem max(.4rem,env(safe-area-inset-bottom));gap:clamp(1rem,3vw,3rem);min-height:4rem}
.folio-home .folio-chapter-nav a,.route-dock a{color:#615e57;font-size:.9375rem;min-height:3rem;opacity:1}
.folio-home .folio-chapter-nav a[aria-current],.folio-home .folio-chapter-nav a:hover,.route-dock a[aria-current],.route-dock a:hover{color:var(--ink)}
.folio-home .folio-chapter-nav a[aria-current]>span{color:var(--primary)}
.folio-home .folio-chapter-nav a>span{display:none}
.folio-home[data-horizontal=true] .folio-panel{padding-bottom:6rem}
.folio-panel{scroll-margin-top:1rem}.folio-hero{min-height:100svh}
.commercial-footer{grid-template-columns:1.3fr 1fr 1fr}.footer-socials>span{display:block;font-size:.75rem;margin-bottom:1rem}.footer-socials .social-icons{margin-left:-.5rem}.footer-socials .social-icons a{border-color:currentColor}
.interior-page .page-heading.blog-heading,.interior-page .blog-post .page-heading{background:#fff;color:var(--ink);--foreground:#292823;--muted-foreground:#615e57;--border:#29282330}
.interior-page .blog-heading>.micro-label{color:#615e57}.interior-page .blog-heading{min-height:55svh;border-bottom:1px solid var(--border)}
.interior-page .blog-post .detail-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);gap:3rem 6vw;align-items:center;min-height:85svh;padding-block:clamp(2rem,4vw,4rem) 5rem;border-bottom:1px solid var(--border)}
.blog-post .breadcrumbs{grid-column:1/-1;margin-bottom:0;color:#615e57;font-size:.875rem}.blog-post .breadcrumbs a:hover{color:var(--primary)}
.blog-heading-copy{max-width:47rem}.blog-heading-copy>.micro-label{font-size:.75rem;letter-spacing:.08em;color:#615e57;margin-bottom:2rem}
.interior-page .blog-post .detail-heading h1{font-size:clamp(3.5rem,6.3vw,7rem);line-height:.99;letter-spacing:-.045em;text-wrap:balance}
.blog-heading-copy>p:not(.micro-label){font-size:1.125rem;line-height:1.65;max-width:37rem;margin-top:2rem;color:#615e57}
.interior-page .blog-post .article-byline{border-top:1px solid var(--border);padding-top:1.5rem;margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;color:#615e57;font-size:.8125rem}
.article-heading-art{margin:0;max-width:100%;background:#fff}
.article-heading-art img{width:100%;height:auto;max-height:65svh;object-fit:contain;display:block}
.blog-post .reading-aside>.text-link{display:inline-flex;gap:1rem;align-items:center}
.interior-page:has(.blog-post) .related-section{background:#fff;color:var(--ink);--foreground:#292823;--border:#29282330;border-top:1px solid var(--border)}
.interior-page:has(.blog-post) .related-section .section-title{color:var(--ink)}
.blog-post .article-content-layout{padding-top:4rem}
.skip-link{z-index:100}
@media(max-width:1099px){.folio-home .folio-hero{min-height:100svh}.folio-home .folio-hero-description{align-self:flex-end}.interior-page .blog-post .detail-heading{gap:2rem 3rem}}
@media(max-width:767px){
 .site-root{padding-top:0}.folio-hero{padding-top:2rem}.folio-home .folio-hero-description{align-self:start}
 .folio-home .folio-panel{padding-bottom:7rem;scroll-margin-top:0}.folio-home .folio-hero{min-height:100svh}
 .folio-home .folio-chapter-nav,.folio-home[data-horizontal=true] .folio-chapter-nav,.route-dock{display:flex;flex-wrap:wrap;justify-content:center;gap:0 .35rem;padding:.25rem .5rem max(.25rem,env(safe-area-inset-bottom));overflow:visible;min-height:0}
 .folio-home .folio-chapter-nav a,.route-dock a{justify-content:center;min-height:2.6rem;padding:0 .6rem;font-size:.8125rem}
 .folio-home .folio-chapter-nav a[aria-current]:before,.route-dock a[aria-current]:before{top:auto;bottom:.25rem;left:.6rem;right:.6rem}
 .commercial-footer{grid-template-columns:1fr}.footer-socials{margin-top:1rem}.footer-socials .social-icons{gap:.75rem}
 .interior-page .blog-post .detail-heading{grid-template-columns:1fr;padding:1.5rem 1.25rem 3rem;gap:2.5rem;min-height:0}
 .blog-post .breadcrumbs{grid-column:auto;font-size:.8125rem}.blog-heading-copy>.micro-label{font-size:.75rem;margin-bottom:1.5rem}
 .interior-page .blog-post .detail-heading h1{font-size:clamp(2.75rem,12vw,4rem);line-height:1.03}
 .blog-heading-copy>p:not(.micro-label){font-size:1.0625rem;margin-top:1.5rem}.interior-page .blog-post .article-byline{font-size:.8125rem;line-height:1.5;margin-top:1.5rem;padding-top:1rem}
 .article-heading-art{max-width:27rem;margin:auto}.article-heading-art img{max-height:none}
 .interior-page .blog-heading{min-height:50svh}.interior-page .breadcrumbs a:hover{color:var(--primary)}
 .footer,.folio-home>.footer,.interior-page>.footer{padding-bottom:8rem}
}

/* One continuous, native horizontal portfolio. */
body:has(.folio-reel){overflow:hidden;background:#fff;color:var(--ink)}
.folio-reel{--dock-height:4.8rem;height:100dvh;background:#fff;overflow:hidden}
.folio-reel .folio-surface{width:100%;height:calc(100dvh - var(--dock-height));overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;scroll-behavior:smooth;outline-offset:-3px;background:white}
.folio-reel .folio-surface::-webkit-scrollbar{display:none}
.folio-reel .folio-track{position:relative;display:flex;flex-wrap:nowrap;width:max-content;height:100%;transform:none!important}
.folio-reel .folio-panel{flex:0 0 auto;width:100vw;min-width:0;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin;padding:clamp(1.5rem,3.2vw,3.5rem) clamp(1.25rem,4.5vw,5rem);border-right:1px solid #29282318;scroll-margin:0;gap:1rem;color:var(--ink)}
.folio-reel .folio-hero-title{padding:1rem 0}.folio-reel .folio-hero-description{margin-top:0}.folio-reel .folio-hero-bottom{margin-top:1.5rem;padding-bottom:0}
.folio-reel .folio-hero-top{gap:2.5rem}.folio-reel .folio-scroll{font-family:'Cabinet Grotesk',sans-serif;font-size:.9375rem;letter-spacing:0;display:flex;align-items:center;gap:1.5rem}.folio-scroll svg{width:2.5rem;height:1.25rem;transition:transform .3s}.folio-scroll:hover svg{transform:translateX(7px)}
.folio-reel .folio-chapter{margin-bottom:1rem;flex-shrink:0}.folio-reel .folio-chapter>.reel-count{font:400 .75rem/1.4 'Cabinet Grotesk',sans-serif;letter-spacing:.06em;margin-left:auto}
.folio-reel .folio-intro-content{margin:auto 0}.folio-reel .folio-intro-bottom{margin-top:1rem}.folio-reel .folio-intro-bottom .brand-mark{width:4.5rem;height:4.5rem}
.folio-reel .folio-section-title{font-size:clamp(3rem,5.2vw,5.6rem);margin-bottom:1.25rem}
.folio-reel .folio-work{width:245vw}.folio-reel .folio-work-grid{gap:3rem;margin-block:auto;grid-template-columns:repeat(3,minmax(0,1fr))}.folio-reel .folio-project:first-child{grid-column:auto}
.folio-reel .folio-work>.folio-section-title{max-width:calc(100vw - 10vw)}.folio-reel .folio-work>.folio-chapter{max-width:calc(100vw - 10vw)}
.folio-reel .folio-project-image,.folio-reel .folio-project:first-child .folio-project-image{height:43dvh;aspect-ratio:auto}.folio-reel .folio-project-caption{padding-top:1rem}.folio-reel .folio-project-summary{margin-top:.7rem}.folio-reel .folio-project-image img{transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s}.folio-reel .folio-project-image:is(:hover,:focus-visible) img{transform:scale(1.045);filter:saturate(1.08)}
.folio-reel .folio-project-view{transition:transform .3s,background .3s,color .3s}.folio-reel .folio-project-image:is(:hover,:focus-visible) .folio-project-view{background:var(--primary);color:white;transform:translateY(-4px)}
.folio-reel .folio-journal{width:115vw}.folio-reel .journal-selection{margin-block:auto;gap:3rem}.folio-reel .journal-selection-home .journal-cover-image{max-height:44dvh;min-height:0}.folio-reel .journal-shortlist article>a{padding:1rem 0}.folio-reel .journal-shortlist .folio-link{margin-top:1.25rem}
.folio-reel .folio-services .folio-service-list{margin-block:auto}.folio-reel .folio-service-list>a{padding:1rem 0}.folio-reel .folio-service-list h3{font-size:clamp(1.5rem,2.2vw,2.3rem)}.folio-reel .folio-service-list p{font-size:1rem;line-height:1.4}.folio-reel .folio-service-list a>span:last-child{transition:transform .3s}.folio-reel .folio-service-list a:hover>span:last-child{transform:rotate(90deg);color:var(--primary)}
.folio-reel .folio-digital{width:130vw}.folio-reel .folio-digital-layout{margin-block:auto;gap:5vw;grid-template-columns:.7fr 1.3fr}.folio-reel .digital-teaser-link{padding:1rem 0;grid-template-columns:7rem minmax(0,1fr) 1.25rem}.folio-reel .digital-teaser-title{font-size:1.15rem}.reel-detail-hint{font-size:.8125rem!important;line-height:1.6!important;color:#615e57}
.folio-reel .folio-contact h2{font-size:clamp(4rem,8.5vw,9rem);margin-block:auto;line-height:1.02}.folio-reel .folio-contact-bottom{margin-top:2rem;align-items:end}.folio-contact-bottom .social-icons{gap:.5rem}.folio-reel .folio-contact-bottom .folio-link{display:flex;margin-top:1rem}
.reel-colophon{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;border-top:1px solid var(--border);padding-top:1rem;color:#615e57;font-size:.6875rem;line-height:1.6}.reel-colophon>div{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}.reel-colophon a:hover,.reel-colophon button:hover{color:var(--primary)}
.reel-marquee{overflow:hidden;margin:1.75rem calc(-1 * clamp(1.25rem,4.5vw,5rem)) 0;padding:1rem 0;border-block:1px solid #29282320;flex-shrink:0;color:var(--ink)}
.reel-marquee-track{display:flex;width:max-content;animation:marquee-travel 30s linear infinite;will-change:transform}.reel-marquee-group{display:flex;flex:none;align-items:center}.reel-marquee-group>span{display:flex;align-items:center;gap:2rem;padding-right:2rem;white-space:nowrap;font:400 clamp(2rem,3.5vw,4rem)/1.1 'Cabinet Grotesk',sans-serif;letter-spacing:-.045em}.reel-marquee svg{width:.7em;height:.7em;color:var(--primary);flex:none}.reel-marquee.is-reversed .reel-marquee-track{animation-direction:reverse}.reel-marquee:hover .reel-marquee-track{animation-play-state:paused}
@keyframes marquee-travel{to{transform:translateX(-50%)}}
.folio-reel .folio-link{position:relative;border-bottom-color:#29282350;transition:color .25s}.folio-reel .folio-link:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:var(--primary);transform:scaleX(0);transform-origin:left;transition:transform .3s}.folio-reel .folio-link:hover{color:var(--primary);opacity:1}.folio-reel .folio-link:hover:after{transform:scaleX(1)}
.folio-reel .reel-dock{position:fixed;inset:auto 0 0;z-index:35;height:var(--dock-height);min-height:0;background:#fff;display:flex;align-items:center;justify-content:center;padding:.65rem 4.5vw .25rem;border:0;gap:0;color:var(--ink)}
.reel-dock-links{display:flex;justify-content:center;align-items:center;gap:clamp(1.5rem,3.5vw,4rem)}.folio-reel .reel-dock a{position:relative;font-size:.875rem;opacity:1;min-height:2.5rem;color:#615e57}.folio-reel .reel-dock a[aria-current]{color:var(--primary)}.folio-reel .reel-dock a:before{display:none}.reel-position{position:absolute;right:2rem;font-size:.625rem;letter-spacing:.1em;color:#615e57}
.reel-progress{position:absolute;top:0;left:0;width:100%;margin:0;height:12px;border:0;padding:0;background:linear-gradient(to right,var(--primary) 0 var(--progress),#29282320 var(--progress) 100%) center/100% 2px no-repeat;appearance:none;cursor:ew-resize;touch-action:none}.reel-progress::-webkit-slider-thumb{appearance:none;width:10px;height:10px;background:var(--primary);border:0;border-radius:0;transition:transform .2s}.reel-progress::-moz-range-thumb{width:10px;height:10px;background:var(--primary);border:0;border-radius:0}.reel-progress:hover::-webkit-slider-thumb{transform:scale(1.3)}.reel-progress:focus-visible{outline:2px solid var(--primary);outline-offset:3px}
.reel-reader[data-slot=dialog-content]{width:min(1080px,calc(100vw - 3rem));max-width:1080px;max-height:calc(100dvh - 3rem);overflow-y:auto;border:0;border-radius:0;padding:0;display:block;gap:0;background:white;color:var(--ink);animation:reader-open .28s cubic-bezier(.16,1,.3,1)}
@keyframes reader-open{from{opacity:0;translate:0 12px;scale:.985}to{opacity:1;translate:0 0;scale:1}}
.reel-reader-bar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid var(--border);padding:.5rem 1.5rem;font-size:.8125rem;letter-spacing:.035em}.reel-reader-bar button{display:grid;place-items:center;width:2.75rem;height:2.75rem;cursor:pointer}.reel-reader-bar button:hover{color:var(--primary)}.reel-reader-bar .reel-reader-back{width:auto;text-decoration:underline;text-underline-offset:.3em;font-size:.875rem;letter-spacing:0}
.reel-reader-heading{padding:3.5rem 5vw 3rem}.reel-reader-heading [data-slot=dialog-title]{font:400 clamp(3rem,6vw,5.5rem)/1.02 var(--folio-serif);letter-spacing:-.045em;margin:1.5rem 0}.reel-reader-heading [data-slot=dialog-description]{font-size:1.125rem;line-height:1.65;color:#615e57;max-width:42rem}.reel-reader-heading .micro-label{font-size:.75rem;color:#615e57}
.reel-reader-art{margin:0;padding:0 5vw 2rem;background:white}.reel-reader-art img{width:100%;height:auto;max-height:65dvh;object-fit:contain}.reel-reader-art.is-project{padding:0 0 2rem}.reel-reader-art.is-project img{max-height:75dvh;object-fit:cover}
.reel-reader-body{padding:1rem 5vw 4rem;max-width:54rem;margin:auto;color:var(--ink)}.reel-reader-body :is(h1,h2,h3,h4,p,strong,b,em,li,blockquote){color:var(--ink)}.reel-reader-body :is(h2,h3){font-family:var(--folio-serif);font-weight:400;letter-spacing:-.03em;line-height:1.2}.reel-reader-body h2{font-size:2.5rem}.reel-reader-body strong{font:700 1em/1.7 'Cabinet Grotesk',sans-serif}.reel-reader-body a{color:var(--primary);text-decoration:underline}.reel-reader-body img{max-width:100%;height:auto}.reel-reader-body .legal-copy{max-width:none}.reel-reader-gallery{padding:0 3rem 3rem;display:grid;gap:2rem}.reel-reader-gallery img{width:100%;height:auto}
.reel-reader.is-archive .reel-reader-heading{padding:3rem clamp(1.25rem,4vw,3.5rem) 2.75rem}
.reel-reader-bar .reel-reader-back{display:flex;align-items:center;min-height:2.75rem}.reel-reader-bar [hidden]{display:none}
.reel-reader.is-archive .reel-reader-heading [data-slot=dialog-title]{max-width:13ch;font-size:clamp(3rem,5vw,4.5rem);line-height:1.04;margin:1rem 0 1.25rem}
.reel-archive{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem 2.25rem;padding:0 clamp(1.25rem,4vw,3.5rem) 3.5rem;align-items:start}
.reel-archive-card{display:flex;flex-direction:column;min-width:0;height:100%;color:var(--ink);background:#fff;text-decoration:none}
/* The frame owns its height, so the global image rule cannot overlap the copy. */
.reel-archive-image{position:relative;flex:none;aspect-ratio:16/11;overflow:hidden;background:#f3f3f0}
.reel-archive-image img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.reel-archive-copy{display:flex;flex:1;flex-direction:column;position:relative;padding-top:1.5rem;background:#fff}
.reel-archive-topic{color:#615e57;font-size:.75rem;line-height:1.55;letter-spacing:.045em}
.reel-archive h3{font:400 clamp(2rem,3vw,2.65rem)/1.06 var(--folio-serif);letter-spacing:-.025em;margin:.8rem 0 1rem;max-width:20ch;overflow-wrap:break-word;transition:color .25s}
.reel-archive-meta{display:flex;flex-wrap:wrap;gap:.25rem 1rem;font-size:.875rem;line-height:1.6;color:#615e57;margin-top:auto}
.reel-archive-read{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid #29282330;padding:1.25rem 0 1rem;margin-top:.25rem;font-size:.9375rem;line-height:1.5;transition:border-color .25s}
.reel-archive-read svg{width:1.25rem;height:1.25rem;color:var(--primary);transition:transform .3s}
.reel-archive-card:focus-visible{outline:2px solid var(--primary);outline-offset:8px}
.reel-archive-card:focus-visible h3{color:var(--primary)}
@media(hover:hover){.reel-archive-card:hover .reel-archive-image img{transform:scale(1.035)}.reel-archive-card:hover h3{color:var(--primary)}.reel-archive-card:hover .reel-archive-read{border-color:var(--primary)}.reel-archive-card:hover .reel-archive-read svg{transform:rotate(90deg)}}
@media(max-height:740px) and (min-width:768px){.folio-reel .folio-panel{padding-block:1.5rem}.folio-reel .folio-section-title{font-size:3rem}.folio-reel .folio-project-image,.folio-reel .folio-project:first-child .folio-project-image{height:34dvh}.folio-reel .folio-intro h2{font-size:3.5rem}.reel-marquee{padding:.65rem 0;margin-top:1rem}.reel-marquee-group>span{font-size:2rem}.folio-reel .folio-service-list>a{padding:.6rem 0}.folio-reel .folio-service-list p{font-size:.875rem}}
@media(max-width:1099px){.folio-reel .folio-panel{width:100vw}.folio-reel .folio-work{width:260vw}.folio-reel .folio-digital-layout{grid-template-columns:1fr}.folio-reel .folio-digital-layout>div:first-child{display:flex;gap:2rem;align-items:start}.folio-reel .folio-digital-layout .reel-detail-hint{display:none}.folio-reel .digital-showcase-compact{grid-template-columns:1fr 1fr}.folio-reel .digital-teaser-link{grid-template-columns:5rem 1fr 1rem}.folio-reel .folio-hero-top{display:flex;flex-direction:column;gap:2rem}.folio-reel .folio-hero-title{width:100%}.folio-reel .folio-hero-description{max-width:28rem;align-self:end}.folio-reel .journal-selection-home .journal-cover{grid-template-columns:1fr 1fr}.reel-position{display:none}.reel-dock-links{gap:2.5vw}}
@media(max-width:767px){
 .folio-reel{--dock-height:calc(5.9rem + env(safe-area-inset-bottom,0px))}.folio-reel .folio-panel,.folio-reel .folio-work,.folio-reel .folio-journal,.folio-reel .folio-digital{width:100vw;padding:1.5rem 1.25rem 2rem;justify-content:flex-start;gap:1.25rem}
 .folio-reel .folio-hero{justify-content:space-between}.folio-reel .folio-hero-top{gap:1rem}.folio-reel .folio-hero-title{padding:.75rem 0}.folio-reel .folio-hero-description{align-self:start;font-size:1.125rem}.folio-reel .folio-hero-bottom{font-size:.8125rem;gap:.5rem;margin-top:2rem}.folio-reel .folio-scroll{font-size:.8125rem;margin-top:1rem;justify-self:start}
 .folio-reel .folio-chapter{margin-bottom:0;gap:.5rem 1rem;font-size:.6875rem}.folio-reel .folio-chapter>span{font-size:1.125rem}.folio-reel .folio-chapter>.folio-link{width:auto;margin-left:auto;font-size:.8125rem}.folio-reel .folio-section-title{font-size:2.65rem;margin-bottom:.25rem}.folio-reel .folio-intro h2{font-size:2.65rem}.folio-reel .folio-intro-content{margin:auto 0}.folio-reel .folio-intro-content>p{font-size:1.0625rem;line-height:1.55}.folio-reel .folio-intro-bottom{margin-top:0;gap:1rem}.folio-reel .folio-intro-bottom>.folio-link{width:auto}.folio-reel .folio-intro-bottom .brand-mark{width:3.5rem;height:3.5rem}.folio-reel .folio-intro-bottom>p{font-size:.8125rem}
 .folio-reel .folio-work-grid{grid-template-columns:1fr;gap:2.5rem;margin:0}.folio-reel .folio-work>.folio-section-title,.folio-reel .folio-work>.folio-chapter{max-width:100%}.folio-reel .folio-project-image,.folio-reel .folio-project:first-child .folio-project-image{height:auto;aspect-ratio:4/3}.folio-reel .folio-project-caption h3{font-size:2rem}.folio-reel .folio-project-summary{font-size:.9375rem}
 .folio-reel .journal-selection{display:block;margin:0}.folio-reel .journal-selection-home .journal-cover{grid-template-columns:1fr;gap:1.25rem}.folio-reel .journal-selection-home .journal-cover-image{aspect-ratio:4/3;height:auto;max-height:none}.folio-reel .journal-cover-copy h3{font-size:2.75rem}.folio-reel .journal-shortlist{margin-top:2.5rem}.folio-reel .journal-shortlist h3{font-size:1.6rem}
 .folio-reel .folio-service-list>a{padding:1rem 0}.folio-reel .folio-service-list h3{font-size:1.65rem}.folio-reel .folio-service-list p{font-size:.9375rem}.folio-reel .folio-services .folio-service-list{margin:0}
 .folio-reel .folio-digital-layout{display:block;margin:0}.folio-reel .folio-digital-layout>div:first-child{display:block}.folio-reel .folio-digital-layout>div>p{font-size:1.0625rem;margin:1.5rem 0}.folio-reel .digital-showcase-compact{grid-template-columns:1fr}.folio-reel .digital-teaser-link{grid-template-columns:6rem 1fr 1.25rem;padding:1.1rem 0}
 .folio-reel .folio-contact h2{font-size:3.7rem;margin:auto 0}.folio-reel .folio-contact-bottom{gap:2rem;align-items:start;flex-direction:column;margin-top:1.5rem}.folio-reel .folio-email{font-size:clamp(1.125rem,6vw,1.5rem);word-break:break-word}.reel-colophon{flex-direction:column;margin-top:1rem;font-size:.6875rem;gap:.5rem}.reel-colophon>div{gap:.5rem 1rem}.reel-marquee{padding:.8rem 0;margin:1rem -1.25rem 0}.reel-marquee-group>span{font-size:2rem;gap:1.25rem;padding-right:1.25rem}
 .folio-reel .reel-dock{padding:1rem .75rem calc(.4rem + env(safe-area-inset-bottom,0px))}.reel-dock-links{gap:0;flex-wrap:wrap;max-width:26rem;width:100%}.folio-reel .reel-dock a{font-size:.8125rem;min-height:2.1rem;padding:0 .25rem;flex:0 0 25%}
 .reel-reader[data-slot=dialog-content]{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem)}.reel-reader-bar{padding:.5rem 1rem}.reel-reader-heading{padding:2rem 1.25rem}.reel-reader-heading [data-slot=dialog-title]{font-size:2.85rem}.reel-reader-heading [data-slot=dialog-description]{font-size:1rem}.reel-reader-art{padding:0 1.25rem 1.5rem}.reel-reader-body{padding:0 1.25rem 2rem;font-size:1rem;line-height:1.7}.reel-reader-body h2{font-size:2rem}.reel-reader-gallery{padding:0 1.25rem 2rem}.reel-archive{grid-template-columns:1fr;padding:0 1.25rem 2rem}
}
@media(max-width:767px){.reel-reader.is-archive .reel-reader-heading{padding:2rem 1.25rem}.reel-reader.is-archive .reel-reader-heading [data-slot=dialog-title]{font-size:2.85rem}.reel-archive{gap:2.75rem;padding-bottom:2.5rem}.reel-archive-copy{padding-top:1.25rem}.reel-archive h3{font-size:2.3rem}.reel-archive-meta{font-size:.875rem}}
/* Give the wordmark and the paragraph the same vertical centre. */
@media(min-width:900px){
 .folio-reel .folio-hero-top{display:grid;flex:1;grid-template-columns:minmax(0,1fr) clamp(16rem,24vw,26rem);grid-template-rows:auto minmax(16rem,1fr);column-gap:clamp(2rem,6vw,8rem);row-gap:2rem;align-items:center;padding-bottom:3rem}
 .folio-reel .folio-hero-kicker{grid-column:1/-1;align-self:start}
 .folio-reel .folio-hero-title{grid-column:1;grid-row:2;width:100%;max-width:none;min-width:0;padding:0;align-self:center}
 .folio-reel .folio-hero-description{grid-column:2;grid-row:2;position:relative;align-self:center;width:100%;max-width:none;margin:0;padding:0}
 .folio-reel .folio-hero-description .folio-link{position:absolute;top:100%;left:0;margin-top:1.25rem}
}
@media(prefers-reduced-motion:reduce){.reel-marquee-track,.reel-reader[data-slot=dialog-content]{animation:none!important}.folio-reel .folio-surface{scroll-behavior:auto}.folio-reel *,.reel-reader *{transition:none!important}.reel-archive-card:hover .reel-archive-image img,.reel-archive-card:hover .reel-archive-read svg{transform:none}}
[data-motion=off] .reel-marquee-track{animation-play-state:paused}[data-motion=off].reel-reader[data-slot=dialog-content]{animation:none}.folio-reel[data-motion=off] *,.reel-reader[data-motion=off] *{transition:none!important}.folio-reel[data-motion=off] .folio-surface{scroll-behavior:auto}.reel-reader[data-motion=off] .reel-archive-card:hover :is(.reel-archive-image img,.reel-archive-read svg){transform:none}

/* Shared navigation, portable landing pages and progressive loading. */
.folio-reel{--dock-height:8.25rem}
.folio-reel .reel-dock,.landing-dock{height:8.25rem;display:flex;flex-direction:column;justify-content:center;gap:.2rem;padding:.65rem clamp(1rem,4.5vw,5rem) .45rem;background:#fff;box-shadow:0 -1px 0 #29282320}
.site-utilities{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem;max-width:90rem}
.site-utilities .social-icons{display:flex;gap:.25rem}.site-utilities .social-icons a{width:44px;height:44px;border:0;background:transparent;color:var(--ink);display:grid;place-items:center}.site-utilities .social-icons svg{width:18px;height:18px}
.quick-contact-links{display:flex;align-items:center;gap:1rem}.quick-contact-links a{min-height:44px;display:flex;align-items:center;gap:.55rem;font-size:.875rem;color:var(--ink)}.quick-contact-links a:first-child{color:var(--primary)}.quick-contact-links svg{width:20px;height:20px;flex:none}.site-utilities a:hover{color:var(--primary)}
.folio-reel .reel-position{bottom:1.25rem}.folio-reel .reel-dock-links{width:100%}.folio-reel .reel-dock a{min-height:44px}.folio-reel .site-utilities a{font-size:.875rem}
.section-permalink{font-size:.8125rem;line-height:1.5;text-decoration:underline;text-underline-offset:.3em;margin-left:auto;white-space:nowrap}.folio-chapter:has(.section-permalink){flex-wrap:wrap}.folio-chapter>.section-permalink+.reel-count{margin-left:0}
.page-load-progress{position:fixed;z-index:100;inset:0 0 auto;height:3px;pointer-events:none;overflow:hidden;animation:load-failsafe .2s linear 2s forwards}.page-load-progress span{display:block;background:var(--primary,#d83b05);width:40%;height:100%;animation:load-travel .85s ease-in-out infinite}@keyframes load-travel{from{transform:translateX(-110%)}to{transform:translateX(360%)}}@keyframes load-failsafe{to{opacity:0;visibility:hidden}}
.landing-site{background:#fff;color:var(--ink);min-height:100dvh;padding-bottom:9rem;--foreground:#292823;--muted-foreground:#615e57}.landing-site main{max-width:1500px;margin:auto;padding:3rem clamp(1.25rem,6vw,6rem) 5rem}.landing-brand{display:block;width:11rem;margin-bottom:4rem}.landing-brand .constructed-wordmark{filter:brightness(0)}
.landing-heading{max-width:66rem;margin-bottom:3.5rem}.landing-heading>.micro-label{color:#615e57;font-size:.8125rem;margin-bottom:1.5rem}.landing-heading h1{font:400 clamp(3rem,6.5vw,6.5rem)/1.04 var(--folio-serif);letter-spacing:-.045em;margin:0 0 1.5rem}.landing-heading>p:last-child{font-size:1.25rem;line-height:1.6;max-width:43rem}.landing-body{max-width:50rem;font-size:1.125rem;line-height:1.7}.landing-body p{margin-bottom:1.5rem}
.landing-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem}.landing-work-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.landing-work-grid h2{font:400 2.7rem/1.1 var(--folio-serif);margin:1rem 0}.landing-work-grid p{line-height:1.6;font-size:1rem}.landing-work-grid a:hover h2{color:var(--primary)}
.landing-site .reel-archive{padding:0;gap:3rem}.landing-services{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.landing-services article{border-top:1px solid var(--border);padding-top:1.5rem}.landing-services h2{font:400 2.5rem/1.1 var(--folio-serif);margin:0 0 1rem}.landing-services p{font-size:1.125rem;line-height:1.6}.landing-cta{display:inline-flex;margin-top:2.5rem;color:var(--primary);border-bottom:1px solid currentColor;padding-bottom:.5rem;font-size:1.125rem}
.landing-site .post-body{color:var(--ink);max-width:48rem;margin:3rem auto}.landing-site .post-body :is(h2,h3,strong,b){color:var(--ink)}.landing-site .post-body h2{font:400 2.5rem/1.15 var(--folio-serif)}.landing-cover{margin:0 0 3rem}.landing-cover img{width:100%;height:auto;max-height:75dvh;object-fit:contain}.landing-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.9375rem;color:#615e57;margin-top:1.5rem}.landing-dock{position:fixed;inset:auto 0 0;z-index:35;border:0;color:var(--ink)}.landing-dock .reel-dock-links a{min-height:44px;display:flex;align-items:center;font-size:.875rem}.landing-dock a[aria-current]{color:var(--primary)}
.reader-page-link{margin-left:auto;margin-right:1.25rem;text-decoration:underline;text-underline-offset:.25em;font-size:.8125rem}.project-popup-copy .reader-page-link{display:inline-block;margin:1.5rem 0 0}.preview-viewport:has(img[data-failed=true]):after{content:'Vista previa no disponible';position:absolute;inset:0;display:grid;place-items:center;background:#f4f4f2;color:#615e57;font-size:1rem}
@media(max-width:899px){.landing-site main{padding-top:2rem}.landing-brand{margin-bottom:3rem}.landing-services{grid-template-columns:1fr}.landing-work-grid{gap:2rem}.landing-work-grid h2{font-size:2rem}.landing-site .digital-showcase-grid{grid-template-columns:1fr}}
@media(max-width:767px){.folio-reel{--dock-height:calc(8rem + env(safe-area-inset-bottom,0px))}.folio-reel .reel-dock,.landing-dock{height:calc(8rem + env(safe-area-inset-bottom,0px));padding:.75rem .75rem calc(.35rem + env(safe-area-inset-bottom,0px));gap:.35rem}.site-utilities{gap:.5rem}.site-utilities .social-icons{gap:0}.site-utilities .social-icons a{width:40px;min-height:44px}.quick-contact-links{gap:.2rem}.quick-contact-links a{justify-content:center;width:44px}.quick-contact-links a span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.folio-reel .reel-dock-links,.landing-dock .reel-dock-links{display:flex;justify-content:flex-start;flex-wrap:nowrap;gap:1.4rem;max-width:none;overflow-x:auto;scrollbar-width:thin;padding-bottom:.2rem;width:100%}.folio-reel .reel-dock-links a,.landing-dock .reel-dock-links a{flex:0 0 auto;font-size:.875rem;padding:0;min-height:44px}.landing-work-grid{grid-template-columns:1fr}.landing-heading{margin-bottom:2rem}.landing-heading>p:last-child{font-size:1.125rem}.landing-site{padding-bottom:9rem}.landing-site .post-body{font-size:1.0625rem}.reader-page-link{max-width:8rem;margin-right:.5rem}.folio-chapter .section-permalink{font-size:.8125rem}.landing-site .reel-archive{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.page-load-progress{display:none}}

