@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0b0d0b;--surface:#141914;--text:#f6f7ee;--secondary:#c3cbba;--line:#d8e5b52b;--yellow:#ffeb00;--paper:#eeeee5;--ink:#17200f;--font:Manrope,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-weight:500;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}em{font-style:normal;color:var(--yellow)}a:focus-visible,button:focus-visible{outline:3px solid #ff9900;outline-offset:6px}::selection{background:#ffeb00;color:#17200f}.wrap{width:min(1280px,88%);margin-inline:auto}.section{padding-block:110px}.skip{position:fixed;top:-100px;background:var(--yellow);color:#17200f;padding:15px;z-index:99}.skip:focus{top:0}.header{width:min(1380px,90%);height:110px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:35px}.logo{display:flex;align-items:center;gap:10px}.logo img{width:40px;height:52px;object-fit:contain}.logo>span{font-size:22px;font-weight:800;letter-spacing:-1px}.logo b{display:block;font-size:12px;letter-spacing:0}.header nav{display:flex;gap:30px;font-size:13px;margin-left:auto}.header nav a:hover{color:var(--yellow)}.header-actions{display:flex;gap:20px;align-items:center}#theme{background:none;border:1px solid var(--line);color:var(--text);border-radius:50%;width:40px;height:40px;font-size:23px}.header-contact{border:1px solid var(--line);border-radius:40px;padding:13px 18px;font-size:12px}.header-contact span{color:var(--yellow);margin-left:15px}.hero{display:grid;grid-template-columns:1.15fr 1fr;position:relative;align-items:center;min-height:710px;padding:55px 0 100px}.eyebrow{font-size:10px;letter-spacing:.13em;font-weight:700;line-height:1.8;color:var(--secondary)}.hero .eyebrow{display:flex;gap:10px;align-items:center;margin-bottom:28px}.status-dot{width:6px;height:6px;background:var(--yellow);border-radius:50%;box-shadow:0 0 12px #ffeb0040}h1{font-size:clamp(53px,6.1vw,88px);line-height:1.05;letter-spacing:-.065em;margin-bottom:27px}.hero-description{font-size:16px;color:var(--secondary);line-height:1.8;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-radius:40px;padding:15px 21px;font-size:13px;font-weight:700;transition:transform .25s}.button:hover{transform:translateY(-3px)}.button span{width:32px;height:32px;border-radius:50%;background:#00000012;display:grid;place-items:center;font-size:21px}.primary{background:var(--yellow);color:#17200f}.hero-visual{position:relative;min-height:540px;isolation:isolate}.visual-orbit{position:absolute;inset:6% -10%;background:radial-gradient(ellipse,#ffeb0011,transparent 65%);border-radius:50%;border:1px solid #eaff7910;transform:rotate(-30deg)}.trajectory{position:absolute;inset:0;width:100%;height:100%;stroke:var(--yellow);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1300;animation:draw-line 2.6s .2s ease both;filter:drop-shadow(0 0 15px #ffeb0022)}.visual-word{position:absolute;top:28%;left:15%;font-weight:800;font-size:clamp(110px,16vw,210px);letter-spacing:-.1em;line-height:1;color:var(--text);transform:rotate(-8deg);opacity:.95}.visual-label{position:absolute;font-size:11px;padding:12px 16px;border-radius:50px;border:1px solid var(--line);background:var(--surface);color:var(--text);display:flex;gap:10px;align-items:center;box-shadow:0 10px 30px #0002}.visual-label i{font-size:18px;font-style:normal;color:var(--yellow)}.visual-label-one{left:0;top:12%;animation:float 8s ease-in-out infinite}.visual-label-two{right:-3%;bottom:15%;animation:float 8s -4s ease-in-out infinite}.visual-foot{position:absolute;bottom:0;left:5%;font-size:8px;letter-spacing:.1em;color:var(--secondary)}.hero-bottom{position:absolute;bottom:10px;left:0;right:0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:22px;font-size:11px;color:var(--secondary)}.hero-bottom a{color:var(--text)}.hero-bottom a span{color:var(--yellow);margin-left:15px}.section-heading{display:flex;justify-content:space-between;gap:12%;align-items:end;margin-bottom:55px}.section-heading>p{max-width:380px;font-size:15px;line-height:1.85;color:var(--secondary);margin-bottom:0}h2{font-size:clamp(37px,4.6vw,64px);line-height:1.12;letter-spacing:-.055em;margin-bottom:0}.section-heading .eyebrow{margin-bottom:22px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.service{border-top:1px solid var(--line);padding-top:24px;display:flex;flex-direction:column}.service-number{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--secondary)}.service-number i{font-size:29px;font-style:normal;color:var(--yellow)}.service h3{font-size:30px;letter-spacing:-.04em;line-height:1.2;margin:24px 0 20px}.service>p{font-size:14px;line-height:1.85;color:var(--secondary)}.service ul{padding:0;list-style:none;font-size:12px;color:var(--secondary);line-height:2.2;margin:5px 0 27px}.service li:before{content:'↗';margin-right:10px;color:var(--yellow)}.service>a{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-top:auto;padding:16px 0;border-top:1px solid var(--line)}.service>a span{color:var(--yellow)}.work-section{background:var(--paper);color:var(--ink);border-radius:45px}.work-section em{color:var(--ink);text-decoration:underline;text-decoration-color:#e6d500;text-decoration-thickness:.12em;text-underline-offset:.08em}.work-section .eyebrow{color:#4b553e}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding-bottom:10px;font-size:13px}.work-section .text-link{border-color:#17200f30;flex-shrink:0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.work-right{display:grid;gap:30px}.work-image{position:relative;overflow:hidden;border-radius:23px;background:#182017}.work-image img{width:100%;height:340px;object-fit:contain;transition:transform .6s}.work-tall{padding-top:65px}.work-tall .work-image{border-radius:180px 180px 24px 24px}.work-tall img{height:690px}.work-wide img{height:240px}.work:hover img{transform:scale(1.025)}.work-image>span{position:absolute;bottom:15px;right:15px;padding:10px 13px;border:1px solid #ffffff40;border-radius:40px;background:#12180ee8;color:#f6f7ee;font-size:10px}.work-caption{padding:20px 4px 0}.work-caption>span{font-size:9px;color:#4b553e;letter-spacing:.05em}.work-caption h3{font-size:22px;letter-spacing:-.035em;margin:10px 0 0}.fine-print{font-size:11px;line-height:1.9;color:#4b553e;max-width:760px;margin:35px 0 0}.card-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.card-display{position:relative;min-height:450px;perspective:1000px;display:grid;place-items:center}.card-halo{position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse,#ffeb0012,transparent 65%);border:1px solid #eaff7915;transform:rotateX(55deg) rotate(-20deg)}.nfc-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:245px;height:365px;background:linear-gradient(135deg,#263020,#0b100b 60%);border:1px solid #daef8b44;border-radius:25px;color:#fff;box-shadow:0 25px 70px #0005;transform:rotate(-12deg);animation:float-card 8s ease-in-out infinite}.nfc-card>img{width:72px;height:95px;object-fit:contain;margin-bottom:30px}.nfc-card>strong{color:#ffeb00;font-size:18px}.nfc-card>span{font-size:13px;margin:10px 0}.nfc-card>i{font-style:normal;color:#ffeb00;font-size:25px;letter-spacing:-4px;margin:20px 0}.nfc-card small{font-size:6px;letter-spacing:.12em;color:#d3dcc4}.card-tag{position:absolute;right:0;bottom:8%;font-size:10px;letter-spacing:.1em;padding:13px 19px;border:1px solid var(--line);border-radius:40px;background:var(--surface)}.card-copy .eyebrow{margin-bottom:23px}.card-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--secondary);margin:25px 0 0}.card-copy .button{margin-top:28px}.outline{border:1px solid var(--line);color:var(--text)}.outline span{color:var(--yellow);background:#ffffff05}.about-section{background:var(--surface);border-radius:45px}.about{display:grid;grid-template-columns:.85fr 1fr;gap:15%;align-items:center}.about-portrait{position:relative}.about-portrait img{border-radius:48% 48% 35% 35%;width:100%;height:450px;object-fit:cover;filter:grayscale(.5);object-position:center 25%}.about-portrait>span{position:absolute;bottom:20px;left:0;font-size:9px;padding:14px 20px;border-radius:20px;border:1px solid #ffffff25;background:#10170ee8;color:#fff;letter-spacing:.09em}.about-lead{font-size:24px;line-height:1.5;margin:25px 0 20px;letter-spacing:-.03em}.about p:not(.eyebrow):not(.about-lead){font-size:15px;color:var(--secondary);line-height:1.85}.about .text-link{margin-top:18px}.method>.eyebrow{margin-bottom:35px}.method-line{display:flex;align-items:center;gap:15%}.method-line h2{font-size:clamp(35px,4.3vw,59px)}.method-line>div{max-width:310px;font-size:15px;line-height:1.85;color:var(--secondary)}.method-line>div p{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:22px}.contact{position:relative;overflow:hidden;background:#ffeb00;color:#17200f;border-radius:40px;padding:65px 6%;margin-bottom:60px}.contact>.eyebrow{color:#28341b}.contact-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 40px}.contact-heading h2{font-size:clamp(45px,5.5vw,77px)}.contact-heading em{color:#17200f}.contact-heading>span{font-size:140px;line-height:1;font-weight:400}.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-bottom>p{font-size:14px;line-height:1.8;margin:0}.dark-button{background:#17200f;color:#fff}.dark-button span{background:#ffffff0a}.contact-social{margin-top:35px;padding-top:25px;border-top:1px solid #17200f30;display:flex;flex-wrap:wrap;gap:25px;align-items:center;font-size:13px}.contact-social>span{margin-right:auto}.contact-social a{font-weight:700}.contact-social small{font-size:11px;font-weight:500;margin:0 6px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:10px 0 35px}.footer-brand{font-size:28px;letter-spacing:-1px;font-weight:800}.footer-top p{font-size:12px;line-height:1.8;color:var(--secondary);margin:0}.footer-top>a:last-child{font-size:12px}.footer-bottom{border-top:1px solid var(--line);padding:25px 0 35px;display:flex;justify-content:space-between;font-size:10px;color:var(--secondary)}
[data-theme="light"]{color-scheme:light;--bg:#fafaf5;--surface:#eff2e8;--text:#17200f;--secondary:#3b4931;--line:#293d232b;--paper:#e9edde}[data-theme="light"] .logo img{content:url('assets/logo-light.svg')}[data-theme="light"] em{color:#17200f;text-decoration:underline;text-decoration-color:#ffeb00;text-decoration-thickness:.12em;text-underline-offset:.08em}[data-theme="light"] .header nav a:hover,[data-theme="light"] .header-contact span,[data-theme="light"] .visual-label i,[data-theme="light"] .service-number i,[data-theme="light"] .service li:before,[data-theme="light"] .service>a span,[data-theme="light"] .outline span,[data-theme="light"] .hero-bottom a span{color:#45541b}[data-theme="light"] .trajectory{stroke:#8f9b25}[data-theme="light"] .contact em{text-decoration:none}
@keyframes draw-line{from{stroke-dashoffset:1300}to{stroke-dashoffset:0}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes float-card{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-12px) rotate(-8deg)}}
@media(max-width:1000px){.header nav{gap:18px;font-size:12px}.header-actions{gap:12px}.header{gap:25px}.hero{min-height:650px}.hero-visual{min-height:470px}.visual-label{font-size:9px}.service-grid{gap:25px}.service h3{font-size:26px}.work-grid{gap:30px}.work-tall img{height:600px}.work-image img{height:300px}.work-tall .work-image img{height:600px}.card-section{gap:7%}.about{gap:10%}.about-portrait img{height:400px}.contact-bottom{align-items:flex-start;flex-direction:column}.header nav{display:none}.header-actions{margin-left:auto}}
@media(max-width:650px){.wrap{width:88%}.section{padding-block:70px}.header{height:85px;width:88%;gap:10px}.logo img{width:31px;height:42px}.logo>span{font-size:19px}.logo b{font-size:10px}.header-contact{font-size:10px;padding:11px 13px}.header-contact span{margin-left:8px}#theme{width:35px;height:35px;font-size:20px}.header-actions{gap:12px}.hero{grid-template-columns:1fr;padding:35px 0 90px;min-height:auto;overflow:hidden}.hero .eyebrow{font-size:8px;letter-spacing:.07em;margin-bottom:25px}h1{font-size:clamp(49px,11.5vw,74px);letter-spacing:-.06em;margin-bottom:25px}.hero-description{font-size:15px}.button{font-size:12px;padding:13px 18px;gap:20px}.hero-visual{min-height:340px;height:340px;margin:15px 0 10px}.visual-word{font-size:150px;left:20%;top:27%}.trajectory{inset:-15% 0;width:100%;height:125%}.visual-orbit{inset:3% 0}.visual-label-one{top:7%;left:2%}.visual-label-two{bottom:7%;right:0}.visual-label{font-size:9px;padding:9px 12px}.visual-label i{font-size:15px}.visual-foot{font-size:6px;bottom:-12px;left:2%;letter-spacing:.05em}.hero-bottom{font-size:9px;align-items:flex-start;padding-top:18px;bottom:0;flex-direction:column;gap:12px}.hero-bottom a{font-size:10px}.section-heading{display:block;margin-bottom:35px}h2{font-size:38px}.section-heading>p{font-size:15px;margin-top:25px}.section-heading .eyebrow{font-size:9px}.service-grid{grid-template-columns:1fr;gap:35px}.service{padding-top:20px}.service h3{font-size:31px;margin:18px 0}.service h3 br{display:none}.service>p{font-size:15px;max-width:350px}.service ul{font-size:13px;margin:0 0 20px}.service>a{font-size:13px}.service-number{font-size:11px}.service-number i{font-size:25px}.work-section{border-radius:28px}.work-section .text-link{margin-top:28px;font-size:12px}.work-grid{display:block}.work-tall{padding-top:0}.work-image img,.work-tall .work-image img{height:400px}.work-tall .work-image{border-radius:100px 100px 23px 23px}.work{display:block;margin-bottom:30px}.work-right{gap:0}.work-wide .work-image img{height:230px}.work-caption h3{font-size:21px}.work-caption>span{font-size:8px}.fine-print{font-size:11px;margin-top:5px}.card-section{grid-template-columns:1fr;gap:35px}.card-display{min-height:350px}.nfc-card{width:200px;height:300px}.nfc-card>img{width:58px;height:75px;margin-bottom:23px}.nfc-card>strong{font-size:16px}.nfc-card>span{font-size:12px}.nfc-card>i{margin:17px 0}.nfc-card small{font-size:5px}.card-tag{right:0;font-size:9px;bottom:5%}.card-copy h2 br:nth-child(2){display:none}.card-copy>p:not(.eyebrow){font-size:15px}.about-section{border-radius:28px}.about{grid-template-columns:1fr;gap:38px}.about-portrait{width:80%;max-width:310px;margin:auto}.about-portrait img{height:350px}.about-portrait>span{font-size:8px;padding:12px 15px}.about-lead{font-size:23px}.about .text-link{font-size:13px}.method>.eyebrow{font-size:9px}.method-line{display:block}.method-line h2{font-size:37px}.method-line>div{max-width:none;margin-top:30px;font-size:15px}.contact{border-radius:28px;padding:40px 7%;margin-bottom:40px}.contact>.eyebrow{font-size:8px}.contact-heading{margin:25px 0 30px;gap:10px}.contact-heading h2{font-size:42px}.contact-heading>span{font-size:65px}.contact-bottom{gap:25px}.contact-bottom>p{font-size:13px}.contact .button{font-size:11px;gap:15px;width:100%;padding:13px 15px}.contact-social{gap:18px;font-size:12px;margin-top:30px}.contact-social>span{width:100%;font-size:12px}.contact-social small{font-size:10px;margin:0 4px}.footer-top{flex-wrap:wrap;gap:25px}.footer-top p{font-size:11px}.footer-top>a:last-child{font-size:12px}.footer-brand{font-size:24px}.footer-bottom{font-size:10px}.eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

[hidden]{display:none!important}.hero{grid-template-columns:1fr 1fr;gap:4%;min-height:690px;padding-top:35px}.hero h1{font-size:clamp(48px,5.7vw,82px);line-height:1.09}.hero .eyebrow{font-size:9px}.hero-description{max-width:320px}.direction-switch{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:26px}.direction-switch button{border:1px solid var(--line);border-radius:40px;padding:13px 19px;font-size:14px;background:transparent;color:var(--text);transition:background .3s,color .3s,transform .3s}.direction-switch button[aria-pressed="true"]{background:var(--yellow);border-color:var(--yellow);color:#17200f;transform:translateX(10px)}.hero-next{display:inline-block;font-size:12px;color:var(--secondary);margin-top:27px;padding:10px 0}.interactive-stage{position:relative;min-width:0;height:510px;isolation:isolate}.stage-orbit{position:absolute;inset:10% -5%;border:1px solid var(--line);border-radius:50%;transform:rotate(-25deg);background:radial-gradient(ellipse,#ffeb000a,transparent 65%);pointer-events:none}.stage-art{position:absolute;inset:0;display:grid;place-items:center;animation:stage-open .7s cubic-bezier(.2,.7,.2,1) both}.stage-art>img{display:block;position:absolute;inset:5% 9% 10%;width:82%;height:85%;object-fit:contain;filter:drop-shadow(0 25px 35px #0004);border-radius:100px 100px 25px 25px;transform:rotate(-5deg)}[data-art="alcance"]>img{transform:rotate(5deg)}.stage-label{position:absolute;bottom:9%;right:0;font-size:8px;letter-spacing:.06em;padding:13px 17px;background:var(--surface);border:1px solid var(--line);border-radius:40px;box-shadow:0 10px 35px #0002}.stage-caption{position:absolute;bottom:-10px;left:0;right:0;text-align:center;font-size:10px;line-height:1.7;color:var(--secondary)}.stage-card{width:235px;height:355px;border-radius:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:linear-gradient(135deg,#293222,#0e140d);border:1px solid #e5ef9955;box-shadow:0 30px 70px #0005;transform:rotate(-10deg);color:#fff;animation:float-card 8s ease-in-out infinite}.stage-card>img{width:65px;height:85px;object-fit:contain;margin-bottom:10px}.stage-card>strong{font-size:23px;color:#ffeb00;font-weight:500}.stage-card>span{font-size:13px}.stage-card>i{font-style:normal;letter-spacing:-4px;font-size:25px;color:#ffeb00}.stage-card>b{font-size:11px;font-weight:500;border-bottom:1px solid #ffffff44;padding-bottom:7px}.service-switch{display:flex;gap:9px;flex-wrap:wrap}.service-switch button{font-size:14px;padding:12px 19px;border:1px solid var(--line);border-radius:30px;background:var(--surface);color:var(--text)}.service-switch button[aria-pressed="true"]{background:#ffeb00;color:#17200f}.service-grid{display:block}.service{display:grid;grid-template-columns:1fr 1fr;gap:0 9%;padding-top:30px;animation:stage-open .5s ease both}.service-number{grid-column:1/-1}.service h3{font-size:clamp(35px,4vw,52px);grid-column:1;grid-row:2/4;margin:20px 0}.service>p{grid-column:2;font-size:16px;margin:20px 0}.service ul{grid-column:2;font-size:14px}.service>a{grid-column:2;font-size:14px}.solutions{padding-top:85px;padding-bottom:85px}.card-display{cursor:pointer}.card-display:hover .nfc-card{box-shadow:0 20px 70px #ffeb0018}.card-copy>.button{display:none}.work-viewer{width:min(950px,94vw);max-width:94vw;max-height:92svh;border:1px solid var(--line);border-radius:25px;padding:25px;background:var(--surface);color:var(--text)}.work-viewer::backdrop{background:#050805dd;backdrop-filter:blur(15px)}.work-viewer>button{display:block;margin:0 0 15px auto;border:1px solid var(--line);background:none;color:var(--text);border-radius:50%;width:40px;height:40px;font-size:17px}.work-viewer>img{width:100%;height:65svh;object-fit:contain}.work-viewer>p{font-size:12px;line-height:1.8;color:var(--secondary);margin:18px 0 12px}.work-viewer>a{font-size:13px;display:inline-block;padding:10px 0}.work-viewer-open{overflow:hidden}.about{padding-top:80px;padding-bottom:80px}.card-section{padding-top:85px;padding-bottom:85px}.contact{margin-top:65px}
@keyframes stage-open{from{opacity:0;transform:translateY(15px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@media(max-width:650px){.hero{grid-template-columns:1fr;gap:0;padding-top:25px;min-height:auto}.hero h1{font-size:clamp(43px,10.5vw,66px);margin-bottom:20px}.hero-description{font-size:15px;margin-bottom:18px;max-width:none}.hero .eyebrow{font-size:8px}.direction-switch{flex-direction:row;flex-wrap:wrap;gap:8px;margin-top:20px}.direction-switch button{font-size:11px;padding:11px 13px}.direction-switch button[aria-pressed="true"]{transform:none}.hero-next{font-size:11px;margin-top:14px}.interactive-stage{height:390px;margin:15px 0 15px}.stage-art>img{inset:0 13% 10%;width:74%;height:90%}.stage-label{bottom:6%;right:0;font-size:7px;padding:11px 13px}.stage-caption{font-size:9px;bottom:-12px}.stage-card{width:200px;height:310px;gap:12px}.stage-card>img{width:55px;height:70px}.stage-card>strong{font-size:21px}.stage-card>span{font-size:12px}.stage-card>b{font-size:10px}.service-switch{margin-top:25px}.service-switch button{font-size:13px;padding:10px 17px}.service{grid-template-columns:1fr;gap:0}.service-number,.service h3,.service>p,.service ul,.service>a{grid-column:1;grid-row:auto}.service h3{font-size:35px;margin:20px 0 10px}.service>p{margin:10px 0 20px;font-size:15px}.service ul,.service>a{font-size:13px}.solutions{padding-block:60px}.card-section{padding-block:65px}.contact{margin-top:50px}.work-viewer{padding:15px}.work-viewer>img{height:60svh}.work-viewer>p{font-size:11px}}
/* Ambient movement, tactile depth and progressive entrances. */
.interactive-stage{transform:translate3d(var(--drift-x,0px),var(--drift-y,0px),0);transition:transform .8s ease-out}
.interactive-stage:before{content:'';position:absolute;inset:5% -5%;border-radius:50%;background:radial-gradient(ellipse,#ffeb0016,transparent 65%);filter:blur(15px);pointer-events:none;animation:ambient-breath 9s ease-in-out infinite}
.stage-orbit{animation:orbit-drift 16s ease-in-out infinite}
.stage-art>img{animation:art-float 8s ease-in-out infinite}
[data-art="alcance"]>img{animation-name:art-float-reverse;animation-delay:-2s}
.stage-label{animation:label-drift 7s -1s ease-in-out infinite}
.hero-text>.eyebrow{animation:home-arrive .8s .05s both}
.hero-text>h1{animation:home-arrive 1s .12s both}
.hero-description{animation:home-arrive 1s .23s both}
.direction-switch{animation:home-arrive 1s .35s both}
.hero-next{animation:home-arrive 1s .45s both}
.hero h1 em{display:inline-block;position:relative}
.hero h1 em:after{content:'';position:absolute;height:1px;left:0;right:0;bottom:-7px;background:linear-gradient(90deg,transparent,#ffeb0070,transparent);transform-origin:left;animation:accent-arrive 1.4s .5s both;pointer-events:none}
.status-dot{animation:signal-breath 3.5s ease-in-out infinite}
.arrived{animation:home-arrive .9s cubic-bezier(.2,.7,.2,1) both}
.work:nth-child(2){animation-delay:.12s}.about-portrait.arrived{animation-duration:1.1s}
.card-halo{animation:halo-breath 9s ease-in-out infinite}
.card-tag{animation:label-drift 8s -2s ease-in-out infinite}
.work-image>span{transition:transform .3s,background .3s}.work:hover .work-image>span{transform:translateY(-4px);background:#1b2510}
.motion-control{position:fixed;right:18px;bottom:18px;z-index:20;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--text);box-shadow:0 5px 25px #0002;font-size:16px}
.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}
.motion-paused .interactive-stage{transform:none;transition:none}
@keyframes home-arrive{from{opacity:0;transform:translateY(23px)}to{opacity:1;transform:translateY(0)}}
@keyframes art-float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-12px) rotate(-2deg)}}
@keyframes art-float-reverse{0%,100%{transform:translateY(0) rotate(5deg)}50%{transform:translateY(-12px) rotate(2deg)}}
@keyframes label-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes orbit-drift{0%,100%{transform:rotate(-25deg) scale(1)}50%{transform:rotate(-12deg) scale(1.04)}}
@keyframes ambient-breath{0%,100%{opacity:.5;transform:scale(.95)}50%{opacity:1;transform:scale(1.07)}}
@keyframes signal-breath{0%,100%{box-shadow:0 0 8px #ffeb0030}50%{box-shadow:0 0 20px #ffeb0090}}
@keyframes halo-breath{0%,100%{transform:rotateX(55deg) rotate(-20deg) scale(1);opacity:.5}50%{transform:rotateX(50deg) rotate(-10deg) scale(1.08);opacity:1}}
@keyframes accent-arrive{from{opacity:0;transform:scaleX(.1)}to{opacity:1;transform:scaleX(1)}}
@media(max-width:650px){.motion-control{right:12px;bottom:12px;width:36px;height:36px}.interactive-stage{transform:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.interactive-stage{transform:none!important}.motion-control{display:none}}

/* Grid items must be allowed to shrink independently of their text. */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.hero-text,.interactive-stage,.card-copy,.card-display,.about>div,.work-right,.section-heading>*,.contact-heading>*{min-width:0}
.card-section,.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.about{grid-template-columns:minmax(0,.85fr) minmax(0,1fr)}
/* Clip the decorative orbit at its own stage, not the whole document. */
.interactive-stage{overflow:clip;overflow-clip-margin:12px}
.stage-caption{bottom:0}
.card-display{overflow:clip;overflow-clip-margin:10px}
.card-halo{inset:12%;max-width:76%;max-height:76%}
.button{max-width:100%}.button>span{flex-shrink:0}
.header-actions{min-width:0}.logo,#theme{flex-shrink:0}
.footer-top>*{min-width:0}.contact-social a{overflow-wrap:anywhere}
@media(max-width:650px){
  .hero,.card-section,.about{grid-template-columns:minmax(0,1fr)}
  .work-grid{display:block}
  .card-copy h2{font-size:clamp(30px,8.7vw,38px)}
  .card-copy h2 br:nth-child(2){display:initial}
  .card-tag{max-width:100%;white-space:normal;line-height:1.5}
  .contact-heading h2{font-size:clamp(32px,9vw,42px)}
  .contact-heading>span{font-size:clamp(40px,12vw,65px);flex-shrink:0}
  .hero .eyebrow{flex-wrap:wrap}
  .stage-label{max-width:100%;white-space:normal;line-height:1.5}
}
@media(max-width:380px){
  .hero h1{font-size:clamp(33px,10.5vw,40px)}
  .header-actions{gap:8px}.header-contact{padding:10px;font-size:10px}.header-contact span{display:none}
  .contact .button{font-size:10px;gap:10px}
}

.hero.showcase-hero{display:block;min-height:0;padding:35px 0 55px;overflow:visible}.showcase-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:35px}.showcase-topline .eyebrow{margin:0;font-size:10px}.showcase-topline>span{font-size:9px;color:var(--secondary);letter-spacing:.1em}.showcase-hero h1{font-size:clamp(65px,10.5vw,150px);font-weight:500;line-height:.98;letter-spacing:-.075em;margin:0 0 35px;animation:home-arrive 1.2s .15s both}.showcase-hero h1 em{color:var(--yellow)}.showcase-hero h1 em:after{display:none}.showcase-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:20px}.showcase-intro p{font-size:15px;color:var(--secondary);line-height:1.8;margin:0}.showcase-intro>a{font-size:13px;padding:15px 0;border-bottom:1px solid var(--line)}.showcase-intro>a span{padding-left:30px;color:var(--yellow)}.screen-composition{position:relative;isolation:isolate;height:570px;min-width:0;overflow:clip;overflow-clip-margin:8px;transform:translate3d(var(--drift-x,0px),var(--drift-y,0px),0);transition:transform 1s ease-out}.screen-glow{position:absolute;inset:0;background:radial-gradient(ellipse at center,#ffeb000c,transparent 65%);pointer-events:none}.screen{display:block;position:absolute;margin:0!important;padding:0!important}.screen .work-image{height:100%;width:100%;border:1px solid var(--line);border-radius:18px;background:#10150f;box-shadow:0 25px 55px #0004}.screen .work-image img{width:100%;height:100%!important;position:absolute;inset:0;object-fit:contain;border-radius:0;transform:none!important}.screen .work-image>span{font-size:10px}.screen small{display:block;position:absolute;bottom:-25px;left:0;font-size:8px;letter-spacing:.1em;color:var(--secondary)}.screen-portrait{width:24%;height:390px;left:2%;top:70px;transform:rotate(-7deg);z-index:3;animation:screen-portrait-drift 10s ease-in-out infinite}.screen-landscape{width:57%;height:300px;left:25%;top:60px;transform:rotate(3deg);z-index:1;animation:screen-wide-drift 12s ease-in-out infinite}.screen-square{width:27%;height:290px;right:1%;bottom:45px;transform:rotate(-5deg);z-index:2;animation:screen-square-drift 11s -3s ease-in-out infinite}.screen-side-note{position:absolute;left:31%;bottom:80px;font-size:10px;letter-spacing:.13em;color:var(--secondary)}.preview-disclosure{font-size:11px;line-height:1.8;color:var(--secondary);margin:10px 0 0}.format-ribbon{padding:28px 5%;display:flex;justify-content:space-around;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:clamp(12px,1.6vw,22px);letter-spacing:-.03em}.format-ribbon i{font-style:normal;color:var(--yellow);font-size:23px}.editorial-heading{margin-bottom:65px}.editorial-heading h2{font-size:clamp(40px,6vw,85px)}.editorial-case{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:9%;align-items:center;margin-bottom:100px}.editorial-case .case-visual{margin:0;padding:0}.editorial-case .work-image{border-radius:25px;height:580px;max-width:100%}.editorial-case .work-image img{width:100%;height:100%;object-fit:contain}.case-copy>span{font-size:10px;letter-spacing:.1em;color:var(--secondary)}.case-copy h3{font-size:clamp(30px,3.6vw,48px);line-height:1.15;letter-spacing:-.05em;margin:24px 0}.case-copy>p{font-size:15px;line-height:1.9;color:var(--secondary)}.case-tags{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.case-tags span{border:1px solid var(--line);border-radius:30px;padding:9px 12px;font-size:11px}.case-copy>small{font-size:11px;line-height:1.8;display:block;color:var(--secondary)}.editorial-case.reverse{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.reverse .case-visual{grid-column:2;grid-row:1}.reverse .case-copy{grid-column:1;grid-row:1}.reverse .work-image{height:390px}.portfolio-invite{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px;font-size:14px}.portfolio-invite>span{color:var(--secondary)}.editorial-work .fine-print{color:var(--secondary);margin-bottom:0}.capabilities{background:var(--paper);color:var(--ink);border-radius:40px}.capability-heading{margin-bottom:45px}.capabilities .eyebrow{color:#4b553e}.capability-heading h2 em{color:var(--ink)}.capability-heading>p:last-child{font-size:14px;color:#4b553e;margin:22px 0 0}.capability-list details{border-top:1px solid #17200f35}.capability-list details:last-child{border-bottom:1px solid #17200f35}.capability-list summary{list-style:none;display:flex;gap:30px;align-items:center;cursor:pointer;font-size:clamp(20px,2.9vw,36px);letter-spacing:-.03em;padding:27px 0}.capability-list summary::-webkit-details-marker{display:none}.capability-list summary>span{font-size:11px;letter-spacing:0;color:#4b553e;flex-shrink:0}.capability-list summary>b{font-weight:400;margin-left:auto;font-size:25px;transition:transform .3s}.capability-list details[open] summary>b{transform:rotate(45deg)}.capability-list details>div{padding:0 50px 30px;max-width:800px;animation:home-arrive .4s ease both}.capability-list p{font-size:15px;line-height:1.85;color:#35422b}.capability-list a{font-size:14px;display:inline-block;padding:10px 0;border-bottom:1px solid #17200f40}.signature{display:grid;grid-template-columns:minmax(0,.45fr) minmax(0,1fr);gap:10%;align-items:center}.signature>img{width:100%;height:330px;object-fit:cover;border-radius:100px 100px 20px 20px;filter:grayscale(.6);object-position:50% 25%}.signature h2{font-size:clamp(33px,4vw,53px)}.signature>div>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--secondary);max-width:520px;margin:25px 0}.signature a{font-size:13px;display:inline-block;padding:10px 0;border-bottom:1px solid var(--line)}.contact{margin-top:10px}.home-intro-active .showcase-hero h1,.home-intro-active .screen-composition{opacity:0}.home-intro-active .showcase-hero *{animation:none!important}[data-theme="light"] .showcase-hero h1 em{color:var(--text)}[data-theme="light"] .format-ribbon i,[data-theme="light"] .showcase-intro>a span{color:#4a571a}
@keyframes screen-portrait-drift{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-12px) rotate(-4deg)}}@keyframes screen-wide-drift{0%,100%{transform:translateY(0) rotate(3deg)}50%{transform:translateY(10px) rotate(1deg)}}@keyframes screen-square-drift{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-10px) rotate(-2deg)}}
@media(max-width:650px){.hero.showcase-hero{padding-top:25px;padding-bottom:35px}.showcase-topline{margin-bottom:30px}.showcase-topline>span{display:none}.showcase-topline .eyebrow{font-size:8px}.showcase-hero h1{font-size:clamp(44px,12.5vw,77px);line-height:1.04;margin-bottom:25px}.showcase-intro{display:block;margin-bottom:0}.showcase-intro p{font-size:14px}.showcase-intro>a{display:inline-block;font-size:12px;margin-top:10px}.screen-composition{height:400px;margin-top:15px;transform:none}.screen-portrait{width:35%;height:235px;top:45px;left:3%}.screen-landscape{width:61%;height:185px;top:55px;left:35%}.screen-square{width:39%;height:210px;bottom:40px;right:6%}.screen .work-image{border-radius:12px}.screen .work-image>span{display:none}.screen small{font-size:6px;letter-spacing:.04em;bottom:-18px}.screen-side-note{left:3%;bottom:50px;font-size:7px;max-width:35%;line-height:1.8}.preview-disclosure{font-size:10px}.format-ribbon{font-size:10px;gap:12px;justify-content:center;padding:22px 6%}.format-ribbon i{font-size:15px}.format-ribbon i:last-of-type{display:none}.editorial-heading{margin-bottom:35px}.editorial-heading h2{font-size:42px}.editorial-case,.editorial-case.reverse{grid-template-columns:minmax(0,1fr);gap:28px;margin-bottom:60px}.editorial-case.reverse .case-visual,.editorial-case.reverse .case-copy{grid-column:1;grid-row:auto}.editorial-case .work-image{height:430px;border-radius:20px}.editorial-case.reverse .work-image{height:250px}.case-copy h3{font-size:32px;margin:18px 0}.case-copy>p{font-size:15px}.case-copy>span{font-size:9px}.portfolio-invite{align-items:flex-start;flex-direction:column;gap:15px;font-size:13px}.capabilities{border-radius:28px}.capability-heading h2{font-size:38px}.capability-list summary{font-size:20px;gap:15px;padding:23px 0;line-height:1.4}.capability-list summary>span{font-size:10px}.capability-list summary>b{font-size:23px;flex-shrink:0}.capability-list details>div{padding:0 0 25px 28px}.capability-list p{font-size:14px}.capability-list a{font-size:13px;line-height:1.7}.signature{grid-template-columns:minmax(0,1fr);gap:30px}.signature>img{width:150px;height:185px;border-radius:75px 75px 15px 15px}.signature h2{font-size:35px}.signature>div>p:not(.eyebrow){font-size:15px}.contact{margin-top:0}}
@media(prefers-reduced-motion:reduce){.screen,.capability-list details>div,.showcase-hero h1{animation:none!important}.screen-composition{transform:none!important}.home-intro-active .showcase-hero h1,.home-intro-active .screen-composition{opacity:1}}

.reading-line{position:fixed;top:0;left:0;right:0;height:2px;background:#ffeb00;transform:scaleX(0);transform-origin:left;z-index:40;pointer-events:none}
.format-ribbon{display:block;overflow:hidden;padding:23px 0}.format-run{display:flex;align-items:center;width:max-content;animation:format-flow 32s linear infinite}.format-track{display:flex;align-items:center;gap:45px;flex-shrink:0;padding-right:45px;white-space:nowrap}.format-track>span{font-size:clamp(13px,1.7vw,24px);letter-spacing:-.025em}.format-track i{font-style:normal;color:#ffeb00;font-size:22px;flex-shrink:0}.format-ribbon:hover .format-run{animation-play-state:paused}
.editorial-heading{position:relative;padding-bottom:18px}.editorial-heading:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,var(--line),transparent)}
.flow-case{--flow:.5;--lift:0px;--reveal:0%;position:relative}.flow-case .case-visual{position:relative;isolation:isolate;overflow:clip;overflow-clip-margin:8px}.flow-case .work-image{clip-path:inset(var(--reveal) 0 var(--reveal) 0 round 24px);transition:clip-path .2s linear}.flow-case .case-copy{transform:translateY(var(--lift));transition:transform .2s linear}.flow-case .case-copy>span{display:flex;align-items:center;gap:10px}.flow-case .case-copy>span:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--yellow);box-shadow:0 0 14px #ffeb0030}.case-orbit-line{position:absolute;inset:12px;pointer-events:none;border:1px solid #ffffff2b;border-radius:18px;opacity:calc(.15 + var(--flow)*.6);z-index:3}.flow-case .case-tags span{transition:background .25s,border-color .25s}.flow-case .case-tags span:hover{border-color:var(--yellow);background:#ffeb0009}
.capabilities{position:relative;overflow:hidden;isolation:isolate}.capabilities>.section{position:relative;z-index:1}.capability-watermark{position:absolute;left:-.04em;top:20px;font-size:clamp(100px,23vw,340px);line-height:1;font-weight:800;letter-spacing:-.08em;color:#17200f06;pointer-events:none;white-space:nowrap;transform:translateX(calc((var(--flow,.5) - .5)*24px));transition:transform .2s linear}.capability-heading{position:relative}.capability-list details{position:relative;transition:background .4s}.capability-list summary{transition:padding-left .35s,color .35s}.capability-list summary:hover{padding-left:10px}.capability-list details[open]{background:#ffffff25}.capability-list details[open]:before{content:'';position:absolute;left:-16px;top:25px;bottom:25px;width:2px;background:#17200f;transform-origin:top;animation:front-connect .5s ease both}.capability-list details[open]>div{animation:front-unfold .55s cubic-bezier(.2,.7,.2,1) both}.capability-list details[open] summary>span{color:#17200f;font-weight:800}.capability-list summary b{width:30px;height:30px;display:grid;place-items:center;border:1px solid #17200f35;border-radius:50%;font-size:20px}
.signature{overflow:clip;overflow-clip-margin:15px;--lift:0px}.signature-orbit{position:relative;min-width:0;width:100%;isolation:isolate;padding:20px 0}.signature-orbit>img{position:relative;z-index:1;width:100%;height:330px;object-fit:cover;border-radius:100px 100px 20px 20px;filter:grayscale(.5);object-position:center 25%;transform:translateY(calc(var(--lift)*-.4));transition:transform .2s linear,filter .5s}.signature-orbit:hover>img{filter:grayscale(0)}.signature-ring{position:absolute;inset:8% -12%;border:1px solid var(--line);border-radius:50%;transform:rotate(-20deg);pointer-events:none;animation:signature-orbit 14s ease-in-out infinite}.signature-node{position:absolute;z-index:2;background:var(--surface);color:var(--text);border:1px solid var(--line);padding:9px 12px;border-radius:40px;font-size:9px;letter-spacing:.08em;box-shadow:0 5px 25px #0002;animation:repertoire-float 8s ease-in-out infinite}.signature-node-0{left:-10px;top:7%}.signature-node-1{right:-10px;top:46%;animation-delay:-3s}.signature-node-2{left:12%;bottom:4%;animation-delay:-5s}.signature>div:last-child{position:relative;transform:translateY(calc(var(--lift)*.4));transition:transform .2s linear}
.contact{--flow:.5;--lift:0px;isolation:isolate}.contact:before,.contact:after{content:'';position:absolute;right:-170px;top:-190px;width:550px;height:550px;pointer-events:none;border:1px solid #17200f18;border-radius:50%;z-index:-1}.contact:before{transform:translateY(var(--lift)) rotate(20deg)}.contact:after{transform:translateY(calc(var(--lift)*-1)) scale(.78)}.contact-heading>span{display:block;transform:translateY(calc(var(--lift)*-.5));transition:transform .2s linear}.contact-ideas{display:flex;gap:10px;flex-wrap:wrap;margin:-5px 0 30px}.contact-ideas button{padding:11px 17px;border:1px solid #17200f55;border-radius:40px;background:transparent;color:#17200f;font-size:13px;transition:background .25s,color .25s,transform .25s}.contact-ideas button:hover{transform:translateY(-3px)}.contact-ideas button[aria-pressed="true"]{background:#17200f;color:#fff}.contact-idea-status{font-size:12px;color:#17200f;line-height:1.8;min-height:0;margin:16px 0 0}.contact-idea-status:empty{display:none}.contact .button{position:relative;box-shadow:0 10px 25px #17200f12}.contact-social a{position:relative;padding-bottom:5px}.contact-social a:after{content:'';position:absolute;left:0;bottom:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.contact-social a:hover:after{transform:scaleX(1)}[data-theme="light"] .format-track i{color:#435419}[data-theme="light"] .flow-case .case-copy>span:before{background:#596923}
@keyframes format-flow{to{transform:translateX(-50%)}}@keyframes front-connect{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes front-unfold{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes signature-orbit{0%,100%{transform:rotate(-20deg)}50%{transform:rotate(0deg)}}@keyframes repertoire-float{0%,100%{translate:0 0}50%{translate:0 -6px}}
@media(max-width:650px){.format-ribbon{padding:20px 0}.format-track{gap:25px;padding-right:25px}.format-track>span{font-size:13px}.format-track i{font-size:18px}.flow-case .case-copy{transform:translateY(calc(var(--lift)*.35))}.flow-case .work-image{clip-path:inset(var(--reveal) 0 var(--reveal) 0 round 20px)}.case-orbit-line{inset:9px;border-radius:13px}.capability-watermark{font-size:27vw;top:45px}.capability-list details[open]:before{left:-10px;top:22px;bottom:22px}.capability-list summary:hover{padding-left:0}.signature-orbit{max-width:215px;padding:20px 0;margin:0 auto 5px}.signature-orbit>img{width:100%;height:260px;border-radius:110px 110px 20px 20px}.signature-node{font-size:8px;padding:9px 11px}.signature-node-0{left:-18px}.signature-node-1{right:-22px;top:43%}.signature-node-2{left:5%;bottom:2%}.signature-ring{inset:8% -10%}.signature>div:last-child{transform:none}.contact-ideas{gap:9px;margin:0 0 25px}.contact-ideas button{font-size:12px;padding:10px 13px}.contact-idea-status{font-size:11px}.contact:before,.contact:after{width:370px;height:370px;right:-190px;top:-120px}}
@media(prefers-reduced-motion:reduce){.format-run,.signature-ring,.signature-node,.capability-list details[open]>div,.capability-list details[open]:before{animation:none!important}.format-run{width:100%}.format-track{flex-wrap:wrap;justify-content:center;white-space:normal;padding:0 15px;gap:15px}.format-track[aria-hidden="true"]{display:none}.flow-case .work-image{clip-path:none!important}.flow-case .case-copy,.signature-orbit>img,.signature>div:last-child,.contact-heading>span{transform:none!important}.reading-line{display:none}}

/* Decorative SVGs must never define the layout viewport. */
.brand-home-stage.kinetic-stage{overflow:clip;overflow-clip-margin:0;max-width:100%;min-width:0}
.embedded-brand{overflow:hidden;max-width:100%}
.embedded-brand .intro-composition{overflow:hidden;max-width:100%}
.embedded-brand .intro-connections{max-width:100%;transform-origin:center}
.signature-orbit,.signature>div,.case-copy,.case-visual,.capability-list,.capability-list details{min-width:0}
/* Give the embedded sequence its own timing; the intro refinements used
   separate animated lines, while this version has a single heading. */
.embedded-brand .intro-statement{opacity:0;background:transparent;box-shadow:none;animation:home-brand-copy .7s 3.15s cubic-bezier(.2,.7,.2,1) both}
.embedded-brand .intro-statement .intro-overline,.embedded-brand .intro-statement .intro-subline{animation:none;opacity:1;background:transparent}
.embedded-brand .intro-pillars{animation:intro-pillars-away .5s 2.25s both}
.embedded-brand .intro-connections{animation:intro-rails-away .45s 2.7s forwards}
.embedded-brand .intro-brand{animation:intro-brand-arrive .85s 2.45s cubic-bezier(.16,.8,.25,1) both}
.embedded-brand .intro-brand-name{animation:none}
.embedded-brand.brand-static .intro-statement{animation:none!important;opacity:1;transform:none}
@keyframes home-brand-copy{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:650px){
 .embedded-brand .intro-connections{transform:rotate(10deg) scale(.9)}
 .embedded-brand .intro-atmosphere{width:100%;height:100%}
 .embedded-brand .intro-statement{left:6%;right:6%}
 .embedded-brand .intro-statement h2{font-size:clamp(22px,6vw,32px);line-height:1.3;overflow-wrap:normal}
 .embedded-brand .pillar-strategy{left:8%}.embedded-brand .pillar-tech{right:7%}
 .capability-list summary{min-width:0;overflow-wrap:anywhere}
 .capability-list summary>b,.capability-list summary>span{flex-shrink:0}
 .portfolio-invite a,.signature a{max-width:100%;line-height:1.8}
}
@media(prefers-reduced-motion:reduce){.embedded-brand .intro-statement{animation:none!important;opacity:1;transform:none}}

.hero.landing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:0 4%;align-items:center;padding:30px 0 45px}.landing-hero>.showcase-topline{grid-column:1/-1;margin-bottom:25px}.landing-hero h1{position:static;font-size:clamp(46px,5.2vw,76px);font-weight:500;line-height:1.07;letter-spacing:-.065em;margin:0 0 25px;animation:none}.landing-hero h1 em{color:#ffeb00}.landing-pitch{min-width:0;position:relative;z-index:2}.landing-pitch>p{font-size:16px;line-height:1.85;color:var(--secondary);max-width:470px;margin-bottom:25px}.landing-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.landing-actions .button{font-size:12px;padding:14px 18px;gap:16px}.landing-secondary{font-size:12px;line-height:1.8}.landing-scope{display:block;color:var(--secondary);font-size:11px;line-height:1.8;margin-top:25px}.landing-hero .brand-home-stage{height:550px}.landing-hero .embedded-brand .intro-statement h2{font-size:clamp(23px,2.3vw,34px)}.landing-hero .embedded-brand .intro-mark{width:70px;height:92px}.landing-hero .embedded-brand .intro-brand-name{font-size:27px}.landing-hero .embedded-brand .intro-pillars .pillar{font-size:clamp(20px,2.5vw,34px)}.landing-hero .embedded-brand .intro-subline{font-size:10px}.landing-hero .embedded-brand .intro-statement{left:3%;right:3%;top:58%}.landing-hero .embedded-brand .intro-brand{top:30%}.landing-hero .embedded-brand .intro-brand-halo{display:none}.landing-hero .kinetic-bottom{grid-column:1/-1;padding-top:25px;border-top:1px solid var(--line)}.home-intro-active .landing-pitch{opacity:0}.portfolio-heading{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:end;gap:9%;margin-bottom:38px}.portfolio-heading h2{font-size:clamp(36px,4.4vw,62px)}.portfolio-heading>p{font-size:14px;line-height:1.85;color:var(--secondary);margin:0}.home-filters{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0 16px}.home-filters button{border:1px solid var(--line);border-radius:30px;background:var(--surface);color:var(--text);padding:11px 18px;font-size:13px}.home-filters button[aria-pressed="true"]{background:#ffeb00;color:#17200f;border-color:#ffeb00}.home-portfolio-status{font-size:12px;color:var(--secondary);margin-bottom:27px}.home-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px}.home-project{min-width:0}.project-open{display:block;position:relative;width:100%;aspect-ratio:4/5;border:1px solid var(--line);border-radius:22px;overflow:hidden;padding:0;background:var(--surface);color:var(--text);cursor:zoom-in}.project-open>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:transform .6s}.project-open:hover>img{transform:scale(1.025)}.project-kind,.project-action{position:absolute;border:1px solid #ffffff25;border-radius:30px;background:#0e150df2;color:#f6f7ee;font-size:10px;padding:9px 12px;z-index:1}.project-kind{top:13px;left:13px;font-size:9px}.project-action{left:13px;right:13px;bottom:13px;font-size:11px}.project-caption{padding:17px 3px 0}.project-caption>span{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--secondary)}.project-caption h3{font-size:20px;line-height:1.35;letter-spacing:-.035em;margin:8px 0 0}.portfolio-more{display:flex;align-items:center;gap:35px;margin:35px auto 0;padding:15px 25px;border:1px solid var(--line);border-radius:40px;color:var(--text);background:var(--surface);font-size:14px}.portfolio-disclosure{max-width:850px;margin:32px 0 18px;font-size:11px;line-height:1.9;color:var(--secondary)}.portfolio-contact{display:inline-block;padding:10px 0;font-size:13px;border-bottom:1px solid var(--line)}.portfolio-is-open{overflow:hidden}.portfolio-dialog{width:min(1150px,96vw);max-width:96vw;max-height:94svh;padding:23px;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--text);overflow:auto}.portfolio-dialog::backdrop{background:#040704e8;backdrop-filter:blur(12px)}.portfolio-dialog-top{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:15px}.portfolio-dialog-top h2{font-size:24px;line-height:1.3;letter-spacing:-.03em;margin:8px 0 0}.portfolio-dialog-top>div>span{font-size:11px;color:var(--secondary)}.portfolio-dialog button,.portfolio-dialog-bottom a{border:1px solid var(--line);border-radius:30px;padding:10px 14px;background:var(--surface);color:var(--text);font-size:12px}.portfolio-close{min-width:40px;min-height:40px;flex-shrink:0}.portfolio-canvas{position:relative;overflow:hidden;height:60svh;min-height:220px;border-radius:10px;background:var(--surface);--split:50%;transition:opacity .25s}.portfolio-canvas img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:var(--surface)}.portfolio-before{z-index:0}.portfolio-after{z-index:1}.has-comparison .portfolio-after{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.portfolio-loading{opacity:.15}.portfolio-divider,.portfolio-corner,.portfolio-drag-hint{display:none;pointer-events:none}.has-comparison .portfolio-divider{display:block;position:absolute;left:var(--split);top:0;bottom:0;border-left:2px solid #ffeb00;z-index:2}.portfolio-divider b{position:absolute;top:50%;left:0;translate:-50% -50%;width:43px;height:43px;display:grid;place-items:center;border:2px solid #fff;border-radius:50%;background:#ffeb00;color:#17200f;font-size:22px}.has-comparison .portfolio-corner,.has-comparison .portfolio-drag-hint{display:block;position:absolute;z-index:3;padding:7px 10px;border:1px solid #ffffff40;border-radius:30px;background:#0e150df2;color:#fff;font-size:11px}.result-label{left:13px;top:13px}.origin-label{right:13px;top:13px}.portfolio-drag-hint{bottom:13px;left:50%;translate:-50% 0;white-space:nowrap}.portfolio-canvas .portfolio-split{position:absolute;z-index:4;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:none}.has-comparison{touch-action:none;cursor:ew-resize}.portfolio-canvas:focus-within{outline:2px solid #ffeb00;outline-offset:3px}.portfolio-dialog-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:15px}.portfolio-position{font-size:12px;color:var(--secondary)}.portfolio-dialog-bottom a{margin-left:auto}.portfolio-load-status{font-size:12px;color:var(--secondary);margin:12px 0 0}.landing-biography{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:25px}.landing-biography summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;padding:19px 0;font-size:14px}.landing-biography summary::-webkit-details-marker{display:none}.landing-biography p{font-size:14px;line-height:1.85;color:var(--secondary);margin:0 0 18px}.landing-process{border-top:1px solid var(--line)}.landing-process h2{max-width:700px}.landing-process>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:40px}.landing-process article{border-top:1px solid var(--line);padding-top:20px}.landing-process article>span{font-size:10px;color:var(--secondary);letter-spacing:.05em}.landing-process h3{font-size:24px;line-height:1.3;letter-spacing:-.04em;margin:20px 0 15px}.landing-process p{font-size:14px;line-height:1.8;color:var(--secondary)}.landing-faq{padding-top:0;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9%}.landing-faq details{border-bottom:1px solid var(--line)}.landing-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;padding:23px 0;font-size:15px;line-height:1.6}.landing-faq summary::-webkit-details-marker{display:none}.landing-faq p{font-size:14px;color:var(--secondary);line-height:1.85;margin:0 0 22px}.landing-faq details[open] summary>span,.landing-biography[open] summary>span{rotate:45deg}.frame-review-controls{position:fixed;top:5px;left:5px;right:5px;z-index:200;display:flex;gap:4px;flex-wrap:wrap;background:#fff;color:#000;padding:5px;font-family:Arial;font-size:11px}.frame-review-controls button{font:inherit;color:#000;background:#eee;border:1px solid #888;padding:5px}.frame-review-controls label{display:flex;align-items:center;gap:5px}.frame-review-controls input{width:100px}.review-intro{animation:none!important}.review-intro .intro-skip{display:none}
[data-theme="light"] .landing-pitch h1 em{color:var(--text);text-decoration:underline;text-decoration-color:#ffeb00;text-decoration-thickness:.12em;text-underline-offset:.09em}
@media(max-width:900px){.hero.landing-hero{grid-template-columns:minmax(0,1fr)}.landing-pitch{max-width:650px}.landing-hero .brand-home-stage{height:450px;max-width:650px;margin:auto}.landing-hero .embedded-brand .intro-statement h2{font-size:clamp(24px,4.5vw,36px)}.landing-hero .embedded-brand .intro-pillars .pillar{font-size:clamp(23px,4vw,32px)}.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-heading{grid-template-columns:minmax(0,1fr)}.portfolio-heading>p{margin-top:25px;max-width:600px}.landing-faq{grid-template-columns:minmax(0,1fr);gap:25px}}
@media(max-width:650px){.hero.landing-hero{padding-top:22px}.landing-hero h1{font-size:clamp(40px,10vw,60px);line-height:1.1}.landing-pitch>p{font-size:15px}.landing-actions{gap:17px}.landing-actions .button{font-size:11px;padding:12px 15px;gap:12px}.landing-scope{font-size:10px}.landing-hero .brand-home-stage{height:440px;margin-top:10px}.landing-hero .embedded-brand .intro-statement{top:59%;left:0;right:0}.landing-hero .embedded-brand .intro-statement h2{font-size:clamp(22px,5.7vw,30px)}.landing-hero .embedded-brand .intro-brand{top:31%}.landing-hero .embedded-brand .intro-mark{width:60px;height:80px}.landing-hero .embedded-brand .intro-brand-name{font-size:25px}.landing-hero .embedded-brand .intro-subline{font-size:9px}.landing-hero .embedded-brand .intro-pillars .pillar{font-size:23px}.home-project-grid{gap:28px 14px}.project-open{border-radius:15px}.project-kind{top:8px;left:8px;font-size:7px;padding:6px 8px}.project-action{bottom:8px;left:8px;right:8px;padding:8px 6px;font-size:9px;line-height:1.4}.project-caption{padding:13px 0 0}.project-caption>span{font-size:8px}.project-caption h3{font-size:16px}.home-filters{gap:7px}.home-filters button{font-size:11px;padding:10px 13px}.home-portfolio-status{font-size:11px;line-height:1.8}.portfolio-heading h2{font-size:36px}.portfolio-heading>p{font-size:14px}.portfolio-more{font-size:13px}.portfolio-disclosure{font-size:10px}.portfolio-contact{font-size:12px;line-height:1.8}.portfolio-dialog{padding:14px}.portfolio-dialog-top h2{font-size:19px}.portfolio-dialog-top>div>span{font-size:10px}.portfolio-canvas{height:55svh}.portfolio-drag-hint{font-size:9px!important;padding:7px 9px!important}.portfolio-dialog-bottom a{margin-left:0}.landing-process>div{grid-template-columns:1fr;gap:15px;margin-top:30px}.landing-process h3{font-size:23px;margin:15px 0 10px}.landing-process p{font-size:14px}.landing-faq summary{font-size:14px}.landing-biography p{font-size:13px}}
@media(max-width:359px){.home-project-grid{grid-template-columns:1fr}.project-action{font-size:11px}.project-kind{font-size:9px}.project-caption h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.portfolio-canvas,.project-open>img{transition:none!important}.home-intro-active .landing-pitch{opacity:1}}

/* Independent commercial home: editorial hierarchy, work first. */
.hero.campaign-hero{display:block;padding:35px 0 40px;min-height:0;overflow:clip;overflow-clip-margin:8px}.campaign-kicker{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.12em;color:var(--secondary);margin-bottom:50px}.campaign-lead{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:end;gap:7%}.campaign-lead h1{font-size:clamp(74px,9.5vw,140px);font-weight:600;line-height:.98;letter-spacing:-.075em;margin:0;animation:campaign-headline 1.2s cubic-bezier(.2,.8,.2,1) both}.campaign-lead h1 em{color:#ffeb00;display:inline-block}.campaign-note{min-width:0;padding-bottom:8px}.campaign-arrow{display:block;font-size:clamp(75px,11vw,160px);line-height:1;font-weight:400;color:#ffeb00;margin-bottom:30px;animation:campaign-arrow 1.3s ease both}.campaign-note>p{font-size:17px;line-height:1.8;color:var(--secondary);margin-bottom:25px}.campaign-note .button{font-size:11px;padding:14px 17px;gap:18px}.campaign-work-link{display:inline-block;font-size:12px;line-height:1.8;margin-top:20px;padding-bottom:8px;border-bottom:1px solid var(--line)}.campaign-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-top:55px;padding:25px 0 5px;border-top:1px solid var(--line);font-size:10px;letter-spacing:.06em;color:var(--secondary)}.home-intro-active .campaign-lead{opacity:0}.home-portfolio{padding-top:80px}.home-portfolio .portfolio-heading{grid-template-columns:minmax(0,1.2fr) minmax(0,.7fr);gap:15%;margin-bottom:45px}.home-portfolio .portfolio-heading h2{font-size:clamp(46px,6vw,84px)}.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 35px}.home-project-grid .project-open{border-radius:6px;aspect-ratio:4/4.6}.home-project-grid .project-open.landscape{aspect-ratio:4/4.6}.home-project-grid .project-caption h3{font-size:25px;line-height:1.3}.home-project-grid .project-kind{top:18px;left:18px}.home-project-grid .project-action{left:18px;bottom:18px;right:auto;font-size:12px;padding:11px 16px}.home-project-grid .project-caption{padding-top:21px}.home-project-grid .project-caption>span{font-size:10px}.home-filters{gap:10px}.capability-heading h2{font-size:clamp(36px,4.5vw,64px)}.signature{gap:9%;grid-template-columns:minmax(0,.45fr) minmax(0,1fr)}.signature h2{font-size:clamp(32px,4vw,54px)}.landing-biography[open] summary{margin-bottom:5px}.signature-orbit>img{filter:grayscale(0)}[data-theme="light"] .campaign-lead h1 em{color:var(--text);text-decoration:underline;text-decoration-color:#ffeb00;text-decoration-thickness:.1em;text-underline-offset:.08em}[data-theme="light"] .campaign-arrow{color:#5e6a21}
@keyframes campaign-headline{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes campaign-arrow{from{opacity:0;transform:translate(-15px,15px)}to{opacity:1;transform:none}}
@media(max-width:900px){.campaign-lead{grid-template-columns:minmax(0,1fr);gap:30px}.campaign-note{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px;align-items:center}.campaign-arrow{display:none}.campaign-note>p{grid-row:span 2;margin:0;max-width:430px}.campaign-note .button{justify-self:start}.campaign-work-link{margin:0;justify-self:start}.home-portfolio .portfolio-heading{grid-template-columns:minmax(0,1fr);gap:0}}
@media(max-width:650px){.hero.campaign-hero{padding-top:25px;padding-bottom:30px}.campaign-kicker{font-size:8px;letter-spacing:.07em;margin-bottom:35px}.campaign-kicker>span:last-child{display:none}.campaign-lead h1{font-size:clamp(52px,13.5vw,85px);line-height:1.02}.campaign-lead{gap:28px}.campaign-note{display:block;padding:0}.campaign-note>p{font-size:15px;line-height:1.85;margin-bottom:23px;max-width:340px}.campaign-note .button{font-size:12px;gap:18px}.campaign-work-link{font-size:12px;margin-top:18px;display:block;width:max-content;max-width:100%}.campaign-bottom{margin-top:35px;gap:14px 20px;font-size:8px;justify-content:flex-start;padding-top:22px}.home-portfolio{padding-top:55px}.home-portfolio .portfolio-heading h2{font-size:43px}.home-project-grid{grid-template-columns:minmax(0,1fr);gap:32px}.home-project-grid .project-open{aspect-ratio:4/4.6;border-radius:8px}.home-project-grid .project-open.landscape{aspect-ratio:4/3}.home-project-grid .project-caption h3{font-size:23px}.home-project-grid .project-action{font-size:12px;bottom:15px;left:15px;right:15px;text-align:left;padding:11px 13px}.home-project-grid .project-kind{font-size:9px;top:13px;left:13px}.home-project-grid .project-caption>span{font-size:10px}.home-filters button{font-size:12px}.signature{grid-template-columns:minmax(0,1fr)}.signature h2{font-size:35px}.signature-orbit{margin-left:15px;margin-right:auto;max-width:210px}.capability-heading h2{font-size:35px}.home-project-grid .project-caption{padding-top:15px}}
@media(prefers-reduced-motion:reduce){.campaign-lead h1,.campaign-arrow{animation:none!important}.home-intro-active .campaign-lead{opacity:1}}

/* One motion piece: the frame changes format while the type keeps its momentum. */
.home-intro-active{overflow:hidden}
.brand-intro{position:fixed;inset:0;z-index:100;background:#080b09;color:#f6f7ee;overflow:hidden;clip-path:inset(0);animation:stomp-safety .1s 10s forwards}
.stomp-stage{position:relative;display:grid;place-items:center;height:100svh;padding:60px 6% 130px;container-type:inline-size;isolation:isolate}
.motion-frame{position:relative;display:grid;place-items:center;overflow:hidden;width:100%;height:100%;max-height:650px;background:#080b09;color:#f6f7ee;transition:width .55s cubic-bezier(.76,0,.18,1),height .55s cubic-bezier(.76,0,.18,1),background .18s,color .18s,transform .55s cubic-bezier(.76,0,.18,1);will-change:width,height,transform}
.motion-composition{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;width:100%;height:100%;padding:24px;isolation:isolate;font-synthesis:none}
.motion-caption{position:absolute;left:6%;right:6%;bottom:95px;display:flex;justify-content:space-between;gap:15px;font-size:10px;font-weight:600;letter-spacing:.1em;color:#c5cdbb;line-height:1.6}
.motion-timeline{position:absolute;left:0;right:0;bottom:0;height:2px;background:#ffffff13}.motion-timeline>span{display:block;height:100%;background:#ffeb00;transform-origin:left;transform:scaleX(0)}
.stomp-skip{position:absolute;right:6%;bottom:25px;border:1px solid #f6f7ee45;border-radius:40px;background:#080b09;color:#f6f7ee;min-height:44px;padding:12px 20px;display:flex;gap:25px;align-items:center;font-size:12px;z-index:5}.stomp-skip>span{color:#ffeb00;font-size:20px}
.letter-word{display:flex;overflow:hidden;position:relative;z-index:2;font-size:clamp(70px,18cqi,240px);font-weight:800;letter-spacing:-.065em;line-height:1.14;padding:.1em .08em .16em}.letter-word i{font-style:normal;display:block;animation:stomp-letter-land .6s cubic-bezier(.15,.85,.2,1) both;animation-delay:calc(var(--letter)*30ms)}
.motion-echo{position:absolute;left:50%;top:50%;translate:-50% -40%;font-size:clamp(70px,18cqi,240px);line-height:1.14;font-weight:800;letter-spacing:-.065em;color:transparent;-webkit-text-stroke:1px #ffeb0045;animation:stomp-echo 1.1s cubic-bezier(.2,.7,.2,1) both}
.art-direction-note{position:absolute;left:7%;top:10%;font-size:10px;letter-spacing:.14em;color:#c5cdbb}.crosshair{position:absolute;color:#ffeb00;font-size:24px}.crosshair-a{right:7%;top:9%}.crosshair-b{left:7%;bottom:9%}.focus-orbit{position:absolute;left:50%;top:50%;translate:-50% -50%;width:25%;aspect-ratio:1;border:1px solid #ffeb0033;border-radius:50%;animation:stomp-orbit 1.2s ease-out both}
.stomp-stage[data-phase="1"] .motion-frame{height:88%;background:#ffeb00;color:#10150c;transform:none}
.rhythm-lines{position:absolute;inset:-25% -25%;display:flex;flex-direction:column;justify-content:center;transform:rotate(-7deg)}.rhythm-lines>span{display:block;font-size:clamp(85px,17cqi,220px);line-height:1.06;padding-block:.02em;font-weight:800;letter-spacing:-.055em;white-space:nowrap;animation:stomp-rhythm 1.15s cubic-bezier(.1,.6,.2,1) both}.rhythm-lines>span:nth-child(2){color:#ffeb00;-webkit-text-fill-color:#ffeb00;-webkit-text-stroke:2px #10150c;paint-order:stroke fill;animation-direction:reverse;translate:-10% 0}.rhythm-lines>span:nth-child(3){translate:5% 0}.rhythm-arrow{position:absolute;right:6%;bottom:8%;font-size:65px;line-height:1;width:75px;height:75px;border-radius:50%;background:#10150c;color:#ffeb00;display:grid;place-items:center;animation:stomp-arrow .5s .15s cubic-bezier(.15,.9,.2,1) both}
.stomp-stage[data-phase="2"] .motion-frame{width:250px;height:390px;background:#f2f4e7;color:#10150c;transform:none}
.stomp-stage[data-phase="2"] .motion-composition{align-items:flex-start;padding:26px;animation:stomp-surface .42s .12s both}.motion-micro{position:absolute;left:26px;right:26px;top:26px;font-size:9px;letter-spacing:.08em;line-height:1.7}.vertical-word{position:relative;font-size:58px;font-weight:500;letter-spacing:-.065em;line-height:1.08;animation:stomp-type-up .65s .18s cubic-bezier(.15,.85,.2,1) both}.vertical-word b{font-weight:800}.vertical-footer{position:absolute;left:26px;right:26px;bottom:26px;font-size:8px;line-height:1.8;letter-spacing:.04em}.vertical-stripe{position:absolute;right:0;top:0;bottom:0;width:14px;background:#ffeb00;transform-origin:bottom;animation:stomp-stripe .65s ease both}.motion-stamp{position:absolute;right:-15px;bottom:40px;font-size:130px;opacity:.07;animation:stomp-turn 1.3s ease-out both}
.stomp-stage[data-phase="3"] .motion-frame{width:100%;height:320px;background:#ffeb00;color:#10150c;transform:rotate(0)}.stomp-stage[data-phase="3"] .motion-micro{text-align:center;top:23px}.wide-word{position:relative;width:100%;height:100%;display:grid;place-items:center}.wide-word>span{position:absolute;font-size:clamp(45px,13cqi,180px);font-weight:800;letter-spacing:-.065em;line-height:1.16;animation:stomp-expand 1.3s cubic-bezier(.15,.8,.2,1) both}.wide-word>span:nth-child(2){color:#ffeb00;-webkit-text-stroke:1px #10150c;paint-order:stroke fill;animation-name:stomp-wide-echo}.wide-corner{position:absolute;right:25px;bottom:22px;font-size:10px;letter-spacing:.1em}
.stomp-stage[data-phase="4"] .motion-frame{width:100%;height:210px;background:#ffeb00;color:#10150c;transform:none}.panel-line{display:flex;position:absolute;width:max-content;left:0;top:43%;translate:0 -50%;animation:stomp-panel 1.3s cubic-bezier(.1,.4,.2,1) both}.panel-line>span{font-size:clamp(38px,9cqi,120px);line-height:1.15;font-weight:800;letter-spacing:-.055em;white-space:nowrap;padding-right:.45em}.panel-subline{position:absolute;left:25px;right:25px;bottom:22px;font-size:9px;letter-spacing:.08em;line-height:1.6}
.stomp-stage[data-phase="5"] .motion-frame{width:100%;height:100%;transform:none}.stomp-brand-lockup{display:flex;align-items:flex-end;gap:10px;position:relative;z-index:2;animation:stomp-brand .65s cubic-bezier(.15,.85,.2,1) both}.stomp-brand-lockup>.motion-logo{width:100px;height:125px;object-fit:contain}.stomp-brand-lockup>span{font-size:38px;font-weight:800;letter-spacing:-.045em;margin-bottom:16px}.signature-ray{position:absolute;left:50%;top:50%;width:1px;height:70%;translate:-50% -50%;background:linear-gradient(transparent,#ffeb0050,transparent);animation:stomp-turn 1.9s ease-out both}.stomp-final-line{position:absolute;bottom:15%;left:5%;right:5%;text-align:center;font-size:13px;letter-spacing:.02em;color:#d0d7c5;animation:stomp-type-up .6s .25s both}
.brand-intro.intro-exit{animation:stomp-curtain .8s cubic-bezier(.75,0,.2,1) both}.intro-exit .stomp-stage{animation:stomp-depart .8s cubic-bezier(.75,0,.2,1) both}
.frame-review-controls{position:fixed;left:15px;right:15px;top:12px;z-index:10;display:flex;gap:5px;flex-wrap:wrap}.frame-review-controls button,.frame-review-controls label{font-size:11px;background:#20291c;color:white;border:1px solid #ffffff55;padding:7px}.frame-review-controls input{width:110px}.review-intro{animation:none}
@keyframes stomp-letter-land{from{transform:translateY(115%) rotate(8deg)}to{transform:none}}@keyframes stomp-echo{from{transform:translateY(0);opacity:0}30%{opacity:.7}to{transform:translateY(50px);opacity:.4}}@keyframes stomp-orbit{from{scale:.2;opacity:0}30%{opacity:1}to{scale:2;opacity:.2}}@keyframes stomp-rhythm{from{transform:translateX(13%)}to{transform:translateX(-11%)}}@keyframes stomp-arrow{from{transform:rotate(-90deg) scale(.1)}to{transform:none}}@keyframes stomp-type-up{from{transform:translateY(35px);opacity:0}to{transform:none;opacity:1}}@keyframes stomp-surface{from{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes stomp-stripe{from{scale:1 0}to{scale:1 1}}@keyframes stomp-turn{from{rotate:-30deg}to{rotate:20deg}}@keyframes stomp-expand{from{transform:scaleX(.6);opacity:0}25%{opacity:1}to{transform:scaleX(1);opacity:1}}@keyframes stomp-wide-echo{from{transform:translateY(0) scaleX(.6);opacity:0}40%{opacity:.5}to{transform:translateY(35px) scaleX(1.03);opacity:.3}}@keyframes stomp-panel{from{transform:translateX(8%)}to{transform:translateX(-29%)}}@keyframes stomp-brand{from{transform:translateY(25px) scale(.9);clip-path:inset(100% -10% 0)}to{transform:none;clip-path:inset(-10%)}}@keyframes stomp-curtain{to{clip-path:inset(0 0 100%)}}@keyframes stomp-depart{to{transform:translateY(-80px)}}@keyframes stomp-safety{to{visibility:hidden;pointer-events:none}}
@media(max-width:650px){.stomp-stage{padding:55px 6% 135px}.motion-frame{max-height:640px}.motion-caption{font-size:8px;letter-spacing:.04em;bottom:94px}.art-direction-note{font-size:8px;max-width:75%;line-height:1.7}.letter-word,.motion-echo{font-size:clamp(60px,21cqi,125px)}.focus-orbit{width:50%}.rhythm-lines{inset:-12% -40%}.rhythm-lines>span{font-size:clamp(74px,25cqi,140px)}.rhythm-arrow{width:52px;height:52px;font-size:43px}.stomp-stage[data-phase="2"] .motion-frame{width:225px;height:360px}.vertical-word{font-size:52px}.stomp-stage[data-phase="3"] .motion-frame{height:240px}.stomp-stage[data-phase="3"] .motion-micro{font-size:7px;left:12px;right:12px}.wide-word>span{font-size:clamp(40px,14cqi,80px)}.stomp-stage[data-phase="4"] .motion-frame{height:175px}.panel-line>span{font-size:clamp(35px,11cqi,65px)}.panel-subline{font-size:7px;left:18px;right:18px;bottom:20px}.stomp-brand-lockup>.motion-logo{width:85px;height:105px}.stomp-brand-lockup>span{font-size:31px;margin-bottom:14px}.stomp-final-line{font-size:11px;bottom:18%}}
@media(max-height:550px){.stomp-stage{padding-top:25px;padding-bottom:105px}.motion-caption{bottom:73px}.stomp-skip{bottom:14px;min-height:40px;padding:8px 17px}.stomp-stage[data-phase="2"] .motion-frame{width:170px;height:270px}.stomp-stage[data-phase="2"] .motion-composition{padding:19px}.vertical-word{font-size:37px}.vertical-footer,.motion-micro{left:19px;right:19px;font-size:6px;top:18px}.vertical-footer{top:auto;bottom:18px}.stomp-final-line{bottom:5%}.stomp-stage[data-phase="3"] .motion-micro{font-size:7px;top:15px}.wide-corner{bottom:13px}.stomp-brand-lockup>.motion-logo{height:80px;width:65px}.stomp-brand-lockup>span{font-size:26px;margin-bottom:11px}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none}.home-intro-active{overflow:auto}}

/* Hero choreography inspired by the published UP site; never used by the intro. */
.hero.connection-hero{display:block;min-height:0;padding:25px 0 35px;overflow:visible}.connection-topline{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.1em;color:var(--secondary);line-height:1.8}.connection-topline>span:last-child{font-size:8px}
.connection-stage{position:relative;height:565px;isolation:isolate}.connection-stage:before{content:'';position:absolute;inset:5% 0;background:radial-gradient(ellipse at 50% 45%,#ffeb0009,transparent 64%);z-index:-1;pointer-events:none}.connection-pillars{position:absolute;inset:0;opacity:0;pointer-events:none}.connection-pillar{position:absolute;top:22%;translate:-50% 0;display:flex;flex-direction:column;gap:13px;font-size:clamp(25px,3.4vw,44px);line-height:1.2;font-weight:500;letter-spacing:-.045em;color:var(--text);white-space:nowrap}.connection-pillar small{font-size:10px;letter-spacing:.08em;font-weight:500;color:var(--secondary)}.connection-pillar i{display:block;width:34px;height:2px;background:#ffeb00;transform-origin:left}.cp-strategy{left:18%}.cp-creation{left:50%}.cp-technology{left:82%}
.connection-rails{position:absolute;inset:0;opacity:0;pointer-events:none}.connection-rails svg{width:100%;height:100%;overflow:visible;fill:none;stroke:#ffeb00;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.connection-rails path{stroke-dasharray:1;stroke-dashoffset:0;vector-effect:non-scaling-stroke}.connection-rails circle{fill:#ffeb00;stroke:none;transform-box:fill-box;transform-origin:center}.connection-mobile{display:none}
.connection-brand{width:max-content;max-width:100%;position:absolute;left:50%;top:22%;translate:-50% 0;display:flex;align-items:flex-end;gap:10px;color:var(--text)}.connection-brand img{flex-shrink:0;display:block;width:96px;height:120px;object-fit:contain}.connection-brand>span{font-size:37px;font-weight:800;line-height:1;letter-spacing:-.045em;margin-bottom:17px}.connection-message{position:absolute;left:0;right:0;top:55%;text-align:center}.connection-message>p{font-size:9px;letter-spacing:.17em;color:var(--secondary);line-height:1.8;margin:0 0 18px}.connection-message h1{position:static;font-size:clamp(32px,4.2vw,60px);font-weight:500;line-height:1.2;letter-spacing:-.055em;margin:0;padding:0;border:0;color:var(--text);animation:none}.connection-message h1 em{color:#ffeb00;font-style:normal;text-decoration:none;background:none;box-shadow:none;border:0}.connection-message h1:after,.connection-message h1:before,.connection-message h1 em:after,.connection-message h1 em:before{display:none!important}.connection-message>.connection-subline{font-size:13px;line-height:1.8;letter-spacing:0;margin:22px 0 0}
.connection-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:10px 0 25px}.connection-bottom>p{font-size:15px;color:var(--secondary);line-height:1.8;margin:0}.connection-bottom strong{font-weight:500;color:var(--text)}.connection-bottom>span{font-size:12px;color:var(--secondary);line-height:1.8}.connection-bottom>a{font-size:13px;line-height:1.8;display:flex;align-items:center;gap:25px;padding:10px 0}.connection-bottom>a>span{color:var(--yellow)}.connection-footer{border-top:1px solid var(--line);padding-top:19px;display:flex;align-items:center;justify-content:space-between;gap:20px}.connection-footer nav{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.connection-footer a{font-size:12px;line-height:1.8;padding:4px 0}.connection-replay{flex-shrink:0;border:0;background:none;font-size:11px;line-height:1.8;color:var(--secondary);padding:8px 0}.connection-replay>span{font-size:16px;color:var(--yellow);margin-left:8px}.connection-replay:disabled{opacity:.45;cursor:default}
.connection-playing .connection-pillars{animation:connection-pillars-depart 2.9s linear both}.connection-playing .connection-pillar{animation:connection-pillar-arrive .8s cubic-bezier(.2,.8,.2,1) both}.connection-playing .cp-creation{animation-delay:.15s}.connection-playing .cp-technology{animation-delay:.3s}.connection-playing .connection-pillar i{animation:connection-accent .7s .35s cubic-bezier(.2,.8,.2,1) both}.connection-playing .connection-rails{animation:connection-rails-show 3s linear both}.connection-playing .connection-rails path{animation:connection-path 1.65s .55s cubic-bezier(.3,.2,.2,1) both}.connection-playing .connection-rails path:nth-child(2){animation-delay:.75s}.connection-playing .connection-rails path:nth-child(3){animation-delay:.95s}.connection-playing .connection-rails circle{animation:connection-nucleus .8s 1.9s both}.connection-playing .connection-brand{animation:connection-brand-arrive .9s 2.45s cubic-bezier(.16,.8,.2,1) both}.connection-playing .connection-message{animation:connection-message-arrive .85s 3.15s cubic-bezier(.2,.8,.2,1) both}
@keyframes connection-pillars-depart{0%,76%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-12px)}}@keyframes connection-pillar-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes connection-accent{from{scale:0 1}to{scale:1 1}}@keyframes connection-rails-show{0%{opacity:0}18%,78%{opacity:.65}100%{opacity:0}}@keyframes connection-path{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes connection-nucleus{0%{opacity:0;scale:.4}35%,65%{opacity:1;scale:1}100%{opacity:0}}@keyframes connection-brand-arrive{from{opacity:0;transform:translateY(25px) scale(.92);clip-path:inset(100% -10% 0)}to{opacity:1;transform:translateY(0) scale(1);clip-path:inset(-10%)}}@keyframes connection-message-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
[data-theme="light"] .connection-brand img{content:url('assets/logo-light.svg')}[data-theme="light"] .connection-message h1 em{color:var(--text)}[data-theme="light"] .connection-rails svg{stroke:#687710}[data-theme="light"] .connection-rails circle{fill:#687710}
@media(max-width:650px){.hero.connection-hero{padding-top:25px}.connection-topline{font-size:8px;letter-spacing:.04em}.connection-topline>span:last-child{display:none}.connection-stage{height:520px}.connection-pillar{font-size:clamp(24px,6.7vw,34px);gap:10px}.connection-pillar small{font-size:9px}.connection-pillar i{width:27px}.cp-strategy{left:23%;top:17%}.cp-creation{left:50%;top:31%}.cp-technology{left:77%;top:45%}.connection-desktop{display:none}.connection-mobile{display:block}.connection-brand{top:22%;gap:8px}.connection-brand img{width:72px;height:90px}.connection-brand>span{font-size:28px;margin-bottom:13px}.connection-message{top:53%}.connection-message h1{font-size:clamp(26px,7vw,40px);line-height:1.25;letter-spacing:-.06em}.connection-message>p{font-size:8px;letter-spacing:.14em;margin-bottom:19px}.connection-message>.connection-subline{font-size:12px;margin-top:22px}.connection-bottom{align-items:flex-start;flex-wrap:wrap;gap:18px;padding-top:8px}.connection-bottom>p{font-size:14px}.connection-bottom>span{font-size:10px;max-width:43%}.connection-bottom>a{font-size:12px;padding:0}.connection-footer{align-items:flex-start;flex-direction:column;gap:13px}.connection-footer nav{gap:10px 22px}.connection-footer a{font-size:12px}.connection-replay{font-size:11px}}
@media(max-width:360px){.connection-stage{height:485px}.connection-message{top:53%}.connection-message h1{font-size:25px}.connection-bottom>p{font-size:13px}.connection-bottom>span{font-size:9px}}
/* Pausing or reducing motion always resolves to the complete, readable composition. */
.motion-paused .connection-stage *{animation:none!important}.motion-paused .connection-pillars,.motion-paused .connection-rails{opacity:0!important}.motion-paused .connection-brand,.motion-paused .connection-message{opacity:1!important;transform:none!important;clip-path:none!important}
@media(prefers-reduced-motion:reduce){.connection-stage *{animation:none!important}.connection-pillars,.connection-rails{display:none!important}.connection-brand,.connection-message{opacity:1!important;transform:none!important;clip-path:none!important}.connection-replay{display:none}}

/* Sections below the approved hero: an editorial gallery and a guided project journey. */
.home-portfolio{padding-top:90px}.home-portfolio .portfolio-heading{grid-template-columns:minmax(0,1.15fr) minmax(0,.65fr);gap:12%;align-items:end;margin-bottom:35px}.home-portfolio .portfolio-heading h2{font-size:clamp(44px,5.6vw,78px);line-height:1.04}.home-portfolio .portfolio-heading>p{font-size:15px;line-height:1.85}.home-filters{margin:30px 0}.home-filters button{font-size:12px;padding:11px 17px}
.portfolio-spotlight{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:7%;align-items:center;margin:20px 0 65px;min-width:0}.spotlight-editorial{min-width:0}.spotlight-top{display:flex;justify-content:space-between;gap:15px;font-size:9px;line-height:1.8;letter-spacing:.07em;color:var(--secondary);padding-top:10px}.spotlight-count{white-space:nowrap;color:var(--text)}.spotlight-title{font-size:clamp(29px,3.6vw,47px);font-weight:500;letter-spacing:-.05em;line-height:1.15;margin:30px 0 22px}.spotlight-intent{font-size:16px;line-height:1.85;color:var(--secondary);max-width:360px;margin:0 0 23px}.spotlight-disciplines{display:flex;gap:8px;flex-wrap:wrap}.spotlight-disciplines>span{font-size:10px;line-height:1.6;color:var(--secondary);padding:6px 10px;border:1px solid var(--line);border-radius:20px}.spotlight-invite{margin:35px 0 25px;font-size:13px;line-height:1.9;color:var(--secondary)}.spotlight-invite strong{font-weight:500;color:var(--text)}.spotlight-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px}.spotlight-nav button{display:flex;gap:9px;align-items:center;min-width:0;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--secondary);font-size:11px;text-align:left}.spotlight-nav button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--secondary)}.spotlight-nav button[aria-pressed="true"]{color:var(--yellow);border-color:var(--yellow)}.spotlight-nav button[aria-pressed="true"]>span{color:var(--text)}
.spotlight-art{position:relative;display:grid;place-items:center;min-width:0;width:100%;height:570px;padding:20px;border:1px solid var(--line);border-radius:28px;overflow:hidden;isolation:isolate;background:var(--surface);cursor:zoom-in}.spotlight-backdrop{position:absolute;inset:-15%;background-size:cover;background-position:center;filter:blur(50px);opacity:.17;z-index:-1;pointer-events:none}.spotlight-image{display:block;width:100%;height:100%;max-height:530px;object-fit:contain;transition:scale .6s cubic-bezier(.2,.8,.2,1)}.spotlight-art:hover .spotlight-image{scale:1.025}.spotlight-open{position:absolute;left:20px;right:20px;bottom:19px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #ffffff38;border-radius:35px;background:#0b110df0;color:#f6f8ef;padding:12px 15px 12px 19px;font-size:12px;line-height:1.6;box-shadow:0 7px 30px #0002}.spotlight-open b{font-size:22px;font-weight:500;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#ffeb00;color:#11170d}.spotlight-switch .spotlight-image{animation:up-project-reveal .65s cubic-bezier(.2,.8,.2,1) both}@keyframes up-project-reveal{from{clip-path:inset(0 0 0 100%);translate:15px 0}to{clip-path:inset(0);translate:0 0}}
.collection-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:25px}.collection-heading h3{font-size:24px;letter-spacing:-.04em;font-weight:500;margin:0}.collection-heading>span{font-size:12px;color:var(--secondary)}.home-portfolio-status{font-size:11px;margin-top:14px;margin-bottom:25px}.home-project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px}.home-project-grid .project-open{border-radius:16px;aspect-ratio:4/4.8}.home-project-grid .project-open.landscape{aspect-ratio:4/4.8}.home-project-grid .project-kind{font-size:8px;top:10px;left:10px;padding:6px 9px}.home-project-grid .project-action{left:10px;right:10px;bottom:10px;font-size:10px;padding:8px 10px}.home-project-grid .project-caption{padding-top:13px}.home-project-grid .project-caption>span{font-size:9px}.home-project-grid .project-caption h3{font-size:18px;line-height:1.35}.portfolio-more{margin-top:35px}.portfolio-disclosure{font-size:11px;line-height:1.9;max-width:850px}.portfolio-story{font-size:12px;line-height:1.7;max-width:650px;color:var(--secondary);margin:8px 0 0}.portfolio-dialog{border-radius:18px}.portfolio-dialog-top{align-items:flex-start}.portfolio-dialog-top h2{font-size:23px}.portfolio-canvas{height:62svh}.portfolio-dialog .portfolio-close{position:sticky;top:0}
.capabilities{background:var(--bg);color:var(--text);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.capabilities .capability-watermark{display:none}.capability-heading{max-width:920px}.capability-heading h2{font-size:clamp(36px,4.8vw,67px);line-height:1.1}.capability-heading>p:last-child{max-width:550px;font-size:15px;line-height:1.85;color:var(--secondary)}.solution-goals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 6%;margin:35px 0 20px}.solution-goals>button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0;padding:25px 35px 25px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--secondary);font-size:23px;line-height:1.35;letter-spacing:-.04em;text-align:left;transition:color .25s,padding-left .25s}.solution-goals>button>span{font-size:9px;line-height:1.8;letter-spacing:.08em}.solution-goals>button>b{position:absolute;right:0;top:50%;translate:0 -50%;font-size:20px;font-weight:400;color:var(--secondary)}.solution-goals>button[aria-pressed="true"]{color:var(--text);border-bottom-color:var(--yellow)}.solution-goals>button[aria-pressed="true"]>span,.solution-goals>button[aria-pressed="true"]>b{color:var(--yellow)}.solution-goals>button:hover{padding-left:7px;color:var(--text)}.solution-direction{font-size:12px;color:var(--secondary);line-height:1.8;margin:22px 0 28px}.capabilities .capability-list details{background:none;border-color:var(--line)}.capabilities .capability-list details[open]{background:none}.capabilities .capability-list summary{font-size:22px;letter-spacing:-.035em;color:var(--text);padding:24px 0;gap:20px;line-height:1.4}.capabilities .capability-list summary>span{font-size:11px;color:var(--secondary);min-width:25px}.capabilities .capability-list details[open] summary>span{color:var(--yellow)}.capabilities .capability-list summary b{color:var(--text);border-color:var(--line);flex-shrink:0}.capabilities .capability-list details[open]:before{background:var(--yellow)}.capabilities .capability-list details>div{max-width:850px;padding:0 0 28px 45px}.capabilities .capability-list p{color:var(--secondary);font-size:15px;line-height:1.9;max-width:680px}.capability-deliverables{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px 23px;margin:20px 0}.capability-deliverables>li{position:relative;padding-left:13px;font-size:12px;line-height:1.8;color:var(--text)}.capability-deliverables>li:before{content:'';position:absolute;left:0;top:.67em;width:4px;height:4px;border-radius:50%;background:var(--yellow)}.capabilities .capability-list a{font-size:13px;color:var(--text);border-bottom-color:var(--line)}
.signature{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:9%;align-items:center;overflow:visible}.signature .signature-orbit{width:100%;max-width:360px;margin:0;padding:0}.signature .signature-orbit>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:12px;filter:none;transform:none}.signature-ring,.signature-node{display:none}.signature>div:last-child{transform:none}.portrait-caption{display:block;margin-top:16px;font-size:9px;line-height:1.9;letter-spacing:.05em;color:var(--secondary)}.signature h2{font-size:clamp(33px,4vw,56px);line-height:1.12}.repertoire-tabs{display:flex;gap:23px;margin:30px 0 0}.repertoire-tabs button{padding:10px 0;border:0;border-bottom:2px solid transparent;background:none;font-size:14px;color:var(--secondary)}.repertoire-tabs button[aria-pressed="true"]{border-bottom-color:var(--yellow);color:var(--text)}.signature .signature-intro{font-size:16px!important;line-height:1.9!important;min-height:125px;margin-top:23px!important}.repertoire-changing{animation:up-repertoire-shift .35s ease-out both}@keyframes up-repertoire-shift{from{translate:0 7px}to{translate:0 0}}.landing-biography p{font-size:14px;line-height:1.9}.landing-biography summary{font-size:14px}
.landing-process>.process-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10%;margin-top:0;align-items:start}.process-heading{position:sticky;top:90px}.process-heading h2{font-size:clamp(32px,4vw,55px);line-height:1.13}.process-heading>p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--secondary);max-width:370px;margin:25px 0}.process-nav{display:flex;flex-direction:column;gap:4px;margin-top:20px;max-width:260px}.process-nav button{display:flex;align-items:center;gap:20px;border:0;border-bottom:1px solid var(--line);padding:14px 0;background:none;color:var(--secondary);font-size:11px;text-align:left}.process-nav button>span{font-size:14px}.process-nav button[aria-pressed="true"]{color:var(--text);border-bottom-color:var(--yellow)}.process-stages{list-style:none;padding:0;margin:0}.process-stages>li{position:relative;padding:30px 0 60px 30px;border-left:1px solid var(--line);scroll-margin-top:80px}.process-stages>li:before{content:'';position:absolute;left:-4px;top:35px;width:7px;height:7px;border-radius:50%;background:var(--secondary);transition:background .25s,box-shadow .25s}.process-stages>li.process-active:before{background:var(--yellow);box-shadow:0 0 0 6px #ffeb0015}.process-stages>li>span{font-size:10px;letter-spacing:.06em;color:var(--secondary)}.process-stages>li.process-active>span{color:var(--yellow)}.process-stages h3{font-size:clamp(26px,3vw,38px);line-height:1.2;letter-spacing:-.045em;margin:25px 0 18px}.process-stages p{font-size:15px;line-height:1.9;color:var(--secondary)}.process-stages small{display:block;font-size:12px;line-height:1.9;padding-top:18px;color:var(--text)}.process-stages>li:last-child{padding-bottom:25px}
.landing-faq{border-top:1px solid var(--line);padding-top:60px}.landing-faq h2{font-size:clamp(36px,4.5vw,61px);line-height:1.1}.landing-faq summary{font-size:16px;padding:25px 0}.landing-faq p{font-size:15px;line-height:1.9}.landing-faq summary>span{transition:rotate .25s}
.contact .contact-heading{margin-bottom:30px}.contact-brief{position:relative;max-width:750px;margin:0 0 30px}.contact-brief label{display:block;font-size:14px;line-height:1.8;margin-bottom:10px;color:#17200f}.contact-brief textarea{display:block;width:100%;min-height:100px;resize:vertical;border:1px solid #17200f66;border-radius:15px;background:#fff5;color:#17200f;padding:17px 18px 30px;font-family:inherit;font-size:16px;line-height:1.7}.contact-brief textarea::placeholder{color:#394329}.contact-brief textarea:focus-visible{outline:2px solid #17200f;outline-offset:3px}.contact-brief-count{position:absolute;bottom:10px;right:15px;font-size:10px;color:#26351b}.contact-ideas{max-width:850px;margin-bottom:23px}.contact-idea-status{font-size:12px}
[data-theme="light"] .spotlight-nav button[aria-pressed="true"],[data-theme="light"] .solution-goals>button[aria-pressed="true"]>span,[data-theme="light"] .solution-goals>button[aria-pressed="true"]>b,[data-theme="light"] .capabilities .capability-list details[open] summary>span,[data-theme="light"] .process-stages>li.process-active>span{color:#52621b}
.motion-paused .spotlight-image{animation:none!important;clip-path:none!important;translate:0 0!important}.motion-paused .signature-intro{animation:none!important}
@media(max-width:1000px){.portfolio-spotlight{gap:5%;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.spotlight-art{height:510px;padding:15px}.spotlight-image{max-height:480px}.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 25px}.solution-goals>button{font-size:22px}.signature{gap:7%}.landing-process>.process-layout{gap:7%}}
@media(max-width:650px){.home-portfolio{padding-top:65px}.home-portfolio .portfolio-heading{grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:22px}.home-portfolio .portfolio-heading h2{font-size:43px}.home-portfolio .portfolio-heading>p{margin:0;font-size:14px;line-height:1.9}.home-filters{gap:7px;margin:25px 0}.home-filters button{font-size:11px;padding:10px 13px}.portfolio-spotlight{grid-template-columns:minmax(0,1fr);gap:24px;margin-bottom:40px}.spotlight-editorial{display:contents}.spotlight-top{grid-row:1;padding-top:0;font-size:8px}.spotlight-title{grid-row:2;font-size:31px;line-height:1.15;margin:0}.spotlight-art{grid-row:3;height:min(520px,62svh);min-height:330px;padding:13px;border-radius:22px}.spotlight-image{max-height:100%}.spotlight-intent{grid-row:4;font-size:15px;line-height:1.85;margin:0;max-width:none}.spotlight-disciplines{grid-row:5}.spotlight-disciplines>span{font-size:10px}.spotlight-invite{display:none}.spotlight-nav{grid-row:6;gap:0 20px}.spotlight-nav button{padding:12px 0;font-size:11px}.spotlight-nav button>span{font-size:12px}.spotlight-open{left:13px;right:13px;bottom:13px;padding:9px 11px 9px 15px;font-size:11px}.spotlight-open b{width:31px;height:31px;font-size:20px}.collection-heading{align-items:flex-start;flex-direction:column;gap:8px;padding-top:25px}.collection-heading h3{font-size:25px}.collection-heading>span{font-size:11px}.home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 13px}.home-project-grid .project-open,.home-project-grid .project-open.landscape{aspect-ratio:4/5;border-radius:13px}.home-project-grid .project-caption h3{font-size:17px;margin-top:7px;line-height:1.4}.home-project-grid .project-caption>span{font-size:8px}.home-project-grid .project-kind{font-size:7px;top:7px;left:7px;padding:5px 7px}.home-project-grid .project-action{font-size:9px;left:7px;right:7px;bottom:7px;padding:7px 8px;line-height:1.5}.portfolio-more{font-size:13px}.portfolio-disclosure{font-size:10px}.portfolio-dialog{padding:16px;border-radius:16px}.portfolio-dialog-top h2{font-size:20px}.portfolio-story{font-size:11px;line-height:1.7}.portfolio-canvas{height:51svh;min-height:190px}.portfolio-dialog-bottom{gap:8px}.portfolio-dialog-bottom a{font-size:11px;margin-left:0}.portfolio-dialog-bottom button{font-size:11px}.capability-heading h2{font-size:35px}.capability-heading>p:last-child{font-size:14px}.solution-goals{grid-template-columns:minmax(0,1fr);margin-top:25px}.solution-goals>button{font-size:21px;gap:9px;padding:20px 30px 20px 0}.solution-goals>button>span{font-size:8px}.solution-direction{font-size:11px;margin-bottom:20px}.capabilities .capability-list summary{font-size:20px;padding:23px 0;gap:14px}.capabilities .capability-list summary>span{font-size:10px;min-width:19px}.capabilities .capability-list details>div{padding-left:0;padding-bottom:23px}.capabilities .capability-list p{font-size:14px;line-height:1.9}.capability-deliverables{flex-direction:column;gap:8px;margin-top:18px}.capability-deliverables>li{font-size:12px}.capabilities .capability-list a{font-size:12px}.signature{grid-template-columns:minmax(0,1fr);gap:35px}.signature .signature-orbit{max-width:280px;margin:0 auto}.signature .signature-orbit>img{height:auto;width:100%;border-radius:12px}.portrait-caption{font-size:8px}.signature h2{font-size:35px;line-height:1.15}.repertoire-tabs{gap:25px;margin-top:20px}.repertoire-tabs button{font-size:14px}.signature .signature-intro{font-size:15px!important;min-height:150px}.landing-biography summary{font-size:14px}.landing-biography p{font-size:14px}.landing-process>.process-layout{grid-template-columns:minmax(0,1fr);gap:35px}.process-heading{position:static}.process-heading h2{font-size:35px}.process-heading>p:not(.eyebrow){font-size:14px;margin:22px 0;max-width:none}.process-nav{max-width:none;flex-direction:row;gap:18px;margin:0}.process-nav button{gap:9px;padding:12px 0;flex:1;font-size:10px}.process-nav button>span{font-size:12px}.process-stages>li{padding:20px 0 42px 24px}.process-stages>li:before{top:25px}.process-stages h3{font-size:29px;margin:20px 0 17px}.process-stages p{font-size:14px}.process-stages small{font-size:11px;padding-top:12px}.landing-faq{padding-top:40px;gap:20px}.landing-faq h2{font-size:36px}.landing-faq summary{font-size:15px;line-height:1.7;padding:23px 0}.landing-faq p{font-size:14px}.contact .contact-heading{margin-bottom:25px}.contact-brief label{font-size:13px}.contact-brief textarea{font-size:16px;min-height:115px}.contact-ideas{gap:8px}.contact-ideas button{font-size:12px;padding:10px 12px}}
@media(max-width:360px){.home-portfolio .portfolio-heading h2{font-size:37px}.spotlight-title{font-size:28px}.spotlight-art{height:390px;min-height:0}.home-project-grid .project-caption h3{font-size:15px}.home-project-grid .project-action{font-size:8px}.solution-goals>button{font-size:20px}.signature h2,.process-heading h2{font-size:32px}.process-nav{gap:12px}.process-nav button{gap:6px}.process-nav button>span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.spotlight-image,.repertoire-changing{animation:none!important;transition:none!important;clip-path:none!important;translate:0 0!important}.solution-goals>button,.process-stages>li:before{transition:none!important}.process-heading{position:static}}

/* Heading contrast follows the section theme. */
.capabilities .capability-heading h2 em,.capabilities .capability-heading .eyebrow{color:var(--yellow)}
[data-theme="light"] .capabilities .capability-heading h2 em,[data-theme="light"] .capabilities .capability-heading .eyebrow{color:#52621b}

/* Direct contact: one invitation, one primary action. */
#contato{padding:52px 5%;border-radius:28px;background:#ffeb00;color:#11170d}
#contato:before,#contato:after{display:none}
#contato>.eyebrow{font-size:10px;letter-spacing:.1em;color:#26301c;margin:0 0 24px}
#contato .contact-heading{margin:0 0 24px}
#contato .contact-heading h2{font-size:clamp(38px,5vw,65px);line-height:1.1;letter-spacing:-.055em;margin:0}
#contato .contact-heading em{color:#11170d}
#contato .contact-heading>span{display:none}
#contato .contact-bottom{align-items:center;gap:25px}
#contato .contact-bottom>p{font-size:16px;line-height:1.7;max-width:340px;color:#26301c}
#contato .contact-bottom .button{background:#11170d;color:#fff;border:0;padding:20px 26px;font-size:17px;gap:45px;min-height:62px;width:auto;white-space:nowrap;box-shadow:none}
#contato .contact-bottom .button:hover{background:#29321d;transform:translateY(-2px)}
#contato .contact-social{margin-top:35px;padding-top:22px;gap:22px;font-size:13px;color:#26301c}
#contato .contact-social>span{display:none}
#contato .contact-social small{display:none}
@media(max-width:650px){#contato{padding:30px 24px;border-radius:24px}#contato>.eyebrow{font-size:9px;line-height:1.7;margin-bottom:22px}#contato .contact-heading h2{font-size:39px}#contato .contact-bottom{align-items:stretch;gap:22px}#contato .contact-bottom>p{font-size:15px}#contato .contact-bottom .button{width:100%;justify-content:space-between;font-size:17px;padding:20px 22px}#contato .contact-social{margin-top:27px;font-size:13px;gap:25px}}

/* Direct handoff from the hero to the work. */
.home-portfolio{border-top:1px solid var(--line);padding-top:65px}
@media(max-width:650px){.home-portfolio{padding-top:44px}}

/* One portfolio interaction and image geometry at every breakpoint. */
.spotlight-entry{position:absolute;z-index:3;left:18px;right:18px;bottom:18px;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-radius:30px;background:#10150ff5;color:#fff;font-size:14px;border:1px solid #ffffff40}
.spotlight-entry b{display:grid;place-items:center;background:#ffeb00;color:#111;width:32px;height:32px;border-radius:50%;font-size:21px}
.spotlight-art{padding-bottom:85px}
.portfolio-dialog[open]{display:flex;flex-direction:column;width:min(1180px,96vw);max-height:96svh;padding:22px;background:var(--bg);border-radius:16px}
.portfolio-dialog .portfolio-dialog-top{flex-shrink:0;align-items:flex-start;margin-bottom:18px}
.portfolio-dialog .portfolio-close{position:static;flex-shrink:0;min-width:44px;min-height:44px}
.portfolio-dialog .portfolio-canvas{flex-shrink:0;min-height:0;max-width:100%;margin:0 auto;border-radius:5px;background:#121512;transition:none}
.portfolio-dialog .portfolio-canvas img{background:#121512;object-fit:contain}
.portfolio-dialog .portfolio-dialog-bottom{flex-shrink:0;justify-content:center;padding-top:8px}
.portfolio-dialog .portfolio-dialog-bottom a{display:none}
.portfolio-dialog .portfolio-story{font-size:13px;line-height:1.6;margin:8px 0 0}
.portfolio-dialog .portfolio-position{min-width:65px;text-align:center}
.portfolio-dialog .portfolio-split[hidden],.home-project[hidden],.portfolio-more[hidden]{display:none!important}
.portfolio-dialog .portfolio-load-status:empty{display:none}
.portfolio-dialog .portfolio-drag-hint{font-size:11px;bottom:10px}
@media(max-width:650px){.spotlight-entry{left:12px;right:12px;bottom:12px;padding:12px 15px;font-size:13px}.spotlight-art{padding-bottom:77px}.portfolio-dialog[open]{width:100vw;max-width:100vw;max-height:100svh;height:100svh;margin:0;border:0;border-radius:0;padding:18px 12px;justify-content:center}.portfolio-dialog .portfolio-dialog-top{margin-bottom:18px}.portfolio-dialog .portfolio-dialog-top h2{font-size:20px}.portfolio-dialog .portfolio-story{font-size:12px}.portfolio-dialog .portfolio-dialog-bottom{gap:12px;margin-top:20px}.portfolio-dialog .portfolio-dialog-bottom button{font-size:13px;padding:12px 15px}.portfolio-dialog .portfolio-corner{font-size:10px;padding:6px 8px}.portfolio-dialog .portfolio-divider b{width:44px;height:44px}}
