/* Phase-one application screens share the public presentation's paper and ink.
   Deliberately scoped: later customer/operator layouts keep their own styling. */
body.phase-one {
    --app-ink: var(--presentation-ink, #302b36);
    --app-muted: var(--presentation-muted, #6f6975);
    --app-line: var(--presentation-line, #e5e0e8);
    --app-paper: var(--presentation-paper, #f5f3ef);
    --app-accent: var(--presentation-accent, #6a58cf);
    --app-accent-dark: #5643b6;
    --app-card: #fffefd;
}
body.phase-one > #main-content { background: #fcfbf9; }
/* Keep the unmodified funding artwork and navigation together while scrolling. */
body.phase-one .portal-header { background: #fff; box-shadow: 0 3px 16px #302b3606; }
body.phase-one .portal-header .funding-masthead { padding: 10px 0; }
body.phase-one .portal-header .funding-masthead img { width: 380px; }
body.phase-one .portal-header .navbar { min-height: 58px; padding-top: 5px; padding-bottom: 5px; }
body.phase-one #main-content,
body.phase-one #main-content [id] { scroll-margin-top: 155px; }
@media (max-width: 991px) {
    body.phase-one .portal-header .funding-masthead { padding: 9px 0; }
    body.phase-one .portal-header .funding-masthead img { width: 350px; }
    body.phase-one .portal-header .navbar { min-height: 56px; }
    body.phase-one .portal-header .navbar-toggler { min-height: 44px; min-width: 44px; }
    body.phase-one .portal-header .navbar-collapse { max-height: calc(100dvh - 145px); overflow-y: auto; padding: 8px 0 16px; }
}
body.phase-one .text-muted { color: #756d7c !important; }
body.phase-one .catalogue-eyebrow,
body.phase-one .portal-card-eyebrow { color: #7b6788; line-height: 1.8; }

/* Shared actions and fields: keep danger/warning semantics independent. */
body.phase-one .btn { min-height: 44px; border-radius: 8px; font-size: 16px; font-weight: 600; line-height: 1.5; padding: 11px 18px; }
body.phase-one .btn-primary { color: #fff; background: var(--app-accent); border-color: var(--app-accent); box-shadow: none; }
body.phase-one .btn-primary:hover,
body.phase-one .btn-primary:focus-visible,
body.phase-one .btn-primary:active { color: #fff; background: var(--app-accent-dark); border-color: var(--app-accent-dark); }
body.phase-one .btn-outline-primary { color: var(--app-accent-dark); background: transparent; border-color: #bcaedc; }
body.phase-one .btn-outline-primary:hover,
body.phase-one .btn-outline-primary:focus-visible { color: #fff; background: var(--app-accent); border-color: var(--app-accent); }
body.phase-one .btn-outline-secondary { color: #65576e; border-color: #cfc5d6; background: #fff; }
body.phase-one .btn-outline-secondary:hover { color: #47374f; background: #f0ebf4; border-color: #b9a9c6; }
body.phase-one .btn:disabled { opacity: .6; cursor: not-allowed; }
body.phase-one .form-control,
body.phase-one .form-select { min-height: 46px; border: 1px solid #dcd3e2; border-radius: 8px; background-color: #fffefd; color: var(--app-ink); font-size: 16px; line-height: 1.65; padding: 10px 13px; box-shadow: none; }
body.phase-one .form-select { padding-right: 36px; }
body.phase-one .form-control::placeholder { color: #64576e; opacity: 1; }
body.phase-one .form-control:focus,
body.phase-one .form-select:focus { background-color: #fff; border-color: #9b85c9; outline: 0; box-shadow: 0 0 0 3px #8d72c51c; }
body.phase-one .form-control:focus-visible,
body.phase-one .form-select:focus-visible { outline: 2px solid #8e7de3; outline-offset: 2px; }
body.phase-one .form-label { color: #5c4d67; font-size: 16px; font-weight: 600; margin-bottom: 9px; }
body.phase-one textarea.form-control { resize: vertical; }
body.phase-one .alert { border-radius: 10px; padding: 16px 18px; font-size: 16px; line-height: 1.8; overflow-wrap: anywhere; }
body.phase-one .alert-danger { background: #fcf0f1; color: #8d3547; border-color: #ecc7cf; }
body.phase-one .alert-success { background: #eef7f1; color: #326c4c; border-color: #cfe3d7; }
body.phase-one .alert-info { background: #f1edf9; color: #625083; border-color: #ddd2ed; }

/* Login, recovery, reset and both MFA screens use the existing semantic forms. */
body.phase-one .application-auth-page { padding-top: 62px !important; padding-bottom: 76px !important; }
body.phase-one .application-auth-page > .row { margin: 0; }
body.phase-one .application-auth-card { flex: 0 1 540px; width: 100%; max-width: 540px; min-width: 0; border: 1px solid var(--app-line); border-radius: 14px; padding: 38px; background: var(--app-card); box-shadow: 0 14px 45px #44354d06; }
body.phase-one .application-auth-page h1 { color: var(--app-ink); font-size: clamp(28px, 3.4vw, 38px); font-weight: 650; letter-spacing: -.04em; line-height: 1.15; margin-bottom: 18px; }
body.phase-one .application-auth-page p { color: var(--app-muted); font-size: 16px; line-height: 1.85; overflow-wrap: anywhere; }
body.phase-one .application-auth-page form { margin-top: 25px; }
body.phase-one .application-auth-page form p { font-size: 14px; }
body.phase-one .application-auth-page .btn { margin-top: 4px; }
body.phase-one .application-auth-page a:not(.btn) { color: var(--app-accent-dark); text-decoration-thickness: 1px; text-underline-offset: 3px; }
body.phase-one .application-auth-page .alert-danger { color: #8d3547; }
body.phase-one .application-auth-page .alert-info { color: #625083; }
body.phase-one .application-auth-page input[inputmode="numeric"] { font-size: 20px; letter-spacing: .2em; font-variant-numeric: tabular-nums; }
body.phase-one #enrollment-secret { display: block; padding: 14px 16px; margin-top: 9px; border: 1px solid #ded3e8; border-radius: 8px; background: #f4eff8; color: #694d80; font-size: 16px; line-height: 1.8; word-break: break-word; user-select: all; }

/* Privacy documents retain every warning, status and legal paragraph. */
body.phase-one .privacy-page { background: var(--app-paper); padding: 64px 0 76px; }
body.phase-one .privacy-shell { max-width: 1000px; }
body.phase-one .privacy-heading { margin-bottom: 32px; }
body.phase-one .privacy-heading .portal-eyebrow { color: #7a6687; font-size: 14px; letter-spacing: .15em; line-height: 1.8; }
body.phase-one .privacy-heading h1 { color: var(--app-ink); font-size: clamp(32px, 4vw, 49px); font-weight: 650; letter-spacing: -.04em; line-height: 1.15; margin: 13px 0 20px; }
body.phase-one .privacy-heading > p:not(.portal-eyebrow) { color: var(--app-muted); font-size: 16px; line-height: 1.85; }
body.phase-one .privacy-status { border: 1px solid #e7d4ae; border-radius: 10px; background: #fff6e5; color: #80581e; padding: 20px; margin-bottom: 24px; }
body.phase-one .privacy-status strong { color: #765019; font-size: 16px; }
body.phase-one .privacy-status span { font-size: 16px; line-height: 1.85; margin-top: 5px; }
body.phase-one .privacy-grid { gap: 22px; }
body.phase-one .privacy-card { min-width: 0; padding: 28px; border: 1px solid var(--app-line); border-radius: 12px; background: var(--app-card); box-shadow: none; }
body.phase-one .privacy-card .portal-card-eyebrow { font-size: 14px; letter-spacing: .13em; margin-bottom: 17px; }
body.phase-one .privacy-card h2 { color: #48374f; font-size: 23px; font-weight: 600; letter-spacing: -.025em; line-height: 1.3; margin-bottom: 18px; }
body.phase-one .privacy-card h3 { color: #55415f; font-size: 17px; font-weight: 600; }
body.phase-one .privacy-card p,
body.phase-one .privacy-card li { color: #6b6173; font-size: 16px; line-height: 1.85; overflow-wrap: anywhere; }
body.phase-one .privacy-card li + li { margin-top: 8px; }
body.phase-one .privacy-card a { color: var(--app-accent-dark); text-underline-offset: 3px; }
body.phase-one .privacy-next-step { background: #faf4e7; color: #7c5b28; border-color: #e6d5b6; border-radius: 8px; font-size: 16px; line-height: 1.85; }
body.phase-one .cookie-table { background: #fff; margin-top: 20px; }
body.phase-one .cookie-table th,
body.phase-one .cookie-table td { border-color: #e7e0eb; color: #695b73; padding: 16px; font-size: 14px; line-height: 1.8; }
body.phase-one .cookie-table thead th { background: #f4f0f7; color: #705881; font-size: 14px; letter-spacing: .08em; }
body.phase-one .cookie-table code { color: #72558a; font-weight: 600; font-size: 14px; }
body.phase-one .cookie-table caption { color: #7d6d88; font-size: 14px; padding-top: 0; padding-bottom: 12px; }
body.phase-one .cookie-details-dialog { background: var(--app-card); border-color: var(--app-line); box-shadow: 0 20px 90px #30223626; }
body.phase-one .cookie-details-heading h2 { font-weight: 600; color: #47364f; }
body.phase-one .cookie-details-category { background: #f6f2f9; border-color: #e4dcea; }

/* The editorial workspace remains operational, with denser cards than the public story. */
body.phase-one .editor-workspace { padding-top: 30px; padding-bottom: 72px; }
body.phase-one .editor-workspace-bar { padding-bottom: 22px; margin-bottom: 38px; border-color: var(--app-line); }
body.phase-one .editor-workspace-bar nav { font-size: 14px; color: #7d6a8a; }
body.phase-one .editor-workspace-bar nav a,
body.phase-one .editor-public-link { color: #70577f; }
body.phase-one .editor-workspace > .catalogue-heading { margin-bottom: 28px; align-items: center; }
body.phase-one .editor-workspace > .catalogue-heading h1,
body.phase-one .product-editor-heading h1 { color: var(--app-ink); font-size: clamp(29px, 3.4vw, 43px); font-weight: 650; letter-spacing: -.04em; line-height: 1.2; margin-bottom: 12px; }
body.phase-one .editor-workspace > p { color: var(--app-muted); font-size: 16px; line-height: 1.85; }
body.phase-one .catalogue-manage-tabs { gap: 10px; margin-bottom: 22px; }
body.phase-one .catalogue-manage-tabs a { border-color: #ded3e7; border-radius: 7px; background: #fff; color: #745983; font-size: 16px; padding: 11px 18px; min-height: 44px; }
body.phase-one .catalogue-manage-tabs a[aria-current="page"] { color: #fff; background: #72558d; border-color: #72558d; }
body.phase-one .editor-workspace .catalogue-filters { background: #f2eef6; border: 1px solid #e5ddea; padding: 22px; margin: 26px 0 22px; border-radius: 10px; }
body.phase-one .editor-workspace .catalogue-filters label { color: #70597f; font-size: 14px; }
body.phase-one .editor-workspace .table-responsive { border: 1px solid #e4dce9; border-radius: 10px; background: var(--app-card); }
body.phase-one .catalogue-manage-table { margin: 0; color: #65546f; }
body.phase-one .catalogue-manage-table thead th { padding: 17px 20px; background: #f6f2f9; border-color: #e4dce9; color: #776183; font-size: 14px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
body.phase-one .catalogue-manage-table tbody th,
body.phase-one .catalogue-manage-table td { padding: 20px; border-color: #ece5f0; font-size: 14px; line-height: 1.75; background: var(--app-card); }
body.phase-one .catalogue-manage-table tbody th a { color: #5f4274; font-size: 16px; font-weight: 600; text-decoration: none; }
body.phase-one .catalogue-manage-table tbody th a:hover { text-decoration: underline; text-underline-offset: 3px; }
body.phase-one .catalogue-row-actions { gap: 8px; }
body.phase-one .catalogue-row-actions .btn { font-size: 14px; padding: 8px 12px; min-height: 36px; }
body.phase-one .product-editor-intro { color: #75687f; font-size: 16px; }
body.phase-one .product-status { border-color: #ded3e7; background: #f2edf7; color: #775c8c; font-size: 14px; padding: 9px 14px; }
body.phase-one .product-status.is-published { color: #367651; background: #edf7f0; border-color: #cfe6d8; }
body.phase-one .product-editor-card,
body.phase-one .catalogue-media-editor.product-editor-media { background: var(--app-card); border-color: var(--app-line); border-radius: 12px; box-shadow: none; }
body.phase-one .product-section-icon { border-radius: 9px; background: #f0eaf6; color: #9b7cb1; }
body.phase-one .product-card-heading h2,
body.phase-one .product-editor-media .product-card-heading h2 { color: #4b3758; font-size: 19px; font-weight: 600; line-height: 1.45; }
body.phase-one .product-card-heading p { color: #7e6c8b; font-size: 14px; line-height: 1.8; }
body.phase-one .product-editor-layout .product-field label { color: #66506f; font-size: 16px; }
body.phase-one .product-editor-layout .product-field .form-control { background: #fffefd; border-color: #ddd2e5; border-radius: 8px; color: #4c3b58; padding: 12px 14px; font-size: 16px; }
body.phase-one .product-editor-layout .product-field .form-control:focus { background: #fff; border-color: #9b85c9; box-shadow: 0 0 0 3px #8d72c51c; }
body.phase-one .product-editor-layout .product-field .form-control::placeholder { color: #64576e; }
body.phase-one .product-editor-layout .product-field small { color: #7d6b89; font-size: 14px; line-height: 1.8; }
body.phase-one .product-publish-note { background: #f3eef8; color: #775d89; border-radius: 8px; }
body.phase-one .product-publish-note p { font-size: 14px; line-height: 1.85; }
body.phase-one .product-publish-actions .btn { font-size: 16px; min-height: 44px; padding: 11px 14px; }
body.phase-one .product-public-preview { color: #745888; font-size: 14px; }
body.phase-one .product-withdraw-button { color: #995966; font-size: 14px; min-height: 40px; }
body.phase-one .product-editor-meta { border-color: #e7dfed; color: #7d6a8b; font-size: 14px; line-height: 1.7; }
body.phase-one .product-editor-meta strong { color: #634970; }
body.phase-one .product-editor-side-note { color: #7f6b8d; }
body.phase-one .product-editor-side-note p { font-size: 14px; line-height: 1.8; }
body.phase-one .product-editor-delete { color: #a05e72; font-size: 14px; }
body.phase-one .product-upload-options .product-upload-option { background: #faf7fc; border-color: #d5c6e0; border-radius: 10px; }
body.phase-one .product-upload-option h3 { color: #644974; font-size: 16px; }
body.phase-one .product-upload-option p { color: #64576e; font-size: 14px; }
body.phase-one .product-upload-option .btn { font-size: 14px; padding: 10px 15px; }
body.phase-one .product-media-feedback { background: #f1ebf7; color: #785d8d; border-radius: 8px; }
body.phase-one .product-media-feedback .catalogue-media-message,
body.phase-one .product-media-guidance { color: #7b648b; font-size: 14px; line-height: 1.85; }
body.phase-one .product-editor-media .form-hint { color: #64576e; font-size: 14px; line-height: 1.85; border-color: #e7dfee; }
body.phase-one .product-editor-media [data-basic-validation] { margin-bottom: 22px; padding: 14px 16px; border: 1px solid #e4d6b5; border-radius: 8px; background: #fcf6e9; color: #806331; }
body.phase-one .product-editor-media .catalogue-media-card { background: #fffefd; border-color: #e0d6e8; }
body.phase-one .product-editor-media .catalogue-media-card-body > strong { color: #644b72; font-size: 16px; }
body.phase-one .product-editor-media .catalogue-media-status { color: #7c628e; font-size: 14px; }
body.phase-one .product-editor-media [data-media-status="INCLUDED"] .catalogue-media-status { color: #367651; background: #edf7f0; }
body.phase-one .product-editor-media [data-media-status="REJECTED"] .catalogue-media-status { color: #9b4157; background: #fceef2; }
body.phase-one .product-editor-media .catalogue-media-card label { color: #7c658c; font-size: 14px; }
body.phase-one .product-editor-media .catalogue-media-card button { min-height: 36px; font-size: 14px; }
body.phase-one .catalogue-history.product-editor-history { background: var(--app-card); border-color: var(--app-line); border-radius: 10px; }
body.phase-one .product-editor-history summary { color: #715383; font-size: 16px; min-height: 52px; }
body.phase-one .product-editor-history summary > span { color: #806e8c; font-size: 14px; }
body.phase-one .product-editor-history li { border-color: #ede6f1; color: #64576e; font-size: 14px; }
body.phase-one .product-editor-history li strong { color: #6c4d7d; }

/* Destructive confirmation and not-found keep their distinct purpose. */
body.phase-one .catalogue-delete-confirmation { padding: 36px; border-color: #e5dbe9; border-radius: 12px; background: var(--app-card); }
body.phase-one .catalogue-delete-confirmation h1 { color: var(--app-ink); font-size: clamp(28px, 3.4vw, 39px); font-weight: 650; letter-spacing: -.035em; line-height: 1.2; }
body.phase-one .catalogue-delete-confirmation p { font-size: 16px; line-height: 1.85; color: #75647f; }
body.phase-one .catalogue-delete-confirmation .catalogue-delete-title { color: #694275; font-size: 21px; }
body.phase-one .friendly-404 { padding-top: 62px; padding-bottom: 76px; }
body.phase-one .friendly-404-art { color: #b39bc0; margin-bottom: 30px; }
body.phase-one .friendly-404-zero { border-color: #dcd0e5; background: #f2ecf6; color: #9475a8; }
body.phase-one .friendly-404 h1 { color: var(--app-ink); font-weight: 650; letter-spacing: -.04em; }
body.phase-one .friendly-404 p:not(.catalogue-eyebrow) { color: #76677f; font-size: 16px; }
body.phase-one .application-error-page { padding-top: 64px; padding-bottom: 76px; }
body.phase-one .application-error-page h1 { color: var(--app-ink); font-size: clamp(29px, 4vw, 43px); line-height: 1.2; letter-spacing: -.04em; font-weight: 650; margin-bottom: 22px; }
body.phase-one .application-error-page p { color: var(--app-muted); line-height: 1.85; }

@media (max-width: 991px) {
    body.phase-one .catalogue-editor-form.product-editor-layout { grid-template-columns: minmax(0, 1fr); gap: 22px; }
    body.phase-one .product-editor-sidebar { position: static; }
    body.phase-one .product-editor-card { padding: 25px; }
    body.phase-one .product-publish-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.phase-one .editor-workspace .catalogue-heading { align-items: flex-start; }
}
@media (max-width: 767px) {
    body.phase-one .application-auth-page { padding-top: 34px !important; padding-bottom: 44px !important; }
    body.phase-one .application-auth-card { padding: 28px; border-radius: 12px; }
    body.phase-one .privacy-page { padding-top: 40px; padding-bottom: 48px; }
    body.phase-one .privacy-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    body.phase-one .privacy-card-wide { grid-column: auto; }
    body.phase-one .privacy-card { padding: 24px; }
    body.phase-one .privacy-card h2 { font-size: 22px; }
    body.phase-one .privacy-heading > p:not(.portal-eyebrow) { font-size: 16px; }
    body.phase-one .cookie-table { min-width: 620px; }
    body.phase-one .editor-workspace { padding-top: 24px; padding-bottom: 48px; }
    body.phase-one .editor-workspace-bar { flex-wrap: wrap; gap: 14px; padding-bottom: 20px; margin-bottom: 28px; }
    body.phase-one .editor-workspace > .catalogue-heading { gap: 18px; }
    body.phase-one .catalogue-manage-table { min-width: 740px; }
    body.phase-one .catalogue-row-actions .btn { min-height: 44px; }
    body.phase-one .product-editor-card,
    body.phase-one .catalogue-media-editor.product-editor-media { padding: 23px; }
    body.phase-one .product-editor-history li { flex-wrap: wrap; gap: 8px 15px; }
    body.phase-one .product-editor-history li > span { margin-left: 0; }
    body.phase-one .catalogue-delete-confirmation { padding: 27px; }
    body.phase-one .friendly-404 { padding-top: 44px; padding-bottom: 52px; }
    body.phase-one .application-error-page { padding-top: 44px; padding-bottom: 52px; }
}
@media (max-width: 479px) {
    body.phase-one .application-auth-card { padding: 23px 20px; }
    body.phase-one .application-auth-page h1 { font-size: 29px; }
    body.phase-one .form-control,
    body.phase-one .form-select,
    body.phase-one .product-editor-layout .product-field .form-control { font-size: 16px; }
    body.phase-one .privacy-status { padding: 17px; }
    body.phase-one .privacy-card { padding: 21px; }
    body.phase-one .editor-workspace > .catalogue-heading { display: block; }
    body.phase-one .editor-workspace > .catalogue-heading form { margin-top: 20px; }
    body.phase-one .editor-workspace > .catalogue-heading form .btn { width: 100%; }
    body.phase-one .editor-workspace .catalogue-filters { padding: 19px; }
    body.phase-one .product-editor-heading { display: block; }
    body.phase-one .product-status { margin-top: 14px; }
    body.phase-one .product-editor-card,
    body.phase-one .catalogue-media-editor.product-editor-media { padding: 21px; }
    body.phase-one .product-card-heading { gap: 11px; }
    body.phase-one .product-card-heading h2,
    body.phase-one .product-editor-media .product-card-heading h2 { font-size: 18px; }
    body.phase-one .product-publish-actions { grid-template-columns: minmax(0, 1fr); }
    body.phase-one .product-optional { font-size: 14px; padding: 5px 7px; }
    body.phase-one .product-editor-media .catalogue-media-card button { min-height: 44px; }
    body.phase-one .product-editor-history summary { padding: 17px; gap: 7px; }
    body.phase-one .product-editor-history summary > span { font-size: 14px; }
    body.phase-one .catalogue-delete-confirmation { padding: 23px; }
    body.phase-one .catalogue-delete-confirmation .catalogue-actions { align-items: stretch; flex-direction: column; gap: 12px; }
    body.phase-one .friendly-404 .catalogue-actions { align-items: stretch; flex-direction: column; gap: 18px; }
}
/* Readability: descriptive copy is body-sized; secondary labels never shrink on mobile. */
body.phase-one .catalogue-card-copy p,
body.phase-one .presentation-reading-steps p,
body.phase-one .presentation-product-disclosure p,
body.phase-one .presentation-product .catalogue-description,
body.phase-one .presentation-product .catalogue-specifications,
body.phase-one .catalogue-empty p { font-size: 16px; line-height: 1.85; }
body.phase-one .presentation-kicker,
body.phase-one .catalogue-eyebrow,
body.phase-one .presentation-material { font-size: 14px; letter-spacing: .1em; }
body.phase-one .presentation-quick-facts > div { min-width: 0; }
body.phase-one .presentation-hero-caption { flex-wrap: wrap; }
body.phase-one .presentation-hero-caption > span { white-space: normal; }
body.phase-one .presentation-art .catalogue-art-label { max-width: 100%; }
body.phase-one .presentation-art figcaption { flex-wrap: wrap; }
body.phase-one .presentation-visual-note { max-width: 100%; }
body.phase-one .presentation-visual-note p { font-size: 14px; line-height: 1.65; }
body.phase-one .funding-project-link span:first-child { font-size: 14px; color: #64576e; }
body.phase-one .portal-header .nav-link { font-size: 16px; }
body.phase-one .project-source { font-size: 14px; line-height: 1.8; }
body.phase-one .catalogue-filters label { font-size: 14px; }
body.phase-one .editor-account-summary small,
body.phase-one .editor-account-identity > span,
body.phase-one .editor-account-identity small { font-size: 14px; }
body.phase-one .footer-identity > p,
body.phase-one .footer-project p { font-size: 16px; line-height: 1.85; color: #c4c9d5; }
body.phase-one .footer-project-label,
body.phase-one .footer-cookie-note,
body.phase-one .footer-legal a { font-size: 14px; line-height: 1.8; }
@media (max-width: 767px) {
    body.phase-one .presentation-quick-facts { grid-template-columns: 1fr; }
    body.phase-one .presentation-quick-facts > div,
    body.phase-one .presentation-quick-facts > div:nth-child(3) { grid-column: auto; border-left: 0; border-top: 1px solid var(--app-line); padding: 16px 0 0; flex-direction: column; align-items: flex-start; gap: 6px; }
    body.phase-one .presentation-quick-facts > div:first-child { border-top: 0; padding-top: 0; }
    body.phase-one .presentation-quick-facts > div:nth-child(3) dt { max-width: none; }
    body.phase-one .presentation-hero .catalogue-actions { align-items: flex-start; flex-direction: column; }
    body.phase-one .presentation-partner-credit { align-items: flex-start; flex-direction: column; }
    body.phase-one .presentation-visual-note { position: static; margin: 12px 0 0; }
    body.phase-one .presentation-hero-visual { padding-bottom: 0; }
}
@media (prefers-reduced-motion: reduce) {
    body.phase-one .btn,
    body.phase-one .form-control,
    body.phase-one .form-select { transition: none; }
}
