/* Independent full-page compositions. Shared modules provide content, editing and booking. */
#surface[data-art-lab]{--al-rule:color-mix(in srgb,var(--ink) 22%,transparent);--al-soft:color-mix(in srgb,var(--ink) 66%,var(--paper));--al-pad:clamp(22px,5vw,88px);max-width:none;width:100%;margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;overflow:clip}
#surface[data-art-lab] *,#surface[data-art-lab] *:before,#surface[data-art-lab] *:after{box-sizing:border-box}
#surface[data-art-lab] h1,#surface[data-art-lab] h2,#surface[data-art-lab] h3,#surface[data-art-lab] p{margin:0}
#surface[data-art-lab] h1,#surface[data-art-lab] h2,#surface[data-art-lab] h3{font-family:var(--heading-font),'DM Sans',sans-serif;font-weight:400;letter-spacing:-.055em;line-height:1.02}
#surface[data-art-lab] p{font-size:clamp(17px,1.45vw,22px);line-height:1.6;letter-spacing:-.02em}
#surface[data-art-lab] button,#surface[data-art-lab] a{-webkit-tap-highlight-color:transparent}
#surface[data-art-lab] [hidden]{display:none!important}
#surface[data-art-lab] :focus-visible{outline:2px solid var(--accent);outline-offset:5px}
#surface[data-art-lab] main{position:relative;z-index:2;background:var(--paper)}
#surface[data-art-lab] .site-header{position:relative;inset:auto;display:flex;width:auto;max-width:none;margin:0 var(--al-pad);padding:26px 0;align-items:center;justify-content:space-between;border-bottom:1px solid var(--al-rule);z-index:20;background:none;color:var(--ink);mix-blend-mode:normal;transform:none}
#surface[data-art-lab] .site-header .brand{font:500 44px/1 'DM Sans',sans-serif;letter-spacing:-.09em;color:inherit}
#surface[data-art-lab] .site-header nav{display:flex;align-items:center;gap:34px;background:none;backdrop-filter:none;padding:0;border:0;border-radius:0}
#surface[data-art-lab] .site-header nav>a{font-size:15px;color:inherit;letter-spacing:-.02em}
#surface[data-art-lab] .site-header .action{background:var(--ink);color:var(--paper);border:0;padding:13px 20px;min-width:0;border-radius:2px;min-height:0;font-size:15px;gap:28px}
#surface[data-art-lab] .site-header nav .action span{font-size:22px}
#surface[data-art-lab] .al-hero{height:auto;min-height:0;padding:0;overflow:visible;background:var(--paper);color:var(--ink)}
.al-art{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 60% 70%,#f3ba86,#b74922 45%,#e8cec0 78%);width:100%;height:100%}
.al-art[data-art-shader=metal]{background:radial-gradient(ellipse at 60% 45%,#dfb78a,#72513b 35%,#24231e 72%)}
.al-art canvas{width:100%!important;height:100%!important;display:block;position:absolute;inset:0}
#surface[data-art-grain=true]:after{content:'';position:fixed;inset:0;z-index:40;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}
#surface[data-art-lab] .al-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ink);color:var(--paper);padding:10px 10px 10px 24px;min-height:62px;border:1px solid var(--ink);border-radius:2px;font-size:16px;line-height:1.2;position:relative;overflow:hidden;width:fit-content;transition:background .3s,color .3s}
.al-button>span{position:relative;z-index:1}.al-button>i{display:grid;place-items:center;width:40px;height:40px;font-style:normal;font-size:28px;border:1px solid color-mix(in srgb,currentColor 30%,transparent);transition:transform .45s,background .3s}
#surface[data-art-lab] .al-button:hover{background:var(--accent);border-color:var(--accent);color:var(--paper)}.al-button:hover>i{transform:rotate(45deg);background:color-mix(in srgb,currentColor 10%,transparent)}
.al-sienna-opening{padding-top:70px}
#surface[data-art-lab] .al-sienna-opening h1{font-size:clamp(60px,7.65vw,142px);max-width:1300px;margin:0 var(--al-pad);letter-spacing:-.065em;line-height:1.03}
.al-headline-line{display:block}.al-headline-last{max-width:12em;color:var(--accent)}
.al-opening-bottom{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin:38px var(--al-pad) 54px}
.al-opening-bottom p{max-width:580px}.al-opening-bottom .al-button{flex:none}
.al-expand-wrap{height:clamp(400px,46vw,740px);position:relative;width:100%;overflow:hidden;background:var(--paper)}
.al-expand-slot{position:absolute;width:42%;height:68%;left:29%;top:16%;border-radius:50% 50% 0 0;overflow:hidden;transform-origin:center}
.al-expand-wrap.al-open .al-expand-slot{width:100%;height:100%;left:0;top:0;border-radius:0}
.al-expand-word{position:absolute;left:4%;right:4%;top:4%;font:500 31vw/.8 'DM Sans',sans-serif;letter-spacing:-.095em;text-align:center;pointer-events:none;color:#fff7e9;mix-blend-mode:soft-light}
.al-noir-opening{position:relative;min-height:780px;padding:72px var(--al-pad) 90px;display:grid;grid-template-columns:1.05fr 1fr;column-gap:7%;align-items:start}
#surface[data-art-lab] .al-noir-opening h1{font-size:clamp(66px,9vw,170px);line-height:.96;position:relative;z-index:2;letter-spacing:-.075em}
.al-noir-opening h1 span{display:block}.al-noir-opening h1 span+span{font-family:'Instrument Serif',serif;font-style:italic;color:var(--accent);letter-spacing:-.055em}
.al-noir-window{grid-column:2;grid-row:1/3;height:580px;position:relative;overflow:hidden;border-radius:48% 48% 0 0}.al-noir-window .al-art{height:120%;top:-10%}
.al-window-line{position:absolute;inset:20px;border:1px solid #f8d6aa44;border-radius:inherit;pointer-events:none}
.al-hero-intro{grid-column:1;margin-top:42px;max-width:470px}.al-hero-intro .al-button{margin-top:30px}
#surface[data-art-lab] .al-section-head{display:grid;grid-template-columns:1.2fr .7fr;gap:12%;align-items:end;margin-bottom:75px}
#surface[data-art-lab] .al-section-head h2{font-size:clamp(42px,5.1vw,88px);max-width:14ch}
#surface[data-art-lab] .al-section-head p{color:var(--al-soft);max-width:440px}
#surface[data-art-lab] .al-services{padding:120px var(--al-pad) 60px;position:relative}
.al-service-layout{display:flex;flex-direction:column;gap:28px}
#surface[data-art-lab] .al-service{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:7%;min-height:440px;align-items:center;padding:54px;background:color-mix(in srgb,var(--paper) 94%,var(--ink));overflow:hidden;border-top:1px solid var(--al-rule)}
#surface[data-art-lab=sienna] .al-service-agents{background:#e9d5bf}#surface[data-art-lab=sienna] .al-service-workflows{background:#d7dfcc}#surface[data-art-lab=sienna] .al-service-knowledge{background:#e6dfd7}#surface[data-art-lab=sienna] .al-service-strategy{background:#e9c2a4}
#surface[data-art-lab] .al-service-copy h3{font-size:clamp(42px,4.4vw,76px);margin-bottom:25px}
.al-service-copy p{max-width:520px}.al-service-link{margin-top:32px;border:0;border-bottom:1px solid currentColor;padding:10px 0;display:inline-flex;gap:28px;align-items:center;background:none;color:inherit;font-size:16px}.al-service-link i{font-size:25px;font-style:normal;transition:transform .3s}.al-service-link:hover i{transform:translate(4px,-4px)}
.al-service-art{height:300px;display:flex;align-items:center;justify-content:center;perspective:1000px;position:relative;isolation:isolate;min-width:0}
#surface[data-art-lab] [data-al-services=portfolio] .al-service-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px 8%;align-items:start}
#surface[data-art-lab] [data-al-services=portfolio] .al-service{display:flex;flex-direction:column-reverse;align-items:stretch;background:none;padding:0;border:0;gap:32px;min-height:0}
#surface[data-art-lab] [data-al-services=portfolio] .al-service:nth-child(even){margin-top:135px}
#surface[data-art-lab] [data-al-services=portfolio] .al-service-art{background:color-mix(in srgb,var(--paper) 94%,var(--accent));padding:45px;height:350px;border:1px solid var(--al-rule);border-radius:1px}
#surface[data-art-lab] [data-al-services=portfolio] .al-service-copy h3{font-size:44px}
#surface[data-art-lab] [data-al-services=rows] .al-service{background:none;padding:35px 0;min-height:0;display:block;border-top:1px solid var(--al-rule)}
[data-al-services=rows] .al-service-art{display:none!important}[data-al-services=rows] .al-service-copy{display:grid;grid-template-columns:1fr 1fr;gap:24px}[data-al-services=rows] .al-service-link{grid-column:2;width:fit-content;margin:0}
#surface[data-art-lab] .al-approach{padding:120px var(--al-pad);position:relative}
.al-process{position:relative;display:flex;flex-direction:column;gap:50px}.al-process-step{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;min-height:260px}.al-process-step:nth-child(2){grid-template-columns:1.2fr .8fr}.al-process-step:nth-child(3){grid-template-columns:.8fr 1.2fr}.al-process-step>div:last-child{max-width:560px}
#surface[data-art-lab] .al-process-step h3{font-size:clamp(35px,3.8vw,60px);margin-bottom:24px}
.al-process-art{position:relative;width:170px;height:170px;margin:auto;border:1px solid var(--al-rule);border-radius:50%}.al-process-art[data-al-step="1"]{width:230px;height:160px;border-radius:0}.al-process-art[data-al-step="2"]{width:170px;height:200px;border-radius:85px 85px 0 0}.al-process-traveller{position:absolute;inset:0;z-index:2;border-radius:inherit}.al-process-symbol{position:absolute;inset:0;display:grid;place-items:center;font:72px/1 'DM Sans';color:var(--accent);opacity:.3}
#surface[data-art-lab] .al-examples{padding:100px var(--al-pad) 120px;border-top:1px solid var(--al-rule)}
.al-filter{display:flex;flex-wrap:wrap;gap:14px 30px;margin:0 0 45px}.al-filter button{border:0;background:none;padding:12px 0;color:var(--al-soft);font-size:15px;border-bottom:1px solid transparent;display:flex;gap:15px;align-items:center}.al-filter button[aria-pressed=true]{color:var(--ink);border-color:var(--ink)}.al-filter button i{font-style:normal;opacity:0}.al-filter button[aria-pressed=true] i,.al-filter button:hover i{opacity:1}
.al-work-index{display:grid;grid-template-columns:1fr 1fr;gap:0 7%}.al-work{display:grid;grid-template-columns:1fr 30px;gap:18px;border:0;border-top:1px solid var(--al-rule);text-align:left;padding:30px 0 40px;background:none;color:inherit;transition:color .3s;min-width:0}.al-work-name{font-size:clamp(26px,2.5vw,43px);line-height:1.1;letter-spacing:-.04em;overflow-wrap:normal}.al-work-summary{grid-row:2;color:var(--al-soft);font-size:16px;line-height:1.6;max-width:490px}.al-work>i{grid-column:2;grid-row:1/3;font-style:normal;font-size:30px;transition:transform .4s}.al-work:hover{color:var(--accent)}.al-work:hover>i{transform:translate(4px,-4px)}
[data-al-examples=list] .al-work-index{grid-template-columns:1fr}[data-al-examples=list] .al-work{grid-template-columns:1fr 1fr 35px}[data-al-examples=list] .al-work-summary{grid-row:1;grid-column:2}[data-al-examples=list] .al-work>i{grid-column:3}
#surface[data-art-lab] #project{padding:110px var(--al-pad);border-top:1px solid var(--al-rule);background:var(--paper);color:var(--ink)}
#surface[data-art-lab] #project h2{font-size:clamp(44px,5.4vw,90px);line-height:1.03;letter-spacing:-.055em}
#surface[data-art-lab] .sa-enquiry-layout:not(.is-booking){grid-template-columns:1fr 1fr;gap:8%}
#surface[data-art-lab] .sa-enquiry-form{background:transparent;box-shadow:none;border:0;padding:0}
#surface[data-art-lab] .sa-enquiry-form input,#surface[data-art-lab] .sa-enquiry-form textarea{border-radius:0}
#surface[data-art-lab] .al-footer{padding:85px var(--al-pad) 25px;background:var(--ink);color:var(--paper);position:relative;isolation:isolate;overflow:hidden}
.al-footer-light{position:absolute;inset:0;z-index:-1;opacity:.18;pointer-events:none}.al-footer-top{display:grid;grid-template-columns:1.3fr .7fr;gap:14%;align-items:end}.al-footer-top>div p{margin-bottom:24px!important}
#surface[data-art-lab] .al-footer h2{font-size:clamp(50px,6vw,104px);max-width:13ch}
#surface[data-art-lab] .al-footer .al-button{background:var(--paper);color:var(--ink);border-color:var(--paper)}
#surface[data-art-lab] .al-wordmark{font:500 31vw/.8 'DM Sans',sans-serif;letter-spacing:-.09em;margin:90px -1vw 25px;height:26vw;max-height:none;min-height:0;position:relative;color:var(--paper)}
#surface[data-art-lab] .footer-end{border-top:1px solid #ffffff33;margin:35px 0 0;padding:24px 0 0;color:inherit;gap:20px;display:flex;justify-content:space-between;font-size:13px;position:relative}
#surface[data-art-lab] .footer-end .brand{display:none}
#surface[data-art-lab=noir] .al-footer{background:#c9a483;color:#171714}#surface[data-art-lab=noir] .al-footer .al-wordmark{color:#171714}#surface[data-art-lab=noir] .al-footer .al-button{background:#171714;color:#f4e9db}#surface[data-art-lab=noir] .al-footer-light{opacity:.4}
@media(min-width:1800px){#surface[data-art-lab] .al-services,#surface[data-art-lab] .al-approach,#surface[data-art-lab] .al-examples,#surface[data-art-lab] #project{padding-left:max(88px,calc((100vw - 1660px)/2));padding-right:max(88px,calc((100vw - 1660px)/2))}}
@media(max-width:1000px){#surface[data-art-lab] .al-section-head{gap:7%;grid-template-columns:1.1fr 1fr}.al-noir-opening{min-height:0;column-gap:5%}.al-noir-window{height:500px}.al-service-art{height:240px}#surface[data-art-lab] .al-service{padding:35px;gap:5%}.al-workflow-visual{grid-template-columns:1fr 25px 1.2fr}.al-workflow-visual strong{font-size:22px}.al-process-step{gap:7%}.al-opening-bottom p{max-width:440px}.al-opening-bottom{gap:25px}.al-footer-top{gap:8%}}
@media(max-width:700px){#surface[data-art-lab] .site-header{padding:21px 0}#surface[data-art-lab] .site-header .brand{font-size:36px}#surface[data-art-lab] .site-header nav{display:none}#surface[data-art-lab] .menu-toggle{display:flex;color:var(--ink);border:1px solid var(--al-rule);border-radius:50%;width:44px;height:44px;padding:12px;background:none}#surface[data-art-lab] #page-menu{position:fixed;inset:0;background:var(--paper);color:var(--ink);padding:110px 24px 40px;z-index:100}#surface[data-art-lab] #page-menu a{font-size:clamp(28px,8vw,44px);color:var(--ink)}#surface[data-art-lab] .menu-toggle[aria-expanded=true]{position:fixed;right:22px;top:22px;z-index:101}
.al-sienna-opening{padding-top:42px}#surface[data-art-lab] .al-sienna-opening h1{font-size:clamp(48px,11.9vw,80px);line-height:1.03}.al-headline-last{margin-top:8px}.al-opening-bottom{display:block;margin-top:28px;margin-bottom:35px}.al-opening-bottom p{max-width:100%}.al-opening-bottom .al-button{margin-top:24px}#surface[data-art-lab] .al-button{min-height:54px;font-size:15px;padding-left:18px}.al-expand-wrap{height:310px}.al-expand-slot{width:64%;left:18%;height:80%;top:10%}.al-expand-word{top:28%;font-size:32vw}
.al-noir-opening{display:flex;flex-direction:column;padding-top:40px;padding-bottom:65px;gap:26px}.al-noir-opening h1{font-size:clamp(65px,18vw,100px)!important}.al-noir-window{width:100%;height:340px;order:3;border-radius:48% 48% 0 0}.al-hero-intro{margin:0;max-width:none}.al-hero-intro .al-button{margin-top:22px}
#surface[data-art-lab] .al-services,#surface[data-art-lab] .al-approach{padding:65px var(--al-pad)}#surface[data-art-lab] .al-section-head{display:block;margin-bottom:35px}#surface[data-art-lab] .al-section-head h2{font-size:44px;max-width:15ch}#surface[data-art-lab] .al-section-head p{margin-top:25px;max-width:100%}
#surface[data-art-lab] .al-service{display:flex;flex-direction:column;align-items:stretch;padding:28px 24px;gap:32px;min-height:0}#surface[data-art-lab] .al-service-copy h3{font-size:39px;margin-bottom:18px}.al-service-link{margin-top:20px}.al-service-art{height:245px}.al-strategy-visual{font-size:24px}.al-workflow-visual{grid-template-columns:1fr 25px 1.2fr}.al-workflow-visual strong{font-size:20px;padding:25px 14px;min-height:150px}.al-file{padding:22px}.al-file p{font-size:30px!important}
#surface[data-art-lab] [data-al-services=portfolio] .al-service-layout{display:flex;gap:55px}#surface[data-art-lab] [data-al-services=portfolio] .al-service:nth-child(even){margin-top:0}#surface[data-art-lab] [data-al-services=portfolio] .al-service-art{height:290px;padding:25px}#surface[data-art-lab] [data-al-services=portfolio] .al-service-copy h3{font-size:39px}
[data-al-services=rows] .al-service-copy{display:block}[data-al-services=rows] .al-service-link{margin-top:20px}.al-process{gap:45px}.al-process-step,.al-process-step:nth-child(2),.al-process-step:nth-child(3){grid-template-columns:88px 1fr;gap:24px;min-height:240px;align-items:start}.al-process-art,.al-process-art[data-al-step="1"],.al-process-art[data-al-step="2"]{width:80px;height:90px;margin:8px 0}.al-process-symbol{font-size:38px}#surface[data-art-lab] .al-process-step h3{font-size:32px;margin-bottom:18px}#surface[data-art-lab] .al-process-step p{font-size:16px;line-height:1.6}
#surface[data-art-lab] .al-examples,#surface[data-art-lab] #project{padding:65px var(--al-pad)}.al-filter{gap:4px 20px;margin-bottom:25px}.al-filter button{font-size:14px}.al-work-index{display:block}.al-work{width:100%;padding:26px 0;gap:14px}.al-work-name{font-size:30px}.al-work-summary{font-size:16px}[data-al-examples=list] .al-work{grid-template-columns:1fr 30px}[data-al-examples=list] .al-work-summary{grid-row:2;grid-column:1}[data-al-examples=list] .al-work>i{grid-column:2}#surface[data-art-lab] .sa-enquiry-layout:not(.is-booking){grid-template-columns:1fr;gap:35px}#surface[data-art-lab] #project h2{font-size:44px}#surface[data-art-lab] .al-footer{padding:60px var(--al-pad) 25px}.al-footer-top{display:block}#surface[data-art-lab] .al-footer h2{font-size:48px;margin-bottom:30px}#surface[data-art-lab] .al-wordmark{margin-top:60px;height:27vw}#surface[data-art-lab] .footer-end{flex-wrap:wrap;font-size:12px;gap:15px}}
@media(prefers-reduced-motion:reduce){#surface[data-art-lab] *{scroll-behavior:auto!important;transition:none!important;animation:none!important}.al-expand-slot{inset:0;width:100%;height:100%;border-radius:0}}
/* Material studies use the actual Paper shader algorithms, not schematic stand-ins. */
.al-material{position:relative;width:100%;height:100%;overflow:hidden;background:transparent}
.al-material-field{width:100%;height:100%;background:radial-gradient(ellipse at center,#d8a87e,#bc704b);position:absolute;inset:0;overflow:hidden}
.al-material-field canvas{position:absolute;inset:0;width:100%!important;height:100%!important}
.al-material-agents{border-radius:50% 50% 0 0;max-width:350px;height:340px;transform:rotate(-7deg)}
.al-material-workflows{clip-path:polygon(0 0,30% 0,30% 16%,64% 16%,64% 0,100% 0,100% 100%,70% 100%,70% 84%,36% 84%,36% 100%,0 100%);transform:rotate(5deg)}
.al-material-knowledge{border-radius:2px;transform:perspective(900px) rotateY(-14deg) rotateZ(-5deg);max-width:380px}
.al-material-strategy{border-radius:50%;max-width:310px;height:310px;aspect-ratio:1}
#surface[data-art-lab] .al-service-art{height:340px;overflow:visible}
#surface[data-art-lab] [data-al-services=chapters] .al-service{padding:65px;min-height:520px}
#surface[data-art-lab] [data-al-services=chapters] .al-service:nth-child(even) .al-service-copy{grid-column:2;grid-row:1}
#surface[data-art-lab] [data-al-services=chapters] .al-service:nth-child(even) .al-service-art{grid-column:1;grid-row:1}
#surface[data-art-lab] [data-al-services=chapters] .al-service-copy h3{font-size:clamp(50px,5.3vw,90px)}
.al-service-menu{display:flex;flex-direction:column;gap:0;margin:0}
.al-service-menu button{display:flex;justify-content:space-between;align-items:center;gap:20px;border:0;border-top:1px solid var(--al-rule);padding:25px 0;background:none;color:var(--al-soft);font-size:clamp(23px,2.5vw,38px);text-align:left;letter-spacing:-.045em;line-height:1.2}
.al-service-menu button i{font-style:normal;font-size:30px;opacity:0;transition:transform .35s}.al-service-menu button[aria-selected=true]{color:var(--ink)}.al-service-menu button[aria-selected=true] i,.al-service-menu button:hover i{opacity:1;transform:rotate(45deg)}
#surface[data-art-lab] [data-al-services=exhibit]{display:grid;grid-template-columns:.7fr 1.3fr;gap:0 9%}
#surface[data-art-lab] [data-al-services=exhibit] .al-section-head{grid-column:1/-1}
#surface[data-art-lab] [data-al-services=exhibit] .al-service{display:flex;flex-direction:column-reverse;align-items:stretch;padding:0;background:none;border:0;gap:35px;min-height:0}
#surface[data-art-lab] [data-al-services=exhibit] .al-service-copy h3{font-size:40px}
#surface[data-art-lab] [data-al-services=exhibit] .al-service-art{height:430px;background:color-mix(in srgb,var(--paper) 88%,var(--accent));overflow:hidden;padding:38px}
#surface[data-art-lab] [data-al-services=exhibit] .al-material-agents{height:400px;max-width:440px}
#surface[data-art-lab] [data-al-services=exhibit] .al-service-copy p{max-width:680px}
#surface[data-art-lab] .al-process-art{border:0;overflow:visible}
#surface[data-art-lab] .al-process-art:not(:first-child){border:0}
#surface[data-art-lab] .al-process-step{min-height:330px}
#surface[data-art-lab] .al-process-traveller{border-radius:40% 40% 2px 2px}
#surface[data-art-lab] .al-process-art{width:280px;height:270px}
#surface[data-art-lab] .al-process-art[data-al-step="1"]{width:330px;height:220px}
#surface[data-art-lab] .al-process-art[data-al-step="2"]{width:260px;height:300px}
#surface[data-art-lab=noir] .al-noir-window{border-radius:2px;height:620px}.al-noir-window .al-art{filter:brightness(.85) saturate(.65)}.al-window-line{display:none}
#surface[data-art-lab] .al-section-head h2{text-wrap:balance}
@media(max-width:1000px){#surface[data-art-lab] .al-process-art{width:220px;height:230px}#surface[data-art-lab] .al-process-art[data-al-step="1"]{width:260px;height:200px}#surface[data-art-lab] .al-process-art[data-al-step="2"]{width:220px;height:250px}#surface[data-art-lab] [data-al-services=chapters] .al-service{padding:35px}}
@media(max-width:700px){#surface[data-art-lab] .al-section-head h2{font-size:clamp(35px,9.1vw,44px);max-width:100%}#surface[data-art-lab] [data-al-services=exhibit]{display:block}.al-service-menu{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-bottom:30px}.al-service-menu button{font-size:21px;padding:18px 0;gap:10px}.al-service-menu button i{font-size:20px}#surface[data-art-lab] [data-al-services=exhibit] .al-service-art{height:280px;padding:25px}#surface[data-art-lab] [data-al-services=exhibit] .al-material-agents{height:290px}#surface[data-art-lab] [data-al-services=exhibit] .al-service-copy h3{font-size:35px}#surface[data-art-lab] [data-al-services=chapters] .al-service{padding:26px;min-height:0;gap:35px}#surface[data-art-lab] [data-al-services=chapters] .al-service-copy h3{font-size:42px}#surface[data-art-lab] .al-service-art{height:270px}.al-material-agents,.al-material-strategy{height:260px}.al-process{gap:40px}#surface[data-art-lab] .al-process-step{display:block;min-height:0}#surface[data-art-lab] .al-process-art{display:none}#surface[data-art-lab] .al-process-step:first-child .al-process-art{display:block;width:100%;height:210px;margin-bottom:35px}#surface[data-art-lab] .al-process-step h3{font-size:34px}#surface[data-art-lab] .al-process-traveller{border-radius:2px}#surface[data-art-lab=noir] .al-noir-window{height:330px}}
#surface[data-art-lab][data-art-footer=flare] .al-footer{background:#000;color:#f1e8d9}
#surface[data-art-lab][data-art-footer=flare] .al-footer-light{display:none}
#surface[data-art-lab][data-art-footer=flare] .al-wordmark{color:#f1e8d9}
#surface[data-art-lab][data-art-footer=flare] .al-footer .al-button{background:#f1e8d9;color:#171714;border-color:#f1e8d9}
/* Keep the full introduction and primary action visible in short desktop windows. */
@media(min-width:701px) and (max-height:750px){
#surface[data-art-lab=noir] .al-noir-opening{min-height:0;padding-top:34px;padding-bottom:45px;row-gap:22px;grid-template-rows:auto 1fr}
#surface[data-art-lab=noir] .al-noir-opening h1{font-size:clamp(62px,7.3vw,122px)}
#surface[data-art-lab=noir] .al-noir-window{height:430px}
#surface[data-art-lab=noir] .al-hero-intro{margin-top:0}
#surface[data-art-lab=noir] .al-hero-intro .al-button{margin-top:22px}
}

/* Floating mode removes both the display plate and the shader's opaque canvas. */
#surface[data-art-lab][data-art-frame=floating] [data-al-services] .al-service-art{background:transparent;border:0;box-shadow:none;padding:0;overflow:visible;isolation:isolate}
#surface[data-art-lab][data-art-frame=floating] [data-al-services] .al-service{background:transparent;box-shadow:none;border-radius:0}
#surface[data-art-lab][data-art-frame=floating] [data-al-services] .al-material{border:0;border-radius:0;clip-path:none;overflow:visible;background:transparent;max-width:100%;max-height:100%;width:100%;height:100%;transform:perspective(950px) rotateX(calc(var(--object-y,0)*-9deg)) rotateY(calc(var(--object-x,0)*12deg)) translate3d(calc(var(--object-x,0)*12px),calc(var(--object-y,0)*8px),0);will-change:transform}
#surface[data-art-lab][data-art-frame=floating] .al-material-field{background:none;border:0;border-radius:0;mask-image:radial-gradient(ellipse closest-side,#000 62%,transparent 99%)}
#surface[data-art-lab][data-art-frame=floating] .al-material-field:not([data-art-shader-ready=true]){background:radial-gradient(ellipse at 35% 30%,color-mix(in srgb,var(--accent) 40%,white),var(--accent) 45%,transparent 70%)}
#surface[data-art-lab][data-art-frame=floating] .al-service-art:focus-visible{outline:2px solid var(--accent);outline-offset:8px;border-radius:50%}
@media(prefers-reduced-motion:reduce){#surface[data-art-lab][data-art-frame=floating] [data-al-services] .al-material{transform:none;will-change:auto}}
/* Shared service selector: one focused surface, four fully editable explanations. */
[data-al-services=switchboard] .al-service-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:52px;border-bottom:1px solid var(--al-rule)}
[data-al-services=switchboard] .al-service-menu button{position:relative;padding:22px 28px 26px 0;border:0;background:none;text-align:left;font-size:22px;color:var(--al-soft);display:block}
[data-al-services=switchboard] .al-service-menu button::after{content:'';position:absolute;bottom:-1px;left:0;right:25px;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .3s}
[data-al-services=switchboard] .al-service-menu button[aria-selected=true]{color:inherit}
[data-al-services=switchboard] .al-service-menu button[aria-selected=true]::after{transform:scaleX(1)}
.ls-tab-summary{display:block;font-size:14px;line-height:1.5;letter-spacing:0;margin-top:15px;max-width:24ch;color:var(--al-soft)}
[data-al-services=switchboard] .al-service-menu i{position:absolute;top:22px;right:25px;font-size:16px}
[data-al-services=switchboard] .al-service-layout{display:block}
[data-al-services=switchboard] .al-service{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;border:0;padding:0;min-height:440px}
[data-al-services=switchboard] .al-service[hidden]{display:none!important}
[data-al-services=switchboard] .al-service-copy h3{font-size:40px;letter-spacing:-.04em}
[data-al-services=switchboard] .al-service-copy>p{font-size:18px;line-height:1.7;max-width:45ch;margin:22px 0}
[data-al-services=switchboard] .al-service-art{height:410px}
.ls-flow{margin:25px 0 30px;font-size:14px;border-top:1px solid var(--al-rule)}
.ls-flow>div{display:grid;grid-template-columns:.85fr 1.15fr;gap:15px;padding:14px 0;border-bottom:1px solid var(--al-rule)}
.ls-flow dt{font-weight:500}.ls-flow dd{margin:0;color:var(--al-soft);line-height:1.5}
@media(max-width:700px){[data-al-services=switchboard] .al-service-menu{grid-template-columns:1fr 1fr;gap:0 20px;margin-bottom:28px}[data-al-services=switchboard] .al-service-menu button{font-size:18px;padding:18px 20px 20px 0}[data-al-services=switchboard] .al-service-menu i{right:0;top:20px}.ls-tab-summary{font-size:13px;margin-top:10px}[data-al-services=switchboard] .al-service{display:flex;flex-direction:column-reverse;gap:20px;min-height:0}[data-al-services=switchboard] .al-service-art{height:250px;width:100%}[data-al-services=switchboard] .al-service-copy h3{font-size:34px}[data-al-services=switchboard] .al-service-copy>p{font-size:17px}.ls-flow{font-size:13px}}

@media(max-width:700px){[data-al-services=switchboard]{display:flex;flex-direction:column}[data-al-services=switchboard] .al-section-head{order:-1}[data-al-services=switchboard] .al-service-menu,[data-al-services=switchboard] .al-service-layout{display:contents}[data-al-services=switchboard] .al-service-menu button{order:var(--service-order);padding:22px 25px 22px 0;border-top:1px solid var(--al-rule);font-size:21px}[data-al-services=switchboard] .al-service-menu button::after{display:none}[data-al-services=switchboard] .al-service-menu button[aria-selected=true]{font-weight:500}[data-al-services=switchboard] .al-service-menu i{top:24px}[data-al-services=switchboard] .ls-tab-summary{max-width:none;margin-top:8px}[data-al-services=switchboard] .al-service{order:var(--service-order);padding:0 0 30px}[data-al-services=switchboard] .al-service-art{height:230px}}

/* Rubik's studies: transparent stage, complete silhouettes, authored no-GPU still. */
#surface[data-art-lab] [data-cube-style],#surface[data-art-lab] [data-art-shader^="cube-"]{mask-image:none!important;background:none!important;overflow:visible;border-radius:0;transform:none}
#surface[data-art-lab] [data-cube-style] canvas{position:absolute;inset:0;width:100%!important;height:100%!important}
[data-cube-style] .cube-fallback{position:absolute;inset:23%;transform:rotate(-9deg);filter:drop-shadow(0 20px 30px #0002)}
[data-cube-style] .cube-fallback{display:none}
[data-cube-ready=fallback] .cube-fallback{display:block}
#surface[data-art-lab] [data-cube-style] canvas{opacity:0;transition:opacity .4s ease}
#surface[data-art-lab] [data-cube-ready=true] canvas{opacity:1}
@media(prefers-reduced-motion:reduce){#surface[data-art-lab] [data-cube-style] canvas{transition:none}}
.cube-face{position:absolute;display:grid;grid-template-columns:repeat(3,1fr);gap:4%;padding:4%;width:60%;height:60%;background:#27312f;border-radius:5%;box-sizing:border-box}
.cube-face i{background:#e8dfca;border-radius:16%;box-shadow:inset 2px 3px 4px #fff4,inset -2px -2px 4px #0002}
.cube-front{left:2%;top:34%;transform:skewY(20deg)}.cube-right{left:62%;top:34%;width:35%;transform:skewY(-32deg);filter:brightness(.78)}.cube-top{left:20%;top:-3%;height:38%;transform:skewX(-58deg) rotate(-12deg);filter:brightness(1.2)}
.cube-face [data-cube-color="0"]{background:#bb4934}.cube-face [data-cube-color="1"]{background:#e99f42}.cube-face [data-cube-color="3"]{background:#d9bc58}.cube-face [data-cube-color="4"]{background:#477c70}.cube-face [data-cube-color="5"]{background:#51778e}
[data-cube-style=cube-porcelain] .cube-face{background:#c8c2b6}[data-cube-style=cube-porcelain] .cube-face i{background:var(--paper)}[data-cube-style=cube-porcelain] .cube-face [data-cube-color="0"],[data-cube-style=cube-porcelain] .cube-face [data-cube-color="4"]{background:var(--accent)}
[data-cube-style=cube-glass] .cube-face{background:#9fb3bc}[data-cube-style=cube-glass] .cube-face i{filter:saturate(.35) brightness(1.3)}
[data-cube-style=cube-chrome] .cube-face{background:#323845}[data-cube-style=cube-chrome] .cube-face i{background:linear-gradient(130deg,#bec7d0,#535c72 55%,#bca8c2)}
[data-cube-style=cube-opal] .cube-face{background:#d9d0cd}[data-cube-style=cube-opal] .cube-face i{background:linear-gradient(140deg,#e9bdc9,#bdd9d4,#c8b9df)}
[data-cube-style=cube-amber] .cube-face{background:#745238}[data-cube-style=cube-amber] .cube-face i{background:linear-gradient(145deg,#eac585,#ac692f 60%,#d7a16b)}

/* One hero sculpture, with at most one different object below. */
#surface[data-art-lab] [data-art-restrained=true] .al-service{display:block;min-height:0;padding-block:36px}
#surface[data-art-lab] [data-art-restrained=true] .al-service-copy{max-width:780px}
#surface[data-art-lab] [data-art-restrained=true] .al-service-copy p{max-width:65ch}
#surface[data-art-lab] [data-art-restrained=true][data-al-services=portfolio] .al-service:nth-child(even){margin-top:0}
#surface[data-art-lab] [data-art-restrained=true] .al-secondary-art{display:flex!important;width:min(100%,460px);height:300px;margin:0 auto 56px;padding:0;border:0;background:none}
#surface[data-art-lab][data-art-cube-hero=true] .al-process-step:has(>div:only-child){display:block;min-height:0;padding-block:24px}
@media(max-width:700px){#surface[data-art-lab] [data-art-restrained=true] .al-secondary-art{height:230px;margin-bottom:32px}}

@media(max-width:700px){[data-al-services=switchboard] .al-secondary-art{order:-1}}

/* Conventional face colours also remain legible when live rendering is disabled. */
[data-cube-style="cube-realistic"] .cube-face{background:#101113}
[data-cube-style="cube-realistic"] [data-cube-color="0"]{background:#c92227}
[data-cube-style="cube-realistic"] [data-cube-color="1"]{background:#ff7218}
[data-cube-style="cube-realistic"] [data-cube-color="2"]{background:#f5f5ed}
[data-cube-style="cube-realistic"] [data-cube-color="3"]{background:#ffd523}
[data-cube-style="cube-realistic"] [data-cube-color="4"]{background:#009c56}
[data-cube-style="cube-realistic"] [data-cube-color="5"]{background:#0755c9}
