@font-face{font-family:Manrope;src:url('/brand/Manrope-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Manrope;src:url('/brand/Manrope-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('/brand/Manrope-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{
  --ink:#171A1C;--paper:#F6F3ED;--white:#fff;--accent:#F06436;
  --muted:#555D60;--line:#D6D9D5;--dark-line:#454B4A;--on-dark:#C7CECA;
  --ink-hover:#343C40;--control-line:#737C78;--accent-ink:#A53212;--line-strong:#A6ABA8;--accent-hover:#FF855D;
  --focus:var(--accent-ink);
  --space:clamp(24px,4vw,64px);--radius:0px;--header-height:104px;
  font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper);color-scheme:light;
  scroll-padding-top:calc(var(--header-height) + 24px);scrollbar-color:#969D9A var(--paper);
}
*{box-sizing:border-box}
body{margin:0;font-size:16px;line-height:1.75;font-weight:500;padding-inline:env(safe-area-inset-left) env(safe-area-inset-right)}
body.overflow{overflow:hidden}
h1,h2,h3,p,figure,dl,dd{margin:0}
h1,h2,h3{font-weight:600;line-height:1.12;letter-spacing:-.03em;text-wrap:balance;overflow-wrap:break-word}
h1{font-size:clamp(44px,5.8vw,84px)}h2{font-size:clamp(36px,4vw,58px)}h3{font-size:24px;line-height:1.3;letter-spacing:-.02em}
p{text-wrap:pretty}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;outline-offset:5px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus)}
button:active,.action:active{transform:translateY(1px)}
img{max-width:100%;height:auto;display:block}
::selection{background:var(--accent);color:var(--ink)}
[hidden]{display:none!important}
.container{width:min(100% - var(--space)*2,1320px);margin-inline:auto;min-width:0}
.container :is(div,article,figure,section,aside){min-width:0}
.section{padding-block:clamp(56px,6.3vw,92px)}
.lead{font-size:clamp(18px,1.5vw,20px);line-height:1.65;max-width:48ch}
.icon-arrow{width:22px;height:22px;flex-shrink:0}
.section-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(32px,6vw,88px);align-items:end;margin-bottom:44px}
.section-intro :is(p,.lead){max-width:48ch;color:var(--muted)}
.section-intro>h2{max-width:22ch}
.action{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:14px 20px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:4px;font-size:14px;font-weight:600;text-decoration:none;line-height:1.5;transition:background-color .16s ease-out,color .16s ease-out}
.action:hover{background:var(--ink-hover)}
.action-secondary{background:transparent;color:var(--ink);border-color:var(--control-line)}
.action-secondary:hover{background:var(--white)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:14px;font-weight:600;margin-top:18px}
.text-link:hover{text-decoration-color:var(--accent)}
/* Navigation belongs to every route,including nested experiences and capabilities. */
.site-header{--focus:var(--accent);position:sticky;top:0;z-index:50;background:var(--ink);color:var(--paper)}
.site-header>.container{min-height:104px;display:flex;align-items:center;gap:32px;padding-block:18px}
.site-logo{display:block;flex-shrink:0;margin-right:auto}.site-logo img{width:180px;height:auto}
.desktop-nav{display:flex;align-items:center;gap:32px}
.desktop-nav a{display:flex;align-items:center;min-height:44px;font-size:14px;text-decoration:none}
.desktop-nav a:is(:hover,[aria-current=page],[data-section-current]){text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px}
.menu-open{display:none;align-items:center;gap:12px;min-height:44px;padding:8px 0;font-size:14px}
.skip-link{position:fixed;top:12px;left:20px;z-index:200;transform:translateY(calc(-100% - 24px));background:var(--ink);color:var(--paper);padding:12px 20px}
.skip-link:focus{transform:none}
.nojs-nav{display:flex;flex-wrap:wrap;gap:24px;padding-block:20px}.nojs-nav a{min-height:44px}
.site-menu{visibility:hidden;opacity:0;position:fixed;inset:0;z-index:100;background:var(--paper);overflow-y:auto;overscroll-behavior:contain;padding:max(24px,env(safe-area-inset-top)) var(--space) max(32px,env(safe-area-inset-bottom));transition:opacity .18s ease-out}
.overflow .site-menu{visibility:visible;opacity:1}
.menu-top{display:flex;align-items:center;justify-content:space-between;gap:24px}.menu-top img{width:164px}
.menu-close{display:flex;align-items:center;gap:16px;min-height:48px}.menu-close span{font-size:32px}
.menu-columns{display:grid;grid-template-columns:1fr 1fr;gap:64px;max-width:1120px;margin:48px auto}
.menu-columns>div{display:flex;flex-direction:column}
.menu-columns a{min-height:56px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:clamp(20px,2.3vw,32px);line-height:1.4}
.menu-columns a:hover{color:var(--accent-ink)}
/* Shared editorial imagery and the numbered working process. */
.experience-art{overflow:hidden;background:var(--ink)}
.experience-art img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.capabilities{background:var(--white)}
.process{background:#E8E7E0;color:var(--ink);--dark-line:#B5BAB5;--on-dark:var(--muted)}
.process .section-intro p{color:var(--on-dark)}
.process-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding:0;margin:0;list-style:none;counter-reset:steps}
.process-list li{counter-increment:steps;border-top:1px solid var(--dark-line);padding-top:24px}
.process-list li::before{content:counter(steps,decimal-leading-zero);display:block;font-size:14px;color:var(--accent-ink);margin-bottom:24px;font-variant-numeric:tabular-nums}
.process-list h3{font-size:24px;max-width:20ch}.process-list p{font-size:16px;line-height:1.8;color:var(--on-dark);margin-top:18px;max-width:43ch}
/* Experience catalogue: group by the visitor's problem,with native destinations. */
.page-hero{padding-top:48px}
.experience-opening h1{max-width:22ch;font-size:clamp(48px,5.8vw,84px);line-height:1.04}
.experience-filter{display:none;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.w-mod-js .experience-filter{display:flex}
.experience-filter button{min-height:46px;padding:10px 18px;border:1px solid var(--control-line);border-radius:4px;font-size:14px}
.experience-filter button:hover{border-color:var(--ink);background:var(--white)}
.experience-filter button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.filter-count{font-size:14px;color:var(--muted);margin-bottom:28px}
/* Case studies: context,a browsable scope,then transfer to the next conversation. */
.back-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;min-height:44px;margin-bottom:28px;text-decoration:none;color:var(--muted)}
.back-link .icon-arrow{width:18px;transform:rotate(180deg)}.back-link:hover{text-decoration:underline}
.case-story-hero{--focus:var(--accent);background:var(--ink);color:var(--paper);padding-top:24px}
.case-story-hero .back-link{color:var(--on-dark)}
.case-story-opening{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center;padding-bottom:48px}
.case-story-opening h1{font-size:clamp(44px,5vw,72px);max-width:19ch;line-height:1.05}
.case-story-opening .lead{color:var(--on-dark);font-size:18px;line-height:1.75;max-width:46ch;margin-top:24px}
.share-project{display:none;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:22px;font-size:14px}
.w-mod-js .share-project{display:flex}
.share-project button{min-height:44px;padding:8px 0;text-decoration:underline;text-underline-offset:5px}
.share-project button:hover{color:var(--on-dark)}
.share-project span{color:var(--on-dark)}
.case-facts{border-top:1px solid var(--dark-line);display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:32px;padding-block:24px 28px}
.case-facts dt{font-size:12px;color:var(--on-dark);margin-bottom:8px}
.case-facts dd{font-size:14px;line-height:1.7}
.case-facts ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px}
.case-jumps{display:flex;gap:36px;align-items:center;padding-block:12px;border-bottom:1px solid var(--line)}
.case-jumps a{display:inline-flex;min-height:44px;align-items:center;font-size:14px;text-decoration:none}
.case-jumps a:hover{text-decoration:underline;text-decoration-color:var(--accent)}
.case-story-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,6vw,88px)}
.case-story-grid h2{max-width:20ch}
.case-story-grid>div>p+p{margin-top:24px;font-size:16px;line-height:1.8;color:var(--muted);max-width:58ch}
.case-system{background:var(--white)}.case-system h2{max-width:24ch}
.system-layout{display:grid;grid-template-columns:.62fr 1fr;gap:clamp(32px,6vw,88px);align-items:start;margin-top:40px}
.function-outline{position:sticky;top:calc(var(--header-height) + 24px);max-width:34ch}
.function-outline summary{cursor:pointer;min-height:48px;font-size:16px;font-weight:600;padding-block:12px}
.function-outline nav{display:flex;flex-direction:column;padding:8px 0 0}
.function-outline a{display:block;font-size:14px;line-height:1.6;text-decoration:none;padding:12px 0;border-bottom:1px solid var(--line)}
.function-outline a:hover{text-decoration:underline;text-decoration-color:var(--accent)}
.case-modules{border-top:1px solid var(--line)}
.case-modules article{padding:28px 0;border-bottom:1px solid var(--line)}
.case-modules h3{font-size:24px;max-width:28ch;line-height:1.3}
.case-modules p{color:var(--muted);font-size:16px;line-height:1.8;max-width:65ch;margin-top:14px}
.case-capabilities{display:grid;grid-template-columns:.62fr 1fr;gap:clamp(32px,6vw,88px);padding-top:32px}
.case-capabilities>p{font-size:14px;color:var(--muted)}
.case-capabilities nav{display:flex;flex-wrap:wrap;gap:8px 28px}
.case-capabilities a{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:14px;text-decoration:none}
.case-capabilities a:hover{text-decoration:underline}
.case-insight{background:var(--paper)}
.case-insight .container{border-top:1px solid var(--line-strong);padding-top:36px}
.case-insight .lead{font-size:20px;line-height:1.75}
.case-insight h3{font-size:24px;margin-top:28px;max-width:36ch;line-height:1.4}
.case-insight h3+p{font-size:16px;line-height:1.8;margin-top:14px;max-width:55ch}
.case-insight .action{margin-top:24px}
.case-more{background:var(--white)}
/* Capabilities use actual experience as context,never simulated application UI. */
.service-opening{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(32px,6vw,88px);align-items:start}
.service-opening h1{max-width:18ch;font-size:clamp(48px,6vw,88px);line-height:1.04}
.service-opening .lead{color:var(--on-dark);max-width:45ch}
.service-fit{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(32px,6vw,88px);margin-top:48px;padding-top:28px;border-top:1px solid var(--dark-line)}
.service-fit h2{font-size:24px}.service-fit p{color:var(--on-dark);font-size:16px;max-width:58ch}
.scope{background:var(--white)}
.scope-details{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,88px)}
.scope-details h3{font-size:24px;margin-bottom:18px}.scope-details p+h3{margin-top:32px}
.scope-details p,.scope-list{font-size:16px;line-height:1.8;color:var(--muted);max-width:58ch}
.scope-list{margin:0;padding-left:20px}.scope-list li{padding-left:4px}.scope-list li+li{margin-top:14px}
.capability-flow{padding-top:36px;margin-top:40px;border-top:1px solid var(--line)}
.capability-flow h2{font-size:24px;margin-bottom:24px}
.capability-flow ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.capability-flow span{font-size:14px;font-weight:600}.capability-flow p{margin-top:12px;font-size:16px;line-height:1.75;color:var(--muted);max-width:38ch}
.directory-hero h1{max-width:20ch;font-size:clamp(48px,5.8vw,84px);line-height:1.04}
.directory-jumps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}
.directory-jumps>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-top:1px solid var(--line);font-size:14px;text-decoration:none;min-height:64px}
.directory-jumps a:hover{text-decoration:underline;text-decoration-color:var(--accent)}
.catalogue{background:var(--white);padding-block:8px 40px}
.capability-row{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(32px,6vw,88px);padding:48px 0;border-bottom:1px solid var(--line)}
.capability-row h2{font-size:36px;max-width:20ch}.capability-row p{font-size:18px;line-height:1.75;max-width:51ch}
.capability-row ul{padding-left:20px;margin:24px 0;font-size:16px;line-height:1.8;color:var(--muted)}
/* About explains the working relationship before enumerating capabilities. */
.about-opening{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,88px);align-items:start}
.about-opening h1{max-width:20ch;font-size:clamp(48px,5.8vw,84px);line-height:1.04}.about-opening p+p{font-size:16px;color:var(--on-dark);margin-top:24px;max-width:51ch}
.about-opening .action{margin-top:28px}
.commitments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.commitments h3{font-size:24px;margin-bottom:18px}.commitments p{font-size:16px;line-height:1.8;color:var(--muted)}
.contact-page{min-height:60vh}.contact-page h1{max-width:19ch}.contact-page .lead{margin-top:28px}.contact-page p+p{margin-top:16px;max-width:55ch}.contact-page .action{margin-top:28px}
.site-footer{background:var(--ink);color:var(--paper);--focus:var(--accent)}
.footer-main{padding-block:64px 72px}.footer-layout{display:grid;grid-template-columns:1.05fr 1fr 1.35fr;gap:48px;align-items:start}
.footer-invite h2{font-size:clamp(40px,4.4vw,64px);line-height:1.06;letter-spacing:-.04em}.footer-invite h2 span{display:block;white-space:nowrap}
.footer-explore{display:flex;flex-direction:column}.footer-explore a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding-block:14px;border-bottom:1px solid var(--dark-line);font-size:clamp(22px,2.1vw,30px);letter-spacing:-.025em;line-height:1.25;text-decoration:none}.footer-explore a:first-child{padding-top:0;min-height:50px}
.footer-explore .icon-arrow{color:var(--accent);transition:transform .18s ease-out}.footer-explore a:hover .icon-arrow{transform:translateX(4px)}.footer-explore a:hover span{text-decoration:underline;text-underline-offset:5px}
.footer-capabilities h3{font-size:13px;font-weight:500;color:var(--on-dark);margin-bottom:18px}.footer-capabilities>div{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}.footer-capabilities a{display:flex;align-items:center;min-height:48px;font-size:14px;line-height:1.5;text-decoration:none}.footer-capabilities a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--accent)}
.footer-signature{background:var(--accent);color:var(--ink);--focus:var(--ink);padding-block:20px 32px}.footer-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.footer-meta p{font-size:13px}.footer-meta a{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:13px;text-decoration:none;white-space:nowrap}.footer-meta a:hover{text-decoration:underline}.footer-meta a span{font-size:22px}
.footer-wordmark{display:block}.footer-wordmark img{display:block;width:100%;height:auto;filter:brightness(0)}
@media(max-width:1100px) and (min-width:768px){.footer-layout{grid-template-columns:1fr 1fr;gap:40px}.footer-capabilities{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer-capabilities>div{grid-template-columns:1fr 1fr}.footer-capabilities h3{margin:14px 0 0}}
@media(max-width:767px){.footer-main{padding-block:44px 40px}.footer-layout{grid-template-columns:1fr;gap:36px}.footer-invite h2{font-size:clamp(40px,11.5vw,68px)}.footer-explore a{font-size:28px;min-height:64px}.footer-explore a:first-child{min-height:64px;padding-top:14px}.footer-capabilities>div{column-gap:24px}.footer-capabilities h3{margin-bottom:12px}.footer-signature{padding-block:16px 24px}.footer-meta{align-items:start;gap:16px;margin-bottom:20px}.footer-meta p{font-size:12px;max-width:23ch}.footer-meta a{font-size:12px;min-height:44px}.footer-wordmark{padding-block:4px}}
@media(prefers-reduced-motion:reduce){.footer-explore a:hover .icon-arrow{transform:none}}
@media(min-width:768px){.process-list h3,.commitments h3{min-height:2.6em}}
@media(max-width:1100px){
  .case-story-opening h1{font-size:44px}.case-story-opening .lead{font-size:18px}
}
@media(max-width:900px){
  .case-story-opening h1{font-size:40px}
  .system-layout,.case-capabilities{grid-template-columns:.7fr 1fr;gap:40px}
}
@media(max-width:767px){
  .site-header>.container{min-height:80px;padding-block:12px}.site-logo img{width:144px}.w-mod-js .menu-open{display:flex}.desktop-nav{display:none}
  .section{padding-block:56px}.section-intro,.case-story-opening,.case-story-grid,.service-opening,.service-fit,.scope-details,.about-opening,.capability-row{grid-template-columns:1fr;gap:28px}
  .section-intro{gap:20px;margin-bottom:32px}.section-intro .text-link{margin-top:0}.section-intro>h2{max-width:26ch}
  .process-list,.commitments{grid-template-columns:1fr;gap:32px}.process-list li{padding-top:20px}.process-list li::before{margin-bottom:16px}.process-list p{max-width:58ch;margin-top:14px}
  .page-hero{padding-top:32px}.experience-filter{gap:8px}.experience-filter button{font-size:14px;padding-inline:14px}
  .case-story-hero{padding-top:16px}.back-link{margin-bottom:24px}.case-story-opening{padding-bottom:28px}
  .case-story-opening h1{font-size:clamp(38px,8vw,52px);max-width:23ch}.case-story-opening .lead{font-size:18px;margin-top:20px}
  .case-facts{grid-template-columns:1fr 1fr;gap:20px}.case-facts>div:last-child{grid-column:1/-1}.case-facts ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
  .case-jumps{gap:16px;justify-content:space-between;padding-block:8px}.case-jumps a{font-size:14px}
  .case-story-grid{gap:24px}.case-story-grid h2{max-width:26ch}
  .system-layout,.case-capabilities{grid-template-columns:1fr;gap:24px;margin-top:28px}
  .function-outline{position:static;max-width:none}.function-outline summary{padding:12px 16px;border:1px solid var(--control-line);border-radius:4px}
  .function-outline nav{padding:12px 16px}.case-modules h3{font-size:24px}.case-modules article{padding-block:24px}
  .case-capabilities{padding-top:0}.case-insight .lead{font-size:18px}.case-insight h3{font-size:24px}
  .service-opening h1{font-size:clamp(40px,7vw,52px)}.service-opening .lead{font-size:18px}
  .service-fit{margin-top:28px;gap:14px}.service-fit h2{font-size:24px}
  .scope-details{gap:32px}.capability-flow ol{grid-template-columns:1fr;gap:24px}.capability-flow ol li{display:grid;grid-template-columns:115px 1fr;gap:20px}.capability-flow p{margin-top:0;max-width:none}
  .directory-jumps{grid-template-columns:1fr 1fr;gap:0 24px}.directory-jumps>a{font-size:14px;line-height:1.5}
  .capability-row{padding-block:36px;gap:20px}.capability-row h2{font-size:32px}.capability-row .text-link{margin-top:8px}.capability-row p{font-size:18px}
  .about-opening h1{font-size:clamp(42px,8vw,56px)}
  .menu-columns{gap:32px;margin-block:28px}.menu-columns a{font-size:20px}
}
@media(max-width:479px){
  .actions{gap:10px}.action{font-size:14px;padding:13px 16px;min-height:50px;gap:20px}
  .menu-columns{grid-template-columns:1fr;gap:28px}.menu-columns a{font-size:24px}
}
@media(max-width:359px){
  :root{--space:16px}.case-story-opening h1{font-size:36px}
  .case-jumps{gap:8px}.case-jumps a{font-size:12px}.directory-jumps>a{font-size:12px}
  .capability-flow ol li{grid-template-columns:1fr;gap:8px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Approved studio direction. A single neutral gallery is shared by every context. */
.home-hero{--focus:var(--accent);padding:60px 0 64px;background:var(--ink);color:var(--paper)}
.hero-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;align-items:center;position:relative}
.home-hero h1{font-size:clamp(76px,7.7vw,112px);line-height:1.02;letter-spacing:-.04em;font-weight:600}
.home-hero h1 span{display:block}.brand-object{color:var(--accent);padding-top:12px;transform:rotate(-10deg)}.brand-object svg{display:block;width:100%;height:auto}
.hero-bottom{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-top:52px;padding-top:28px;border-top:1px solid var(--dark-line)}
.hero-bottom>p{font-size:20px;line-height:1.6;color:var(--on-dark);max-width:48ch}
.explore{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:64px;text-decoration:none;font-size:16px;white-space:nowrap}
.explore .icon-arrow{width:64px;height:64px;padding:20px;border-radius:50%;background:var(--accent);color:var(--ink);transition:transform .2s ease-out}.explore:hover .icon-arrow{transform:rotate(45deg)}
.experience-home .section-intro h2{font-size:clamp(40px,4vw,58px)}
.experience-choices{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.experience-choice{display:grid;grid-template-columns:128px minmax(0,1fr) 24px;gap:24px;align-items:start;min-height:170px;padding-block:28px;border-top:1px solid #B5BAB5;text-decoration:none}
.experience-choice img{width:128px;height:auto;aspect-ratio:4/3;object-fit:contain;background:var(--ink)}
.experience-choice :is(h2,h3){font-size:24px;line-height:1.25;letter-spacing:-.025em}
.experience-choice p{font-size:15px;color:var(--muted);line-height:1.7;margin-top:12px;max-width:35ch}
.experience-choice>.icon-arrow{width:24px;height:24px;margin-top:3px}
.experience-choice:hover :is(h2,h3){text-decoration:underline;text-decoration-color:var(--accent-ink)}
.approach{background:#E8E7E0;padding-block:64px}.approach-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}
.approach h2{font-size:clamp(36px,3.3vw,48px)}.approach p{font-size:18px;line-height:1.8;max-width:50ch}.approach .text-link{margin-top:20px}
.service-hero,.about-hero,.directory-hero{--focus:var(--accent);background:var(--ink);color:var(--paper)}
.service-hero .back-link,.about-hero .lead,.directory-hero .section-intro .lead{color:var(--on-dark)}
.service-hero .action,.about-hero .action{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.service-hero .action:hover,.about-hero .action:hover{background:var(--accent-hover)}
.directory-jumps>a{border-color:var(--dark-line)}
.service-hero .service-fit h2{font-size:24px}.service-hero .service-opening .actions{margin-top:28px}
.experience-opening .section-intro{align-items:end}.experience-opening .experience-filter{margin-top:40px}
@media(max-width:1100px){.home-hero h1{font-size:76px}.hero-layout{grid-template-columns:1.7fr 1fr;gap:32px}.hero-bottom>p{font-size:18px}.experience-choices{column-gap:32px}.experience-choice{grid-template-columns:100px minmax(0,1fr) 20px;gap:18px}.experience-choice img{width:100px}.experience-choice :is(h2,h3){font-size:22px}}
@media(max-width:767px){
 .home-hero{padding-top:30px;padding-bottom:36px}.hero-layout{display:block}.home-hero h1{font-size:clamp(43px,10.8vw,72px);line-height:1.04;letter-spacing:-.035em}
 .brand-object{position:absolute;width:105px;right:0;bottom:-160px;padding:0;transform:rotate(-10deg)}
 .hero-bottom{display:block;margin-top:28px;padding-top:24px;border-top:0}.hero-bottom>p{font-size:17px;line-height:1.7;padding-right:126px;max-width:100%;min-height:145px}.hero-bottom>p br{display:none}
 .explore{margin-top:24px;gap:24px;font-size:16px;justify-content:space-between}.explore .icon-arrow{width:56px;height:56px;padding:16px}
 .experience-home .section-intro h2{font-size:38px}.experience-choices{grid-template-columns:1fr}
 .experience-choice{grid-template-columns:88px minmax(0,1fr) 20px;gap:18px;min-height:148px;padding-block:24px}.experience-choice img{width:88px}.experience-choice :is(h2,h3){font-size:22px}.experience-choice p{font-size:14px;margin-top:10px}.experience-choice>.icon-arrow{width:20px;height:20px}
 .approach{padding-block:48px}.approach-layout{grid-template-columns:1fr;gap:24px}.approach h2{font-size:36px}.approach p{font-size:16px}
 .experience-opening h1,.directory-hero h1{font-size:clamp(42px,8vw,56px)}
}
@media(max-width:359px){
 :root{--space:20px}.home-hero h1{font-size:38px}.brand-object{width:84px;bottom:-155px}.hero-bottom>p{padding-right:104px;font-size:16px}
 .experience-choice{grid-template-columns:72px minmax(0,1fr) 18px;gap:14px}.experience-choice img{width:72px}.experience-choice :is(h2,h3){font-size:20px}.experience-home .section-intro h2{font-size:34px}
}
@media(prefers-reduced-motion:reduce){.explore:hover .icon-arrow{transform:none}}
