@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Inter:wght@400;500;600&display=swap");
@layer theme {
  :root, :host { --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --spacing: .25rem; --default-font-family: var(--font-sans); --default-mono-font-family: var(--font-mono); }
}
@layer base {
  *, ::after, ::before, ::backdrop { box-sizing: border-box; border: 0px solid; margin: 0px; padding: 0px; }
  ::file-selector-button { box-sizing: border-box; border: 0px solid; margin: 0px; padding: 0px; }
  html, :host { text-size-adjust: 100%; tab-size: 4; line-height: 1.5; font-family: var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"); font-feature-settings: var(--default-font-feature-settings,normal); font-variation-settings: var(--default-font-variation-settings,normal); -webkit-tap-highlight-color: transparent; }
  hr { height: 0px; color: inherit; border-top-width: 1px; }
  abbr:where([title]) { text-decoration: underline dotted; }
  h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
  a { color: inherit; text-decoration: inherit; }
  b, strong { font-weight: bolder; }
  code, kbd, samp, pre { font-family: var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace); font-feature-settings: var(--default-mono-font-feature-settings,normal); font-variation-settings: var(--default-mono-font-variation-settings,normal); font-size: 1em; }
  small { font-size: 80%; }
  sub, sup { vertical-align: baseline; font-size: 75%; line-height: 0; position: relative; }
  sub { bottom: -0.25em; }
  sup { top: -0.5em; }
  table { text-indent: 0px; border-color: inherit; border-collapse: collapse; }
  progress { vertical-align: baseline; }
  summary { display: list-item; }
  ol, ul, menu { list-style: none; }
  img, svg, video, canvas, audio, iframe, embed, object { vertical-align: middle; display: block; }
  img, video { max-width: 100%; height: auto; }
  button, input, select, optgroup, textarea { font: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: rgba(0, 0, 0, 0); border-radius: 0px; }
  ::file-selector-button { font: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: rgba(0, 0, 0, 0); border-radius: 0px; }
  :where(select:is([multiple], [size])) optgroup { font-weight: bolder; }
  :where(select:is([multiple], [size])) optgroup option { padding-inline-start: 20px; }
  ::file-selector-button { margin-inline-end: 4px; }
  ::placeholder { opacity: 1; }
  @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {
  ::placeholder { color: currentcolor; }
  @supports (color:color-mix(in lab, red, red)) {
  ::placeholder { color: color-mix(currentcolor, transparent); }
}
}
  textarea { resize: vertical; }
  ::-webkit-search-decoration { appearance: none; }
  ::-webkit-date-and-time-value { min-height: 1lh; text-align: inherit; }
  ::-webkit-datetime-edit { display: inline-flex; }
  ::-webkit-datetime-edit-fields-wrapper { padding: 0px; }
  ::-webkit-datetime-edit { padding-block: 0px; }
  ::-webkit-datetime-edit-year-field { padding-block: 0px; }
  ::-webkit-datetime-edit-month-field { padding-block: 0px; }
  ::-webkit-datetime-edit-day-field { padding-block: 0px; }
  ::-webkit-datetime-edit-hour-field { padding-block: 0px; }
  ::-webkit-datetime-edit-minute-field { padding-block: 0px; }
  ::-webkit-datetime-edit-second-field { padding-block: 0px; }
  ::-webkit-datetime-edit-millisecond-field { padding-block: 0px; }
  ::-webkit-datetime-edit-meridiem-field { padding-block: 0px; }
  ::-webkit-calendar-picker-indicator { line-height: 1; }
  button, input:where([type="button"], [type="reset"], [type="submit"]) { appearance: button; }
  ::file-selector-button { appearance: button; }
  ::-webkit-inner-spin-button { height: auto; }
  ::-webkit-outer-spin-button { height: auto; }
  [hidden]:where(:not([hidden="until-found"])) { display: none !important; }
}
@layer components;
@layer utilities {
  .visible { visibility: visible; }
  .fixed { position: fixed; }
  .relative { position: relative; }
  .start { inset-inline-start: var(--spacing); }
  .end { inset-inline-end: var(--spacing); }
  .table { display: table; }
}
:root { --navy: #0d1630; --navy2: #151f3a; --gold: #d7a34b; --paper: #f8f4eb; --cream: #eee5d6; --ink: #172039; --muted: #676c78; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--paper); color: var(--ink); margin: 0px; font-family: Inter, Arial, sans-serif; font-size: 16px; }
a { color: inherit; text-decoration: none; }
.topline { color: rgb(255, 255, 255); text-align: center; letter-spacing: 0.12em; background: linear-gradient(90deg, rgb(147, 51, 184), rgb(237, 64, 118), rgb(255, 122, 55)); min-height: 29px; padding: 7px; font-size: 13px; }
header { background: rgb(255, 253, 248); border-bottom: 1px solid rgb(231, 223, 211); align-items: center; height: 70px; padding: 0px 7vw; display: flex; position: relative; }
.logo { position: absolute; left: 50%; transform: translate(-50%); }
.logo img { object-fit: contain; width: 58px; height: 45px; }
nav { text-align: center; letter-spacing: 0.015em; grid-template-columns: repeat(4, minmax(0px, 1fr)) 108px repeat(4, minmax(0px, 1fr)); align-items: center; gap: 8px; width: min(1120px, 84vw); font: 600 13px Cinzel; display: grid; position: absolute; left: 50%; transform: translate(-50%); }
nav a { white-space: nowrap; }
nav a:nth-child(5) { grid-column: 6; }
.mobileMenu { display: none; }
.langs { gap: 5px; margin-left: auto; font: 600 13px Cinzel; display: flex; }
.langs a { color: rgb(155, 157, 165); }
.langs a.active { color: var(--gold); }
h1, h2, h3, .eyebrow, .button { font-family: Cinzel, Georgia, serif; }
.eyebrow { letter-spacing: 0.17em; color: var(--gold); font-size: 13px; font-weight: 600; }
.hero { background: var(--navy); color: rgb(215, 220, 229); grid-template-columns: 1fr 1fr; align-items: center; gap: 8vw; min-height: 530px; padding: 75px 12vw; display: grid; position: relative; }
.heroCopy { position: relative; }
.heroPip { z-index: 3; pointer-events: none; filter: drop-shadow(rgba(2, 7, 20, 0.38) 0px 14px 18px); width: clamp(108px, 9vw, 148px); height: auto; animation: 4s ease-in-out 0s infinite normal none running pipFloat; position: absolute; top: 30px; left: clamp(280px, 25vw, 470px); right: auto; }
@keyframes pipFloat { 
  0%, 100% { transform: translateY(0px) rotate(-1deg); }
  50% { transform: translateY(-12px) rotate(1deg); }
}
.hero h1 { letter-spacing: -0.045em; margin: 15px 0px; font-size: 72px; line-height: 0.86; }
.hero h1 span, .hero h1 strong { display: block; }
.hero h1 span { color: rgb(247, 241, 229); }
.hero h1 strong { color: var(--gold); font-weight: 700; }
.hero h3 { letter-spacing: 0.05em; color: rgb(237, 229, 213); font-size: 16px; font-weight: 500; }
.hero > div:first-child > p:not(.eyebrow) { max-width: 510px; font-size: 14px; line-height: 1.7; }
.actions { gap: 12px; margin-top: 26px; display: flex; }
.button { letter-spacing: 0.04em; border-radius: 20px; padding: 11px 18px; font-size: 14px; font-weight: 700; display: inline-flex; }
.gold { background: var(--gold); color: var(--navy); }
.ghost { color: rgb(225, 228, 234); border: 1px solid rgb(57, 67, 92); }
.collage { grid-template-rows: 175px 220px; grid-template-columns: 1fr 1fr; gap: 7px; width: 100%; max-width: 500px; display: grid; }
.collage img { object-fit: cover; border-radius: 6px; width: 100%; height: 100%; }
.collage img:first-child { object-position: center 56%; }
.collage img:nth-child(3) { object-position: center 50%; grid-column: 1 / -1; }
.quests, .markets, .follow, .final { text-align: center; padding: 75px 12vw; }
.quests h2, .markets h2, .follow h2, .final h2 { margin: 9px 0px 35px; font-size: 28px; }
.categoryGrid { grid-template-columns: 1fr 1fr; gap: 10px; max-width: 880px; margin: auto; display: grid; }
.category { text-align: left; border-radius: 6px; height: 185px; position: relative; overflow: hidden; }
.category::after { content: ""; background: linear-gradient(rgba(0, 0, 0, 0) 22%, rgba(7, 16, 36, 0.93)); position: absolute; inset: 0px; }
.category img { object-fit: cover; width: 100%; height: 100%; }
.category:first-child img { object-position: center 54%; }
.category:nth-child(3) img { object-position: center 48%; }
.category div { z-index: 2; color: rgb(255, 255, 255); position: absolute; bottom: 16px; left: 19px; }
.category h3 { margin: 0px 0px 4px; font-size: 17px; }
.category span { color: var(--gold); font: 600 13px Cinzel; }
.feature, .story { grid-template-columns: 1fr 1fr; align-items: center; gap: 8vw; padding: 75px 12vw; display: grid; }
.dark { background: var(--navy); color: rgb(216, 220, 229); }
.light { background: var(--paper); }
.feature h2, .story h2 { margin: 8px 0px 18px; font-size: 36px; }
.feature p, .story p { font-size: 15px; line-height: 1.75; }
.feature > img, .story > img { object-fit: cover; border-radius: 5px; width: 100%; max-height: 440px; }
.feature ul { border-block: 1px solid rgb(51, 62, 88); margin: 25px 0px; padding: 0px; list-style: none; display: flex; }
.feature li { border-right: 1px solid rgb(51, 62, 88); padding: 13px; font-size: 14px; }
.questoriumFeature { grid-template-columns: 1.08fr 0.92fr; gap: 6vw; padding-top: 82px; padding-bottom: 82px; }
.questoriumFeature .questoriumLabel { border: 1px solid rgba(215, 163, 75, 0.55); border-radius: 5px; margin: 0px 0px 30px; padding: 11px 16px; display: inline-block; }
.questoriumFeature h2 { letter-spacing: -0.045em; white-space: nowrap; margin: 0px 0px 30px; font-size: clamp(40px, 4vw, 62px); line-height: 1.04; }
.questoriumFeature h2 span { color: rgb(248, 244, 235); }
.questoriumFeature h2 strong { color: var(--gold); font-weight: 600; }
.questoriumFeature .questoriumIntro { color: rgb(207, 212, 223); max-width: 720px; margin: 0px; font-size: 17px; line-height: 1.8; }
.questoriumBenefits { grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 38px; display: grid; }
.questoriumBenefits article { background: rgba(255, 255, 255, 0.016); border: 1px solid rgb(53, 64, 90); min-height: 196px; padding: 25px 22px; }
.questoriumBenefits i { color: var(--gold); margin-bottom: 20px; font: 25px / 1 Cinzel; display: block; }
.questoriumBenefits h3 { color: var(--gold); margin: 0px 0px 12px; font-size: 14px; line-height: 1.55; }
.questoriumBenefits p { color: rgb(159, 167, 184); margin: 0px; font-size: 15px; line-height: 1.55; }
.questoriumFeature .questoriumButton { border-radius: 28px; margin-top: 42px; padding: 16px 28px; font-size: 14px; }
.questoriumFeature > img { aspect-ratio: 1 / 1; object-fit: cover; border: 1px solid rgba(215, 163, 75, 0.22); max-height: none; }
.captain aside { background: rgb(255, 255, 255); border-width: 1px 1px 1px 3px; border-style: solid; border-color: rgb(231, 223, 209) rgb(231, 223, 209) rgb(231, 223, 209) rgb(120, 165, 92); border-image: none; margin-top: 20px; padding: 15px; font-size: 14px; }
.captain { grid-template-columns: 0.95fr 1.05fr; gap: 5vw; padding-left: 8vw; padding-right: 8vw; }
.captain > img { aspect-ratio: 4 / 5; object-fit: cover; max-height: none; }
.captain .captainLabel { color: rgb(83, 96, 122); border: 1px solid rgba(215, 163, 75, 0.42); border-radius: 5px; margin: 0px 0px 22px; padding: 10px 15px; display: inline-block; }
.captain h2 { color: var(--navy); letter-spacing: -0.035em; margin: 0px 0px 26px; font-size: clamp(42px, 4vw, 58px); }
.captain .captainIntro { color: rgb(92, 100, 117); margin: 0px; font-size: 16px; line-height: 1.9; }
.captain .captainDonation { background: rgb(255, 253, 249); border: 1px solid rgba(215, 163, 75, 0.38); align-items: flex-start; gap: 18px; margin-top: 28px; padding: 22px 24px; font-size: 15px; display: flex; }
.captainDonation > span { font-size: 22px; }
.captainDonation b { color: var(--navy); font-size: 14px; line-height: 1.5; display: block; }
.captainDonation p { color: rgb(133, 139, 152); margin: 7px 0px 0px; line-height: 1.55; }
.captain .captainTracker { color: rgb(248, 242, 232); background: var(--navy); border: 1px solid rgba(215, 163, 75, 0.58); margin-top: 12px; padding: 20px 22px; display: block; box-shadow: rgba(13, 22, 48, 0.12) 0px 14px 30px; }
.captainTrackerHeading { border-bottom: 1px solid rgba(215, 163, 75, 0.25); align-items: center; gap: 10px; padding-bottom: 13px; display: flex; }
.captainTrackerHeading span { font-size: 18px; }
.captainTrackerHeading h3 { color: var(--gold); letter-spacing: 0.04em; margin: 0px; font: 600 14px / 1.35 Cinzel, Georgia, serif; }
.captainTrackerStats { grid-template-columns: 1fr 0.92fr; gap: 22px; padding-top: 16px; display: grid; }
.captainTrackerHomes, .captainTrackerRaised { grid-template-columns: auto 1fr; align-items: center; column-gap: 12px; display: grid; }
.captainTrackerHomes > strong, .captainTrackerRaised > strong { color: var(--gold); grid-row: 1 / 3; font: 600 31px / 1 Cinzel, Georgia, serif; }
.captainTrackerHomes > span, .captainTrackerRaised > span { font-size: 15px; line-height: 1.4; }
.captainTrackerHomes small { color: rgb(173, 181, 196); align-items: center; gap: 7px; margin-top: 5px; font-size: 14px; display: flex; }
.captainTrackerHomes small b { color: rgb(248, 242, 232); }
.captainTrackerHomes small i { color: var(--gold); font-style: normal; }
.captainTrackerRaised { border-left: 1px solid rgba(215, 163, 75, 0.25); padding-left: 22px; }
.captainNote { color: rgb(155, 146, 160); letter-spacing: 0.055em; margin: 24px 0px 0px; font: 500 13px / 1.7 Cinzel, Georgia, serif; }
.captainActions { flex-wrap: wrap; gap: 12px; margin-top: 25px; display: flex; }
.captainActions .button { border-radius: 28px; padding: 15px 25px; font-size: 14px; }
.captainPrimary { background: var(--navy); color: var(--gold); }
.captainSecondary { color: rgb(86, 93, 108); border: 1px solid rgb(215, 210, 201); }
.captainStory { display: contents; }
.captainStory summary { cursor: pointer; user-select: none; align-items: center; list-style: none; display: inline-flex; }
.captainStory summary::-webkit-details-marker { display: none; }
.captainStory[open] summary { border-color: var(--gold); color: var(--navy); }
.captainStoryPanel { border-left: 3px solid var(--gold); background: rgba(215, 163, 75, 0.08); flex-basis: 100%; margin-top: 4px; padding: 18px 20px; }
.captainStoryPanel h3 { color: var(--navy); margin: 0px 0px 12px; font: 600 18px / 1.35 Cinzel, Georgia, serif; }
.captainStoryPanel p { color: rgb(98, 105, 120); margin: 0px; font-size: 14px; line-height: 1.65; }
.captainStoryPanel p + p { margin-top: 10px; }
#kaptajnen-product:target { scroll-margin-top: 120px; box-shadow: rgba(215, 163, 75, 0.55) 0px 0px 0px 2px, rgba(13, 22, 48, 0.13) 0px 16px 35px; }
.markets > p:not(.eyebrow) { color: var(--muted); font-size: 15px; }
.markets article { text-align: left; background: rgb(255, 255, 255); border: 1px solid rgb(225, 215, 199); grid-template-columns: 120px 1fr 35px; align-items: center; max-width: 750px; margin: 30px auto 0px; padding: 25px; display: grid; }
.homeWeekendCards { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 16px; max-width: 1040px; margin: 30px auto 0px; display: grid; }
.homeWeekendCards article { grid-template-columns: 105px 1fr 28px; width: 100%; margin: 0px; }
.date { border-right: 1px solid rgb(226, 215, 196); align-items: center; gap: 9px; display: flex; }
.date b { color: var(--gold); font: 600 46px Cinzel; }
.date span { font: 600 13px / 1.4 Cinzel; }
.markets article > div:nth-child(2) { padding-left: 25px; }
.markets article h3 { margin: 6px 0px; }
.markets article p { margin: 4px 0px; }
.markets article span, .markets article small { color: var(--muted); font-size: 14px; }
.storyGallery { grid-template-rows: 160px auto; grid-template-columns: repeat(4, 1fr); gap: 9px; height: auto; display: grid; }
.storyGallery img { object-fit: cover; border-radius: 5px; width: 100%; min-width: 0px; height: 100%; }
.storyGallery img:first-child { object-position: 50% 35%; grid-area: 1 / 1; }
.storyGallery img:nth-child(2) { object-position: 50% 38%; grid-area: 1 / 2; }
.storyGallery img:nth-child(3) { object-position: center center; grid-area: 1 / 3; }
.storyGallery img:nth-child(4) { aspect-ratio: 16 / 9; object-fit: contain; background: rgb(8, 15, 39); grid-area: 2 / 1 / auto / 5; height: auto; }
.storyGallery img:nth-child(5) { object-position: 50% 58%; grid-area: 1 / 4; }
.follow > .instagramGrid { grid-template-columns: repeat(3, 1fr); gap: 7px; max-width: 850px; margin: 0px auto 25px; display: grid; }
.instagramGrid a { border-radius: 5px; display: block; overflow: hidden; }
.follow img { object-fit: cover; width: 100%; height: 220px; transition: transform 0.42s; display: block; }
.instagramGrid a:hover img, .instagramGrid a:focus-visible img { transform: scale(1.045); }
.contact { background: var(--paper); text-align: center; padding: 72px 8vw; }
.contactLabel { border: 1px solid rgb(223, 203, 167); border-radius: 5px; padding: 10px 18px; display: inline-block; }
.contact h2 { margin: 18px 0px 8px; font-size: 36px; }
.contact h2::after { content: ""; border-bottom: 2px solid var(--gold); width: 48px; margin: 12px auto 0px; display: block; }
.contactIntro { color: var(--muted); margin: 0px auto 34px; }
.contactCards { text-align: left; grid-template-columns: repeat(3, 1fr); gap: 14px; max-width: 920px; margin: 0px auto 28px; display: grid; }
.contactCards > * { background: rgb(255, 255, 255); border: 1px solid rgb(231, 219, 200); border-radius: 9px; grid-template-columns: 40px 1fr; padding: 14px 16px; display: grid; }
.contactCards span { color: var(--gold); grid-row: 1 / 3; font-size: 22px; }
.contactCards small { color: rgb(150, 156, 171); font-size: 14px; }
.contactCards b { font-size: 14px; }
.contactForm { text-align: left; background: rgb(255, 255, 255); border: 1px solid rgb(231, 219, 200); border-radius: 10px; grid-template-columns: 1fr 1fr; gap: 20px; max-width: 920px; margin: auto; padding: 35px; display: grid; }
.contactForm label { color: rgb(125, 132, 148); gap: 8px; font-size: 14px; display: grid; }
.contactForm input, .contactForm textarea { width: 100%; color: var(--ink); font: inherit; background: rgb(250, 247, 241); border: 1px solid rgb(233, 221, 202); border-radius: 7px; padding: 14px; }
.contactMessage { grid-column: 1 / -1; }
.contactForm textarea { resize: vertical; min-height: 100px; }
.contactForm button { cursor: pointer; border: 0px; justify-self: start; }
.final { background: var(--cream); }
footer { color: rgb(146, 153, 168); background: rgb(8, 15, 34); grid-template-columns: 2fr 1fr 1fr; gap: 50px; padding: 55px 12vw; font-size: 14px; display: grid; position: relative; }
footer > div { flex-direction: column; gap: 8px; display: flex; }
footer img { width: 70px; }
footer b { color: var(--gold); font: 600 13px Cinzel; }
footer a { width: fit-content; transition: color 0.18s; }
footer a:hover, footer a:focus-visible { color: var(--gold); }
footer small { position: absolute; bottom: 15px; left: 12vw; }
.shopHero { text-align: center; background-image: radial-gradient(circle at 50% 15%, rgba(215, 163, 75, 0.12), rgba(0, 0, 0, 0) 35%); padding: 82px 8vw 68px; }
.shopHero h1 { color: rgb(255, 250, 240); max-width: 880px; margin: 12px auto 16px; font-size: clamp(40px, 5.3vw, 70px); line-height: 1.08; }
.shopHero > p:not(.eyebrow) { color: rgb(191, 197, 209); max-width: 680px; margin: auto; line-height: 1.7; }
.categoryNav { flex-wrap: wrap; justify-content: center; gap: 9px; max-width: 1000px; margin: 34px auto 0px; display: flex; }
.categoryNav a { color: rgb(233, 225, 211); border: 1px solid rgb(52, 64, 92); border-radius: 99px; padding: 10px 14px; font: 600 13px Cinzel; transition: border-color 0.18s, color 0.18s, background 0.18s; }
.categoryNav a:hover, .categoryNav a:focus-visible { border-color: var(--gold); color: var(--gold); background: rgba(215, 163, 75, 0.08); }
.shopContent { padding: 68px 8vw 90px; }
.productSection { margin-bottom: 76px; scroll-margin-top: 30px; }
.sectionHeading { border-bottom: 1px solid rgb(223, 212, 196); grid-template-columns: 22px 1fr auto; align-items: center; margin-bottom: 24px; padding-bottom: 17px; display: grid; }
.sectionHeading > span { color: var(--gold); }
.sectionHeading h2 { margin: 0px; font-size: 28px; }
.sectionHeading small { color: var(--muted); }
.productGrid { grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 20px; display: grid; }
.productCard { background: rgb(255, 255, 255); border: 1px solid rgb(227, 217, 202); border-radius: 7px; overflow: hidden; box-shadow: rgba(25, 29, 40, 0.05) 0px 10px 30px; }
.productImage { aspect-ratio: 1 / 1; background: rgb(238, 231, 220); display: block; overflow: hidden; }
.productImage img { object-fit: cover; width: 100%; height: 100%; transition: transform 0.45s; display: block; }
.productCard:hover .productImage img { transform: scale(1.045); }
.missingImage { color: rgb(136, 125, 110); letter-spacing: 0.08em; background: radial-gradient(circle, rgb(250, 245, 235), rgb(233, 223, 207)); flex-direction: column; justify-content: center; align-items: center; gap: 12px; height: 100%; font: 600 14px Cinzel; display: flex; }
.missingImage span { color: var(--gold); font-size: 28px; }
.productInfo { padding: 18px; }
.stock { color: rgb(140, 107, 101); letter-spacing: 0.08em; text-transform: uppercase; font-size: 13px; display: inline-block; }
.stock.available { color: rgb(86, 123, 84); }
.stock::before { content: ""; background: currentcolor; border-radius: 50%; width: 6px; height: 6px; margin-right: 6px; display: inline-block; }
.productInfo h3 { min-height: 44px; margin: 9px 0px 5px; font-size: 15px; line-height: 1.45; }
.price { color: var(--gold); margin: 0px 0px 14px; font: 600 14px Cinzel; }
.productLink { border-bottom: 1px solid rgb(215, 184, 126); font: 600 14px Cinzel; }
.shopEmpty { text-align: center; border: 1px solid rgb(226, 215, 198); padding: 60px; }
.shopEmpty > span { color: var(--gold); font-size: 30px; }
.shopClosing { text-align: center; padding: 72px 24px; }
.shopClosing h2 { color: rgb(255, 250, 240); margin: 10px auto 28px; font-size: 36px; }
.shopFooter { align-items: center; }
.shopFooter > a { color: var(--gold); font: 600 14px Cinzel; }
.marketsMore { color: var(--gold); margin-top: 24px; font: 600 14px Cinzel; display: inline-block; }
.noEvents { background: rgb(255, 255, 255); border: 1px solid rgb(226, 215, 196); max-width: 650px; margin: 28px auto 0px; padding: 36px; }
.noEvents > span, .eventsEmpty > span { color: var(--gold); font-size: 28px; }
.marketsHero { grid-template-columns: 1fr 0.85fr; align-items: center; gap: 7vw; padding: 72px 8vw; display: grid; }
.marketsHero h1 { color: rgb(255, 250, 240); margin: 10px 0px 18px; font-size: clamp(42px, 5vw, 68px); line-height: 1.08; }
.marketsHero p:not(.eyebrow) { color: rgb(189, 195, 207); max-width: 630px; line-height: 1.75; }
.marketsHero img { object-fit: cover; border: 1px solid rgb(173, 130, 66); border-radius: 6px; width: 100%; height: 360px; }
.eventsPage { padding: 70px 8vw 95px; }
.eventsPage > .eyebrow { text-align: center; margin-bottom: 30px; }
.eventList { gap: 18px; max-width: 1000px; margin: auto; display: grid; }
.eventCard { background: rgb(255, 255, 255); border: 1px solid rgb(225, 213, 195); border-radius: 7px; grid-template-columns: 140px 1fr 50px; align-items: stretch; min-height: 190px; display: grid; box-shadow: rgba(24, 30, 45, 0.05) 0px 12px 34px; }
.eventDate { background: rgb(251, 247, 239); border-right: 1px solid rgb(227, 215, 197); justify-content: center; align-items: center; gap: 9px; display: flex; }
.eventDate b { color: var(--gold); font: 600 48px Cinzel; }
.eventDate span { font: 600 13px / 1.5 Cinzel; }
.eventBody { padding: 27px 32px; }
.eventType { color: var(--gold); letter-spacing: 0.1em; text-transform: uppercase; font: 600 13px Cinzel; }
.eventBody h2 { margin: 8px 0px 22px; font-size: 25px; }
.eventFacts { grid-template-columns: 0.9fr 1.4fr 0.7fr; gap: 24px; display: grid; }
.eventFacts p { gap: 5px; margin: 0px; display: grid; }
.eventFacts small { color: rgb(138, 144, 158); font-size: 13px; }
.eventFacts b { font-size: 14px; font-weight: 500; }
.eventLink { color: var(--gold); border-left: 1px solid rgb(227, 215, 197); place-items: center; font-size: 22px; display: grid; }
.marketSchedule { gap: 45px; max-width: 1100px; margin: auto; display: grid; }
.weekendGroup { gap: 16px; display: grid; }
.weekendHeading { justify-content: space-between; align-items: center; display: flex; }
.weekendHeading > span { color: var(--gold); letter-spacing: 0.15em; border: 1px solid rgb(219, 196, 158); border-radius: 20px; padding: 9px 16px; font: 600 13px Cinzel; display: inline-flex; }
.weekendHeading > b { color: rgb(139, 142, 152); font-size: 14px; font-weight: 500; }
.weekendCards { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 16px; display: grid; }
.weekendCards .eventCard { grid-template-columns: 115px 1fr 42px; min-height: 210px; }
.weekendCards .eventFacts { grid-template-columns: 1fr; gap: 9px; }
.weekendCards .eventBody { padding: 25px 26px; }
.eventCardAccent { background: var(--navy); border-color: rgba(215, 163, 75, 0.55); overflow: hidden; box-shadow: rgba(13, 22, 48, 0.16) 0px 16px 42px; }
.eventCardAccent::before { content: ""; background: linear-gradient(90deg, rgb(162, 60, 196), rgb(237, 64, 118), rgb(255, 122, 55)); height: 4px; position: absolute; inset: 0px 0px auto; }
.eventCardAccent { position: relative; }
.eventCardAccent .eventDate { background: rgb(17, 28, 57); border-color: rgba(215, 163, 75, 0.24); }
.eventCardAccent .eventDate span, .eventCardAccent .eventBody h2, .eventCardAccent .eventFacts b { color: rgb(255, 250, 240); }
.eventCardAccent .eventFacts small { color: rgb(159, 168, 186); }
.eventCardAccent .eventLink { border-color: rgba(215, 163, 75, 0.24); }
.weekendGroupAccent .weekendHeading > span { color: rgb(255, 255, 255); background: linear-gradient(90deg, rgb(162, 60, 196), rgb(237, 64, 118), rgb(255, 122, 55)); border: 0px; }
.laterEvents { padding-top: 12px; }
.laterHeading { align-items: center; gap: 13px; margin-bottom: 18px; display: flex; }
.laterHeading span { color: var(--gold); }
.laterHeading h2 { letter-spacing: 0.04em; margin: 0px; font-size: 20px; }
.laterEvents > div:last-child { border-top: 1px solid rgb(222, 211, 195); }
.eventRow { border-bottom: 1px solid rgb(222, 211, 195); grid-template-columns: 150px 1fr 120px 25px; align-items: center; gap: 24px; padding: 19px 10px; display: grid; }
.eventRow time { color: var(--gold); text-transform: uppercase; font: 600 14px Cinzel; }
.eventRow h3 { margin: 0px 0px 5px; font-size: 15px; }
.eventRow p { color: rgb(119, 125, 137); margin: 0px; font-size: 14px; }
.eventRow > span { color: rgb(96, 102, 115); font-size: 14px; }
.eventRow > a, .eventRow > i { color: var(--gold); text-align: center; font-style: normal; }
.eventsEmpty { text-align: center; background: rgb(255, 255, 255); border: 1px solid rgb(225, 213, 195); max-width: 700px; margin: auto; padding: 55px; }
.specialHero { grid-template-columns: 0.9fr 1.1fr; align-items: center; gap: 7vw; min-height: 570px; padding: 76px 9vw; display: grid; }
.specialHero h1 { color: rgb(255, 250, 240); margin: 12px 0px 20px; font-size: clamp(44px, 5.4vw, 74px); line-height: 1.02; }
.specialHeroCopy > p:not(.eyebrow) { color: rgb(198, 202, 212); max-width: 610px; font-size: 16px; line-height: 1.8; }
.specialCollage { grid-template-rows: 225px 210px; grid-template-columns: 1fr 1fr; gap: 10px; display: grid; }
.specialCollage img { object-fit: cover; border: 1px solid rgba(215, 163, 75, 0.55); border-radius: 5px; width: 100%; height: 100%; }
.specialCollage img:last-child { grid-column: 1 / -1; }
.specialPossibilities { text-align: center; padding: 85px 8vw 100px; }
.specialPossibilities > h2 { max-width: 760px; margin: 12px auto 44px; font-size: clamp(30px, 3.6vw, 48px); }
.specialCards { text-align: left; grid-template-columns: repeat(4, 1fr); gap: 14px; display: grid; }
.specialCards article { background: rgb(255, 253, 248); border: 1px solid rgb(225, 213, 195); min-height: 265px; padding: 30px 25px; position: relative; }
.specialCards article > span { color: var(--gold); letter-spacing: 0.13em; font: 600 13px Cinzel; }
.specialCards h3 { margin: 46px 0px 14px; font-size: 17px; line-height: 1.35; }
.specialCards p { color: var(--muted); font-size: 15px; line-height: 1.7; }
.specialProcess { grid-template-columns: 0.8fr 1.2fr; gap: 8vw; padding: 90px 9vw; display: grid; }
.specialProcess h2 { color: rgb(255, 250, 240); max-width: 470px; margin-top: 14px; font-size: clamp(34px, 4vw, 54px); }
.specialSteps { gap: 0px; display: grid; }
.specialSteps article { border-bottom: 1px solid rgba(215, 163, 75, 0.25); grid-template-columns: 62px 1fr; gap: 22px; padding: 25px 0px; display: grid; }
.specialSteps article:first-child { padding-top: 0px; }
.specialSteps b { color: var(--gold); font: 600 20px Cinzel; }
.specialSteps h3 { color: rgb(248, 242, 232); margin: 0px 0px 8px; font-size: 17px; }
.specialSteps p { color: rgb(173, 180, 195); margin: 0px; font-size: 15px; line-height: 1.7; }
.specialCommissionSummary { color: rgb(198, 202, 212); border-top: 1px solid rgba(215, 163, 75, 0.25); max-width: 520px; margin: 28px 0px 0px; padding-top: 24px; font-size: 14px; line-height: 1.75; }
.specialDetails { grid-template-columns: 1.2fr 0.8fr; align-items: center; gap: 6vw; padding: 85px 9vw; display: grid; }
.specialDetails > aside { background: rgb(255, 253, 248); border: 1px solid rgb(223, 210, 190); gap: 25px; padding: 36px; display: flex; }
.specialDetails > aside > span { color: var(--gold); font-size: 26px; }
.specialDetails h2 { margin: 0px 0px 13px; font-size: 25px; }
.specialDetails aside p { color: var(--muted); margin: 0px; line-height: 1.75; }
.specialChecklist ul { gap: 13px; margin: 24px 0px 0px; padding: 0px; list-style: none; display: grid; }
.specialChecklist li { border-bottom: 1px solid rgb(223, 213, 198); gap: 12px; padding-bottom: 12px; font-size: 15px; display: flex; }
.specialChecklist li span { color: var(--gold); }
.commissionTerms { background: rgb(247, 242, 233); border-top: 1px solid rgb(223, 210, 190); padding: 85px 9vw 100px; }
.commissionTermsIntro { max-width: 780px; margin-bottom: 42px; }
.commissionTermsIntro h2 { margin: 12px 0px 16px; font-size: clamp(34px, 4vw, 52px); }
.commissionTermsIntro > p:not(.eyebrow) { color: var(--muted); line-height: 1.75; }
.commissionDiceNotice { border-left: 3px solid var(--gold); background: var(--navy); grid-template-columns: 40px 1fr; align-items: start; gap: 16px; margin-top: 28px; padding: 20px 22px; display: grid; }
.commissionDiceNotice > span { color: var(--gold); font-size: 23px; line-height: 1.2; }
.commissionDiceNotice p { color: rgb(215, 219, 228); margin: 0px 0px 7px; font-size: 14px; line-height: 1.65; }
.commissionDiceNotice a { color: var(--gold); letter-spacing: 0.05em; text-underline-offset: 4px; font: 600 14px Cinzel, serif; text-decoration: underline; }
.commissionTypes { grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 30px; display: grid; }
.commissionTypes article { background: rgb(255, 253, 248); border: 1px solid rgb(223, 210, 190); padding: 30px; }
.commissionTypes h3 { margin: 0px 0px 14px; font-size: 19px; line-height: 1.4; }
.commissionTypes p { color: var(--muted); font-size: 14px; line-height: 1.75; }
.commissionTypes ul { color: var(--muted); gap: 9px; margin: 18px 0px 0px; padding-left: 19px; font-size: 14px; line-height: 1.65; display: grid; }
.commissionTermsList { counter-reset: commission-term 0; border-top: 1px solid rgb(213, 196, 170); max-width: 980px; margin: 0px; padding: 0px; list-style: none; }
.commissionTermsList > li { counter-increment: commission-term 1; border-bottom: 1px solid rgb(213, 196, 170); }
.commissionTermsList details { display: block; }
.commissionTermsList summary { color: var(--navy); cursor: pointer; padding: 24px 54px 24px 64px; font: 600 17px / 1.45 Cinzel, serif; list-style: none; display: block; position: relative; }
.commissionTermsList summary::-webkit-details-marker { display: none; }
.commissionTermsList summary::before { content: counter(commission-term, decimal-leading-zero); color: var(--gold-dark); font: 600 17px / 1.45 Cinzel, serif; position: absolute; top: 25px; left: 0px; }
.commissionTermsList summary::after { content: "+"; color: var(--gold-dark); font: 400 28px / 1 Inter, sans-serif; position: absolute; top: 50%; right: 4px; transform: translateY(-50%); }
.commissionTermsList details[open] summary::after { content: "−"; }
.commissionTermsList summary:focus-visible { outline: 2px solid var(--gold); outline-offset: 5px; }
.commissionTermsList details > div { margin-left: 64px; padding: 0px 54px 26px 0px; }
.commissionTermsList p { color: var(--muted); margin: 0px; font-size: 14px; line-height: 1.75; }
.commissionTermsList ul { color: var(--muted); gap: 9px; margin: 0px; padding-left: 19px; font-size: 14px; line-height: 1.65; display: grid; }
.specialCta { text-align: center; background: rgb(240, 232, 218); padding: 85px 24px 95px; }
.specialCta h2 { max-width: 720px; margin: 12px auto 16px; font-size: clamp(34px, 4vw, 52px); }
.specialCta > p:not(.eyebrow) { max-width: 690px; color: var(--muted); margin: auto; line-height: 1.75; }
.specialCta .actions { justify-content: center; }
.specialInstagram { color: var(--navy); border: 1px solid rgb(203, 189, 167); }
.aboutHero { grid-template-columns: 1fr 1fr; align-items: center; gap: 7vw; min-height: 570px; padding: 76px 9vw; display: grid; }
.aboutHero h1 { color: rgb(255, 250, 240); max-width: 700px; margin: 13px 0px 20px; font-size: clamp(42px, 5vw, 70px); line-height: 1.08; }
.aboutHero > div:first-child > p:not(.eyebrow) { color: rgb(193, 199, 211); max-width: 650px; font-size: 16px; line-height: 1.8; }
.aboutHeroGallery { min-height: 470px; position: relative; }
.aboutHeroGallery::before { content: ""; border: 1px solid rgba(215, 163, 75, 0.42); position: absolute; inset: 28px 8% 24px 14%; }
.aboutHeroGallery img { object-fit: cover; border: 1px solid rgba(215, 163, 75, 0.72); border-radius: 5px; display: block; position: absolute; box-shadow: rgba(2, 7, 20, 0.34) 0px 24px 50px; }
.aboutHeroGallery img:first-child { z-index: 2; object-position: center 28%; width: 43%; height: 88%; top: 0px; left: 0px; }
.aboutHeroGallery img:last-child { z-index: 1; object-position: center center; width: 68%; height: 70%; bottom: 0px; right: 0px; }
.aboutOrigin { grid-template-columns: 1fr 1fr; align-items: center; gap: 7vw; padding: 95px 9vw; display: grid; }
.aboutOriginGallery { grid-template-rows: 210px 250px; grid-template-columns: 1fr 0.72fr; gap: 10px; display: grid; }
.aboutOriginGallery img { object-fit: cover; border: 1px solid rgb(217, 201, 175); width: 100%; height: 100%; }
.aboutOriginGallery img:first-child { grid-row: 1 / 3; }
.aboutOriginGallery img:nth-child(2) { object-position: center center; }
.aboutOriginGallery img:nth-child(3) { object-position: center 20%; }
.aboutOrigin h2 { margin: 13px 0px 24px; font-size: clamp(34px, 4vw, 52px); }
.aboutOrigin > div:last-child > p:not(.eyebrow) { color: var(--muted); font-size: 14px; line-height: 1.82; }
.aboutTeam { text-align: center; background: rgb(239, 231, 218); padding: 85px 8vw 100px; }
.aboutTeam > h2 { margin: 12px auto 42px; font-size: clamp(32px, 3.7vw, 48px); }
.aboutTeamGallery { grid-template-rows: 190px auto; grid-template-columns: repeat(4, 1fr); gap: 12px; max-width: 950px; height: auto; margin: 0px auto 18px; display: grid; }
.aboutTeamGallery img { object-fit: cover; border: 1px solid rgb(221, 207, 186); width: 100%; height: 100%; }
.aboutTeamGallery img:first-child { object-position: center 30%; grid-area: 1 / 1; }
.aboutTeamGallery img:nth-child(2) { grid-area: 1 / 2; }
.aboutTeamGallery img:nth-child(3) { grid-area: 1 / 3; }
.aboutTeamGallery img:nth-child(4) { aspect-ratio: 16 / 9; object-fit: contain; background: rgb(8, 15, 39); grid-area: 2 / 1 / auto / 5; height: auto; }
.aboutTeamGallery img:nth-child(5) { object-position: center 38%; grid-area: 1 / 4; }
.aboutTeamCards { text-align: left; grid-template-columns: repeat(3, 1fr); gap: 16px; display: grid; }
.aboutTeam article { background: rgb(255, 253, 248); border: 1px solid rgb(221, 207, 186); padding: 34px 30px; }
.aboutTeam article > span { color: var(--gold); font-size: 22px; }
.aboutTeam h3 { margin: 30px 0px 14px; font-size: 17px; }
.aboutTeam article p { color: var(--muted); margin: 0px; font-size: 15px; line-height: 1.75; }
.aboutMaking { grid-template-columns: 0.85fr 1.15fr; gap: 8vw; padding: 95px 9vw; display: grid; }
.aboutMakingIntro h2 { color: rgb(255, 250, 240); margin: 13px 0px 20px; font-size: clamp(35px, 4vw, 52px); }
.aboutMakingIntro > p:not(.eyebrow) { color: rgb(173, 181, 196); font-size: 14px; line-height: 1.8; }
.aboutMakingSteps article { border-bottom: 1px solid rgba(215, 163, 75, 0.25); grid-template-columns: 52px 1fr; gap: 20px; padding: 19px 0px; display: grid; }
.aboutMakingSteps article:first-child { padding-top: 0px; }
.aboutMakingSteps b { color: var(--gold); font: 600 17px Cinzel; }
.aboutMakingSteps h3 { color: rgb(247, 241, 229); margin: 0px 0px 7px; font-size: 15px; }
.aboutMakingSteps p { color: rgb(174, 181, 195); margin: 0px; font-size: 15px; line-height: 1.7; }
.aboutCommitment { text-align: center; background: rgb(239, 231, 218); padding: 92px 8vw 82px; }
.aboutCommitmentIntro { max-width: 790px; margin: 0px auto 42px; }
.aboutCommitmentIntro h2 { margin: 12px 0px 18px; font-size: clamp(34px, 4vw, 52px); }
.aboutCommitmentIntro > p:not(.eyebrow) { color: var(--muted); line-height: 1.75; }
.aboutCommitmentCards { text-align: left; grid-template-columns: repeat(3, 1fr); gap: 16px; max-width: 1180px; margin: auto; display: grid; }
.aboutCommitmentCards article { background: var(--navy); border: 1px solid rgba(215, 163, 75, 0.42); min-height: 245px; padding: 34px 30px; }
.aboutCommitmentCards span { width: 42px; height: 42px; color: var(--gold); border: 1px solid rgba(215, 163, 75, 0.45); place-items: center; display: grid; }
.aboutCommitmentCards h3 { color: rgb(255, 250, 240); margin: 30px 0px 14px; font-size: 17px; }
.aboutCommitmentCards p { color: rgb(181, 189, 203); margin: 0px; font-size: 15px; line-height: 1.75; }
.aboutCommitmentNote { color: rgb(138, 106, 53); letter-spacing: 0.11em; margin: 34px 0px 0px; font: 600 13px Cinzel; }
.aboutValues { text-align: center; padding: 90px 8vw 105px; }
.aboutValues > h2 { margin: 12px 0px 42px; font-size: clamp(34px, 4vw, 50px); }
.aboutValues > div { text-align: left; grid-template-columns: repeat(5, 1fr); gap: 12px; display: grid; }
.aboutValues article { background: rgb(255, 253, 248); border: 1px solid rgb(224, 211, 192); min-height: 280px; padding: 28px 23px; }
.aboutValues article > span { color: var(--gold); font: 600 13px Cinzel; }
.aboutValues h3 { margin: 45px 0px 13px; font-size: 15px; line-height: 1.4; }
.aboutValues p { color: var(--muted); font-size: 15px; line-height: 1.72; }
.aboutDragons { padding: 90px 9vw 100px; }
.aboutDragonsIntro { text-align: center; max-width: 820px; margin: 0px auto 48px; }
.aboutDragonsIntro h2 { color: rgb(255, 250, 240); margin: 13px 0px 18px; font-size: clamp(35px, 4vw, 54px); }
.aboutDragonsIntro > p:not(.eyebrow) { color: rgb(173, 181, 196); line-height: 1.8; }
.dragonFeature { border: 1px solid rgba(215, 163, 75, 0.48); max-width: 1180px; margin: 0px auto 18px; overflow: hidden; box-shadow: rgba(1, 5, 16, 0.3) 0px 24px 55px; }
.dragonFeature img { aspect-ratio: 2 / 1; object-fit: cover; width: 100%; display: block; }
.dragonVoices { grid-template-columns: 1fr 1fr; gap: 18px; max-width: 1050px; margin: auto; display: grid; }
.dragonVoices article { background: rgb(17, 28, 57); border: 1px solid rgba(215, 163, 75, 0.4); grid-template-columns: 170px 1fr; align-items: center; gap: 25px; min-height: 240px; padding: 28px; display: grid; }
.dragonVoices img { filter: drop-shadow(rgba(0, 0, 0, 0.28) 0px 15px 18px); width: 100%; }
.dragonVoices h3 { color: rgb(255, 250, 240); font-size: 18px; }
.dragonVoices p { color: rgb(173, 181, 196); font-size: 15px; line-height: 1.75; }
.lootVoice { border-color: rgba(97, 145, 91, 0.6) !important; }
.lootArtSpace { aspect-ratio: 1 / 1; color: rgb(146, 181, 138); background: radial-gradient(circle, rgba(91, 139, 84, 0.17), rgba(0, 0, 0, 0) 68%); border: 1px solid rgba(112, 164, 103, 0.55); border-radius: 50%; align-content: center; place-items: center; gap: 8px; display: grid; }
.lootArtSpace span { letter-spacing: 0.14em; font: 600 18px Cinzel; }
.lootArtSpace i { color: var(--gold); font-style: normal; }
.dragonVoiceText { max-width: 1180px; }
.dragonVoiceText article { min-height: 0px; padding: 28px 32px; display: block; }
.dragonVoiceText h3 { margin-top: 0px; }
.aboutClosing { text-align: center; background: rgb(239, 231, 218); padding: 90px 24px 100px; }
.aboutClosing h2 { max-width: 810px; margin: 13px auto 25px; font-size: clamp(34px, 4vw, 52px); }
.aboutClosing .actions { justify-content: center; }
.contactHero { grid-template-columns: 0.8fr 1.2fr; align-items: center; gap: 6vw; padding: 75px 8vw; display: grid; }
.contactHero h1 { color: rgb(255, 250, 240); margin: 13px 0px 18px; font-size: clamp(48px, 6vw, 78px); }
.contactHero > div > p:not(.eyebrow) { color: rgb(182, 190, 204); max-width: 580px; font-size: 16px; line-height: 1.8; }
.contactHero img { object-fit: contain; width: 100%; display: block; }
.contactPageBody { grid-template-columns: 1.15fr 0.85fr; align-items: start; gap: 7vw; padding: 90px 9vw; display: grid; }
.contactPageMain > h2, .contactPageBody > aside > h2 { margin: 12px 0px 28px; font-size: clamp(30px, 3.5vw, 46px); }
.contactPageForm { background: rgb(255, 253, 248); border: 1px solid rgb(225, 213, 194); grid-template-columns: 1fr 1fr; gap: 18px; padding: 34px; display: grid; }
.contactPageForm label { color: rgb(118, 126, 142); gap: 8px; font-size: 14px; display: grid; }
.contactPageForm input, .contactPageForm select, .contactPageForm textarea { width: 100%; color: var(--ink); font: inherit; background: rgb(250, 247, 241); border: 1px solid rgb(230, 218, 199); border-radius: 5px; padding: 14px; }
.contactPageForm .contactReason, .contactPageForm .contactMessage, .contactPageForm > p { grid-column: 1 / -1; }
.contactPageForm textarea { resize: vertical; min-height: 145px; }
.contactPageForm > p { color: rgb(140, 147, 161); margin: 0px; font-size: 14px; line-height: 1.6; }
.contactPageForm button { cursor: pointer; border: 0px; justify-self: start; }
.contactPageForm button:disabled { cursor: wait; opacity: 0.72; }
.formHoneypot { clip: rect(0px, 0px, 0px, 0px) !important; white-space: nowrap !important; width: 1px !important; height: 1px !important; position: absolute !important; overflow: hidden !important; }
.formStatus { grid-column: 1 / -1; min-height: 0px; font-size: 14px; line-height: 1.6; }
.formStatus.success { color: rgb(49, 93, 55); background: rgb(237, 246, 235); border: 1px solid rgb(170, 197, 169); padding: 13px 15px; }
.formStatus.error { color: rgb(139, 52, 52); background: rgb(255, 240, 237); border: 1px solid rgb(218, 176, 170); padding: 13px 15px; }
.contactPageBody aside article { border-bottom: 1px solid rgb(222, 211, 194); grid-template-columns: 38px 1fr; gap: 18px; padding: 24px 0px; display: grid; }
.contactPageBody aside article > span { color: var(--gold); font-size: 23px; }
.contactPageBody aside h3 { margin: 0px 0px 9px; font-size: 16px; }
.contactPageBody aside article p, .contactDirect { color: var(--muted); font-size: 15px; line-height: 1.75; }
.contactPageBody aside a { color: rgb(154, 107, 33); font: 600 14px Cinzel; }
.contactDirect { margin-top: 28px; }
.contactWays { grid-template-columns: repeat(3, 1fr); gap: 14px; padding: 0px 9vw 90px; display: grid; }
.contactWays > * { background: rgb(239, 231, 218); border: 1px solid rgb(223, 208, 185); grid-template-columns: 44px 1fr; padding: 22px; display: grid; }
.contactWays span { color: var(--gold); grid-row: 1 / 3; font-size: 25px; }
.contactWays small { color: rgb(133, 140, 154); font-size: 14px; }
.contactWays b { overflow-wrap: anywhere; font-size: 14px; }
.diceHero { grid-template-columns: 0.9fr 1.1fr; align-items: center; gap: 7vw; min-height: 650px; padding: 84px 8vw 90px; display: grid; overflow: hidden; }
.diceHeroCopy h1 { color: rgb(255, 250, 240); letter-spacing: -0.035em; max-width: 680px; margin: 14px 0px 22px; font-size: clamp(48px, 5.5vw, 78px); line-height: 1.02; }
.diceHeroCopy > p:not(.eyebrow) { color: rgb(188, 195, 208); max-width: 620px; font-size: 16px; line-height: 1.82; }
.diceHeroGallery { min-height: 500px; position: relative; }
.diceHeroGallery::before { content: "✦"; z-index: 3; width: 68px; height: 68px; color: var(--gold); background: var(--navy); border: 1px solid rgba(215, 163, 75, 0.7); border-radius: 50%; place-items: center; font-size: 22px; display: grid; position: absolute; top: 43%; left: 44%; }
.diceHeroGallery img { object-fit: cover; border: 1px solid rgba(215, 163, 75, 0.62); border-radius: 4px; width: 74%; height: 62%; display: block; position: absolute; box-shadow: rgba(0, 0, 0, 0.3) 0px 24px 55px; }
.diceHeroGallery img:first-child { top: 0px; right: 0px; }
.diceHeroGallery img:last-child { bottom: 0px; left: 0px; }
.diceCollection { padding: 95px 8vw 110px; }
.diceSectionIntro { text-align: center; max-width: 760px; margin: 0px auto 45px; }
.diceSectionIntro h2 { margin: 12px 0px 0px; font-size: clamp(34px, 4vw, 52px); }
.diceCollectionGrid { grid-template-columns: repeat(3, 1fr); gap: 18px; max-width: 1280px; margin: auto; display: grid; }
.diceOffer { background: rgb(255, 253, 248); border: 1px solid rgb(223, 209, 188); overflow: hidden; box-shadow: rgba(25, 29, 40, 0.06) 0px 18px 45px; }
.diceOfferImage { height: 285px; overflow: hidden; }
.diceOfferImage img { object-fit: cover; width: 100%; height: 100%; transition: transform 0.6s; display: block; }
.diceOffer:hover .diceOfferImage img { transform: scale(1.035); }
.diceOfferCopy { padding: 32px 34px 36px; }
.diceOfferCopy > span { color: var(--gold); letter-spacing: 0.14em; font: 600 13px Cinzel; }
.diceOfferCopy h3 { margin: 13px 0px 14px; font-size: 26px; }
.diceOfferCopy > p { min-height: 92px; color: var(--muted); margin: 0px; font-size: 14px; line-height: 1.75; }
.diceOfferCopy > div { border-top: 1px solid rgb(226, 214, 197); justify-content: space-between; align-items: flex-end; gap: 20px; margin-top: 26px; padding-top: 21px; display: flex; }
.diceOfferCopy b { color: rgb(155, 107, 33); font: 600 14px Cinzel; }
.diceOfferCopy small { color: rgb(133, 137, 149); text-align: right; }
.diceOfferMiscast { background: rgb(242, 234, 223); }
.diceOfferAdvanced { background: var(--navy); border-color: rgba(215, 163, 75, 0.55); }
.diceOfferAdvanced .diceOfferCopy h3 { color: rgb(255, 250, 240); }
.diceOfferAdvanced .diceOfferCopy > p, .diceOfferAdvanced .diceOfferCopy small { color: rgb(182, 190, 203); }
.diceOfferAdvanced .diceOfferCopy > div { border-top-color: rgba(215, 163, 75, 0.28); }
.diceGallerySection { background: rgb(239, 231, 218); padding: 88px 8vw 105px; }
.diceGallery { grid-template-rows: 245px 245px; grid-template-columns: repeat(5, 1fr); gap: 12px; max-width: 1280px; margin: auto; display: grid; }
.diceGallery img { object-fit: contain; background: var(--navy); border: 1px solid rgba(215, 163, 75, 0.42); width: 100%; height: 100%; transition: transform 0.5s; display: block; }
.diceGallery img:hover { transform: scale(1.018); }
.diceGallery img:first-child { grid-area: 1 / 1 / 3 / 3; }
.diceGallery img:nth-child(2) { grid-area: 1 / 3; }
.diceGallery img:nth-child(3) { grid-area: 1 / 4; }
.diceGallery img:nth-child(4) { grid-area: 1 / 5; }
.diceGallery img:nth-child(5) { grid-area: 2 / 3; }
.diceGallery img:nth-child(6) { grid-area: 2 / 4; }
.diceGallery img:nth-child(7) { grid-area: 2 / 5; }
.diceCraft { grid-template-columns: 0.8fr 1.2fr; gap: 7vw; padding: 100px 9vw; display: grid; }
.diceCraftIntro h2 { color: rgb(255, 250, 240); margin: 13px 0px 20px; font-size: clamp(34px, 4vw, 54px); }
.diceCraftIntro > p:not(.eyebrow) { color: rgb(173, 181, 196); font-size: 14px; line-height: 1.82; }
.diceCraftSteps { align-self: center; }
.diceCraftSteps article { border-bottom: 1px solid rgba(215, 163, 75, 0.25); grid-template-columns: 55px 1fr; align-items: center; gap: 18px; padding: 22px 0px; display: grid; }
.diceCraftSteps b { color: var(--gold); font: 600 17px Cinzel; }
.diceCraftSteps span { color: rgb(246, 240, 229); font: 600 15px Cinzel; }
.diceCraft aside { background: rgb(17, 28, 57); border: 1px solid rgba(215, 163, 75, 0.42); grid-column: 1 / -1; grid-template-columns: 48px 1fr; gap: 22px; max-width: 880px; margin: 18px auto 0px; padding: 28px 32px; display: grid; }
.diceCraft aside > span { color: var(--gold); font-size: 24px; }
.diceCraft aside h3 { color: rgb(255, 250, 240); margin: 0px 0px 8px; font-size: 17px; }
.diceCraft aside p { color: rgb(173, 181, 196); margin: 0px; font-size: 15px; line-height: 1.75; }
.diceCommission { background: rgb(239, 231, 218); grid-template-columns: 0.95fr 1.05fr; align-items: center; gap: 7vw; padding: 105px 9vw; display: grid; }
.diceCommissionArt { padding: 28px 0px 0px 28px; position: relative; }
.diceCommissionArt::before { content: ""; border: 1px solid var(--gold); position: absolute; inset: 0px 28px 28px 0px; }
.diceCommissionArt img { object-fit: cover; width: 100%; min-height: 510px; display: block; position: relative; }
.diceCommissionCopy h2 { margin: 13px 0px 19px; font-size: clamp(34px, 4.2vw, 56px); line-height: 1.08; }
.diceCommissionCopy > p:not(.eyebrow) { color: var(--muted); font-size: 14px; line-height: 1.82; }
.diceCommissionCopy ul { gap: 0px; margin: 28px 0px 32px; padding: 0px; list-style: none; display: grid; }
.diceCommissionCopy li { border-bottom: 1px solid rgb(217, 203, 181); grid-template-columns: 26px 1fr; gap: 10px; padding: 13px 0px; font-size: 15px; display: grid; }
.diceCommissionCopy li span { color: var(--gold); }
.diceCommissionActions { flex-wrap: wrap; align-items: center; gap: 18px 24px; display: flex; }
.diceTermsLink { color: var(--navy); letter-spacing: 0.06em; text-underline-offset: 5px; font: 600 14px Cinzel, serif; text-decoration: underline rgba(215, 163, 75, 0.8); }
.diceCommissionRules { padding: 100px 9vw 105px; }
.diceRulesIntro { max-width: 780px; margin-bottom: 40px; }
.diceRulesIntro h2 { color: rgb(255, 250, 240); margin: 13px 0px 18px; font-size: clamp(36px, 4.4vw, 58px); }
.diceRulesIntro > p:last-child { color: rgb(182, 190, 203); font-size: 16px; line-height: 1.8; }
.diceRulesList { counter-reset: dice-rule 0; max-width: 980px; margin: 0px; padding: 0px; list-style: none; }
.diceRulesList > li { counter-increment: dice-rule 1; border-bottom: 1px solid rgba(215, 163, 75, 0.32); grid-template-columns: 76px 1fr; gap: 24px; padding: 30px 0px; display: grid; }
.diceRulesList > li:first-child { border-top: 1px solid rgba(215, 163, 75, 0.32); }
.diceRulesList > li::before { content: counter(dice-rule, decimal-leading-zero); color: var(--gold); font: 600 19px / 1.45 Cinzel, serif; }
.diceRulesList h3 { color: rgb(255, 250, 240); margin: 0px 0px 12px; font-size: 19px; line-height: 1.45; }
.diceRulesList p { color: rgb(182, 190, 203); margin: 0px; font-size: 15px; line-height: 1.78; }
.diceRulesList p.diceRuleFollowup { margin-top: 16px; }
.diceRulesList ul { color: rgb(217, 221, 229); gap: 9px; margin: 18px 0px 0px; padding-left: 19px; font-size: 14px; line-height: 1.65; display: grid; }
.diceRulesList ul li::marker { color: var(--gold); }
.diceFullTerms { color: var(--gold); letter-spacing: 0.06em; text-underline-offset: 5px; margin-top: 30px; font: 600 14px Cinzel, serif; text-decoration: underline; display: inline-block; }
.diceClosing { text-align: center; padding: 92px 24px 100px; }
.diceClosing h2 { color: rgb(255, 250, 240); max-width: 780px; margin: 13px auto 28px; font-size: clamp(35px, 4.5vw, 58px); }
.diceClosing .actions { justify-content: center; }
.kaptajnenHero { background: rgb(247, 243, 236); grid-template-columns: 1.05fr 0.95fr; min-height: 720px; display: grid; }
.kaptajnenHeroImage { min-height: 720px; overflow: hidden; }
.kaptajnenHeroImage img { object-fit: cover; width: 100%; height: 100%; display: block; }
.kaptajnenHeroCopy { align-self: center; padding: 78px 8vw 78px 7vw; }
.kaptajnenHeroCopy h1 { letter-spacing: -0.04em; margin: 14px 0px 22px; font-size: clamp(52px, 6vw, 86px); }
.kaptajnenHeroCopy > p:not(.eyebrow) { color: var(--muted); font-size: 16px; line-height: 1.85; }
.kaptajnenHeroCopy aside { background: rgb(255, 253, 248); border: 1px solid rgba(215, 163, 75, 0.45); grid-template-columns: 34px 1fr; align-items: center; gap: 14px; margin: 30px 0px; padding: 22px 24px; display: grid; }
.kaptajnenHeroCopy aside b { font-size: 14px; line-height: 1.55; }
.kaptajnenStorySection { grid-template-columns: 0.72fr 1.28fr; gap: 8vw; padding: 105px 9vw; display: grid; }
.kaptajnenStoryHeading { align-self: start; position: sticky; top: 110px; }
.kaptajnenStoryHeading h2 { margin: 14px 0px 0px; font-size: clamp(38px, 4.5vw, 60px); line-height: 1.08; }
.kaptajnenStoryText { display: grid; }
.kaptajnenStoryText > div { border-bottom: 1px solid rgb(222, 210, 191); grid-template-columns: 54px 1fr; gap: 22px; padding: 28px 0px; display: grid; }
.kaptajnenStoryText span { color: var(--gold); font: 600 14px Cinzel; }
.kaptajnenStoryText p { color: var(--muted); margin: 0px; font-size: 16px; line-height: 1.9; }
.kaptajnenMaking { grid-template-columns: 0.9fr 1.1fr; gap: 8vw; padding: 100px 9vw; display: grid; }
.kaptajnenMaking h2 { color: rgb(255, 250, 240); margin: 14px 0px 20px; font-size: clamp(38px, 4.5vw, 58px); }
.kaptajnenMaking > div > p:not(.eyebrow) { color: rgb(182, 190, 203); font-size: 16px; line-height: 1.85; }
.kaptajnenMaking ol { margin: 0px; padding: 0px; list-style: none; }
.kaptajnenMaking li { border-bottom: 1px solid rgba(215, 163, 75, 0.28); grid-template-columns: 52px 1fr; gap: 18px; padding: 24px 0px; display: grid; }
.kaptajnenMaking li b { color: var(--gold); font: 600 15px Cinzel; }
.kaptajnenMaking li span { color: rgb(247, 241, 231); font: 600 14px Cinzel; }
.kaptajnenMission { background: rgb(239, 231, 218); grid-template-columns: 0.85fr 1.15fr; align-items: center; gap: 7vw; padding: 100px 9vw; display: grid; }
.kaptajnenMission h2 { margin: 14px 0px 18px; font-size: clamp(38px, 4.5vw, 58px); }
.kaptajnenMission > div > p:not(.eyebrow) { color: var(--muted); font-size: 16px; line-height: 1.85; }
.kaptajnenMission .captainTracker { background: var(--navy); border: 1px solid rgba(215, 163, 75, 0.45); padding: 30px; }
.kaptajnenClosing { text-align: center; padding: 95px 24px 105px; }
.kaptajnenClosing h2 { color: rgb(255, 250, 240); max-width: 820px; margin: 15px auto 30px; font-size: clamp(36px, 4.5vw, 58px); }
@media (width <= 1050px) {
  header { padding: 0px 16px; }
  nav { display: none; }
  .logo { left: 20px; transform: none; }
  .langs { margin-left: auto; margin-right: 8px; gap: 0; font-size: 16px; align-items: center; }
  .langs a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
  .langs span { display: none; }
  .mobileMenu { z-index: 20; margin-left: 0px; margin-right: 0px; display: block; position: relative; }
  .mobileMenu summary { cursor: pointer; border: 1px solid rgb(223, 210, 190); border-radius: 5px; gap: 4px; width: 48px; height: 48px; padding: 16px 14px; list-style: none; display: grid; }
  .mobileMenu summary::-webkit-details-marker { display: none; }
  .mobileMenu summary span { background: var(--ink); width: 18px; height: 1px; transition: transform 0.18s, opacity 0.18s; display: block; }
  .mobileMenu[open] summary span:first-child { transform: translateY(5px) rotate(45deg); }
  .mobileMenu[open] summary span:nth-child(2) { opacity: 0; }
  .mobileMenu[open] summary span:last-child { transform: translateY(-5px) rotate(-45deg); }
  .mobileNavPanel { z-index: 30; border-top: 1px solid rgb(231, 223, 211); border-bottom: 2px solid var(--gold); background: rgb(255, 253, 248); padding: 12px 24px 20px; max-height: calc(100dvh - 95px); overflow-y: auto; overscroll-behavior: contain; display: grid; position: fixed; top: 95px; left: 0px; right: 0px; box-shadow: rgba(13, 22, 48, 0.14) 0px 18px 32px; }
  .mobileNavPanel a { border-bottom: 1px solid rgb(236, 228, 215); min-height: 52px; padding: 14px 4px; font: 600 18px / 1.4 Cinzel, Georgia, serif; overflow-wrap: anywhere; }
  .mobileNavPanel a:last-child { border-bottom: 0px; }
  .diceHero, .diceCraft, .diceCommission { grid-template-columns: 1fr; padding: 64px 24px 72px; }
  .diceHeroGallery { min-height: 420px; margin-top: 10px; }
  .diceCollection { padding: 70px 24px 80px; }
  .diceCollectionGrid { grid-template-columns: 1fr; }
  .diceGallerySection { padding: 65px 24px 75px; }
  .diceGallery { grid-template-rows: 320px repeat(3, 210px); grid-template-columns: repeat(2, 1fr); }
  .diceGallery img:first-child { grid-area: 1 / 1 / auto / 3; }
  .diceGallery img:nth-child(2) { grid-area: 2 / 1; }
  .diceGallery img:nth-child(3) { grid-area: 2 / 2; }
  .diceGallery img:nth-child(4) { grid-area: 3 / 1; }
  .diceGallery img:nth-child(5) { grid-area: 3 / 2; }
  .diceGallery img:nth-child(6) { grid-area: 4 / 1; }
  .diceGallery img:nth-child(7) { grid-area: 4 / 2; }
  .diceOfferCopy > p { min-height: 0px; }
  .diceCraft aside { grid-column: auto; }
  .diceCommissionArt { max-width: 620px; }
  .kaptajnenHero, .kaptajnenStorySection, .kaptajnenMaking, .kaptajnenMission { grid-template-columns: 1fr; }
  .kaptajnenHeroImage { min-height: 620px; }
  .kaptajnenHeroCopy { padding: 64px 24px 72px; }
  .kaptajnenStorySection, .kaptajnenMaking, .kaptajnenMission { padding: 72px 24px; }
  .kaptajnenStoryHeading { position: static; }
  .hero, .feature, .story { grid-template-columns: 1fr; padding: 60px 24px; }
  .hero h1 { font-size: 55px; }
  .heroPip { width: 112px; margin: 20px auto -28px; display: block; position: relative; top: auto; left: auto; right: auto; }
  .collage { grid-template-rows: 150px 190px; max-width: none; }
  .categoryGrid { grid-template-columns: 1fr; }
  .quests, .markets, .follow, .final { padding: 60px 24px; }
  .captain img { order: 2; }
  .captain { padding-left: 24px; padding-right: 24px; }
  .captain > img { aspect-ratio: 1 / 1.12; }
  .captainTrackerStats { grid-template-columns: 1fr; gap: 16px; }
  .captainTrackerRaised { border-top: 1px solid rgba(215, 163, 75, 0.25); border-left: 0px; padding: 16px 0px 0px; }
  .questoriumFeature h2 { white-space: normal; font-size: clamp(34px, 10vw, 46px); }
  .questoriumFeature .questoriumIntro { font-size: 15px; }
  .questoriumBenefits { grid-template-columns: 1fr; }
  .questoriumBenefits article { min-height: 0px; }
  .storyGallery { grid-template-rows: 110px auto; height: auto; }
  .follow > .instagramGrid { grid-template-columns: 1fr 1fr; }
  .instagramGrid a:first-child { grid-column: 1 / -1; }
  .contact { padding: 60px 24px; }
  .contactCards, .contactForm { grid-template-columns: 1fr; }
  .contactMessage { grid-column: auto; }
  .contactForm { padding: 24px; }
  .markets article { grid-template-columns: 90px 1fr; }
  .homeWeekendCards { grid-template-columns: 1fr; }
  .homeWeekendCards article { grid-template-columns: 90px 1fr; }
  .markets article > a { display: none; }
  footer { grid-template-columns: 1fr; padding: 50px 24px 70px; }
  footer small { left: 24px; }
  .shopHero { padding: 70px 24px 55px; }
  .categoryNav { flex-wrap: nowrap; justify-content: flex-start; padding-bottom: 8px; overflow-x: auto; }
  .categoryNav a { flex: 0 0 auto; }
  .shopContent { padding: 52px 24px 70px; }
  .productGrid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .productInfo { padding: 14px; }
  .productInfo h3 { min-height: 40px; font-size: 15px; }
  .sectionHeading { grid-template-columns: 18px 1fr; }
  .sectionHeading small { grid-column: 2; margin-top: 5px; }
  .shopFooter { grid-template-columns: 1fr; }
  .marketsHero { grid-template-columns: 1fr; padding: 58px 24px; }
  .marketsHero img { height: 270px; }
  .eventsPage { padding: 55px 24px 75px; }
  .specialHero, .specialProcess, .specialDetails { grid-template-columns: 1fr; padding: 58px 24px; }
  .specialHero { gap: 45px; }
  .specialCollage { grid-template-rows: 160px 175px; }
  .specialPossibilities { padding: 60px 24px 70px; }
  .specialCards { grid-template-columns: 1fr 1fr; }
  .specialCards article { min-height: 225px; }
  .specialCards h3 { margin-top: 28px; }
  .specialProcess { gap: 42px; }
  .specialDetails { gap: 32px; }
  .commissionTerms { padding: 65px 24px 75px; }
  .aboutHero, .aboutOrigin, .aboutMaking { grid-template-columns: 1fr; padding: 60px 24px; }
  .aboutHero { gap: 35px; }
  .aboutHeroGallery { min-height: 330px; }
  .aboutHeroGallery img:first-child { width: 42%; height: 92%; }
  .aboutHeroGallery img:last-child { width: 70%; height: 72%; }
  .aboutOrigin { gap: 42px; }
  .aboutOriginGallery { grid-template-rows: 170px 200px; }
  .aboutTeam, .aboutCommitment, .aboutValues, .aboutDragons { padding: 60px 24px 75px; }
  .contactHero, .contactPageBody { grid-template-columns: 1fr; padding: 60px 24px; }
  .contactHero { gap: 32px; }
  .contactHero img { max-height: 340px; }
  .contactPageForm, .contactWays { grid-template-columns: 1fr; }
  .contactPageForm .contactReason, .contactPageForm .contactMessage, .contactPageForm > p { grid-column: auto; }
  .contactWays { padding: 0px 24px 70px; }
  .aboutTeamGallery { grid-template-rows: 150px auto; grid-template-columns: repeat(4, 1fr); height: auto; }
  .aboutTeamCards, .aboutCommitmentCards { grid-template-columns: 1fr; }
  .dragonFeature img { aspect-ratio: 1.45 / 1; object-position: center center; }
  .aboutMaking { gap: 38px; }
  .aboutValues > div { grid-template-columns: 1fr 1fr; }
  .aboutValues article { min-height: 230px; }
  .dragonVoices { grid-template-columns: 1fr; }
  .eventCard { grid-template-columns: 94px 1fr; }
  .eventDate { flex-direction: column; gap: 0px; }
  .eventDate b { font-size: 38px; }
  .eventBody { padding: 22px 20px; }
  .eventFacts { grid-template-columns: 1fr; gap: 12px; }
  .eventLink { border-top: 1px solid rgb(227, 215, 197); border-left: 0px; grid-column: 1 / -1; min-height: 46px; }
  .weekendCards { grid-template-columns: 1fr; }
  .weekendCards .eventCard { grid-template-columns: 94px 1fr; }
  .eventCardAccent .eventLink { border-top-color: rgba(215, 163, 75, 0.24); }
  .eventRow { grid-template-columns: 92px 1fr 24px; gap: 12px; padding: 17px 4px; }
  .eventRow > span { display: none; }
}
@media (width <= 480px) {
  .diceHeroCopy h1 { font-size: 42px; }
  .diceHeroGallery { min-height: 320px; }
  .diceHeroGallery img { width: 82%; height: 58%; }
  .diceHeroGallery::before { width: 52px; height: 52px; font-size: 17px; left: 41%; }
  .diceOfferImage { height: 250px; }
  .diceGallery { grid-template-rows: 230px repeat(3, 155px); gap: 8px; }
  .diceOfferCopy { padding: 25px 22px 28px; }
  .diceOfferCopy > div { flex-direction: column; align-items: flex-start; gap: 8px; }
  .diceOfferCopy small { text-align: left; }
  .diceCommissionArt img { min-height: 360px; }
  .diceCommissionRules { padding: 70px 24px 78px; }
  .diceRulesList > li { grid-template-columns: 48px 1fr; gap: 14px; padding: 25px 0px; }
  .kaptajnenHero { min-height: 0px; }
  .kaptajnenHeroImage { aspect-ratio: 4 / 5; min-height: 0px; }
  .kaptajnenHeroCopy h1 { font-size: 48px; }
  .kaptajnenStoryText > div { grid-template-columns: 38px 1fr; gap: 12px; }
  .productGrid { grid-template-columns: 1fr; }
  .productInfo h3 { min-height: 0px; }
  .specialCards { grid-template-columns: 1fr; }
  .specialCards article { min-height: 0px; }
  .specialDetails > aside { padding: 26px 22px; }
  .commissionTypes { grid-template-columns: 1fr; }
  .commissionTypes article { padding: 25px 22px; }
  .commissionTermsList summary { padding: 21px 42px; font-size: 15px; }
  .commissionTermsList summary::before { font-size: 14px; top: 22px; }
  .commissionTermsList details > div { margin-left: 42px; padding: 0px 4px 23px 0px; }
  .specialCta .actions { flex-direction: column; align-items: stretch; }
  .specialCta .button { justify-content: center; }
  .aboutValues > div { grid-template-columns: 1fr; }
  .aboutValues article { min-height: 0px; }
  .aboutValues h3 { margin-top: 28px; }
  .dragonVoices article { grid-template-columns: 105px 1fr; padding: 22px 18px; }
  .aboutTeamGallery { grid-template-rows: 180px 180px auto; grid-template-columns: repeat(2, 1fr); height: auto; }
  .aboutTeamGallery img { height: 100%; }
  .aboutTeamGallery img:first-child { grid-area: 1 / 1; }
  .aboutTeamGallery img:nth-child(2) { grid-area: 2 / 1; }
  .aboutTeamGallery img:nth-child(3) { grid-area: 1 / 2; }
  .aboutTeamGallery img:nth-child(4) { grid-area: 3 / 1 / auto / 3; height: auto; }
  .aboutTeamGallery img:nth-child(5) { grid-area: 2 / 2; }
  .aboutClosing .actions { flex-direction: column; align-items: stretch; }
  .aboutClosing .button { justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  .heroPip { animation: auto ease 0s 1 normal none running none; transform: none; }
}
.hero h1 span, .hero h1 strong { font-family: Cinzel, Georgia, serif; font-weight: 700; }
/* Keep finished market dates out of the upcoming schedule. */
.weekendGroup[hidden], .eventCard[hidden], .eventRow[hidden], .laterEvents[hidden] { display: none !important; }

@media (width <= 1050px) {
  .mobileMenu summary:focus-visible, .mobileNavPanel a:focus-visible, .langs a:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
}

/* Free printable mini-RPG homepage highlight. */
.quietMission { background: var(--paper); padding: 58px 12vw 20px; }
.quietMissionCard { max-width: 1050px; margin: auto; border: 1px solid rgba(215,163,75,.42); border-radius: 14px; background: #fffdf8; box-shadow: 0 18px 45px rgba(13,22,48,.09); display: grid; grid-template-columns: minmax(200px, 290px) 1fr; gap: clamp(30px, 5vw, 72px); align-items: center; padding: clamp(22px, 3vw, 38px); }
.quietMissionArt { display: block; border-radius: 8px; overflow: hidden; box-shadow: 0 12px 26px rgba(13,22,48,.20); }
.quietMissionArt img { width: 100%; height: auto; display: block; }
.quietMissionCopy .eyebrow { margin: 0 0 10px; }
.quietMissionCopy h2 { color: var(--navy); margin: 0 0 18px; font: 700 clamp(27px, 3vw, 40px)/1.16 Cinzel, Georgia, serif; }
.quietMissionCopy > p:not(.eyebrow) { color: var(--ink); font-size: 15px; line-height: 1.7; max-width: 570px; }
.quietMissionDetails { border-left: 3px solid var(--gold); padding-left: 16px; margin: 21px 0 26px; font-weight: 600; }
.quietMission a:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
@media (width <= 700px) {
  .quietMission { padding: 34px 6vw 10px; }
  .quietMissionCard { grid-template-columns: 1fr; gap: 27px; padding: 22px; }
  .quietMissionArt { width: min(100%, 270px); margin: auto; }
  .quietMissionCopy h2 { font-size: clamp(26px, 7vw, 36px); }
  .quietMissionCopy .button { justify-content: center; text-align: center; }
}
/* One extra library destination while retaining the established navigation. */
@media (width > 1350px){nav{grid-template-columns:repeat(5,minmax(0,1fr)) 72px repeat(4,minmax(0,1fr));width:min(1180px,88vw);gap:5px;font-size:12px}nav a:nth-child(5){grid-column:auto}nav a:nth-child(6){grid-column:7}}
@media (width > 1050px) and (width <= 1350px){nav{display:none}.mobileMenu{z-index:20;display:block;position:relative}.mobileMenu summary{cursor:pointer;border:1px solid #dfd2be;border-radius:5px;width:48px;height:48px;padding:16px 14px;list-style:none;display:grid;gap:4px}.mobileMenu summary span{background:var(--ink);width:18px;height:1px;display:block}.mobileNavPanel{z-index:30;border-bottom:2px solid var(--gold);background:#fffdf8;padding:12px 24px 20px;max-height:calc(100dvh - 95px);overflow:auto;display:grid;position:fixed;top:95px;left:0;right:0;box-shadow:0 18px 32px #0d162426}.mobileNavPanel a{border-bottom:1px solid #ece4d7;min-height:52px;padding:14px 4px;font:600 18px/1.4 Cinzel,Georgia,serif}.logo{left:20px;transform:none}header{padding:0 16px}.langs{margin-left:auto;margin-right:8px}}
/* Email unlock inside the existing homepage adventure highlight. */
.quietMission .unlockFlow{margin-top:23px}
.quietMission .unlockPanel,.quietMission .unlockedPanel{text-align:left}
.quietMission .usageNotice{max-width:570px;margin:12px 0 14px!important}
.quietMissionLibraryLink{display:inline-block;color:#6f2929;text-decoration:underline;text-underline-offset:4px;font:700 13px Cinzel,Georgia,serif}
.quietMissionLibraryLink:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
/* Wrap the descriptive adventure-library name within its navigation slot. */
nav a.adventureNav{white-space:normal;line-height:1.25;font-size:11px}
/* The complete Shopify product-range directory. */
.quests .categoryGrid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1120px;gap:14px}
.quests .category{height:215px;min-width:0}
.quests .category h3{font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.categoryNoImage{background:radial-gradient(ellipse at 65% 20%,#75462c,#203e35 55%,#0d1630)}
.categorySymbol{position:absolute;top:30px;left:50%;transform:translateX(-50%);color:var(--gold);font-size:65px;opacity:.7}
@media(max-width:1050px){.quests .categoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.quests .categoryGrid{grid-template-columns:1fr}.quests .category{height:210px}}

/* Reserve separate header columns for brand, links and language controls. */
@media(width > 1350px){
 header{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:24px;padding:0 clamp(24px,3vw,64px);height:auto;min-height:82px}
 header>.logo{position:static;left:auto;transform:none;display:flex;align-items:center;justify-content:center}
 header>nav{position:static;left:auto;transform:none;width:100%;display:flex;justify-content:space-evenly;gap:clamp(8px,1vw,20px);font-size:12px}
 header>nav>a{grid-column:auto;display:flex;align-items:center;justify-content:center;min-height:48px;white-space:normal;line-height:1.3}
 header>nav>a.adventureNav{flex:0 1 150px;font-size:12px;min-width:110px}
 header>.langs{margin:0;flex-shrink:0;white-space:nowrap}
}

/* Later markets: keyboard-accessible, compact expandable rows. */
.marketCompactHeading { margin: 0; padding: 0 0 18px; color: var(--navy); font: 500 clamp(22px, 2.5vw, 30px)/1.4 Cinzel, serif; }
.marketCompactHeading::before { content: '✦'; color: var(--gold); margin-right: 14px; font-size: 22px; }
.marketCompactList { display: grid; gap: 0; border-top: 1px solid #dfd2bd; background: transparent; }
.marketCompactRow { border-bottom: 1px solid #dfd2bd; }
.marketCompactSummary { display: grid; grid-template-columns: 140px minmax(0, 1fr) 28px; align-items: center; gap: 22px; padding: 25px 6px; min-height: 102px; cursor: pointer; list-style: none; }
.marketCompactSummary::-webkit-details-marker { display: none; }
.marketCompactSummary:hover { background: rgba(215,163,75,.05); }
.marketCompactSummary:focus-visible { outline: 3px solid var(--gold); outline-offset: -3px; }
.marketCompactDate { color: var(--gold); font: 500 17px/1.5 Cinzel, serif; }
.marketCompactText { display: grid; gap: 9px; min-width: 0; }
.marketCompactTitle { color: var(--navy); font: 500 clamp(16px, 1.7vw, 20px)/1.5 Cinzel, serif; overflow-wrap: anywhere; }
.marketCompactPlace { color: #7c8695; font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
.marketCompactToggle { color: var(--gold); text-align: center; font-size: 24px; }
.marketCompactToggle::after { content: '+'; }
.marketCompactRow[open] .marketCompactToggle::after { content: '−'; }
.marketCompactRow .eventBody { padding: 0 56px 24px 168px; }
.marketCompactRow .eventBody > a { display: inline-block; margin-top: 16px; overflow-wrap: anywhere; }
@media (max-width: 700px) {
 .marketCompactSummary { grid-template-columns: 84px minmax(0, 1fr) 24px; gap: 12px; padding: 19px 0; min-height: 94px; }
 .marketCompactDate { font-size: 13px; }
 .marketCompactTitle { font-size: 15px; }
 .marketCompactPlace { font-size: 14px; }
 .marketCompactRow .eventBody { padding: 0 12px 20px 96px; }
 .marketCompactRow .eventFacts { grid-template-columns: 1fr; gap: 14px; }
}
@media (max-width: 380px) {
 .marketCompactSummary { grid-template-columns: 70px minmax(0, 1fr) 20px; gap: 9px; }
 .marketCompactRow .eventBody { padding-left: 0; }
}
