

@font-face {
  font-family: 'Bodoni Moda';
  font-style: italic;
  font-weight: 400 500;
  font-display: swap;
  src: url("/assets/store/bymusa/portfolio/mv8dh4but6RC83qJcLm6.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: italic;
  font-weight: 400 500;
  font-display: swap;
  src: url("/assets/store/bymusa/portfolio/mv8dh4n00AxaxKnzZ3WK.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/store/bymusa/portfolio/mv8dh4z3R0QnHrd8oASq.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/store/bymusa/portfolio/mv8dh3e70AG7it3FXW20.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face { font-family: "Bodoni Moda"; src: url("/assets/store/bymusa/portfolio/mv8dh59npY5pShBlVQSv.woff2"); font-display: swap; font-style: normal; font-weight: 500 }
@font-face { font-family: "Inter"; src: url("/assets/store/bymusa/portfolio/mv8dh5jtGpzdCN9nXENu.woff2"); font-display: swap; font-style: normal; font-weight: 400; unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family: "Inter"; src: url("/assets/store/bymusa/portfolio/mv8dh5ua04rZ2OkEG6Lh.woff2"); font-display: swap; font-style: normal; font-weight: 400; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family: "Inter"; src: url("/assets/store/bymusa/portfolio/mv8dh65flTAM2x0DXlmf.woff2"); font-display: swap; font-style: normal; font-weight: 500; unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family: "Inter"; src: url("/assets/store/bymusa/portfolio/mv8dh6hbSAj5SliH9VyM.woff2"); font-display: swap; font-style: normal; font-weight: 500; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
:root {
  --color-scheme: dark;
  --color-primary-50: #fafafa;
  --color-primary-100: #eeeeee;
  --color-primary-200: #dddddd;
  --color-primary-300: #cccccc;
  --color-primary-400: #bbbbbb;
  --color-primary-500: #aaaaaa;
  --color-primary-600: #999999;
  --color-primary-700: #777777;
  --color-primary-800: #444444;
  --color-primary-900: #111111;
  --color-primary: var(--color-primary-300);
  --color-primary-hover: var(--color-primary-50);
  --color-primary-ink:   var(--color-primary-800);
  --color-secondary: #fcebeb;
  --color-secondary-strong: #ffffff;
  --color-surface: #000000;
  --color-surface-alt: #080808;
  --color-surface-inverse: #000000;
  --color-text: #fafafa;
  --color-text-muted: #a3a3a3;
  --color-text-on-primary: #000000;
  --color-text-on-inverse: #fafafa;
  --color-border: #252525;
  --color-success:        #4ec27d;
  --color-success-soft:   #11251a;
  --color-success-strong: #8bdaa8;
  --color-success-on:     #06150c;
  --color-warning:        #e8a23b;
  --color-warning-soft:   #2a1d0c;
  --color-warning-strong: #f3c178;
  --color-warning-on:     #1a1003;
  --color-error:          #ef6257;
  --color-error-soft:     #2b1210;
  --color-error-strong:   #ffa79e;
  --color-error-on:       #1c0604;
  --color-info:           #58b6c9;
  --color-info-soft:      #0e2429;
  --color-info-strong:    #96d6e3;
  --color-info-on:        #05161a;
  --font-heading: "Bodoni Moda", Georgia, serif;
  --font-body: "Montserrat", Arial, sans-serif;
  --font-button: var(--font-body);
  --font-weight-heading: 600;
  --font-weight-body:    400;
  --font-weight-bold:    600;
  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1.0625rem;
  --text-lg:   clamp(1.125rem, 1.05rem + 0.4vw, 1.3125rem);
  --text-xl:   clamp(1.25rem, 1.1rem + 0.8vw, 1.5rem);
  --text-2xl:  clamp(1.5rem, 1.25rem + 1.4vw, 2rem);
  --text-3xl:  clamp(1.875rem, 1.4rem + 2.4vw, 2.75rem);
  --text-4xl:  clamp(2.25rem, 1.5rem + 3.8vw, 4rem);
  --text-5xl:  clamp(2.5rem, 1.5rem + 5vw, 5rem);
  --leading-tight:   1.12;
  --leading-normal:  1.65;
  --leading-display: 1.02;
  --tracking-tight:   -0.01em;
  --tracking-display: -0.02em;
  --radius-sm:   4px;
  --radius-md: 4px;
  --radius-lg:   8px;
  --radius-xl:   12px;
  --radius-full: 999px;
  --radius-panel: 4px;
  --radius-button: 4px;
  --border-width: 1px;
  --space-unit:    0.25rem;
  --section-space: clamp(4.5rem, 2rem + 6vw, 8rem);
  --container-max: 75rem;
  --shadow-sm: 0 1px 2px rgb(0 0 0 / 0.45);
  --shadow-md: 0 2px 6px rgb(0 0 0 / 0.45), 0 8px 20px rgb(0 0 0 / 0.40);
  --shadow-lg: 0 4px 12px rgb(0 0 0 / 0.45), 0 20px 48px rgb(0 0 0 / 0.55);
  --ease-out-expo:  cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-quart: cubic-bezier(0.25, 1, 0.5, 1);
  --ease-spring:    cubic-bezier(0.34, 1.4, 0.64, 1);
  --motion-easing:  var(--ease-out-expo);
  --motion-duration:      220ms;
  --motion-duration-slow: 420ms;
  --reveal-duration:       800ms;
  --reveal-duration-slow: 1000ms;
  --reveal-distance:        24px;
  --reveal-stagger:         90ms;
  --reveal-stagger-group:   90ms;
  --reveal-stagger-line:   120ms;
  --glass-surface: rgb(8 8 8 / 0.92);
  --glass-wash:    rgb(0 0 0 / 0.97);
  --glass-filter:  none;
  --shadow-button:       none;
  --shadow-button-hover: 0 8px 24px rgb(180 180 180 / 0.22);
  --btn-line-height: 1.25;
  --eyebrow-surface: transparent;
  --eyebrow-border-width: 0px;
  --eyebrow-padding-inline: 0px;
  --eyebrow-case: uppercase;
  --eyebrow-tracking: 0.18em;
  --eyebrow-weight: 600;
  --eyebrow-size: var(--text-xs);
  --eyebrow-ink: var(--color-primary);
  --eyebrow-dot-color: var(--color-primary);
  --leading-ui: 1.5;
  --nav-line-height: 1.25;
  --nav-link-hover-ink: var(--color-primary-hover);
  --card-surface: rgb(255 255 255 / 0.03);
  --card-border: rgb(255 255 255 / 0.08);
  --card-border-hover: rgb(180 180 180 / 0.45);
  --accordion-gap: var(--space-3);
  --accordion-rule: transparent;
  --accordion-panel-border: var(--card-border);
  --accordion-panel-width: var(--border-width);
  --accordion-radius: var(--radius-md);
  --accordion-surface: var(--card-surface);
  --accordion-inset: var(--space-6);
  --tag-radius: var(--radius-sm);
  --tag-surface: color-mix(in srgb, var(--color-primary) 12%, transparent);
  --tag-edge: color-mix(in srgb, var(--color-primary) 28%, transparent);
  --tag-ink: var(--color-primary-300);
  --media-edge: rgb(255 255 255 / 0.08);
  --field-focus-ring: 0 0 0 2px rgb(180 180 180 / 0.55);
  --stat-size: var(--text-3xl);
}


@font-face{font-family:"Musa Bodoni Display";font-style:italic;font-weight:400 700;font-display:swap;src:url("/assets/store/bymusa/portfolio/mv8dh6s1vSGK2yI3Md16.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Musa Bodoni Display";font-style:italic;font-weight:400 700;font-display:swap;src:url("/assets/store/bymusa/portfolio/mv8dh3q2PWlZTGA7jotn.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}






@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/store/bymusa/portfolio/mv8dh730f3icdkbM3SaB.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("/assets/store/bymusa/portfolio/mv8dh4191APhuOSWP9qL.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}




:root {
  --space-1: calc(var(--space-unit) * 1);   
  --space-2: calc(var(--space-unit) * 2);   
  --space-3: calc(var(--space-unit) * 3);   
  --space-4: calc(var(--space-unit) * 4);   
  --space-5: calc(var(--space-unit) * 5);   
  --space-6: calc(var(--space-unit) * 6);   
  --space-8: calc(var(--space-unit) * 8);   
  --space-10: calc(var(--space-unit) * 10); 
  --space-12: calc(var(--space-unit) * 12); 
  --space-16: calc(var(--space-unit) * 16); 

  
  --measure: 65ch;

  
  --gutter: clamp(var(--space-4), 4vw, var(--space-8));

  
  --header-height: 4rem;

  
  --z-base: 1;
  --z-sticky: 40;      
  --z-header: 50;      
  --z-nav: 55;         
  --z-overlay: 70;     
  --z-preview: 90;     

  
  --bp-nav: 64rem;
}


*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
}


[hidden] {
  display: none !important;
}

html {
  -webkit-text-size-adjust: 100%;
  
  overflow-x: clip;
  
  scrollbar-gutter: stable;
  
  scroll-behavior: smooth;
  
  scroll-padding-block-start: var(--space-16);
}



:root {
  color-scheme: var(--color-scheme, light);
  scrollbar-width: thin;                                   
  
  scrollbar-color: var(--scrollbar-thumb, var(--color-primary-200)) transparent;
}

::-webkit-scrollbar {                                       
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: var(--scrollbar-thumb, var(--color-primary-200));
  border-radius: var(--radius-full);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--scrollbar-thumb-hover, var(--color-primary-400));
}


.surface-inverse::-webkit-scrollbar-thumb,
.site-footer::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, currentColor 25%, transparent);
}

body {
  font-family: var(--font-body);
  font-weight: var(--font-weight-body);
  font-size: var(--text-base);
  line-height: var(--leading-normal);
  
  letter-spacing: var(--tracking-body, normal);
  color: var(--color-text);
  background: var(--color-surface);
}

img,
svg,
video {
  display: block;
  max-width: 100%;
}

button,
input,
select,
textarea {
  font: inherit;
  color: inherit;
}


h1,
h2,
h3,
h4 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  line-height: var(--leading-tight);
  overflow-wrap: break-word;
}

h1 { font-size: var(--text-3xl); }


h2 { font-size: var(--h2-size, var(--text-2xl)); }
h3 { font-size: var(--text-xl); }
h4 { font-size: var(--text-lg); }


.display {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  font-size: var(--text-4xl);
  line-height: var(--leading-display);
  letter-spacing: var(--tracking-display);
  overflow-wrap: break-word;
  text-wrap: balance;
}

h1, h2 {
  letter-spacing: var(--tracking-tight);
  text-wrap: balance;
}

p,
li {
  overflow-wrap: break-word;
}


a {
  color: var(--color-link, var(--color-primary));
  transition: color var(--motion-duration) var(--motion-easing);
}

a:hover {
  
  color: var(--color-link-hover,
    var(--color-primary-hover, var(--color-primary-700)));
}


.lead {
  font-size: var(--lead-size, var(--text-lg));
  color: var(--color-text-muted);
}

.text-small {
  font-size: var(--text-sm);
}

.text-muted {
  color: var(--color-text-muted);
}


:focus-visible {
  outline: 2px solid var(--color-primary-500);
  outline-offset: 2px;
}

.surface-brand :focus-visible {
  outline-color: var(--color-text-on-primary);
}

.surface-inverse :focus-visible {
  outline-color: var(--color-text-on-inverse);
}


.container {
  
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  
  padding-inline: var(--gutter);
}


body {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}

main {
  flex-grow: 1;
}


.main--fill {
  display: flex;
  flex-direction: column;
}

.main--fill > .section {
  flex-grow: 1;
  display: grid;
  align-content: center;
}


.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}


.flow > * + * {
  margin-block-start: var(--space-4);
}

.flow > h2 + *,
.flow > h3 + * {
  margin-block-start: var(--space-3);
}


.prose {
  max-width: var(--measure);
}

.prose > * + * {
  margin-block-start: var(--space-4);
}

.prose h2 {
  margin-block-start: var(--space-8);
}

.prose h3 {
  margin-block-start: var(--space-6);
}

.prose ul,
.prose ol {
  padding-inline-start: 1.5em;
}


.prose blockquote:not([class]) {
  border-inline-start: 2px solid var(--color-primary-300);
  padding-inline-start: var(--space-4);
  color: var(--color-text-muted);
}

.prose img {
  border-radius: var(--radius-lg);
}

.prose h2,
.prose h3 {
  max-width: none;
}

.prose hr {
  border: 0;
  border-block-start: var(--border-width) solid var(--color-border);
  margin-block: var(--space-8);
}


.prose__scroll {
  overflow-x: auto;
  margin-block-start: var(--space-4);
}

.prose table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-sm);
}

.prose th,
.prose td {
  text-align: start;
  padding: var(--space-3);
  border-block-end: var(--border-width) solid var(--color-border);
  vertical-align: top;
}

.prose th {
  font-weight: var(--font-weight-bold);
  white-space: nowrap;
}


.prose code {
  padding: 0.1em 0.35em;
  border-radius: var(--radius-sm);
  background: var(--color-surface-alt);
  font-size: 0.9em;
}

.prose pre {
  padding: var(--space-4);
  border-radius: var(--radius-md);
  background: var(--color-surface-alt);
  font-size: var(--text-sm);
  line-height: var(--leading-normal);
}

.prose pre code {
  padding: 0;
  background: none;
  font-size: inherit;
}




.surface-base    { background: var(--color-surface);         color: var(--color-text); }
.surface-alt     { background: var(--color-surface-alt);     color: var(--color-text); }
.surface-brand   { background: var(--color-primary);         color: var(--color-text-on-primary); }
.surface-inverse { background: var(--color-surface-inverse); color: var(--color-text-on-inverse); }



.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  
  padding-inline: var(--eyebrow-padding-inline, var(--space-3));
  padding-block:
    calc(var(--eyebrow-padding-block, var(--space-1)) + var(--eyebrow-ink-shift, var(--label-ink-shift, 0px)))
    calc(var(--eyebrow-padding-block, var(--space-1)) - var(--eyebrow-ink-shift, var(--label-ink-shift, 0px)));
  border: var(--eyebrow-border-width, var(--border-width)) solid
    var(--eyebrow-border-color, var(--color-border));
  
  border-radius: var(--eyebrow-radius, var(--radius-full));
  background: var(--eyebrow-surface, var(--color-surface));
  
  box-shadow: var(--eyebrow-shadow, none);
  font-size: var(--eyebrow-size, var(--text-xs));
  font-weight: var(--eyebrow-weight, var(--font-weight-bold));
  letter-spacing: var(--eyebrow-tracking, 0.04em);
  
  text-transform: var(--eyebrow-case, uppercase);
  color: var(--eyebrow-ink,
    var(--color-primary-hover, var(--color-primary-700)));
  line-height: var(--leading-ui, inherit);
}


.eyebrow::before {
  content: "";
  display: var(--eyebrow-dot, inline-block);
  width: 0.4em;
  height: 0.4em;
  
  border-radius: var(--radius-full);
  
  background: var(--eyebrow-dot-color, var(--color-secondary));
}


.surface-brand .lead,
.surface-inverse .lead {
  color: inherit;
}



.surface-brand .eyebrow,
.surface-inverse .eyebrow {
  background: var(--eyebrow-brand-surface, transparent);
  border-color: color-mix(in srgb, currentColor 25%, transparent);
  color: var(--eyebrow-brand-ink, inherit);
}

.surface-inverse .eyebrow::before,
.surface-brand .eyebrow::before {
  background: currentColor;
}


.carousel__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  gap: var(--space-6);
  overflow-x: auto;
  
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  
  overscroll-behavior-x: contain;
  
  scrollbar-width: none;
  
  padding-block: var(--space-2);
}

.carousel__track::-webkit-scrollbar {
  display: none;
}

.carousel__track > * {
  scroll-snap-align: start;
}


@media (hover: hover) and (pointer: fine) {
  .carousel.is-draggable .carousel__track {
    cursor: grab;
  }
}


.carousel.is-dragging .carousel__track {
  cursor: grabbing;
  
  scroll-snap-type: none;
  
  scroll-behavior: auto;
  user-select: none;
}


.carousel.is-gliding .carousel__track {
  scroll-snap-type: none;
  scroll-behavior: auto;
}

@media (min-width: 48rem) {
  
  .carousel__track {
    grid-auto-columns: calc((100% - var(--space-6)) / 2);
  }
}


.carousel__nav {
  display: flex;
  gap: var(--space-2);
  margin-block-start: var(--space-6);
  
  justify-content: var(--carousel-nav-align, flex-start);
}

.carousel__btn {
  width: 2.75rem;
  height: 2.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  color: var(--color-text);
  cursor: pointer;
  transition:
    border-color var(--motion-duration) var(--ease-out-expo),
    color var(--motion-duration) var(--ease-out-expo),
    opacity var(--motion-duration) var(--ease-out-expo);
}

.carousel__btn:hover:not(:disabled) {
  border-color: var(--color-primary);
  color: var(--color-primary);
}


.carousel__btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.carousel__btn .icon {
  width: 1.25rem;
  height: 1.25rem;
}


.quote-dialog {
  width: min(42rem, calc(100vw - var(--space-8)));
  padding: var(--space-8);
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);

  
  margin-inline: auto;
  margin-block: 8svh auto;

  
  max-height: 84svh;
  overflow-y: auto;
  
  scrollbar-width: thin;
  scrollbar-gutter: stable;
  overscroll-behavior: contain;
  
  position: fixed;
}


.quote-dialog::after {
  content: "";
  display: block;
  position: sticky;
  inset-block-end: calc(var(--space-8) * -1);
  block-size: var(--space-12);
  margin-block-start: calc(var(--space-12) * -1);
  margin-inline: calc(var(--space-8) * -1);
  
  background: linear-gradient(to bottom, transparent, var(--color-surface));
  pointer-events: none;
  opacity: 0;
  transition: opacity var(--motion-duration) var(--ease-out-expo);
}

.quote-dialog.is-scrollable:not(.is-at-end)::after {
  opacity: 1;
}


.quote-dialog,
.quote-dialog::backdrop {
  opacity: 0;
  transition:
    opacity var(--motion-duration) var(--ease-out-expo),
    translate var(--motion-duration) var(--ease-out-expo),
    overlay var(--motion-duration) allow-discrete,
    display var(--motion-duration) allow-discrete;
}

.quote-dialog {
  
  translate: 0 var(--reveal-distance);
}

.quote-dialog[open],
.quote-dialog[open]::backdrop {
  opacity: 1;
}

.quote-dialog[open] {
  translate: none;
}

@starting-style {
  .quote-dialog[open],
  .quote-dialog[open]::backdrop {
    opacity: 0;
  }

  .quote-dialog[open] {
    translate: 0 var(--reveal-distance);
  }
}

.quote-dialog::backdrop {
  background: color-mix(in srgb, var(--color-surface-inverse) 55%, transparent);
}


.quote-dialog__body {
  transition:
    translate var(--motion-duration-slow) var(--ease-out-expo),
    opacity var(--motion-duration) var(--ease-out-expo);
}


.quote-dialog__body.is-leaving {
  opacity: 0;
}


.quote-dialog__body.is-entering {
  opacity: 0;
  translate: 0 var(--reveal-distance);
}


.quote-dialog__body.no-anim {
  transition: none;
}

.quote-dialog__quote {
  font-size: var(--text-lg);
  line-height: var(--leading-normal);
  
  margin-block-end: var(--space-6);
}

@media (prefers-reduced-motion: reduce) {
  .quote-dialog__body {
    transition: none;
  }
}


.quote-dialog__bar {
  position: sticky;
  inset-block-start: calc(var(--space-8) * -1);
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  margin-block-start: calc(var(--space-8) * -1);
  margin-inline: calc(var(--space-8) * -1);
  padding: var(--space-3) var(--space-3) var(--space-2);
  background: var(--color-surface);
}


.quote-dialog__paging {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}


.quote-dialog__nav {
  margin-block-start: 0;
  justify-content: flex-start;
}

.quote-dialog__count {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}



.section-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  max-width: 44rem;
  margin-block-end: var(--space-8);
}

.section-header--center {
  align-items: center;
  text-align: center;
  margin-inline: auto;
}


.section-header--center::before {
  content: "";
  display: var(--heading-rule-display, none);
  height: 2px;
  width: min(11rem, 60%);
  border-radius: var(--radius-full);
  background: var(--heading-rule, none);
  box-shadow: var(--heading-rule-glow, none);
}


.display,
.section-header h2,
.reveal-line > span {
  background-image: var(--gradient-heading, none);
  -webkit-background-clip: text;
  background-clip: text;
  color: var(--heading-ink, currentColor);
}


.display:has(.reveal-line),
.section-header h2:has(.reveal-line) {
  background-image: none;
}


.surface-brand .display,
.surface-brand .section-header h2,
.surface-brand .reveal-line > span {
  background-image: none;
  color: var(--color-text-on-primary);
}

.section-header__title {
  letter-spacing: var(--tracking-tight);
}


.section {
  padding-block: var(--section-space);
}


.section[id] {
  scroll-margin-block-start: calc(var(--space-12) - var(--section-space));
}


.section--subpage {
  padding-block-start: var(--space-16);
}


.section--panel {
  
  margin-inline: var(--panel-inset, var(--space-3));
  border-radius: var(--radius-panel);
  
}

@media (min-width: 48rem) {
  .section--panel {
    margin-inline: var(--panel-inset, var(--space-6));
  }
}



.section--panel + .section--panel,
.block-crumbs:not(.pv-off) + .section--panel,
.block-crumbs:not(.pv-off) + .pv-off + .section--panel,
.block-crumbs:not(.pv-off) + .pv-off + .pv-off + .section--panel,
.block-crumbs:not(.pv-off) + .pv-off + .pv-off + .pv-off + .section--panel {
  margin-block-start: var(--panel-inset, var(--space-3));
}

@media (min-width: 48rem) {
  .section--panel + .section--panel,
  .block-crumbs:not(.pv-off) + .section--panel,
  .block-crumbs:not(.pv-off) + .pv-off + .section--panel,
  .block-crumbs:not(.pv-off) + .pv-off + .pv-off + .section--panel,
  .block-crumbs:not(.pv-off) + .pv-off + .pv-off + .pv-off + .section--panel {
    margin-block-start: var(--panel-inset, var(--space-6));
  }
}


main > .section--panel:not(.pv-off):not(:has(~ .section:not(.pv-off))) {
  margin-block-end: var(--panel-inset, var(--space-3));
}

@media (min-width: 48rem) {
  main > .section--panel:not(.pv-off):not(:has(~ .section:not(.pv-off))) {
    margin-block-end: var(--panel-inset, var(--space-6));
  }
}


.section--panel.surface-alt:not(.pv-off):has(+ .section--panel.surface-alt:not(.pv-off)),
.section--panel.surface-brand:not(.pv-off):has(+ .section--panel.surface-brand:not(.pv-off)),
.section--panel.surface-inverse:not(.pv-off):has(+ .section--panel.surface-inverse:not(.pv-off)) {
  border-end-start-radius: 0;
  border-end-end-radius: 0;
}

.section--panel.surface-alt:not(.pv-off) + .section--panel.surface-alt:not(.pv-off),
.section--panel.surface-brand:not(.pv-off) + .section--panel.surface-brand:not(.pv-off),
.section--panel.surface-inverse:not(.pv-off) + .section--panel.surface-inverse:not(.pv-off) {
  border-start-start-radius: 0;
  border-start-end-radius: 0;
  
  margin-block-start: 0;
  padding-block-start: 0;
}



.section.surface-base:not(.section--panel, .section--slim, .pv-off)
  + .section.surface-base:not(.section--panel, .section--slim, .pv-off),
.section.surface-base:not(.section--panel, .section--slim, .pv-off)
  + .pv-off + .section.surface-base:not(.section--panel, .section--slim, .pv-off),
.section.surface-base:not(.section--panel, .section--slim, .pv-off)
  + .pv-off + .pv-off + .section.surface-base:not(.section--panel, .section--slim, .pv-off),
.section.surface-base:not(.section--panel, .section--slim, .pv-off)
  + .pv-off + .pv-off + .pv-off + .section.surface-base:not(.section--panel, .section--slim, .pv-off) {
  padding-block-start: calc(var(--section-space) / 2);
}



.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  
  padding-block:
    calc(var(--space-3) + var(--btn-label-shift, 0px))
    calc(var(--space-3) - var(--btn-label-shift, 0px));
  padding-inline: var(--space-6);
  border: var(--border-width) solid transparent;
  
  border-radius: var(--radius-button, var(--radius-md));
  
  font-family: var(--font-button);
  
  font-weight: var(--btn-font-weight, var(--font-weight-bold));
  font-size: var(--text-base);
  
  line-height: var(--btn-line-height, 1.2);
  text-decoration: none;
  cursor: pointer;
  
  transition:
    background-color var(--motion-duration) var(--motion-easing),
    border-color var(--motion-duration) var(--motion-easing),
    color var(--motion-duration) var(--motion-easing),
    box-shadow var(--motion-duration-slow) var(--ease-out-expo),
    translate var(--motion-duration-slow) var(--ease-out-expo);
}


.btn .icon {
  width: 1.25em;
  height: 1.25em;
}


.btn--primary {
  background: var(--btn-surface, var(--color-primary));
  color: var(--btn-ink, var(--color-text-on-primary));
  
  background-image: var(--btn-sheen, none);
  box-shadow: var(--shadow-button, none);
  backdrop-filter: var(--btn-filter, none);
}

.btn--primary:hover {
  background-color: var(--btn-hover-surface,
    var(--color-primary-hover, var(--color-primary-700)));
  color: var(--btn-hover-ink, var(--btn-ink, var(--color-text-on-primary)));
  
}

.btn--secondary {
  background: transparent;
  border-color: var(--color-primary);
  color: var(--color-primary);
}


.btn--secondary:hover {
  background: color-mix(in srgb, var(--color-primary) 12%, var(--color-surface));
}


.btn--ghost {
  background: transparent;
  border-width: var(--btn-ghost-border-width, var(--border-width));
  border-color: var(--btn-ghost-border, transparent);
  color: var(--btn-ghost-ink, var(--color-primary));
}


.btn--ghost:hover {
  background: var(--btn-ghost-hover-surface,
    color-mix(in srgb, var(--color-primary) 12%, var(--color-surface)));
  border-color: var(--btn-ghost-hover-border, transparent);
  color: var(--btn-ghost-hover-ink, var(--color-primary));
}

.btn--sm {
  padding-block:
    calc(var(--space-2) + var(--btn-label-shift, 0px))
    calc(var(--space-2) - var(--btn-label-shift, 0px));
  padding-inline: var(--space-4);
  font-size: var(--text-sm);
}

.btn--lg {
  padding-block:
    calc(var(--space-4) + var(--btn-label-shift, 0px))
    calc(var(--space-4) - var(--btn-label-shift, 0px));
  padding-inline: var(--space-8);
  font-size: var(--text-lg);
}

.btn:disabled,
.btn.is-disabled {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
}


.btn.is-loading {
  position: relative;
  color: transparent;
  pointer-events: none;
}

.btn.is-loading::after {
  content: "";
  position: absolute;
  width: 1em;
  height: 1em;
  border: 2px solid var(--color-text-on-primary);
  border-block-start-color: transparent;
  border-radius: var(--radius-full);
  animation: btn-spin 0.7s linear infinite;
}

@keyframes btn-spin {
  to { transform: rotate(1turn); }
}


.link-arrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
}

.link-arrow::after {
  content: "→";
  transition: translate var(--motion-duration) var(--motion-easing);
}

.link-arrow:hover::after {
  translate: 4px 0;
}


.tag {
  display: inline-block;
  
  padding-block:
    calc(var(--space-1) + var(--label-ink-shift, 0px))
    calc(var(--space-1) - var(--label-ink-shift, 0px));
  padding-inline: var(--space-3);
  
  border-radius: var(--tag-radius, var(--radius-sm));
  background: var(--tag-surface, var(--color-primary-100));
  color: var(--tag-ink,
    var(--color-primary-ink, var(--color-primary-800)));
  box-shadow: inset 0 0 0 var(--border-width) var(--tag-edge, transparent);
  font-size: var(--text-xs);
  font-weight: var(--tag-weight, var(--font-weight-bold));
  letter-spacing: var(--tag-tracking, inherit);
  text-transform: var(--tag-transform, none);
  text-decoration: none;
  white-space: nowrap;
  
  line-height: var(--leading-ui, inherit);
}


.notice {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4);
  border-radius: var(--radius-md);
  border-inline-start: 4px solid var(--notice-line);
  background: var(--notice-soft);
  color: var(--notice-strong);
  font-size: var(--text-sm);
}

.notice .icon {
  flex-shrink: 0;
  color: var(--notice-line);
}

.notice--success { --notice-line: var(--color-success); --notice-soft: var(--color-success-soft); --notice-strong: var(--color-success-strong); }
.notice--warning { --notice-line: var(--color-warning); --notice-soft: var(--color-warning-soft); --notice-strong: var(--color-warning-strong); }
.notice--error   { --notice-line: var(--color-error);   --notice-soft: var(--color-error-soft);   --notice-strong: var(--color-error-strong); }
.notice--info    { --notice-line: var(--color-info);    --notice-soft: var(--color-info-soft);    --notice-strong: var(--color-info-strong); }


.badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-3);
  border-radius: var(--radius-full);
  font-size: var(--text-xs);
  font-weight: var(--font-weight-bold);
  background: var(--badge-bg);
  color: var(--badge-on);
}

.badge--success { --badge-bg: var(--color-success); --badge-on: var(--color-success-on); }
.badge--warning { --badge-bg: var(--color-warning); --badge-on: var(--color-warning-on); }
.badge--error   { --badge-bg: var(--color-error);   --badge-on: var(--color-error-on); }
.badge--info    { --badge-bg: var(--color-info);    --badge-on: var(--color-info-on); }


.divider {
  border: 0;
  border-block-start: var(--border-width) solid var(--color-border);
}


.icon {
  display: inline-flex;
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
}

.icon svg {
  width: 100%;
  height: 100%;
}

.icon--lg {
  width: 2.5rem;
  height: 2.5rem;
}


.img-frame {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: var(--color-surface-alt);
}



.card,
.next-item {
  --media-edge: transparent;
}

.img-frame::after,
.gallery__item::after,
.embed:not(.embed--map)::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 var(--border-width) var(--media-edge, transparent);
  pointer-events: none;
  
  z-index: 1;
}


.gallery__item {
  position: relative;
}

.img-frame--16x9 { aspect-ratio: 16 / 9; }
.img-frame--4x3  { aspect-ratio: 4 / 3; }
.img-frame--3x4  { aspect-ratio: 3 / 4; }
.img-frame--1x1  { aspect-ratio: 1 / 1; }

.img-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}



.img-frame--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  background: color-mix(in srgb, var(--color-primary) 12%, var(--color-surface-alt));
  color: color-mix(in srgb, var(--color-primary) 55%, var(--color-surface-alt));
}

.img-frame--empty .icon {
  
  width: clamp(2.5rem, 22%, 6rem);
  height: auto;
  aspect-ratio: 1;
}


.field {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.field__label {
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
}

.field__input {
  padding: var(--space-3) var(--space-4);
  border: var(--border-width) solid var(--color-border);
  
  border-radius: var(--radius-md);
  background: var(--color-surface);
  
  color: var(--color-text);
  
  line-height: var(--btn-line-height, 1.2);
  transition: border-color var(--motion-duration) var(--motion-easing);
}

.field__input:focus-visible {
  outline: none;
  border-color: var(--color-primary);
  
  box-shadow: var(--field-focus-ring, 0 0 0 2px var(--color-primary-100));
}

textarea.field__input {
  min-height: 6rem;
  resize: vertical;
  
  line-height: var(--leading-normal);
}


.select {
  position: relative;
}


.select .select__native {
  display: none;
}

.select__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  width: 100%;
  text-align: start;
  cursor: pointer;
  background: var(--color-surface);
  color: var(--color-text);
}

.select__value {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select__chevron {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--color-text-muted);
  
  transition: transform var(--motion-duration-slow) var(--motion-easing);
}

.select.is-open .select__chevron {
  transform: rotate(180deg);
  color: var(--color-primary);
}

.select.is-open .select__trigger {
  border-color: var(--color-primary);
}

.select__list {
  position: absolute;
  inset-inline: 0;
  top: calc(100% + var(--space-1));
  z-index: var(--z-overlay);
  margin: 0;
  padding: var(--select-panel-padding, var(--space-1));
  list-style: none;
  
  max-height: var(--select-panel-max-height, 16rem);
  overflow-y: auto;
  background: var(--select-panel-surface, var(--color-surface));
  border: var(--border-width) solid var(--select-panel-border, var(--color-border));
  border-radius: var(--select-panel-radius, var(--radius-md));
  box-shadow: var(--select-panel-shadow, var(--shadow-lg));

  visibility: hidden;
  opacity: 0;
  translate: 0 -4px;
  transition:
    opacity var(--motion-duration) var(--motion-easing),
    translate var(--motion-duration) var(--motion-easing),
    visibility var(--motion-duration);
}


.select--up .select__list {
  top: auto;
  bottom: calc(100% + var(--space-1));
  translate: 0 4px;
}

.select.is-open .select__list {
  visibility: visible;
  opacity: 1;
  translate: 0 0;
}

.select__option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  
  min-height: var(--select-option-min-height, 44px);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--select-option-radius, var(--radius-sm));
  cursor: pointer;
  transition: background-color var(--motion-duration) var(--motion-easing);
}




.select__option.is-active {
  background: var(--select-option-active-surface,
    color-mix(in srgb, var(--color-primary) 12%, var(--color-surface)));
}


.select__option[aria-selected="true"] {
  font-weight: var(--select-option-selected-weight, var(--font-weight-bold));
  
  color: var(--select-option-selected-ink, var(--color-primary));
}


.select__option--disabled {
  color: var(--color-text-muted);
  cursor: default;
}


.select--placeholder .select__value {
  color: var(--color-text-muted);
}

.select__check {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  color: var(--select-check-ink, var(--color-primary));
  opacity: 0;
}

.select__option[aria-selected="true"] .select__check {
  opacity: 1;
}

.field__hint {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}

.field__message {
  font-size: var(--text-xs);
  font-weight: var(--font-weight-bold);
}

.field--error .field__input {
  border-color: var(--color-error);
}

.field--error .field__message {
  color: var(--color-error);
}


.field--error.field--checkbox input[type="checkbox"],
.field--error .field__drop {
  border-color: var(--color-error);
}

.field--success .field__input {
  border-color: var(--color-success);
}

.field--success .field__message {
  color: var(--color-success);
}


.embed {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: var(--color-surface-alt);
}

.embed--video { aspect-ratio: 16 / 9; }
.embed--audio { min-height: 152px; }
.embed--map   { aspect-ratio: 4 / 3; }

.embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed__facade {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-3);
  padding: var(--space-6);
  border: 0;
  width: 100%;
  background: none;
  color: var(--color-text);
  cursor: pointer;
  text-align: center;
}

.embed__poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.embed__scrim {
  position: absolute;
  inset: 0;
  background: color-mix(in srgb, var(--color-surface-inverse) 55%, transparent);
}


.embed__facade > .embed__play,
.embed__facade > .embed__label,
.embed__facade > .embed__note {
  position: relative;
  z-index: 1;
}

.embed--video .embed__facade {
  color: var(--color-text-on-inverse);
}

.embed__play {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: var(--radius-full);
  background: var(--color-primary);
  color: var(--color-text-on-primary);
  box-shadow: var(--shadow-lg);
  transition: scale var(--motion-duration-slow) var(--ease-out-expo);
}

.embed__facade:hover .embed__play {
  scale: 1.08;
}

.embed__label {
  font-weight: var(--font-weight-bold);
}

.embed__note {
  font-size: var(--text-xs);
  opacity: 0.85;
  max-width: 32rem;
}


.embed--map {
  border: var(--border-width) solid var(--color-border);
}


.embed--map {
  background:
    linear-gradient(
      135deg,
      color-mix(in srgb, var(--color-primary) 10%, var(--color-surface-alt)) 0%,
      var(--color-surface-alt) 100%
    );
}


.field--file input[type="file"] {
  
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.field__drop {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-6);
  border: var(--border-width) dashed var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  cursor: pointer;
  transition:
    border-color var(--motion-duration) var(--motion-easing),
    background-color var(--motion-duration) var(--motion-easing);
}


.field__drop:hover,
.field--file input[type="file"]:focus-visible + .field__drop {
  border-color: var(--color-primary);
  background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));
}


.field__drop.is-over {
  border-color: var(--color-primary);
  border-style: solid;
  background: color-mix(in srgb, var(--color-primary) 14%, var(--color-surface));
}

.field__drop .icon {
  flex-shrink: 0;
  color: var(--color-primary);
}

.field__drop-text {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
}

.field__drop-hint {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}


.field__files {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-block-start: var(--space-3);
  padding: 0;
  list-style: none;
}

.field__files li {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-3);
  border-radius: var(--radius-full);
  background: var(--color-surface-alt);
  font-size: var(--text-xs);
}



.field--checkbox {
  flex-direction: row;
  align-items: flex-start;
  
  justify-content: var(--form-footer-align, flex-start);
  gap: var(--space-3);
  
  flex-wrap: wrap;
}


.field--checkbox .field__label {
  flex: 1 1 0;
  min-width: 0;
}

.field--checkbox .field__message {
  flex-basis: 100%;
}

.field--checkbox input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  position: relative;
  flex-shrink: 0;
  
  width: var(--checkbox-size, 20px);
  height: var(--checkbox-size, 20px);
  
  margin-block-start: calc(
    (var(--text-sm) * var(--leading-normal) - var(--checkbox-size, 20px)) / 2
  );
  border: var(--border-width) solid var(--checkbox-border, var(--color-border));
  border-radius: var(--checkbox-radius, var(--radius-sm));
  background: var(--checkbox-surface, var(--color-surface));
  cursor: pointer;
  transition:
    background-color var(--motion-duration) var(--motion-easing),
    border-color var(--motion-duration) var(--motion-easing);
}


.field--checkbox:hover input[type="checkbox"]:not(:disabled) {
  border-color: var(--color-primary-400);
}

.field--checkbox input[type="checkbox"]:checked {
  background: var(--color-primary);
  border-color: var(--color-primary);
}


.surface-brand .field--checkbox input[type="checkbox"]:checked {
  background: var(--color-text-on-primary);
  border-color: var(--color-text-on-primary);
}

.surface-brand .field--checkbox input[type="checkbox"]::after {
  background: var(--color-primary);
}


.field--checkbox input[type="checkbox"]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--color-text-on-primary);
  -webkit-mask: var(--tick) center / 12px no-repeat;
  mask: var(--tick) center / 12px no-repeat;
  --tick: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 5 5 9-10'/%3E%3C/svg%3E");
  transform: scale(0.4);
  opacity: 0;
  transition:
    transform var(--motion-duration) var(--ease-spring),
    opacity var(--motion-duration) var(--motion-easing);
}

.field--checkbox input[type="checkbox"]:checked::after {
  transform: scale(1);
  opacity: 1;
}

.field--checkbox input[type="checkbox"]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.field--checkbox .field__label {
  font-weight: var(--font-weight-body);
  font-size: var(--text-sm);
  cursor: pointer;
}


.field--choice {
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  min-width: 0;
}

.field--choice legend {
  padding: 0;
  margin-block-end: var(--space-2);
}

.choice-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(7rem, 1fr));
  gap: var(--space-3);
}

.choice-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-1);
  padding: var(--space-4) var(--space-3);
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  
  color: var(--color-text);
  cursor: pointer;
  transition:
    border-color var(--motion-duration) var(--motion-easing),
    background-color var(--motion-duration) var(--motion-easing),
    box-shadow var(--motion-duration) var(--motion-easing);
}


.choice-card input[type="radio"] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.choice-card .icon {
  width: 1.75rem;
  height: 1.75rem;
  color: var(--color-primary);
}

.choice-card__label {
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
}

.choice-card__hint {
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}


.choice-card__badge {
  position: absolute;
  inset-block-start: calc(var(--space-3) * -1);
  inset-inline-end: var(--space-2);
  padding: var(--space-1) var(--space-2);
  border-radius: var(--radius-full);
  background: var(--color-success);
  color: var(--color-success-on);
  font-size: var(--text-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: var(--leading-ui, 1.5);
}

.choice-card:hover {
  border-color: var(--color-primary-400);
}


.choice-card:has(input:checked) {
  border-color: var(--choice-accent, var(--color-primary));
  box-shadow: inset 0 0 0 1px var(--choice-accent, var(--color-primary));
  background: color-mix(in srgb, var(--choice-accent, var(--color-primary)) 6%, var(--color-surface));
}

.choice-card::before {
  content: "";
  position: absolute;
  inset-block-start: var(--space-2);
  inset-inline-start: var(--space-2);
  width: var(--space-5);
  height: var(--space-5);
  border-radius: var(--radius-full);
  background: var(--choice-accent, var(--color-primary));
  opacity: 0;
  transform: scale(0.4);
  transition:
    transform var(--motion-duration) var(--ease-spring),
    opacity var(--motion-duration) var(--motion-easing);
}

.choice-card::after {
  content: "";
  position: absolute;
  inset-block-start: var(--space-2);
  inset-inline-start: var(--space-2);
  width: var(--space-5);
  height: var(--space-5);
  background: var(--choice-accent-ink, var(--color-text-on-primary));
  -webkit-mask: var(--tick) center / 12px no-repeat;
  mask: var(--tick) center / 12px no-repeat;
  --tick: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 5 5 9-10'/%3E%3C/svg%3E");
  opacity: 0;
  transform: scale(0.4);
  transition:
    transform var(--motion-duration) var(--ease-spring),
    opacity var(--motion-duration) var(--motion-easing);
}

.choice-card:has(input:checked)::before,
.choice-card:has(input:checked)::after {
  opacity: 1;
  transform: scale(1);
}


.choice-card:has(input:focus-visible) {
  outline: 2px solid var(--choice-accent, var(--color-primary));
  outline-offset: 2px;
}


.field__range {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  background: transparent;
  cursor: pointer;
  
  height: var(--space-6);
}


.field__range::-webkit-slider-runnable-track {
  height: var(--space-2);
  border-radius: var(--radius-full);
  background: linear-gradient(
    to right,
    var(--range-accent, var(--color-primary)) 0 var(--range-fill, 50%),
    var(--color-border) var(--range-fill, 50%) 100%
  );
}

.field__range::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: var(--space-6);
  height: var(--space-6);
  margin-block-start: calc((var(--space-2) - var(--space-6)) / 2);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  border: 2px solid var(--range-accent, var(--color-primary));
  box-shadow: var(--shadow-sm);
}

.field__range::-moz-range-track {
  height: var(--space-2);
  border-radius: var(--radius-full);
  background: var(--color-border);
}

.field__range::-moz-range-progress {
  height: var(--space-2);
  border-radius: var(--radius-full);
  background: var(--range-accent, var(--color-primary));
}

.field__range::-moz-range-thumb {
  width: var(--space-6);
  height: var(--space-6);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  border: 2px solid var(--range-accent, var(--color-primary));
  box-shadow: var(--shadow-sm);
}


.field__output {
  text-align: center;
  font-weight: var(--font-weight-bold);
}


.newsletter-form {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: var(--space-2);
}

.newsletter-form .field {
  flex: 1 1 14rem;
}

.newsletter-form__note {
  flex-basis: 100%;
  font-size: var(--text-xs);
  color: var(--color-text-muted);
}


.newsletter-form__done {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  flex-basis: 100%;
}

.newsletter-form__done-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: var(--space-10);
  height: var(--space-10);
  border-radius: var(--radius-full);
  background: var(--color-success-soft);
  color: var(--color-success);
}

.newsletter-form__done-mark .icon {
  width: 1.25rem;
  height: 1.25rem;
}

.newsletter-form__done strong {
  display: block;
  margin-block-end: var(--space-1);
}

.newsletter-form__done p {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}


[data-form-status] {
  flex-basis: 100%;
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
}

[data-form-status]:empty {
  display: none;
}

[data-form-status][data-state="ok"] {
  color: var(--color-success-strong);
}

[data-form-status][data-state="error"] {
  color: var(--color-error);
}

.surface-inverse .newsletter-form__note {
  color: color-mix(in srgb, var(--color-text-on-inverse) 72%, transparent);
}




.card {
  display: flex;
  flex-direction: column;
  border: var(--border-width) solid var(--card-border, var(--color-border));
  border-radius: var(--radius-lg);
  background: var(--card-surface, var(--color-surface));
  
  -webkit-backdrop-filter: var(--card-filter, none);
  backdrop-filter: var(--card-filter, none);
  box-shadow: var(--card-shadow, none);
  overflow: hidden;
}

.card__media {
  border-radius: 0;   
}


.card__media-link {
  display: block;
  color: inherit;     
}

.card__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-6);
  flex-grow: 1;
  
  align-items: var(--card-align, stretch);
  text-align: var(--card-align, start);
}

.card__title {
  font-size: var(--text-lg);
}

.card__title a {
  color: inherit;
  text-decoration: none;
}

.card__title a:hover {
  color: var(--color-primary);
}

.card__meta {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.card__text {
  color: var(--color-text-muted);
}

.card__footer {
  margin-block-start: auto;
  padding-block-start: var(--space-3);
}


.card-grid {
  --card-cols: 1;                            
  display: flex;
  flex-wrap: wrap;
  
  justify-content: flex-start;
  gap: var(--space-6);
}

.card-grid > * {
  
  flex: 0 1 calc(
    (100% - (var(--card-cols) - 1) * var(--space-6)) / var(--card-cols) - 0.02px
  );
  min-width: 0;                              
}

@media (min-width: 40rem) {
  .card-grid { --card-cols: 2; }
}

@media (min-width: 64rem) {
  .card-grid { --card-cols: 3; }

  
  .card-grid--showcase { --card-cols: 2; }

  
  .card-grid:has(> :nth-child(2):last-child) { --card-cols: 2; }

  
  .card-grid:has(> :nth-child(4):last-child) { --card-cols: 2; }
}


.card-grid:has(> :nth-child(1):last-child) { --card-cols: 1; }

@media (min-width: 48rem) {
  .card-grid:has(> :nth-child(1):last-child) > .card:has(.card__media) {
    flex-direction: row;
    align-items: stretch;
  }

  .card-grid:has(> :nth-child(1):last-child) > .card:has(.card__media) > .card__media-link {
    flex: 0 0 46%;
    display: flex;      
  }

  
  .card-grid:has(> :nth-child(1):last-child) .card__media-link .img-frame {
    flex: 1;
    aspect-ratio: auto;
    min-height: 18rem;
  }

  .card-grid:has(> :nth-child(1):last-child) > .card > .card__body {
    justify-content: center;
    gap: var(--space-3);
    padding: var(--space-10);
  }

  .card-grid:has(> :nth-child(1):last-child) > .card:not(:has(.card__media)) > .card__body {
    align-items: center;
    text-align: center;
    max-width: 56ch;
    margin-inline: auto;
  }

  
  .card-grid:has(> :nth-child(1):last-child) .card__title {
    font-size: var(--text-2xl);
  }

  .card-grid:has(> :nth-child(1):last-child) .card__footer {
    margin-block-start: var(--space-2);   
  }
}


.site-header {
  position: sticky;
  top: 0;
  z-index: var(--z-header);
  border-block-end: var(--border-width) solid var(--color-border);
  
  background: var(--glass-surface, var(--color-surface));
  transition:
    translate var(--motion-duration-slow) var(--ease-out-expo),
    box-shadow var(--motion-duration-slow) var(--ease-out-expo);
}


.site-header::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  -webkit-backdrop-filter: var(--glass-filter, none);
  backdrop-filter: var(--glass-filter, none);
}


.site-header--floating::after {
  content: none;
}


body:has(.block-hero--photo:not([hidden], .pv-off))
  .site-header:not(.site-header--floating) {
  position: fixed;
  inset-inline: 0;
}


.site-header.is-hidden {
  translate: 0 -100%;
}


.site-header.is-stuck {
  box-shadow: var(--shadow-md);
}

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  min-height: var(--header-height);
}

.site-header__logo {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  font-size: var(--text-lg);
  color: var(--color-text);
  text-decoration: none;
}




.site-header__burger {
  display: grid;
  place-items: center;
  padding: var(--space-2);
  border: 0;
  background: none;
  cursor: pointer;
  color: var(--color-text);
  
  -webkit-tap-highlight-color: transparent;
}

.site-header__burger .icon {
  grid-area: 1 / 1;
  transition:
    opacity var(--motion-duration) var(--ease-out-expo),
    rotate var(--motion-duration-slow) var(--ease-out-expo);
}

.site-header__burger-close {
  opacity: 0;
  rotate: -90deg;
}

.site-header__burger[aria-expanded="true"] .site-header__burger-open {
  opacity: 0;
  rotate: 90deg;
}

.site-header__burger[aria-expanded="true"] .site-header__burger-close {
  opacity: 1;
  rotate: none;
}

.site-nav {
  display: none;
}


.site-nav.is-open {
  display: flex;
  position: fixed;
  inset: 0;
  flex-direction: column;
  justify-content: center;
  
  align-items: var(--nav-open-align, stretch);
  text-align: var(--nav-open-text-align, start);
  
  padding: 6rem var(--gutter) var(--gutter);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.site-nav ul {
  list-style: none;
  margin: 0;
  padding: var(--space-4);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.site-nav.is-open ul {
  padding: 0;
  gap: var(--space-1);
  
  align-items: var(--nav-open-align, stretch);
}


.site-nav.is-open ul a {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  font-size: var(--text-4xl);
  line-height: var(--leading-tight);
  padding-inline: 0;
  padding-block: var(--space-1);
  border-radius: 0;
  background: none;
  
  width: fit-content;
}


.site-nav.is-open .site-header__cta {
  font-size: var(--nav-open-cta-size, var(--text-lg));
  padding-block:
    calc(var(--nav-open-cta-pad-block, var(--space-4)) + var(--btn-label-shift, 0px))
    calc(var(--nav-open-cta-pad-block, var(--space-4)) - var(--btn-label-shift, 0px));
  padding-inline: var(--nav-open-cta-pad-inline, var(--space-8));
}


.site-nav.is-open li,
.site-nav.is-open .site-header__cta,
.site-nav.is-open .site-nav__contact {
  animation: nav-item var(--motion-duration-slow) var(--ease-out-expo) both;
  animation-delay: calc(var(--i, 0) * var(--reveal-stagger-group) / 2);
}

@keyframes nav-item {
  from { opacity: 0; translate: 0 var(--reveal-distance); }
  to   { opacity: 1; translate: none; }
}

@media (prefers-reduced-motion: reduce) {
  .site-nav.is-open li,
  .site-nav.is-open .site-header__cta,
  .site-nav.is-open .site-nav__contact {
    animation: none;
  }
}


.site-nav.is-open li.is-in,
.site-nav.is-open .site-header__cta.is-in,
.site-nav.is-open .site-nav__contact.is-in {
  animation: none;
}





.site-nav ul a {
  display: block;
  
  padding: var(--nav-link-padding, var(--space-2) var(--space-3));
  border-radius: var(--radius-sm);
  color: var(--nav-link-ink, var(--color-text));
  text-decoration: none;
  
  font-weight: var(--nav-link-weight, var(--font-weight-bold));
  
  line-height: var(--nav-line-height, inherit);
}





.site-nav ul a[aria-current]:not([aria-current="false"]) {
  color: var(--nav-link-current-ink, var(--color-primary));
  background: var(--nav-open-link-surface,
    color-mix(in srgb, var(--color-primary) 10%, var(--color-surface)));
}

.site-nav ul a:hover {
  color: var(--nav-link-hover-ink, var(--nav-link-current-ink, var(--color-primary)));
  background: var(--nav-open-link-surface,
    color-mix(in srgb, var(--color-primary) 10%, var(--color-surface)));
}


.site-header__cta {
  margin-block-start: var(--space-8);
  align-self: var(--nav-open-align, flex-start);
}


.site-nav__contact {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  align-self: var(--nav-open-align, flex-start);
  margin-block-start: var(--space-6);
  font-size: var(--text-base);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-muted);
  text-decoration: none;
}

.site-nav__contact .icon {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-primary);
}

.site-nav__contact:hover {
  color: var(--color-primary);
}



.site-nav__lang {
  position: relative;
  margin-inline-start: auto;
  margin-inline-end: calc(var(--space-2) * -1);
}


.site-nav__lang--in-nav {
  display: none;
}

.site-nav__lang-button {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-1) var(--space-2);
  border: 0;
  border-radius: var(--radius-sm);
  background: none;
  cursor: pointer;
  
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: var(--nav-line-height, inherit);
  color: var(--nav-link-ink, var(--color-text));
}

.site-nav__lang-button:hover {
  color: var(--nav-link-hover-ink, var(--nav-link-current-ink, var(--color-primary)));
}


.site-nav__flag {
  display: block;
  flex: none;
  width: 1.25rem;
  height: calc(1.25rem * 2 / 3);
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgb(0 0 0 / 0.14);
}

.site-nav__lang-chevron {
  display: block;
  flex: none;
  width: 0.875rem;
  height: 0.875rem;
  transition: rotate var(--motion-duration) var(--motion-easing);
}

.site-nav__lang-button[aria-expanded="true"] .site-nav__lang-chevron {
  rotate: 180deg;
}

@media (prefers-reduced-motion: reduce) {
  .site-nav__lang-chevron { transition: none; }
}


.site-nav__lang-menu {
  position: absolute;
  z-index: 20;
  inset-inline-end: 0;
  top: calc(100% + var(--space-2));
  min-width: 11rem;
  padding: var(--space-2);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  background: var(--color-surface);
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-lg);
}


.site-nav__lang-menu[hidden] {
  display: none;
}

.site-nav__lang-menu a {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-sm);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-ui, 1.5);
  white-space: nowrap;
  color: var(--color-text);
  text-decoration: none;
}

.site-nav__lang-menu a:hover {
  background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));
  color: var(--nav-link-hover-ink, var(--nav-link-current-ink, var(--color-primary)));
}


.site-nav__lang-menu a[aria-current]:not([aria-current="false"]) {
  color: var(--nav-link-current-ink, var(--color-primary));
  background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));
  pointer-events: none;
}


@media (min-width: 64rem) {
  .site-header__burger { display: none; }

  .site-nav,
  .site-nav.is-open {
    display: flex;
    align-items: center;
    flex: 1;
    position: static;
    
    inset: auto;
    overflow: visible;
    background: none;
    border: 0;
    box-shadow: none;
    padding: 0;
  }

  .site-nav.is-open li,
  .site-nav.is-open .site-header__cta,
  .site-nav.is-open .site-nav__contact,
  .site-nav.is-open ul a {
    animation: none;
    font-size: inherit;
    font-family: inherit;
  }

  
  .site-nav__contact {
    display: none;
  }

  
  
  .site-nav__lang {
    order: 1;
    margin-inline-start: var(--space-5);
    margin-inline-end: 0;
    flex-shrink: 0;
  }

  
  .site-header__inner:has(.site-nav__lang--in-nav) > .site-nav__lang:not(.site-nav__lang--in-nav) {
    display: none;
  }

  
  .site-nav__lang--in-nav {
    display: block;
    
    order: 0;
    margin-inline: 0 var(--space-4);
    flex-shrink: 0;
  }

  
  .site-header--floating .site-header__inner {
    width: var(--header-pill-width, 100%);
    gap: var(--header-pill-gap, var(--space-4));
  }

  .site-nav ul {
    flex-direction: row;
    padding: 0;
    gap: var(--space-1);
    
    margin-inline: var(--header-nav-margin, auto);
  }

  
  .site-nav ul a:hover,
  .site-nav ul a[aria-current]:not([aria-current="false"]) {
    background: none;
  }

  .site-header__cta {
    margin: 0;
    align-self: auto;
    flex-shrink: 0;
  }
}


@media (max-width: 63.99rem) {
  .site-header::before {
    content: "";
    position: fixed;
    inset: 0;
    
    background: var(--glass-wash, var(--color-surface-alt));
    -webkit-backdrop-filter: var(--glass-filter, none);
    backdrop-filter: var(--glass-filter, none);
    opacity: 0;
    visibility: hidden;
    transition:
      opacity var(--motion-duration-slow) var(--ease-out-expo),
      visibility var(--motion-duration-slow);
  }

  .site-header.is-menu-open::before {
    opacity: 1;
    visibility: visible;
  }

  
  .site-header:not(.site-header--floating)::before {
    inset-block-start: var(--header-height);
  }

  
  .site-header__inner {
    position: relative;
  }

  .site-header__logo,
  .site-header__burger {
    position: relative;
    z-index: var(--z-base);
  }
}


@media (max-width: 63.99rem) {
  .site-nav--list {
    --nav-open-link-surface: transparent;
    --nav-open-marker-display: none;
  }

  .site-nav--list.is-open {
    justify-content: flex-start;
    align-items: stretch;
    text-align: start;
    
    padding: calc(var(--header-height) + var(--space-4)) 0 var(--space-8);
  }

  
  .site-header--floating .site-nav--list.is-open {
    padding-block-start: calc(var(--header-height) + var(--space-8));
  }

  .site-nav--list.is-open ul {
    gap: 0;
    align-items: stretch;
  }

  
  .site-nav--list.is-open li {
    border-block-end: var(--border-width) solid var(--color-border);
  }

  .site-nav--list.is-open ul a {
    width: auto;
    padding: var(--space-4) var(--gutter);
    font-size: var(--nav-list-size, var(--text-2xl));
    font-weight: var(--nav-list-weight, var(--font-weight-heading));
    line-height: 1.25;
  }

  .site-nav--list.is-open .site-header__cta {
    align-self: stretch;
    justify-content: center;
    margin: var(--space-6) var(--gutter) 0;
  }

  .site-nav--list.is-open .site-nav__contact {
    align-self: center;
    margin-block-start: var(--space-5);
  }
}


.site-header--floating {
  position: fixed;
  top: var(--space-4);
  inset-inline: 0;
  border-block-end: 0;
  background: transparent;
  
  padding-inline: var(--gutter);
}

.site-header--floating.is-hidden {
  translate: 0 calc(-100% - var(--space-4));
}

.site-header--floating .site-header__inner {
  
  min-height: 0;
  padding: var(--space-2);
  padding-inline-start: var(--space-6);
  
  border: var(--border-width) solid var(--header-pill-border, var(--color-border));
  border-radius: var(--radius-full);
  transition: border-color var(--motion-duration-slow) var(--motion-easing);
  
  background: var(--glass-surface, var(--color-surface));
  box-shadow: var(--shadow-lg);
  
  position: relative;
  isolation: isolate;
}

.site-header--floating .site-header__inner::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  -webkit-backdrop-filter: var(--glass-filter, none);
  backdrop-filter: var(--glass-filter, none);
}

.site-header--floating .site-header__inner:hover {
  border-color: var(--header-pill-border-hover, var(--header-pill-border, var(--color-border)));
}


@media (min-width: 48rem) and (max-width: 63.99rem) {
  .site-header__inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
  }

  .site-header__logo {
    grid-column: 2;
    justify-self: center;
    min-width: 0;
  }

  .site-header__burger {
    grid-column: 3;
    justify-self: end;
  }

  
  .site-header__inner > .site-nav__lang:not(.site-nav__lang--in-nav) {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    margin-inline: 0;
  }

  .site-header--floating .site-header__inner {
    padding-inline-start: var(--space-2);
  }
}

.site-header--floating.is-stuck {
  box-shadow: none;
}


.site-header--floating .site-header__cta {
  border-radius: var(--radius-full);
}


body:has(.site-header--floating:not([hidden], .pv-off)) main {
  padding-block-start: var(--space-16);
}


@media (max-width: 47.99rem) {
  .site-header--floating.is-menu-open .site-header__inner {
    box-shadow: var(--shadow-lg);
  }
}



.testimonial {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-6);
  border-radius: var(--radius-md);
  background: var(--testimonial-surface, var(--color-surface-alt));
  color: var(--testimonial-ink, currentColor);
}


.testimonial__quote {
  font-size: var(--text-lg);
  line-height: var(--leading-normal);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: hidden;
}


.testimonial__more {
  align-self: flex-start;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  font: inherit;
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
  color: var(--testimonial-more-ink, var(--color-primary));
  text-decoration: underline;
  text-underline-offset: 0.2em;
}


.testimonial__more:hover {
  color: var(--testimonial-more-hover-ink,
    var(--color-primary-hover, var(--color-primary-700)));
}


.testimonial__author {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin-block-start: auto;
}

.testimonial__avatar {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--radius-full);
  overflow: hidden;
  background: var(--testimonial-avatar-surface, var(--color-primary-100));
  
  color: var(--testimonial-avatar-ink,
    var(--color-primary-ink, var(--color-primary-800)));
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: var(--font-weight-bold);
  flex-shrink: 0;
}

.testimonial__name {
  font-weight: var(--font-weight-bold);
}

.testimonial__role {
  font-size: var(--text-sm);
  color: var(--testimonial-role-ink, var(--color-text-muted));
}



.accordion {
  display: flex;
  flex-direction: column;
  gap: var(--accordion-gap, 0);
  border-block-start: var(--border-width) solid var(--accordion-rule, var(--color-border));
}

.accordion__item {
  border-style: solid;
  border-color: var(--accordion-panel-border, transparent);
  border-width: var(--accordion-panel-width, 0);
  border-block-end-width: var(--border-width);
  border-block-end-color: var(--accordion-panel-border, var(--accordion-rule, var(--color-border)));
  border-radius: var(--accordion-radius, 0);
  background: var(--accordion-surface, transparent);
  box-shadow: var(--accordion-shadow, none);
  -webkit-backdrop-filter: var(--accordion-filter, none);
  backdrop-filter: var(--accordion-filter, none);
}


.accordion__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) var(--accordion-inset, 0);
  font-weight: var(--font-weight-bold);
  cursor: pointer;
  list-style: none;
}

.accordion__item summary::-webkit-details-marker {
  display: none;
}


.accordion__item summary::after {
  content: "";
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  background:
    linear-gradient(currentColor, currentColor) center / 2px 16px no-repeat,
    linear-gradient(currentColor, currentColor) center / 16px 2px no-repeat;
  color: var(--color-primary);
  transform: rotate(0deg);
  transform-origin: center;
  transition: transform var(--motion-duration-slow) var(--motion-easing);
  will-change: transform;
}

.accordion__item[open] summary::after {
  transform: rotate(45deg);
}


.accordion__item.is-collapsing summary::after {
  transform: rotate(0deg);
}

.accordion__content {
  padding: 0 var(--accordion-inset, 0) var(--space-4);
  color: var(--color-text-muted);
}


.pager {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  margin-block-start: var(--space-16);
  padding-block-start: var(--space-8);
  border-block-start: var(--border-width) solid var(--color-border);
}

.pager__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  min-height: 2.75rem;
  padding-inline: var(--space-4);
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--radius-full);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
  color: var(--color-text);
}

.pager__link:hover {
  border-color: var(--color-primary);
  color: var(--color-primary);
}


.pager__link--next {
  margin-inline-start: auto;
}

.pager__link .icon {
  width: 1.25rem;
  height: 1.25rem;
  transition: translate var(--motion-duration-slow) var(--ease-out-expo);
}

.pager__link--prev:hover .icon { translate: calc(-1 * var(--space-1)) 0; }
.pager__link--next:hover .icon { translate: var(--space-1) 0; }


.load-more {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  margin-block-start: var(--space-16);
  padding-block-start: var(--space-8);
  border-block-start: var(--border-width) solid var(--color-border);
}

.load-more__status {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
  
  min-height: 0;
}

.load-more__status:empty {
  display: none;
}



.section.block-crumbs {
  padding-block: var(--space-16) 0;
}


.block-crumbs:not(.pv-off) + .section:not(.section--panel),
.block-crumbs:not(.pv-off) + .pv-off + .section:not(.section--panel),
.block-crumbs:not(.pv-off) + .pv-off + .pv-off + .section:not(.section--panel),
.block-crumbs:not(.pv-off) + .pv-off + .pv-off + .pv-off + .section:not(.section--panel) {
  padding-block-start: var(--space-4);
}


.block-crumbs:has(+ * .article__head) > .container,
.block-crumbs:has(+ * .block-reference__head) > .container,
.block-crumbs:has(+ * .block-text__head) > .container {
  max-width: calc(var(--measure) + 2 * var(--gutter));
}

.breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: var(--text-sm);
}

.breadcrumbs li:not(:last-child)::after {
  content: "/";
  margin-inline-start: var(--space-2);
  color: var(--color-text-muted);
}

.breadcrumbs a {
  color: var(--color-text-muted);
  text-decoration: none;
}

.breadcrumbs a:hover {
  color: var(--color-primary);
}

.breadcrumbs [aria-current="page"] {
  color: var(--color-text);
}


.contact-form {
  display: grid;
  gap: var(--space-4);
  grid-template-columns: 1fr;
}


.contact-form__actions {
  display: flex;
  justify-content: var(--form-footer-align, flex-start);
}

@media (min-width: 40rem) {
  .contact-form { grid-template-columns: repeat(2, 1fr); }

  .contact-form .field--wide,
  .contact-form .field--checkbox,
  .contact-form .contact-form__actions {
    grid-column: 1 / -1;
  }
}




.section--slim {
  padding-block: var(--space-8);
}


.block-hero__inner {
  position: relative;            
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.block-hero__title {
  font-size: var(--text-5xl);
  max-width: 18ch;
  margin-block-start: var(--space-6);
}


.block-hero__title:first-child {
  margin-block-start: 0;
}


.block-hero--photo {
  position: relative;
  display: grid;
  
  align-content: center;
  align-content: var(--hero-align, safe end);
  
  min-height: var(--hero-min-height, 84svh);
  
  
  padding-block:
    calc(min(var(--section-space), 14svh) + var(--header-height))
    var(--hero-foot, min(var(--space-16), 8svh));
  color: var(--color-text-on-inverse);
  
  overflow: hidden;
  
  isolation: isolate;
}


.block-hero--photo::after {
  content: "";
  background-image: var(--section-photo, none);
}

.block-hero--photo::after,
.block-hero--photo > .block-hero__photo {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-size: cover;
  background-position: center;
  
  animation: var(--hero-entrance, hero-photo-settle 2s var(--ease-out-expo) both),
             var(--hero-ambient, none);
}

@keyframes hero-photo-settle {
  from { scale: 1.06; }
  to   { scale: 1; }
}


.block-hero--photo::before {
  animation: var(--hero-scrim-entrance, none);
}


.has-reveal .block-hero--photo {
  --reveal-lead-in: var(--hero-lead-in, 0s);
}


@media (prefers-reduced-motion: reduce) {
  .block-hero--photo::after,
  .block-hero--photo > .block-hero__photo,
  .block-hero--photo::before {
    animation: none;
  }
}


.block-hero--photo::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;    
  
  background: var(--hero-scrim, linear-gradient(
    to bottom,
    color-mix(in srgb, var(--color-surface-inverse) 55%, transparent) 0%,
    color-mix(in srgb, var(--color-surface-inverse) 55%, transparent) 40%,
    color-mix(in srgb, var(--color-surface-inverse) 70%, transparent) 50%,
    color-mix(in srgb, var(--color-surface-inverse) 82%, transparent) 100%
  ));
}


.block-hero--photo .block-hero__title {
  font-size: min(var(--text-5xl), 9.5svh);
}

.block-hero--photo > .container > .lead {
  font-size: min(var(--text-xl), 3svh);
}


.block-hero--photo .block-hero__title,
.block-hero--photo > .container > .lead {
  text-shadow: 0 4px 24px color-mix(in srgb, var(--color-surface-inverse) 60%, transparent);
}

.block-hero--photo .lead,
.block-hero--photo .hero-highlights li,
.block-hero--photo .hero-highlights .icon {
  color: var(--color-text-on-inverse);
}


.block-hero--photo .eyebrow {
  border-color: color-mix(in srgb, var(--color-text-on-inverse) 30%, transparent);
  background: color-mix(in srgb, var(--color-surface-inverse) 45%, transparent);
  color: var(--color-text-on-inverse);
}


.block-hero--photo .btn--ghost {
  color: var(--color-text-on-inverse);
}


.block-hero--photo .btn--ghost:hover {
  background: var(--btn-ghost-hover-surface,
    color-mix(in srgb, var(--color-text-on-inverse) 15%, transparent));
  color: var(--btn-ghost-hover-ink, var(--color-text-on-inverse));
}


body:has(.site-header--floating:not([hidden], .pv-off)) main:has(> .block-hero--photo) {
  padding-block-start: 0;
}


.block-hero--photo {
  margin-block-start: 0;
  margin-inline: 0;
  border-radius: 0;
}

@media (min-width: 48rem) {
  .block-hero--photo {
    
    margin-inline: var(--panel-inset, var(--space-6));
    
    border-end-start-radius: var(--radius-panel);
    border-end-end-radius: var(--radius-panel);
  }
}

.block-hero__inner > .lead {
  margin-block-start: var(--space-6);
  
  max-width: 46ch;
}

.block-hero__inner .hero-actions,
.block-hero__inner .hero-highlights {
  justify-content: center;
}



.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-block-start: var(--space-8);
}

.hero-highlights {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-6);
  margin-block-start: var(--space-8);
  padding: 0;
  list-style: none;
}

.hero-highlights li {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-muted);
}

.hero-highlights .icon {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--color-primary);
}



.block-about__grid {
  display: grid;
  gap: var(--space-10);
  align-items: center;
}

@media (min-width: 56rem) {
  .block-about__grid {
    grid-template-columns: 0.9fr 1.1fr;
    gap: var(--space-16);
  }

  .block-about--mirror .block-about__media {
    order: 2;
  }
}

.block-about__media .img-frame {
  border-radius: var(--radius-xl);
}

.about-stats {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
  margin-block-start: var(--space-8);
  padding: 0;
  list-style: none;
}


.stat__value {
  display: block;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  
  font-size: var(--stat-size, var(--text-2xl));
  line-height: 1.1;
  color: var(--color-secondary-strong);
}


.surface-inverse .stat__value { color: var(--color-text-on-inverse); }
.surface-brand   .stat__value { color: var(--color-text-on-primary); }

.stat__label {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}




.process {
  --process-pin: 3rem;
  display: grid;
  gap: var(--space-10) var(--space-8);
  padding: 0;
  margin: 0;
  list-style: none;
  counter-reset: process;
}

.process-step {
  position: relative;
  display: grid;
  grid-template-columns: var(--process-pin) 1fr;
  grid-template-rows: auto auto auto;
  column-gap: var(--space-4);
  align-content: start;
}

.process-step__pin {
  grid-row: 1 / span 3;
  width: var(--process-pin);
  height: var(--process-pin);
  display: grid;
  place-items: center;
  background: var(--color-surface);
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  color: var(--color-secondary);
}

.process-step__pin .icon {
  width: 1.5rem;
  height: 1.5rem;
}

.process-step__head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: var(--space-1) var(--space-2);
}

.process-step__label {
  font-size: var(--text-sm);
  font-weight: var(--font-weight-bold);
  color: var(--color-secondary-strong);
}


.surface-inverse .process-step__label { color: var(--color-text-on-inverse); }
.surface-brand   .process-step__label { color: var(--color-text-on-primary); }

.process-step__duration {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.process-step__title {
  font-size: var(--text-lg);
  margin-block-start: var(--space-2);
}

.process-step__title::before {
  counter-increment: process;
  content: counter(process) ". ";
}

.process-step__text {
  font-size: var(--text-base);
  color: var(--color-text-muted);
  margin-block-start: var(--space-2);
}


.process-step:not(:last-child)::before {
  content: "";
  position: absolute;
  left: calc(var(--process-pin) / 2);
  top: calc(var(--process-pin) + var(--space-1));
  bottom: calc(var(--space-1) - var(--space-10));
  border-inline-start: 2px dashed
    var(--process-connector,
      color-mix(in srgb, var(--color-secondary) 35%, var(--color-surface)));
}

@media (min-width: 56rem) {
  .process {
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  }

  .process-step {
    grid-template-columns: 1fr;
    row-gap: var(--space-3);
  }

  .process-step__pin {
    grid-row: auto;
  }

  .process-step__head { margin-block-start: var(--space-1); }
  .process-step__title { margin-block-start: 0; }
  .process-step__text { margin-block-start: 0; }

  
  .process-step:not(:last-child)::before {
    left: calc(var(--process-pin) + var(--space-3));
    right: calc(var(--space-3) - var(--space-8));
    top: calc(var(--process-pin) / 2);
    bottom: auto;
    border-inline-start: none;
    border-block-start: 2px dashed
      var(--process-connector,
        color-mix(in srgb, var(--color-secondary) 35%, var(--color-surface)));
  }
}


.block-cta__inner {
  max-width: 46rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-6);
  text-align: center;
}


.section:has(> .block-cta__inner) {
  padding-block: calc(var(--section-space) * 0.72);
}


.section--photo {
  position: relative;
  
  background-image: var(--section-photo, none);
  background-size: cover;
  background-position: center;
}

.section--photo::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;   
  
  background: var(--section-scrim, linear-gradient(
    to bottom,
    color-mix(in srgb, var(--color-primary-900) 74%, transparent) 0%,
    color-mix(in srgb, var(--color-primary-900) 62%, transparent) 38%,
    color-mix(in srgb, var(--color-primary-900) 66%, transparent) 62%,
    color-mix(in srgb, var(--color-primary-900) 78%, transparent) 100%
  ));
}


.section--photo :where(h2, .display, .lead) {
  text-shadow: 0 2px 18px color-mix(in srgb, var(--color-primary-900) 55%, transparent);
}

.section--photo > * {
  position: relative;       
}


.surface-brand .btn--primary {
  background: var(--btn-brand-surface, var(--color-surface));
  color: var(--btn-brand-ink, var(--color-text));
}

.surface-brand .btn--primary:hover {
  background-color: var(--btn-brand-hover-surface,
    color-mix(in srgb, var(--color-primary) 12%, var(--color-surface)));
  color: var(--btn-brand-hover-ink, var(--btn-brand-ink, var(--color-text)));
}


.surface-brand .btn--ghost {
  color: var(--color-text-on-primary);
}

.surface-brand .btn--ghost:hover {
  background: color-mix(in srgb, var(--color-text-on-primary) 14%, transparent);
  color: var(--color-text-on-primary);
}


.block-contact__grid {
  display: grid;
  gap: var(--space-10);
  align-items: start;
}

@media (min-width: 56rem) {
  .block-contact__grid {
    grid-template-columns: 1.15fr 0.85fr;
    gap: var(--space-16);
  }

  
  .block-contact__grid:has(> :only-child) {
    grid-template-columns: min(100%, 40rem);
    justify-content: var(--contact-solo-align, start);
  }
}

.contact-info {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-8);
  background: var(--color-surface-alt);
  border-radius: var(--radius-lg);
}

.contact-info__row {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}

.contact-info__row .icon {
  flex-shrink: 0;
  color: var(--color-primary);
  margin-block-start: 0.15em;
}

.contact-info__note {
  padding-block-start: var(--space-4);
  border-block-start: var(--border-width) solid var(--color-border);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}


.contact-cards {
  display: grid;
  gap: var(--space-6);
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

.contact-cards--stack {
  grid-template-columns: 1fr;
}

.contact-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  padding: var(--space-6);
  background: var(--color-surface-alt);
  border-radius: var(--radius-lg);
}


.surface-alt .contact-card,
.surface-brand .contact-card,
.surface-inverse .contact-card {
  background: var(--color-surface);
  color: var(--color-text);
}


.contact-card__icon {
  display: flex;
  margin-block-end: var(--space-2);
  color: var(--color-primary);
}


.contact-card__label {
  font-size: var(--text-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}


.contact-card__value {
  font-size: var(--text-lg);
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-tight);
}

.contact-card__note {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}


.contact-card__legal {
  margin-block-start: auto;
  padding-block-start: var(--space-4);
  border-block-start: var(--border-width) solid var(--color-border);
  font-size: var(--text-sm);
  line-height: var(--leading-normal);
  color: var(--color-text-muted);
}


.block-contact__split,
.block-location__grid {
  display: grid;
  gap: var(--space-10);
  align-items: start;
}

@media (min-width: 56rem) {
  .block-contact__split,
  .block-location__grid {
    grid-template-columns: 1.15fr 0.85fr;
    gap: var(--space-16);
  }
}


.contact-card--location {
  height: 100%;
}

.contact-map {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}


.contact-map .btn {
  align-self: stretch;
}


.block-partners__grid {
  display: grid;
  gap: var(--space-6);
  align-items: center;
}

@media (min-width: 56rem) {
  .block-partners__grid {
    grid-template-columns: auto 1fr;
    gap: var(--space-12);
  }
}


.block-partners__label {
  font-size: var(--text-xs);
  line-height: var(--leading-normal);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-text-muted);
  text-wrap: balance;
}

.partner-logo {
  font-family: var(--font-heading);
  font-size: var(--text-lg);
  color: var(--color-text-muted);
  opacity: 0.65;
  white-space: nowrap;
}


.marquee {
  overflow: hidden;
  
  -webkit-mask-image: var(--marquee-fade);
  mask-image: var(--marquee-fade);
  --marquee-fade: linear-gradient(
    to right,
    transparent,
    #000 var(--space-16),
    #000 calc(100% - var(--space-16)),
    transparent
  );
}

.marquee__track {
  display: flex;
  width: max-content;
  animation: marquee-drift var(--marquee-duration, 44s) linear infinite;
  will-change: transform;
}


.marquee__item {
  padding-inline-end: var(--space-12);
}


.marquee__duplicate {
  display: contents;
}



@keyframes marquee-drift {
  to {
    transform: translateX(-50%);
  }
}


.block-faq__inner {
  max-width: 46rem;
}


.block-text__head,
.block-text__body {
  max-width: var(--measure);
  margin-inline: auto;
}

.block-text__head {
  margin-block-end: var(--space-12);
}

.block-text__meta {
  margin-block-start: var(--space-4);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}


.block-notfound {
  position: relative;
  overflow: hidden;              
  
  isolation: isolate;
}


.block-notfound__art {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  translate: -50% -50%;
  width: min(120%, 60rem);
  height: auto;
  opacity: 0.22;
  pointer-events: none;
  user-select: none;
  
  z-index: -1;
}


.block-notfound__art ~ * .lead,
.block-notfound__art ~ * .block-notfound__links p {
  color: var(--color-text);
}

.block-notfound__inner {
  max-width: 40rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  text-align: center;
}

.block-notfound__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-3);
  margin-block-start: var(--space-4);
}


.block-notfound__links {
  width: 100%;
  margin-block-start: var(--space-8);
  padding-block-start: var(--space-6);
  border-block-start: var(--border-width) solid var(--color-border);
}

.block-notfound__links p {
  margin-block-end: var(--space-4);
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.block-notfound__links ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-2) var(--space-6);
  padding: 0;
  list-style: none;
}



.block-thanks__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  margin-block-end: var(--space-6);
  border-radius: var(--radius-full);
  background: var(--color-success-soft);
  color: var(--color-success);
}

.block-thanks__mark .icon {
  width: 2rem;
  height: 2rem;
}


.block-thanks__next {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  width: fit-content;
  margin-block-start: var(--space-8);
  padding: 0;
  list-style: none;
  text-align: start;
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.block-thanks__next li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
}

.block-thanks__next .icon {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  color: var(--color-primary);
  
  margin-block-start: 0.1em;
}


.site-footer {
  position: relative;
  overflow: hidden;              
  
  padding-block: var(--space-16) var(--space-8);
  
  background-image: var(--footer-backdrop, linear-gradient(
    to top,
    var(--color-surface-alt),
    transparent
  ));
  
  color: var(--color-text);
  text-align: center;
}


.site-footer :where(a) {
  color: inherit;
}


.footer-watermark {
  position: absolute;
  inset-inline: 0;
  inset-block-start: var(--space-8);
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  font-size: clamp(6rem, 20vw, 16rem);
  line-height: 1;
  -webkit-mask-image: linear-gradient(to bottom, #000 20%, transparent 88%);
  mask-image: linear-gradient(to bottom, #000 20%, transparent 88%);
  letter-spacing: var(--tracking-display);
  
  
  color: var(--footer-watermark-color,
    color-mix(in srgb, var(--color-primary) 22%, var(--color-surface)));
  pointer-events: none;
  user-select: none;
}

.footer__inner {
  position: relative;            
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
}

.footer-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: var(--radius-lg);
  
  background: var(--footer-mark-surface, var(--color-primary));
  color: var(--footer-mark-ink, var(--color-text-on-primary));
  box-shadow: var(--shadow-md);
}

.footer__title {
  font-size: var(--text-2xl);
  text-wrap: balance;
}

.footer__meta {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
}


.footer-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-4);
  margin-block-start: var(--space-8);
}

.footer-pill {
  display: inline-flex;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-2);
  padding-inline-start: var(--space-6);
  
  border-radius: var(--footer-pill-radius, var(--radius-full));
  
  background: var(--footer-pill-surface, var(--color-surface));
  
  color: var(--footer-pill-ink, inherit);
  box-shadow: var(--shadow-md);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
  transition:
    translate var(--motion-duration-slow) var(--ease-out-expo),
    box-shadow var(--motion-duration-slow) var(--ease-out-expo);
}

.footer-pill:hover {
  translate: 0 -4px;
  box-shadow: var(--shadow-lg);
}


.footer-pill--icon {
  padding-inline-start: var(--space-2);
}


.footer-pills__social {
  display: flex;
  gap: var(--space-4);
}

.footer-pill__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  
  border-radius: var(--footer-pill-icon-radius, var(--radius-full));
  background: var(--color-primary);
  color: var(--color-text-on-primary);
}

.footer-pill__icon .icon {
  width: 20px;
  height: 20px;
}



.footer-bar {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  margin-block-start: var(--space-16);
  padding-block-start: var(--space-6);
  border-block-start: var(--border-width) solid var(--color-border);
  font-size: var(--text-sm);
}


@media (min-width: 48rem) {
  .footer-bar {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
  }

  .footer-bar > :first-child {
    justify-self: start;
  }

  .footer-bar > :last-child {
    justify-self: end;
  }
}

.footer-bar ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-bar__legal {
  color: var(--color-text-muted);
}


.footer-made-by {
  display: block;
  width: fit-content;
  margin-inline: auto;
  margin-block-start: var(--space-8);
  color: var(--color-text-muted);
  opacity: 0.6;
  transition:
    opacity var(--motion-duration) var(--ease-out-expo),
    color var(--motion-duration) var(--ease-out-expo);
}


.footer-made-by:hover {
  opacity: 1;
  color: var(--footer-made-by-hover-ink, var(--color-primary));
}

.footer-made-by svg {
  display: block;
}

.footer-top {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
}

.footer-top .icon {
  width: 20px;
  height: 20px;
  transition: translate var(--motion-duration-slow) var(--ease-out-expo);
}

.footer-top:hover .icon {
  translate: 0 -4px;
}




.has-reveal [data-reveal] {
  
  --reveal-delay: calc(
    var(--reveal-lead-in, 0s) + var(--reveal-index, 0) * var(--reveal-stagger));

  opacity: 0;
  transition:
    opacity var(--reveal-duration) var(--ease-out-expo) var(--reveal-delay),
    translate var(--reveal-duration) var(--ease-out-expo) var(--reveal-delay),
    scale var(--reveal-duration) var(--ease-out-expo) var(--reveal-delay),
    filter var(--reveal-duration) var(--ease-out-expo) var(--reveal-delay);
  will-change: opacity, translate;
}

.has-reveal [data-reveal].is-revealed {
  opacity: 1;
  translate: 0 0;
  scale: 1;
  filter: none;
  will-change: auto;
}


.has-reveal [data-reveal="up"],
.has-reveal [data-reveal=""] {
  translate: 0 var(--reveal-distance);
}

.has-reveal [data-reveal="down"] {
  translate: 0 calc(var(--reveal-distance) * -1);
}

.has-reveal [data-reveal="left"] {
  translate: var(--reveal-distance) 0;
}

.has-reveal [data-reveal="right"] {
  translate: calc(var(--reveal-distance) * -1) 0;
}


.has-reveal [data-reveal="fade"] {
  translate: none;
}


.has-reveal [data-reveal="scale"] {
  translate: 0 var(--reveal-distance);
  scale: 0.96;
}


.has-reveal [data-reveal="blur"] {
  translate: 0 var(--reveal-distance);
  filter: blur(8px);
}


.has-reveal [data-reveal-group] > * {
  --reveal-stagger: var(--reveal-stagger-group);
}


.has-reveal [data-reveal-group] > *:not([data-reveal]):not(.is-revealed) {
  opacity: 0;
  translate: 0 var(--reveal-distance);
}


.reveal-lines {
  display: block;
}

.has-reveal .reveal-line {
  display: block;
  overflow: hidden;
}

.has-reveal .reveal-line > span {
  display: block;
  translate: 0 100%;
  
  transition: translate var(--reveal-duration-slow) var(--ease-out-expo)
    calc(var(--reveal-lead-in, 0s) + var(--reveal-index, 0) * var(--reveal-stagger-line));
}

.has-reveal .reveal-line.is-revealed > span {
  translate: 0 0;
}


a,
summary,
.tag,
.field__input,
.link-arrow {
  transition:
    color var(--motion-duration) var(--ease-out-expo),
    background-color var(--motion-duration) var(--ease-out-expo),
    border-color var(--motion-duration) var(--ease-out-expo),
    opacity var(--motion-duration) var(--ease-out-expo);
}


.tag[href]:hover {
  background: var(--tag-hover-surface, var(--color-primary-200));
  color: var(--tag-hover-ink, var(--color-primary-900));
  box-shadow: inset 0 0 0 var(--border-width)
    var(--tag-hover-edge, var(--tag-edge, transparent));
}




.card {
  transition:
    box-shadow var(--motion-duration-slow) var(--ease-out-expo),
    translate var(--motion-duration-slow) var(--ease-out-expo),
    border-color var(--motion-duration) var(--ease-out-expo);
}


.card:has(a):hover {
  translate: 0 -4px;
  box-shadow: var(--shadow-lg);
  
  border-color: var(--card-border-hover, var(--color-primary-200));
}


.card__media img,
.card__media svg {
  transform-origin: center bottom;
  transition: scale var(--motion-duration-slow) var(--ease-out-expo);
}

.card:has(a):hover .card__media img,
.card:has(a):hover .card__media svg {
  scale: 1.04;
}


.site-nav ul a::after {
  content: "";
  display: block;
  height: var(--nav-marker-height, 2px);
  width: var(--nav-marker-rest-width, 0);
  margin-inline: var(--nav-marker-align, 0);
  
  margin-block-start: var(--nav-marker-offset, 0);
  margin-block-end: calc(-1 * (var(--nav-marker-height, 2px) + var(--nav-marker-offset, 0px)));
  background: currentColor;
  border-radius: var(--radius-full);
  opacity: var(--nav-marker-rest-opacity, 1);
  translate: var(--nav-marker-rest-translate, none);
  transition:
    width var(--motion-duration-slow) var(--ease-out-expo),
    opacity var(--motion-duration) var(--motion-easing),
    translate var(--motion-duration-slow) var(--ease-out-expo);
}

.site-nav ul a:hover::after,
.site-nav ul a[aria-current]:not([aria-current="false"])::after {
  width: var(--nav-marker-width, 100%);
  opacity: 1;
  translate: none;
}


.site-nav ul a:hover::after {
  animation: var(--nav-marker-animation, none);
}

.site-nav ul a[aria-current]:not([aria-current="false"])::after {
  animation: none;
}


.site-nav.is-open ul a::after {
  display: var(--nav-open-marker-display, block);
}




.site-nav__slider {
  display: none;
}

@media (min-width: 64rem) {
  .site-nav.has-nav-slider ul {
    position: relative;
  }

  
  .site-nav.has-nav-slider ul a::after {
    display: none;
  }

  .site-nav__slider {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 2px;
    width: 0;
    background: var(--color-primary);
    border-radius: var(--radius-full);
    pointer-events: none;
    
    transform: translateX(0);
    transition:
      transform var(--motion-duration-slow) var(--ease-out-expo),
      width var(--motion-duration-slow) var(--ease-out-expo),
      opacity var(--motion-duration) var(--ease-out-expo);
  }

  
  .site-nav__slider.is-idle {
    opacity: 0;
  }

  
  .site-nav__slider.no-anim {
    transition: none;
  }
}



.btn:hover:not(:disabled):not(.is-disabled) {
  translate: var(--btn-lift, 0 -3px);
  
  box-shadow: var(--btn-hover-shadow, var(--shadow-lg));
}


.btn:active:not(:disabled):not(.is-disabled) {
  translate: var(--btn-press, 0 -1px);
  box-shadow: var(--btn-press-shadow, var(--shadow-sm));
}



.btn--primary:hover:not(:disabled):not(.is-disabled) {
  box-shadow: var(--shadow-button-hover, var(--shadow-lg));
  animation: var(--btn-hover-animation, none);
}

.btn--primary:active:not(:disabled):not(.is-disabled) {
  box-shadow: var(--shadow-button, var(--shadow-sm));
}



.btn--ghost:hover:not(:disabled):not(.is-disabled) {
  box-shadow: var(--shadow-button-ghost-hover, var(--shadow-lg));
  animation: var(--btn-ghost-hover-animation, var(--btn-hover-animation, none));
}

.btn--ghost:active:not(:disabled):not(.is-disabled) {
  box-shadow: var(--shadow-button-ghost, var(--shadow-sm));
}


.newsletter-form__done {
  animation: form-done-in var(--reveal-duration) var(--ease-out-expo) both;
}

@keyframes form-done-in {
  from {
    opacity: 0;
    translate: 0 var(--reveal-distance);
  }
}


@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  
  .marquee__track {
    animation: none !important;
  }

  .marquee__duplicate {
    display: none;
  }

  .marquee {
    -webkit-mask-image: none;
    mask-image: none;
  }
}


.musa-page { background:var(--color-surface);color:var(--color-text); }
.musa-page h1,.musa-page h2,.musa-page p,.musa-page dl,.musa-page dd{margin:0}
.musa-page a{color:inherit;text-decoration:none}
.musa-page button{font:inherit;color:inherit;cursor:pointer}
.musa-page a,.musa-page button{transition:color 400ms var(--ease-out-expo),background 400ms var(--ease-out-expo),opacity 400ms var(--ease-out-expo)}
.musa-page :focus-visible{outline:2px solid var(--color-text);outline-offset:4px}
.musa-page a:hover,.musa-page button:hover{color:var(--color-secondary)}
.musa-container{width:min(1200px,calc(100% - 40px));margin-inline:auto}
.musa-label{font:400 12px/1.5 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted)}
.musa-skip{position:fixed;top:8px;left:8px;z-index:var(--z-modal);background:var(--color-surface);padding:12px;transform:translateY(-200%)}
.musa-skip:focus{transform:none}
.musa-header.site-header{position:fixed;inset:0 0 auto;background:color-mix(in srgb,var(--color-surface-alt) 88%,transparent);border-bottom:1px solid var(--color-border);height:60px;padding:0;backdrop-filter:blur(16px)}
.musa-header .site-header__inner{padding:0 20px;width:100%;max-width:none;height:60px;min-height:0;display:flex;justify-content:space-between;align-items:center}
.musa-wordmark{font:600 22px/1 var(--font-heading);white-space:nowrap}
.musa-header .site-nav__link{font:500 13px/1.5 var(--font-body);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}
.musa-header .site-nav__link:hover{color:var(--color-text)}
.musa-hero{position:relative;min-height:640px;height:100svh;overflow:hidden}
.musa-hero__photo,.musa-hero__veil{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center}
.musa-hero__veil{background:linear-gradient(180deg, rgb(0 0 0 / .48),rgb(0 0 0 / .18) 50%,rgb(0 0 0 / .68));pointer-events:none}
.musa-hero__inner{position:relative;width:min(1200px,calc(100% - 40px));height:100%;min-height:640px;margin:auto;display:flex;flex-direction:column;justify-content:space-between;padding:108px 0 32px;container-type:inline-size}
.musa-hero__title h1{font:600 clamp(32px,13.5cqi,172px)/1 var(--font-heading);letter-spacing:-.01em;text-align:center}
.musa-hero__title h1 em{font-weight:400;font-style:italic}
.musa-hero__title p{font:400 italic clamp(18px,2vw,24px)/1.4 var(--font-heading);text-align:center;margin-top:16px;text-wrap:balance;color:var(--color-text-muted)}
.musa-hero__bottom{display:flex;justify-content:space-between;gap:16px;font:400 10px/1.5 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted)}
.musa-statement{padding-block:80px}
.musa-statement h2{font:500 clamp(28px,3.1vw,44px)/1.18 var(--font-heading);letter-spacing:-.005em;max-width:1050px;margin-top:24px}
.musa-statement__body{display:grid;gap:32px;margin-top:60px}
.musa-statement__body>img{width:100%;max-width:360px;height:460px;object-fit:cover;object-position:center;border-radius:4px}
.musa-statement__body p{font-size:18px;line-height:1.5;color:var(--color-text-muted);margin-bottom:24px}
.musa-stats{display:flex;flex-wrap:wrap;gap:24px;margin-top:40px!important}
.musa-stats dt{font:500 44px/1.1 var(--font-heading)}
.musa-stats dd{font:400 12px/1.5 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted)}
.musa-gallery{padding:64px 0 80px;overflow:hidden}
.musa-gallery__head{display:flex;flex-direction:column;gap:24px;margin-bottom:44px}
.musa-gallery h2{font:500 clamp(40px,4.5vw,56px)/1.02 var(--font-heading);letter-spacing:-.01em;margin-top:16px}
.musa-gallery h2 em{font-weight:400}
.musa-gallery__intro{font:italic 400 16px/1.6 var(--font-heading);color:var(--color-text-muted);max-width:360px}
.musa-pause{padding:8px 0;margin-top:8px;background:none;border:0;border-bottom:1px solid var(--color-border);font:400 11px/1.5 var(--font-body)!important;letter-spacing:.1em;text-transform:uppercase}
.musa-films{display:none;position:relative}
.musa-mobile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.musa-frame{display:block;position:relative;overflow:hidden;background:var(--color-surface-alt);aspect-ratio:3/4;border-radius:0}
.musa-frame img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform 800ms var(--ease-out-expo)}
.musa-frame:hover img{transform:scale(1.04)}
.musa-pause{display:none}
.musa-contact{padding-block:80px;display:grid;gap:48px}
.musa-contact h2{font:italic 500 clamp(40px,4.6vw,66px)/1.04 var(--font-heading);letter-spacing:-.01em;margin:24px 0}
.musa-contact__intro{max-width:400px;font-size:18px;line-height:1.55;color:var(--color-text-muted)}
.musa-contact__details{display:grid;gap:24px;align-content:start}
.musa-contact__details>div{border-top:1px solid var(--color-border);padding-top:20px}
.musa-contact dt{font:400 12px/1.5 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:8px}
.musa-contact dd{font-size:16px;line-height:1.5}
.musa-inquiry-open{background:none;border:0;padding:0;border-bottom:1px solid var(--color-border)}
.musa-footer{padding:32px 20px;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;color:var(--color-text-muted);font:400 10px/1.6 var(--font-body);letter-spacing:.12em;text-transform:uppercase}
.musa-footer>div{display:flex;flex-wrap:wrap;gap:24px}
.musa-footer .footer-made-by{opacity:1;color:var(--color-text-muted)}
.musa-legal{min-height:80vh;padding-block:160px 80px}
.musa-legal h1{font:500 56px/1.2 var(--font-heading);margin-bottom:32px}
.musa-legal p{max-width:720px;line-height:1.8;color:var(--color-text-muted);margin-bottom:32px}
.musa-inquiry{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);padding:24px}
.musa-inquiry::backdrop{background:rgb(0 0 0 / .96)}
.musa-inquiry{width:min(640px,calc(100% - 32px));max-height:90svh;padding:32px}
.musa-inquiry-close{display:block;margin-left:auto;border:0;background:none;padding:8px}
.musa-inquiry h2{font:italic 500 40px/1.2 var(--font-heading);margin:24px 0}
.musa-form{display:grid;gap:24px}
.musa-form label{display:grid;gap:8px;color:var(--color-text-muted);font-size:14px}
.musa-form input,.musa-form textarea{width:100%;background:var(--color-surface-alt);color:var(--color-text);border:1px solid var(--color-border);border-radius:0;padding:12px;font:inherit}
.musa-form>button{border:1px solid var(--color-border);padding:16px;background:var(--color-surface-alt)}
.musa-form>p{font-size:12px;color:var(--color-text-muted)}
@media(min-width:768px){
 .musa-container,.musa-hero__inner{width:min(1200px,calc(100% - 96px))}
 .musa-header .site-header__inner{padding-inline:48px}
 .musa-hero__photo{object-position:center}
 .musa-statement{padding-block:120px}
 .musa-statement__body{grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:64px}
 .musa-gallery__head{flex-direction:row;justify-content:space-between;align-items:flex-end}
 .musa-gallery__head>div:last-child{text-align:right}
 .musa-gallery__intro{margin-left:auto!important}
 .musa-mobile-grid{display:none}
 .musa-films{display:block}
 .musa-pause{display:inline-block}
 .musa-track{overflow:hidden;margin-bottom:4px}
 .musa-strip{display:flex;width:max-content;animation:musa-film 90s linear infinite}
 .musa-sequence{display:flex;gap:4px;padding-right:4px}
 .musa-strip--reverse{animation-direction:reverse;animation-duration:110s}
 .musa-track:hover .musa-strip,.musa-track:focus-within .musa-strip,.musa-gallery.is-paused .musa-strip{animation-play-state:paused}
 .musa-frame{flex:0 0 240px;width:240px;height:332px;aspect-ratio:auto;border-radius:0}
 .musa-films::before,.musa-films::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:var(--z-base);pointer-events:none;background:linear-gradient(to right,var(--color-surface),transparent)}
 .musa-films::before{left:0}.musa-films::after{right:0;transform:scaleX(-1)}
 .musa-contact{padding-block:120px;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:80px}
 .musa-contact__details{padding-top:0}
 .musa-footer{padding-inline:48px}
}
@keyframes musa-film{to{transform:translateX(-50%)}}
@media(min-width:1024px){.musa-header .site-nav{margin-left:auto;flex:0 0 auto;width:auto}.musa-header .site-nav ul{display:flex;gap:36px;margin:0;padding:0}.musa-stats{gap:48px}}
@media(prefers-reduced-motion:reduce){.musa-strip{animation:none}.musa-films{display:none}.musa-mobile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.musa-mobile-grid .musa-frame{width:auto;height:auto;aspect-ratio:3/4}.musa-pause{display:none}.musa-frame img,.musa-page a,.musa-page button{transition:none}}


.musa-frame img{object-position:center top}
.musa-frame__caption{position:absolute;inset:auto 0 0;display:grid;justify-items:start;gap:8px;padding:40px 12px 12px;background:linear-gradient(transparent,rgb(0 0 0 / .88) 58%,rgb(0 0 0 / .96));color:var(--color-text);pointer-events:none}
.musa-frame__client{font:500 20px/1.15 var(--font-heading);text-wrap:balance}
.musa-tag{display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:4px 12px;border:1px solid var(--color-text-muted);border-radius:999px;font:400 11px/1.5 var(--font-body);letter-spacing:.02em;color:var(--color-text);text-wrap:balance;text-align:center;background:rgb(0 0 0 / .28)}
.musa-page .musa-frame:hover img{transform:none}
.musa-page .musa-frame:hover .musa-tag{background:rgb(255 255 255 / .12)}
.musa-tag{transition:background 400ms var(--ease-out-expo),border-color 400ms var(--ease-out-expo)}
html.musa-lightbox-open{overflow:hidden}
.musa-lightbox{width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;overflow:hidden;overscroll-behavior:contain;color:var(--color-text);background:color-mix(in srgb,var(--color-surface) 98%,transparent)}
.musa-lightbox::backdrop{background:transparent}
.musa-lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;animation:musa-lightbox-in 360ms var(--ease-out-expo) both}
.musa-lightbox__bar{position:relative;z-index:var(--z-base);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}
.musa-lightbox__wordmark{font:500 24px/1 var(--font-heading)}
.musa-lightbox__controls{display:flex;align-items:center;gap:12px}
.musa-lightbox__count{margin-right:8px;font:400 12px/1.5 var(--font-body);font-variant-numeric:tabular-nums;color:var(--color-text-muted)}
.musa-lightbox__btn{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid var(--color-border);border-radius:999px;background:color-mix(in srgb,var(--color-surface) 72%,transparent);color:var(--color-text);padding:0;cursor:pointer;transition:background 400ms var(--ease-out-expo),border-color 400ms var(--ease-out-expo)}
.musa-lightbox__btn:hover{background:var(--color-surface-alt);border-color:var(--color-text-muted)}
.musa-lightbox__btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.musa-lightbox__stage{position:relative;min-height:0;touch-action:none;user-select:none;cursor:grab;outline:none}
.musa-lightbox__stage.is-dragging{cursor:grabbing}
.musa-lightbox__stage.is-zoomed{cursor:move}
.musa-lightbox__figure{position:absolute;inset:0;margin:0;overflow:hidden;--viewer-pad-y:12px;--viewer-pad-x:0px}
.musa-lightbox__figure .musa-lightbox__img{position:absolute;inset:var(--viewer-pad-y) var(--viewer-pad-x);width:calc(100% - 2 * var(--viewer-pad-x));height:calc(100% - 2 * var(--viewer-pad-y));max-width:none;max-height:none;object-fit:contain;opacity:0;pointer-events:none;transform-origin:50% 50%;will-change:translate;user-select:none;-webkit-user-drag:none}
.musa-lightbox__prev,.musa-lightbox__next{position:absolute;z-index:var(--z-base);top:50%;translate:0 -50%}
.musa-lightbox__prev{left:12px}.musa-lightbox__next{right:12px}
.musa-lightbox__strip{position:relative;z-index:var(--z-base);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px;border-top:1px solid var(--color-border);background:var(--color-surface);max-height:36dvh;overflow-y:auto}
.musa-page .musa-lightbox__client{font:500 28px/1.15 var(--font-heading);margin:0 0 8px}
.musa-lightbox__description{max-width:64ch;font:400 13px/1.6 var(--font-body);color:var(--color-text-muted)}
.musa-lightbox__tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.musa-lightbox__tags .musa-tag{font-size:12px;padding:8px 16px}
.musa-lightbox.is-single .musa-lightbox__prev,.musa-lightbox.is-single .musa-lightbox__next,.musa-lightbox.is-single .musa-lightbox__count{display:none}
@keyframes musa-lightbox-in{from{opacity:0}to{opacity:1}}
@media(max-width:479px){.musa-frame__caption{padding:24px 8px 8px;gap:4px}.musa-frame__client{font-size:14px}.musa-frame__caption .musa-tag{font-size:9px;padding:2px 8px}.musa-lightbox__bar{padding:8px 12px}.musa-lightbox__controls{gap:8px}.musa-lightbox__strip{padding:16px;gap:12px}.musa-page .musa-lightbox__client{font-size:24px}.musa-lightbox__description{font-size:12px}.musa-lightbox__tags .musa-tag{font-size:11px;padding:4px 12px}}
@media(min-width:768px){.musa-lightbox__bar{padding:12px 32px}.musa-lightbox__figure{--viewer-pad-y:24px;--viewer-pad-x:80px}.musa-lightbox__strip{flex-direction:row;align-items:center;padding:24px 40px;gap:40px}.musa-lightbox__tags{justify-content:flex-end;max-width:40%}.musa-lightbox__prev{left:24px}.musa-lightbox__next{right:24px}}
@media(prefers-reduced-motion:reduce){.musa-lightbox[open]{animation:none}.musa-tag,.musa-lightbox__btn{transition:none}}

html.musa-lightbox-open .musa-strip{animation-play-state:paused}


.musa-frame__caption{display:none}
.musa-gallery__head{display:block}
.musa-gallery__heading{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:24px}
.musa-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:32px;text-align:left}
.musa-filter{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border:1px solid var(--color-border);border-radius:999px;background:transparent;color:var(--color-text-muted);font:400 12px/1.5 var(--font-body);cursor:pointer;transition:background 400ms var(--ease-out-expo),border-color 400ms var(--ease-out-expo),color 400ms var(--ease-out-expo)}
.musa-filter:hover{border-color:var(--color-text-muted);color:var(--color-text)}
.musa-page .musa-filter.is-active{background:var(--color-text);color:var(--color-surface);border-color:var(--color-text)}
.musa-filter-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.musa-frame[hidden]{display:none!important}
.musa-gallery__intro{max-width:360px}
@media(min-width:768px){.musa-gallery__heading{flex-direction:row;align-items:flex-end}.musa-gallery__heading .musa-gallery__intro{text-align:right}.musa-filters{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.musa-filter{transition:none}}

.musa-page .musa-filter{font:400 12px/1.5 var(--font-body)}


.musa-header.site-header{height:78px;background:rgb(4 5 4 / .92);backdrop-filter:none;--header-height:78px}
.musa-header .site-header__inner{height:78px;padding-inline:clamp(20px,3.33vw,64px)}
.musa-wordmark{position:relative;z-index:2;display:flex;align-items:center;gap:20px}
.musa-wordmark em{font:600 italic 30px/1 var(--font-heading);white-space:nowrap}
.musa-wordmark span{border-left:1px solid var(--color-border);padding-left:20px;font:400 12px/1.3 var(--font-body);letter-spacing:.06em}
.musa-header .site-nav__link{font-size:12px}
.musa-header .site-header__burger{width:44px;height:44px;padding:10px}
.musa-header .site-header__burger .icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5}
.musa-hero{height:100svh;min-height:640px;max-height:1100px;background:#000}
.musa-hero__photo{inset:auto;width:114.44%;height:125.47%;left:-5.99%;top:-11.85%;opacity:.6;object-fit:cover;object-position:center}
.musa-hero__veil{background:linear-gradient(180deg,transparent 72%,#040504)}
.musa-hero__inner{width:100%;min-height:0;display:grid;place-items:center;padding:78px 20px 0}
.musa-hero__title{position:relative;transform:translateY(-2%);text-align:center}
.musa-hero__title h1{position:relative;z-index:1;font:600 italic clamp(84px,6.5625vw,126px)/1.52 var(--font-heading);letter-spacing:-.02em}
.musa-hero__title p{position:relative;z-index:1;font:600 clamp(11px,1.04vw,20px)/1.5 var(--font-body);text-transform:uppercase;letter-spacing:.06em;margin:0}
.musa-hero__signature{position:absolute;width:52.26%;height:auto;left:15.5%;bottom:-34%;pointer-events:none}
.musa-clients{padding:100px 0 80px;overflow:hidden;background:#040504}
.musa-clients h2{text-align:center;font:500 italic clamp(36px,3vw,56px)/1.2 var(--font-heading);margin:0 20px 64px}
.musa-logo-strip{position:relative;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 26%,#000 74%,transparent)}
.musa-logo-track{display:flex;width:max-content;animation:musa-logos 85s linear infinite}
.musa-logo-sequence{display:flex;align-items:center;gap:80px;padding-right:80px}
.musa-logo{position:relative;flex:none;opacity:.65}
.musa-logo img{position:absolute;display:block;max-width:none}
.musa-logo-strip:focus-within .musa-logo-track{animation-play-state:paused}
.musa-logo-strip:not(.is-in-view) .musa-logo-track{animation-play-state:paused}
@keyframes musa-logos{to{transform:translateX(-50%)}}
.musa-statement__body>img{max-width:484px;height:auto;aspect-ratio:484/569;object-fit:cover;object-position:50% 45%}
.musa-art{padding-top:40px;background:#040504}
.musa-art__head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;padding-bottom:48px}
.musa-art h2{font:500 clamp(40px,4.5vw,56px)/1.05 var(--font-heading);margin-top:16px}
.musa-art__intro{max-width:360px;color:var(--color-text-muted);font:400 italic 18px/1.6 var(--font-heading);text-align:right}
.musa-art__journey{position:relative}
.musa-art__stage{position:relative;overflow:hidden}
.musa-art__cards{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:16px 20px 32px;scrollbar-width:thin;scrollbar-color:var(--color-text-muted) transparent}
.musa-art__card{display:block;flex:0 0 84%;max-width:440px;aspect-ratio:440/600;scroll-snap-align:center;background:var(--color-surface-alt);border-radius:6px;overflow:hidden;box-shadow:0 30px 80px -30px rgb(0 0 0 / .7)}
.musa-art__card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.musa-art__progress{display:none}
.musa-art__hint{font:400 11px/1.5 var(--font-body);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted);text-align:center;padding:16px 20px 24px}
html.musa-menu-open{overflow:hidden}
html.musa-menu-open .musa-strip,html.musa-menu-open .musa-logo-track{animation-play-state:paused}
@media(max-width:1023px){
 .musa-header .site-nav.is-open{height:100dvh;inset:0;width:100%;padding-top:94px;background:#040504}
 .musa-header .site-nav--list.is-open ul a{font:400 28px/1.25 var(--font-heading);text-transform:none;letter-spacing:0;padding:20px}
 .musa-header .site-header__inner{position:static}
 .musa-header .site-header__burger{z-index:3}
 .musa-header::before{display:none}
}
@media(max-width:767px){
 .musa-header.site-header,.musa-header .site-header__inner{height:64px;--header-height:64px}
 .musa-wordmark{gap:12px}.musa-wordmark span{font-size:9px;padding-left:12px}.musa-wordmark em{font-size:26px}
 .musa-header .site-nav.is-open{padding-top:80px}
 .musa-hero{height:88svh;min-height:600px}
 .musa-hero__inner{padding-top:64px}
 .musa-hero__photo{width:100%;height:100%;left:0;top:0;object-position:53% center;opacity:.65}
 .musa-hero__title{transform:translateY(35%)}
 .musa-clients{padding:64px 0 48px}.musa-clients h2{margin-bottom:40px}
 .musa-logo-sequence{gap:48px;padding-right:48px}
 .musa-logo{zoom:.8}
 .musa-art__head{display:block;padding-bottom:24px}.musa-art__intro{text-align:left;margin-top:24px!important}
}
@media(min-width:768px) and (prefers-reduced-motion:no-preference){
 .musa-art__journey.is-enhanced{height:240vh}
 .is-enhanced .musa-art__stage{position:sticky;top:78px;height:calc(100svh - 78px);perspective:1400px;min-height:480px}
 .is-enhanced .musa-art__cards{position:absolute;inset:0;overflow:visible;padding:0;display:block;transform-style:preserve-3d}
 .is-enhanced .musa-art__card{position:absolute;left:50%;top:48%;width:min(440px,34vw);height:min(600px,69svh);max-width:none;aspect-ratio:auto;margin-left:min(-220px,-17vw);margin-top:max(-300px,-34.5svh);will-change:transform,opacity;transform-style:preserve-3d}
 .is-enhanced .musa-art__progress{display:block;position:absolute;bottom:24px;left:8%;right:8%;height:2px;background:var(--color-border)}
 .is-enhanced .musa-art__progress span{display:block;height:100%;background:var(--color-text-muted);transform:scaleX(var(--art-progress,0));transform-origin:left}
 .is-enhanced .musa-art__hint{position:absolute;bottom:40px;left:0;right:0;pointer-events:none}
}
@media(prefers-reduced-motion:reduce){
 .musa-logo-track{animation:none;width:auto}.musa-logo-sequence{flex-wrap:wrap;justify-content:center;gap:32px;padding:0 20px}.musa-logo-sequence[aria-hidden]{display:none}.musa-logo-strip{mask-image:none}
 .musa-art__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px;margin:auto;overflow:visible}.musa-art__card{max-width:none}.musa-art__hint{display:none}
}

.musa-logo__mask-one{mask:url("/assets/store/bymusa/portfolio/mv8dh7duWswXdtyalHAQ.svg") -0.01px .35px / 52.79px 28.102px no-repeat}.musa-logo__mask-two{mask:url("/assets/store/bymusa/portfolio/mv8dh7o3PAdNyZxNIb8z.svg") .816px .35px / 42.306px 17.192px no-repeat}
.is-enhanced .musa-art__card{margin:0}

.musa-hero__inner{justify-content:center}
@media(min-width:768px){.musa-hero{height:51vw}}

.musa-hero__title h1,.musa-wordmark em,.musa-clients h2{font-family:"Musa Bodoni Display",var(--font-heading);font-optical-sizing:auto;font-synthesis:none}

.musa-header.site-header{border-bottom:0;background-image:url("/assets/store/bymusa/portfolio/mv8dh82cu6VIYOtA1mWs.svg");background-repeat:no-repeat;background-position:50% 100%;background-size:calc(100% - 128px) 1px}
.musa-wordmark span{position:relative;border-left:0}
.musa-wordmark span::before{content:"";position:absolute;left:0;top:50%;width:1px;height:29px;transform:translateY(-50%);background:url("/assets/store/bymusa/portfolio/mv8dh8dhUDFNCncSiEco.svg") center / 1px 29px no-repeat}
html.musa-document-hidden .musa-logo-track,html.musa-document-hidden .musa-strip{animation-play-state:paused}
@media(max-width:767px){.musa-header.site-header{background-size:calc(100% - 40px) 1px}.musa-wordmark span::before{height:20px;background-size:1px 20px}}
@media(prefers-reduced-motion:reduce){.musa-art__cards{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}}


.musa-header.site-header{background-image:none}
.musa-header::after{content:"";position:absolute;left:3.33%;right:3.33%;bottom:0;height:1px;background:url("/assets/store/bymusa/portfolio/mv8dh82cu6VIYOtA1mWs.svg") center / 100% 1px no-repeat;opacity:.18;pointer-events:none}
.musa-wordmark span::before{opacity:.18}
.musa-art__card{aspect-ratio:1}
@media(min-width:768px) and (prefers-reduced-motion:no-preference){.musa-art__journey.is-enhanced{height:var(--art-journey-height,420vh)}.is-enhanced .musa-art__card{width:min(440px,34vw,64svh);height:auto;aspect-ratio:1}}
html.musa-inquiry-visible{overflow:hidden}
html.musa-inquiry-visible .musa-strip,html.musa-inquiry-visible .musa-logo-track{animation-play-state:paused}
.musa-inquiry{width:min(1000px,calc(100% - 48px));max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--color-border);border-radius:24px;background:#101110;overflow:auto;overscroll-behavior:contain;box-shadow:0 40px 160px rgb(0 0 0 / .6)}
.musa-inquiry::backdrop{background:rgb(0 0 0 / .8);backdrop-filter:blur(10px)}
.musa-inquiry[open]{animation:musa-lightbox-in 300ms var(--ease-out-expo) both}
.musa-inquiry__layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.musa-inquiry-close{position:absolute;right:20px;top:20px;z-index:2;display:grid;place-items:center;width:44px;height:44px;margin:0;padding:12px;border:1px solid var(--color-border);border-radius:50%;background:#101110}
.musa-inquiry-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.musa-inquiry__aside{display:flex;flex-direction:column;align-items:flex-start;padding:56px 40px;background:#171917;border-right:1px solid var(--color-border)}
.musa-page .musa-inquiry h2{font:500 54px/1.05 var(--font-heading);margin:40px 0 24px;letter-spacing:-.02em;outline:none}
.musa-inquiry h2 em{font:500 italic 1em/1.05 "Musa Bodoni Display",var(--font-heading)}
.musa-inquiry__aside>p:not(.musa-label){font:400 15px/1.75 var(--font-body);color:var(--color-text-muted);max-width:28ch}
.musa-inquiry__direct{display:grid;gap:12px;margin-top:auto;padding-top:56px;font:400 13px/1.5 var(--font-body)}
.musa-inquiry__direct span{color:var(--color-text-muted);font-size:12px;margin-top:12px}
.musa-inquiry .musa-form{gap:28px;padding:60px 40px 40px;min-width:0}
.musa-project-types{display:flex;flex-wrap:wrap;gap:8px;margin-top:-12px}
.musa-project-types button{padding:8px 16px;min-height:40px;border:1px solid var(--color-border);border-radius:999px;background:transparent;font-size:12px}
.musa-project-types button:hover{border-color:var(--color-text-muted)}
.musa-page .musa-project-types button[aria-pressed="true"]{color:var(--color-surface);background:var(--color-text);border-color:var(--color-text)}
.musa-form__pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.musa-inquiry .musa-form label{gap:12px;font-size:12px;color:var(--color-text)}
.musa-inquiry .musa-form input:not([type="hidden"]),.musa-inquiry .musa-form textarea{background:transparent;border:0;border-bottom:1px solid #3c403c;padding:12px 0;font:400 14px/1.7 var(--font-body);color:var(--color-text);outline-offset:6px;box-shadow:none}
.musa-inquiry .musa-form textarea{resize:vertical;min-height:130px;max-height:300px}
.musa-inquiry .musa-form ::placeholder{color:#8b918b;opacity:1}
.musa-form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}
.musa-page .musa-form__submit{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--color-text);color:var(--color-surface);border:1px solid var(--color-text);border-radius:999px;padding:14px 24px;font-size:13px;min-height:48px}
.musa-page .musa-form__submit:hover{background:#ddd;color:#000}
.musa-form__submit span{font-size:20px;line-height:1}
.musa-page .musa-form__copy{background:none;border:0;border-bottom:1px solid var(--color-border);padding:8px 0;font-size:12px}
.musa-inquiry .musa-form .musa-form__note{font:400 11px/1.7 var(--font-body);color:var(--color-text-muted);max-width:42ch;margin-top:-12px}
.musa-inquiry .musa-form-status{font:400 12px/1.7 var(--font-body);color:var(--color-text);min-height:0}
.musa-form-status:empty{display:none}
.musa-form-status a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:767px){.musa-header::after{left:20px;right:20px}.musa-inquiry{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:20px}.musa-inquiry__layout{grid-template-columns:1fr}.musa-inquiry__aside{padding:32px 24px;border-right:0;border-bottom:1px solid var(--color-border)}.musa-page .musa-inquiry h2{font-size:40px;margin:28px 0 20px}.musa-inquiry__aside>p:not(.musa-label){max-width:34ch;font-size:14px}.musa-inquiry__direct{padding-top:24px;gap:8px}.musa-inquiry__direct span{margin-top:0}.musa-inquiry .musa-form{padding:32px 24px;gap:24px}.musa-form__pair{grid-template-columns:1fr;gap:24px}.musa-inquiry .musa-form input:not([type="hidden"]),.musa-inquiry .musa-form textarea{font-size:16px}.musa-inquiry-close{right:16px;top:16px}}
@media(prefers-reduced-motion:reduce){.musa-inquiry[open]{animation:none}}

.musa-inquiry-close{position:sticky;right:auto;top:16px;margin:16px 16px -60px auto}
.musa-project-types button{min-height:44px}


.is-enhanced .musa-art__cards{pointer-events:none}
.musa-inquiry{margin:auto;max-width:min(1000px,calc(100vw - 48px))}
@media(max-width:767px){.musa-inquiry{max-width:calc(100vw - 24px)}}


.musa-page{font-size:16px;letter-spacing:.035em}
.musa-statement__body p{font-size:16px;line-height:1.75;letter-spacing:.04em}
.musa-header .site-nav__link{font-size:11px;letter-spacing:.12em}
.musa-wordmark span{font-size:11px;letter-spacing:.08em}
.musa-hero__title p{font-size:clamp(11px,.94vw,18px);letter-spacing:.12em}
.musa-contact__intro{font-size:16px;line-height:1.75;letter-spacing:.04em}
.musa-contact dd{font-size:14px;letter-spacing:.04em}
.musa-page .musa-filter{font-size:11px;letter-spacing:.06em}
.musa-inquiry__aside>p:not(.musa-label){font-size:14px;letter-spacing:.035em}
.musa-inquiry .musa-form input:not([type="hidden"]),.musa-inquiry .musa-form textarea{font-size:13px;letter-spacing:.035em}
.musa-form__submit,.musa-form__copy,.musa-project-types button{letter-spacing:.04em}
.musa-lightbox__description{font-size:12px;letter-spacing:.035em}
@media(max-width:767px){.musa-wordmark span{font-size:9px;letter-spacing:.06em}.musa-inquiry .musa-form input:not([type="hidden"]),.musa-inquiry .musa-form textarea{font-size:16px}}


@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 .musa-films{display:block;position:relative}
 .musa-mobile-grid{display:none}
 .musa-track{overflow:hidden;margin-bottom:4px}
 .musa-strip{display:flex;width:max-content;animation:musa-film 90s linear infinite}
 .musa-sequence{display:flex;gap:4px;padding-right:4px}
 .musa-strip--reverse{animation-direction:reverse;animation-duration:110s}
 .musa-sequence .musa-frame{flex:0 0 clamp(132px,36vw,184px);width:clamp(132px,36vw,184px);height:auto;aspect-ratio:240/332}
 .musa-track:has(:focus-visible) .musa-strip,.musa-gallery.is-paused .musa-strip{animation-play-state:paused}
 .musa-films::before,.musa-films::after{content:'';position:absolute;top:0;bottom:0;width:32px;z-index:var(--z-base);pointer-events:none;background:linear-gradient(to right,var(--color-surface),transparent)}
 .musa-films::before{left:0}.musa-films::after{right:0;transform:scaleX(-1)}
}

@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 .musa-art__journey.is-enhanced{height:calc(var(--art-journey-height,420vh) - 20vh)}
 .is-enhanced .musa-art__stage{position:sticky;top:64px;height:calc(100svh - 64px);perspective:1400px;min-height:0;touch-action:pan-y}
 .is-enhanced .musa-art__cards{position:absolute;inset:0;overflow:visible;padding:0;display:block;transform-style:preserve-3d;pointer-events:none}
 .is-enhanced .musa-art__card{position:absolute;left:50%;top:48%;width:min(260px,72vw,62svh);height:auto;aspect-ratio:1;max-width:none;margin:0;will-change:transform,opacity;transform-style:preserve-3d}
 .is-enhanced .musa-art__progress{display:block;position:absolute;bottom:24px;left:8%;right:8%;height:2px;background:var(--color-border)}
 .is-enhanced .musa-art__progress span{display:block;height:100%;background:var(--color-text-muted);transform:scaleX(var(--art-progress,0));transform-origin:left}
 .is-enhanced .musa-art__hint{position:absolute;bottom:40px;left:0;right:0;pointer-events:none;font-size:10px}
}
.musa-art__card{position:relative}
.musa-art__caption{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:70px 24px 24px;background:linear-gradient(transparent,rgb(0 0 0 / .78));color:#fff;pointer-events:none}
.musa-art__caption strong{font:500 22px/1.15 var(--font-body);letter-spacing:.015em;text-wrap:balance}
.musa-art__caption span{font:400 11px/1.4 var(--font-body);letter-spacing:.06em;color:rgb(255 255 255 / .8)}
@media(max-width:767px){.musa-art__caption{padding:60px 20px 20px;gap:6px}.musa-art__caption strong{font-size:18px}.musa-art__caption span{font-size:10px}}


.musa-art__card{border-radius:18px;overflow:visible;background:#151615;box-shadow:0 28px 80px -20px rgb(0 0 0 / .75);transform-style:flat!important}
.musa-art__surface{position:absolute;inset:0;display:block;overflow:hidden;border-radius:inherit;background:#151615;isolation:isolate;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0)}
.musa-art__surface img{border-radius:inherit;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.musa-art__caption{border-radius:0 0 18px 18px}
@media(min-width:768px) and (prefers-reduced-motion:no-preference){.is-enhanced .musa-art__card{width:min(560px,44vw,72svh)}.is-enhanced .musa-art__stage{perspective:1600px}}
@media(max-width:767px) and (prefers-reduced-motion:no-preference){.is-enhanced .musa-art__card{width:min(340px,86vw,66svh)}.is-enhanced .musa-art__stage{perspective:1400px}}

/* Specific categories are a quiet, unique selection; All keeps the film strips. */
.musa-gallery .musa-films[hidden]{display:none}
.musa-gallery.is-filtered .musa-mobile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:min(1200px,calc(100% - 40px));margin-inline:auto}
.musa-gallery.is-filtered .musa-mobile-grid .musa-frame{width:auto;height:auto;aspect-ratio:3/4;border-radius:12px;border:1px solid rgb(255 255 255 / .06)}
.musa-gallery.is-filtered .musa-mobile-grid .musa-frame[hidden]{display:none}
.musa-gallery.is-filtered .musa-frame img{object-position:center top}
@media(max-width:767px){.musa-gallery.is-filtered .musa-mobile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.musa-gallery.is-filtered .musa-mobile-grid .musa-frame{border-radius:8px}}
