/*!
Theme Name: JIFFYAI Resource Center
Theme URI: http://underscores.me/
Author: Vaisakh Vidhyadharan
Author URI: https://jiffy.ai/
Description: A custom theme for JIFFYAI Resource Center
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: jrc
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.

JIFFYAI Resource Center 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
	- Forms
## Layouts
# Components
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# 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: -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%;
}

/* 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: #aaa #bbb #bbb;
}

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: #666;
	border: 1px solid #ccc;
	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: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

.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;
}

/* 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;
}

/*--------------------------------------------------------------
# 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;
}

/*--------------------------------------------------------------
>>> JIFFYAI PHOENIX DESIGN SYSTEM (ported from reference HTML)
----------------------------------------------------------------*/
/* ==========================================================================
   JIFFYAI Resource Center — JIFFYAI Phoenix design system
   ========================================================================== */

@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:300;font-display:swap;src:url("fonts/SourceSans3-Light.ttf") format("truetype")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/SourceSans3-Regular.ttf") format("truetype")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/SourceSans3-Medium.ttf") format("truetype")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/SourceSans3-SemiBold.ttf") format("truetype")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/SourceSans3-Bold.ttf") format("truetype")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/SourceSans3-ExtraBold.ttf") format("truetype")}

:root{
  --jf-primary-50:#F9F4E1;--jf-primary-100:#F6EDC9;--jf-primary-200:#F1E2A9;--jf-primary-300:#D6C16A;
  --jf-primary-400:#BFA238;--jf-primary-500:#9E7B19;--jf-primary-600:#8A6A15;--jf-primary-700:#745711;
  --jf-primary-800:#5E460E;--jf-primary-900:#443308;--jf-primary-950:#2B2004;
  --jf-gray-50:#FAFAFA;--jf-gray-100:#F4F4F5;--jf-gray-200:#E4E4E7;--jf-gray-300:#D4D4D8;
  --jf-gray-400:#A8ABB1;--jf-gray-500:#73767C;--jf-gray-600:#535862;--jf-gray-700:#3F434A;
  --jf-gray-800:#2B2F36;--jf-gray-900:#1C1C1C;--jf-gray-950:#000000;
  --jf-success-50:#F2F8F4;--jf-success-200:#B8DBC8;--jf-success-500:#005928;
  --jf-info-50:#F2F8FC;--jf-info-200:#B8D7EC;--jf-info-500:#075985;
  --jf-purple-50:#F3EFF8;--jf-purple-200:#CABBE4;--jf-purple-500:#7357AE;
  --jf-teal-50:#EAF6F5;--jf-teal-300:#7FC1B9;--jf-teal-500:#2C8F86;
  --jf-bg:#FFFFFF;--jf-surface:#FFFFFF;--jf-surface-muted:var(--jf-gray-100);--jf-surface-alt:var(--jf-gray-50);
  --jf-line:var(--jf-gray-200);--jf-line-strong:var(--jf-gray-300);--jf-ink:var(--jf-gray-900);
  --jf-fg-1:var(--jf-gray-800);--jf-fg-2:var(--jf-gray-600);--jf-fg-3:var(--jf-gray-500);--jf-fg-4:var(--jf-gray-400);
  --jf-radius-xs:4px;--jf-radius-sm:6px;--jf-radius-md:8px;--jf-radius-lg:12px;--jf-radius-xl:16px;--jf-radius-pill:999px;
  --jf-shadow-xs:0 1px 2px rgba(0,0,0,.04);--jf-shadow-sm:0 1px 3px rgba(0,0,0,.08);--jf-shadow-md:0 4px 12px rgba(0,0,0,.08);--jf-shadow-lg:0 12px 32px rgba(0,0,0,.10);
  --gold-50:var(--jf-primary-50);--gold-100:var(--jf-primary-100);--gold-200:var(--jf-primary-200);--gold-300:var(--jf-primary-300);
  --gold-400:var(--jf-primary-400);--gold-500:var(--jf-primary-500);--gold-600:var(--jf-primary-600);--gold-700:var(--jf-primary-700);
  --gold-800:var(--jf-primary-800);--gold-900:var(--jf-primary-900);--gold-text:var(--jf-primary-400);
  --ink-50:var(--jf-gray-50);--ink-100:var(--jf-gray-100);--ink-200:var(--jf-gray-200);--ink-300:var(--jf-gray-300);
  --ink-400:var(--jf-gray-400);--ink-500:var(--jf-gray-500);--ink-600:var(--jf-gray-600);--ink-700:var(--jf-gray-700);
  --ink-800:var(--jf-gray-800);--ink-900:var(--jf-gray-900);--ink-950:var(--jf-gray-950);
  --cream:var(--jf-surface-alt);
  --nav-hover:var(--jf-primary-400);
  --head-h:79px;
  --shell:1310px;
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.001ms!important;transition-duration:.001ms!important}
}

body{
  margin:0;
  font-family:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1.45;
  color:var(--jf-fg-1);
  background:var(--cream);
  padding-top:var(--head-h);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
@media (max-width:1199.98px){body{padding-top:66px}}
@media (max-width:767.98px){body{padding-top:61px}}

/* The _s boilerplate's ".post, .page{margin:0 0 1.5em}" rule (meant for the
   article-level content wrapper) also matches <body> itself, since
   body_class() adds a literal "page" class on every WP Page — and a class
   selector outranks our plain "body" selector above regardless of source
   order. None of this theme's page templates use the default post/page
   Loop wrapper, so that rule has no legitimate target here; it was only
   ever landing on <body>, adding an unwanted 24px gap below the footer. */
body.page,body.post{margin-bottom:0}

h1,h2,h3,h4,h5{font-weight:700;margin:0;color:var(--jf-ink)}
.hero h1,.closer h2,.site-footer h4{color:#fff}
p{margin:0;line-height:1.6}
a{color:var(--gold-500);text-decoration:none}
a:hover{color:var(--gold-400)}
img{max-width:100%;height:auto;border-style:none}
::selection{background:var(--gold-200);color:var(--ink-900)}

:focus-visible{outline:2px solid var(--gold-400);outline-offset:3px;border-radius:4px}

.shell{max-width:var(--shell);margin:0 auto;padding:0 30px}
.shell--narrow{max-width:1080px}

/* ---------- buttons ---------------------------------------------------- */
.btn{
  box-sizing:border-box;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-size:16px;font-weight:700;line-height:1;padding:0 16px;border-radius:var(--jf-radius-md);
  border:1.5px solid transparent;cursor:pointer;font-family:inherit;text-decoration:none;white-space:nowrap;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .05s ease,box-shadow .15s ease;
}
.btn-gold{background:var(--gold-500);color:#fff}
.btn-gold:hover{background:var(--gold-600);border-color:var(--gold-600);color:#fff}
.btn-gold:active{background:var(--gold-800);border-color:var(--gold-800);transform:translateY(.5px)}
.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--gold-200)}
.btn-gold-outline{
  background:#fff;color:var(--gold-500);border-color:var(--gold-500);
}
.btn-gold-outline:hover{background:var(--gold-50);border-color:var(--gold-500);color:var(--gold-700)}
.btn-white-outline{background:transparent;color:#fff;border-color:#fff}
.btn-white-outline:hover{background:#fff;color:var(--ink-900)}
.btn-dark-outline{background:transparent;color:#fff;border-color:var(--ink-700)}
.btn-dark-outline:hover{background:var(--ink-800);border-color:var(--ink-500);color:#fff}
.btn-black{background:var(--ink-900);color:#fff}
.btn-black:hover{background:#000;color:#fff}
.btn-sm{height:32px;font-size:13px;padding:0 12px}

/* ---------- header ----------------------------------------------------- */
.site-header{
  position:fixed;top:0;left:0;width:100%;z-index:1000;
  background:var(--ink-900);
}
.header-row{
  width:100%;max-width:none;padding-inline:24px;
  display:flex;align-items:center;gap:32px;
  height:var(--head-h);
}

.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}
.brand img{height:35px;width:auto;display:block}
@media (max-width:767.98px){.brand img{height:28px}}
.brand__suffix{
  color:#fff;font-size:16px;font-weight:600;letter-spacing:.01em;
  padding-left:14px;border-left:1px solid rgba(255,255,255,.22);
  white-space:nowrap;
}
@media (max-width:767.98px){.brand__suffix{font-size:14px;padding-left:10px}}

.site-nav{display:flex;align-items:center;gap:0;margin-left:auto}
.site-nav a{
  color:#fff;font-size:16px;font-weight:400;padding:17px 0;margin-inline:18px;
  position:relative;transition:color .35s ease-in-out;
}
.site-nav a:hover{color:var(--nav-hover)}
.site-nav a.is-current{color:var(--nav-hover)}
.site-nav a.is-current::before{
  content:"";position:absolute;bottom:8px;left:0;width:100%;height:2px;background:var(--nav-hover);
}
.header-cta{display:flex;align-items:center;gap:14px;margin-left:26px;flex-shrink:0}

.nav-toggle{
  display:none;margin-left:auto;background:none;border:0;padding:12px;cursor:pointer;
}
.nav-toggle span{display:block;width:28px;height:3px;background:#fff;border-radius:4px}
.nav-toggle span + span{margin-top:6px}

@media (max-width:1199.98px){
  .nav-toggle{display:block}
  .header-row{flex-wrap:wrap;height:auto;min-height:66px;gap:0}
  .brand{margin-right:auto}
  .site-nav,.header-cta{
    display:none;flex-basis:100%;width:100%;
    flex-direction:column;align-items:stretch;margin:0;
  }
  .site-nav a{margin-inline:0;padding:15px 0;border-top:1px solid rgba(255,255,255,.09)}
  .site-nav a.is-current::before{display:none}
  .header-cta{padding:18px 0 24px;gap:12px}
  .header-cta .btn{justify-content:center}
  body.nav-open .site-nav,body.nav-open .header-cta{display:flex}
}
@media (max-width:767.98px){
  .header-row{min-height:61px}
}

/* ---------- hero ------------------------------------------------------- */
.hero{
  position:relative;background:#1c1c1c;color:#fff;
  display:flex;align-items:center;min-height:420px;height:auto;padding:48px 0;
}
.hero::before,.hero::after{display:none}
.hero .shell{
  position:relative;z-index:1;width:100%;max-width:none;margin:0;
  padding-left:clamp(32px,8.5vw,160px);padding-right:clamp(32px,8.5vw,160px);
  text-align:left;
}
.hero--compact{padding:48px 0}
.hero--flat{
  background:#1c1c1c;
  padding:48px 0;
}
.hero--flat::before,.hero--flat::after{display:none}
.hero--flat .eyebrow{background:transparent;border-color:rgba(191,162,56,.42);color:var(--gold-text)}
.hero--flat h1{font-size:55px;max-width:19ch;margin-bottom:26px}
.hero--flat .hero__lead{color:var(--ink-400);max-width:59ch}
.hero__accent{color:var(--gold-text)}
@media (max-width:991.98px){.hero--flat h1{font-size:43px}}
@media (max-width:767.98px){
  .hero,.hero--compact,.hero--flat{height:auto;min-height:330px;padding:56px 0}
  .hero .shell{padding-left:24px;padding-right:24px}
  .hero--flat h1{font-size:34px}
}

.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:11px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--gold-text);border:1px solid rgba(191,162,56,.42);border-radius:30px;
  padding:10px 20px;margin-bottom:22px;background:transparent;
}
.eyebrow--light{color:var(--gold-text);border-color:var(--gold-300);background:rgba(246,237,201,.6)}

.hero h1{
  font-size:55px;line-height:1.1;letter-spacing:-.02em;max-width:20ch;margin-bottom:22px;
}
@media (max-width:991.98px){.hero h1{font-size:38px}}
@media (max-width:767.98px){.hero h1{font-size:30px}}
.hero__lead{font-size:18px;line-height:1.7;color:var(--ink-400);max-width:56ch;text-align:left;margin-left:0;margin-right:auto}
.hero__actions{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:14px;margin-top:24px}

/* ---------- animated knowledge visual --------------------------------- */
.hero-home__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:72px}
.hero-home__copy{min-width:0}
.knowledge-visual{position:relative;width:390px;height:264px;justify-self:end}
.knowledge-card{position:absolute;width:294px;height:214px;border-radius:16px;border:1px solid rgba(255,255,255,.16);background:#242424}
.knowledge-card--back{right:6px;top:24px;transform:rotate(7deg);background:#252525;animation:knowledge-back 7s ease-in-out infinite}
.knowledge-card--middle{right:38px;top:17px;transform:rotate(-5deg);background:#202020;animation:knowledge-middle 7s ease-in-out infinite}
.knowledge-card--front{right:22px;top:18px;padding:22px;background:#2a2a2a;box-shadow:0 22px 55px rgba(0,0,0,.28);animation:knowledge-float 7s ease-in-out infinite}
.knowledge-card__title{display:flex;align-items:center;gap:9px;color:#fff;font-size:13px;font-weight:650;letter-spacing:.01em;margin-bottom:16px}
.knowledge-card__title span{width:10px;height:10px;border-radius:50%;background:var(--gold-text);box-shadow:0 0 0 5px rgba(191,162,56,.12)}
.knowledge-search{height:34px;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#8f8f8f;font-size:10px;display:flex;align-items:center;padding:0 12px;margin-bottom:12px}
.knowledge-search::before{content:"";width:8px;height:8px;border:1px solid #777;border-radius:50%;margin-right:9px}
.knowledge-item{display:grid;grid-template-columns:26px 1fr;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.knowledge-item i{width:24px;height:24px;border-radius:6px;background:rgba(191,162,56,.14);position:relative}
.knowledge-item i::before,.knowledge-item i::after{content:"";position:absolute;left:7px;width:10px;height:1px;background:var(--gold-text)}
.knowledge-item i::before{top:9px}.knowledge-item i::after{top:14px;width:7px}
.knowledge-item span{display:block}.knowledge-item b,.knowledge-item em{display:block;height:3px;border-radius:4px;background:#666}
.knowledge-item b{width:70%;margin-bottom:6px}.knowledge-item em{width:48%;background:#484848}
.knowledge-tag{position:absolute;padding:8px 13px;border:1px solid rgba(191,162,56,.5);border-radius:999px;background:#1c1c1c;color:var(--gold-text);font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 22px rgba(0,0,0,.25)}
.knowledge-tag--library{left:0;top:48px;animation:knowledge-tag 5s ease-in-out infinite}
.knowledge-tag--video{right:0;bottom:44px;animation:knowledge-tag 5s ease-in-out -1.7s infinite}
.knowledge-tag--news{left:22px;bottom:18px;animation:knowledge-tag 5s ease-in-out -3.4s infinite}
@keyframes knowledge-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes knowledge-back{0%,100%{transform:rotate(7deg) translateY(0)}50%{transform:rotate(5deg) translateY(4px)}}
@keyframes knowledge-middle{0%,100%{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(-3deg) translateY(-4px)}}
@keyframes knowledge-tag{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media (max-width:991.98px){
  .hero-home__grid{grid-template-columns:minmax(0,1fr) 300px;gap:32px}
  .knowledge-visual{width:300px;transform:scale(.82);transform-origin:right center}
}
@media (max-width:767.98px){
  .hero-home__grid{display:block}
  .knowledge-visual{display:none}
}
@media (prefers-reduced-motion:reduce){
  .knowledge-card,.knowledge-tag{animation:none}
}

/* ---------- sections --------------------------------------------------- */
.band{padding:88px 0;background:var(--cream)}
.band--cream{background:var(--cream)}
.band--sand{background:#fff}
.band--white{background:#fff}
.band--ink{background:var(--cream);color:var(--ink-900)}
.band--tight{padding:60px 0}
@media (max-width:767.98px){.band{padding:60px 0}}

.band-head{margin-bottom:44px;max-width:70ch}
.band-head h2{font-size:38px;line-height:1.2;letter-spacing:-.02em;margin-bottom:12px}
@media (max-width:767.98px){.band-head h2{font-size:30px}}
.band-head p{color:var(--ink-600);font-size:17px;line-height:1.7}
.band--ink .band-head p{color:var(--ink-600)}

.band-head--split{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;max-width:none;
}
@media (max-width:767.98px){.band-head--split{flex-direction:column;align-items:flex-start}}
.see-all{
  font-size:14px;font-weight:600;color:var(--ink-600);white-space:nowrap;flex-shrink:0;
}
.band--ink .see-all{color:var(--ink-600)}
.see-all:hover{color:var(--gold-500)}
.band--ink .see-all:hover{color:var(--gold-500)}

/* ---------- shelves (home) --------------------------------------------- */
.shelf{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
}
.shelf--4{grid-template-columns:repeat(4,1fr)}
.shelf--2{grid-template-columns:repeat(2,1fr)}
@media (max-width:991.98px){.shelf,.shelf--4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.shelf,.shelf--4,.shelf--2{grid-template-columns:1fr}}

.route-card{
  display:flex;flex-direction:column;gap:12px;
  background:var(--jf-surface);border:1px solid var(--jf-line);border-radius:var(--jf-radius-lg);
  padding:24px;color:var(--ink-900);height:100%;box-shadow:var(--jf-shadow-xs);
  transition:border-color .15s ease,box-shadow .15s ease;
}
.route-card:hover{
  border-color:var(--jf-line-strong);box-shadow:var(--jf-shadow-md);color:var(--ink-900);
}
.route-card__icon{
  width:40px;height:40px;border-radius:var(--jf-radius-md);background:var(--gold-50);
  border:1px solid var(--gold-300);color:var(--gold-500);
  display:flex;align-items:center;justify-content:center;
}
.route-card__icon svg{width:21px;height:21px}
.route-card h3{font-size:19px;letter-spacing:-.01em}
.route-card p{font-size:14.5px;color:var(--ink-600);line-height:1.65;flex:1}
.route-card__count{font-size:13px;font-weight:700;color:var(--gold-600)}

/* ---------- asset cards ------------------------------------------------ */
.asset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:991.98px){.asset-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.asset-grid{grid-template-columns:1fr}}

.asset{
  display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--jf-line);border-radius:var(--jf-radius-lg);overflow:hidden;height:100%;box-shadow:var(--jf-shadow-xs);
  transition:border-color .15s ease,box-shadow .15s ease;
}
.asset:hover{
  border-color:var(--jf-line-strong);box-shadow:var(--jf-shadow-md);
}
.asset__top{
  height:78px;flex-shrink:0;
  background:var(--gold-50);
  border-bottom:1px solid var(--gold-200);
  display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 24px;
}
.asset__mark{
  width:42px;height:42px;border-radius:11px;flex-shrink:0;
  background:#fff;border:1px solid var(--gold-200);color:var(--gold-700);
  display:flex;align-items:center;justify-content:center;
}
.asset__mark svg{width:19px;height:19px}
.asset__format{font-size:13px;font-weight:600;color:var(--gold-700);opacity:.75;text-align:right}
.asset__body{padding:20px 24px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.asset h3{font-size:17px;line-height:1.35;color:var(--ink-900)}
.asset p{font-size:14px;line-height:1.62;color:var(--ink-600);flex:1}
.asset__meta{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-size:12.5px;color:var(--ink-500);
}
.asset__foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding-top:14px;margin-top:2px;border-top:1px solid var(--ink-100);
}
.asset__link{font-size:14px;font-weight:700;color:var(--gold-500)}
.asset:hover .asset__link{color:var(--gold-600)}

.tag{
  display:inline-flex;align-items:center;
  font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;
  padding:2px 10px;border-radius:var(--jf-radius-pill);width:fit-content;
}
.tag--gold{background:var(--gold-50);color:var(--gold-700);border:1px solid var(--gold-200)}
.tag--ink{background:var(--ink-100);color:var(--ink-600);border:1px solid var(--ink-200)}
.tag--green{background:var(--jf-success-50);color:var(--jf-success-500);border:1px solid var(--jf-success-200)}
.tag--blue{background:var(--jf-info-50);color:var(--jf-info-500);border:1px solid var(--jf-info-200)}
.tag--plum{background:var(--jf-purple-50);color:var(--jf-purple-500);border:1px solid var(--jf-purple-200)}

.lock{
  display:inline-flex;align-items:center;gap:5px;
  font-size:12px;font-weight:600;color:var(--ink-500);
}
.lock svg{width:12px;height:12px}
.lock--open{color:#5c8a22}

/* ---------- library controls ------------------------------------------- */
.controls{
  background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-radius-lg);
  padding:24px;margin-bottom:34px;box-shadow:var(--jf-shadow-xs);
}
.controls__row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.search{position:relative;flex:1;min-width:250px}
.search input{
  width:100%;height:44px;border:1px solid var(--jf-line-strong);border-radius:var(--jf-radius-md);
  background:#fff;padding:0 16px 0 42px;font-size:16px;font-weight:600;color:var(--jf-ink);
  font-family:inherit;transition:.15s;
}
.search input:focus{outline:none;border-color:var(--jf-teal-300);background:var(--jf-teal-50)}
.search input::placeholder{color:var(--ink-400)}
.search svg{position:absolute;left:15px;top:15px;width:16px;height:16px;color:var(--ink-400)}

.select{position:relative}
.select select{
  appearance:none;-webkit-appearance:none;
  height:44px;border:1px solid var(--jf-line-strong);border-radius:var(--jf-radius-md);background:#fff;
  padding:0 40px 0 16px;font-size:16px;font-weight:600;color:var(--jf-ink);font-family:inherit;cursor:pointer;
}
.select select:focus{outline:none;border-color:var(--jf-teal-300);background:var(--jf-teal-50)}
.select::after{
  content:"";position:absolute;right:16px;top:50%;transform:translateY(-60%) rotate(45deg);
  width:7px;height:7px;border:solid var(--ink-500);border-width:0 2px 2px 0;pointer-events:none;
}

.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--ink-100)}
.chip{
  height:40px;font-family:inherit;font-size:16px;font-weight:700;color:var(--gold-500);
  background:#fff;border:1.5px solid var(--gold-500);border-radius:var(--jf-radius-md);
  padding:0 16px;cursor:pointer;transition:.15s;
}
.chip:hover{background:var(--gold-50);border-color:var(--gold-500);color:var(--gold-700)}
.chip.is-on{background:var(--gold-500);border-color:var(--gold-500);color:#fff}

.result-line{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  margin-bottom:20px;font-size:14px;color:var(--ink-500);
}
.result-line button{
  background:none;border:none;font-family:inherit;font-size:14px;font-weight:600;
  color:var(--gold-500);cursor:pointer;padding:0;
}
.result-line button:hover{color:var(--gold-600);text-decoration:underline}

.empty{
  display:none;text-align:center;padding:70px 20px;
  border:1px dashed var(--ink-300);border-radius:16px;background:#fff;
}
.empty h3{font-size:20px;margin-bottom:10px}
.empty p{color:var(--ink-600);max-width:44ch;margin:0 auto 22px}

/* ---------- video cards ------------------------------------------------ */
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media (max-width:991.98px){.video-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.video-grid{grid-template-columns:1fr}}
.video-section{padding:64px 0}
.video-section + .video-section{padding-top:28px}
@media (max-width:767.98px){
  .video-section{padding:48px 0}
  .video-section + .video-section{padding-top:20px}
}

.video{
  display:flex;flex-direction:column;background:#fff;
  border:1px solid var(--jf-line);border-radius:var(--jf-radius-lg);overflow:hidden;height:100%;box-shadow:var(--jf-shadow-xs);
  color:var(--ink-900);transition:border-color .15s,box-shadow .15s;
}
.video:hover{border-color:var(--jf-line-strong);box-shadow:var(--jf-shadow-md)}
.video__thumb{
  position:relative;aspect-ratio:16/9;background:var(--ink-100);overflow:hidden;
}
.video__thumb iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video__kicker{display:flex;align-items:center;justify-content:space-between;gap:12px}
.video__time{
  color:var(--ink-500);font-size:12.5px;font-weight:600;white-space:nowrap;
}
.video__body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.video h3{font-size:18px;line-height:1.35;color:var(--ink-900)}
.video p{font-size:14px;color:var(--ink-600);line-height:1.6;flex:1}
.video__foot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:6px;border-top:1px solid var(--ink-100)}
.video__meta{font-size:12.5px;color:var(--ink-500)}
.video__link{font-size:12.5px;font-weight:700;color:var(--gold-600)}
.video__link:hover{color:var(--gold-500);text-decoration:underline}

/* ---------- news list -------------------------------------------------- */
.news-list{display:grid;gap:12px}
.news-item{
  display:grid;grid-template-columns:112px minmax(0,1fr) 150px;gap:26px;align-items:center;
  padding:26px 10px;
  color:var(--ink-900);transition:background .18s ease;
}
.news-item:hover{background:var(--gold-50);color:var(--ink-900)}
.news-item__mark{
  width:104px;height:66px;display:flex;align-items:center;justify-content:center;
  padding:12px;background:#fff;border:1px solid var(--ink-100);border-radius:12px;
  box-shadow:0 4px 16px rgba(28,28,28,.04);overflow:hidden;
}
.news-item__mark img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.news-item__copy{min-width:0}
.news-item__meta{display:flex;flex-direction:column;align-items:flex-end;gap:7px;text-align:right}
.news-item__date{font-size:13.5px;font-weight:600;color:var(--ink-500)}
.news-item h3{font-size:19px;line-height:1.35;margin-bottom:6px}
.news-item p{font-size:14.5px;color:var(--ink-600);line-height:1.6;max-width:72ch}
.news-item__where{font-size:13px;color:var(--ink-500)}
@media (max-width:767.98px){
  .news-item{grid-template-columns:76px minmax(0,1fr);gap:12px 18px;padding:22px 4px}
  .news-item__mark{width:76px;height:56px;padding:10px;align-self:start}
  .news-item__meta{grid-column:2;align-items:flex-start;flex-direction:row;gap:8px;text-align:left}
  .news-item__where::before{content:"\00b7";margin-right:8px}
}

/* ---------- form ------------------------------------------------------- */
.form-card{
  background:#fff;border:1px solid var(--jf-line);border-radius:var(--jf-radius-lg);padding:40px;
  box-shadow:var(--jf-shadow-xs);
}
@media (max-width:767.98px){.form-card{padding:28px 22px}}
.field{margin-bottom:18px}
.field label{display:block;font-size:13px;font-weight:700;color:var(--ink-600);margin-bottom:6px}
.field input,.field select,.field textarea{
  width:100%;background:#fff;border:1px solid var(--jf-line-strong);border-radius:var(--jf-radius-md);
  height:44px;padding:0 12px;font-size:16px;font-weight:600;color:var(--jf-ink);font-family:inherit;transition:.15s;
}
.field textarea{height:auto;min-height:96px;padding:12px 14px;resize:vertical}
.field select{
  appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:40px;
  background-image:linear-gradient(45deg,transparent 50%,var(--ink-500) 50%),linear-gradient(135deg,var(--ink-500) 50%,transparent 50%);
  background-position:calc(100% - 20px) 20px,calc(100% - 15px) 20px;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--jf-teal-300);background:var(--jf-teal-50);
}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.field-row{grid-template-columns:1fr}}
.checks{display:grid;gap:10px;margin-top:4px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:var(--ink-700);cursor:pointer}
.check input{width:17px;height:17px;flex-shrink:0;margin-top:2px;accent-color:var(--gold-500)}
.form-note{font-size:13px;color:var(--ink-500);line-height:1.6;margin-top:16px}
.form-ok{
  display:none;background:var(--gold-50);border:1px solid var(--gold-200);
  border-radius:12px;padding:22px 24px;margin-bottom:22px;
}
.form-ok h3{font-size:18px;color:var(--gold-700);margin-bottom:6px}
.form-ok p{font-size:14.5px;color:var(--ink-700)}

/* ---------- side rail -------------------------------------------------- */
.split{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:start}
@media (max-width:991.98px){.split{grid-template-columns:1fr;gap:36px}}
.rail{background:var(--gold-50);border:1px solid var(--gold-200);border-radius:var(--jf-radius-lg);padding:32px 30px}
.rail h3{font-size:18px;margin-bottom:12px}
.rail p{font-size:14.5px;color:var(--ink-600);line-height:1.7;margin-bottom:16px}
.rail ul{margin:0;padding-left:18px;color:var(--ink-600);font-size:14.5px;line-height:1.95}

/* ---------- closing cta ------------------------------------------------ */
.closer{
  position:relative;background:var(--jf-ink);
  padding:96px 0;text-align:center;color:#fff;
}
.closer h2{font-size:42px;line-height:1.15;letter-spacing:-.02em;margin-bottom:18px;max-width:20ch;margin-inline:auto}
@media (max-width:767.98px){.closer{padding:64px 0}.closer h2{font-size:29px}}
.closer p{color:var(--ink-400);font-size:17px;line-height:1.7;max-width:52ch;margin:0 auto 32px}
.closer__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ---------- footer ----------------------------------------------------- */
.site-footer{background:#000;color:#fff;padding:60px 0 40px}
.footer-grid{
  display:grid;grid-template-columns:repeat(5,1fr);gap:32px;padding-bottom:50px;
}
@media (max-width:1199.98px){.footer-grid{grid-template-columns:repeat(3,1fr);gap:40px}}
@media (max-width:767.98px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:32px}}
.footer-col h4{
  font-size:14px;font-weight:700;color:#fff;letter-spacing:.5px;text-transform:uppercase;margin-bottom:14px;
}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col a{font-size:14px;line-height:28px;color:var(--ink-400)}
.footer-col a:hover{color:var(--gold-500)}
.footer-bottom{
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  border-top:1px solid var(--ink-800);padding-top:32px;
}
@media (max-width:991.98px){.footer-bottom{flex-direction:column;text-align:center}}
.footer-bottom img{height:30px;width:auto}
.footer-legal{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.footer-legal a{font-size:13px;font-weight:500;color:var(--ink-400)}
.footer-legal a:hover{color:var(--gold-500)}
.footer-copy{color:var(--ink-500);font-size:13px}


/* Auth pages (login / sign up) */
.form-card--auth{max-width:520px;margin:0 auto}
.form-error{background:#fdf1ef;border:1px solid #e3a99f;border-radius:var(--jf-radius-md);padding:12px 16px;margin-bottom:20px}
.form-error p{font-size:14.5px;color:#8a2c1d;margin:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
