/* ChainHoney "Chain Hive". Presentation only: native workflows, routes and controls stay native.
   Fonts: Gloock (display, large sizes only) and Albert Sans (text, UI), SIL OFL 1.1, from google/fonts, self-hosted
   (see fonts/OFL-*.txt). No CDN. System stacks below are generic fallbacks only. */
@font-face {font-family: "Gloock"; src: url("fonts/Gloock-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap;}
@font-face {font-family: "Albert Sans"; src: url("fonts/AlbertSans-VF.woff2") format("woff2"); font-weight: 100 900; font-style: normal; font-display: swap;}
@font-face {font-family: "Albert Sans"; src: url("fonts/AlbertSans-Italic-VF.woff2") format("woff2"); font-weight: 100 900; font-style: italic; font-display: swap;}

:root, body {
 --ch-ink: #15120a; --ch-olive: #4a4318; --ch-olive-2: #5b5320; --ch-amber: #f2a71b; --ch-amber-deep: #b06f08; --ch-amber-text: #8a5606;
 --ch-pollen: #ffd25a; --ch-cream: #f6eedb; --ch-paper: #fbf6ea; --ch-wax: #eadfc2; --ch-line: #d9cca8; --ch-propolis: #b5432a;
 --ch-display: "Gloock", Georgia, serif;
 --ch-text: "Albert Sans", Arial, sans-serif;
 --primary: 52 51% 19%; --primary-foreground: 43 67% 95%;
 --secondary: 42 60% 91%; --secondary-foreground: 44 35% 6%;
 --accent: 37 92% 28%; --accent-foreground: 43 67% 95%;
 --background: 43 67% 95%; --foreground: 44 35% 6%;
 --heading-foreground: 44 35% 6%; --heading-background: 43 67% 95%;
 --border: 44 39% 80%; --label: 52 48% 24%;
 --surface: 42 60% 91%; --surface-light: 43 70% 97%; --surface-background: 43 70% 97%; --clay: 42 60% 91%;
 --card-background: 43 70% 97%; --card-foreground: var(--foreground); --card-border: var(--border); --card-rounded: 14px;
 --input-background: 43 70% 98%; --input-foreground: var(--foreground); --input-border: 44 25% 62%; --input-rounded: 10px;
 --header-background: var(--background); --header-border: var(--border);
 --dropdown-background: 43 70% 97%; --dropdown-foreground: var(--foreground); --dropdown-border: var(--border);
 --navbar-background: 42 60% 91%; --navbar-foreground: 44 35% 6%; --navbar-border: var(--border); --navbar-divider: var(--border);
 --navbar-background-hover: 52 51% 19%; --navbar-foreground-hover: 44 35% 6%;
 --navbar-background-active: 52 51% 19%; --navbar-foreground-active: 44 35% 6%; --navbar-link-rounded: 10px;
 --button-rounded: 999px;
 --font-body: var(--ch-text); --font-heading: var(--ch-text); --font-family: var(--ch-text);
 --headings-font-family: var(--ch-text); --headings-color: #15120a;
 --tblr-primary: #4a4318; --tblr-primary-rgb: 74,67,24; --tblr-body-bg: #fbf6ea; --tblr-body-color: #15120a; --tblr-font-sans-serif: var(--ch-text);
 --tblr-border-color: #d9cca8; --tblr-card-border-color: #d9cca8; --tblr-border-radius: 10px;
 --lqd-heading-color: #15120a; --lqd-header-search-bg: #f6eedb; --lqd-header-search-color: #5b5320; --lqd-header-search-color-focus: #15120a;
 --lqd-vertical-nav-link-color: #15120a;
 color-scheme: light;
}
body {background-color: #fbf6ea; color: #15120a; font-family: var(--ch-text);}
h2, h3, h4, h5, h6 {font-family: var(--ch-text); letter-spacing: 0;}
/* Gloock is a display face: page titles only (rendered at 28px and up). */
h1, .lqd-titlebar-title {font-family: var(--ch-display); font-weight: 400; line-height: 1.1; letter-spacing: 0.005em; word-spacing: 0.04em;}
.lqd-titlebar-title {font-size: max(1.75rem, 1em);}
/* Gloock ships one weight: never synthesize bold or italic. */
h1, .lqd-titlebar-title, #banner .banner-title, .ch-h2, .site-section h2, .site-footer [class*="bg-clip-text"] {font-weight: 400 !important; font-style: normal; font-synthesis: none;}
.lqd-card, .card {box-shadow: none;}
.lqd-btn-primary, .btn-primary {color: #fbf6ea; background-color: #4a4318; border-color: #4a4318;}
.lqd-btn-primary:hover, .btn-primary:hover {color: #15120a; background-color: #f2a71b; border-color: #f2a71b;}
:where(a,button,input,select,textarea,[tabindex]):focus-visible {outline: 3px solid #b06f08; outline-offset: 3px;}

/* Hive names beside plain feature names. The plain name stays visible and searchable. */
.ch-hive-pair {display: inline-flex; flex-direction: column; min-width: 0; line-height: 1.15;}
.ch-hive-name {font-family: var(--ch-text); font-weight: 700; letter-spacing: 0;}
.ch-hive-plain {font-size: 0.78em; opacity: 0.86; font-weight: 500;}
.ch-hive-eyebrow {font-family: var(--ch-text); font-style: italic; font-weight: 600; font-size: 0.95rem; color: #5b5320; letter-spacing: 0;}

/* Logos: new Chain Hive set (no white boxes). */
img[src*='/brand/chainhoney/hive/logo-horizontal'] {object-fit: contain; max-width: 176px; max-height: 60px; width: auto; height: auto;}
img[src*='/brand/chainhoney/hive/mark'] {object-fit: contain; max-width: 40px; max-height: 48px; width: auto; height: auto;}

.theme-dark, body.theme-dark {
 --primary: 39 89% 53%; --primary-foreground: 44 35% 6%; --secondary: 45 31% 13%; --secondary-foreground: 42 60% 91%;
 --accent: 39 89% 53%; --accent-foreground: 44 35% 6%;
 --background: 44 32% 7%; --foreground: 42 60% 91%; --heading-foreground: 43 67% 95%; --heading-background: 44 32% 7%;
 --border: 46 29% 20%; --label: 45 31% 72%; --surface: 45 31% 11%; --surface-light: 45 31% 14%; --surface-background: 45 31% 11%; --clay: 45 31% 11%;
 --card-background: 45 29% 9%; --card-foreground: var(--foreground); --card-border: var(--border);
 --input-background: 45 29% 9%; --input-foreground: var(--foreground); --input-border: 46 22% 34%;
 --header-background: var(--background); --header-border: var(--border);
 --dropdown-background: 45 31% 11%; --dropdown-foreground: var(--foreground); --dropdown-border: var(--border);
 --navbar-background: 44 32% 5%; --navbar-foreground: 42 60% 91%; --navbar-border: var(--border); --navbar-divider: var(--border);
 --navbar-background-active: 39 89% 53%; --navbar-foreground-active: 39 89% 53%; --navbar-background-hover: 39 89% 53%; --navbar-foreground-hover: 39 89% 53%;
 --tblr-primary: #f2a71b; --tblr-primary-rgb: 242,167,27; --tblr-body-bg: #17140c; --tblr-body-color: #f6eedb; --tblr-bg-surface: #221e12; --tblr-border-color: #3a3420;
 --lqd-heading-color: #fbf6ea; --headings-color: #fbf6ea; --lqd-header-search-bg: #221e12; --lqd-header-search-color: #c9be9c; --lqd-header-search-color-focus: #fbf6ea;
 background-color: #17140c; color: #f6eedb; color-scheme: dark;
}
.theme-dark :where(a,button,input,select,textarea,[tabindex]):focus-visible {outline-color: #f2a71b;}
.theme-dark .lqd-btn-primary, .theme-dark .btn-primary {color: #15120a; background-color: #f2a71b; border-color: #f2a71b;}
.theme-dark .ch-hive-eyebrow {color: #e3c77d;}

@media (max-width: 640px) {
 .lqd-titlebar-title {overflow-wrap: anywhere;}
 .lqd-page-content-container {min-width: 0;}
 input:not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea {font-size: 16px;}
}
@media (prefers-reduced-motion: reduce) {html {scroll-behavior: auto;}}

/* Auth: engraved plate panel. */
.lqd-auth-content > div[style*='bg-auth.jpg'] {background-image: none !important; background-color: #f6eedb;}
.lqd-auth-content img[src*='/brand/chainhoney/hive/img/'] {transform: none; width: 100%; max-height: 92vh; object-fit: contain; border-radius: 14px; box-shadow: none;}
.is-auth-page form a {color: #8a5606;}
.theme-dark.is-auth-page form a {color: #f2a71b;}
.theme-dark .lqd-auth-content > div[style*='bg-auth.jpg'] {background-color: #221e12;}
.is-auth-page a.lg\:text-white {color: #15120a; background-color: #fbf6ea; border: 1px solid #d9cca8; border-radius: 999px; padding: 6px 14px; position: relative; z-index: 2;}
.theme-dark.is-auth-page a.lg\:text-white {color: #f6eedb; background-color: #221e12; border-color: #3a3420;}

/* Error pages. */
.ch-error-plate {display: block; width: min(320px, 70vw); height: auto; margin: 0 auto 8px; border-radius: 14px;}

/* Public header and landing. */
.site-header, .site-header .site-header-nav {color: #15120a; background-color: #fbf6ea;}
.site-header .site-logo {min-width: 0;}
.site-header .site-logo img {width: min(176px, 100%); height: auto;}
.site-header-nav > div:last-child > a {color: #15120a; border-color: #d9cca8; background-color: #f6eedb; align-items: center; border-radius: 999px;}
.site-header .mobile-nav-trigger {background-color: #15120a; color: #fbf6ea;}
.site-header .site-nav-container {background-color: #fbf6ea; color: #15120a;}
.site-preheader {background: #15120a !important; color: #f6eedb; height: auto; min-height: 48px; padding-block: 8px;}
.site-preheader a {color: #ffd25a;}

#banner {color: #15120a; text-align: left; min-height: 780px; padding-top: 168px; padding-bottom: 96px;}
#banner .banner-bg {background: #f6eedb url("img/hero-forager.webp") no-repeat right 1vw center / min(58vw, 1000px) auto !important; animation: none;}
#banner .container > div {width: min(100%, 560px); align-items: flex-start; margin-inline: 0;}
#banner .banner-title {font-family: var(--ch-display); font-weight: 400; font-size: clamp(44px, 5.6vw, 88px); line-height: 1.04; letter-spacing: 0.005em; word-spacing: 0.06em; color: #15120a;}
#banner .banner-title .lqd-text-rotator {color: #8a5606;}
#banner .banner-title svg {color: #f2a71b;}
#banner h6 {background: #15120a; color: #f6eedb; border-radius: 999px; font-family: var(--ch-text); letter-spacing: 0.08em; text-transform: uppercase; font-size: 12px;}
#banner h6 .relative.opacity-60 {opacity: 0.9;}
#banner p, #banner p .lqd-split-text-words {color: #15120a !important; font-family: var(--ch-text);}
#banner a:not([href='#features']) {background-color: #f2a71b; color: #15120a; border-radius: 999px; border-color: #15120a;}
#banner a[href='#features'] {color: #4a4318; opacity: 1; text-decoration: underline; text-underline-offset: 4px;}
#banner .banner-divider svg {fill: #fbf6ea;}
.site-section h2, .site-footer [class*="bg-clip-text"] {font-family: var(--ch-display); font-weight: 400; letter-spacing: 0.005em;}
.site-section h6, .site-section .text-heading-foreground {letter-spacing: 0.02em;}
@media (max-width: 1023px) {
 #banner {min-height: 0; padding-top: 140px; padding-bottom: calc(56vw + 48px);}
 #banner .banner-bg {background-size: 100% auto !important; background-position: center bottom 24px !important;}
 #banner .container > div {width: 100%;}
}
@media (max-width: 640px) {
 .site-header .site-logo {flex-basis: 34%; flex-shrink: 1;}
 .site-header .site-logo img {max-width: 100%;}
 .site-header-nav > div:last-child {flex-basis: auto; gap: 4px;}
 .site-header-nav > div:last-child > a {padding: 8px 10px; font-size: 12px;}
 #banner .banner-title {font-size: clamp(38px, 11vw, 52px);}
}

/* Chain Hive landing sections. */
.ch-section {padding: 96px 0; background: #fbf6ea; color: #15120a;}
.ch-section:nth-of-type(even) {background: #f6eedb;}
.ch-eyebrow {margin: 0 0 12px; font: 700 12px/1.2 var(--ch-text); letter-spacing: 0.16em; text-transform: uppercase; color: #5b5320;}
.ch-h2 {margin: 0 0 16px; font: 400 clamp(34px, 4.6vw, 64px)/1.06 var(--ch-display); letter-spacing: 0.005em; color: #15120a;}
.ch-lede {max-width: 62ch; margin: 0 0 40px; font-size: 18px; line-height: 1.55; color: #3a3420;}
.ch-hive-grid {display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none;}
.ch-cell-link {display: flex; flex-direction: column; gap: 4px; height: 100%; padding: 20px 20px 22px; border: 1.5px solid #d9cca8; border-radius: 14px; background: #fffaf0; color: #15120a; text-decoration: none; transition: border-color .15s, transform .15s;}
.ch-cell-link:hover {border-color: #4a4318; transform: translateY(-2px);}
.ch-cell-hive {font: 800 20px/1.1 var(--ch-text);}
.ch-cell-plain {font: 700 12px/1.3 var(--ch-text); letter-spacing: 0.1em; text-transform: uppercase; color: #8a5606;}
.ch-cell-what {margin-top: 6px; font-size: 15px; line-height: 1.45; color: #3a3420;}
.ch-step-list {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 40px 0 0; padding: 0; list-style: none;}
.ch-step {position: relative;}
.ch-step img {width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 14px; border: 1.5px solid #d9cca8;}
.ch-step-no {position: absolute; top: 12px; left: 12px; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #15120a; color: #ffd25a; font: 800 16px/1 var(--ch-text);}
.ch-step h3, .ch-role h3 {margin: 14px 0 6px; font: 800 22px/1.15 var(--ch-text); color: #15120a;}
.ch-step p, .ch-role p {margin: 0; font-size: 15px; line-height: 1.5; color: #3a3420;}
.ch-role-grid {display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 18px; margin: 40px 0 0; padding: 0; list-style: none;}
.ch-role img {width: 100%; height: auto; border-radius: 50%; background: #f6eedb;}
.ch-lore-grid {display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; align-items: center;}
.ch-lore-plate {margin: 0;}
.ch-lore-plate img {width: 100%; height: auto; border-radius: 14px; border: 1.5px solid #d9cca8;}
.ch-lore-text {font: 400 19px/1.6 var(--ch-text); color: #15120a;}
.ch-tagline {margin-top: 20px; font: italic 700 22px/1.3 var(--ch-text); color: #8a5606;}
@media (max-width: 1023px) {
 .ch-step-list {grid-template-columns: repeat(2, minmax(0, 1fr));}
 .ch-role-grid {grid-template-columns: repeat(3, minmax(0, 1fr));}
 .ch-lore-grid {grid-template-columns: 1fr; gap: 28px;}
}
@media (max-width: 480px) {
 .ch-section {padding: 64px 0;}
 .ch-step-list {grid-template-columns: 1fr;}
 .ch-role-grid {grid-template-columns: repeat(2, minmax(0, 1fr));}
}

/* Native landing sections: replace vendor violet/navy accents with hive tones (content and controls unchanged). */
.site-section h6[class*="bg-[#"] {background-color: #eadfc2 !important; color: #4a4318 !important;}
.site-section [class*="text-[#60027C]"], .site-section [class*="text-[#083D91]"], .site-section [class*="text-[#5A4791]"], .site-section [class*="text-[#28027C]"] {color: #4a4318 !important;}
.site-section [class*="bg-[#885EFE]"] {background-color: rgba(242, 167, 27, 0.2) !important;}
.site-section .group.rounded-xl[style*="background-color"] {background-color: #eadfc2 !important;}
#how-it-works [class*="bg-[#010101]"] {background-image: none !important; background-color: #15120a !important;}
#how-it-works h2 {color: #fbf6ea;}
#how-it-works a {color: #ffd25a;}
.theme-dark .ch-section {background: #17140c; color: #f6eedb;}
.theme-dark .ch-section:nth-of-type(even) {background: #1d1a10;}
.theme-dark .ch-h2, .theme-dark .ch-step h3, .theme-dark .ch-role h3, .theme-dark .ch-lore-text, .theme-dark .ch-cell-link {color: #fbf6ea;}
.theme-dark .ch-lede, .theme-dark .ch-step p, .theme-dark .ch-role p, .theme-dark .ch-cell-what {color: #d9cca8;}
.theme-dark .ch-cell-link {background: #221e12; border-color: #3a3420;}
.theme-dark .ch-cell-plain, .theme-dark .ch-tagline {color: #f2a71b;}
.theme-dark .ch-eyebrow {color: #e3c77d;}

/* Public footer: hive night palette, readable logo. */
.site-footer {background-color: #15120a !important; color: #f6eedb;}
.site-footer > div[style*="radial-gradient"] {background: radial-gradient(circle at 0% -20%, rgba(242, 167, 27, 0.32), rgba(74, 67, 24, 0.35) 35%, transparent 65%) !important;}
.site-footer [class*="bg-clip-text"] {color: #fbf6ea !important; background-image: none !important;}
.site-footer img[src*="/brand/chainhoney/hive/logo-horizontal.png"] {content: url("logo-horizontal-on-dark.png");}
.site-footer a[href="/login"] {background-color: #f2a71b !important; color: #15120a !important;}
@media print {body {background: white; color: #15120a;}}
