.fpa-consultation {
    --fpa-consult-blue: #357abd;
    --fpa-consult-blue-dark: #234f83;
    --fpa-consult-orange: #e96742;
    --fpa-consult-ink: #1f3556;
    --fpa-consult-muted: #5f6f82;
    color: var(--fpa-consult-ink);
    background: #fff;
}

.fpa-consultation a:not(.fpa-consultation__button) { color: var(--fpa-consult-blue); }

.fpa-consultation *,
.fpa-consultation *::before,
.fpa-consultation *::after { box-sizing: border-box; }
.fpa-consultation__wrap { width: min(100% - 32px, 1120px); margin-inline: auto; }
.fpa-consultation__hero { padding: clamp(64px, 9vw, 104px) 0; background: linear-gradient(135deg, #edf5fd 0%, #fff7f2 100%); text-align: center; }
.fpa-consultation__hero .fpa-consultation__wrap { max-width: 900px; }
.fpa-consultation__eyebrow,
.fpa-consultation__kicker { margin: 0 0 14px; color: var(--fpa-consult-blue); font-size: .86rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.fpa-consultation h1 { max-width: 850px; margin: 0 auto 18px; color: var(--fpa-consult-blue-dark); font-size: clamp(2.15rem, 7vw, 4.4rem); line-height: 1.05; }
.fpa-consultation h2 { margin: 0 0 18px; color: var(--fpa-consult-blue-dark); font-size: clamp(1.75rem, 4vw, 2.65rem); line-height: 1.15; }
.fpa-consultation h3 { color: var(--fpa-consult-blue-dark); }
.fpa-consultation p,
.fpa-consultation li { line-height: 1.7; }
.fpa-consultation__lead { max-width: 760px; margin: 0 auto 24px; font-size: clamp(1.05rem, 2.5vw, 1.25rem); }
.fpa-consultation__deadline { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 8px 14px; margin: 0 auto 26px; padding: 12px 18px; border: 1px solid #bed8ee; border-radius: 999px; background: #fff; }
.fpa-consultation__deadline span { color: var(--fpa-consult-muted); }
.fpa-consultation__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin: 0 0 20px; }
.fpa-consultation__button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 22px; border: 0; border-radius: 10px; background: linear-gradient(135deg, #4a90e2, var(--fpa-consult-blue)); color: #fff; font: inherit; font-weight: 800; text-decoration: none; cursor: pointer; box-shadow: 0 5px 16px rgba(53, 122, 189, .2); }
.fpa-consultation__button:hover { color: #fff; transform: translateY(-1px); }
.fpa-consultation__button--accent { background: linear-gradient(135deg, #ff8a65, var(--fpa-consult-orange)); box-shadow: 0 5px 16px rgba(233, 103, 66, .2); }
.fpa-consultation__button:focus-visible { outline: 3px solid #f5b544; outline-offset: 3px; }
.fpa-consultation__source-note,
.fpa-consultation__privacy { color: var(--fpa-consult-muted); font-size: .9rem; }
.fpa-consultation__contents { position: sticky; z-index: 20; top: 0; border-block: 1px solid #dce8f3; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); }
.admin-bar .fpa-consultation__contents { top: 32px; }
.fpa-consultation__contents .fpa-consultation__wrap { display: flex; align-items: center; gap: 16px; padding-block: 13px; overflow-x: auto; scrollbar-width: thin; }
.fpa-consultation__contents strong,
.fpa-consultation__contents a { flex: 0 0 auto; }
.fpa-consultation__contents a { color: var(--fpa-consult-blue-dark); font-weight: 650; text-decoration: none; }
.fpa-consultation__section { scroll-margin-top: 80px; padding: clamp(58px, 8vw, 88px) 0; }
.fpa-consultation__section--tint { background: #f5f9fd; }
.fpa-consultation__cards { display: grid; gap: 20px; margin-top: 30px; }
.fpa-consultation__cards--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fpa-consultation__cards article { padding: clamp(22px, 3vw, 30px); border: 1px solid #dce8f3; border-top: 4px solid var(--fpa-consult-blue); border-radius: 16px; background: #fff; box-shadow: 0 8px 25px rgba(31, 53, 86, .07); }
.fpa-consultation__cards article:nth-child(2) { border-top-color: var(--fpa-consult-orange); }
.fpa-consultation__cards h3 { margin: 0 0 10px; }
.fpa-consultation__cards ul { margin-bottom: 0; padding-left: 20px; }
.fpa-consultation__notice,
.fpa-consultation__callout { margin-top: 28px; padding: 20px 22px; border-left: 5px solid var(--fpa-consult-blue); border-radius: 8px; background: #eaf4fd; }
.fpa-consultation__checks { display: grid; gap: 12px; padding: 0; list-style: none; }
.fpa-consultation__checks li { position: relative; padding-left: 30px; }
.fpa-consultation__checks li::before { content: "\f00d"; position: absolute; left: 0; top: 1px; color: var(--fpa-consult-orange); font-family: "Font Awesome 6 Free"; font-weight: 900; }
.fpa-consultation__db-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 30px 0 22px; }
.fpa-consultation__db-grid article { padding: 24px 20px; border: 1px solid #cfe1f0; border-top: 4px solid var(--fpa-consult-blue); border-radius: 14px; background: #fff; color: var(--fpa-consult-ink); box-shadow: 0 6px 18px rgba(31, 53, 86, .06); }
.fpa-consultation__db-grid strong { display: block; font-size: 2rem; }
.fpa-consultation__db-grid span { display: block; min-height: 44px; margin-top: 4px; font-weight: 750; }
.fpa-consultation__db-grid p { margin-bottom: 0; font-size: .9rem; }
.fpa-consultation__questions { display: grid; gap: 14px; margin-top: 30px; padding-left: 42px; counter-reset: consult-question; }
.fpa-consultation__questions li { padding: 18px 20px; border: 1px solid #dce8f3; border-radius: 12px; background: #fff; }
.fpa-consultation__questions li::marker { color: var(--fpa-consult-blue); font-weight: 800; }
.fpa-consultation__tracker { display: grid; gap: 18px; margin-top: 28px; }
.fpa-consultation__tracker article { display: grid; grid-template-columns: 150px minmax(0,1fr); gap: 22px; padding: 22px; border-radius: 14px; background: #fff; box-shadow: 0 6px 18px rgba(31,53,86,.06); }
.fpa-consultation__tracker time { color: var(--fpa-consult-blue); font-weight: 800; }
.fpa-consultation__tracker h3 { margin: 0 0 5px; }
.fpa-consultation__tracker p { margin: 0 0 6px; }
.fpa-consultation__position { padding: clamp(28px, 5vw, 48px); border: 1px solid #cfe1f0; border-radius: 18px; background: linear-gradient(135deg, #f1f7fc, #fff); box-shadow: 0 12px 35px rgba(31,53,86,.08); }
.fpa-consultation__neutrality-note { padding: 16px 18px; border-left: 5px solid var(--fpa-consult-blue); border-radius: 8px; background: #fff; }
.fpa-consultation__policy-list { display: grid; gap: 11px; margin: 24px 0; padding-left: 24px; }
.fpa-consultation__policy-list li::marker { color: var(--fpa-consult-blue); }
.fpa-consultation__section--survey { background: #edf5fd; }
.fpa-consultation__survey { display: grid; gap: 24px; margin-top: 28px; padding: clamp(22px, 4vw, 38px); border-radius: 18px; background: #fff; box-shadow: 0 10px 30px rgba(31,53,86,.08); }
.fpa-consultation__form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
.fpa-consultation__survey label:not(.fpa-consultation__consent) { display: grid; gap: 8px; font-weight: 700; }
.fpa-consultation__survey small { color: var(--fpa-consult-muted); font-weight: 400; }
.fpa-consultation__survey select,
.fpa-consultation__survey textarea { width: 100%; padding: 12px 13px; border: 1px solid #718aa2; border-radius: 9px; background: #fff; color: var(--fpa-consult-ink); font: inherit; }
.fpa-consultation__survey select:focus,
.fpa-consultation__survey textarea:focus { outline: 3px solid rgba(74,144,226,.25); border-color: #357abd; }
.fpa-consultation__survey fieldset { padding: 20px; border: 1px solid #cbdbea; border-radius: 12px; }
.fpa-consultation__survey legend { padding-inline: 8px; font-weight: 800; }
.fpa-consultation__checkboxes { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px 16px; }
.fpa-consultation__checkboxes label,
.fpa-consultation__consent { font-weight: 500; }
.fpa-consultation__consent { display: flex; gap: 10px; align-items: flex-start; }
.fpa-consultation__consent input { margin-top: 5px; }
.fpa-consultation__success { padding: 28px; border: 1px solid #a9ddbf; border-radius: 14px; background: #edf9f2; }
.fpa-consultation__success h3 { margin-top: 0; color: #246944; }
.fpa-consultation__error { padding: 14px 16px; border-left: 4px solid #c33; background: #fff0f0; color: #8b1e1e; }
.fpa-consultation__final { padding: 60px 0; background: #234f83; color: #fff; text-align: center; }
.fpa-consultation__final h2,
.fpa-consultation__final p { color: #fff; }
.fpa-consultation__attribution { padding: 24px 0; background: #173a62; color: #dce9f5; font-size: .85rem; }
.fpa-consultation .fpa-consultation__attribution a { color: #fff; }

@media (max-width: 820px) {
    .fpa-consultation__cards--three,
    .fpa-consultation__db-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .fpa-consultation__checkboxes { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .admin-bar .fpa-consultation__contents { top: 46px; }
}

@media (max-width: 560px) {
    .fpa-consultation__cards--three,
    .fpa-consultation__db-grid,
    .fpa-consultation__form-grid,
    .fpa-consultation__checkboxes { grid-template-columns: 1fr; }
    .fpa-consultation__tracker article { grid-template-columns: 1fr; gap: 8px; }
    .fpa-consultation__button { width: 100%; }
    .fpa-consultation__actions { display: grid; }
}

@media (prefers-reduced-motion: reduce) {
    .fpa-consultation *, .fpa-consultation *::before, .fpa-consultation *::after { scroll-behavior: auto !important; transition: none !important; }
}
