/* HorizonX Liquid Glass.fig — Button 2446:23 / 30 / 36.
   Source: black 5%, blur 10, inner white 25% / 14.1, specular 304°, bevel 1.
   CSS optical translation; the original Figma GLASS renderer is not a web API.
   Only controls receive this material. Charts and editorial text keep their roles. */
html body :is(.btn,.nav__lang-toggle,.nav__burger,.floating-enquiry,.enquiry-close,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button){
 --glass-x:30%;--glass-y:0%;--glass-fill:rgb(0 0 0 / .05);
 --glass-edge:rgb(255 255 255 / .76);--glass-inner:rgb(255 255 255 / .25);
 border:1px solid #ffffff24;border-radius:999px;color:#f7f7f7;isolation:isolate;
 background:
  radial-gradient(ellipse 80% 140% at var(--glass-x) var(--glass-y),#ffffff13,transparent 70%) padding-box,
  linear-gradient(155deg,#ffffff0d,#ffffff03 42%,#0000000a 68%,#ffffff0a) padding-box,
  linear-gradient(var(--glass-fill),var(--glass-fill)) padding-box;
 box-shadow:inset 0 0 14.1px var(--glass-inner),inset 0 1px 1px #ffffff2e,inset 0 -1px 1px #ffffff1a,0 4px 10px #00000040;
 -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
 text-shadow:0 1px 3px #0009;
 transition:box-shadow 180ms ease,background-color 180ms ease,color 180ms ease,opacity 180ms ease;
}
html body :is(.btn,.nav__lang-toggle,.nav__burger,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button){position:relative}
html body :is(.btn,.nav__lang-toggle,.nav__burger,.floating-enquiry,.enquiry-close,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button)::after{
 content:"";position:absolute;inset:-1px;width:auto;height:auto;padding:1px;display:block;pointer-events:none;transform:none;border-radius:inherit;
 background:linear-gradient(304deg,var(--glass-edge),#ffffff18 20%,#ffffff0d 43%,#ffffffa6 66%,#ffffff24 85%,var(--glass-edge));
 box-shadow:none;
 -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
}
html body :is(.btn,.nav__lang-toggle,.nav__burger,.floating-enquiry,.enquiry-close,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button):hover:not(:disabled){
 --glass-fill:rgb(255 255 255 / .09);--glass-inner:rgb(255 255 255 / .32);--glass-edge:#fff;
 color:#fff;
}
html body :is(.btn,.nav__lang-toggle,.nav__burger,.floating-enquiry,.enquiry-close,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button):active:not(:disabled){
 transform:none;--glass-fill:rgb(255 255 255 / .12);
 box-shadow:inset 0 0 10px #ffffff38,inset 0 2px 5px #0004,0 2px 5px #0003;
}
html body :is(.btn,.nav__lang-toggle,.nav__burger,.floating-enquiry,.enquiry-close,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button):focus-visible{outline:2px solid #fff;outline-offset:4px}

/* Primary actions have the same transparent lens with a stronger rim. */
html body :is(.btn--glow,.enquiry-submit,.floating-enquiry){--glass-fill:rgb(255 255 255 / .07);--glass-edge:#ffffffdc;--glass-inner:#ffffff4a}
html body .btn--glow{padding-inline:26px}
html body .enquiry-submit{justify-content:center;min-height:48px}
html body .results-cta,html body .service-enquire{width:max-content;max-width:100%;min-height:46px;padding:12px 19px;justify-content:center;gap:14px;line-height:1.4;text-align:center}
html body .floating-enquiry{min-height:48px}

/* Native pressed states remain obvious in the quieter glass variants. */
html body :is(.service-groups button,.reel-views button,.case-preview-views button){
 --glass-edge:#ffffff59;--glass-inner:#ffffff1f;--glass-fill:#00000016;
 padding:10px 15px;min-height:44px;color:#c4c4c4;
}
html body :is(.service-groups button,.reel-views button,.case-preview-views button)[aria-pressed=true]{
 --glass-edge:#ffffffed;--glass-inner:#ffffff59;--glass-fill:#ffffff1a;
 color:#fff;box-shadow:inset 0 0 14.1px var(--glass-inner),inset 0 1px 1px #ffffff55,0 4px 10px #0004;
}
html body .service-explorer .service-groups{gap:8px}
html body .reel-views{gap:6px}
html body .case-preview-views{gap:8px}

/* Icon controls retain their existing icon pseudo-elements and hit targets. */
html body .service-explorer .service-return{min-width:44px;min-height:44px;padding:8px 13px;gap:10px}
html body .service-return-mark{border:0;width:24px;height:24px}
html body .service-return-mark::before,html body .service-return-mark::after{left:8px;top:11px}
html body .service-motion-slot .preview-motion-toggle{width:40px;height:44px;padding:0}
html body .preview-motion-toggle{min-height:44px;padding:10px 14px;line-height:1.4}
html body .reel-arrow{flex:0 0 42px;min-height:44px;align-self:flex-start;font-size:22px}
html body .reel-arrow:disabled{opacity:.25}
html body .enquiry-close{width:40px;height:40px;line-height:1}
html body .enquiry-submit:disabled{opacity:.45}

@media(max-width:1050px){html body .service-explorer .service-return{width:44px;padding:0}}
@media(max-width:760px){
 html body .service-explorer .service-groups{gap:5px;justify-content:stretch}
 html body .service-explorer .service-groups button{flex:1;min-width:0;padding:9px 6px;font-size:13px;letter-spacing:-.025em}
 html body .service-explorer .service-return{min-width:40px;width:40px}
 html body .hero__actions .btn--glow{padding-inline:22px}
 html body .preview-motion-toggle{font-size:10px;padding:9px 11px}
 html body .service-motion-slot .preview-motion-toggle{font-size:0}
 html body .work-heading .preview-motion-toggle{max-width:100px;text-align:center}
 html body .reel-views button{padding:9px 11px;font-size:10px;min-height:42px}
 html body .reel-arrow{flex-basis:36px;font-size:20px}
 html body .reel-hint{max-width:120px}
}
@media(max-width:360px){html body .service-explorer .service-groups button{font-size:12px;padding-inline:5px}html body .reel-hint{max-width:92px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 html body :is(.btn,.nav__lang-toggle,.nav__burger,.floating-enquiry,.enquiry-close,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button){background-color:#1b1b1b}
}
@media(prefers-reduced-motion:reduce){
 html body :is(.btn,.nav__lang-toggle,.nav__burger,.floating-enquiry,.enquiry-close,.enquiry-submit,.results-cta,.service-enquire,.service-groups button,.service-return,.preview-motion-toggle,.reel-views button,.reel-arrow,.case-preview-views button){transition:none}
}
