:root{--paper:#fafaf8;--ink:#161616;--muted:#666661;--line:#d9d9d3;--yellow:#f2c429;--red:#bc0037;--gutter:clamp(1.25rem,4.1vw,5rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6.5rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}button,a,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:3px solid var(--red);outline-offset:6px}section[id],details[id]{scroll-margin-top:6rem}.section-pad{padding-left:var(--gutter);padding-right:var(--gutter)}.skip-link{position:fixed;left:1rem;top:-5rem;background:var(--ink);color:white;padding:1rem;z-index:100}.skip-link:focus{top:1rem}.eyebrow{text-transform:uppercase;font-size:.875rem;line-height:1.5;font-weight:600;letter-spacing:.065em}.header{height:6rem;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:2rem;background:rgba(250,250,248,.96);position:sticky;top:0;z-index:20}.brand{width:10rem;flex-shrink:0}.brand img{width:100%;height:auto}.desktop-nav{display:flex;gap:2.25rem;font-size:.9375rem}.desktop-nav a{padding:.75rem 0;position:relative}.desktop-nav a::after{content:"";height:1px;background:var(--ink);width:0;position:absolute;left:0;bottom:.4rem;transition:width .2s}.desktop-nav a:hover::after{width:100%}.header-contact{font-size:.9375rem;display:flex;align-items:center;gap:2rem;padding:.75rem 0;border-bottom:1px solid var(--ink)}.header-contact span{font-size:1.5rem}.menu-toggle,.mobile-nav{display:none}.hero{padding-top:2.25rem;overflow:hidden}.hero-topline{display:flex;align-items:center;justify-content:space-between;gap:2rem}.hero-topline .eyebrow::before{content:"";display:inline-block;width:.55rem;height:.8rem;transform:skewY(-20deg);background:var(--red);margin-right:.75rem}.edition{font-size:.875rem;color:var(--muted)}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem;min-height:39rem;align-items:center}.hero-copy{position:relative;z-index:2;padding:2rem 0 3rem}.hero h1{font-size:clamp(3rem,6.9vw,8.5rem);font-weight:900;line-height:.98;letter-spacing:-.06em}.hero h1 span{color:var(--red);display:inline-block;position:relative}.hero h1 span::after{content:"";position:absolute;bottom:-.06em;left:0;width:97%;height:.085em;background:var(--yellow);z-index:-1;transform:rotate(-2deg)}.hero-description{font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.55;max-width:33rem;margin:2.25rem 0 1.8rem}.button{min-height:3.6rem;display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;padding:1rem 1.3rem;font-size:.9375rem;transition:background .2s,transform .2s}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:var(--red);transform:translateY(-2px)}.button span{font-size:1.5rem;line-height:1}.hero-visual{position:relative;align-self:stretch;isolation:isolate;display:flex;justify-content:center;align-items:center;min-width:0}.yellow-disc{position:absolute;z-index:-1;width:93%;aspect-ratio:1;border-radius:50%;background:var(--yellow);top:20%}.character{width:min(100%,29rem);height:35rem;object-fit:contain;mix-blend-mode:multiply;transform:rotate(-5deg);transition:transform .6s ease}.hero-visual:hover .character{transform:rotate(0deg) translateY(-.5rem)}.hero-visual figcaption{position:absolute;left:10%;right:0;bottom:1.75rem;display:flex;justify-content:space-between;gap:1rem;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.hero-visual figcaption span:last-child{color:var(--muted)}.hero-bottom{display:flex;justify-content:space-between;padding:1.4rem 0;border-top:1px solid var(--line);font-size:.875rem}.hero-bottom>a{display:flex;gap:2rem}.hero-bottom>a:hover{color:var(--red)}.discipline-strip{background:var(--yellow);padding:1.7rem var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:1.25rem;flex-wrap:wrap;font-size:clamp(1rem,1.7vw,1.6rem);font-weight:800;letter-spacing:-.02em}.discipline-strip i{font-size:1.65rem;color:var(--red);font-style:normal}.projects,.services,.formats{padding-top:6.5rem;padding-bottom:6.5rem}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:3rem;margin-bottom:3.25rem}.section-heading .eyebrow{margin-bottom:1.5rem;color:var(--muted)}h2{font-size:clamp(2.2rem,4vw,4.7rem);font-weight:700;letter-spacing:-.045em;line-height:1.06}.heading-note{font-size:1rem;line-height:1.55;color:var(--muted);padding-bottom:.35rem}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem;align-items:start}.project-card-offset{margin-top:7rem}.project-image{display:block;position:relative;overflow:hidden;background:#e9e9e9}.project-image>img{width:100%;aspect-ratio:1.5;object-fit:cover;transition:transform .6s ease}.project-image:hover>img{transform:scale(1.04)}.image-tag{position:absolute;top:1.1rem;left:1.1rem;padding:.5rem .65rem;background:var(--paper);font-size:.75rem}.project-open{position:absolute;bottom:1rem;right:1rem;background:var(--paper);width:2.75rem;height:2.75rem;display:grid;place-items:center;font-size:1.4rem;border-radius:50%;transition:background .2s}.project-image:hover .project-open{background:var(--yellow)}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.2rem}.project-caption h3{font-size:1.8rem;letter-spacing:-.04em}.project-caption>span{font-size:.875rem;color:var(--muted);text-align:right}.project-description{font-size:1rem;line-height:1.55;color:var(--muted);margin-top:.75rem;max-width:35rem}.project-gallery{border-bottom:1px solid var(--line);margin-top:.5rem}.project-gallery summary{font-size:.9375rem;padding:1rem 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none}.project-gallery summary span{font-size:1.5rem;font-weight:400}.project-gallery[open] summary span{transform:rotate(45deg)}summary::-webkit-details-marker{display:none}.gallery-content{display:grid;gap:1rem;padding-bottom:1.5rem}.gallery-content img{width:100%}.gallery-content figcaption{font-size:.8125rem;color:var(--muted);padding-top:.5rem}.project-index{border-top:1px solid var(--line);margin-top:5rem;padding-top:1.75rem;display:grid;grid-template-columns:1fr 3fr;gap:2rem}.project-index>.eyebrow{color:var(--muted)}.project-index-list{display:flex;gap:2rem 3rem;flex-wrap:wrap;justify-content:space-between}.project-index-list>span{font-size:1.3rem;font-weight:700}.project-index-list small{display:block;font-size:.8125rem;font-weight:400;line-height:1.6;color:var(--muted);margin-top:.5rem}.services{background:#f0f0ec}.service-list{border-top:1px solid #bfbfba}.service{border-bottom:1px solid #bfbfba}.service summary{display:grid;grid-template-columns:4rem 1fr 2rem;align-items:center;gap:1rem;padding:1.7rem 0;cursor:pointer;list-style:none}.service-no{font-size:.875rem;color:var(--muted)}.service h3{font-size:clamp(1.45rem,2.65vw,2.9rem);font-weight:500;letter-spacing:-.04em}.service-mark{font-size:2.5rem;font-weight:300;line-height:1;text-align:center}.service[open] .service-mark{transform:rotate(45deg);color:var(--red)}.service summary:hover h3{color:var(--red)}.service-content{display:grid;grid-template-columns:1.3fr 1fr;gap:4rem;margin-left:5rem;padding:.25rem 3rem 2rem 0;font-size:1rem;line-height:1.6}.service-content p{max-width:38rem;color:#51514d}.service-content ul{margin:0;padding-left:1.1rem}.service-content li{padding-bottom:.3rem}.service-content li::marker{color:var(--red)}.studio{background:var(--ink);color:var(--paper);padding-top:6rem;padding-bottom:5rem}.studio-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem 6rem}.studio-intro>.eyebrow{grid-column:1/-1;color:#a9a9a3}.studio h2{font-size:clamp(2.8rem,5.8vw,7rem)}.studio h2 span{color:var(--yellow)}.studio-copy{padding-top:.5rem;max-width:36rem}.studio-copy p{font-size:1.1rem;line-height:1.65;color:#bfbfb8;margin-bottom:1.3rem}.studio-copy p:first-child{font-size:1.45rem;color:var(--paper);line-height:1.45;letter-spacing:-.02em}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:5rem;border-top:1px solid #454541;padding-top:2rem}.approach-grid>div>span{font-size:.8125rem;color:#a9a9a3}.approach-grid h3{font-size:1.4rem;letter-spacing:-.035em;margin:1.5rem 0 .8rem;font-weight:500}.approach-grid p{font-size:.9375rem;line-height:1.6;color:#a9a9a3;max-width:18rem}.format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.format-grid article{padding:2rem;border:1px solid var(--line);min-height:25rem;display:flex;flex-direction:column}.format-index{font-size:.875rem;margin-bottom:2.5rem}.format-grid h3{font-size:clamp(2rem,3.1vw,3.5rem);line-height:1.07;font-weight:500;letter-spacing:-.05em}.format-grid p{font-size:1rem;line-height:1.6;margin-top:1.5rem;max-width:22rem;color:#55554f}.format-foot{font-size:.8125rem;margin-top:auto;padding-top:2.5rem}.format-grid .format-yellow{background:var(--yellow);border-color:var(--yellow)}.format-yellow p{color:#424039}.contact{background:var(--yellow);padding-top:4rem;padding-bottom:2rem}.contact-top{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center;padding:2rem 0 3.5rem}.contact h2{font-size:clamp(3.5rem,8.5vw,10rem);line-height:.95;font-weight:800;letter-spacing:-.065em}.contact h2 span{color:var(--red)}.contact-invitation{justify-self:end}.contact-invitation p{font-size:1.3rem;line-height:1.5;margin-bottom:1.5rem}.contact-links{border-top:1px solid #8d782c;padding-top:1.6rem;display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;font-size:clamp(1.15rem,1.8vw,1.8rem);letter-spacing:-.02em}.contact-links a:hover{text-decoration:underline;text-underline-offset:.3rem}.footer{padding-top:1.5rem;padding-bottom:1.5rem;display:flex;justify-content:space-between;gap:1rem;font-size:.8125rem;color:var(--muted)}.footer a{color:var(--ink)}
@media(min-width:1600px){.hero-grid{min-height:45rem}.character{height:40rem;width:32rem}.hero-visual figcaption{bottom:2rem}.hero-description{margin-top:3rem}}
@media(max-width:1100px){.desktop-nav{gap:1.2rem}.header{gap:1.5rem}.hero-grid{min-height:33rem;grid-template-columns:1.6fr 1fr}.character{height:29rem}.yellow-disc{top:22%}.hero-visual figcaption{left:0;bottom:1rem}.hero-visual figcaption span:last-child{display:none}.hero-topline .edition{display:none}.project-caption{align-items:flex-start;flex-direction:column;gap:.4rem}.studio-intro{gap:2rem 3rem}.project-index{grid-template-columns:1fr}.format-grid article{padding:1.5rem}.service-content{gap:2rem}.discipline-strip{gap:1rem;font-size:1.1rem}.discipline-strip i{font-size:1.4rem}}
@media(max-width:760px){html{scroll-padding-top:5.25rem}.header{height:4.75rem;gap:1rem}.brand{width:8.25rem}.desktop-nav{display:none}.header-contact{margin-left:auto;font-size:.875rem;gap:.6rem;border-bottom:none}.header-contact span{font-size:1.25rem}.menu-toggle{display:flex;border:0;background:none;width:2.75rem;height:2.75rem;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;cursor:pointer;padding:.3rem}.menu-toggle span{width:1.4rem;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(.23rem) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-.23rem) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;position:absolute;top:4.75rem;left:0;right:0;background:var(--paper);padding:1rem var(--gutter) 1.5rem;flex-direction:column;gap:.25rem;border-bottom:1px solid var(--line);box-shadow:0 1rem 1rem #0000000a}.mobile-nav a{font-size:1.25rem;padding:.8rem 0}.hero{padding-top:1.5rem}.hero-topline .eyebrow{font-size:.75rem;letter-spacing:.04em;max-width:25rem}.hero-grid{grid-template-columns:1fr;min-height:0;gap:0}.hero-copy{padding:2.5rem 0 0}.hero h1{font-size:clamp(2rem,8.85vw,5rem)}.hero-description{font-size:1.0625rem;margin:1.7rem 0 1.5rem;max-width:28rem}.hero-visual{height:24rem;margin-top:-2rem;margin-left:25%;pointer-events:none}.character{height:25rem;width:20rem;max-width:none}.yellow-disc{width:19rem;max-width:100%;top:18%}.hero-visual figcaption{left:0;right:0;bottom:0;font-size:.75rem}.hero-visual figcaption span:last-child{display:block}.hero-bottom{margin-top:1.2rem;font-size:.8125rem;gap:1rem;align-items:center}.hero-bottom>a{gap:.7rem;text-align:right;max-width:11rem}.discipline-strip{justify-content:center;padding:1.2rem;gap:.7rem 1rem;font-size:.875rem}.discipline-strip i{font-size:1.1rem}.discipline-strip i:nth-of-type(3){display:none}.projects,.services,.formats{padding-top:4rem;padding-bottom:4rem}.section-heading{align-items:flex-start;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.section-heading .eyebrow{margin-bottom:1rem}.heading-note{font-size:.9375rem}.heading-note br{display:none}h2{font-size:clamp(2.1rem,6.3vw,3rem)}.project-grid{grid-template-columns:1fr;gap:2.8rem}.project-card-offset{margin-top:0}.project-caption{flex-direction:row;align-items:center}.project-caption h3{font-size:1.6rem}.project-caption>span{font-size:.8125rem}.project-image>img{aspect-ratio:1.45}.project-description{font-size:.9375rem}.project-index{margin-top:3rem;gap:1.5rem}.project-index-list{display:grid;grid-template-columns:1fr 1fr;gap:1.75rem 1rem}.project-index-list>span{font-size:1.15rem}.service summary{grid-template-columns:1.75rem 1fr 1.5rem;gap:.7rem;padding:1.4rem 0}.service h3{font-size:1.35rem;letter-spacing:-.035em}.service-mark{font-size:2rem}.service-content{grid-template-columns:1fr;gap:1rem;margin-left:2.45rem;padding:0 0 1.6rem;font-size:.9375rem}.studio{padding-top:4rem;padding-bottom:3.5rem}.studio-intro{grid-template-columns:1fr;gap:1.5rem}.studio h2{font-size:clamp(2.8rem,9vw,4.5rem)}.studio-copy{padding-top:.5rem}.studio-copy p:first-child{font-size:1.25rem}.studio-copy p{font-size:1rem}.approach-grid{grid-template-columns:1fr 1fr;gap:2rem 1.5rem;margin-top:2rem}.approach-grid h3{font-size:1.2rem;margin:1rem 0 .6rem}.approach-grid p{font-size:.875rem}.format-grid{grid-template-columns:1fr}.format-grid article{min-height:0;padding:1.75rem}.format-index{margin-bottom:1.5rem}.format-grid h3{font-size:2.2rem}.format-grid h3 br{display:none}.format-grid h3 br::after{content:" "}.format-grid p{max-width:none;margin-top:1rem}.format-foot{padding-top:1.5rem}.contact{padding-top:3rem}.contact-top{grid-template-columns:1fr;gap:2rem;padding:1.75rem 0 2.5rem}.contact h2{font-size:clamp(4rem,15vw,7rem)}.contact-invitation{justify-self:start}.contact-invitation p{font-size:1.125rem}.contact-links{flex-direction:column;gap:1.25rem;font-size:1.3rem}.footer{font-size:.75rem;flex-wrap:wrap;gap:1.25rem}.footer>span:nth-child(2){display:none}.desktop-break{display:none}}
@media(max-width:370px){.header-contact{font-size:.75rem}.brand{width:7rem}.header{gap:.5rem}.hero-visual{margin-left:16%}.hero-visual figcaption span:last-child{display:none}.project-caption{flex-direction:column;align-items:flex-start}.approach-grid{grid-template-columns:1fr}.service h3{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.character{transform:none}.hero-visual:hover .character{transform:none}}

/* Long copy stays within its column when browser text size is increased. */
h1,h2,h3,.eyebrow,.contact-links a{overflow-wrap:anywhere}.hero-copy,.studio-copy,.format-grid article,.service-content>*{min-width:0}

/* Client-facing scope picker and restrained motion. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.page-progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;z-index:50;pointer-events:none}.hero-actions{display:flex;align-items:center;gap:1.75rem;flex-wrap:wrap}.text-link{font-size:.9375rem;text-underline-offset:.3rem;padding:.75rem 0}.text-link:hover{text-decoration:underline}.hero-description{max-width:34rem}.partners{padding:2.75rem 0 2.5rem;border-bottom:1px solid var(--line);overflow:hidden}.partners-heading{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:2rem}.partners-heading h2{font-size:.875rem;line-height:1.5;letter-spacing:.065em;text-transform:uppercase;font-weight:600;color:var(--muted)}.motion-control{border:1px solid var(--line);background:transparent;font-size:.8125rem;padding:.65rem .85rem;cursor:pointer;min-height:2.75rem;white-space:nowrap}.motion-control:hover{border-color:var(--ink)}.partner-marquee{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.partner-track{display:flex;width:max-content;animation:partner-scroll 42s linear infinite;will-change:transform}.partner-group{list-style:none;display:flex;align-items:center;gap:3rem;padding:0 3rem 0 0;margin:0;flex-shrink:0}.partner-group li{width:10rem;min-height:4rem;display:flex;align-items:center;justify-content:center;text-align:center}.partner-name{font-size:1.7rem;line-height:1.05;font-weight:700;letter-spacing:-.035em;white-space:nowrap}.partner-marquee:hover .partner-track,.partner-marquee:focus-within .partner-track{animation-play-state:paused}.partner-group img{max-width:10rem;max-height:3.5rem;width:auto;height:auto;filter:grayscale(1)}
.solution-finder{display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:start}.solution-options fieldset{border:0;padding:0;margin:0;min-width:0}.solution-options legend{font-size:.875rem;line-height:1.5;color:var(--muted);margin-bottom:1.25rem;padding:0}.task-options{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.task-option{position:relative;display:flex;flex-direction:column;min-height:10rem;gap:.75rem;border:1px solid #c8c8c1;padding:1.5rem 1.2rem;cursor:pointer;transition:background .22s,border-color .22s,transform .22s}.task-option:hover{border-color:var(--ink);transform:translateY(-3px)}.task-option:has(input:checked){background:var(--yellow);border-color:var(--yellow)}.task-option input,.scope-switch input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.task-option:has(input:focus-visible),.scope-switch label:has(input:focus-visible){outline:3px solid var(--red);outline-offset:3px}.task-name{font-size:1.25rem;line-height:1.2;font-weight:700;letter-spacing:-.035em;padding-right:1.5rem}.task-description{font-size:.875rem;line-height:1.5;color:#585852}.task-arrow{position:absolute;top:1.2rem;right:.9rem;font-size:1.25rem;opacity:.4;transition:transform .2s,opacity .2s}.task-option:has(input:checked) .task-arrow{opacity:1;transform:rotate(45deg)}.solution-options .scope-options{margin-top:2rem}.scope-switch{display:flex;border:1px solid #c8c8c1;padding:.3rem;width:fit-content;max-width:100%;gap:.25rem}.scope-switch label{position:relative;cursor:pointer}.scope-switch span{display:block;padding:.85rem 1.15rem;font-size:.9375rem;line-height:1.3}.scope-switch input:checked+span{background:var(--ink);color:var(--paper)}.scope-note{font-size:.875rem;line-height:1.6;color:var(--muted);max-width:33rem;margin-top:1rem}.solution-panel{background:var(--paper);padding:2.25rem;min-width:0;border-top:4px solid var(--red)}.solution-panel .eyebrow{font-size:.8125rem;color:var(--red);margin-bottom:1.25rem}.solution-panel h3{font-size:clamp(1.6rem,2.6vw,2.8rem);line-height:1.1;letter-spacing:-.04em}.solution-panel #solution-description{font-size:1rem;line-height:1.6;color:#5b5b55;margin-top:1.15rem}.solution-panel h4{font-size:.875rem;margin:1.5rem 0 .75rem;font-weight:700}.solution-panel ul{list-style:none;padding:0;margin:0;font-size:.9375rem;line-height:1.6}.solution-panel li{position:relative;padding-left:1.35rem;margin-bottom:.65rem}.solution-panel li::before{content:"+";position:absolute;left:0;color:var(--red);font-weight:700}.solution-input{border-top:1px solid var(--line);margin-top:1.5rem}.solution-input p{font-size:.875rem;line-height:1.6;color:var(--muted)}.solution-actions{margin-top:1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.solution-actions .button{width:100%;gap:1.25rem}.brief-preview{margin-top:1.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.brief-preview summary{display:flex;justify-content:space-between;gap:1rem;list-style:none;font-size:.875rem;cursor:pointer;padding:1rem 0;line-height:1.5}.brief-preview summary span{font-size:1.5rem;line-height:1}.brief-preview[open] summary span{transform:rotate(45deg)}#brief-text{width:100%;border:1px solid var(--line);resize:vertical;min-height:12rem;max-height:32rem;padding:1rem;font:inherit;font-size:.875rem;line-height:1.6;color:var(--ink);background:transparent}.copy-brief{background:transparent;border:0;border-bottom:1px solid var(--ink);padding:.75rem 0;font-size:.875rem;cursor:pointer}.copy-brief:hover{color:var(--red)}#copy-status{font-size:.8125rem;line-height:1.5;color:var(--muted);margin:.75rem 0 1rem}.service-faq{margin-top:4rem;display:grid;grid-template-columns:1fr 2fr;gap:3rem;padding-top:2rem;border-top:1px solid #c8c8c1}.service-faq h3{font-size:1.6rem;line-height:1.2;letter-spacing:-.04em;font-weight:500}.service-faq details{border-bottom:1px solid #c8c8c1}.service-faq summary{display:flex;justify-content:space-between;gap:1rem;list-style:none;font-size:1rem;line-height:1.4;cursor:pointer;padding:1.1rem 0}.service-faq summary span{font-size:1.4rem;font-weight:400}.service-faq details[open] summary span{transform:rotate(45deg)}.service-faq details p{font-size:.9375rem;line-height:1.7;color:var(--muted);padding:0 2rem 1.3rem 0}
.zoom-image{position:relative;display:block;border:0;background:transparent;padding:0;width:100%;cursor:zoom-in}.zoom-image>span{position:absolute;bottom:.75rem;right:.75rem;background:var(--paper);color:var(--ink);width:2.3rem;height:2.3rem;font-size:1.6rem;display:grid;place-items:center;border-radius:50%}.zoom-image:hover>span{background:var(--yellow)}.viewer-open{overflow:hidden}.image-viewer{width:min(92vw,75rem);max-width:none;max-height:94dvh;padding:1rem 1.5rem;border:0;background:#181818;color:var(--paper);overflow:auto}.image-viewer::backdrop{background:#000c;backdrop-filter:blur(5px)}.viewer-toolbar,.viewer-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem}.viewer-toolbar{margin-bottom:1rem;font-size:.875rem}.viewer-toolbar button,.viewer-controls button{border:1px solid #65655f;background:transparent;color:var(--paper);padding:.7rem 1rem;cursor:pointer;font-size:.875rem;min-height:2.75rem}.viewer-toolbar button:hover,.viewer-controls button:hover{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}#viewer-image{width:100%;height:65dvh;object-fit:contain}#viewer-caption{font-size:.9375rem;line-height:1.5;margin:1rem 0;color:#d4d4ce}.viewer-controls{padding-bottom:.25rem}
@keyframes partner-scroll{to{transform:translateX(-50%)}}@keyframes character-float{0%,100%{transform:translate(var(--pointer-x,0px),var(--pointer-y,0px)) rotate(-5deg)}50%{transform:translate(var(--pointer-x,0px),calc(var(--pointer-y,0px) - 12px)) rotate(-2deg)}}@keyframes hero-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes disc-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
body[data-motion=running] .character{animation:character-float 6s ease-in-out infinite}body[data-motion=running] .yellow-disc{animation:disc-breathe 6s ease-in-out infinite}body[data-motion=running] .hero h1{animation:hero-enter .7s ease both}body[data-motion=running] .hero-description{animation:hero-enter .7s .1s ease both}body[data-motion=running] .hero-actions{animation:hero-enter .7s .2s ease both}.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}body[data-motion=paused] *,body[data-motion=paused] *::before,body[data-motion=paused] *::after{animation-play-state:paused!important;transition:none!important}body[data-motion=paused] .reveal-ready{opacity:1;transform:none}body[data-motion=paused] .character{transform:none!important}.discipline-strip i{transition:transform .4s}.discipline-strip:hover i{transform:rotate(90deg)}.format-grid article{transition:transform .25s,box-shadow .25s}.format-grid article:hover{transform:translateY(-5px);box-shadow:0 .75rem 2rem #00000008}
@media(max-width:1100px){.solution-finder{gap:1.5rem}.task-option{padding:1.2rem 1rem;min-height:10.5rem}.task-name{font-size:1.1rem}.solution-panel{padding:1.75rem}.hero-actions{gap:1rem}.hero-actions .text-link{font-size:.875rem}}
@media(max-width:760px){.partners{padding:1.75rem 0}.partners-heading{margin-bottom:1.5rem;gap:1rem;align-items:flex-start}.partners-heading h2{font-size:.75rem;max-width:9rem}.motion-control{font-size:.75rem;padding:.6rem}.partner-group{gap:2rem;padding-right:2rem}.partner-group li{width:8rem;min-height:3.5rem}.partner-name{font-size:1.4rem}.solution-finder{grid-template-columns:1fr;gap:1.75rem}.task-options{gap:.6rem}.task-option{min-height:9.5rem;padding:1.2rem .8rem}.task-name{font-size:1.0625rem}.task-description{font-size:.875rem}.task-arrow{right:.6rem;top:1.1rem}.solution-panel{padding:1.5rem}.solution-panel h3{font-size:1.8rem}.scope-switch span{padding:.8rem 1rem;font-size:.875rem}.service-faq{grid-template-columns:1fr;gap:1rem;margin-top:3rem}.service-faq summary{font-size:.9375rem}.hero-actions{gap:.75rem 1.25rem}.hero-visual{margin-top:0}.image-viewer{width:96vw;padding:1rem}.viewer-toolbar button,.viewer-controls button{padding:.6rem .8rem}#viewer-image{height:55dvh}.partners .partner-marquee{mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)}}
@media(max-width:370px){.task-options{grid-template-columns:1fr}.task-option{min-height:7.5rem}.scope-switch{width:100%}.scope-switch label{flex:1}.scope-switch span{padding:.8rem .6rem;text-align:center}.solution-panel{padding:1.2rem}.hero-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.partner-track{animation:none;transform:none;will-change:auto}.partner-marquee{overflow-x:auto;mask-image:none}.partner-group[aria-hidden=true]{display:none}.partner-group{padding-left:var(--gutter)}.hero h1,.hero-description,.hero-actions,.reveal-ready{opacity:1;transform:none}.character{transform:none!important}}

body[data-motion=paused] .hero h1,body[data-motion=paused] .hero-description,body[data-motion=paused] .hero-actions{animation:none!important;opacity:1;transform:none}body[data-motion=paused] .partner-track{animation:none!important;transform:none!important;will-change:auto}body[data-motion=paused] .partner-marquee{overflow-x:auto;mask-image:none}body[data-motion=paused] .partner-group[aria-hidden=true]{display:none}body[data-motion=paused] .partner-group{padding-left:var(--gutter)}

.partner-group li{width:auto;min-width:10rem;padding:0 1rem}@media(max-width:760px){.partner-group li{width:auto;min-width:8rem;padding:0 .5rem}}
