.wpcf7 .screen-reader-response {
position: absolute;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
padding: 0;
border: 0;
word-wrap: normal !important;
word-break: normal !important;
}
.wpcf7 .hidden-fields-container {
display: none;
}
.wpcf7 form .wpcf7-response-output {
margin: 2em 0.5em 1em;
padding: 0.2em 1em;
border: 2px solid #00a0d2; }
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
border-color: #46b450; }
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
border-color: #dc3232; }
.wpcf7 form.spam .wpcf7-response-output {
border-color: #f56e28; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
border-color: #ffb900; }
.wpcf7-form-control-wrap {
position: relative;
}
.wpcf7-not-valid-tip {
color: #dc3232; font-size: 1em;
font-weight: normal;
display: block;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
position: relative;
top: -2ex;
left: 1em;
z-index: 100;
border: 1px solid #dc3232;
background: #fff;
padding: .2em .8em;
width: 24em;
}
.wpcf7-list-item {
display: inline-block;
margin: 0 0 0 1em;
}
.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
content: " ";
}
.wpcf7-spinner {
visibility: hidden;
display: inline-block;
background-color: #23282d; opacity: 0.75;
width: 24px;
height: 24px;
border: none;
border-radius: 100%;
padding: 0;
margin: 0 24px;
position: relative;
}
form.submitting .wpcf7-spinner {
visibility: visible;
}
.wpcf7-spinner::before {
content: '';
position: absolute;
background-color: #fbfbfc; top: 4px;
left: 4px;
width: 6px;
height: 6px;
border: none;
border-radius: 100%;
transform-origin: 8px 8px;
animation-name: spin;
animation-duration: 1000ms;
animation-timing-function: linear;
animation-iteration-count: infinite;
}
@media (prefers-reduced-motion: reduce) {
.wpcf7-spinner::before {
animation-name: blink;
animation-duration: 2000ms;
}
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
@keyframes blink {
from {
opacity: 0;
}
50% {
opacity: 1;
}
to {
opacity: 0;
}
}
.wpcf7 [inert] {
opacity: 0.5;
}
.wpcf7 input[type="file"] {
cursor: pointer;
}
.wpcf7 input[type="file"]:disabled {
cursor: default;
}
.wpcf7 .wpcf7-submit:disabled {
cursor: not-allowed;
}
.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
direction: ltr;
}
.wpcf7-reflection > output {
display: list-item;
list-style: none;
}
.wpcf7-reflection > output[hidden] {
display: none;
}.wpcf7-not-valid-tip {
direction: rtl;
}
.use-floating-validation-tip .wpcf7-not-valid-tip {
right: 1em;
}
.wpcf7-list-item {
margin: 0 1em 0 0;
}@font-face {
font-family: 'Google Sans';
font-style: normal;
font-weight: 400 700;
font-display: swap;
src: url(//zekolhasipur.com/wp-content/themes/sipur/assets/fonts/google-sans-hebrew.woff2) format('woff2');
unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
} @font-face {
font-family: 'Google Sans';
font-style: normal;
font-weight: 400 700;
font-display: swap;
src: url(//zekolhasipur.com/wp-content/themes/sipur/assets/fonts/google-sans-latin-ext.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: 'Google Sans';
font-style: normal;
font-weight: 400 700;
font-display: swap;
src: url(//zekolhasipur.com/wp-content/themes/sipur/assets/fonts/google-sans-latin.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 {  --color-neutral-50:  #f6f7f9;
--color-neutral-100: #eceef2;
--color-neutral-200: #d5d9e2;
--color-neutral-300: #b1bbc8;
--color-neutral-400: #8695aa;
--color-neutral-500: #64748b;
--color-neutral-600: #526077;
--color-neutral-700: #434e61;
--color-neutral-800: #3a4252;
--color-neutral-900: #343a46;
--color-neutral-950: #23272e; --color-primary-300: #9ee3df; --color-primary-500: #288084; --color-primary-700: #226d73; --color-primary-950: #0f2123;   --color-secondary-300: #b7d6f6; --color-secondary-700: #1a4789;  --color-cream: #fcf7ef;
--color-white: #ffffff; --color-surface-action-primary:    var(--color-primary-500);
--color-surface-hover-primary:     var(--color-primary-700);
--color-surface-clicked-primary:   var(--color-primary-950);
--color-surface-stroke-primary:    var(--color-primary-300);
--color-surface-action-secondary:  var(--color-secondary-700);
--color-surface-stroke-secondary:  var(--color-secondary-300);
--color-surface-page:              var(--color-cream);
--color-surface-white:             var(--color-white);
--color-surface-stroke-disabled:   var(--color-neutral-300);
--color-text-heading:              var(--color-primary-950);
--color-text-body:                 var(--color-neutral-600); --color-icon-on-action:            #f8fafc;  --font-display: "Google Sans", system-ui, sans-serif;
--font-body:    "Google Sans", system-ui, sans-serif;
--h1:     120px;  --h1-lh: 120px;  --h1-tracking: 0;
--h2:      64px;  --h2-lh:  64px;  --h2-tracking: -1px;
--h3:      44px;  --h3-lh:  44px;  --h3-tracking: -2px;
--h4:      38px;  --h4-lh:  38px;  --h4-tracking: 0;
--h5:      28px;  --h5-lh:  28px;  --h5-tracking: 0;
--h6:      22px;  --h6-lh:  22px;  --h6-tracking: 0;
--p-xl:    25px;  --p-xl-lh: 33px;  --p-xl-spacing: 24px;
--p-l:     18px;  --p-l-lh:  27px;  --p-l-spacing:  20px;
--p-m:     16px;  --p-m-lh:  24px;
--p-s:     14px;  --p-s-lh:  18px;
--p-xs:    12px;  --p-xs-lh: 15px;  --p-xs-spacing: 16px; --hero-title:          120px;
--hero-title-lh:       1;
--hero-title-tracking: -0.04em;
--hero-title-weight:   700;
--btn-l:   18px;
--btn-m:   16px;
--btn-weight:   500;
--btn-tracking: 1px;
--tracking-body: 0;  --container-max: 1080px;
--gutter:          60px;
--pad-3xs:  8px;
--pad-2xs:  8px;
--pad-s:   24px;
--pad-l:   40px;
--space-1xs: 24px;
--radius-sm:  2px;
--radius-md:  8px; --shadow-card:  0 2px 12px rgb(15 33 35 / 8%);
--shadow-modal: 0 12px 48px rgb(15 33 35 / 18%);
--z-header: 100;
--z-drawer: 200;
--z-modal:  300;
} @media (max-width: 1023px) {
:root {
--h1:     64px;  --h1-lh: 64px;
--h2:     36px;  --h2-lh: 36px;  --h2-tracking: -2px;
--h3:     28px;  --h3-lh: 28px;  --h3-tracking: -1px;
--h4:     25px;  --h4-lh: 25px;
--h5:     22px;  --h5-lh: 22px;
--h6:     18px;  --h6-lh: 18px;
--p-xl:   25px;  --p-xl-lh: 30px;
--p-l:    18px;  --p-l-lh:  27px;
--p-m:    14px;  --p-m-lh:  21px;
--p-s:    12px;  --p-s-lh:  18px;
--p-xs:   12px;  --p-xs-lh: 15px;
--hero-title: 84px;
--container-max: 338px;
--gutter:         32px;
}
}*, *::before, *::after { box-sizing: border-box; }
html {
-webkit-text-size-adjust: 100%;
scroll-behavior: smooth;
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
*, *::before, *::after {
animation-duration: .01ms !important;
animation-iteration-count: 1 !important;
transition-duration: .01ms !important;
}
}
body {
margin: 0;
background: var(--color-surface-page);
color: var(--color-text-body);
font-family: var(--font-body);
font-size: var(--p-l);
line-height: calc(var(--p-l-lh) / var(--p-l));
letter-spacing: var(--tracking-body);
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
}
h1, h2, h3, h4, h5, h6 {
margin: 0;
font-family: var(--font-display);
font-weight: 400;
color: var(--color-text-heading); text-wrap: initial;
}
h1 { font-size: var(--h1); line-height: calc(var(--h1-lh) / var(--h1)); letter-spacing: var(--h1-tracking); }
h2 { font-size: var(--h2); line-height: calc(var(--h2-lh) / var(--h2)); letter-spacing: var(--h2-tracking); }
h3 { font-size: var(--h3); line-height: calc(var(--h3-lh) / var(--h3)); letter-spacing: var(--h3-tracking); }
h4 { font-size: var(--h4); line-height: calc(var(--h4-lh) / var(--h4)); letter-spacing: var(--h4-tracking); }
h5 { font-size: var(--h5); line-height: calc(var(--h5-lh) / var(--h5)); letter-spacing: var(--h5-tracking); }
h6 { font-size: var(--h6); line-height: calc(var(--h6-lh) / var(--h6)); letter-spacing: var(--h6-tracking); }
p { margin: 0 0 var(--p-l-spacing); }
p:last-child { margin-bottom: 0; }
a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; }
img, svg, video, audio, canvas { display: block; max-width: 100%; height: auto; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
input, textarea, select { font: inherit; color: inherit; }
:focus-visible {
outline: 2px solid var(--color-surface-action-primary);
outline-offset: 3px;
border-radius: var(--radius-sm);
} .screen-reader-text {
position: absolute !important;
width: 1px; height: 1px;
padding: 0; margin: -1px;
overflow: hidden;
clip: rect(0 0 0 0);
clip-path: inset(50%);
white-space: nowrap;
border: 0;
}
.skip-link {
position: absolute;
inset-inline-start: 50%;
inset-block-start: -100px;
transform: translateX(50%);
z-index: calc(var(--z-header) + 10);
padding: var(--pad-2xs) var(--pad-s);
background: var(--color-surface-action-primary);
color: var(--color-white);
border-radius: 0 0 var(--radius-md) var(--radius-md);
transition: inset-block-start .2s ease;
}
.skip-link:focus { inset-block-start: 0; text-decoration: none; }.container {
width: 100%;
max-width: var(--container-max);
margin-inline: auto;
padding-inline: 0;
}
@media (max-width: 1023px) {
.container { max-width: none; padding-inline: var(--gutter); }
} .full-bleed { margin-inline: calc(var(--gutter) * -1); } .site-header {
position: sticky;
inset-block-start: 0;
z-index: var(--z-header);
background: var(--color-surface-page);
border-block-end: 1px solid var(--color-surface-action-primary);
transition: padding .25s ease, box-shadow .25s ease;
}
.site-header__inner {
display: flex;
align-items: center;
justify-content: space-between;
max-width: none;
padding-inline: var(--gutter);
padding-block: 16px;
} .site-header.is-scrolled { box-shadow: var(--shadow-card); }
.site-header__logo { display: block; flex-shrink: 0; }
.site-header__logo img { width: 72px; height: auto; }
.site-nav__list {
display: flex;
align-items: center;
gap: 44px;
}
.site-nav__list a {
font-size: var(--p-l);
line-height: calc(var(--p-l-lh) / var(--p-l));
color: var(--color-text-heading);
white-space: nowrap;
}
.site-nav__list a:hover { color: var(--color-surface-action-primary); text-decoration: none; } .nav-toggle {
display: none;
flex-direction: column;
gap: 8.42px;
padding: 8px 5px;
margin: -8px -5px;
color: var(--color-surface-action-primary);
}
.nav-toggle__bar { display: block; width: 34px; height: 4px; border-radius: 2px; background: currentColor; }
@media (max-width: 1023px) {
.site-nav { display: none; }
.nav-toggle { display: flex; } .site-header__inner {
flex-direction: row-reverse;
padding-inline: 16px;
}
.mobile-drawer__head { flex-direction: row-reverse; }
} .mobile-drawer {
position: fixed;
inset: 0;
z-index: var(--z-drawer);
}
.mobile-drawer[hidden] { display: none; } .mobile-drawer__backdrop {
position: absolute;
inset: 0;
background: rgb(15 33 35 / 35%);
opacity: 0;
transition: opacity .5s ease;
} .mobile-drawer__panel {
position: absolute;
inset-block: 0;
right: 0;
width: 80%;
display: flex;
flex-direction: column;
gap: 84px;
padding: 74px 32px;
background: var(--color-surface-page);
overflow-y: auto;
translate: 100% 0;
transition: translate .5s cubic-bezier(.22, .61, .36, 1);
}
.mobile-drawer.is-open .mobile-drawer__backdrop { opacity: 1; }
.mobile-drawer.is-open .mobile-drawer__panel { translate: 0 0; }
@media (prefers-reduced-motion: reduce) {
.mobile-drawer__backdrop,
.mobile-drawer__panel { transition: none; }
}
.mobile-drawer__head { display: flex; align-items: center; justify-content: space-between; } .mobile-drawer__logo img { display: block; width: 139px; height: auto; } .mobile-drawer__close {
display: flex;
padding: 9px;
margin: -9px;
color: var(--color-surface-action-primary);
}
.mobile-drawer__close-icon { width: 27px; height: 26px; } .mobile-drawer__list { display: flex; flex-direction: column; gap: 44px; }
.mobile-drawer__list a {
display: block;
font-family: var(--font-display);
font-size: 44px;
line-height: 1;
letter-spacing: -1px;
color: var(--color-surface-action-primary);
} .mobile-drawer__foot { display: flex; flex-direction: column; gap: 16px; } .mobile-drawer__foot-title,
.mobile-drawer__email {
margin: 0;
font-family: var(--font-body);
font-size: 18px;
line-height: 1.5;
letter-spacing: var(--tracking-body);
color: var(--color-surface-hover-primary);
opacity: .8;
}
.mobile-drawer__foot-title { font-weight: 700; }
.mobile-drawer__social { color: var(--color-surface-hover-primary); } .btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--pad-3xs);
padding: var(--pad-2xs) var(--pad-s);
font-family: var(--font-body);
font-size: var(--btn-l);
font-weight: var(--btn-weight);
line-height: 1;
letter-spacing: var(--btn-tracking);
border-radius: var(--radius-md);
border: 1px solid transparent;
transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.btn:hover { text-decoration: none; }
.btn--primary {
background: var(--color-surface-action-primary);
border-color: var(--color-surface-action-primary);
color: var(--color-white);
}
.btn--primary:hover { background: var(--color-surface-hover-primary); border-color: var(--color-surface-hover-primary); }
.btn--primary:active { background: var(--color-surface-clicked-primary); }
.btn--secondary {
background: transparent;
border-color: var(--color-surface-action-secondary);
color: var(--color-surface-action-secondary);
}
.btn--secondary:hover { background: var(--color-surface-action-secondary); color: var(--color-white); } .btn--pill {
gap: 10px;
padding-block: 8px;
padding-inline: 24px; border-radius: 999px; border: 0;
box-shadow: inset 0 0 0 1px var(--color-primary-950);
background: rgb(255 255 255 / 10%);
backdrop-filter: blur(5.35px);
-webkit-backdrop-filter: blur(5.35px);
color: var(--color-primary-950);
font-weight: 400;
letter-spacing: var(--tracking-body);
line-height: calc(var(--p-l-lh) / var(--p-l));
}
.btn--pill:hover { background: rgb(255 255 255 / 35%); }
.btn--pill .btn__icon { width: 25px; height: 24.78px; }
@media (max-width: 1023px) { .hero__cta { gap: 0; }
.hero__cta .btn__icon { display: none; }
}
.btn__icon { width: 20px; height: 20px; }  .site-footer { background: linear-gradient(
to right,
var(--color-surface-action-primary) 5.041%,
var(--color-surface-action-secondary) 150.38%
);
color: var(--color-cream);
padding: 60px var(--gutter);
margin-block-start: 0;
}
.site-footer__inner {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 40px;
}
.site-footer__brand {
display: flex;
flex-direction: column;
gap: 32px;
max-width: 587px;
} .site-footer__logo { width: 177px; height: auto; }
.site-footer__note {
margin: 0;
max-width: 228px;
font-size: var(--p-l);
line-height: calc(var(--p-l-lh) / var(--p-l));
color: var(--color-cream);
}
.site-footer__cols { display: flex; gap: 74px; }
.site-footer__col { display: flex; flex-direction: column; gap: 16px; } .site-footer__col--contact { min-width: 172px; }
.site-footer__col--info { min-width: 106px; order: -1; } .site-footer__title {
margin: 0;
font-family: var(--font-body);
font-size: 18px;
font-weight: 700;
line-height: 1.5; letter-spacing: var(--tracking-body);
color: var(--color-cream);
opacity: .8;
}
.site-footer__email {
font-size: 18px;
line-height: 1.5;
color: var(--color-cream);
opacity: .8;
word-break: break-word;
}
.site-footer__list { display: flex; flex-direction: column; gap: 16px; }
.site-footer__list a {
font-size: 14px;
line-height: 1.5;
color: var(--color-cream);
opacity: .8;
}
.site-footer__list a:hover,
.site-footer__email:hover { opacity: 1; }
.contact-list { display: flex; flex-direction: column; gap: 8px; }  .social-links { display: flex; align-items: center; justify-content: flex-end; gap: 8px; direction: ltr; }
.social-links__icon { width: 16px; height: 16px; } .site-footer__social .social-links__icon { filter: brightness(0) invert(1); }
.social-links a { display: block; opacity: .8; transition: opacity .2s ease; }
.social-links a:hover { opacity: 1; }
@media (max-width: 1023px) { .site-footer { padding: 60px 32px; }
.site-footer__inner { flex-direction: column; align-items: stretch; gap: 32px; }
.site-footer__brand { max-width: none; gap: 32px; }
.site-footer__cols { flex-direction: column; gap: 32px; } .site-footer__col--contact,
.site-footer__col--info { width: auto; } .site-footer__col--info { order: 0; }
}.js .reveal { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; }
.js .reveal.is-visible { opacity: 1; transform: none; } .js .reveal--stagger { opacity: 1; transform: none; }
.js .reveal--stagger > * {
opacity: 0;
translate: 0 16px;
transition: opacity .5s ease, translate .5s ease;
transition-delay: calc(var(--d, 0) * 120ms);
}
.js .reveal--stagger.is-visible > * { opacity: 1; translate: 0 0; }
@media (prefers-reduced-motion: reduce) {
.js .reveal { opacity: 1; transform: none; }
.js .reveal--stagger > * { opacity: 1; translate: none; transition: none; }
} .artwork-overlay {
position: fixed;
inset: 0;
z-index: var(--z-modal);
background: rgb(15 33 35 / 55%);
opacity: 0;
transition: opacity .35s ease;
}
.artwork-overlay[hidden] { display: none; }
.artwork-overlay.is-open { opacity: 1; }
.artwork-overlay__panel {
position: absolute;
inset-block: 0; inset-inline-start: 0;
width: 66.9vw;
max-width: 803px;
background: var(--color-surface-page);
padding: 80px var(--gutter);
overflow-y: auto;
overscroll-behavior: contain;
box-shadow: var(--shadow-modal);
translate: 100% 0;
transition: translate .45s cubic-bezier(.22, .61, .36, 1);
}
.artwork-overlay.is-open .artwork-overlay__panel { translate: 0 0; }
@media (prefers-reduced-motion: reduce) {
.artwork-overlay,
.artwork-overlay__panel { transition: none; }
}
.artwork-overlay__close {
position: sticky
;
inset-block-start: 0;
z-index: 2;
display: grid;
place-items: center;
width: 44px;
height: 44px;
margin-inline-start: auto;
margin-block-end: 16px;
border-radius: 999px;
background: var(--color-surface-white); box-shadow:
inset 0 0 0 1px var(--color-primary-950),
0 4px 14px rgb(15 33 35 / 22%);
color: var(--color-primary-950);
} .artwork-overlay__close-icon { display: block; width: 24px; height: 24px; }
.artwork-overlay__handle { display: none; }
.artwork-overlay__loading { padding-block: 80px; text-align: center; }
@media (max-width: 1023px) {
.artwork-overlay__panel {
inset-block-start: auto;
inset-inline: 0;
width: 100%;
max-width: none;
max-height: 92dvh;
border-radius: 24px 24px 0 0;
padding: 16px var(--gutter) 40px;
translate: 0 100%;
touch-action: pan-y;
}
.artwork-overlay__handle {
display: block;
width: 48px;
height: 4px;
margin-inline: auto;
margin-block-end: 16px;
border-radius: 999px;
background: var(--color-neutral-300);
}
} .artwork {
display: flex;
flex-direction: column;
gap: 64px;
text-align: start;
}
.artwork__head-block { display: flex; flex-direction: column; gap: 32px; }
.player-card {
display: flex;
flex-direction: column;
gap: 32px;
padding: 32px;
border-radius: 24px;
background: var(--color-surface-white);
box-shadow: inset 0 0 0 1px var(--color-surface-action-secondary);
}
.artwork__title {
margin: 0;
font-size: var(--h3);
line-height: calc(var(--h3-lh) / var(--h3));
letter-spacing: var(--h3-tracking);
color: var(--color-surface-action-primary);
text-align: center;
} .player { display: flex; flex-direction: column; gap: 8px; }
.player__progress { display: flex; align-items: center; gap: 7px; }
.player__time {
font-size: 12px;
line-height: 1;
letter-spacing: -0.48px;
color: #000;
font-variant-numeric: tabular-nums;
}
.player__range {
flex: 1;
min-width: 0;
height: 19px;
accent-color: var(--color-surface-action-primary);
}
.player__controls { display: flex; align-items: center; justify-content: center; gap: 16px; }
.player__btn { display: grid; place-items: center; padding: 16px; }
.player__icon { width: 30px; height: 30px; }
.player__icon--play,
.player__icon--pause { width: 33.65px; height: 37.95px; } .player__icon--pause,
.player.is-playing .player__icon--play { display: none; }
.player.is-playing .player__icon--pause { display: block; } .artwork__spotify {
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
width: 100%;
padding: 12px 32px;
border-radius: 999px;
box-shadow: inset 0 0 0 1px #000;
font-size: 18px;
line-height: 1.5;
color: #000;
}
.artwork__spotify:hover { text-decoration: none; background: var(--color-surface-white); }
.artwork__spotify-logo { width: 23px; height: 23px; } .gallery { display: flex; flex-direction: column; gap: 16px; }
.gallery__viewport {
height: 302px;
border-radius: 16px;
overflow: hidden; border: 1px solid var(--color-surface-clicked-primary);
}
.gallery__track {
display: flex;
height: 100%;
overflow-x: auto;
scroll-snap-type: x mandatory;
scrollbar-width: none;
}
.gallery__track::-webkit-scrollbar { display: none; }
.gallery__slide { flex: 0 0 100%; height: 100%; scroll-snap-align: center; }
.gallery__img { width: 100%; height: 100%; object-fit: cover; }
.gallery__nav { display: flex; gap: 8px; }
.gallery__btn {
display: grid;
place-items: center;
padding: 12px;
border-radius: 999px;
box-shadow: inset 0 0 0 1px #000;
}
.gallery__btn:hover:not([aria-disabled="true"]) { background: var(--color-surface-white); } .gallery__btn[aria-disabled="true"] { opacity: .35; cursor: default; }
.gallery__icon { width: 24px; height: 24px; } .artwork__details { display: flex; flex-direction: column; gap: 32px; margin: 0; }
.detail { display: flex; flex-direction: column; gap: 8px; } .detail__label {
display: flex;
align-items: center;
gap: 12px;
font-size: 12px;
font-weight: 700;
line-height: 1;
color: var(--color-surface-action-primary);
}
.detail__icon { flex: 0 0 14.4px; width: 14.4px; height: 14.4px; }
.detail__value {
margin: 0;
font-size: 18px;
line-height: 1.5;
color: #000;
}
.detail__value--small { font-size: 14px; }  .artwork__logos { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 12px; margin: 0; direction: ltr; }
.artwork__logo { max-height: 48px; width: auto; }
.artwork__links { display: flex; flex-direction: column; gap: 8px; }
.artwork__link { display: flex; align-items: center; gap: 10px; }
.artwork__link-icon { flex: 0 0 16px; width: 16px; height: 16px; } .notice-missing {
padding: var(--pad-s);
background: var(--color-neutral-100);
border-inline-start: 4px solid var(--color-surface-action-primary);
border-radius: var(--radius-sm);
}
.legal-missing { background: #fff3cd; padding: 0 4px; } .page-map { position: relative; }
.map {
width: 100%;
height: calc(100dvh - 79px);
min-height: 560px;
background: var(--color-surface-page);
}
.map__empty {
position: absolute;
inset-block-start: 24px;
inset-inline: var(--gutter);
z-index: 2;
max-width: 520px;
margin-inline: auto;
background: var(--color-surface-white);
box-shadow: var(--shadow-card);
} .map .pin {
right: auto;
top: auto;
translate: none;
} .maplibregl-ctrl-group {
border-radius: var(--radius-md);
box-shadow: var(--shadow-card);
overflow: hidden;
}
.maplibregl-ctrl-group button { width: 36px; height: 36px; }
.maplibregl-ctrl-group button + button { border-block-start: 1px solid var(--color-neutral-200); }
.maplibregl-ctrl-attrib { font-size: 11px; }.page-home {
background-image: var(--dots-pattern);
background-repeat: repeat-x;
background-position: center top;
background-size: 1200px 1200px;
}
@media (max-width: 1023px) { .page-home {
background-size: 818px 818px;
background-position: -208px top;
background-repeat: no-repeat;
}
} .hero {
position: relative;
min-height: 659px;
z-index: 0; display: flow-root;
}
.hero__bg {
position: absolute;
inset: 0;
z-index: -1;
pointer-events: none;
} .hero__map-wrap {
position: absolute;
inset-block-start: 273px; inset-inline: 0;
--hero-map-h: 450px;
height: var(--hero-map-h);
overflow: hidden;
pointer-events: auto; --map-anchor: 46.659%;
--map-anchor-y: 168.3px; --fade-ramp: clamp(32px, 3.25vw, 72px);
--fade-0: 40px;
--fade-1: calc(40px + var(--fade-ramp));
--fade-2: calc(353.6px - var(--fade-ramp));
--fade-3: 353.6px;
} .hero__map { opacity: .7; } .hero__map-fade {
position: absolute;
inset: 0;
z-index: 1;
pointer-events: none;
background: linear-gradient(
180deg,
var(--color-cream)   calc(var(--map-anchor) + var(--fade-0) - var(--map-anchor-y)),
rgb(252 247 239 / 0) calc(var(--map-anchor) + var(--fade-1) - var(--map-anchor-y)),
rgb(252 247 239 / 0) calc(var(--map-anchor) + var(--fade-2) - var(--map-anchor-y)),
var(--color-cream)   calc(var(--map-anchor) + var(--fade-3) - var(--map-anchor-y))
);
} .hero__map-inner {
position: absolute;  top: var(--map-anchor-y);
left: 50%;
translate: -50% calc(var(--map-anchor) * -1);
width: max(100%, calc(var(--hero-map-h) * 1200 / 1697));
aspect-ratio: 1200 / 1697;
}
.hero__map { width: 100%; height: 100%; object-fit: cover; }
.hero__pins { position: absolute; inset: 0; z-index: 2; }
.hero__inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
max-width: 710px;
margin-inline: auto; margin-block-start: 32px;
text-align: center;
} .hero__title,
.hero__sub { width: 100%; }
.hero__title {
margin: 0;
font-size: var(--hero-title);
font-weight: var(--hero-title-weight);
line-height: var(--hero-title-lh);
letter-spacing: var(--hero-title-tracking);
color: var(--color-surface-action-primary);
}
.hero__sub {
margin: 0;
font-size: var(--p-xl);
line-height: calc(var(--p-xl-lh) / var(--p-xl));
color: var(--color-surface-action-secondary);
} .pin { --pin-x: var(--pin-x-d);
--pin-y: var(--pin-y-d);
position: absolute; right: var(--pin-x);
top: var(--pin-y);
translate: 50% -50%;
display: flex;
flex-direction: column;
align-items: center;
pointer-events: auto;
} .pin__shape {
display: flex;
flex-direction: column;
align-items: center;
rotate: var(--pin-tilt, 13.43deg);
transform-origin: 50% 100%; filter: drop-shadow(0 1px 1px rgb(15 33 35 / 10%))
drop-shadow(0 3px 5px rgb(15 33 35 / 18%));
transition: rotate .35s ease, scale .35s ease, filter .35s ease;
} .pin__frame {
position: relative;
z-index: 1;
box-shadow: 0 0 0 2px var(--color-surface-action-primary);
display: block;
width: 57.1px;
height: 57.1px;
border: 7px solid var(--color-white);
border-radius: 12px;
overflow: hidden;
background: var(--color-neutral-200);
}
.pin__img { width: 100%; height: 100%; object-fit: cover; } .pin__tail { position: relative; z-index: 2; margin-block-start: -4px; color: var(--color-white); } .pin__tail-svg { width: 19.67px; height: 47.9px; display: block; overflow: visible; } .pin__tail-line { stroke: var(--color-surface-action-primary); }  .pin:hover .pin__shape,
.pin:focus-visible .pin__shape {
rotate: 0deg;
scale: 1.1; filter: drop-shadow(0 2px 2px rgb(15 33 35 / 10%))
drop-shadow(0 6px 10px rgb(15 33 35 / 20%));
}
@media (prefers-reduced-motion: reduce) {
.pin__shape { transition: none; }
}
@media (max-width: 1023px) {
.hero { min-height: 708px; }  .hero__map-wrap {
inset-block-start: 238px;
--hero-map-h: 526px;
--map-anchor: 54.176%;
--map-anchor-y: 308.85px;
--fade-0: 50.3px;
--fade-1: 308.85px;
--fade-2: 401px;
--fade-3: 526px;
}
.hero__map-inner { width: max(100%, 777px); }
.pin { --pin-x: var(--pin-x-m); --pin-y: var(--pin-y-m); }
.hero__inner {
max-width: none;
margin-block-start: 35px; } .hero__title,
.hero__sub { padding-inline: var(--gutter); }
}
@media (min-width: 1024px) { .hero__cta { padding-inline: 32px 24px; }
} .locations {
position: relative;
z-index: 1;
padding-block: 0;
}
.locations__inner {
display: flex;
flex-direction: column;
align-items: center;
gap: 32px;
}
.locations__track {
display: flex;
gap: 32px;
width: 100%;
padding-inline: var(--gutter); scroll-padding-inline: var(--gutter);
overflow-x: auto;
scroll-snap-type: x proximity;
scrollbar-width: none;
}
.locations__track::-webkit-scrollbar { display: none; } @media (min-width: 1024px) {
.locations__track > .card:first-child { margin-inline-start: auto; }
.locations__track > .card:last-child  { margin-inline-end: auto; }
}  .card {
flex: 0 0 246px;
max-width: 246px;
min-width: 0;
scroll-snap-align: start;
}
.card__link {
display: flex;
flex-direction: column;
gap: 12px;
min-width: 0;
text-align: start;
}
.card__link:hover { text-decoration: none; }
.card__media {
display: block;
height: 150px;
border-radius: 12px;
overflow: hidden; border: 1px solid var(--color-primary-950);
background: var(--color-neutral-200);
}
.card__img { width: 100%; height: 100%; object-fit: cover; transition: scale .4s ease; }
.card__link:hover .card__img { scale: 1.04; }
.card__body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.card__title {
margin: 0;
font-family: var(--font-body);
font-size: var(--p-l);
font-weight: 700;
line-height: calc(var(--p-l-lh) / var(--p-l));
letter-spacing: var(--tracking-body);
color: var(--color-surface-action-primary);
} .card__desc {
display: block;
font-size: 16px;
line-height: 24px;
color: var(--color-text-body);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.card__address {
display: flex;
align-items: center;
gap: 6px;
font-size: var(--p-xs);
line-height: calc(var(--p-xs-lh) / var(--p-xs));
color: var(--color-text-body);
min-width: 0;
}
.card__icon { flex: 0 0 12px; width: 12px; height: 13px; }
.card__address-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .card__cta { display: none; }
@media (max-width: 1023px) {
.locations__track {
flex-direction: column;
gap: 32px;
overflow-x: visible;
}
.card { flex: 0 0 auto; width: 100%; max-width: none; }
.card__media { height: 212px; }
.card__icon { flex-basis: 10px; width: 10px; height: 10px; } .locations__track > .card:nth-child(n+4) { display: none; }
.card__cta {
display: inline-flex;
align-items: center;
justify-content: center;
align-self: flex-start;
padding: 12px 18px;
border-radius: 999px;
box-shadow: inset 0 0 0 1px var(--color-surface-hover-primary);
font-size: 14px;
line-height: 1;
color: var(--color-surface-hover-primary);
}
} .about {
position: relative;
z-index: 1; overflow-x: clip;
overflow-y: visible; padding-block: 0;
margin-block-start: 90px;
} .about__inner {
display: flex;
align-items: center;
gap: 184px;
max-width: var(--container-max);
margin-inline: auto;
padding-inline: 0;
}
.about__content {
flex: 0 0 586px;
display: flex;
flex-direction: column;
gap: 32px;
text-align: start;
}
.about__title {
margin: 0;
font-size: var(--h2);
line-height: calc(var(--h2-lh) / var(--h2));
letter-spacing: var(--h2-tracking);
color: var(--color-surface-action-primary);
}
.about__text {
font-size: var(--p-l);
line-height: calc(var(--p-l-lh) / var(--p-l));
color: var(--color-text-body);
}
.about__text p { margin-block-end: var(--p-l-spacing); }
.about__text p:last-child { margin-block-end: 0; }
.about__text ul { list-style: disc; padding-inline-start: 27px; }
.about__text li { margin-block-end: 0; }
.about__closing {
margin: 0;
font-size: var(--p-xl);
line-height: calc(var(--p-xl-lh) / var(--p-xl));
color: var(--color-surface-action-primary);
}  .about__gallery {
position: relative;
flex: 0 0 523px;
align-self: stretch;
min-height: 843px;
}
.about__img-wrap {
--x: var(--x-d);
--y: var(--y-d);
--rot: var(--rot-d);
position: absolute;
left: var(--x);
top: var(--y);
width: 480.64px;
aspect-ratio: 480.635 / 293.231;
border-radius: 32px;
overflow: hidden; border: 1px solid var(--color-primary-950);
background: var(--color-neutral-200);
transform: translate(-50%, -50%) rotate(calc(var(--rot) * 1deg));
}
.about__img { width: 100%; height: 100%; object-fit: cover; }   .about__gallery { --wheel-lift: 90px; --wheel-shift: 0.16; }
.about__gallery.is-wheel { z-index: 0;
}
@media (max-width: 1023px) { .about__gallery { --wheel-lift: 45px; --wheel-shift: 0; }
} .about__gallery.is-wheel .about__img-wrap {
left: var(--wheel-x);
top: var(--wheel-y);
transform: translate(-50%, -50%) rotate(calc(var(--a, 0) * 1deg)) translateX(var(--wheel-r));
pointer-events: none;
will-change: transform, opacity;
}
@media (max-width: 1023px) {
.about { padding-block: 0; margin-block-start: 40px; }
.about__inner {
flex-direction: column;
align-items: stretch;
gap: 32px;
padding-inline: 0; max-width: none;
} .about__gallery {
order: -1;
flex: 0 0 auto; min-height: 0;
height: 99px;
overflow: visible;
}
.about__img-wrap {
--x: var(--x-m);
--y: var(--y-m);
--rot: var(--rot-m);
width: 216.79px;
}
.about__content {
position: relative;
z-index: 1;
flex: 0 0 auto; min-height: 1144px;
justify-content: center;
padding-inline: 16px; background: linear-gradient(
to top,
var(--color-cream) 88.243%,
rgb(252 247 239 / 0) 100%
);
}
} .partners {
position: relative;
z-index: 1;
padding: 60px var(--gutter);
}
.partners__inner {
display: flex;
flex-direction: column;
align-items: center;
gap: 32px;
max-width: 1077px;
margin-inline: auto;
}
.partners__title {
margin: 0;
font-size: var(--h2);
line-height: calc(var(--h2-lh) / var(--h2));
letter-spacing: var(--h2-tracking);
color: var(--color-surface-action-primary);
text-align: center;
}
.partners__text {
width: 100%;
font-size: var(--p-xl);
line-height: calc(var(--p-xl-lh) / var(--p-xl));
color: var(--color-text-body);
text-align: start;
}
.partners__text strong {
font-weight: 700;
color: var(--color-surface-action-primary);
} .partners__text p { margin-block-end: 0; max-width: 706px; }
.partners__text p + p { margin-block-start: 32px; max-width: 615px; margin-inline-start: auto; } .partners__list {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: 28px;
direction: ltr;
} .partners__logo { max-width: 105px; max-height: 76px; width: auto; height: auto; }
@media (max-width: 1023px) { .partners { padding: 60px 16px; }
.partners__inner { gap: 64px; }
.partners__text p { max-width: 273px; }
.partners__text p + p { max-width: 274px; margin-block-start: 64px; }
.partners__list { max-width: 369px; margin-inline: auto; gap: 28px; }
} .suggest {
position: relative;
z-index: 1;
padding: 60px var(--gutter);
}
.suggest__inner {
display: flex;
flex-direction: column;
align-items: center;
gap: 32px;
max-width: 523px;
margin-inline: auto;
}
.suggest__title {
margin: 0;
font-size: var(--h2);
line-height: calc(var(--h2-lh) / var(--h2));
letter-spacing: var(--h2-tracking);
color: var(--color-surface-action-primary);
text-align: center;
}
.suggest__text {
margin: 0;
font-size: var(--p-l);
line-height: calc(var(--p-l-lh) / var(--p-l));
color: var(--color-text-body);
text-align: center;
} .suggest__form { width: 100%; }
.suggest__form .wpcf7-form {
display: flex;
flex-direction: column;
gap: 16px;
}
.suggest__form .wpcf7-form > p:not([class]),
.suggest__form .wpcf7-form > p:empty,
.suggest__form .hidden-fields-container,
.suggest__form .form-upload__names:empty,
.suggest__form .wpcf7-response-output:empty { display: none; }
.suggest__form .form-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}
.suggest__form .form-field { margin: 0; }
.suggest__form input[type="text"],
.suggest__form input[type="tel"],
.suggest__form input[type="email"] {
width: 100%;
height: 47px;
padding: 10px;
border: 0;
border-radius: 8px;
box-shadow: inset 0 0 0 1px var(--color-surface-action-primary);
background: transparent;
font-size: 18px;
line-height: 1.5;
color: var(--color-surface-action-primary); direction: rtl;
text-align: right;
}
.suggest__form ::placeholder { color: var(--color-surface-action-primary); opacity: 1; } .suggest__form .form-upload { position: relative; margin: 0; }
.suggest__form .form-upload__label {
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
height: 69px;
padding: 10px;
border: 1px dashed var(--color-surface-action-primary);
border-radius: 8px;
font-size: 18px;
line-height: 1.5;
color: var(--color-surface-action-primary);
cursor: pointer;
transition: background-color .2s ease;
}
.suggest__form .form-upload.is-dragover .form-upload__label { background: rgb(40 128 132 / 8%); }
.suggest__form .form-upload__icon {
width: 19px;
height: 19px; rotate: -90deg;
background: currentColor;
mask: var(--upload-icon) center / contain no-repeat;
-webkit-mask: var(--upload-icon) center / contain no-repeat;
}
.suggest__form .form-upload input[type="file"] {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
opacity: 0;
cursor: pointer;
}
.suggest__form .form-upload__names {
display: block;
margin-block-start: 8px;
font-size: var(--p-xs);
color: var(--color-text-body);
} .suggest__form .form-submit { position: relative; display: flex; margin: 0; }
.suggest__form .wpcf7-spinner {
position: absolute;
inset-inline-end: 12px;
inset-block-start: 50%;
translate: 0 -50%;
margin: 0;
}
.suggest__form input[type="submit"] {
width: 100%;
padding: 10px;
border: 0;
border-radius: 8px;
background: var(--color-surface-action-primary);
font-size: 18px;
line-height: 1.5;
color: var(--color-cream);
cursor: pointer;
transition: background-color .2s ease;
}
.suggest__form input[type="submit"]:hover { background: var(--color-surface-hover-primary); }
.suggest__form .wpcf7-not-valid-tip { font-size: var(--p-xs); color: #b32d2e; }
.suggest__form .wpcf7-response-output { margin: 0; padding: 12px; border-radius: 8px; font-size: var(--p-s); }
@media (max-width: 1023px) { .suggest { padding: 60px 32px; }
.suggest__form .wpcf7-form { gap: 10px; }
.suggest__form .form-grid { grid-template-columns: 1fr; gap: 10px; }
.suggest__form .form-upload__label {
height: 47px;
padding: 10px;
border-style: solid;
}
.suggest__form .form-upload__icon { display: none; }
} @media (max-width: 1023px) {
.about__inner { grid-template-columns: 1fr; }
.locations__track { margin-inline: calc(var(--gutter) * -1); padding-inline: var(--gutter); }
}  .page-artworks {
padding-block: 75px 19px;
background-image: var(--dots-pattern);
background-repeat: repeat-x;
background-position: center top;
background-size: 1200px 1200px;
} .artworks-intro,
.hood__head {
width: min(var(--container-max), 100% - 2 * var(--gutter));
margin-inline: auto;
} .artworks-intro {
display: flex;
flex-direction: column;
gap: 16px;
}
.artworks-intro__title,
.artworks-intro__text { max-width: 672px; }
.artworks-intro__title {
font-size: var(--h3);
line-height: calc(var(--h3-lh) / var(--h3));
letter-spacing: var(--h3-tracking);
color: var(--color-surface-action-primary);
}
.artworks-intro__text {
margin: 0;
font-size: var(--p-xl);
line-height: calc(var(--p-xl-lh) / var(--p-xl));
color: var(--color-text-body);
} .hoods { margin-block-start: 56px; } .hood {
display: flex;
flex-direction: column;
gap: 32px;
padding-block: 32px;
} .hood__head {
display: flex;
align-items: center;
gap: 10px;
}
.hood__thumb {
flex: 0 0 64px;
width: 64px;
height: 24px;
border-radius: 999px;
object-fit: cover;
} .hood__title {
flex: 1 1 0;
min-width: 0;
font-family: var(--font-body);
font-size: 25px;
font-weight: 700;
line-height: 1.5;
letter-spacing: -1px;
color: var(--color-surface-action-primary);
} .hood__track {
display: flex;
gap: 32px;
padding-inline: max(var(--gutter), (100% - var(--container-max)) / 2);
scroll-padding-inline: max(var(--gutter), (100% - var(--container-max)) / 2);
overflow-x: auto;
scroll-snap-type: x proximity;
scrollbar-width: none;
}
.hood__track::-webkit-scrollbar { display: none; } .page-artworks .card__desc { max-width: 235px; } .hood-tabs { display: none; }
@media (max-width: 1023px) { .page-artworks {
--gutter: 16px;
padding-block: 32px;
background-image: none;
}
.artworks-intro,
.hood__head { width: auto; margin-inline: var(--gutter); }
.artworks-intro__title,
.artworks-intro__text { max-width: none; } .hoods { margin-block-start: 84px; } .hood-tabs {
display: flex;
gap: 8px;
padding-inline: var(--gutter);
overflow-x: auto;
scrollbar-width: none;
}
.hood-tabs::-webkit-scrollbar { display: none; } .hood-tabs__tab {
flex: 0 0 auto;
display: flex;
align-items: center;
gap: 10px;
min-height: 44px;
padding: 9px 23px;
border: 1px solid var(--color-surface-action-primary);
border-radius: 999px;
background: transparent;
font-family: var(--font-body);
font-size: 16px;
font-weight: 700;
line-height: 1;
letter-spacing: -0.64px;
color: var(--color-surface-action-primary);
white-space: nowrap;
cursor: pointer;
}
.hood-tabs__tab.is-active {
background: var(--color-surface-action-primary);
color: var(--color-surface-white);
}
.hood-tabs__img {
flex: 0 0 64px;
width: 64px;
height: 24px;
border-radius: 999px;
object-fit: cover;
} .hood { display: none; padding-block: 32px 0; }
.hood.is-active { display: block; }
.hood__head { display: none; } .hood__track {
flex-direction: column;
padding-inline: var(--gutter);
overflow-x: visible;
scroll-snap-type: none;
} .page-artworks .card__desc { font-size: 14px; line-height: 21px; }
}