:root { --white: #FFFFFF; --black: #000000; --gray: #F1F1F1; --gray-line: #E4E4E4; --gray-mid: #9A9A9A; --gray-dark: #4A4A4A; --gray-soft: #D0D0D0; --line-on-white: rgba(0,0,0,.18); --line-on-black: rgba(255,255,255,.18); --bg: var(--white); --bg-subtle: var(--gray); --bg-inverse: var(--black); --fg: var(--black); --fg-muted: var(--gray-dark); --fg-disabled: var(--gray-mid); --fg-inverse: var(--white); --surface-card: var(--gray); --surface-card-on-gray: var(--white); --border: var(--black); --border-subtle: var(--gray-line); --line: var(--line-on-white); --band-bg: var(--black); --band-fg: var(--white); --band-fg-soft: var(--gray-soft); --band-fg-muted: var(--gray-mid); --band-line: var(--line-on-black); --action-bg: var(--black); --action-fg: var(--white); --action-bg-hover: var(--gray-dark); --focus-ring: 0 0 0 2px var(--white),0 0 0 4px var(--black); --overlay: rgba(0,0,0,.6); --image-placeholder: var(--gray); --image-filter: none; --image-filter-hover: none; }
.fa-band { background: var(--band-bg); color: var(--band-fg); --fg: var(--band-fg); --fg-muted: var(--band-fg-muted); --line: var(--band-line); --border: var(--white); --action-bg: var(--white); --action-fg: var(--black); }
:root { --font-display: "Syne","Montserrat",system-ui,sans-serif; --font-display-secondary: "Space Grotesk","Montserrat",system-ui,sans-serif; --font-wordmark: "Montserrat",system-ui,sans-serif; --font-display-alt: "Montserrat",system-ui,sans-serif; --font-body: "Roboto",system-ui,sans-serif; --weight-display: 800; --weight-display-mid: 500; --weight-display-alt: 900; --weight-display-light: 300; --weight-body: 400; --weight-body-medium: 500; --weight-body-semibold: 600; --weight-light: 300; --tracking-display: -0.05em; --tracking-display-sm: -0.03em; --tracking-light: 0.14em; --tracking-label: 0.26em; --tracking-button: 0.28em; --tracking-body: 0; --leading-display: 0.86; --leading-heading: 1.02; --leading-body: 1.55; --leading-tight: 1.2; --text-hero: clamp(44px,7.2vw,140px); --text-h1: clamp(36px,5vw,96px); --text-h2: clamp(28px,4.2vw,80px); --text-giant: clamp(64px,16vw,300px); --text-secondary: clamp(20px,2.4vw,40px); --text-statement: clamp(28px,4.2vw,76px); --text-quote: clamp(18px,1.5vw,24px); --text-h3: 24px; --text-h4: 18px; --text-lead: 18px; --text-body: 16px; --text-small: 14px; --text-caption: 12px; --text-label: 11px; --type-hero: var(--weight-display) var(--text-hero)/var(--leading-display) var(--font-display); --type-h1: var(--weight-display) var(--text-h1)/var(--leading-display) var(--font-display); --type-h2: var(--weight-display) var(--text-h2)/var(--leading-heading) var(--font-display); --type-h3: var(--weight-display-mid) var(--text-h3)/1.1 var(--font-display-secondary); --type-h4: var(--weight-display-mid) var(--text-h4)/1.1 var(--font-display-secondary); --type-section: var(--weight-display-mid) clamp(18px,1.8vw,28px)/1.1 var(--font-display-secondary); --tracking-mid: .02em; --type-giant: var(--weight-display) var(--text-giant)/0.8 var(--font-display); --type-secondary: var(--weight-display-light) var(--text-secondary)/1.2 var(--font-display-secondary); --type-statement: var(--weight-body) var(--text-statement)/1.1 var(--font-display-secondary); --type-quote: var(--weight-display-light) var(--text-quote)/1.4 var(--font-display-secondary); --type-wordmark-light: var(--weight-light) var(--text-h2)/var(--leading-heading) var(--font-wordmark); --type-ticker: var(--weight-display-light) clamp(22px,2.6vw,40px)/1 var(--font-display-secondary); --type-legacy-display: var(--weight-display-alt) var(--text-h1)/0.92 var(--font-wordmark); --type-lead: var(--weight-body) var(--text-lead)/var(--leading-body) var(--font-body); --type-body: var(--weight-body) var(--text-body)/var(--leading-body) var(--font-body); --type-small: var(--weight-body) var(--text-small)/var(--leading-body) var(--font-body); --type-caption: var(--weight-body) var(--text-caption)/var(--leading-tight) var(--font-body); --type-label: var(--weight-body-medium) var(--text-label)/1 var(--font-body); --type-button: var(--weight-body-medium) 11px/1 var(--font-body); --type-section-num: var(--weight-display-light) clamp(28px,3vw,44px)/1 var(--font-display-secondary); --type-list-num: var(--weight-display-light) 14px/1.6 var(--font-display-secondary); --type-faq-q: var(--weight-display-mid) 20px/1.1 var(--font-display-secondary); --type-menu-item: var(--weight-display-light) clamp(22px,3.2vw,44px)/1.1 var(--font-display-secondary); --type-kpi: var(--weight-display) clamp(40px,4.6vw,80px)/.9 var(--font-display); --type-places: var(--weight-display-light) clamp(32px,3vw,48px)/1 var(--font-display-secondary); --syne-max-words: 4; }
:root { --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 24px; --space-6: 32px; --space-7: 48px; --space-8: 64px; --space-9: 96px; --space-10: 128px; --space-11: 160px; --safe-margin: 10%; --page-gutter: clamp(24px,5vw,80px); --content-max: 1440px; --measure: 62ch; --grid-gap: var(--space-5); --section-gap: clamp(96px,12vw,200px); --page-margin: 10vw; --radius-0: 0px; --radius-round: 999px; --hairline: 1px solid var(--line); --rule: 1px solid var(--black); --rule-strong: 2px solid var(--black); --shadow-none: none; --ease: cubic-bezier(.2,.6,.2,1); --ease-curtain: cubic-bezier(.7,0,.2,1); --dur-fast: 120ms; --dur-base: 500ms; --dur-slow: 1300ms; --dur-image: 1600ms; --reveal-rise: 32px; --image-hover-scale: 1.03; --hover-opacity: 0.6; --press-opacity: 0.45; --control-h-sm: 40px; --control-h-md: 52px; --control-h-lg: 60px; --control-px-sm: 20px; --control-px-md: 32px; --control-px-lg: 44px; --canvas-ig-post: 1080px 1350px; --canvas-ig-square: 1080px 1080px; --canvas-ig-story: 1080px 1920px; --canvas-poster-a3: 1191px 1684px; }
*, ::before, ::after { box-sizing: border-box; }
html { text-size-adjust: 100%; -webkit-font-smoothing: antialiased; }
body { margin: 0px; background: var(--bg); color: var(--fg); font: var(--type-body); text-wrap: pretty; }
h1, h2, h3, h4, .fa-display { font-family: var(--font-display); font-weight: var(--weight-display); text-transform: uppercase; letter-spacing: var(--tracking-display); line-height: var(--leading-display); margin: 0px; text-wrap: balance; }
.fa-secondary { font: var(--type-secondary); text-transform: uppercase; letter-spacing: var(--tracking-light); }
.fa-statement { font: var(--type-statement); text-transform: uppercase; }
.fa-statement b { font-family: var(--font-display); font-weight: var(--weight-display); letter-spacing: var(--tracking-display); }
.fa-giant { font: var(--type-giant); text-transform: uppercase; letter-spacing: -0.07em; white-space: nowrap; }
.fa-photo img { filter: var(--image-filter); transition: filter var(--dur-slow) var(--ease),transform var(--dur-image) var(--ease); }
.fa-photo:hover img, a:hover .fa-photo img { filter: var(--image-filter-hover); transform: scale(var(--image-hover-scale)); }
.fa-reveal { opacity: 0; transform: translateY(var(--reveal-rise)); transition: opacity var(--dur-slow) var(--ease),transform var(--dur-slow) var(--ease); }
.fa-reveal.in { opacity: 1; transform: none; }
h1 { font: var(--type-h1); text-transform: uppercase; letter-spacing: var(--tracking-display); }
h2 { font: var(--type-h2); text-transform: uppercase; letter-spacing: var(--tracking-display); }
h3 { font: var(--type-h3); text-transform: uppercase; letter-spacing: var(--tracking-display-sm); }
h4 { font: var(--type-h4); text-transform: uppercase; letter-spacing: var(--tracking-display-sm); }
p { margin: 0px; }
a { color: var(--fg); text-decoration: none; text-underline-offset: 3px; transition: opacity var(--dur-base) var(--ease); }
a:hover { opacity: 1; }
.fa-label { font: var(--type-label); text-transform: uppercase; letter-spacing: var(--tracking-label); }
.fa-mono-rule { border-right: 0px; border-bottom: 0px; border-left: 0px; border-image: none; border-top: var(--rule); margin: 0px; }
.fa-rule { border-right: 0px; border-bottom: 0px; border-left: 0px; border-image: none; border-top: var(--hairline); margin: 0px; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: none; box-shadow: var(--focus-ring); }
::selection { background: var(--black); color: var(--white); }