/*!
Theme Name: lumis
Theme URI: http://underscores.me/
Author: Henry
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: lumis
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

lumis is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
:root {
  --bg: #0A1624;
  --bg-2: #0E2033;
  --card: #10263D;
  --ink: #EEF1F4;
  --muted: #9AA9BA;
  --gold: #C8A874;
  --gold-soft: rgba(200, 168, 116, 0.38);
  --steel: #5AA7D6;
  --deep: #0B4F7C;
  --line: rgba(154, 169, 186, 0.18);
  --glow: rgba(200, 168, 116, 0.16);
  --bar: rgba(90, 167, 214, 0.22);
  --on-gold: #0A1624;
  --sans: Inter, Helvetica Neue, Helvetica, Arial, sans-serif;
  --serif: Inter, Helvetica Neue, Helvetica, Arial, sans-serif;
  --max: 1180px;
  box-sizing: border-box;
  padding-top: env(safe-area-inset-top, 0px);
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme=dark]) {
    --bg: #F3F0EA;
    --bg-2: #EAE5DB;
    --card: #FFFFFF;
    --ink: #0C1A2A;
    --muted: #566476;
    --gold: #94713C;
    --gold-soft: rgba(148, 113, 60, 0.4);
    --steel: #0B4F7C;
    --deep: #0B4F7C;
    --line: rgba(12, 26, 42, 0.14);
    --glow: rgba(148, 113, 60, 0.10);
    --bar: rgba(11, 79, 124, 0.18);
    --on-gold: #FFFFFF;
  }
}
:root[data-theme=light] {
  --bg: #F3F0EA;
  --bg-2: #EAE5DB;
  --card: #FFFFFF;
  --ink: #0C1A2A;
  --muted: #566476;
  --gold: #94713C;
  --gold-soft: rgba(148, 113, 60, 0.4);
  --steel: #0B4F7C;
  --deep: #0B4F7C;
  --line: rgba(12, 26, 42, 0.14);
  --glow: rgba(148, 113, 60, 0.10);
  --bar: rgba(11, 79, 124, 0.18);
  --on-gold: #FFFFFF;
}

:root[data-theme=dark] {
  --bg: #0A1624;
  --bg-2: #0E2033;
  --card: #10263D;
  --ink: #EEF1F4;
  --muted: #9AA9BA;
  --gold: #C8A874;
  --gold-soft: rgba(200, 168, 116, 0.38);
  --steel: #5AA7D6;
  --deep: #0B4F7C;
  --line: rgba(154, 169, 186, 0.18);
  --glow: rgba(200, 168, 116, 0.16);
  --bar: rgba(90, 167, 214, 0.22);
  --on-gold: #0A1624;
}

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
  background: #fff;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 1em 0;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/* Links
--------------------------------------------- */
a {
  color: #4169e1;
}
a:visited {
  color: #800080;
}
a:hover, a:focus, a:active {
  color: #191970;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  border-color: #ccc #bbb #aaa;
}
button:active, button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
  border-color: var(--gold);
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 3px;
  padding: 3px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: var(--ink);
}

select {
  border: 1px solid var(--line);
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
.top {
  position: sticky;
  top: env(safe-area-inset-top, 0px);
  z-index: 100;
  background: color-mix(in srgb, var(--bg) 86%, transparent);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--line);
}
.top .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 64px;
}
.top .brand {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  font-weight: 500;
  font-size: 22px;
  letter-spacing: -0.01em;
  color: var(--ink);
}
.top .brand svg {
  width: 30px;
  height: 30px;
  color: var(--ink);
}
.top .tabs {
  display: flex;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: 999px;
}
.top .tabs a {
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  padding: 7px 14px;
  border-radius: 999px;
  color: var(--muted);
  white-space: nowrap;
  transition: color 0.2s, background-color 0.2s, border-color 0.2s;
}
.top .tabs a:hover {
  color: var(--ink);
}
.top .tabs a[aria-current=page] {
  background: var(--gold);
  color: var(--on-gold) !important;
}
.top .tabs a.interest {
  color: var(--gold);
  border: 1px solid var(--gold-soft);
  margin-left: 4px;
}
.top .tabs a.interest:hover {
  border-color: var(--gold);
  color: var(--ink);
}
@media (max-width: 640px) {
  .top .wrap {
    flex-wrap: wrap;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .top .tabs {
    width: 100%;
    justify-content: space-between;
  }
  .top .tabs a {
    flex: 1;
    text-align: center;
    padding: 8px 4px;
    font-size: 13px;
  }
  .top .tabs a.interest {
    margin-left: 0;
  }
}

footer.landing-footer {
  margin: 0;
  background: var(--bg-2);
  border-top: 1px solid var(--line);
}
footer.landing-footer .wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-top: 28px;
  padding-bottom: 28px;
  font-size: 14px;
  color: var(--muted);
}
footer.landing-footer__links {
  display: flex;
  align-items: center;
  gap: 20px;
}
footer.landing-footer__lock {
  font-size: 13px;
  color: var(--muted) !important;
  border: 1px solid var(--line);
  padding: 4px 12px;
  border-radius: 999px;
}
footer.landing-footer__lock:hover {
  border-color: var(--gold);
  color: var(--ink) !important;
}
footer.landing-footer a {
  color: var(--ink);
  text-decoration: none;
  transition: color 0.2s, border-color 0.2s;
}
footer.landing-footer a:hover {
  color: var(--gold);
}

body.landing-body {
  background: var(--bg);
  color: var(--ink);
  font: 400 17px/1.55 var(--sans);
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  margin: 0;
}
body.landing-body #page {
  background: var(--bg);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  font-family: var(--sans);
}

:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
  border-radius: 4px;
}

.landing-page {
  overflow-x: clip;
  background: var(--bg);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  flex: 1 0 auto;
  display: flow-root;
}
.landing-page *, .landing-page *::before, .landing-page *::after {
  box-sizing: border-box;
}
.landing-page a {
  color: inherit;
  text-decoration: none;
}
.landing-page a:visited {
  color: inherit;
}
.landing-page [hidden] {
  display: none !important;
}
.landing-page h1, .landing-page h2, .landing-page h3 {
  letter-spacing: -0.02em;
  font-weight: 600;
}

section[data-route] {
  display: flow-root;
}

.wrap {
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 clamp(20px, 4vw, 40px);
}

.hero-mark {
  width: 64px;
  height: 64px;
  color: var(--gold);
  margin-bottom: 28px;
}

.mark .r1 {
  transform-origin: 32px 32px;
  animation: lock1 1.4s cubic-bezier(0.2, 0.8, 0.2, 1) both;
}
.mark .r2 {
  transform-origin: 32px 32px;
  animation: lock2 1.6s cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

@keyframes lock1 {
  from {
    transform: rotate(-140deg);
  }
  to {
    transform: rotate(0);
  }
}
@keyframes lock2 {
  from {
    transform: rotate(110deg);
  }
  to {
    transform: rotate(0);
  }
}
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 999px;
  font: 600 15px var(--sans);
  text-decoration: none;
  border: 1px solid var(--gold);
  cursor: pointer;
  transition: all 0.25s ease;
}
.btn, .btn:visited {
  text-decoration: none;
}
.btn-primary {
  background: var(--gold);
  color: var(--on-gold) !important;
  border-color: var(--gold);
}
.btn-primary:hover, .btn-primary:focus {
  filter: brightness(1.08);
  background: var(--gold);
  color: var(--on-gold) !important;
  border-color: var(--gold);
}
.btn-primary:visited, .btn-primary:active {
  color: var(--on-gold) !important;
}
.btn-ghost {
  background: transparent;
  color: var(--ink) !important;
  border-color: var(--line);
}
.btn-ghost:hover, .btn-ghost:focus {
  border-color: var(--gold);
  color: var(--ink) !important;
}
.btn-ghost:visited, .btn-ghost:active {
  color: var(--ink) !important;
}

.landing-page .btn-primary,
.landing-page a.btn-primary,
.landing-page button.btn-primary {
  background: var(--gold);
  color: var(--on-gold) !important;
  border-color: var(--gold);
}
.landing-page .btn-primary:hover, .landing-page .btn-primary:focus,
.landing-page a.btn-primary:hover,
.landing-page a.btn-primary:focus,
.landing-page button.btn-primary:hover,
.landing-page button.btn-primary:focus {
  filter: brightness(1.08);
  background: var(--gold);
  color: var(--on-gold) !important;
  border-color: var(--gold);
}
.landing-page .btn-primary:visited, .landing-page .btn-primary:active,
.landing-page a.btn-primary:visited,
.landing-page a.btn-primary:active,
.landing-page button.btn-primary:visited,
.landing-page button.btn-primary:active {
  color: var(--on-gold) !important;
}
.landing-page .btn-ghost,
.landing-page a.btn-ghost,
.landing-page button.btn-ghost {
  background: transparent;
  color: var(--ink) !important;
  border-color: var(--line);
}
.landing-page .btn-ghost:hover, .landing-page .btn-ghost:focus,
.landing-page a.btn-ghost:hover,
.landing-page a.btn-ghost:focus,
.landing-page button.btn-ghost:hover,
.landing-page button.btn-ghost:focus {
  border-color: var(--gold);
  color: var(--ink) !important;
}
.landing-page .btn-ghost:visited, .landing-page .btn-ghost:active,
.landing-page a.btn-ghost:visited,
.landing-page a.btn-ghost:active,
.landing-page button.btn-ghost:visited,
.landing-page button.btn-ghost:active {
  color: var(--ink) !important;
}

.stage {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #08121E;
  min-height: min(92vh, 900px);
  display: flex;
  align-items: center;
}
.stage > .wrap {
  width: 100%;
}
.stage .home-hero {
  padding-bottom: clamp(110px, 12vw, 170px);
}
.stage .home-hero p {
  color: #D6DEE6;
}
.stage h1 {
  color: #F6F2EA;
}
.stage .hero-card::before {
  background: radial-gradient(closest-side, rgba(200, 168, 116, 0.45), rgba(200, 168, 116, 0.1) 55%, transparent 75%);
}
.stage::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(8, 18, 30, 0.95) 0%, rgba(8, 18, 30, 0.82) 30%, rgba(8, 18, 30, 0.18) 62%, rgba(8, 18, 30, 0.26) 100%), linear-gradient(180deg, rgba(8, 18, 30, 0.5) 0%, transparent 24%, transparent 58%, var(--bg) 100%);
}
.stage + .wrap .doors {
  margin-top: clamp(-130px, -8vw, -48px);
  position: relative;
  z-index: 2;
}
@media (max-width: 860px) {
  .stage {
    min-height: 0;
  }
  .stage::after {
    background: linear-gradient(180deg, rgba(8, 18, 30, 0.7) 0%, rgba(8, 18, 30, 0.8) 55%, var(--bg) 100%);
  }
  .stage .home-hero {
    padding-bottom: 64px;
  }
  .stage + .wrap .doors {
    margin-top: -28px;
  }
}

.stage-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 58% 42%;
  z-index: -2;
  animation: stagein 2.8s cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

@keyframes stagein {
  from {
    transform: scale(1.07);
    opacity: 0.35;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
.home-hero {
  padding: clamp(48px, 9vw, 110px) 0 clamp(28px, 4vw, 48px);
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: center;
}
.home-hero h1 {
  font-size: clamp(34px, 4.9vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.03em;
  margin: 0 0 22px;
  max-width: 17ch;
}
.home-hero p {
  font-family: var(--serif);
  font-size: clamp(19px, 2vw, 23px);
  line-height: 1.5;
  color: var(--muted);
  max-width: 42ch;
  margin: 0;
}
.home-hero .live {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px !important;
  font-family: var(--sans) !important;
  color: var(--muted);
  margin: 28px 0 0 !important;
}
.home-hero .live i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 0 4px var(--glow);
}

.hero-card {
  position: relative;
  display: grid;
  place-items: center;
  perspective: 1400px;
  min-height: 280px;
}
.hero-card::before {
  content: "";
  position: absolute;
  inset: 8% 4%;
  border-radius: 50%;
  background: radial-gradient(closest-side, rgba(200, 168, 116, 0.38), rgba(200, 168, 116, 0.08) 55%, transparent 75%);
  filter: blur(6px);
}
.hero-card img {
  position: relative;
  width: min(100%, 460px);
  transform: rotateX(14deg) rotateY(-22deg) rotate(-5deg);
  filter: drop-shadow(0 40px 50px rgba(0, 0, 0, 0.55)) drop-shadow(0 6px 10px rgba(0, 0, 0, 0.35));
  animation: settle 1.6s cubic-bezier(0.2, 0.8, 0.2, 1) both;
}

@keyframes settle {
  from {
    transform: rotateX(26deg) rotateY(-34deg) rotate(-9deg) translateY(24px);
    opacity: 0;
  }
  to {
    transform: rotateX(14deg) rotateY(-22deg) rotate(-5deg);
    opacity: 1;
  }
}
.doors {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(14px, 2.2vw, 28px);
  padding: clamp(24px, 4vw, 40px) 0 clamp(40px, 6vw, 64px);
}

.door {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: clamp(380px, 44vw, 520px);
  padding: 0 clamp(20px, 2.4vw, 32px) clamp(24px, 3vw, 36px);
  text-decoration: none;
  border: 1px solid var(--gold-soft);
  border-radius: 999px 999px 6px 6px;
  background: var(--card);
  overflow: hidden;
  isolation: isolate;
  cursor: pointer;
  box-shadow: 0 30px 60px -30px rgba(0, 0, 0, 0.65);
  transition: border-color 0.25s ease;
}
.door .door-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
  transform: scale(1.02);
  transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), filter 0.4s;
  filter: saturate(1.05);
}
.door::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(10, 22, 36, 0.1) 0%, rgba(10, 22, 36, 0.55) 45%, rgba(10, 22, 36, 0.94) 78%), radial-gradient(120% 60% at 50% 108%, rgba(200, 168, 116, 0.22), transparent 60%);
}
.door::before {
  content: "";
  position: absolute;
  inset: 9px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px 999px 3px 3px;
  pointer-events: none;
  z-index: 1;
  transition: border-color 0.25s ease;
}
.door:hover, .door:focus-visible {
  border-color: var(--gold);
}
.door:hover .door-img, .door:focus-visible .door-img {
  transform: scale(1.07);
  filter: saturate(1.15);
}
.door:hover::before, .door:focus-visible::before {
  border-color: rgba(200, 168, 116, 0.6);
}
.door:hover .enter span, .door:focus-visible .enter span {
  width: 36px;
}
.door p, .door span {
  position: relative;
  z-index: 2;
  color: #EEF1F4;
}
.door .who {
  font-size: clamp(28px, 2.8vw, 36px);
  font-weight: 600;
  letter-spacing: -0.02em;
  margin: 0 0 10px;
}
.door .promise {
  font-family: var(--serif);
  font-size: 19px;
  line-height: 1.4;
  margin: 0 0 6px;
}
.door .detail {
  color: #B9C4D0;
  font-size: 15px;
  margin: 0 0 22px;
  max-width: 30ch;
}
.door .enter {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  color: #C8A874;
}
.door .enter span {
  display: inline-block;
  width: 22px;
  height: 1px;
  background: currentColor;
  transition: width 0.25s ease;
}

@media (max-width: 860px) {
  .home-hero {
    grid-template-columns: 1fr;
  }
  .hero-card {
    min-height: 0;
    padding: 20px 0 0;
  }
  .hero-card img {
    width: min(80%, 360px);
  }
  .doors {
    grid-template-columns: 1fr;
  }
  .door {
    min-height: 0;
    padding-top: clamp(180px, 48vw, 240px);
    border-radius: 220px 220px 6px 6px;
  }
  .door::before {
    border-radius: 210px 210px 3px 3px;
  }
}
.inside {
  padding: clamp(16px, 3vw, 32px) 0 clamp(48px, 7vw, 88px);
}
.inside .inside-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 12px 48px;
  margin-bottom: 26px;
}
.inside .inside-head h2 {
  font-size: clamp(32px, 4vw, 52px);
  line-height: 1.02;
  letter-spacing: -0.03em;
  margin: 0;
}
.inside .inside-head p {
  margin: 0;
  max-width: 44ch;
  font-family: var(--serif);
  font-size: clamp(18px, 1.7vw, 21px);
  line-height: 1.45;
  color: var(--muted);
}

.mosaic {
  display: grid;
  grid-template-columns: 1.55fr 1fr 1fr;
  grid-template-rows: repeat(2, clamp(210px, 23vw, 320px));
  gap: 12px;
}
.mosaic figure {
  margin: 0;
  overflow: hidden;
  border-radius: 6px;
  background: var(--card);
}
.mosaic figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mosaic .m-glass {
  grid-column: 1;
  grid-row: 1;
}
.mosaic .m-whisky {
  grid-column: 1;
  grid-row: 2;
}
.mosaic .m-door {
  grid-column: 2;
  grid-row: 1/3;
  border-radius: 999px 999px 6px 6px !important;
  border: 1px solid var(--gold-soft);
}
.mosaic .m-stools {
  grid-column: 3;
  grid-row: 1;
}
.mosaic .m-cigar {
  grid-column: 3;
  grid-row: 2;
}
@media (max-width: 760px) {
  .mosaic {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 170px 170px 170px 190px;
  }
  .mosaic .m-glass {
    grid-column: 1/-1;
    grid-row: 1;
  }
  .mosaic .m-door {
    grid-column: 1;
    grid-row: 2/4;
  }
  .mosaic .m-stools {
    grid-column: 2;
    grid-row: 2;
  }
  .mosaic .m-cigar {
    grid-column: 2;
    grid-row: 3;
  }
  .mosaic .m-whisky {
    grid-column: 1/-1;
    grid-row: 4;
  }
}

.aud-hero {
  padding: clamp(36px, 6vw, 80px) 0 clamp(36px, 5vw, 60px);
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: center;
}
.aud-hero .for {
  color: var(--gold);
  font-weight: 600;
  font-size: 15px;
  margin: 0 0 18px;
}
.aud-hero h1 {
  font-size: clamp(36px, 5.3vw, 66px);
  line-height: 1.02;
  letter-spacing: -0.03em;
  margin: 0 0 22px;
  max-width: 16ch;
}
.aud-hero h1:focus {
  outline: none;
}
.aud-hero .pitch {
  font-family: var(--serif);
  font-size: clamp(19px, 1.75vw, 22px);
  line-height: 1.55;
  margin: 0 0 28px;
  max-width: 46ch;
}
.aud-hero .ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
.aud-hero .hero-art {
  position: relative;
  margin: 0;
}
.aud-hero .hero-art img {
  width: 100%;
  aspect-ratio: 4/5;
  object-fit: cover;
  border-radius: 999px 999px 8px 8px;
  border: 1px solid var(--gold-soft);
  padding: 8px;
  background: var(--bg);
}
.aud-hero .hero-art figcaption {
  margin: 12px 0 0;
  font-size: 13px;
  color: var(--muted);
  text-align: center;
}

@media (max-width: 860px) {
  .aud-hero {
    grid-template-columns: 1fr;
  }
  .aud-hero .hero-art img {
    aspect-ratio: 16/10;
    border-radius: 8px;
    padding: 0;
    border: 0;
  }
}
.strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--gold-soft);
  border-bottom: 1px solid var(--line);
}
.strip div {
  padding: 26px clamp(14px, 2vw, 28px) 26px 0;
}
.strip div + div {
  padding-left: clamp(14px, 2vw, 28px);
  border-left: 1px solid var(--line);
}
.strip b {
  display: block;
  font-size: clamp(30px, 3.4vw, 44px);
  letter-spacing: -0.03em;
  line-height: 1;
  color: var(--gold);
  margin-bottom: 8px;
  font-weight: 600;
}
.strip span {
  font-size: 14px;
  color: var(--muted);
  display: block;
  max-width: 22ch;
}

@media (max-width: 760px) {
  .strip {
    grid-template-columns: 1fr 1fr;
  }
  .strip div, .strip div + div {
    padding: 18px 12px 18px 0;
    border-left: 0;
  }
  .strip div:nth-child(n+3) {
    border-top: 1px solid var(--line);
  }
}
.benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(18px, 3vw, 40px);
  padding: clamp(32px, 4vw, 52px) 0;
}
.benefits.four {
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(20px, 3vw, 44px);
}
.benefits article {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: 20px;
  border-top: 2px solid var(--gold);
}
.benefits h2 {
  font-size: clamp(22px, 2.2vw, 28px);
  line-height: 1.12;
  margin: 0;
}
.benefits p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  max-width: 36ch;
}
.benefits .num {
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
.benefits .num b {
  display: block;
  font-size: clamp(30px, 3.2vw, 40px);
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1;
  color: var(--steel);
  margin-bottom: 6px;
}
.benefits .num span {
  font-size: 14px;
  color: var(--muted);
}

@media (max-width: 760px) {
  .benefits {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.block {
  padding: clamp(40px, 6vw, 72px) 0;
  border-top: 1px solid var(--line);
}
.block h2 {
  font-size: clamp(26px, 3vw, 38px);
  margin: 0 0 8px;
  max-width: 24ch;
  line-height: 1.08;
}
.block .lede {
  margin: 0 0 32px;
  color: var(--muted);
  max-width: 60ch;
  font-size: 17px;
}

.rings {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: clamp(20px, 3vw, 48px);
  align-items: center;
}

.stack {
  width: 100%;
  max-width: 680px;
  margin: 0 auto;
  color: var(--ink);
  overflow: visible;
}
.stack .spine {
  stroke: var(--gold);
  stroke-opacity: 0.45;
  stroke-width: 1.5;
  stroke-dasharray: 2 7;
}
.stack .shadow {
  fill: #000;
  opacity: 0.42;
}
.stack .face {
  fill: currentColor;
  fill-opacity: 0.05;
  stroke-width: 2;
}
.stack .inner {
  fill: none;
  stroke-width: 1;
  stroke-opacity: 0.3;
}
.stack .side {
  fill-opacity: 0.16;
  stroke: none;
}
.stack .lead {
  stroke: currentColor;
  stroke-opacity: 0.3;
  stroke-width: 1;
}
.stack .lead.gold {
  stroke: var(--gold);
  stroke-opacity: 0.55;
}
.stack .num {
  fill: var(--bg);
  stroke-width: 1.5;
}
.stack .numt {
  font: 700 16px var(--sans);
}
.stack .cardnode {
  fill: var(--gold);
}
.stack .cardlbl {
  font: 500 16px var(--sans);
  fill: var(--gold);
}
.stack .cardedge {
  fill: none;
  stroke: var(--gold);
  stroke-opacity: 0.5;
  stroke-width: 1.5;
  vector-effect: non-scaling-stroke;
}
.stack .p1 .face, .stack .p1 .inner, .stack .p1 .num {
  stroke: var(--gold);
}
.stack .p1 .side {
  fill: var(--gold);
}
.stack .p1 .numt {
  fill: var(--gold);
}
.stack .p2 .face, .stack .p2 .inner, .stack .p2 .num {
  stroke: var(--steel);
}
.stack .p2 .side {
  fill: var(--steel);
}
.stack .p2 .numt {
  fill: var(--steel);
}
.stack .p3 .face, .stack .p3 .inner, .stack .p3 .num {
  stroke: currentColor;
  stroke-opacity: 0.55;
}
.stack .p3 .side {
  fill: currentColor;
}
.stack .p3 .numt {
  fill: currentColor;
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme=dark]) .stack .shadow {
    opacity: 0.16;
  }
}
.stream {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 16px;
  padding: 22px 0;
  border-top: 1px solid var(--line);
}
.stream:first-child {
  border-top: 0;
  padding-top: 0;
}
.stream .dot {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 2px solid var(--gold);
  display: grid;
  place-items: center;
  font-weight: 700;
  font-size: 15px;
  color: var(--gold);
}
.stream .dot.s2 {
  border-color: var(--steel);
  color: var(--steel);
}
.stream .dot.s3 {
  border-color: var(--ink);
  color: var(--ink);
}
.stream h3 {
  font-size: clamp(22px, 2.2vw, 28px);
  margin: 0 0 6px;
  line-height: 1.1;
}
.stream p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  max-width: 44ch;
}
.stream em {
  font-style: normal;
  color: var(--ink);
  font-weight: 500;
}

@media (max-width: 820px) {
  .rings {
    grid-template-columns: 1fr;
  }
}
.ledger {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(20px, 3vw, 40px);
}
.ledger section {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 24px;
}
.ledger h3 {
  margin: 0 0 16px;
  font-size: 15px;
  font-weight: 600;
  color: var(--gold);
}

.row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 16px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid var(--line);
}
.row span {
  font-size: 16px;
}
.row b {
  font-size: 20px;
  letter-spacing: -0.02em;
  font-weight: 600;
}
.row .bar {
  grid-column: 1/-1;
  height: 6px;
  border-radius: 3px;
  background: var(--bar);
  overflow: hidden;
}
.row .bar i {
  display: block;
  height: 100%;
  background: var(--steel);
  border-radius: 3px;
}

.total {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px 20px;
  margin: 28px 0 0;
  padding-top: 20px;
  border-top: 1px solid var(--gold-soft);
}
.total b {
  font-size: clamp(34px, 4vw, 52px);
  letter-spacing: -0.03em;
  font-weight: 600;
  color: var(--gold);
  line-height: 1;
}
.total span {
  color: var(--muted);
  font-size: 15px;
  max-width: 52ch;
}

@media (max-width: 760px) {
  .ledger {
    grid-template-columns: 1fr;
  }
}
.asset {
  border: 1px solid var(--gold);
  border-radius: 8px;
  padding: clamp(24px, 4vw, 44px);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: clamp(20px, 4vw, 56px);
  align-items: center;
  background: radial-gradient(90% 120% at 0% 50%, var(--glow), transparent 60%), var(--card);
}
.asset .big {
  font-size: clamp(56px, 8vw, 112px);
  line-height: 0.9;
  letter-spacing: -0.04em;
  font-weight: 600;
  color: var(--gold);
}
.asset .big small {
  display: block;
  font-size: 14px;
  letter-spacing: 0;
  color: var(--muted);
  font-weight: 500;
  margin-top: 10px;
}
.asset h2 {
  margin: 0 0 10px;
}
.asset p {
  margin: 0;
  color: var(--muted);
  max-width: 56ch;
}
.asset ul {
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.asset li {
  font-size: 14px;
  padding: 6px 12px;
  border: 1px solid var(--gold-soft);
  border-radius: 999px;
}

@media (max-width: 760px) {
  .asset {
    grid-template-columns: 1fr;
  }
}
.traj {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.7fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: end;
}

.bars {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(8px, 1.5vw, 18px);
  align-items: end;
  height: 260px;
  border-bottom: 1px solid var(--line);
}
.bars div {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  gap: 8px;
}
.bars i {
  display: block;
  width: 100%;
  background: linear-gradient(180deg, var(--steel), var(--deep));
  border-radius: 4px 4px 0 0;
  min-height: 3px;
}
.bars b {
  font-size: 15px;
  font-weight: 600;
}
.bars span {
  font-size: 13px;
  color: var(--muted);
  padding-bottom: 8px;
}

.mix {
  list-style: none;
  margin: 0;
  padding: 0;
}
.mix li {
  padding: 12px 0;
  border-top: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 15px;
}
.mix li:first-child {
  border-top: 0;
}
.mix b {
  font-weight: 600;
}

.cagr {
  margin: 16px 0 0;
  font-size: 15px;
  color: var(--muted);
}
.cagr b {
  color: var(--gold);
  font-size: 22px;
  letter-spacing: -0.02em;
}

@media (max-width: 760px) {
  .traj {
    grid-template-columns: 1fr;
  }
  .bars {
    height: 200px;
  }
}
.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(24px, 4vw, 56px);
  align-items: center;
}
.split svg {
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
  color: var(--ink);
}
.split ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.split li {
  padding: 14px 0;
  border-top: 1px solid var(--line);
}
.split li:first-child {
  border-top: 0;
}
.split li b {
  display: block;
  font-weight: 600;
  margin-bottom: 2px;
}
.split li span {
  color: var(--muted);
  font-size: 15px;
}

@media (max-width: 820px) {
  .split {
    grid-template-columns: 1fr;
  }
}
.kit {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: clamp(16px, 2.5vw, 32px);
}
.kit figure {
  margin: 0;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.kit img {
  border-radius: 6px;
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1;
}
.kit figure:first-child img {
  aspect-ratio: 7/5;
}
.kit figcaption {
  font-size: 15px;
  color: var(--muted);
  margin-top: auto;
}
.kit figcaption b {
  display: block;
  font-weight: 600;
  margin-bottom: 4px;
}

@media (max-width: 760px) {
  .kit {
    grid-template-columns: 1fr;
  }
}
.tiers {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(14px, 2vw, 24px);
}

.tier {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 26px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.tier.hi {
  border-color: var(--gold);
  background: radial-gradient(100% 60% at 50% 0%, var(--glow), transparent 70%), var(--card);
}
.tier h3 {
  font-size: 24px;
  margin: 0;
  line-height: 1.1;
}
.tier .who {
  color: var(--muted);
  font-size: 15px;
  margin: 0;
}
.tier .earn {
  padding: 14px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.tier .earn b {
  display: block;
  font-size: 19px;
  font-weight: 600;
  margin-bottom: 2px;
}
.tier .earn span {
  font-size: 14px;
  color: var(--muted);
}
.tier ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 15px;
  color: var(--muted);
  display: grid;
  gap: 6px;
}
.tier ul li::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold);
  margin-right: 10px;
  vertical-align: 2px;
}

@media (max-width: 820px) {
  .tiers {
    grid-template-columns: 1fr;
  }
}
.give {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(14px, 2vw, 28px);
}
.give div {
  padding-top: 16px;
  border-top: 1px solid var(--gold-soft);
}
.give b {
  display: block;
  font-weight: 600;
  margin-bottom: 4px;
}
.give span {
  font-size: 15px;
  color: var(--muted);
}

@media (max-width: 760px) {
  .give {
    grid-template-columns: 1fr 1fr;
  }
}
.path {
  padding: clamp(40px, 6vw, 72px) 0;
  border-top: 1px solid var(--line);
}
.path h2 {
  font-size: clamp(26px, 3vw, 38px);
  margin: 0 0 32px;
  max-width: 26ch;
  line-height: 1.08;
}

.steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 3vw, 40px);
  counter-reset: s;
}
.steps li {
  counter-increment: s;
  position: relative;
  padding-top: 26px;
  border-top: 2px solid var(--line);
}
.steps li.now {
  border-top-color: var(--gold);
}
.steps li.now::before {
  border-color: var(--gold);
  color: var(--gold);
}
.steps li::before {
  content: counter(s);
  position: absolute;
  top: -15px;
  left: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 13px;
  font-weight: 700;
  background: var(--bg);
  border: 2px solid var(--line);
  color: var(--muted);
}
.steps h3 {
  font-size: 20px;
  margin: 0 0 8px;
}
.steps p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  max-width: 34ch;
}
.steps .earn {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  color: var(--gold);
  font-weight: 600;
}
.steps .tag {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  color: var(--gold);
  margin-left: 8px;
  vertical-align: 2px;
}

@media (max-width: 760px) {
  .steps {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}
.whynow {
  padding: clamp(40px, 6vw, 72px) 0;
  border-top: 1px solid var(--line);
}
.whynow h2 {
  font-size: clamp(26px, 3vw, 38px);
  margin: 0 0 8px;
  line-height: 1.08;
}
.whynow .lede {
  margin: 0 0 32px;
  color: var(--muted);
  max-width: 60ch;
}

.reasons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(18px, 3vw, 40px);
}
.reasons article {
  padding-top: 20px;
  border-top: 2px solid var(--gold);
}
.reasons h3 {
  font-size: 22px;
  margin: 0 0 8px;
  line-height: 1.15;
}
.reasons p {
  margin: 0;
  color: var(--muted);
  font-size: 16px;
  max-width: 34ch;
}

.compounds {
  margin: 32px 0 0;
  padding: 20px 24px;
  border-left: 3px solid var(--gold);
  background: var(--card);
  border-radius: 0 8px 8px 0;
  font-size: 17px;
}
.compounds b {
  font-weight: 600;
}

@media (max-width: 760px) {
  .reasons {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}
.contact {
  padding: clamp(40px, 6vw, 72px) 0;
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: start;
}
.contact h2 {
  font-size: clamp(26px, 3vw, 38px);
  margin: 0 0 12px;
  line-height: 1.08;
}
.contact .lede {
  margin: 0 0 20px;
  color: var(--muted);
  max-width: 40ch;
}
.contact .direct {
  font-size: 15px;
  color: var(--muted);
}
.contact .direct a {
  color: var(--ink);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid var(--gold-soft);
  transition: border-color 0.2s;
}
.contact .direct a:hover {
  border-color: var(--gold);
}

.form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 16px;
  row-gap: 20px;
}
.form > .full {
  grid-column: 1/-1;
}
.form label {
  display: grid;
  gap: 8px;
  font-size: 13px;
  line-height: 1.25;
  font-weight: 600;
  color: var(--muted);
}
.form label.full {
  grid-column: 1/-1;
}
.form input, .form select, .form textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--card);
  color: var(--ink);
  font: 400 16px var(--sans);
  caret-color: var(--gold);
  box-shadow: none;
  transition: border-color 0.2s, outline 0.2s, color 0.2s, background-color 0.2s;
}
.form input::placeholder, .form select::placeholder, .form textarea::placeholder {
  color: var(--muted);
  opacity: 0.7;
}
.form input:hover, .form select:hover, .form textarea:hover {
  border-color: var(--gold-soft);
  color: var(--ink);
}
.form input:focus, .form input:focus-visible, .form select:focus, .form select:focus-visible, .form textarea:focus, .form textarea:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 0;
  border-color: var(--gold);
  color: var(--ink) !important;
  background: var(--card);
  box-shadow: none;
}
.form input:active, .form select:active, .form textarea:active {
  color: var(--ink) !important;
  background: var(--card);
}
.form input:-webkit-autofill, .form input:-webkit-autofill:hover, .form input:-webkit-autofill:focus, .form input:-webkit-autofill:active, .form select:-webkit-autofill, .form select:-webkit-autofill:hover, .form select:-webkit-autofill:focus, .form select:-webkit-autofill:active, .form textarea:-webkit-autofill, .form textarea:-webkit-autofill:hover, .form textarea:-webkit-autofill:focus, .form textarea:-webkit-autofill:active {
  -webkit-text-fill-color: var(--ink) !important;
  -webkit-box-shadow: 0 0 0px 1000px var(--card) inset !important;
  box-shadow: 0 0 0px 1000px var(--card) inset !important;
  caret-color: var(--gold) !important;
  transition: background-color 5000s ease-in-out 0s;
}
.form input[type=text],
.form input[type=email],
.form input[type=tel],
.form input[type=url],
.form input[type=password],
.form textarea {
  color: var(--ink);
}
.form input[type=text]:hover,
.form input[type=email]:hover,
.form input[type=tel]:hover,
.form input[type=url]:hover,
.form input[type=password]:hover,
.form textarea:hover {
  color: var(--ink);
}
.form input[type=text]:focus, .form input[type=text]:focus-visible, .form input[type=text]:active,
.form input[type=email]:focus,
.form input[type=email]:focus-visible,
.form input[type=email]:active,
.form input[type=tel]:focus,
.form input[type=tel]:focus-visible,
.form input[type=tel]:active,
.form input[type=url]:focus,
.form input[type=url]:focus-visible,
.form input[type=url]:active,
.form input[type=password]:focus,
.form input[type=password]:focus-visible,
.form input[type=password]:active,
.form textarea:focus,
.form textarea:focus-visible,
.form textarea:active {
  color: var(--ink) !important;
  background: var(--card);
}
.form textarea {
  min-height: 116px;
  resize: vertical;
}
.form select {
  appearance: none;
  -webkit-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);
  background-position: calc(100% - 20px) 50%, calc(100% - 14px) 50%;
  background-size: 6px 6px;
  background-repeat: no-repeat;
  padding-right: 40px;
  color: var(--ink);
  background-color: var(--card);
}
.form select option {
  background: var(--card);
  color: var(--ink);
}
.form .actions {
  grid-column: 1/-1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-top: 6px;
}
.form .hint {
  font-size: 13px;
  color: var(--muted);
  margin: 0;
}
.form .sent {
  grid-column: 1/-1;
  font-size: 15px;
  color: var(--gold);
  margin: 4px 0 0;
  padding: 12px 16px;
  border-radius: 8px;
  background: var(--card);
  border: 1px solid var(--gold-soft);
}
.form .sent.is-error {
  color: #E06D53;
  border-color: rgba(224, 109, 83, 0.45);
}
.form .sent.is-success {
  color: var(--gold);
  border-color: var(--gold);
}
.form .sent:empty {
  display: none;
}

.c-gate-preview {
  position: relative;
  margin-top: 8px;
  padding-bottom: 12px;
  overflow: hidden;
  user-select: none;
  pointer-events: none;
}
.c-gate-preview__content {
  filter: blur(4px);
  opacity: 0.45;
  -webkit-mask-image: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0.35) 55%, transparent 100%);
  mask-image: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0.35) 55%, transparent 100%);
}
.c-gate-preview__strip {
  border-bottom: 0;
}
.c-gate-preview__fade {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 0%, var(--bg) 95%);
}

.c-gate--locked {
  position: relative;
  z-index: 2;
  overflow: hidden;
  margin-top: 0;
  margin-bottom: 56px;
  padding: clamp(32px, 4.5vw, 56px);
  border: 1px solid var(--gold-soft);
  border-top: 2px solid var(--gold);
  border-radius: 12px;
  background: radial-gradient(95% 110% at 0% 0%, var(--glow), transparent 62%), var(--bg-2);
  box-shadow: 0 28px 60px -24px rgba(0, 0, 0, 0.6);
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: clamp(32px, 4.5vw, 56px);
  align-items: start;
}
.c-gate--locked.pbg::before {
  left: 0;
  right: 0;
  opacity: 0.14;
  -webkit-mask-image: linear-gradient(125deg, #000 0%, rgba(0, 0, 0, 0.45) 48%, transparent 88%);
  mask-image: linear-gradient(125deg, #000 0%, rgba(0, 0, 0, 0.45) 48%, transparent 88%);
}
.c-gate--locked .c-gate__panels {
  padding-left: clamp(28px, 4vw, 48px);
  border-left: 1px solid var(--line);
}
@media (max-width: 900px) {
  .c-gate--locked .c-gate__panels {
    padding-left: 0;
    padding-top: 28px;
    border-left: 0;
    border-top: 1px solid var(--line);
  }
}
.c-gate__intro h2 {
  font-size: clamp(28px, 3.2vw, 40px);
  line-height: 1.08;
  margin: 0 0 16px;
}
.c-gate__intro .lede {
  font-size: 16px;
  line-height: 1.6;
  margin: 0 0 24px;
  max-width: 42ch;
}
.c-gate__intro .direct {
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}
.c-gate__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 20px;
  padding: 6px 14px;
  border-radius: 999px;
  border: 1px solid var(--gold-soft);
  background: var(--card);
  color: var(--gold);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}
.c-gate__lock-icon {
  flex-shrink: 0;
  color: var(--gold);
}
.c-gate__perks {
  margin: 0 0 24px;
  padding: 20px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  list-style: none;
  display: grid;
  gap: 12px;
  font-size: 15px;
  line-height: 1.45;
  color: var(--ink);
}
.c-gate__perks li {
  display: flex;
  align-items: baseline;
  gap: 12px;
}
.c-gate__perks li::before {
  content: "";
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold);
  transform: translateY(-2px);
}
.c-gate__switcher {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin: 0 0 28px;
  padding: 4px;
  border-radius: 10px;
  border: 1px solid var(--line);
  background: var(--card);
}
@media (max-width: 540px) {
  .c-gate__switcher {
    grid-template-columns: 1fr;
  }
}
.c-gate__tab {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border: 0;
  background: transparent;
  color: var(--muted);
  font: 600 13.5px/1.25 var(--sans);
  padding: 8px 16px;
  border-radius: 7px;
  cursor: pointer;
  text-align: center;
  transition: background-color 0.2s, color 0.2s, box-shadow 0.2s;
}
.c-gate__tab:hover, .c-gate__tab:focus, .c-gate__tab:active {
  border: 0;
  color: var(--ink);
}
.c-gate__tab:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}
.c-gate__tab.is-active {
  background: var(--gold);
  color: var(--on-gold) !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.22);
}
.c-gate__form--unlock {
  grid-template-columns: 1fr;
  row-gap: 20px;
}
.c-gate__unlock-header {
  grid-column: 1/-1;
  margin: 0 0 4px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
}
.c-gate__unlock-header h3 {
  font-size: clamp(20px, 2.2vw, 24px);
  line-height: 1.2;
  margin: 0 0 8px;
  color: var(--ink);
}
.c-gate__unlock-header p {
  margin: 0;
  font-size: 15px;
  line-height: 1.55;
  color: var(--muted);
  max-width: 52ch;
}

@media (max-width: 900px) {
  .contact,
  .c-gate--locked {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 820px) {
  .form {
    grid-template-columns: 1fr;
  }
}
.source {
  font-size: 13px;
  color: var(--muted);
  margin: 14px 0 0;
}

.elsewhere {
  margin: 0;
  padding: 24px 0 40px;
  border-top: 1px solid var(--line);
  display: flex;
  flex-wrap: wrap;
  gap: 12px 28px;
  align-items: center;
  color: var(--muted);
  font-size: 15px;
}
.elsewhere a {
  font-weight: 600;
  color: var(--ink);
  text-decoration: none;
  border-bottom: 1px solid var(--gold-soft);
  transition: border-color 0.2s;
}
.elsewhere a:hover {
  border-color: var(--gold);
}
.elsewhere button {
  margin-left: auto;
  background: none;
  border: 1px solid var(--line);
  color: var(--muted);
  font: 500 13px var(--sans);
  padding: 7px 12px;
  border-radius: 999px;
  cursor: pointer;
  transition: border-color 0.2s, color 0.2s;
}
.elsewhere button:hover {
  border-color: var(--gold);
  color: var(--ink);
}
.elsewhere .copied {
  font-size: 13px;
  color: var(--muted);
  word-break: break-all;
  flex-basis: 100%;
  margin: 0;
}
.elsewhere .copied:empty {
  display: none;
}

.band {
  position: relative;
  margin: 0 calc(50% - 50vw);
  height: clamp(300px, 42vw, 580px);
  overflow: hidden;
  background: #08121E;
}
.band img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.band::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 18, 30, 0.25) 0%, transparent 30%, transparent 50%, rgba(8, 18, 30, 0.82) 100%);
  pointer-events: none;
}
.band figcaption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 clamp(20px, 4vw, 40px) clamp(22px, 3.2vw, 36px);
  color: #F6F2EA;
  font-family: var(--serif);
  font-size: clamp(18px, 2vw, 24px);
  line-height: 1.35;
}

.pbg {
  position: relative;
  isolation: isolate;
}
.pbg::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% - 50vw);
  right: calc(50% - 50vw);
  z-index: -1;
  background: var(--pbg) center/cover no-repeat;
  opacity: 0.3;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 22%, #000 78%, transparent 100%);
}
.pbg.strip::before {
  opacity: 0.26;
  -webkit-mask-image: none;
  mask-image: none;
}
.pbg.whynow.bg-whisky::before, .pbg.block.bg-cigar::before {
  opacity: 0.2;
}

.bg-whisky::before,
.bg-cigar::before {
  filter: blur(5px) saturate(1.1);
}

.asset-photo {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.asset-photo::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 52%;
  z-index: -1;
  background: var(--pbg) 72% center/cover no-repeat;
  opacity: 0.4;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg, #000 25%, transparent 100%);
  mask-image: linear-gradient(90deg, #000 25%, transparent 100%);
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme=dark]) .pbg::before {
    opacity: 0.18;
  }
  :root:not([data-theme=dark]) .asset-photo::after {
    opacity: 0.26;
  }
}
:root[data-theme=light] .pbg::before {
  opacity: 0.18;
}
:root[data-theme=light] .asset-photo::after {
  opacity: 0.26;
}

.kitshot {
  margin: 28px 0 clamp(28px, 3.5vw, 40px);
}
.kitshot img {
  width: 100%;
  aspect-ratio: 2000/867;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid var(--line);
  background: #0E2033;
}
@media (max-width: 760px) {
  .kitshot img {
    aspect-ratio: 16/10;
  }
}

.bg-whisky {
  --pbg: url('assets/images/landing/bg-whisky.webp');
}

.bg-glass {
  --pbg: url('assets/images/landing/bg-glass.webp');
}

.bg-cigar {
  --pbg: url('assets/images/landing/bg-cigar.webp');
}

.bg-signin {
  --pbg: url('assets/images/landing/bg-signin.webp');
}

.bg-dining {
  --pbg: url('assets/images/landing/bg-dining.webp');
}

@media (prefers-reduced-motion: reduce) {
  .mark .r1,
  .mark .r2,
  .hero-card img,
  .stage-img {
    animation: none !important;
  }
  * {
    transition: none !important;
  }
}
body.privacy-policy-body {
  --privacy-bg: #0d1b2e;
  --privacy-footer-bg: #080f1a;
  --privacy-text: #c8d8e8;
  --privacy-muted: #8fa3bb;
  --privacy-white: #ffffff;
  --privacy-gold: #CFA35C;
  --privacy-focus: #36B1B6;
  --privacy-border: rgba(255, 255, 255, 0.082);
  --privacy-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  margin: 0;
  background: var(--privacy-bg);
  color: var(--privacy-text);
  font-family: var(--privacy-font);
  font-size: 16px;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
}

.c-privacy {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: var(--privacy-bg);
  color: var(--privacy-text);
  font-family: var(--privacy-font);
  line-height: 1.8;
}
.c-privacy *,
.c-privacy *::before,
.c-privacy *::after {
  box-sizing: border-box;
}
.c-privacy a,
.c-privacy a:visited {
  color: var(--privacy-gold);
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
  transition: color 0.15s ease;
}
.c-privacy a:hover,
.c-privacy a:active {
  color: var(--privacy-white);
}
.c-privacy a:focus-visible {
  outline: 2px solid var(--privacy-focus);
  outline-offset: 5px;
  border-radius: 2px;
}
.c-privacy__header {
  padding: 24px max(24px, (100% - 1100px) / 2);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 1px solid var(--privacy-border);
}
.c-privacy__logo {
  display: block;
  height: 36px;
  width: auto;
  max-width: 160px;
}
.c-privacy__back-link {
  font-size: 14px;
}
.c-privacy__main {
  width: 100%;
  max-width: 860px;
  margin: 0 auto;
  padding: 64px 28px 88px;
  flex: 1 0 auto;
}
.c-privacy__main h1 {
  color: var(--privacy-white);
  font-family: var(--privacy-font);
  font-weight: 700;
  font-size: clamp(32px, 6vw, 48px);
  line-height: 1.2;
  margin: 0 0 16px;
  letter-spacing: -0.03em;
}
.c-privacy__main h2 {
  color: var(--privacy-gold);
  font-family: var(--privacy-font);
  font-weight: 700;
  font-size: 22px;
  line-height: 1.4;
  margin: 40px 0 16px;
  letter-spacing: 0;
}
.c-privacy__main p {
  margin: 0 0 18px;
}
.c-privacy__main ul {
  margin: 0 0 18px;
  padding-left: 24px;
}
.c-privacy__main li {
  margin-bottom: 14px;
}
@media (max-width: 600px) {
  .c-privacy__main {
    padding: 40px 24px 56px;
  }
  .c-privacy__main h2 {
    font-size: 20px;
  }
}
.c-privacy__updated {
  color: var(--privacy-muted);
  font-size: 14px;
  margin: 0 0 32px !important;
}
.c-privacy__footer {
  background: var(--privacy-footer-bg);
  border-top: 1px solid var(--privacy-border);
  padding: 32px 24px;
  text-align: center;
  font-size: 13px;
}
.c-privacy__footer p {
  margin: 0 0 8px;
}
.c-privacy__footer strong {
  color: var(--privacy-white);
}
.c-privacy__footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 24px;
  margin-top: 16px;
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
.main-navigation {
  display: block;
  width: 100%;
}
.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}
.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}
.main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul {
  display: block;
  left: auto;
}
.main-navigation ul ul a {
  width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}
.main-navigation li {
  position: relative;
}
.main-navigation a {
  display: block;
  text-decoration: none;
}
/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }
  .main-navigation ul {
    display: flex;
  }
}
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
}
.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: flex;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  flex: 1 0 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  text-align: end;
  flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}

.post,
.page {
  margin: 0 0 1.5em;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}
.widget select {
  max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

/*# sourceMappingURL=style.css.map */
