/* CannaMartJE — Obsidian & Gold. Appearance only; see design/appearance-baseline.json. */
:root{
  --cm-neutral-050704e8:#060608e8;
  --cm-neutral-070906c9:#070709c9;
  --cm-neutral-080b07bb:#08080abb;
  --cm-neutral-0c100b:#0c0c0e;
  --cm-neutral-0e110c:#0d0d0f;
  --cm-neutral-0e281acc:#171719cc;
  --cm-neutral-0f1411:#101012;
  --cm-neutral-10120e:#0e0e10;
  --cm-neutral-10140e:#0f0f11;
  --cm-neutral-101412:#101012;
  --cm-neutral-10160d:#101012;
  --cm-neutral-101611:#111113;
  --cm-neutral-10180c:#101012;
  --cm-neutral-111310:#101012;
  --cm-neutral-111310b0:#101012b0;
  --cm-neutral-111310bb:#101012bb;
  --cm-neutral-11150e:#101012;
  --cm-neutral-11150f:#101012;
  --cm-neutral-11150fee:#101012ee;
  --cm-neutral-11160e:#101012;
  --cm-neutral-11160f:#101012;
  --cm-neutral-11170e:#101012;
  --cm-neutral-11180e:#111113;
  --cm-neutral-12150f:#101012;
  --cm-neutral-12160f:#101012;
  --cm-neutral-12170f:#111113;
  --cm-neutral-121b0fcc:#121214cc;
  --cm-neutral-122019:#161618;
  --cm-neutral-131810:#121214;
  --cm-neutral-131a0e:#121214;
  --cm-neutral-141810:#121214;
  --cm-neutral-141812:#121214;
  --cm-neutral-141a11:#131315;
  --cm-neutral-14231b:#18181a;
  --cm-neutral-151813:#131315;
  --cm-neutral-151918:#141416;
  --cm-neutral-151a12:#131315;
  --cm-neutral-151a17:#151517;
  --cm-neutral-151c10:#131315;
  --cm-neutral-151d11dd:#141416dd;
  --cm-neutral-153725:#212123;
  --cm-neutral-153824:#212123;
  --cm-neutral-161a12:#131315;
  --cm-neutral-171911:#121214;
  --cm-neutral-171b11:#131315;
  --cm-neutral-171b12:#141416;
  --cm-neutral-171b14:#151517;
  --cm-neutral-171b15:#151517;
  --cm-neutral-171b18:#161618;
  --cm-neutral-171c13:#151517;
  --cm-neutral-171c14e8:#151517e8;
  --cm-neutral-172012:#161618;
  --cm-neutral-173c2c15:#23232515;
  --cm-neutral-181b13:#141416;
  --cm-neutral-182010:#151517;
  --cm-neutral-183b2a:#232325;
  --cm-neutral-191c16:#161618;
  --cm-neutral-191d16:#161618;
  --cm-neutral-191d17:#171719;
  --cm-neutral-191f1b:#18181a;
  --cm-neutral-192215:#18181a;
  --cm-neutral-193d2c:#252527;
  --cm-neutral-193d2c0b:#2525270b;
  --cm-neutral-193d2c25:#25252725;
  --cm-neutral-193d2c50:#25252750;
  --cm-neutral-193d2c70:#25252770;
  --cm-neutral-1a1e15:#161618;
  --cm-neutral-1a2017:#18181a;
  --cm-neutral-1a2115:#171719;
  --cm-neutral-1a211565:#17171965;
  --cm-neutral-1a2116:#18181a;
  --cm-neutral-1b1e18:#171719;
  --cm-neutral-1b201e:#19191b;
  --cm-neutral-1b2118:#19191b;
  --cm-neutral-1b2216:#18181a;
  --cm-neutral-1b2217:#19191b;
  --cm-neutral-1b221c:#1a1a1c;
  --cm-neutral-1b2416:#19191b;
  --cm-neutral-1b3020:#202022;
  --cm-neutral-1c2019:#19191b;
  --cm-neutral-1c2117:#18181a;
  --cm-neutral-1c2118:#19191b;
  --cm-neutral-1c2219:#19191b;
  --cm-neutral-1c221e:#1b1b1d;
  --cm-neutral-1c2317:#19191b;
  --cm-neutral-1c3023:#212123;
  --cm-neutral-1d2119:#19191b;
  --cm-neutral-1d2218:#19191b;
  --cm-neutral-1d2318:#19191b;
  --cm-neutral-1d2319:#1a1a1c;
  --cm-neutral-1d2417:#19191b;
  --cm-neutral-1d2617:#1a1a1c;
  --cm-neutral-1e251b:#1c1c1e;
  --cm-neutral-1e2918:#1c1c1e;
  --cm-neutral-202219:#19191b;
  --cm-neutral-20251c:#1c1c1e;
  --cm-neutral-20271d:#1d1d1f;
  --cm-neutral-202720:#1e1e20;
  --cm-neutral-20281b:#1d1d1f;
  --cm-neutral-20291c:#1e1e20;
  --cm-neutral-202b19:#1d1d1f;
  --cm-neutral-22261e:#1d1d1f;
  --cm-neutral-22291a:#1d1d1f;
  --cm-neutral-222b20:#202022;
  --cm-neutral-222c1d:#1f1f21;
  --cm-neutral-23251c:#1c1c1e;
  --cm-neutral-234e36:#303032;
  --cm-neutral-242b1e:#1f1f21;
  --cm-neutral-242c1d:#1f1f21;
  --cm-neutral-242d1e:#202022;
  --cm-neutral-25291e:#1e1e20;
  --cm-neutral-252c1f:#202022;
  --cm-neutral-252d1e:#202022;
  --cm-neutral-252d20:#212123;
  --cm-neutral-252e1f:#212123;
  --cm-neutral-25301e:#212123;
  --cm-neutral-26321e:#222224;
  --cm-neutral-263924:#28282a;
  --cm-neutral-272b20:#202022;
  --cm-neutral-282c22:#212123;
  --cm-neutral-282d1d:#202022;
  --cm-neutral-282f21:#222224;
  --cm-neutral-292a1d:#1e1e20;
  --cm-neutral-292c21:#212123;
  --cm-neutral-292d26:#232325;
  --cm-neutral-293421:#242426;
  --cm-neutral-2a2e21:#222224;
  --cm-neutral-2b2d20:#212123;
  --cm-neutral-2b321f:#232325;
  --cm-neutral-2b3322:#242426;
  --cm-neutral-2c3025:#242426;
  --cm-neutral-2c3622:#262628;
  --cm-neutral-2e321f:#232325;
  --cm-neutral-303b21:#272729;
  --cm-neutral-303b2b:#2b2b2d;
  --cm-neutral-303d25:#2a2a2c;
  --cm-neutral-303d26:#2a2a2c;
  --cm-neutral-313628:#28282a;
  --cm-neutral-313725:#272729;
  --cm-neutral-313827:#28282a;
  --cm-neutral-31392b:#2b2b2d;
  --cm-neutral-323b2b:#2b2b2d;
  --cm-neutral-333c25:#29292b;
  --cm-neutral-333d27:#2b2b2d;
  --cm-neutral-343822:#262628;
  --cm-neutral-343d2a:#2c2c2e;
  --cm-neutral-363b27:#2a2a2c;
  --cm-neutral-363c30:#2e2e30;
  --cm-neutral-363e2a:#2c2c2e;
  --cm-neutral-36412d:#2f2f31;
  --cm-neutral-383c30:#2e2e30;
  --cm-neutral-39473e:#363638;
  --cm-neutral-3a482222:#2d2d2f22;
  --cm-neutral-3b4034:#313133;
  --cm-neutral-3b463d:#373739;
  --cm-neutral-3c452e:#313133;
  --cm-neutral-3e4930:#333335;
  --cm-neutral-40452f:#313133;
  --cm-neutral-404632:#333335;
  --cm-neutral-414833:#343436;
  --cm-neutral-42482d:#323234;
  --cm-neutral-43482a55:#30303255;
  --cm-neutral-455047:#3f3f41;
  --cm-neutral-49624d:#48484a;
  --cm-neutral-4a503b:#3b3b3d;
  --cm-neutral-4c583b:#3e3e40;
  --cm-neutral-4e573d:#3e3e40;
  --cm-neutral-505643:#404042;
  --cm-neutral-536050:#4a4a4c;
  --cm-neutral-555844:#424244;
  --cm-neutral-55704c:#4f4f51;
  --cm-neutral-56814b:#6e6e70;
  --cm-neutral-575e47:#454547;
  --cm-neutral-58644f80:#4b4b4d80;
  --cm-neutral-596044:#454547;
  --cm-neutral-596446:#48484a;
  --cm-neutral-596c4c:#4d4d4f;
  --cm-neutral-5c6b5d:#545456;
  --cm-neutral-606a49:#4b4b4d;
  --cm-neutral-626b4e:#4e4e50;
  --cm-neutral-626d4b:#4d4d4f;
  --cm-neutral-64725270:#52525470;
  --cm-neutral-65694e:#4d4d4f;
  --cm-neutral-65705a:#555557;
  --cm-neutral-6c755e:#727274;
  --cm-neutral-727f4e:#6e6e70;
  --cm-neutral-73866566:#7e7e8066;
  --cm-neutral-838e674a:#8282844a;
  --cm-neutral-839274:#8b8b8d;
  --cm-neutral-858b7d:#8c8c8e;
  --cm-neutral-88917366:#8a8a8c66;
  --cm-neutral-8c968c:#98989a;
  --cm-neutral-8d967f:#929294;
  --cm-neutral-8d9d6f55:#8e8e9055;
  --cm-neutral-8d9e724f:#9090924f;
  --cm-neutral-8e9982:#969698;
  --cm-neutral-8f9c7655:#90909255;
  --cm-neutral-8f9d7b:#939395;
  --cm-neutral-8f9e80:#969698;
  --cm-neutral-91a4782a:#9696982a;
  --cm-neutral-91cea6:#b8b8ba;
  --cm-neutral-929b85:#98989a;
  --cm-neutral-929c91:#9e9ea0;
  --cm-neutral-92a180:#98989a;
  --cm-neutral-94a380:#9a9a9c;
  --cm-neutral-97a686:#9e9ea0;
  --cm-neutral-98a58a:#a0a0a2;
  --cm-neutral-99a68b:#a0a0a2;
  --cm-neutral-99a789:#a0a0a2;
  --cm-neutral-9a9e90:#9e9ea0;
  --cm-neutral-9ba69b:#a8a8aa;
  --cm-neutral-9ba98a:#a2a2a4;
  --cm-neutral-9bad8020:#9e9ea020;
  --cm-neutral-9eae8a:#a3a3a5;
  --cm-neutral-a1ad91:#a6a6a8;
  --cm-neutral-a2ae91:#a8a8aa;
  --cm-neutral-a2b08e:#a6a6a8;
  --cm-neutral-a3b08e:#a6a6a8;
  --cm-neutral-a4b391:#aaaaac;
  --cm-neutral-a4ba87:#a8a8aa;
  --cm-neutral-a5ad98:#ababad;
  --cm-neutral-a5b58925:#a6a6a825;
  --cm-neutral-a5b58935:#a6a6a835;
  --cm-neutral-a6a996:#a8a8aa;
  --cm-neutral-a6aca0:#aeaeb0;
  --cm-neutral-a6aca7:#b0b0b2;
  --cm-neutral-a6b39a:#aeaeb0;
  --cm-neutral-a6b496:#acacae;
  --cm-neutral-a6b88b50:#aaaaac50;
  --cm-neutral-a8b096:#ababad;
  --cm-neutral-a8b09b:#aeaeb0;
  --cm-neutral-a8b499:#aeaeb0;
  --cm-neutral-a9ad9e:#aeaeb0;
  --cm-neutral-a9b69a:#b0b0b2;
  --cm-neutral-aab698:#aeaeb0;
  --cm-neutral-aab69a:#b0b0b2;
  --cm-neutral-acb79b:#b0b0b2;
  --cm-neutral-acba98:#b0b0b2;
  --cm-neutral-adb3a1:#b2b2b4;
  --cm-neutral-adb49f:#b2b2b4;
  --cm-neutral-adb99c:#b2b2b4;
  --cm-neutral-adba8b50:#ababad50;
  --cm-neutral-adbc8033:#a6a6a833;
  --cm-neutral-aeb6a3:#b4b4b6;
  --cm-neutral-aeb9a2:#b6b6b8;
  --cm-neutral-aeba9b:#b2b2b4;
  --cm-neutral-aeba9d:#b3b3b5;
  --cm-neutral-aebaaa:#bababc;
  --cm-neutral-afb39c:#b0b0b2;
  --cm-neutral-afbc9435:#b0b0b235;
  --cm-neutral-afbd9440:#b0b0b240;
  --cm-neutral-b0ba9e:#b3b3b5;
  --cm-neutral-b1baa5:#b8b8ba;
  --cm-neutral-b1bca4:#b8b8ba;
  --cm-neutral-b3c29d:#b8b8ba;
  --cm-neutral-b4b6a9:#b8b8ba;
  --cm-neutral-b4bdb6:#c0c0c2;
  --cm-neutral-b4c1a0:#b8b8ba;
  --cm-neutral-b4c1a2:#bababc;
  --cm-neutral-b4c2a0:#b8b8ba;
  --cm-neutral-b5b99d:#b2b2b4;
  --cm-neutral-b5bfa4:#bababc;
  --cm-neutral-b6bcac:#bcbcbe;
  --cm-neutral-b6bea8:#bbbbbd;
  --cm-neutral-b6bfaa:#bcbcbe;
  --cm-neutral-b7e6a5:#ceced0;
  --cm-neutral-b8bea9:#bcbcbe;
  --cm-neutral-b8c3a9:#bebec0;
  --cm-neutral-b9bdac:#bcbcbe;
  --cm-neutral-b9bfad:#bebec0;
  --cm-neutral-b9c0aa:#bcbcbe;
  --cm-neutral-b9c5a8:#bebec0;
  --cm-neutral-b9c5a9:#bebec0;
  --cm-neutral-bac5ae:#c2c2c4;
  --cm-neutral-bac7b6:#c6c6c8;
  --cm-neutral-bac8a6:#bebec0;
  --cm-neutral-bbc1a9:#bcbcbe;
  --cm-neutral-bbc3af:#c0c0c2;
  --cm-neutral-bbc6ac:#c0c0c2;
  --cm-neutral-bbc8ac:#c2c2c4;
  --cm-neutral-becda5:#c0c0c2;
  --cm-neutral-bfc4b1:#c2c2c4;
  --cm-neutral-bfc4bd:#c8c8ca;
  --cm-neutral-c0c8b0:#c3c3c5;
  --cm-neutral-c0cfa025:#c0c0c225;
  --cm-neutral-c1c8b6:#c6c6c8;
  --cm-neutral-c1c9b4:#c6c6c8;
  --cm-neutral-c1ccb3:#c8c8ca;
  --cm-neutral-c2c8b7:#c8c8ca;
  --cm-neutral-c2cbc2:#ceced0;
  --cm-neutral-c3ccb1:#c6c6c8;
  --cm-neutral-c3ceaf:#c6c6c8;
  --cm-neutral-c4c6b6:#c6c6c8;
  --cm-neutral-c4c9b00b:#c4c4c60b;
  --cm-neutral-c5c8b7:#c8c8ca;
  --cm-neutral-c5d0b7:#ccccce;
  --cm-neutral-c5d2b1:#cacacc;
  --cm-neutral-c7ccbb65:#ccccce65;
  --cm-neutral-c7cdb4:#c8c8ca;
  --cm-neutral-c8d4c0:#d2d2d4;
  --cm-neutral-cacdbf:#ceced0;
  --cm-neutral-ced9c7:#d8d8da;
  --cm-neutral-d0daba40:#d2d2d440;
  --cm-neutral-d0dcac:#ccccce;
  --cm-neutral-d2d8d0:#dcdcde;
  --cm-neutral-d2daaa:#cacacc;
  --cm-neutral-d2dfba:#d4d4d6;
  --cm-neutral-d3dec3:#d8d8da;
  --cm-neutral-d4d8cc:#dadadc;
  --cm-neutral-d5dbbc55:#d3d3d555;
  --cm-neutral-d6d8c9:#d8d8da;
  --cm-neutral-d6d8ce:#dbdbdd;
  --cm-neutral-d6decb:#dcdcde;
  --cm-neutral-d6dfca:#dcdcde;
  --cm-neutral-d6e0cd:#dedee0;
  --cm-neutral-d7dacd:#dcdcde;
  --cm-neutral-dadccf:#dedee0;
  --cm-neutral-dce1cf:#e0e0e2;
  --cm-neutral-e0e4d5:#e4e4e6;
  --cm-neutral-e0e4d7:#e6e6e8;
  --cm-neutral-e0e5d6:#e6e6e8;
  --cm-neutral-e0e7d5:#e6e6e8;
  --cm-neutral-e2e9d7:#e8e8ea;
  --cm-neutral-e3e5da:#e8e8ea;
  --cm-neutral-e3e6d6:#e6e6e8;
  --cm-neutral-e3ebd7:#e8e8ea;
  --cm-neutral-e4ebd7:#e8e8ea;
  --cm-neutral-e6e8dc:#eaeaec;
  --cm-neutral-e9ecdd:#ececee;
  --cm-neutral-e9edde:#eeeef0;
  --cm-neutral-ecf0df:#f0f0f2;
  --cm-neutral-edf0e2:#f0f0f2;
  --cm-neutral-edf0e4:#f2f2f4;
  --cm-neutral-edf1dc25:#eeeef025;
  --cm-neutral-eef0e5:#f2f2f4;
  --cm-neutral-eff1e8:#f2f2f4;
  --cm-neutral-f0f1e8:#f2f2f4;
  --cm-neutral-f0f1e9:#f2f2f4;
  --cm-neutral-f1f2e8:#f2f2f4;
}

/* A single black-and-gold system, with the existing page hierarchy intact. */
:root,
body.cms-body {
  color-scheme: dark;
  --bg: #0a0a0c;
  --text: #f2f1ed;
  --gold: #d9b96f;
  --muted: #a8a8aa;
  --line: #ffffff16;
  --panel: #161618;
  --cm-gold: #d9b96f;
  --cm-panel: #161618;
  --cm-border: #2e2e30;
  --cm-muted: #b8b8ba;
  --cms-bg: #0a0a0c;
  --cms-surface: #131315;
  --cms-panel: #1a1a1c;
  --cms-line: #2f2f31;
  --cms-gold: #d9b96f;
  --cms-text: #f2f1ed;
  --cms-muted: #b4b4b6;
  --cm-edge: #d9b96f36;
  --cm-shadow: 0 18px 50px #0003;
}
body,
body.workspace-page,
body.cms-body {
  background: radial-gradient(ellipse at 85% 0, #d9b96f08, transparent 32rem), #0a0a0c;
  color: var(--text);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
::selection { background: #d9b96f; color: #121214; }
h1, h2, h3 { text-wrap: balance; }
h2 { font-family: 'DM Sans', Arial, sans-serif; font-weight: 600; font-size: clamp(2rem, 3.2vw, 3.1rem); line-height: 1.13; letter-spacing: -.045em; }
h3 { letter-spacing: -.025em; }
em { color: var(--gold); }
.eyebrow { color: var(--gold); letter-spacing: .15em; font-size: .75rem; line-height: 1.65; }
a, button { -webkit-tap-highlight-color: #d9b96f22; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid #f4d991; outline-offset: 4px; }
.button,
.cms-body .cms-main .button {
  min-height: 48px;
  border-radius: 8px;
  border-color: #ffffff30;
  font-size: .9375rem;
  font-weight: 600;
  letter-spacing: -.01em;
  padding: 13px 22px;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.button.gold {
  color: #17130b;
  border-color: #e4c984;
  background: linear-gradient(115deg, #f0d79b 0%, #dbb96c 60%, #c6a154 100%);
  box-shadow: inset 0 1px 0 #fff7, 0 4px 18px #d9b96f10;
}
.button.gold:hover { background: linear-gradient(115deg, #f8e4b5, #e5c480); box-shadow: 0 6px 24px #d9b96f24; }
.button.outline { background: #ffffff03; color: #e9e5da; }
.button.outline:hover { border-color: var(--gold); background: #d9b96f0c; }
.button:disabled { box-shadow: none; opacity: .5; }
.text-link, .back-link, .hero-forum { color: #e0c484; text-underline-offset: 5px; }
.text-link { line-height: 1.5; border-bottom-color: #d9b96f60; }
input, select, textarea { accent-color: var(--gold); }
:where(.workspace-page, .cms-body, dialog, .account-card, .support-inbox) :is(input:not([type=checkbox]):not([type=radio]):not([type=file]), select, textarea),
.cms-body .cms-main :is(input:not([type=checkbox]):not([type=radio]):not([type=file]), select, textarea) {
  background: #0e0e10;
  color: #f2f1ed;
  border-color: #3b3b3d;
  border-radius: 8px;
  box-shadow: inset 0 1px 3px #0003;
}
input::placeholder, textarea::placeholder { color: #9b9b9d; opacity: 1; }

/* Navigation: the same links, in a quieter, crisper frame. */
.topbar { background: #0a0a0c; color: #c9b47f; border-bottom: 1px solid #d9b96f20; padding-block: 8px; }
.topbar .preview-label { color: #acacae; }
header:not(.cms-header), .workspace-page header:not(.cms-header) {
  background: #0d0d0f;
  border-bottom: 1px solid #ffffff12;
  gap: 22px;
}
.brand { color: #f2f1ed; }
.brand-logo .brand-type { letter-spacing: -.055em; }
.brand-logo .brand-type b, .brand-logo .brand-type small { color: var(--gold); }
.brand-logo i { color: #acacae; }
header nav { gap: clamp(16px, 1.8vw, 30px); }
header nav a { font-size: .875rem; color: #c7c7c9; border-bottom: 2px solid transparent; padding-block: 12px; transition: color .15s, border-color .15s; }
header nav a:hover, header nav a.active, header nav a[aria-current=page] { color: #f0d79b; border-color: var(--gold); }
.header-account-link, .header-register-link { color: #dedbd4; }
.header-actions .basket-link { background: linear-gradient(135deg, #e8cd8b, #c49c49); border: 1px solid #eedb9f; color: #15120a; border-radius: 8px; box-shadow: inset 0 1px 0 #fff5; }
.header-actions .basket-link:hover { background: #f0d79b; }
.header-actions .basket-link .cart-count { background: #121214; color: #f2d893; }
#mobile-nav { background: #121214; border-color: #d9b96f30; box-shadow: 0 16px 30px #0004; }
#mobile-nav a { border-color: #ffffff12; }
.workspace-bar { background: #121214; border-bottom: 1px solid var(--cm-edge); padding-block: 14px; }
.workspace-bar a { background: #1a1a1c; border: 1px solid #ffffff15; border-radius: 7px; color: #cbcbcd; min-height: 40px; }
.workspace-bar a:hover { background: #d9b96f0a; color: var(--gold); }

/* Home: generous type, a framed product photograph and precise section rhythm. */
.hero { max-width: 1520px; margin: auto; padding: 48px 5% 64px; min-height: 0; gap: clamp(28px, 4vw, 65px); grid-template-columns: 1.12fr 1fr; align-items: center; border: 0; overflow: visible; }
.hero-content { padding: 24px 0; }
.hero .eyebrow { margin-bottom: 26px; }
.hero h1 { font-size: clamp(4rem, 6.8vw, 6.8rem); line-height: .97; letter-spacing: -.035em; white-space: normal; margin-bottom: 28px; }
.hero h1 em { color: #e4c785; }
.hero p { color: #bbbbbd; font-size: 1.0625rem; line-height: 1.85; max-width: 31rem; }
.hero-buttons { gap: 24px; margin-top: 32px; }
.hero-bottom { border-top: 1px solid #ffffff14; padding-top: 22px; margin-top: 36px; color: #b1b1b3; gap: 14px 24px; line-height: 1.7; }
.hero-image-wrap { height: clamp(430px, 42vw, 600px); border: 1px solid #d9b96f50; border-radius: 20px; background: #18181a; box-shadow: 0 24px 70px #0006, 0 0 60px #d9b96f06; overflow: hidden; }
.flavour-photo { border-radius: 0; background: #18181a; filter: none; height: 100%; width: 100%; object-fit: cover; }
.hero-image-wrap:after { background: linear-gradient(0deg, #0a0a0cef 0%, #0a0a0c40 26%, transparent 55%); }
.extract-caption { bottom: 30px; left: 30px; right: 24px; }
.extract-caption span { font-size: .6875rem; line-height: 1.6; letter-spacing: .12em; color: #ebd5a4; }
.extract-caption strong { font-family: 'DM Sans', Arial, sans-serif; font-size: clamp(1.25rem, 1.8vw, 1.65rem); line-height: 1.18; font-weight: 600; letter-spacing: -.03em; color: #f6f3ea; }
.values { background: #121214; border-block: 1px solid #ffffff12; color: #c5bdab; padding-block: 19px; letter-spacing: .12em; }
.values b { color: #756340; }
.section { padding-block: clamp(56px, 6vw, 88px); }
.section-heading { align-items: end; gap: 40px; margin-bottom: 36px; }
.section-heading p { color: #aeaeb0; }
.oregon-section { background: #121214; border-bottom: 1px solid #ffffff12; gap: 28px 65px; }
.oregon-section h2 { font-size: clamp(2rem, 3.6vw, 3.3rem); }
.oregon-section p.lead { color: #dedbd2; }
.oregon-pillars { color: #b9b9bb; border-color: #ffffff16; padding-top: 24px; }
.oregon-pillars b { color: #dec285; }
.shipping-route { justify-self: stretch; display: flex; justify-content: space-between; width: 100%; padding: 20px 24px; margin-block: 6px; background: linear-gradient(110deg, #d9b96f09, #131315); border: 1px solid #d9b96f2a; border-radius: 12px; opacity: 1; }
.shipping-route .route-place { display: flex; flex-direction: row; gap: 12px; align-items: center; }
.shipping-route .route-place strong { color: #e5dfd2; font-size: .875rem; font-family: 'DM Sans', Arial, sans-serif; letter-spacing: .12em; }
.shipping-route .route-flag { background: #ffffff05; border: 1px solid #ffffff15; padding: 9px; border-radius: 8px; font-size: 1.7rem; }
.shipping-route .route-transit { flex: 1; margin-inline: 20px; color: #cdbb93; }
.route-rule { background: linear-gradient(90deg, #d9b96f20, #d9b96f85); max-width: 100px; }
.route-connection-label { font-size: .6875rem; letter-spacing: .14em; }

/* Product presentation, retaining both list and grid views. */
.product-grid { gap: 28px; }
.product-card, .catalogue-card { background: linear-gradient(145deg, #1c1c1e, #131315); border: 1px solid #ffffff1c; border-radius: 14px; box-shadow: 0 6px 24px #0002; transition: border-color .18s, box-shadow .18s; }
.product-card:hover, .catalogue-card:hover { border-color: #d9b96f80; box-shadow: 0 12px 35px #0004; }
.filmed-product, .catalogue-image { background: #19191b; border-radius: 0; }
.filmed-product img { filter: none; }
.product-info { padding: 25px 26px; }
.product-info>small, .catalogue-info>small { color: #c7b685; font-size: .6875rem; line-height: 1.65; letter-spacing: .1em; }
.product-info h3 { color: #f4f1ea; font-size: 1.5rem; font-weight: 600; letter-spacing: -.035em; }
.product-info p, .catalogue-info p { color: #b6b6b8; font-size: .9375rem; line-height: 1.8; }
.product-price, .catalogue-price { color: #ead098; font-size: 1.5rem; border-color: #ffffff16; font-variant-numeric: tabular-nums; }
.product-price small, .catalogue-price small, .catalogue-price span { color: #ababad; font-size: .75rem; line-height: 1.5; letter-spacing: 0; }
.stock, .status-label { background: #121214e8; color: #e1dcd0; border: 1px solid #d9b96f50; border-radius: 5px; font-size: .6875rem; letter-spacing: .06em; padding: 7px 10px; }
.stock.available, .status-label.available { color: #cbe7cf; border-color: #75a88680; background: #14251be8; }
.workspace-main { padding-top: 38px; }
.workspace-heading { padding-bottom: 24px; border-bottom: 1px solid #ffffff13; margin-bottom: 28px; }
.workspace-heading h1 { font-size: clamp(2.4rem, 4.3vw, 4rem); line-height: 1.08; letter-spacing: -.035em; }
.workspace-heading p { color: #b4b4b6; line-height: 1.8; }
.breadcrumb { font-size: .8125rem; color: #a9a9ab; }
.workspace-toolbar { background: #141416; border-radius: 12px; border-color: #ffffff1a; padding: 16px; gap: 16px; }
.filter-tabs { gap: 8px; }
.filter-tabs button, .view-switch button { border-radius: 7px; color: #c9c9cb; background: #ffffff03; border-color: #ffffff17; font-size: .8125rem; line-height: 1.5; padding: 9px 12px; min-height: 40px; }
.filter-tabs button:hover, .view-switch button:hover { border-color: #d9b96f70; }
.filter-tabs button.selected, .view-switch button.selected { background: #e1c383; color: #17130d; border-color: #eedca9; }
.view-switch { padding: 3px; background: #0a0a0c; border-radius: 9px; border: 1px solid #ffffff10; }
.list-summary { color: #b3b3b5; }
.list-view .catalogue-card { grid-template-columns: 195px minmax(0, 1fr); }
.list-view .catalogue-info { padding: 24px; }
.list-view .catalogue-info h2, .catalogue-info h2 { font-weight: 600; letter-spacing: -.035em; }
[data-workspace=shop] .shop-category-heading { color: #dfcb9e; border-color: #d9b96f30; font-size: 1.3rem; padding-block: 16px; margin-top: 20px; }
.side-panel, .workspace-panel, .account-sidebar { background: #141416; border-color: #ffffff1b; border-radius: 12px; }
.side-panel h2 { color: #f0ece3; font-size: 1.125rem; }
.side-panel h3 { color: #c3b590; }
.side-panel p, .workspace-panel p { color: #b5b5b7; }
.product-detail-layout { gap: clamp(28px, 4vw, 64px); }
.product-detail-image { border-radius: 14px; border: 1px solid #ffffff1b; background: #161618; }
.gallery-thumbs button { border-radius: 8px; overflow: hidden; background: #161618; }
.gallery-thumbs button[aria-pressed=true] { border-color: var(--gold); box-shadow: 0 0 0 1px var(--gold); }
.detail-panel { border-top: 1px solid #d9b96f60; padding-top: 24px; }
.large-price { color: #e4c785; font-size: 2.4rem; font-weight: 500; letter-spacing: -.035em; }
.seller-line, .spec-list dt { color: #b0b0b2; }
.spec-list dd { color: #e1dfd8; }
.product-enquiry { border-color: #ffffff18; }
.product-basket-actions .button { justify-content: center; }
.profile-tabs { border-color: #ffffff1a; gap: 8px; }
.profile-tabs button { border-radius: 8px 8px 0 0; color: #c4c4c6; background: #121214; border-color: #ffffff16; font-size: .875rem; }
.profile-tabs button[aria-selected=true] { color: #e5c98c; border-color: #d9b96f70; background: #d9b96f10; }
.profile-panel { background: #141416; border-color: #ffffff1b; border-radius: 0 12px 12px 12px; }
.profile-panel h3 { font-family: 'DM Sans', Arial, sans-serif; font-size: 1.3rem; font-weight: 600; }
.profile-note { color: #aaaaac; line-height: 1.75; }
.profile-legend>div { border-color: #ffffff12; }
.profile-compound[aria-pressed=true] { color: #f1d79f; }
.wheel-centre strong { color: #f4eee2; }
.wheel-centre span { color: #b6b6b8; }

/* Knowledge and the process remain the same articles, with a unified frame. */
.guides-section { background: #101012; margin: 0; border-block: 1px solid #ffffff14; }
.guide-grid { gap: 24px; }
.guide-card { background: #171719; border: 1px solid #ffffff1b; border-radius: 12px; overflow: hidden; transition: border-color .18s; }
.guide-card:hover { border-color: #d9b96f80; }
.guide-art { padding: 28px 26px 40px; min-height: 240px; border-bottom: 1px solid #d9b96f24; background: linear-gradient(135deg, #d9b96f10, #161618 70%)!important; color: #f0ede6!important; }
.guide-art>span { font-size: 2.8rem; line-height: .98; letter-spacing: -.025em; }
.guide-art small { left: 26px; bottom: 18px; color: #b0a48b; font-size: .6875rem; letter-spacing: .1em; }
.guide-body { padding: 24px 26px; }
.guide-body small { color: #c4b283; font-size: .6875rem; letter-spacing: .09em; }
.guide-body h3 { font-weight: 600; line-height: 1.35; font-size: 1.25rem; color: #efede7; }
.guide-body p { color: #aeaeb0; line-height: 1.8; }
.knowledge-links { gap: 12px 28px; color: #d8c18f; }
.knowledge-links button { line-height: 1.8; }
.guide-index { border: 0; display: grid; gap: 12px; }
.guide-index-card { background: #161618; border: 1px solid #ffffff18; border-radius: 10px; padding: 24px; transition: border-color .18s; }
.guide-index-card:hover { background: #1c1c1e; border-color: #d9b96f70; }
.guide-number { color: #d7ba79; }
.guide-index-card small { color: #c3b38b; font-size: .6875rem; }
.guide-index-card h2 { color: #eeece7; font-weight: 500; }
.reading-article, .thread-article { background: #141416; border: 1px solid #ffffff1b; border-radius: 14px; padding: clamp(24px, 4vw, 48px); }
.reading-article p, .thread-article p, .reading-article li, .thread-article li { color: #cacacc; font-size: 1rem; line-height: 1.9; }
.reading-article h2, .reading-article h3, .thread-article h2, .thread-article h3 { color: #f0ede7; line-height: 1.3; letter-spacing: -.025em; }
.reading-article .notice, .thread-article .notice { background: #d9b96f09; border-left-color: #caaa67; border-radius: 0 8px 8px 0; color: #d6cfbf; }
.reading-article a, .thread-article a { color: #e1c484; }
.process-grid { gap: 24px; }
.process-grid article { border-radius: 12px; border-color: #ffffff1c; background: #161618; }
.process-grid article>div { padding: 26px; }
.process-grid h3 { font-family: 'DM Sans', Arial, sans-serif; font-size: 1.4rem; font-weight: 600; letter-spacing: -.035em; color: #f0ede7; }
.process-grid .eyebrow { font-size: .6875rem; line-height: 1.75; }
.process-grid p { color: #b8b8ba; line-height: 1.85; }
.process-grid figcaption { color: #eee; }
.resin-values { border-color: #ffffff15; gap: 24px; }
.resin-values article { border-top: 1px solid #d9b96f45; padding-top: 24px; }
.resin-values article>span { color: #c8aa6d; }
.resin-values h3 { color: #eeebe3; }
.resin-values p { color: #afafb1; }

/* Community: familiar categories and posts, clearer contrast and comfortable reading. */
.community-card { background: radial-gradient(ellipse at top right, #d9b96f12, transparent 75%), #141416; border: 1px solid #d9b96f45; border-radius: 14px; padding: 34px; box-shadow: var(--cm-shadow); }
.community-card h3 { font-size: 2.6rem; line-height: 1; }
.community-card p, .community-card small { color: #bcbcbe; }
.activity-panel { border-color: #d9b96f45; }
.activity-row, .topic-row { border-color: #ffffff14; }
.topic-icon, .topic-avatar, .author-avatar, .support-avatar { background: #d9b96f10; border-color: #d9b96f38; color: #e2c58b; }
.topic-icon { border: 1px solid #d9b96f38; }
.topic-list { border: 0; border-radius: 0; display: grid; gap: 12px; }
.topic-row, .live-home-discussions .topic-row { background: #161618; border: 1px solid #ffffff1a; border-radius: 12px; padding: 24px; transition: border-color .16s, background .16s; }
.topic-row:hover, .live-home-discussions .topic-row:hover { background: #1c1c1e; border-color: #d9b96f60; }
.topic-row h2 { font-size: 1.0625rem; color: #f0ede7; line-height: 1.5; font-weight: 600; letter-spacing: -.025em; }
.topic-description p { color: #a9a9ab; }
.topic-labels { color: #c3b185; }
.reply-summary strong { color: #dfc48c; }
.reply-summary span { color: #a8a8aa; }
.topic-photo-preview { border-radius: 8px; border-color: #ffffff20; }
.forum-banner { background: #d9b96f08; border: 1px solid #d9b96f38; border-radius: 10px; padding: 19px 22px; }
.forum-banner p { color: #bababc; }
.forum-banner strong { color: #e7ddc6; }
.pin-mark, .pinned-label { background: #d9b96f13; color: #e2c68b; border: 1px solid #d9b96f22; border-radius: 4px; }
.category-link { color: #c4c4c6; padding: 13px 12px; border-color: #ffffff0f; border-radius: 6px; line-height: 1.5; }
.category-link>span { background: #ffffff07; color: #bcbcbe; border-radius: 5px; }
.category-link:hover { background: #ffffff04; color: #f0ddaf; }
.category-link.selected, .forum-workspace .category-link[aria-current=page] { background: #d9b96f10; color: #efdba9; border-left-color: #d9b96f; }
.forum-compose-entry { background: linear-gradient(110deg, #d9b96f09, #161618); border-color: #d9b96f50; border-radius: 14px; padding: 24px; }
.forum-compose-entry strong { color: #e9d5a5; }
.forum-compose-entry p { color: #b6b6b8; }
.forum-compose-prompt { background: #0e0e10; border-color: #ffffff22; border-radius: 9px; color: #dedee0; }
.forum-compose-prompt:hover { background: #1b1b1d; border-color: #d9b96f80; }
.forum-post { background: #161618; border: 1px solid #ffffff1b; border-radius: 14px; box-shadow: 0 4px 20px #0002; }
.post-meta { border-color: #ffffff16; }
.post-meta strong { color: #efdcad; }
.post-meta time, .post-meta small { color: #a8a8aa; }
.forum-post .reading-article { background: transparent; border: 0; box-shadow: none; }
.forum-post .reading-article p { color: #d0d0d2; }
.post-actions { border-color: #ffffff16; }
.forum-post .forum-reaction, .forum-post .forum-report { color: #c0c0c2; border-color: #ffffff17; border-radius: 6px; }
.forum-post .forum-reaction[aria-pressed=true] { background: #d9b96f12; border-color: #d9b96f70; color: #efd9a5; }
.reply-panel { border-top: 2px solid #d9b96f80; border-radius: 12px; }
.forum-entry-notice { background: #141416; border-radius: 16px; }
.forum-notice-copy { color: #d0d0d2; }
.forum-notice-footer { background: #1a1a1c; border-color: #ffffff16; }
.forum-notice-accept { background: #d9b96f0c; border-color: #d9b96f50; }

/* Island photography and the existing closing sections. */
.story-section { background: #111113; border-block: 1px solid #ffffff12; }
.castle-story img { border-radius: 14px; border: 1px solid #d9b96f38; box-shadow: var(--cm-shadow); }
.castle-story span { color: #afa086; font-size: .6875rem; letter-spacing: .12em; }
.story-section p, .vendor-section p { color: #b4b4b6; }
.vendor-section { border-color: #ffffff15; }
.island { background: #18181a; border: 1px solid #ffffff1a; border-radius: 12px; }
.island.selected { background: #d9b96f08; border-color: #d9b96f75; }
.island strong { color: #eee8d9; font-size: 1.4rem; }
.island small { color: #aaaaac; font-size: .625rem; line-height: 1.7; }
.join-section { position: relative; background: radial-gradient(ellipse at 50% 100%, #d9b96f14, transparent 70%), #131315; color: #f3eee4; border-top: 1px solid #d9b96f50; padding: 75px 5%; }
.join-section h2 { font-family: 'Barlow Condensed', 'Arial Narrow', sans-serif; font-size: clamp(3rem, 5.8vw, 5.5rem); line-height: .98; letter-spacing: -.025em; }
.join-section p { color: #b8b8ba; }
.join-section .button { background: linear-gradient(115deg, #f0d79b, #d2af65); color: #17130b; border-color: #e9cd8e; }
footer { background: #0a0a0c; border-top: 1px solid #ffffff15; }
.footer-main { padding-bottom: 40px; }
.footer-main h3 { color: #dcc18a; font-weight: 500; font-size: .9375rem; }
.footer-main button, .footer-main div>a:not(.brand), .footer-main p { color: #acacae; line-height: 1.8; }
.footer-main button:hover, .footer-main div>a:not(.brand):hover { color: #eed7a0; }
.footer-bottom { color: #919193; border-color: #ffffff15; }
.support-footer { border-color: #ffffff17; }
.support-footer .support-contact { border-radius: 7px; }
.support-footer .market-quotes { color: #ababad; }

/* Accounts, messages and dialogs follow the same palette without changing behaviour. */
dialog, .cm-editor-dialog, .cms-dialog, .business-dialog, .media-picker { background: #161618; color: #f0ece6; border: 1px solid #d9b96f50; border-radius: 16px; box-shadow: 0 24px 100px #0009; }
dialog::backdrop, .cm-editor-dialog::backdrop, .cms-dialog::backdrop { background: #060608cc; backdrop-filter: blur(6px); }
.dialog-top { background: #161618; border-color: #ffffff16; }
dialog p, dialog ul { color: #bfbfc1; }
dialog .notice { background: #d9b96f0b; border-left-color: var(--gold); border-radius: 0 8px 8px 0; }
.age-body { background: radial-gradient(ellipse at 50% 10%, #d9b96f12, transparent 65%), #0a0a0c; }
.age-card { background: linear-gradient(145deg, #1e1e20, #0f0f11); border: 1px solid #d9b96f60; border-radius: 20px; box-shadow: 0 30px 100px #0009; }
.age-card h1 { letter-spacing: -.04em; }
.age-card p { color: #bdbdbf; }
.age-card .dob-fields input { border-color: #d9b96f50; border-radius: 9px; font-variant-numeric: tabular-nums; }
.account-card, .login-panel, .account-welcome, .rewards-panel { background: #161618; border: 1px solid #d9b96f35; border-radius: 14px; }
.account-tabs a, .admin-subtabs button, .account-menu-link { border-radius: 7px; border-color: #ffffff18; color: #c6c6c8; }
.account-tabs .selected, .admin-subtabs .selected, .account-menu-link.selected { color: #efd9a5; background: #d9b96f10; border-color: #d9b96f70; }
.reward-balances>div { background: #1c1c1e; border-color: #ffffff18; border-radius: 10px; }
.reward-balances strong { color: #e2c48b; }
.support-inbox { border-color: #ffffff1c; border-radius: 14px; box-shadow: var(--cm-shadow); }
.support-sidebar { background: #121214; border-color: #ffffff17; }
.support-conversation { background: #161618; }
.support-sidebar-heading, .support-conversation-heading { background: #18181a; border-color: #ffffff17; }
.support-thread { border-color: #ffffff10; }
.support-thread:hover, .support-thread.selected { background: #d9b96f0a; border-left-color: #d9b96f; }
.support-thread strong { color: #e6e6e8; }
.support-thread small, .support-thread time { color: #ababad; }
.support-message { background: #242426; border-color: #ffffff12; border-radius: 12px 12px 12px 3px; }
.support-message.sent { background: #d9b96f13; border-color: #d9b96f40; border-radius: 12px 12px 3px 12px; }
.support-message p { color: #e1d9e8; }
.support-message strong { color: #e8cd94; }
.support-message time { color: #a9a9ab; }
.support-conversation form, .support-meta { background: #121214; border-color: #ffffff17; }
.basket-item { border-color: #ffffff17; }
.basket-item img { border-radius: 8px; }
.basket-total { border-color: #d9b96f50; }
.weekly-poll-section { background: radial-gradient(ellipse at top left, #d9b96f10, transparent 75%), #161618; border: 1px solid #d9b96f45; border-radius: 14px; }
.weekly-poll-section h2 { font-size: clamp(1.7rem, 3vw, 2.5rem); letter-spacing: -.035em; }
.weekly-poll-section p { color: #bdbdbf; }
.poll-answer { background: #0f0f11; border-color: #ffffff21; color: #e0d8e7; border-radius: 8px; }
.poll-answer:has(input:checked) { background: #d9b96f12; border-color: #d9b96f85; color: #efdab1; }
.poll-result-track { background: #2a2a2c; }
.poll-result-track>span { background: linear-gradient(90deg, #b4904c, #ecd19a); }

/* The existing Control Room, restyled rather than reorganised. */
.cms-body .cms-header { background: #0e0e10; border-bottom-color: #d9b96f35; }
.cms-body .cms-sidebar { background: #121214; border-color: #ffffff13; }
.cr-brand { border-bottom-color: #d9b96f35; }
.cr-brand strong { color: #eee9df; }
.cr-brand small { color: #b5a992; }
.cr-monogram { background: linear-gradient(145deg, #e5c98c, #bd974b); color: #14100a; border: 1px solid #ead7a3; border-radius: 10px; }
.cms-body .cr-tool-search input { background: #0a0a0c; border-color: #ffffff23; }
.cms-body .cms-sidebar .cr-primary-nav button { color: #bebec0; border: 1px solid transparent; border-radius: 8px; }
.cms-body .cms-sidebar .cr-primary-nav button:hover { background: #ffffff04; color: #e7d3a9; }
.cms-body .cms-sidebar .cr-primary-nav button.selected { background: linear-gradient(100deg, #d9b96f17, #d9b96f06); border-color: #d9b96f45; color: #efd7a1; box-shadow: inset 3px 0 0 #d9b96f; }
.cr-nav-number { color: #9d8860; }
.cr-workspace-heading { background: #0f0f11; border-color: #ffffff15; }
.cr-private-label { color: #bca777; background: #d9b96f09; border-color: #d9b96f25; }
.cr-section-tabs { background: #0f0f11; border-color: #ffffff16; }
.cr-section-tabs button { color: #b6b6b8; border-radius: 7px; }
.cr-section-tabs button:hover { background: #ffffff05; color: #e6d1a4; }
.cr-section-tabs button.active { background: #d9b96f11; border-color: #d9b96f55; color: #f1dcae; }
.cms-body .cms-main .cms-panel, .cms-panel, .cr-tool-card, .cms-record, .business-metric, .cms-body .business-metric { background: #161618; border-color: #ffffff1b; border-radius: 12px; }
.cms-body .cms-main .cms-panel { box-shadow: 0 5px 22px #0002; }
.cms-stats>div, .control-metrics>div { background: linear-gradient(130deg, #d9b96f09, #18181a); border-color: #d9b96f25; border-radius: 12px; }
.cms-stats strong, .control-metrics strong, .business-metric strong, .cms-body .business-metric strong { color: #ead3a0; letter-spacing: -.04em; }
.cms-stats span, .control-metrics span, .business-metric small { color: #b3b3b5; }
.cr-tool-card:hover, .cms-record:hover { background: #1f1f21; border-color: #d9b96f65; }
.cr-tool-card strong { color: #e8e0ef; }
.cr-tool-card>span { color: #b0b0b2; }
.cr-calculator-results { background: #141416; border-color: #d9b96f40; border-radius: 14px; }
.cr-target-price { background: #d9b96f0a; border-color: #d9b96f40; border-radius: 10px; }
.cr-target-price>strong { color: #ebcf97; }
.cr-calculation-lines>div { border-color: #ffffff14; }
.cr-calculation-lines dt { color: #c2c2c4; }
.cr-calculation-lines dd { color: #eee4f5; }
.cr-calculation-total dt, .cr-calculation-total dd { color: #ead19d; }
.business-table-wrap { border: 1px solid #ffffff18; border-radius: 10px; }
.business-table th { background: #1e1e20; color: #d8c299; font-size: .8125rem; }
.business-table td, .business-table th { border-color: #ffffff11; }
.business-table tbody tr:nth-child(even) { background: #ffffff02; }
.business-table tbody tr:hover { background: #d9b96f05; }
.business-help { border-color: #d9b96f55; color: #dbc18a; }
.cr-health-details summary { color: #d8bc81; }
.operations-cards a { background: #161618; border-color: #ffffff1b; border-radius: 10px; }
.operations-cards strong { color: #e8cb91; }
#toast { background: #1e1e20; color: #f0ddae; border-color: #d9b96f75; border-radius: 10px; box-shadow: 0 12px 45px #0008; }
#toast.error { background: #391d22; color: #ffd1d6; border-color: #d86b7c; }
.media-card { border-color: #ffffff1b; border-radius: 9px; overflow: hidden; }
.media-card:hover { border-color: #d9b96f75; }
.media-library-filters button { border-radius: 7px; }
.media-library-filters button[aria-pressed=true] { background: #d9b96f12; color: #ecd3a0; border-color: #d9b96f75; }

/* Preserve semantic warnings, successful statuses, chart colours and original document images. */
.attention, .cms-layout .unread-badge, .cms-layout [data-reported-posts] { color: #ffc2ca!important; }
.business-status.attention, .cms-layout .operations-cards .needs-attention { background: #371b23; border-color: #bf5265; }
.review-needed { color: #f0ce7d!important; }
.business-status.review-needed { background: #322919; border-color: #907339; }
.status-healthy { color: #bce8c9!important; }
.business-status.status-healthy { background: #172b20; border-color: #4e835f; }
.vendor-status-approved { color: #bce8c9; background: #172b20; border-color: #4e835f; }
.vendor-status-rejected, .vendor-status-paused { color: #ffc2ca; background: #371b23; border-color: #bf5265; }
.vendor-status-pending { color: #f0ce7d; background: #322919; border-color: #907339; }
.forum-notice-heading h2 { color: #ff6575; }
dialog.coa-lightbox { background: #121214; }
.coa-lightbox-bar, .coa-page-label { background: #161618; border-color: #ffffff18; }
.coa-page { border-color: #ffffff20; border-radius: 8px; }
.coa-sheet, .coa-document, .coa-reader-page { background: #fff; }
.coa-sheet img, .coa-reader-page img { filter: none; }

@media (max-width: 1100px) {
  .hero { gap: 28px; }
  .hero h1 { font-size: clamp(3.8rem, 7.4vw, 5.5rem); }
  .hero-image-wrap { height: 480px; }
  .product-info { padding: 22px; }
  .list-view .catalogue-card { grid-template-columns: 170px minmax(0, 1fr); }
}
@media (max-width: 800px) {
  .hero { grid-template-columns: 1fr; padding: 36px 5% 48px; gap: 26px; }
  .hero-content { padding: 8px 0; }
  .hero h1 { font-size: clamp(3.5rem, 10vw, 5.4rem); max-width: 680px; }
  .hero p { max-width: 590px; }
  .hero-image-wrap { width: 100%; height: 420px; max-width: none; border-radius: 16px; margin: 0; }
  .hero-bottom { margin-top: 28px; padding-top: 18px; }
  .section-heading { display: block; }
  .section-heading>p, .section-heading>div>p { margin-top: 20px; }
  .oregon-section { grid-template-columns: 1fr; gap: 24px; }
  .oregon-pillars { flex-wrap: wrap; gap: 16px 28px; }
  .shipping-route { padding: 16px; }
  .shipping-route .route-transit { margin-inline: 10px; }
  .guide-card { display: block; }
  .guide-art { min-height: 235px; }
  .community-card { padding: 28px; }
  .workspace-heading { gap: 20px; padding-bottom: 22px; }
  .workspace-main { padding-top: 26px; }
  .profile-panel { padding: 24px; }
  .process-grid article>div { padding: 24px; }
  .cms-body .cms-sidebar .cr-primary-nav button.selected { box-shadow: inset 2px 0 0 #d9b96f; }
}
@media (max-width: 700px) {
  .mobile-quick-nav { background: #101012; border-bottom: 1px solid #d9b96f35; padding-top: 7px; padding-bottom: 7px; gap: 6px; }
  .mobile-quick-nav>a { background: #ffffff03; border: 1px solid #ffffff0e; border-radius: 7px; color: #d8d8da; min-height: 46px; }
  .mobile-quick-nav>a:hover, .mobile-quick-nav>a[aria-current=page] { background: #d9b96f11; border-color: #d9b96f45; color: #eed7a2; }
  .forum-workspace .workspace-sidebar .side-panel { display: block; }
  .forum-workspace .category-link { display: flex; width: 100%; min-height: 46px; margin: 0; padding: 12px; font-size: .875rem; }
  .forum-workspace .category-link>span { font-size: .75rem; flex-shrink: 0; }
  .forum-workspace .topic-row { padding: 18px 15px; gap: 12px; }
  .forum-workspace .topic-row h2 { font-size: 1rem; line-height: 1.5; }
  .forum-workspace .topic-description p { font-size: .8125rem; line-height: 1.65; }
  .forum-workspace .topic-labels { font-size: .6875rem; line-height: 1.6; }
  .forum-workspace .forum-post { padding: 18px; border-radius: 12px; }
  .forum-workspace .forum-post .reading-article { padding: 0; }
  .forum-workspace .forum-post .reading-article p { font-size: 1rem; line-height: 1.9; }
  .forum-compose-entry { padding: 18px; gap: 16px; }
  .forum-workspace .reply-panel, .forum-workspace #new-thread-form { border-radius: 12px; }
  .forum-banner { padding: 18px; }
  .forum-banner p { font-size: .8125rem; }
}
@media (max-width: 600px) {
  h2 { font-size: clamp(2rem, 7vw, 2.5rem); }
  .section { padding-block: 52px; }
  .hero h1 { font-size: clamp(3.2rem, 11.5vw, 4.2rem); line-height: .98; }
  .hero p { font-size: 1rem; }
  .hero-image-wrap { height: 360px; }
  .hero-buttons { gap: 18px; }
  .hero-buttons .button { flex: 1 1 210px; }
  .hero-forum { font-size: .875rem; }
  .hero-bottom { font-size: .6875rem; letter-spacing: .08em; }
  .extract-caption { left: 22px; bottom: 22px; }
  .extract-caption span { font-size: .625rem; }
  .values { gap: 10px 20px; font-size: .6875rem; line-height: 1.6; }
  .product-grid { grid-template-columns: 1fr; gap: 20px; }
  .filmed-product { aspect-ratio: 1.4; max-height: 340px; }
  .product-info { padding: 22px; }
  .product-info h3 { font-size: 1.375rem; }
  .product-info p { font-size: .9375rem; }
  .product-price { font-size: 1.5rem; }
  .guide-art { min-height: 220px; }
  .guide-grid { gap: 18px; }
  .shipping-route .route-place { flex-direction: column; align-items: center; gap: 7px; }
  .shipping-route .route-place strong { font-size: .75rem; letter-spacing: .08em; }
  .shipping-route .route-flag { font-size: 1.4rem; padding: 7px; }
  .route-connection-label { font-size: .625rem; max-width: 100px; }
  .shipping-route .route-transit { gap: 8px; }
  .workspace-heading h1 { font-size: clamp(2.1rem, 8vw, 2.8rem); }
  .workspace-toolbar { padding: 12px; }
  .filter-tabs button, .view-switch button { font-size: .8125rem; min-height: 40px; padding: 8px 10px; }
  .list-view .catalogue-card { grid-template-columns: 116px minmax(0, 1fr); }
  .list-view .catalogue-info { padding: 18px 15px; }
  .list-view .catalogue-info h2 { font-size: 1.125rem; overflow-wrap: anywhere; }
  .list-view .catalogue-info>small { font-size: .625rem; letter-spacing: .04em; }
  .list-view .catalogue-info p { font-size: .875rem; line-height: 1.75; }
  .list-view .catalogue-image { min-height: 230px; }
  .list-view .status-label { font-size: .5625rem; line-height: 1.4; letter-spacing: 0; padding: 5px; max-width: calc(100% - 12px); white-space: normal; }
  .list-view .catalogue-price { flex-direction: column; align-items: flex-start; font-size: 1.3rem; gap: 5px; }
  .catalogue-price small { font-size: .6875rem; }
  .reading-article, .thread-article { padding: 24px 20px; border-radius: 12px; }
  .profile-panel { padding: 22px 18px; }
  .profile-tabs button { font-size: .8125rem; padding: 12px 10px; }
  .side-panel { padding: 20px; }
  .join-section { padding-block: 58px; }
  .join-section h2 { font-size: 3.4rem; }
  .footer-main { gap: 30px; }
  .footer-main h3 { font-size: .875rem; }
  .footer-bottom { line-height: 1.7; }
  .weekly-poll-section { padding: 26px 22px; }
  .age-card { padding: 30px 22px; }
  .support-inbox { border-radius: 10px; }
  .support-message { max-width: 90%; }
  .cms-body .cms-main .cms-panel { border-radius: 10px; }
  .cr-section-tabs button { font-size: .875rem; }
}
@media (max-width: 380px) {
  .hero h1 { font-size: 3.15rem; }
  .hero-image-wrap { height: 320px; }
  .list-view .catalogue-card { grid-template-columns: 96px minmax(0, 1fr); }
  .list-view .catalogue-info { padding: 16px 12px; }
  .list-view .catalogue-info h2 { font-size: 1rem; }
  .hero-bottom { gap: 10px; }
}
/* Tablet/desktop catalogue: compact square photos with labels underneath. */
@media (min-width: 601px) {
  .catalogue-card[href] {
    display: grid;
    grid-template-columns: clamp(112px, 12vw, 144px) minmax(0, 1fr);
    align-items: start;
    padding: 16px;
    gap: 18px;
  }
  .catalogue-card[href] > .catalogue-image {
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
    align-self: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    background: transparent;
    overflow: visible;
    border-radius: 0;
  }
  .catalogue-card[href] > .catalogue-image > img,
  .catalogue-card[href] > .catalogue-image > .no-photo {
    position: static;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    object-fit: contain;
    object-position: center;
  }
  .catalogue-card[href] .catalogue-info { min-width: 0; padding: 0; }
  .catalogue-card[href] .catalogue-info p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.5;
    max-height: 3em;
    margin: 8px 0 0;
  }
  .catalogue-card[href] .status-label {
    position: static;
    max-width: 100%;
    justify-content: center;
    text-align: center;
    font-size: 10px;
    line-height: 1.3;
    padding: 5px 6px;
    letter-spacing: 0;
    white-space: normal;
  }
}
/* Phone catalogue: independent square photos, not description-height strips. */
@media (max-width: 600px) {
  .catalogue-grid { grid-template-columns: 1fr; gap: 12px; }
  .catalogue-card[href] {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    align-items: start;
    padding: 10px;
    gap: 12px;
  }
  .catalogue-card[href] > .catalogue-image {
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
    align-self: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    background: transparent;
    overflow: visible;
    border-radius: 0;
  }
  .catalogue-card[href] > .catalogue-image > img {
    position: static;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    object-fit: contain;
    object-position: center;
  }
  .catalogue-card[href] .catalogue-info { min-width: 0; padding: 0; }
  .catalogue-card[href] .catalogue-info > small {
    display: block; font-size: 9px; line-height: 1.4; letter-spacing: .03em;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  }
  .catalogue-card[href] .catalogue-info h2 {
    font-size: 15px; line-height: 1.35; margin: 5px 0;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
  }
  .catalogue-card[href] .catalogue-info h2 span { display: none; }
  .catalogue-card[href] .catalogue-info p {
    font-size: 12px; line-height: 1.5; margin: 0;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
  }
  .catalogue-card[href] .catalogue-price {
    font-size: 18px; line-height: 1.3; padding-top: 7px; margin-top: 8px; gap: 2px;
    flex-direction: column; align-items: flex-start;
  }
  .catalogue-card[href] .catalogue-price :is(span, small) { font-size: 10px; }
  .catalogue-card[href] .status-label {
    position: static; max-width: 100%; justify-content: center; text-align: center;
    font-size: 8px; line-height: 1.3; padding: 4px; letter-spacing: 0; white-space: normal;
  }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none!important; animation: none!important; }
}
@media print {
  body:has(.print-report) { color-scheme: light; background: #fff; color: #000; }
  .print-report { background: #fff!important; color: #000!important; box-shadow: none; }
  .print-report .business-table, .print-report .business-table th, .print-report .business-table td { color: #000; background: #fff; border-color: #bbb; }
}
/* Keep the keyboard skip link readable on its gold background. */
.skip { background: #efd69a; color: #15120b; border-radius: 0 0 8px 0; }

/* Phone forum: one posting action, folded navigation and full-width feed cards.
   Desktop retains the original expanded sections and posting layout. */
.forum-workspace .forum-phone-disclosure>summary { display: none; }
@media (max-width: 600px) {
  .forum-workspace { padding: 18px 12px 36px; min-width: 0; }
  .forum-workspace .workspace-heading { margin-bottom: 14px; padding-bottom: 14px; gap: 12px; }
  .forum-workspace .workspace-heading h1 { font-size: 1.75rem; line-height: 1.2; margin-block: 8px; letter-spacing: -.025em; }
  .forum-workspace .workspace-heading .thread-title { font-size: 1.5rem!important; line-height: 1.3!important; }
  .forum-workspace .workspace-heading p { font-size: .875rem; line-height: 1.5; margin-bottom: 0; }
  .forum-workspace .breadcrumb { font-size: .75rem; gap: 6px; margin-bottom: 4px; }
  .forum-workspace .workspace-heading>.forum-create-button { width: 100%; min-height: 44px; padding: 10px 14px; font-size: .875rem; }
  .forum-workspace .forum-compose-entry { display: none; }
  .forum-workspace .forum-phone-disclosure { min-width: 0; border: 1px solid #ffffff20; border-radius: 10px; background: #141416; }
  .forum-workspace .forum-phone-disclosure>summary { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 3px 10px; min-height: 48px; padding: 10px 14px; cursor: pointer; list-style: none; font-size: .875rem; line-height: 1.4; color: #efdcad; }
  .forum-workspace .forum-phone-disclosure>summary::-webkit-details-marker { display: none; }
  .forum-workspace .forum-phone-disclosure>summary>span { min-width: 0; overflow-wrap: anywhere; }
  .forum-workspace .forum-phone-disclosure>summary>span:last-child { grid-column: 1; color: #b7b7ba; font-size: .8125rem; }
  .forum-workspace .forum-phone-disclosure>summary::after { content: '+'; grid-column: 2; grid-row: 1/3; font-size: 1.25rem; }
  .forum-workspace .forum-phone-disclosure[open]>summary::after { content: '−'; }
  .forum-workspace .forum-phone-disclosure>summary:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
  .forum-workspace .forum-rules-disclosure .forum-banner { margin: 0; border: 0; border-top: 1px solid #ffffff18; border-radius: 0 0 10px 10px; padding: 14px; gap: 8px; }
  .forum-workspace .forum-rules-disclosure .pin-mark { display: none; }
  .forum-workspace .forum-rules-disclosure .forum-banner p { font-size: .875rem; line-height: 1.6; }
  .forum-workspace .workspace-layout { gap: 14px; margin-top: 12px; }
  .forum-workspace .workspace-sidebar { grid-row: 1; min-width: 0; }
  .forum-workspace .forum-filters+.workspace-sidebar { margin: 0 0 14px; }
  .forum-workspace .forum-sections-disclosure .side-panel { padding: 6px; margin: 0; border: 0; border-top: 1px solid #ffffff18; border-radius: 0 0 10px 10px; }
  .forum-workspace .forum-sections-disclosure .side-panel>h2 { display: none; }
  .forum-workspace .forum-sections-disclosure .category-link { padding: 10px; min-height: 44px; border-radius: 6px; line-height: 1.4; }
  .forum-workspace .forum-sections-disclosure .category-link .forum-category-name { flex: 1 1 auto; min-width: 0; font-size: .875rem; }
  .forum-workspace .forum-sections-disclosure .category-link .forum-category-count { flex: 0 0 auto; font-size: .75rem; }
  .forum-workspace .forum-filters { margin: 0 0 12px; gap: 10px; grid-template-columns: minmax(0,1fr) auto; }
  .forum-workspace .forum-filters label { font-size: .875rem; gap: 5px; }
  .forum-workspace .forum-filters input,.forum-workspace .forum-filters select { font-size: 1rem; min-height: 44px; padding: 10px 12px; }
  .forum-workspace .forum-filters .button { min-height: 44px; padding: 10px 16px; font-size: .875rem; }
  .forum-workspace .list-summary { margin: 12px 0 8px; font-size: .8125rem; }
  .forum-workspace .topic-list { gap: 10px; }
  .forum-workspace .topic-row { grid-template-columns: 32px minmax(0,1fr); gap: 8px 10px; padding: 14px; min-width: 0; }
  .forum-workspace .topic-row .topic-avatar { width: 32px; height: 32px; margin: 0; grid-row: 1; grid-column: 1; }
  .forum-workspace .topic-description,.forum-workspace .topic-description.has-photo-preview { display: contents; }
  .forum-workspace .topic-row .topic-labels { grid-column: 2; grid-row: 1; align-self: center; flex-wrap: wrap; font-size: .75rem; line-height: 1.4; gap: 4px 8px; min-width: 0; overflow-wrap: anywhere; }
  .forum-workspace .topic-row h2 { grid-column: 1/-1; grid-row: 2; font-size: 1rem; line-height: 1.45; margin: 2px 0 0; overflow-wrap: anywhere; }
  .forum-workspace .topic-row .topic-description p { grid-column: 1/-1; grid-row: 3; margin: 0; font-size: .8125rem; line-height: 1.5; overflow-wrap: anywhere; }
  .forum-workspace .topic-row .topic-photo-preview { grid-column: 1/-1; grid-row: 4; width: 112px; height: 76px; max-width: 100%; justify-self: start; margin: 2px 0; object-fit: cover; background: #0e0e10; }
  .forum-workspace .topic-row .reply-summary { grid-column: 1/-1; grid-row: auto; padding: 8px 0 0; margin-top: 2px; border-top: 1px solid #ffffff12; gap: 5px; }
  .forum-workspace .topic-row .reply-summary strong,.forum-workspace .topic-row .reply-summary span { font-size: .8125rem; line-height: 1.4; }
  .forum-workspace .forum-post { padding: 14px; margin: 14px 0; }
  .forum-workspace .forum-post .post-meta { margin-bottom: 14px; }
  .forum-workspace .forum-post .reading-article p { font-size: 1rem; line-height: 1.65; }
  .forum-workspace .forum-post .reading-article :is(pre,table) { display: block; max-width: 100%; overflow-x: auto; }
  .forum-workspace .post-actions { flex-wrap: wrap; justify-content: flex-start; gap: 8px 12px; padding-top: 10px; margin-top: 16px; }
  .forum-workspace .forum-post .forum-report { margin-left: auto; }
  .forum-workspace .post-actions>a:not(.forum-report) { flex-basis: 100%; }
  .forum-workspace .reply-panel,.forum-workspace #new-thread-form { padding: 16px 14px; }
  .forum-workspace .reply-panel h2 { font-size: 1.375rem; line-height: 1.3; }
  .forum-workspace .reply-panel .button,.forum-workspace #new-thread-form>.button { width: 100%; justify-content: center; white-space: normal; }
}
