:root {
  --bg: #0b0a08;
  --bg-2: #12100d;
  --card: #16130f;
  --gold: #d4af37;
  --gold-hi: #f3e5ab;
  --gold-lo: #8c7326;
  --ink: #f6efe0;
  --ink-2: #b9b0a0;
  --line: rgba(212, 175, 55, 0.18);
  --line-hi: rgba(212, 175, 55, 0.55);
  --serif: "Cormorant Garamond", "Times New Roman", serif;
  --sans: "Jost", "Helvetica Neue", Arial, sans-serif;
  --mono: "JetBrains Mono", Consolas, monospace;
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
}

html, body { background: var(--bg); color: var(--ink); }
body { font-family: var(--sans); font-weight: 300; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
::selection { background: var(--gold); color: #0b0a08; }
img { max-width: 100%; }
.g-site { position: relative; overflow-x: clip; }
.g-grain { position: fixed; inset: -50%; z-index: 90; pointer-events: none; opacity: .06;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* type */
.g-mono { font-family: var(--mono); font-size: 12px; letter-spacing: .12em; color: var(--gold); }
.g-eyebrow { font-family: var(--mono); font-size: 12px; letter-spacing: .22em; text-transform: uppercase; color: var(--gold); margin-bottom: 1.1rem; }
.g-display, .g-hero-title { font-family: var(--serif); font-weight: 400; line-height: .95; letter-spacing: -.02em; margin: 0; }
.g-display { font-size: clamp(2.6rem, 7vw, 6.2rem); }
.g-hero-title { font-size: clamp(2.1rem, 6.3vw, 5.95rem); }
.line-mask { display: block; overflow: hidden; padding-bottom: .08em; }
.line-inner { display: inline-block; will-change: transform; }
.g-h2 { font-family: var(--serif); font-weight: 400; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.02; letter-spacing: -.015em; margin: 0; }
.g-lead { max-width: 560px; color: var(--ink-2); font-size: 1.1rem; line-height: 1.7; margin-top: 2rem; }
.g-body { color: var(--ink-2); line-height: 1.75; font-size: 1rem; }
.g-statement { font-family: var(--serif); font-size: clamp(1.6rem, 2.8vw, 2.5rem); line-height: 1.2; }
.g-statement em { color: var(--gold); }
.g-bignum { font-family: var(--serif); font-size: clamp(7rem, 18vw, 15rem); line-height: .8; color: transparent; -webkit-text-stroke: 1px var(--gold); letter-spacing: -.04em; }

/* buttons */
.g-btn { display: inline-flex; align-items: center; gap: .55rem; padding: .95rem 1.6rem; border-radius: 999px; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; border: 1px solid transparent; cursor: pointer; position: relative; overflow: hidden; transition: transform .4s var(--ease), background-color .4s, color .4s, border-color .4s; }
.g-btn-gold { background: var(--gold); color: #0b0a08; }
.g-btn-gold::after { content: ""; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.55) 50%, transparent 70%); transform: translateX(-120%); transition: transform .8s var(--ease); }
.g-btn-gold:hover { color: #0b0a08; transform: translateY(-2px); }
.g-btn-gold:hover::after { transform: translateX(120%); }
.g-btn-ghost { border-color: var(--line-hi); color: var(--ink); background: rgba(11,10,8,.35); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.g-btn-ghost:hover { background: var(--ink); color: #0b0a08; }
.g-btn:disabled { opacity: .6; }
.g-link-arrow { display: inline-flex; align-items: center; gap: .4rem; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold); border-bottom: 1px solid var(--line-hi); padding-bottom: 4px; transition: gap .3s var(--ease), color .3s; }
.g-link-arrow:hover { gap: .8rem; color: var(--gold-hi); }
.g-spin { animation: spin 1s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* logo + nav */
.g-logo { display: inline-flex; align-items: center; gap: .65rem; }
.g-logo-img { height: 46px; width: auto; max-width: 190px; object-fit: contain; display: block; transition: transform .3s var(--ease); }
.g-logo:hover .g-logo-img { transform: scale(1.04); }
.g-logo-text { display: flex; flex-direction: column; line-height: 1; }
.g-logo-name { font-family: var(--serif); font-size: 1.65rem; font-weight: 500; color: var(--ink); letter-spacing: .01em; }
.g-logo-sub { font-family: var(--mono); font-size: 9px; letter-spacing: .24em; text-transform: uppercase; color: var(--gold); margin-top: 3px; }
.g-nav { position: fixed; top: 0; left: 0; right: 0; z-index: 80; padding: 1.3rem 0; transition: background-color .5s, padding .5s var(--ease), border-color .5s; border-bottom: 1px solid transparent; }
.g-nav.is-scrolled { background: rgba(11,10,8,.72); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); padding: .8rem 0; border-color: var(--line); }
.g-nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.g-nav-links { gap: 1.9rem; }
.g-nav-link { font-size: 13px; letter-spacing: .08em; color: var(--ink); position: relative; padding: 4px 0; }
.g-nav-link::after { content: ""; position: absolute; left: 0; bottom: 0; height: 1px; width: 100%; background: var(--gold); transform: scaleX(0); transform-origin: right; transition: transform .45s var(--ease); }
.g-nav-link:hover::after, .g-nav-link.active::after { transform: scaleX(1); transform-origin: left; }
.g-nav-link.active { color: var(--gold); }
.g-burger { background: none; border: 1px solid var(--line-hi); color: var(--ink); width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; position: relative; z-index: 95; cursor: pointer; }
.g-mobile-menu { position: fixed; inset: 0; z-index: 85; background: #0b0a08; padding: 110px 1.5rem 2rem; display: none; flex-direction: column; gap: .4rem; overflow-y: auto; }
.g-nav-inner { position: relative; z-index: 2; }
.g-mobile-link { font-family: var(--serif); font-size: 2.3rem; line-height: 1.2; color: var(--ink); display: flex; align-items: baseline; gap: 1rem; padding: .35rem 0; border-bottom: 1px solid var(--line); }
.g-mobile-link.active { color: var(--gold); }
.g-mobile-contact { margin-top: 1.5rem; font-family: var(--mono); color: var(--gold); letter-spacing: .1em; }

/* hero */
.g-hero { position: relative; height: 100vh; min-height: 640px; overflow: hidden; perspective: 1400px; background: #000; }
.g-hero-stage { position: absolute; inset: -4%; transform-style: preserve-3d; }
.g-hero-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.6s var(--ease); }
.g-hero-slide.is-active { opacity: 1; }
.g-hero-slide img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.12); transition: transform 7.5s linear; }
.g-hero-slide.is-active img { transform: scale(1.02); }
.g-hero-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,10,8,.55) 0%, rgba(11,10,8,.15) 40%, rgba(11,10,8,.92) 100%), linear-gradient(90deg, rgba(11,10,8,.75) 0%, transparent 65%); }
.g-hero-spot { position: absolute; width: 60vw; height: 60vw; left: -15vw; bottom: -30vw; background: radial-gradient(circle, rgba(212,175,55,.22), transparent 60%); pointer-events: none; }
.g-hero-content { position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: 2; display: flex; align-items: center; padding-top: 70px; }
.g-hero-inner { max-width: 900px; }
.g-hero-actions { display: flex; flex-wrap: wrap; gap: .9rem; margin-top: 2.4rem; }
.g-hero-controls { position: absolute; left: 0; right: 0; bottom: 2.2rem; z-index: 3; display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; }
.g-hero-bars { display: flex; gap: .9rem; flex: 1 1; max-width: 760px; }
.g-hero-bar { flex: 1 1; background: none; border: 0; padding: 0; text-align: left; cursor: pointer; }
.g-hero-bar::before { content: ""; display: block; height: 2px; background: rgba(246,239,224,.22); }
.g-hero-bar-fill { display: block; height: 2px; margin-top: -2px; background: var(--gold); transform: scaleX(0); transform-origin: left; }
.g-hero-bar.is-active .g-hero-bar-fill { animation: fill linear forwards; }
@keyframes fill { to { transform: scaleX(1); } }
.g-hero-bar-label { font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); margin-top: .7rem; transition: color .3s; }
.g-hero-bar.is-active .g-hero-bar-label { color: var(--ink); }
.g-hero-arrows { display: flex; gap: .6rem; }
.g-hero-arrows button { width: 52px; height: 52px; border-radius: 50%; border: 1px solid var(--line-hi); background: rgba(11,10,8,.35); backdrop-filter: blur(12px); color: var(--ink); display: grid; place-items: center; transition: background-color .3s, color .3s; }
.g-hero-arrows button:hover { background: var(--gold); color: #0b0a08; }

/* page hero */
.g-page-hero { position: relative; padding: 200px 0 110px; overflow: hidden; }
.g-page-hero-bg { position: absolute; inset: -10% 0 0 0; }
.g-page-hero-bg img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.4) brightness(.55) sepia(.25); }
.g-page-hero-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,10,8,.4), rgba(11,10,8,.75) 55%, var(--bg)); }

/* marquee */
.g-marquee { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 1.6rem 0; overflow: hidden; background: var(--bg); }
.g-marquee-track { display: flex; width: max-content; animation: marquee 70s linear infinite; }
.g-marquee:hover .g-marquee-track { animation-play-state: paused; }
.g-marquee-group { display: flex; }
.g-marquee-item { font-family: var(--serif); font-style: italic; font-size: clamp(1.8rem, 3.6vw, 3rem); white-space: nowrap; padding-right: 2.2rem; display: inline-flex; align-items: center; gap: 2.2rem; color: var(--ink); }
.g-star { color: var(--gold); font-style: normal; font-size: .55em; }
@keyframes marquee { to { transform: translateX(-50%); } }

/* sections */
.g-section { padding: 140px 0; position: relative; }
.g-section-alt { background: var(--bg-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.g-section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem; margin-bottom: 4rem; flex-wrap: wrap; }
.g-section-head .g-h2 { max-width: 720px; }
.g-stats { margin-top: 6rem; border-top: 1px solid var(--line); }
.g-stat { padding: 2rem 0 0; display: flex; flex-direction: column; gap: .4rem; }
.g-stat-n { font-family: var(--serif); font-size: clamp(2.6rem, 5vw, 4rem); color: var(--gold); line-height: 1; }
.g-stat-l { font-family: var(--mono); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--ink-2); }

.g-index-row { display: flex; align-items: center; gap: 1.5rem; padding: 1.5rem 0; border-bottom: 1px solid var(--line); transition: padding .5s var(--ease), color .4s; }
.g-index-title { font-family: var(--serif); font-size: clamp(1.5rem, 2.4vw, 2rem); flex: 1 1; }
.g-index-arrow { color: var(--gold); opacity: 0; transform: translate(-10px, 10px); transition: opacity .4s, transform .5s var(--ease); }
.g-index-row:hover { padding-left: 1rem; color: var(--gold-hi); }
.g-index-row:hover .g-index-arrow { opacity: 1; transform: none; }

/* bento */
.g-bento { display: grid; grid-template-columns: repeat(12, 1fr); grid-auto-rows: 260px; gap: 1rem; }
.g-b-a { grid-column: span 8; grid-row: span 2; }
.g-b-b, .g-b-c, .g-b-d, .g-b-e, .g-b-f { grid-column: span 4; }
.g-tile { position: relative; display: block; overflow: hidden; border-radius: 4px; background: var(--card); height: 100%; }
.g-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease), filter .8s; filter: saturate(.85); }
.g-tile::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(11,10,8,.92)); }
.g-tile:hover img { transform: scale(1.06); filter: saturate(1.1); }
.g-tile-body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 1.5rem; }
.g-tile-body h3 { font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.9rem); margin: .6rem 0 0; color: var(--ink); }
.g-b-a .g-tile-body h3 { font-size: clamp(1.8rem, 3.4vw, 3rem); }
.g-tag { display: inline-block; font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-hi); border: 1px solid var(--line-hi); border-radius: 999px; padding: .3rem .75rem; background: rgba(11,10,8,.45); }

/* frames */
.g-clip-frame { overflow: hidden; clip-path: polygon(0 0, 100% 0, 100% 88%, 88% 100%, 0 100%); aspect-ratio: 4 / 3; position: relative; }
.g-clip-frame img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--ease); }
.g-clip-frame:hover img { transform: scale(1.05); }
.g-clip-frame::after { content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 120px rgba(11,10,8,.7); pointer-events: none; }

/* wall */
.g-wall { border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.g-wall-cell { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); height: 170px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 1rem; position: relative; transition: background-color .5s; }
.g-wall-cell-lg { height: 200px; }
.g-wall-cell:hover { background: rgba(212,175,55,.06); }
.g-wordmark { font-family: var(--serif); font-size: clamp(1.25rem, 2vw, 1.75rem); font-weight: 500; letter-spacing: .01em; color: var(--ink); transition: color .4s; }
.g-wall-cell:hover .g-wordmark { color: var(--gold); }
.g-wall-sector { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--ink-2); margin-top: .5rem; }
.g-wall-idx { position: absolute; top: 1rem; left: 1rem; }
.g-wall-logo { max-height: 48px; max-width: 140px; width: auto; height: auto; object-fit: contain; margin-bottom: .6rem; opacity: .88; transition: opacity .4s, transform .4s; }
.g-wall-cell:hover .g-wall-logo { opacity: 1; transform: scale(1.06); }

/* cards */
.g-card { background: var(--card); border: 1px solid var(--line); padding: 2rem; display: flex; flex-direction: column; gap: 1rem; border-radius: 4px; transition: border-color .4s, transform .5s var(--ease), background-color .4s; min-height: 300px; }
.g-card:hover { border-color: var(--line-hi); transform: translateY(-4px); background: #1b1712; }
.g-card-num { font-size: 13px; }
.g-card-title { font-family: var(--serif); font-size: 2rem; font-weight: 400; margin: .5rem 0 0; }
.g-filters { display: flex; flex-wrap: wrap; gap: .6rem; }
.g-chip { background: transparent; border: 1px solid var(--line-hi); color: var(--ink); border-radius: 999px; padding: .55rem 1.2rem; font-size: 13px; letter-spacing: .08em; transition: background-color .3s, color .3s; }
.g-chip:hover { border-color: var(--gold); }
.g-chip.is-active { background: var(--gold); color: #0b0a08; border-color: var(--gold); }

/* associates */
.g-assoc { padding: 4rem 0; border-bottom: 1px solid var(--line); }
.g-assoc:last-child { border-bottom: 0; }
.g-pills { display: flex; flex-wrap: wrap; gap: .5rem; }
.g-pill { border: 1px solid var(--line-hi); border-radius: 999px; padding: .45rem 1rem; font-size: 14px; color: var(--ink); }

/* events */
.g-event { display: flex; flex-direction: column; gap: .9rem; }
.g-event-img { aspect-ratio: 4 / 3; overflow: hidden; border-radius: 4px; background: var(--card); }
.g-event-lg .g-event-img { aspect-ratio: 21 / 9; }
.g-event-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.g-event:hover img { transform: scale(1.05); }
.g-event-body { display: flex; justify-content: space-between; align-items: center; }
.g-event-title { font-family: var(--serif); font-size: 1.7rem; font-weight: 400; margin: 0; line-height: 1.15; }
.g-event-lg .g-event-title { font-size: clamp(2rem, 4vw, 3.4rem); }

/* gallery */
.g-gallery { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 230px; gap: 1rem; grid-auto-flow: dense; }
.g-gal-wide { grid-column: span 2; grid-row: span 2; }
.g-gal-item { height: 100%; }
.g-gal-btn { width: 100%; height: 100%; padding: 0; border: 0; background: var(--card); position: relative; overflow: hidden; border-radius: 4px; display: block; cursor: zoom-in; }
.g-gal-btn img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--ease); }
.g-gal-btn:hover img { transform: scale(1.06); }
.g-gal-hover { position: absolute; left: 1rem; bottom: 1rem; display: inline-flex; align-items: center; gap: .5rem; font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink); background: rgba(11,10,8,.7); padding: .45rem .8rem; border-radius: 999px; opacity: 0; transform: translateY(8px); transition: opacity .4s, transform .4s var(--ease); }
.g-gal-btn:hover .g-gal-hover { opacity: 1; transform: none; }
.g-lightbox { position: fixed; inset: 0; z-index: 200; background: rgba(6,5,4,.95); display: none; place-items: center; padding: 4rem 1rem; }
.g-lightbox img { max-width: min(1100px, 92vw); max-height: 82vh; object-fit: contain; border-radius: 4px; }
.g-lb-btn { position: absolute; width: 50px; height: 50px; border-radius: 50%; border: 1px solid var(--line-hi); background: rgba(11,10,8,.6); color: var(--ink); display: grid; place-items: center; transition: background-color .3s, color .3s; }
.g-lb-btn:hover { background: var(--gold); color: #0b0a08; }
.g-lb-close { top: 1.5rem; right: 1.5rem; }
.g-lb-prev { left: 1.5rem; top: 50%; transform: translateY(-50%); }
.g-lb-next { right: 1.5rem; top: 50%; transform: translateY(-50%); }
.g-lb-count { position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%); }

/* contact */
.g-form { background: var(--card); border: 1px solid var(--line); padding: 2.5rem; border-radius: 4px; }
.g-field { display: flex; flex-direction: column; gap: .5rem; width: 100%; margin: 0; }
.g-field span { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--ink-2); }
.g-field input, .g-field select, .g-field textarea { background: transparent; border: 0; border-bottom: 1px solid var(--line-hi); color: var(--ink); padding: .7rem 0; font-size: 1.05rem; outline: none; border-radius: 0; transition: border-color .3s; color-scheme: dark; width: 100%; }
.g-field select option { background: var(--card); }
.g-field input:focus, .g-field select:focus, .g-field textarea:focus { border-color: var(--gold); }
.g-details { padding: 1rem 0; display: flex; flex-direction: column; align-items: flex-start; }
.g-detail { display: flex; gap: .9rem; align-items: flex-start; padding: 1rem 0; border-bottom: 1px solid var(--line); width: 100%; color: var(--ink); font-size: 1.05rem; }
.g-detail svg { color: var(--gold); margin-top: 5px; flex-shrink: 0; }
a.g-detail:hover { color: var(--gold); }
.g-map { border: 1px solid var(--line); border-radius: 4px; overflow: hidden; height: 380px; }
.g-map iframe { width: 100%; height: 100%; border: 0; filter: grayscale(1) invert(.9) sepia(.3) contrast(.9); }

/* cta + footer */
.g-cta { padding: 160px 0; text-align: center; background: radial-gradient(ellipse at center, rgba(212,175,55,.14), transparent 60%), var(--bg); border-top: 1px solid var(--line); }
.g-cta-title { font-family: var(--serif); font-weight: 400; font-size: clamp(2.4rem, 6vw, 5.2rem); line-height: 1; margin: 0; }
.g-cta-title em, .g-footer-title em { color: var(--gold); }
.g-footer { padding: 110px 0 2rem; border-top: 1px solid var(--line); background: #080706; }
.g-footer-title { font-family: var(--serif); font-weight: 400; font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1; margin: 0; }
.g-footer-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: .7rem; }
.g-footer-list a { color: var(--ink); transition: color .3s; }
.g-footer-list a:hover { color: var(--gold); }
.g-footer-contact li { display: flex; gap: .6rem; color: var(--ink-2); font-size: .95rem; word-break: break-word; }
.g-footer-contact svg { color: var(--gold); margin-top: 5px; flex-shrink: 0; }
.g-footer-word { font-family: var(--serif); font-size: clamp(5rem, 22vw, 20rem); line-height: .8; text-align: center; color: transparent; -webkit-text-stroke: 1px rgba(212,175,55,.35); margin: 5rem 0 2rem; letter-spacing: -.03em; -webkit-user-select: none; user-select: none; }
.g-footer-base { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 1rem; font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-2); border-top: 1px solid var(--line); padding-top: 1.5rem; }
.g-footer-credit { color: var(--gold); transition: color .3s; }
.g-footer-credit:hover { color: var(--gold-hi); }

/* responsive */
@media (max-width: 991.98px) {
  .g-bento { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 220px; }
  .g-b-a { grid-column: span 2; grid-row: span 2; }
  .g-b-b, .g-b-c, .g-b-d, .g-b-e, .g-b-f { grid-column: span 1; }
  .g-b-f { grid-column: span 2; }
  .g-gallery { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 180px; }
  .g-section { padding: 100px 0; }
}
@media (max-width: 575.98px) {
  .g-hero { min-height: 600px; height: 100svh; }
  .g-hero-content { padding-top: 90px; }
  .g-hero-controls { bottom: 1.5rem; }
  .g-hero-arrows button { width: 44px; height: 44px; }
  .g-bento { grid-template-columns: 1fr; grid-auto-rows: 240px; }
  .g-b-a, .g-b-b, .g-b-c, .g-b-d, .g-b-e, .g-b-f { grid-column: span 1; grid-row: span 1; }
  .g-gallery { grid-auto-rows: 150px; gap: .6rem; }
  .g-section { padding: 80px 0; }
  .g-page-hero { padding: 150px 0 80px; }
  .g-wall-cell { height: 140px; }
  .g-form { padding: 1.5rem; }
  .g-stats { margin-top: 3.5rem; }
  .g-stat { padding-bottom: 1.5rem; }
  .g-cta { padding: 110px 0; }
  .g-logo-name { font-size: 1.4rem; }
}
@media (prefers-reduced-motion: reduce) {
  .g-marquee-track, .g-hero-bar.is-active .g-hero-bar-fill { animation: none; }
  .g-hero-slide img { transition: none; }
}
`, "",{"version":3,"sources":["webpack://./src/styles.css"],"names":[],"mappings":"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","sourcesContent":[":root {
  --bg: #0b0a08;
  --bg-2: #12100d;
  --card: #16130f;
  --gold: #d4af37;
  --gold-hi: #f3e5ab;
  --gold-lo: #8c7326;
  --ink: #f6efe0;
  --ink-2: #b9b0a0;
  --line: rgba(212, 175, 55, 0.18);
  --line-hi: rgba(212, 175, 55, 0.55);
  --serif: "Cormorant Garamond", "Times New Roman", serif;
  --sans: "Jost", "Helvetica Neue", Arial, sans-serif;
  --mono: "JetBrains Mono", Consolas, monospace;
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
}

html, body { background: var(--bg); color: var(--ink); }
body { font-family: var(--sans); font-weight: 300; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
::selection { background: var(--gold); color: #0b0a08; }
img { max-width: 100%; }
.g-site { position: relative; overflow-x: clip; }
.g-grain { position: fixed; inset: -50%; z-index: 90; pointer-events: none; opacity: .06;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

/* type */
.g-mono { font-family: var(--mono); font-size: 12px; letter-spacing: .12em; color: var(--gold); }
.g-eyebrow { font-family: var(--mono); font-size: 12px; letter-spacing: .22em; text-transform: uppercase; color: var(--gold); margin-bottom: 1.1rem; }
.g-display, .g-hero-title { font-family: var(--serif); font-weight: 400; line-height: .95; letter-spacing: -.02em; margin: 0; }
.g-display { font-size: clamp(2.6rem, 7vw, 6.2rem); }
.g-hero-title { font-size: clamp(2.1rem, 6.3vw, 5.95rem); }
.line-mask { display: block; overflow: hidden; padding-bottom: .08em; }
.line-inner { display: inline-block; will-change: transform; }
.g-h2 { font-family: var(--serif); font-weight: 400; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.02; letter-spacing: -.015em; margin: 0; }
.g-lead { max-width: 560px; color: var(--ink-2); font-size: 1.1rem; line-height: 1.7; margin-top: 2rem; }
.g-body { color: var(--ink-2); line-height: 1.75; font-size: 1rem; }
.g-statement { font-family: var(--serif); font-size: clamp(1.6rem, 2.8vw, 2.5rem); line-height: 1.2; }
.g-statement em { color: var(--gold); }
.g-bignum { font-family: var(--serif); font-size: clamp(7rem, 18vw, 15rem); line-height: .8; color: transparent; -webkit-text-stroke: 1px var(--gold); letter-spacing: -.04em; }

/* buttons */
.g-btn { display: inline-flex; align-items: center; gap: .55rem; padding: .95rem 1.6rem; border-radius: 999px; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; border: 1px solid transparent; cursor: pointer; position: relative; overflow: hidden; transition: transform .4s var(--ease), background-color .4s, color .4s, border-color .4s; }
.g-btn-gold { background: var(--gold); color: #0b0a08; }
.g-btn-gold::after { content: ""; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.55) 50%, transparent 70%); transform: translateX(-120%); transition: transform .8s var(--ease); }
.g-btn-gold:hover { color: #0b0a08; transform: translateY(-2px); }
.g-btn-gold:hover::after { transform: translateX(120%); }
.g-btn-ghost { border-color: var(--line-hi); color: var(--ink); background: rgba(11,10,8,.35); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.g-btn-ghost:hover { background: var(--ink); color: #0b0a08; }
.g-btn:disabled { opacity: .6; }
.g-link-arrow { display: inline-flex; align-items: center; gap: .4rem; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold); border-bottom: 1px solid var(--line-hi); padding-bottom: 4px; transition: gap .3s var(--ease), color .3s; }
.g-link-arrow:hover { gap: .8rem; color: var(--gold-hi); }
.g-spin { animation: spin 1s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* logo + nav */
.g-logo { display: inline-flex; align-items: center; gap: .65rem; }
.g-logo-text { display: flex; flex-direction: column; line-height: 1; }
.g-logo-name { font-family: var(--serif); font-size: 1.65rem; font-weight: 500; color: var(--ink); letter-spacing: .01em; }
.g-logo-sub { font-family: var(--mono); font-size: 9px; letter-spacing: .24em; text-transform: uppercase; color: var(--gold); margin-top: 3px; }
.g-nav { position: fixed; top: 0; left: 0; right: 0; z-index: 80; padding: 1.3rem 0; transition: background-color .5s, padding .5s var(--ease), border-color .5s; border-bottom: 1px solid transparent; }
.g-nav.is-scrolled { background: rgba(11,10,8,.72); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); padding: .8rem 0; border-color: var(--line); }
.g-nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.g-nav-links { gap: 1.9rem; }
.g-nav-link { font-size: 13px; letter-spacing: .08em; color: var(--ink); position: relative; padding: 4px 0; }
.g-nav-link::after { content: ""; position: absolute; left: 0; bottom: 0; height: 1px; width: 100%; background: var(--gold); transform: scaleX(0); transform-origin: right; transition: transform .45s var(--ease); }
.g-nav-link:hover::after, .g-nav-link.active::after { transform: scaleX(1); transform-origin: left; }
.g-nav-link.active { color: var(--gold); }
.g-burger { background: none; border: 1px solid var(--line-hi); color: var(--ink); width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; position: relative; z-index: 2; }
.g-mobile-menu { position: fixed; inset: 0; z-index: 1; background: #0b0a08; padding: 110px 1.5rem 2rem; display: flex; flex-direction: column; gap: .4rem; overflow-y: auto; }
.g-nav-inner { position: relative; z-index: 2; }
.g-mobile-link { font-family: var(--serif); font-size: 2.3rem; line-height: 1.2; color: var(--ink); display: flex; align-items: baseline; gap: 1rem; padding: .35rem 0; border-bottom: 1px solid var(--line); }
.g-mobile-link.active { color: var(--gold); }
.g-mobile-contact { margin-top: 1.5rem; font-family: var(--mono); color: var(--gold); letter-spacing: .1em; }

/* hero */
.g-hero { position: relative; height: 100vh; min-height: 640px; overflow: hidden; perspective: 1400px; background: #000; }
.g-hero-stage { position: absolute; inset: -4%; transform-style: preserve-3d; }
.g-hero-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.6s var(--ease); }
.g-hero-slide.is-active { opacity: 1; }
.g-hero-slide img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.12); transition: transform 7.5s linear; }
.g-hero-slide.is-active img { transform: scale(1.02); }
.g-hero-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,10,8,.55) 0%, rgba(11,10,8,.15) 40%, rgba(11,10,8,.92) 100%), linear-gradient(90deg, rgba(11,10,8,.75) 0%, transparent 65%); }
.g-hero-spot { position: absolute; width: 60vw; height: 60vw; left: -15vw; bottom: -30vw; background: radial-gradient(circle, rgba(212,175,55,.22), transparent 60%); pointer-events: none; }
.g-hero-content { position: absolute; left: 0; right: 0; top: 0; bottom: 0; z-index: 2; display: flex; align-items: center; padding-top: 70px; }
.g-hero-inner { max-width: 900px; }
.g-hero-actions { display: flex; flex-wrap: wrap; gap: .9rem; margin-top: 2.4rem; }
.g-hero-controls { position: absolute; left: 0; right: 0; bottom: 2.2rem; z-index: 3; display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; }
.g-hero-bars { display: flex; gap: .9rem; flex: 1; max-width: 760px; }
.g-hero-bar { flex: 1; background: none; border: 0; padding: 0; text-align: left; cursor: pointer; }
.g-hero-bar::before { content: ""; display: block; height: 2px; background: rgba(246,239,224,.22); }
.g-hero-bar-fill { display: block; height: 2px; margin-top: -2px; background: var(--gold); transform: scaleX(0); transform-origin: left; }
.g-hero-bar.is-active .g-hero-bar-fill { animation: fill linear forwards; }
@keyframes fill { to { transform: scaleX(1); } }
.g-hero-bar-label { font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-2); margin-top: .7rem; transition: color .3s; }
.g-hero-bar.is-active .g-hero-bar-label { color: var(--ink); }
.g-hero-arrows { display: flex; gap: .6rem; }
.g-hero-arrows button { width: 52px; height: 52px; border-radius: 50%; border: 1px solid var(--line-hi); background: rgba(11,10,8,.35); backdrop-filter: blur(12px); color: var(--ink); display: grid; place-items: center; transition: background-color .3s, color .3s; }
.g-hero-arrows button:hover { background: var(--gold); color: #0b0a08; }

/* page hero */
.g-page-hero { position: relative; padding: 200px 0 110px; overflow: hidden; }
.g-page-hero-bg { position: absolute; inset: -10% 0 0 0; }
.g-page-hero-bg img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(.4) brightness(.55) sepia(.25); }
.g-page-hero-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,10,8,.4), rgba(11,10,8,.75) 55%, var(--bg)); }

/* marquee */
.g-marquee { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 1.6rem 0; overflow: hidden; background: var(--bg); }
.g-marquee-track { display: flex; width: max-content; animation: marquee 70s linear infinite; }
.g-marquee:hover .g-marquee-track { animation-play-state: paused; }
.g-marquee-group { display: flex; }
.g-marquee-item { font-family: var(--serif); font-style: italic; font-size: clamp(1.8rem, 3.6vw, 3rem); white-space: nowrap; padding-right: 2.2rem; display: inline-flex; align-items: center; gap: 2.2rem; color: var(--ink); }
.g-star { color: var(--gold); font-style: normal; font-size: .55em; }
@keyframes marquee { to { transform: translateX(-50%); } }

/* sections */
.g-section { padding: 140px 0; position: relative; }
.g-section-alt { background: var(--bg-2); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.g-section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem; margin-bottom: 4rem; flex-wrap: wrap; }
.g-section-head .g-h2 { max-width: 720px; }
.g-stats { margin-top: 6rem; border-top: 1px solid var(--line); }
.g-stat { padding: 2rem 0 0; display: flex; flex-direction: column; gap: .4rem; }
.g-stat-n { font-family: var(--serif); font-size: clamp(2.6rem, 5vw, 4rem); color: var(--gold); line-height: 1; }
.g-stat-l { font-family: var(--mono); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--ink-2); }

.g-index-row { display: flex; align-items: center; gap: 1.5rem; padding: 1.5rem 0; border-bottom: 1px solid var(--line); transition: padding .5s var(--ease), color .4s; }
.g-index-title { font-family: var(--serif); font-size: clamp(1.5rem, 2.4vw, 2rem); flex: 1; }
.g-index-arrow { color: var(--gold); opacity: 0; transform: translate(-10px, 10px); transition: opacity .4s, transform .5s var(--ease); }
.g-index-row:hover { padding-left: 1rem; color: var(--gold-hi); }
.g-index-row:hover .g-index-arrow { opacity: 1; transform: none; }

/* bento */
.g-bento { display: grid; grid-template-columns: repeat(12, 1fr); grid-auto-rows: 260px; gap: 1rem; }
.g-b-a { grid-column: span 8; grid-row: span 2; }
.g-b-b, .g-b-c, .g-b-d, .g-b-e, .g-b-f { grid-column: span 4; }
.g-tile { position: relative; display: block; overflow: hidden; border-radius: 4px; background: var(--card); height: 100%; }
.g-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease), filter .8s; filter: saturate(.85); }
.g-tile::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(11,10,8,.92)); }
.g-tile:hover img { transform: scale(1.06); filter: saturate(1.1); }
.g-tile-body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 1.5rem; }
.g-tile-body h3 { font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.9rem); margin: .6rem 0 0; color: var(--ink); }
.g-b-a .g-tile-body h3 { font-size: clamp(1.8rem, 3.4vw, 3rem); }
.g-tag { display: inline-block; font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-hi); border: 1px solid var(--line-hi); border-radius: 999px; padding: .3rem .75rem; background: rgba(11,10,8,.45); }

/* frames */
.g-clip-frame { overflow: hidden; clip-path: polygon(0 0, 100% 0, 100% 88%, 88% 100%, 0 100%); aspect-ratio: 4 / 3; position: relative; }
.g-clip-frame img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--ease); }
.g-clip-frame:hover img { transform: scale(1.05); }
.g-clip-frame::after { content: ""; position: absolute; inset: 0; box-shadow: inset 0 0 120px rgba(11,10,8,.7); pointer-events: none; }

/* wall */
.g-wall { border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.g-wall-cell { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); height: 170px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 1rem; position: relative; transition: background-color .5s; }
.g-wall-cell-lg { height: 200px; }
.g-wall-cell:hover { background: rgba(212,175,55,.06); }
.g-wordmark { font-family: var(--serif); font-size: clamp(1.25rem, 2vw, 1.75rem); font-weight: 500; letter-spacing: .01em; color: var(--ink); transition: color .4s; }
.g-wall-cell:hover .g-wordmark { color: var(--gold); }
.g-wall-sector { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--ink-2); margin-top: .5rem; }
.g-wall-idx { position: absolute; top: 1rem; left: 1rem; }

/* cards */
.g-card { background: var(--card); border: 1px solid var(--line); padding: 2rem; display: flex; flex-direction: column; gap: 1rem; border-radius: 4px; transition: border-color .4s, transform .5s var(--ease), background-color .4s; min-height: 300px; }
.g-card:hover { border-color: var(--line-hi); transform: translateY(-4px); background: #1b1712; }
.g-card-num { font-size: 13px; }
.g-card-title { font-family: var(--serif); font-size: 2rem; font-weight: 400; margin: .5rem 0 0; }
.g-filters { display: flex; flex-wrap: wrap; gap: .6rem; }
.g-chip { background: transparent; border: 1px solid var(--line-hi); color: var(--ink); border-radius: 999px; padding: .55rem 1.2rem; font-size: 13px; letter-spacing: .08em; transition: background-color .3s, color .3s; }
.g-chip:hover { border-color: var(--gold); }
.g-chip.is-active { background: var(--gold); color: #0b0a08; border-color: var(--gold); }

/* associates */
.g-assoc { padding: 4rem 0; border-bottom: 1px solid var(--line); }
.g-assoc:last-child { border-bottom: 0; }
.g-pills { display: flex; flex-wrap: wrap; gap: .5rem; }
.g-pill { border: 1px solid var(--line-hi); border-radius: 999px; padding: .45rem 1rem; font-size: 14px; color: var(--ink); }

/* events */
.g-event { display: flex; flex-direction: column; gap: .9rem; }
.g-event-img { aspect-ratio: 4 / 3; overflow: hidden; border-radius: 4px; background: var(--card); }
.g-event-lg .g-event-img { aspect-ratio: 21 / 9; }
.g-event-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--ease); }
.g-event:hover img { transform: scale(1.05); }
.g-event-body { display: flex; justify-content: space-between; align-items: center; }
.g-event-title { font-family: var(--serif); font-size: 1.7rem; font-weight: 400; margin: 0; line-height: 1.15; }
.g-event-lg .g-event-title { font-size: clamp(2rem, 4vw, 3.4rem); }

/* gallery */
.g-gallery { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 230px; gap: 1rem; grid-auto-flow: dense; }
.g-gal-wide { grid-column: span 2; grid-row: span 2; }
.g-gal-item { height: 100%; }
.g-gal-btn { width: 100%; height: 100%; padding: 0; border: 0; background: var(--card); position: relative; overflow: hidden; border-radius: 4px; display: block; cursor: zoom-in; }
.g-gal-btn img { width: 100%; height: 100%; object-fit: cover; transition: transform 1s var(--ease); }
.g-gal-btn:hover img { transform: scale(1.06); }
.g-gal-hover { position: absolute; left: 1rem; bottom: 1rem; display: inline-flex; align-items: center; gap: .5rem; font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink); background: rgba(11,10,8,.7); padding: .45rem .8rem; border-radius: 999px; opacity: 0; transform: translateY(8px); transition: opacity .4s, transform .4s var(--ease); }
.g-gal-btn:hover .g-gal-hover { opacity: 1; transform: none; }
.g-lightbox { position: fixed; inset: 0; z-index: 200; background: rgba(6,5,4,.95); display: grid; place-items: center; padding: 4rem 1rem; }
.g-lightbox img { max-width: min(1100px, 92vw); max-height: 82vh; object-fit: contain; border-radius: 4px; }
.g-lb-btn { position: absolute; width: 50px; height: 50px; border-radius: 50%; border: 1px solid var(--line-hi); background: rgba(11,10,8,.6); color: var(--ink); display: grid; place-items: center; transition: background-color .3s, color .3s; }
.g-lb-btn:hover { background: var(--gold); color: #0b0a08; }
.g-lb-close { top: 1.5rem; right: 1.5rem; }
.g-lb-prev { left: 1.5rem; top: 50%; transform: translateY(-50%); }
.g-lb-next { right: 1.5rem; top: 50%; transform: translateY(-50%); }
.g-lb-count { position: absolute; bottom: 1.5rem; left: 50%; transform: translateX(-50%); }

/* contact */
.g-form { background: var(--card); border: 1px solid var(--line); padding: 2.5rem; border-radius: 4px; }
.g-field { display: flex; flex-direction: column; gap: .5rem; width: 100%; margin: 0; }
.g-field span { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--ink-2); }
.g-field input, .g-field select, .g-field textarea { background: transparent; border: 0; border-bottom: 1px solid var(--line-hi); color: var(--ink); padding: .7rem 0; font-size: 1.05rem; outline: none; border-radius: 0; transition: border-color .3s; color-scheme: dark; width: 100%; }
.g-field select option { background: var(--card); }
.g-field input:focus, .g-field select:focus, .g-field textarea:focus { border-color: var(--gold); }
.g-details { padding: 1rem 0; display: flex; flex-direction: column; align-items: flex-start; }
.g-detail { display: flex; gap: .9rem; align-items: flex-start; padding: 1rem 0; border-bottom: 1px solid var(--line); width: 100%; color: var(--ink); font-size: 1.05rem; }
.g-detail svg { color: var(--gold); margin-top: 5px; flex-shrink: 0; }
a.g-detail:hover { color: var(--gold); }
.g-map { border: 1px solid var(--line); border-radius: 4px; overflow: hidden; height: 380px; }
.g-map iframe { width: 100%; height: 100%; border: 0; filter: grayscale(1) invert(.9) sepia(.3) contrast(.9); }

/* cta + footer */
.g-cta { padding: 160px 0; text-align: center; background: radial-gradient(ellipse at center, rgba(212,175,55,.14), transparent 60%), var(--bg); border-top: 1px solid var(--line); }
.g-cta-title { font-family: var(--serif); font-weight: 400; font-size: clamp(2.4rem, 6vw, 5.2rem); line-height: 1; margin: 0; }
.g-cta-title em, .g-footer-title em { color: var(--gold); }
.g-footer { padding: 110px 0 2rem; border-top: 1px solid var(--line); background: #080706; }
.g-footer-title { font-family: var(--serif); font-weight: 400; font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1; margin: 0; }
.g-footer-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: .7rem; }
.g-footer-list a { color: var(--ink); transition: color .3s; }
.g-footer-list a:hover { color: var(--gold); }
.g-footer-contact li { display: flex; gap: .6rem; color: var(--ink-2); font-size: .95rem; word-break: break-word; }
.g-footer-contact svg { color: var(--gold); margin-top: 5px; flex-shrink: 0; }
.g-footer-word { font-family: var(--serif); font-size: clamp(5rem, 22vw, 20rem); line-height: .8; text-align: center; color: transparent; -webkit-text-stroke: 1px rgba(212,175,55,.35); margin: 5rem 0 2rem; letter-spacing: -.03em; user-select: none; }
.g-footer-base { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 1rem; font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--ink-2); border-top: 1px solid var(--line); padding-top: 1.5rem; }
.g-footer-credit { color: var(--gold); transition: color .3s; }
.g-footer-credit:hover { color: var(--gold-hi); }

/* responsive */
@media (max-width: 991.98px) {
  .g-bento { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 220px; }
  .g-b-a { grid-column: span 2; grid-row: span 2; }
  .g-b-b, .g-b-c, .g-b-d, .g-b-e, .g-b-f { grid-column: span 1; }
  .g-b-f { grid-column: span 2; }
  .g-gallery { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 180px; }
  .g-section { padding: 100px 0; }
}
@media (max-width: 575.98px) {
  .g-hero { min-height: 600px; height: 100svh; }
  .g-hero-content { padding-top: 90px; }
  .g-hero-controls { bottom: 1.5rem; }
  .g-hero-arrows button { width: 44px; height: 44px; }
  .g-bento { grid-template-columns: 1fr; grid-auto-rows: 240px; }
  .g-b-a, .g-b-b, .g-b-c, .g-b-d, .g-b-e, .g-b-f { grid-column: span 1; grid-row: span 1; }
  .g-gallery { grid-auto-rows: 150px; gap: .6rem; }
  .g-section { padding: 80px 0; }
  .g-page-hero { padding: 150px 0 80px; }
  .g-wall-cell { height: 140px; }
  .g-form { padding: 1.5rem; }
  .g-stats { margin-top: 3.5rem; }
  .g-stat { padding-bottom: 1.5rem; }
  .g-cta { padding: 110px 0; }
  .g-logo-name { font-size: 1.4rem; }
}
@media (prefers-reduced-motion: reduce) {
  .g-marquee-track, .g-hero-bar.is-active .g-hero-bar-fill { animation: none; }
  .g-hero-slide img { transition: none; }
}
"],"sourceRoot":""}