/* Project-detail family (DECISION-003, WP-E2,
   docs/WORKPACK_DECISION003_ALL_SUBPAGES.md Sections 1.2/1.3/2/3/4).

   Restyles the real, currently-live CMS content shared by all 14 Project
   keys (uvweb, freya2, chronobim, wormwood, cerberus, demeter, ermes, nero,
   gpt-box, nutheia, deltaprism, seismic-nexus, rna-structure,
   unreal-engine) onto this project's --hr-* tokens / Barlow Condensed +
   Barlow type / glass-panel system, built on static/css/site_redesign.css's
   shared header/nav/connector-logo rules (that file's own selector lists
   needed extending with these 14 body classes too - see its WP-E2 addendum
   comment - otherwise the --hr-* custom properties referenced below would
   be undefined on these pages). This file is ONLY ever linked from
   templates/pages/project_detail.html's own <link> tag (see that
   template's block extra_css), so it never loads on any page outside the
   14 keys it targets - the class-vocabulary selectors below do not need to
   be globally unique the way a sitewide file's would.

   Every selector here targets real class names already baked into
   PageContent.content_html for these 14 pages (confirmed via full `curl`
   of all 14 live routes, not the 2 samples in the workpack doc alone -
   all 14 share the identical section skeleton: back-link, h1.gradient-text,
   .project-category, description+image row, tech-badges/feature-list row,
   results-container row. None of the 14 broke the pattern.) -
   static/css/style_for_project_showcase.css documents this same
   pre-redesign vocabulary (mined for class names only, per the workpack's
   Section 2 finding - its own color values are legacy and NOT reused
   here). templates/pages/project_detail.html renders that content
   completely unchanged via {{ render_page_content(page.key) | safe }} -
   nothing here relies on any template-side markup change.

   --- No hr-hero-wrap/hr-veins wrapper element ---
   static/css/products_redesign.css and static/css/about_redesign.css both
   wrap a real, template-owned hero SECTION in a dedicated `.hr-hero-wrap` >
   `.hr-veins` pair. These 14 pages have no equivalent - the "hero" is just
   a bare back-link + h1 + category-badge sitting directly inside CMS blob
   content with no wrapping element of its own to attach a veins-glow
   layer to (same reason the workpack doc gives for using About's
   `.ar-title-glass` *technique* rather than About's literal markup). Root
   fix used instead: `.hr-page` itself (already `position:relative;
   overflow:hidden`, see below) gets a `::before` pseudo-element for the
   ambient violet/teal glow, absolutely positioned and height-limited to
   the top of the page, `z-index: -1` so it never needs the real content to
   carry its own z-index/position to stay above it (a plain, non-positioned
   in-flow block descendant always paints above a negative-z-index sibling
   pseudo-element, per the CSS stacking spec - no extra selector needed on
   render_page_content's own output for this to be correct).

   --- Header glass panel without a wrapping element ---
   The real h1 (`<h1 class="gradient-text mb-4">...`) already uses its own
   `background` for the sitewide `.gradient-text` clip-to-text gradient
   trick (static/css/style.css) - exactly the same conflict
   about_redesign.css's own header comment describes for its `.ar-page-
   title`. About solves it with a separate wrapping `.ar-title-glass` div,
   but that requires editing static Jinja markup About owns directly; here
   the h1 comes from a CMS blob this ticket must render byte-identical, so
   no wrapping div can be inserted. Fixed the same way
   static/css/products_redesign.css fixes it for its own h2s without a
   wrapper: the h1 itself gets `position: relative; z-index: 0;
   display: inline-block`, and a `::before` pseudo-element (`z-index: -1`,
   so it only sinks below its own local stacking context, not the whole
   page) supplies the glass panel background/blur/border behind the text.

   --- Preserving each page's own inline category-color <style> override ---
   Confirmed via full fetch of all 14 live pages (not assumed from the
   workpack doc, which claimed wormwood+deltaprism): only 2 of the 14 -
   chronobim and wormwood - currently carry a page-scoped inline <style>
   block overriding `.project-category` and `.industry-badge`'s
   background-color/color (deltaprism currently has NO such block live;
   the doc's claim was wrong for deltaprism specifically, corrected here
   for whoever reads this next). Because that inline block is a `<style>`
   tag rendered inside the CMS content itself (after this file's own
   <link> tag in <head>, per normal document order), a same-specificity
   selector lets the later, inline declaration win on the two pages that
   have one, while this file's own default still applies everywhere else.
   `body.<key>-redesign .project-category` (2 classes) would OUTRANK the
   inline block's own bare `.project-category` (1 class) by specificity
   regardless of source order - the opposite of what the ticket requires
   ("must still take effect over the shared file - do not strip it") - so
   `.project-category` and `.industry-badge` below are deliberately left
   as bare, unscoped selectors (tying specificity with the live inline
   rule) rather than following this file's own body-class-scoping
   convention used for every other selector. Safe here specifically
   because (see file-level comment above) this stylesheet only ever loads
   on pages that can contain these two classes to begin with.

   --- A second, previously-undocumented per-page override mechanism ---
   Direct Selenium/getComputedStyle verification (scripts/validation/
   check_wp_e2_project_detail.py) found a second CMS-editable style source
   the workpack's own Section 1.1 investigation never covered: `Page.
   css_styles` (the `CSSStyle` model, `page_css_style` association,
   served per-page at `/assets/page-css/<key>.css`, linked from
   templates/base.html at a fixed position - see that file's own <head>).
   All 14 of these Page rows share one CSSStyle row (id=13, name=
   'project_details') - a legacy, pre-DECISION-003 rule set covering the
   exact same bare-selector vocabulary this file restyles
   (.project-category, .tech-badge, .project-description,
   .project-image-container, .results-container). Because base.html links
   that asset AFTER `{% block extra_css %}`, this file's link tag was
   moved to `{% block extra_head %}` in templates/pages/project_detail.html
   (see that template's own comment) so this file's rules win over that
   shared legacy default at tied (bare, 1-class) specificity via source
   order, while still correctly losing to a genuinely page-specific inline
   <style> embedded directly in a page's own content_html (still further
   down the document than anything in <head>, e.g. wormwood's own
   .project-category override, verified still correct after this fix). */

body.uvweb-redesign,
body.freya2-redesign,
body.chronobim-redesign,
body.wormwood-redesign,
body.cerberus-redesign,
body.demeter-redesign,
body.ermes-redesign,
body.nero-redesign,
body.gpt-box-redesign,
body.nutheia-redesign,
body.deltaprism-redesign,
body.seismic-nexus-redesign,
body.rna-structure-redesign,
body.unreal-engine-redesign {
    background: var(--hr-bg) !important;
    font-family: 'Barlow', sans-serif;
}

body.uvweb-redesign .hr-page,
body.freya2-redesign .hr-page,
body.chronobim-redesign .hr-page,
body.wormwood-redesign .hr-page,
body.cerberus-redesign .hr-page,
body.demeter-redesign .hr-page,
body.ermes-redesign .hr-page,
body.nero-redesign .hr-page,
body.gpt-box-redesign .hr-page,
body.nutheia-redesign .hr-page,
body.deltaprism-redesign .hr-page,
body.seismic-nexus-redesign .hr-page,
body.rna-structure-redesign .hr-page,
body.unreal-engine-redesign .hr-page {
    position: relative;
    overflow: hidden;
}

/* Ambient veins glow, confined to the top of the page (see file header
   comment - no hr-hero-wrap element exists here to attach it to). */
body.uvweb-redesign .hr-page::before,
body.freya2-redesign .hr-page::before,
body.chronobim-redesign .hr-page::before,
body.wormwood-redesign .hr-page::before,
body.cerberus-redesign .hr-page::before,
body.demeter-redesign .hr-page::before,
body.ermes-redesign .hr-page::before,
body.nero-redesign .hr-page::before,
body.gpt-box-redesign .hr-page::before,
body.nutheia-redesign .hr-page::before,
body.deltaprism-redesign .hr-page::before,
body.seismic-nexus-redesign .hr-page::before,
body.rna-structure-redesign .hr-page::before,
body.unreal-engine-redesign .hr-page::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0; height: 480px;
    z-index: -1; pointer-events: none;
    background-image:
        radial-gradient(circle at 12% 10%, rgba(181,51,247,0.09), transparent 40%),
        radial-gradient(circle at 88% 20%, rgba(1,206,211,0.07), transparent 45%);
}

/* --- Back-link button ("Back to Project Showcase") --- */
body.uvweb-redesign .btn-outline-primary,
body.freya2-redesign .btn-outline-primary,
body.chronobim-redesign .btn-outline-primary,
body.wormwood-redesign .btn-outline-primary,
body.cerberus-redesign .btn-outline-primary,
body.demeter-redesign .btn-outline-primary,
body.ermes-redesign .btn-outline-primary,
body.nero-redesign .btn-outline-primary,
body.gpt-box-redesign .btn-outline-primary,
body.nutheia-redesign .btn-outline-primary,
body.deltaprism-redesign .btn-outline-primary,
body.seismic-nexus-redesign .btn-outline-primary,
body.rna-structure-redesign .btn-outline-primary,
body.unreal-engine-redesign .btn-outline-primary {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700; letter-spacing: 1px; text-transform: uppercase;
    border-color: rgba(255,255,255,0.35) !important;
    color: var(--hr-light) !important;
    background: rgba(13,15,20,0.30);
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
body.uvweb-redesign .btn-outline-primary:hover,
body.freya2-redesign .btn-outline-primary:hover,
body.chronobim-redesign .btn-outline-primary:hover,
body.wormwood-redesign .btn-outline-primary:hover,
body.cerberus-redesign .btn-outline-primary:hover,
body.demeter-redesign .btn-outline-primary:hover,
body.ermes-redesign .btn-outline-primary:hover,
body.nero-redesign .btn-outline-primary:hover,
body.gpt-box-redesign .btn-outline-primary:hover,
body.nutheia-redesign .btn-outline-primary:hover,
body.deltaprism-redesign .btn-outline-primary:hover,
body.seismic-nexus-redesign .btn-outline-primary:hover,
body.rna-structure-redesign .btn-outline-primary:hover,
body.unreal-engine-redesign .btn-outline-primary:hover {
    background: rgba(255,255,255,0.08);
    color: var(--hr-highlight) !important;
    border-color: var(--hr-highlight) !important;
}

/* --- h1 (project title). See file header comment for the ::before-glass
   technique (no wrapper div - the real h1 already owns `background` for
   its .gradient-text clip effect). --- */
body.uvweb-redesign .project-detail-container h1.gradient-text,
body.freya2-redesign .project-detail-container h1.gradient-text,
body.chronobim-redesign .project-detail-container h1.gradient-text,
body.wormwood-redesign .project-detail-container h1.gradient-text,
body.cerberus-redesign .project-detail-container h1.gradient-text,
body.demeter-redesign .project-detail-container h1.gradient-text,
body.ermes-redesign .project-detail-container h1.gradient-text,
body.nero-redesign .project-detail-container h1.gradient-text,
body.gpt-box-redesign .project-detail-container h1.gradient-text,
body.nutheia-redesign .project-detail-container h1.gradient-text,
body.deltaprism-redesign .project-detail-container h1.gradient-text,
body.seismic-nexus-redesign .project-detail-container h1.gradient-text,
body.rna-structure-redesign .project-detail-container h1.gradient-text,
body.unreal-engine-redesign .project-detail-container h1.gradient-text {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 52px; font-weight: 800; letter-spacing: 0.5px;
    position: relative; z-index: 0; display: inline-block;
    background: linear-gradient(90deg, var(--hr-highlight) 0%, #7b5fd0 30%, #4a9fd8 65%, var(--hr-primary) 100%) !important;
    -webkit-background-clip: text !important; background-clip: text !important;
    -webkit-text-fill-color: transparent !important; color: transparent !important;
    line-height: 1.12; margin-bottom: 22px !important;
    padding: 16px 24px;
}
body.uvweb-redesign .project-detail-container h1.gradient-text::before,
body.freya2-redesign .project-detail-container h1.gradient-text::before,
body.chronobim-redesign .project-detail-container h1.gradient-text::before,
body.wormwood-redesign .project-detail-container h1.gradient-text::before,
body.cerberus-redesign .project-detail-container h1.gradient-text::before,
body.demeter-redesign .project-detail-container h1.gradient-text::before,
body.ermes-redesign .project-detail-container h1.gradient-text::before,
body.nero-redesign .project-detail-container h1.gradient-text::before,
body.gpt-box-redesign .project-detail-container h1.gradient-text::before,
body.nutheia-redesign .project-detail-container h1.gradient-text::before,
body.deltaprism-redesign .project-detail-container h1.gradient-text::before,
body.seismic-nexus-redesign .project-detail-container h1.gradient-text::before,
body.rna-structure-redesign .project-detail-container h1.gradient-text::before,
body.unreal-engine-redesign .project-detail-container h1.gradient-text::before {
    /* No backdrop-filter here - real, verified Chromium rendering defect
       found during QA (scripts/validation/check_wp_e2_project_detail.py
       screenshot review, not just a computed-style check): at this h1's
       52px font-size, `backdrop-filter: blur()` on this ::before combined
       with the h1's own `-webkit-background-clip: text` gradient made the
       title text render as an illegible colored smear in a real headless-
       Chrome screenshot - getComputedStyle on both elements reported
       exactly the intended values throughout (backdropFilter: blur(14px),
       background-clip: text), so this is a rendering/compositing
       interaction, not a wrong CSS value, and would not have been caught
       by a computed-style check alone. Solid semi-transparent panel only
       (no blur) is used here instead, which resolves it while still
       giving the same dark glass-panel look. **Correction (WP-E2-VERIFY-A,
       2026-08-21): the claim below that the smaller (22px) h3 headers do
       NOT show this defect was wrong** - "Results & Impact" rendered
       invisible on all 14 pages at this same 22px size; the h3 rule below
       has since had the identical no-blur fix applied. Flagged for the
       coordinator: if WP-E1 (Services) uses an equivalent hero h1/h3 +
       ::before-glass + gradient-clip-text combination, it should be
       screenshot-checked for this defect at EVERY heading instance, not
       assumed safe at any particular font size. */
    content: '';
    position: absolute; inset: -6px -16px; z-index: -1;
    background: rgba(13,15,20,0.45);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 14px;
}

/* --- h3 section headers (Key Technologies / Key Features / Industries
   Validated / Results & Impact) - same class="gradient-text mb-3" combo on
   every one of the 14 pages, same ::before-glass technique as the h1
   above, smaller scale. --- */
body.uvweb-redesign .project-detail-container h3.gradient-text,
body.freya2-redesign .project-detail-container h3.gradient-text,
body.chronobim-redesign .project-detail-container h3.gradient-text,
body.wormwood-redesign .project-detail-container h3.gradient-text,
body.cerberus-redesign .project-detail-container h3.gradient-text,
body.demeter-redesign .project-detail-container h3.gradient-text,
body.ermes-redesign .project-detail-container h3.gradient-text,
body.nero-redesign .project-detail-container h3.gradient-text,
body.gpt-box-redesign .project-detail-container h3.gradient-text,
body.nutheia-redesign .project-detail-container h3.gradient-text,
body.deltaprism-redesign .project-detail-container h3.gradient-text,
body.seismic-nexus-redesign .project-detail-container h3.gradient-text,
body.rna-structure-redesign .project-detail-container h3.gradient-text,
body.unreal-engine-redesign .project-detail-container h3.gradient-text {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 22px; font-weight: 700; letter-spacing: 0.5px;
    position: relative; z-index: 0; display: inline-block;
    background: linear-gradient(90deg, var(--hr-highlight) 0%, #7b5fd0 30%, #4a9fd8 65%, var(--hr-primary) 100%) !important;
    -webkit-background-clip: text !important; background-clip: text !important;
    -webkit-text-fill-color: transparent !important; color: transparent !important;
    margin-bottom: 18px !important;
    padding: 10px 18px;
}
body.uvweb-redesign .project-detail-container h3.gradient-text::before,
body.freya2-redesign .project-detail-container h3.gradient-text::before,
body.chronobim-redesign .project-detail-container h3.gradient-text::before,
body.wormwood-redesign .project-detail-container h3.gradient-text::before,
body.cerberus-redesign .project-detail-container h3.gradient-text::before,
body.demeter-redesign .project-detail-container h3.gradient-text::before,
body.ermes-redesign .project-detail-container h3.gradient-text::before,
body.nero-redesign .project-detail-container h3.gradient-text::before,
body.gpt-box-redesign .project-detail-container h3.gradient-text::before,
body.nutheia-redesign .project-detail-container h3.gradient-text::before,
body.deltaprism-redesign .project-detail-container h3.gradient-text::before,
body.seismic-nexus-redesign .project-detail-container h3.gradient-text::before,
body.rna-structure-redesign .project-detail-container h3.gradient-text::before,
body.unreal-engine-redesign .project-detail-container h3.gradient-text::before {
    /* No backdrop-filter here - direct QA finding (WP-E2-VERIFY-A,
       2026-08-21): the "Results & Impact" h3 (identical class/selector to
       Key Technologies/Key Features/Industries Validated) rendered with
       completely invisible text on all 7 pages checked, at this same 22px
       size the file's own prior comment (above, on the h1 rule) claimed
       was unaffected by the backdrop-filter+background-clip:text Chromium
       compositing defect. That claim was wrong, or at minimum incomplete -
       real evidence now shows the defect is not exclusively a large-font
       (52px h1) issue. Applying the h1's own proven fix uniformly to every
       h3.gradient-text::before rather than guessing which of the 4
       identical-selector headings are actually safe. */
    content: '';
    position: absolute; inset: -6px -14px; z-index: -1;
    background: rgba(13,15,20,0.45);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
}

/* --- Category badge. Bare/unscoped selector - see file header comment
   ("Preserving each page's own inline category-color <style> override")
   for why this deliberately does NOT follow this file's own body-class
   scoping convention. Safe here because this file only ever loads on the
   14 pages that can contain this class. --- */
.project-category {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700; letter-spacing: 1px; text-transform: uppercase;
    font-size: 13px;
    display: inline-block;
    background-color: rgba(1,206,211,0.16);
    color: var(--hr-primary, #01CED3);
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 9999px;
    padding: 8px 20px;
    margin-bottom: 28px;
}

/* --- Industry badges (chronobim/wormwood only, today) - same bare-
   selector reasoning as .project-category above; this file's default
   values are the fallback for any future project page that uses this
   class without its own inline override. --- */
.industry-badge {
    font-family: 'Barlow', sans-serif;
    font-size: 0.85rem;
    background-color: rgba(181,51,247,0.16);
    color: var(--hr-highlight, #B533F7);
    border-left: 4px solid var(--hr-highlight, #B533F7);
    border-radius: 4px;
    padding: 0.35rem 1rem;
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
    display: inline-block;
}

/* --- Description / image row --- */
body.uvweb-redesign .project-description,
body.freya2-redesign .project-description,
body.chronobim-redesign .project-description,
body.wormwood-redesign .project-description,
body.cerberus-redesign .project-description,
body.demeter-redesign .project-description,
body.ermes-redesign .project-description,
body.nero-redesign .project-description,
body.gpt-box-redesign .project-description,
body.nutheia-redesign .project-description,
body.deltaprism-redesign .project-description,
body.seismic-nexus-redesign .project-description,
body.rna-structure-redesign .project-description,
body.unreal-engine-redesign .project-description {
    background: rgba(13,15,20,0.30);
    -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 14px;
    padding: 26px 30px;
}
body.uvweb-redesign .project-description p,
body.freya2-redesign .project-description p,
body.chronobim-redesign .project-description p,
body.wormwood-redesign .project-description p,
body.cerberus-redesign .project-description p,
body.demeter-redesign .project-description p,
body.ermes-redesign .project-description p,
body.nero-redesign .project-description p,
body.gpt-box-redesign .project-description p,
body.nutheia-redesign .project-description p,
body.deltaprism-redesign .project-description p,
body.seismic-nexus-redesign .project-description p,
body.rna-structure-redesign .project-description p,
body.unreal-engine-redesign .project-description p {
    font-family: 'Barlow', sans-serif;
    font-size: 17px; line-height: 1.65;
    color: var(--hr-light) !important;
    margin-bottom: 16px;
}
body.uvweb-redesign .project-description p:last-child,
body.freya2-redesign .project-description p:last-child,
body.chronobim-redesign .project-description p:last-child,
body.wormwood-redesign .project-description p:last-child,
body.cerberus-redesign .project-description p:last-child,
body.demeter-redesign .project-description p:last-child,
body.ermes-redesign .project-description p:last-child,
body.nero-redesign .project-description p:last-child,
body.gpt-box-redesign .project-description p:last-child,
body.nutheia-redesign .project-description p:last-child,
body.deltaprism-redesign .project-description p:last-child,
body.seismic-nexus-redesign .project-description p:last-child,
body.rna-structure-redesign .project-description p:last-child,
body.unreal-engine-redesign .project-description p:last-child {
    margin-bottom: 0;
}

body.uvweb-redesign .project-image-container img,
body.freya2-redesign .project-image-container img,
body.chronobim-redesign .project-image-container img,
body.wormwood-redesign .project-image-container img,
body.cerberus-redesign .project-image-container img,
body.demeter-redesign .project-image-container img,
body.ermes-redesign .project-image-container img,
body.nero-redesign .project-image-container img,
body.gpt-box-redesign .project-image-container img,
body.nutheia-redesign .project-image-container img,
body.deltaprism-redesign .project-image-container img,
body.seismic-nexus-redesign .project-image-container img,
body.rna-structure-redesign .project-image-container img,
body.unreal-engine-redesign .project-image-container img {
    border: 1px solid rgba(255,255,255,0.10);
    box-shadow: 0 12px 34px rgba(0,0,0,0.35);
}

/* --- Tech / features / industries columns --- */
body.uvweb-redesign .tech-section,
body.freya2-redesign .tech-section,
body.chronobim-redesign .tech-section,
body.wormwood-redesign .tech-section,
body.cerberus-redesign .tech-section,
body.demeter-redesign .tech-section,
body.ermes-redesign .tech-section,
body.nero-redesign .tech-section,
body.gpt-box-redesign .tech-section,
body.nutheia-redesign .tech-section,
body.deltaprism-redesign .tech-section,
body.seismic-nexus-redesign .tech-section,
body.rna-structure-redesign .tech-section,
body.unreal-engine-redesign .tech-section,
body.uvweb-redesign .features-section,
body.freya2-redesign .features-section,
body.chronobim-redesign .features-section,
body.wormwood-redesign .features-section,
body.cerberus-redesign .features-section,
body.demeter-redesign .features-section,
body.ermes-redesign .features-section,
body.nero-redesign .features-section,
body.gpt-box-redesign .features-section,
body.nutheia-redesign .features-section,
body.deltaprism-redesign .features-section,
body.seismic-nexus-redesign .features-section,
body.rna-structure-redesign .features-section,
body.unreal-engine-redesign .features-section,
body.uvweb-redesign .industry-section,
body.freya2-redesign .industry-section,
body.chronobim-redesign .industry-section,
body.wormwood-redesign .industry-section,
body.cerberus-redesign .industry-section,
body.demeter-redesign .industry-section,
body.ermes-redesign .industry-section,
body.nero-redesign .industry-section,
body.gpt-box-redesign .industry-section,
body.nutheia-redesign .industry-section,
body.deltaprism-redesign .industry-section,
body.seismic-nexus-redesign .industry-section,
body.rna-structure-redesign .industry-section,
body.unreal-engine-redesign .industry-section,
body.uvweb-redesign .results-container,
body.freya2-redesign .results-container,
body.chronobim-redesign .results-container,
body.wormwood-redesign .results-container,
body.cerberus-redesign .results-container,
body.demeter-redesign .results-container,
body.ermes-redesign .results-container,
body.nero-redesign .results-container,
body.gpt-box-redesign .results-container,
body.nutheia-redesign .results-container,
body.deltaprism-redesign .results-container,
body.seismic-nexus-redesign .results-container,
body.rna-structure-redesign .results-container,
body.unreal-engine-redesign .results-container {
    background: rgba(13,15,20,0.30);
    -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 14px;
    padding: 24px 28px;
}

/* --- Tech badges --- */
.tech-badge {
    font-family: 'Barlow', sans-serif;
    font-size: 0.8rem; font-weight: 600;
    display: inline-block;
    background-color: rgba(1,206,211,0.14);
    color: var(--hr-primary, #01CED3);
    border: 1px solid rgba(1,206,211,0.30);
    border-radius: 9999px;
    padding: 0.3rem 0.9rem;
    margin-right: 6px; margin-bottom: 8px;
}

/* --- Feature list / results list bullets --- */
body.uvweb-redesign .feature-list,
body.freya2-redesign .feature-list,
body.chronobim-redesign .feature-list,
body.wormwood-redesign .feature-list,
body.cerberus-redesign .feature-list,
body.demeter-redesign .feature-list,
body.ermes-redesign .feature-list,
body.nero-redesign .feature-list,
body.gpt-box-redesign .feature-list,
body.nutheia-redesign .feature-list,
body.deltaprism-redesign .feature-list,
body.seismic-nexus-redesign .feature-list,
body.rna-structure-redesign .feature-list,
body.unreal-engine-redesign .feature-list,
body.uvweb-redesign .results-container ul,
body.freya2-redesign .results-container ul,
body.chronobim-redesign .results-container ul,
body.wormwood-redesign .results-container ul,
body.cerberus-redesign .results-container ul,
body.demeter-redesign .results-container ul,
body.ermes-redesign .results-container ul,
body.nero-redesign .results-container ul,
body.gpt-box-redesign .results-container ul,
body.nutheia-redesign .results-container ul,
body.deltaprism-redesign .results-container ul,
body.seismic-nexus-redesign .results-container ul,
body.rna-structure-redesign .results-container ul,
body.unreal-engine-redesign .results-container ul {
    list-style: none; padding-left: 0; margin-top: 8px;
}
body.uvweb-redesign .feature-list li,
body.freya2-redesign .feature-list li,
body.chronobim-redesign .feature-list li,
body.wormwood-redesign .feature-list li,
body.cerberus-redesign .feature-list li,
body.demeter-redesign .feature-list li,
body.ermes-redesign .feature-list li,
body.nero-redesign .feature-list li,
body.gpt-box-redesign .feature-list li,
body.nutheia-redesign .feature-list li,
body.deltaprism-redesign .feature-list li,
body.seismic-nexus-redesign .feature-list li,
body.rna-structure-redesign .feature-list li,
body.unreal-engine-redesign .feature-list li,
body.uvweb-redesign .results-container ul li,
body.freya2-redesign .results-container ul li,
body.chronobim-redesign .results-container ul li,
body.wormwood-redesign .results-container ul li,
body.cerberus-redesign .results-container ul li,
body.demeter-redesign .results-container ul li,
body.ermes-redesign .results-container ul li,
body.nero-redesign .results-container ul li,
body.gpt-box-redesign .results-container ul li,
body.nutheia-redesign .results-container ul li,
body.deltaprism-redesign .results-container ul li,
body.seismic-nexus-redesign .results-container ul li,
body.rna-structure-redesign .results-container ul li,
body.unreal-engine-redesign .results-container ul li {
    position: relative; padding-left: 22px; margin-bottom: 10px;
    font-family: 'Barlow', sans-serif; font-size: 15.5px; line-height: 1.55;
    color: var(--hr-text-muted) !important;
}
body.uvweb-redesign .feature-list li::before,
body.freya2-redesign .feature-list li::before,
body.chronobim-redesign .feature-list li::before,
body.wormwood-redesign .feature-list li::before,
body.cerberus-redesign .feature-list li::before,
body.demeter-redesign .feature-list li::before,
body.ermes-redesign .feature-list li::before,
body.nero-redesign .feature-list li::before,
body.gpt-box-redesign .feature-list li::before,
body.nutheia-redesign .feature-list li::before,
body.deltaprism-redesign .feature-list li::before,
body.seismic-nexus-redesign .feature-list li::before,
body.rna-structure-redesign .feature-list li::before,
body.unreal-engine-redesign .feature-list li::before,
body.uvweb-redesign .results-container ul li::before,
body.freya2-redesign .results-container ul li::before,
body.chronobim-redesign .results-container ul li::before,
body.wormwood-redesign .results-container ul li::before,
body.cerberus-redesign .results-container ul li::before,
body.demeter-redesign .results-container ul li::before,
body.ermes-redesign .results-container ul li::before,
body.nero-redesign .results-container ul li::before,
body.gpt-box-redesign .results-container ul li::before,
body.nutheia-redesign .results-container ul li::before,
body.deltaprism-redesign .results-container ul li::before,
body.seismic-nexus-redesign .results-container ul li::before,
body.rna-structure-redesign .results-container ul li::before,
body.unreal-engine-redesign .results-container ul li::before {
    content: '\2022'; position: absolute; left: 4px;
    color: var(--hr-primary);
}
body.uvweb-redesign .results-container p,
body.freya2-redesign .results-container p,
body.chronobim-redesign .results-container p,
body.wormwood-redesign .results-container p,
body.cerberus-redesign .results-container p,
body.demeter-redesign .results-container p,
body.ermes-redesign .results-container p,
body.nero-redesign .results-container p,
body.gpt-box-redesign .results-container p,
body.nutheia-redesign .results-container p,
body.deltaprism-redesign .results-container p,
body.seismic-nexus-redesign .results-container p,
body.rna-structure-redesign .results-container p,
body.unreal-engine-redesign .results-container p {
    font-family: 'Barlow', sans-serif; font-size: 16px;
    color: var(--hr-light) !important; margin-bottom: 14px;
}
body.uvweb-redesign .results-container strong,
body.freya2-redesign .results-container strong,
body.chronobim-redesign .results-container strong,
body.wormwood-redesign .results-container strong,
body.cerberus-redesign .results-container strong,
body.demeter-redesign .results-container strong,
body.ermes-redesign .results-container strong,
body.nero-redesign .results-container strong,
body.gpt-box-redesign .results-container strong,
body.nutheia-redesign .results-container strong,
body.deltaprism-redesign .results-container strong,
body.seismic-nexus-redesign .results-container strong,
body.rna-structure-redesign .results-container strong,
body.unreal-engine-redesign .results-container strong {
    color: var(--hr-highlight) !important;
}

/* --- Responsive: tablet, then phone (built in from the start, matching
   every other DECISION-003 page). --- */
@media (max-width: 1024px) {
    body.uvweb-redesign .project-detail-container h1.gradient-text,
    body.freya2-redesign .project-detail-container h1.gradient-text,
    body.chronobim-redesign .project-detail-container h1.gradient-text,
    body.wormwood-redesign .project-detail-container h1.gradient-text,
    body.cerberus-redesign .project-detail-container h1.gradient-text,
    body.demeter-redesign .project-detail-container h1.gradient-text,
    body.ermes-redesign .project-detail-container h1.gradient-text,
    body.nero-redesign .project-detail-container h1.gradient-text,
    body.gpt-box-redesign .project-detail-container h1.gradient-text,
    body.nutheia-redesign .project-detail-container h1.gradient-text,
    body.deltaprism-redesign .project-detail-container h1.gradient-text,
    body.seismic-nexus-redesign .project-detail-container h1.gradient-text,
    body.rna-structure-redesign .project-detail-container h1.gradient-text,
    body.unreal-engine-redesign .project-detail-container h1.gradient-text {
        font-size: 40px;
    }
}

@media (max-width: 768px) {
    body.uvweb-redesign .project-detail-container h1.gradient-text,
    body.freya2-redesign .project-detail-container h1.gradient-text,
    body.chronobim-redesign .project-detail-container h1.gradient-text,
    body.wormwood-redesign .project-detail-container h1.gradient-text,
    body.cerberus-redesign .project-detail-container h1.gradient-text,
    body.demeter-redesign .project-detail-container h1.gradient-text,
    body.ermes-redesign .project-detail-container h1.gradient-text,
    body.nero-redesign .project-detail-container h1.gradient-text,
    body.gpt-box-redesign .project-detail-container h1.gradient-text,
    body.nutheia-redesign .project-detail-container h1.gradient-text,
    body.deltaprism-redesign .project-detail-container h1.gradient-text,
    body.seismic-nexus-redesign .project-detail-container h1.gradient-text,
    body.rna-structure-redesign .project-detail-container h1.gradient-text,
    body.unreal-engine-redesign .project-detail-container h1.gradient-text {
        font-size: 30px; padding: 12px 18px;
    }
    body.uvweb-redesign .project-detail-container h3.gradient-text,
    body.freya2-redesign .project-detail-container h3.gradient-text,
    body.chronobim-redesign .project-detail-container h3.gradient-text,
    body.wormwood-redesign .project-detail-container h3.gradient-text,
    body.cerberus-redesign .project-detail-container h3.gradient-text,
    body.demeter-redesign .project-detail-container h3.gradient-text,
    body.ermes-redesign .project-detail-container h3.gradient-text,
    body.nero-redesign .project-detail-container h3.gradient-text,
    body.gpt-box-redesign .project-detail-container h3.gradient-text,
    body.nutheia-redesign .project-detail-container h3.gradient-text,
    body.deltaprism-redesign .project-detail-container h3.gradient-text,
    body.seismic-nexus-redesign .project-detail-container h3.gradient-text,
    body.rna-structure-redesign .project-detail-container h3.gradient-text,
    body.unreal-engine-redesign .project-detail-container h3.gradient-text {
        font-size: 19px;
    }
    body.uvweb-redesign .project-description,
    body.freya2-redesign .project-description,
    body.chronobim-redesign .project-description,
    body.wormwood-redesign .project-description,
    body.cerberus-redesign .project-description,
    body.demeter-redesign .project-description,
    body.ermes-redesign .project-description,
    body.nero-redesign .project-description,
    body.gpt-box-redesign .project-description,
    body.nutheia-redesign .project-description,
    body.deltaprism-redesign .project-description,
    body.seismic-nexus-redesign .project-description,
    body.rna-structure-redesign .project-description,
    body.unreal-engine-redesign .project-description,
    body.uvweb-redesign .tech-section,
    body.freya2-redesign .tech-section,
    body.chronobim-redesign .tech-section,
    body.wormwood-redesign .tech-section,
    body.cerberus-redesign .tech-section,
    body.demeter-redesign .tech-section,
    body.ermes-redesign .tech-section,
    body.nero-redesign .tech-section,
    body.gpt-box-redesign .tech-section,
    body.nutheia-redesign .tech-section,
    body.deltaprism-redesign .tech-section,
    body.seismic-nexus-redesign .tech-section,
    body.rna-structure-redesign .tech-section,
    body.unreal-engine-redesign .tech-section,
    body.uvweb-redesign .features-section,
    body.freya2-redesign .features-section,
    body.chronobim-redesign .features-section,
    body.wormwood-redesign .features-section,
    body.cerberus-redesign .features-section,
    body.demeter-redesign .features-section,
    body.ermes-redesign .features-section,
    body.nero-redesign .features-section,
    body.gpt-box-redesign .features-section,
    body.nutheia-redesign .features-section,
    body.deltaprism-redesign .features-section,
    body.seismic-nexus-redesign .features-section,
    body.rna-structure-redesign .features-section,
    body.unreal-engine-redesign .features-section,
    body.uvweb-redesign .industry-section,
    body.freya2-redesign .industry-section,
    body.chronobim-redesign .industry-section,
    body.wormwood-redesign .industry-section,
    body.cerberus-redesign .industry-section,
    body.demeter-redesign .industry-section,
    body.ermes-redesign .industry-section,
    body.nero-redesign .industry-section,
    body.gpt-box-redesign .industry-section,
    body.nutheia-redesign .industry-section,
    body.deltaprism-redesign .industry-section,
    body.seismic-nexus-redesign .industry-section,
    body.rna-structure-redesign .industry-section,
    body.unreal-engine-redesign .industry-section,
    body.uvweb-redesign .results-container,
    body.freya2-redesign .results-container,
    body.chronobim-redesign .results-container,
    body.wormwood-redesign .results-container,
    body.cerberus-redesign .results-container,
    body.demeter-redesign .results-container,
    body.ermes-redesign .results-container,
    body.nero-redesign .results-container,
    body.gpt-box-redesign .results-container,
    body.nutheia-redesign .results-container,
    body.deltaprism-redesign .results-container,
    body.seismic-nexus-redesign .results-container,
    body.rna-structure-redesign .results-container,
    body.unreal-engine-redesign .results-container {
        padding: 18px 20px;
    }
}
