/* Hunting Holsters finder theme. Scope all refinements to the finder component. */
.page-wrapper .haroone-holster-finder {
    --hf-bg: var(--color-surface); --hf-surface: var(--color-surface); --hf-ink: var(--color-fg); --hf-muted: var(--color-fg-secondary);
    --hf-soft: var(--color-surface); --hf-line: var(--color-line); --hf-green:var(--color-primary); --hf-green-dark:var(--color-primary);
    --hf-yellow:var(--color-primary); --hf-yellow-dark:var(--color-primary-darker); --hf-radius:10px; --hf-radius-lg:20px;
    --hf-shadow:none; --hf-shadow-sm:none;
    width:100%; max-width:100%; margin:0; background: var(--color-surface); color: var(--color-fg);
    font-family:var(--font-sans,Barlow,system-ui,sans-serif); overflow:visible; min-height:0;
}
.page-wrapper .haroone-holster-finder .hf-container { max-width:1200px; padding:56px 24px 72px; margin:auto; }
.page-wrapper .haroone-holster-finder .hf-container::before,
.page-wrapper .haroone-holster-finder .hf-container::after { display:none; }
.page-wrapper .haroone-holster-finder .hf-header { max-width:800px; margin:0 auto 32px; text-align:center; }
.page-wrapper .haroone-holster-finder .hf-eyebrow { color: var(--color-accent-ink); font-size:12px; font-weight:600; letter-spacing:.16em; margin-bottom:16px; }
.page-wrapper .haroone-holster-finder .hf-title { font-family:var(--font-display,'Barlow Condensed',sans-serif); font-size:clamp(48px,5.5vw,80px); font-weight:700; line-height:1; letter-spacing:-.02em; text-transform:uppercase; color: var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-subtitle { color: var(--color-fg-secondary); font-size:17px; line-height:1.65; max-width:640px; margin:20px auto 0; }
.page-wrapper .haroone-holster-finder .hf-trust { color: var(--color-fg-secondary); font-size:13px; font-weight:400; margin-top:16px; }
.page-wrapper .haroone-holster-finder .hf-trust-icon { color: var(--color-accent-ink); }
.page-wrapper .haroone-holster-finder .hf-progress { display:none; max-width:760px; margin:0 auto 40px; gap:16px; }
.page-wrapper .haroone-holster-finder .hf-progress-line { top:20px; background: var(--color-hide-deep); height:1px; }
.page-wrapper .haroone-holster-finder .hf-progress-line::before { box-shadow:none; }
.page-wrapper .haroone-holster-finder .hf-progress-step span { background: var(--color-surface); border: 1px solid var(--color-line); width:40px; height:40px; box-shadow:none; font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-progress-step--active span,
.page-wrapper .haroone-holster-finder .hf-progress-step--complete span { background: var(--color-primary); color: var(--color-on-primary); border-color: var(--color-primary); box-shadow:none; }
.page-wrapper .haroone-holster-finder .hf-progress-step strong { font-weight:600; font-size:14px; color: var(--color-fg-secondary); }
.page-wrapper .haroone-holster-finder .hf-progress-step--active strong { color: var(--color-accent-ink); }
.page-wrapper .haroone-holster-finder .hf-progress-step small { color: var(--color-fg-secondary); }
.page-wrapper .haroone-holster-finder .hf-finder-layout { grid-template-columns:minmax(0,1fr); gap:24px; }
.page-wrapper .haroone-holster-finder .hf-main-column { grid-template-columns:minmax(0,1fr) 296px; gap:24px; align-items:start; }
.page-wrapper .haroone-holster-finder .hf-form,
.page-wrapper .haroone-holster-finder .hf-assurance-card,
.page-wrapper .haroone-holster-finder .hf-help-card,
.page-wrapper .haroone-holster-finder .hf-card,
.page-wrapper .haroone-holster-finder .hf-empty,
.page-wrapper .haroone-holster-finder .hf-benefits,
.page-wrapper .haroone-holster-finder .hf-applied-toolbar { background: var(--color-surface); border: 1px solid var(--color-line); box-shadow:none;   border-radius:20px; }
.page-wrapper .haroone-holster-finder .hf-form { padding:32px; }
.page-wrapper .haroone-holster-finder .hf-form-header { grid-template-columns:auto minmax(0,1fr); gap:16px; margin-bottom:28px; padding-bottom:24px; border-bottom: 1px solid var(--color-line); }
.page-wrapper .haroone-holster-finder .hf-form-header h2,
.page-wrapper .haroone-holster-finder .hf-results-title,
.page-wrapper .haroone-holster-finder .hf-empty-title { font-family:var(--font-display,'Barlow Condensed',sans-serif); font-size:32px; font-weight:600; text-transform:uppercase; line-height:1.15; color: var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-form-header .hf-privacy { grid-column:2; white-space:normal; font-size:12px; color: var(--color-fg-secondary); }
.page-wrapper .haroone-holster-finder .hf-form-icon { width:48px; height:48px; border-radius:50%; background: var(--color-surface); border: 1px solid var(--color-line); color: var(--color-accent-ink); box-shadow:none; }
.page-wrapper .haroone-holster-finder .hf-field-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.page-wrapper .haroone-holster-finder .hf-field > label { font-weight:600; letter-spacing:.06em; color: var(--color-fg-secondary); font-size:12px; }
/* The module declares its controls important, so these scoped values must match that priority. */
.page-wrapper .haroone-holster-finder .hf-input-wrap,
.page-wrapper .haroone-holster-finder .hf-input,
.page-wrapper .haroone-holster-finder .hf-select,
.page-wrapper .haroone-holster-finder .hf-input:is(:focus,:active,:not(:placeholder-shown)),
.page-wrapper .haroone-holster-finder .hf-select:is(:focus,:active) { background-color: var(--color-bg) !important; border-color: var(--color-line) !important; color: var(--color-fg) !important; box-shadow:none !important; font-size:16px; min-height:54px !important; height:54px !important; border-radius:var(--radius-xl) !important; }
.page-wrapper .haroone-holster-finder .hf-input-wrap .hf-input,
.page-wrapper .haroone-holster-finder .hf-input-wrap .hf-input:is(:focus,:active,:not(:placeholder-shown)) { background: transparent !important; border: 0 !important; }
.page-wrapper .haroone-holster-finder .hf-input::placeholder { color: var(--color-fg-secondary); opacity:1; }
.page-wrapper .haroone-holster-finder .hf-input-wrap:focus-within,
.page-wrapper .haroone-holster-finder .hf-input:focus,
.page-wrapper .haroone-holster-finder .hf-select:focus { border-color: var(--color-primary) !important; outline:2px solid var(--color-primary); outline-offset:0; box-shadow:none !important; }
.page-wrapper .haroone-holster-finder .hf-input-wrap .hf-input:focus { outline:none; }
.page-wrapper .haroone-holster-finder .hf-chip { min-height:36px; padding:6px 12px; background: var(--color-surface); border: 1px solid var(--color-line); color: var(--color-fg-secondary); font-weight:500; }
.page-wrapper .haroone-holster-finder .hf-chip--active,
.page-wrapper .haroone-holster-finder .hf-choice--selected { background: var(--color-hide-deep); border-color: var(--color-primary); color: var(--color-accent-ink); box-shadow:none; }
.page-wrapper .haroone-holster-finder .hf-choice { min-height:54px; background: var(--color-surface); border-color: var(--color-line); color: var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-choice--selected { background: var(--color-hide-deep); border-color: var(--color-primary); }
.page-wrapper .haroone-holster-finder .hf-action-panel { grid-column:1/-1; padding-top:12px; }
.page-wrapper .haroone-holster-finder .hf-submit-btn,
.page-wrapper .haroone-holster-finder .hf-card-cta,
.page-wrapper .haroone-holster-finder .hf-empty-submit { background: var(--color-primary); color: var(--color-on-primary); border: 1px solid var(--color-primary); min-height:54px; box-shadow:none; font-family:var(--font-display); font-size:18px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; }
.page-wrapper .haroone-holster-finder .hf-submit-btn:hover,
.page-wrapper .haroone-holster-finder .hf-card-cta:hover,
.page-wrapper .haroone-holster-finder .hf-empty-submit:hover { --hf-yellow: var(--color-primary-darker); background: var(--color-primary-darker); color: var(--color-on-primary); transform:none; }
.page-wrapper .haroone-holster-finder .hf-submit-btn,
.page-wrapper .haroone-holster-finder .hf-submit-btn:is(:hover, :focus, :active) { color: var(--color-on-primary) !important; }
.page-wrapper .haroone-holster-finder .hf-secondary-btn { min-height:48px; background: transparent; border-color: var(--color-line); color: var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-assurance { margin:0; min-width:0; }
.page-wrapper .haroone-holster-finder .hf-assurance-card { display:grid; grid-template-columns:1fr; padding:8px 24px; }
.page-wrapper .haroone-holster-finder .hf-assurance-item { padding:24px 0; border: 0; gap:12px; }
.page-wrapper .haroone-holster-finder .hf-assurance-item + .hf-assurance-item { border-left: 0; border-top: 1px solid var(--color-line); }
.page-wrapper .haroone-holster-finder .hf-assurance-item > .fa { background: transparent; border: 0; font-size:22px; width:32px; height:32px; }
.page-wrapper .haroone-holster-finder .hf-assurance-item strong { font-size:15px; font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-assurance-item p { font-size:14px; line-height:1.6; color: var(--color-fg-secondary); }
.page-wrapper .haroone-holster-finder .hf-help-text { font-size:14px; line-height:1.6; margin:20px 8px 0; color: var(--color-fg-secondary); }
.page-wrapper .haroone-holster-finder .hf-results { margin-top:48px; }
.page-wrapper .haroone-holster-finder .hf-card { overflow:hidden; }
.page-wrapper .haroone-holster-finder .hf-card-media { background: var(--color-surface); border: 0; }
.page-wrapper .haroone-holster-finder .hf-card-title { font-family:var(--font-display); font-weight:600; font-size:24px; }
.page-wrapper .haroone-holster-finder .hf-empty-input,
.page-wrapper .haroone-holster-finder .hf-empty-textarea { background: var(--color-surface); color: var(--color-fg); border: 1px solid var(--color-line); font-size:16px; }
.page-wrapper .haroone-holster-finder :is(button,a,input,select,textarea):focus-visible { outline:2px solid var(--color-primary); outline-offset:3px; }
@media (max-width:1000px) {
    .page-wrapper .haroone-holster-finder .hf-main-column { grid-template-columns:minmax(0,1fr); }
    .page-wrapper .haroone-holster-finder .hf-assurance-card { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
    .page-wrapper .haroone-holster-finder .hf-assurance-item + .hf-assurance-item { border: 0; }
}
@media (max-width:640px) {
    .page-wrapper .haroone-holster-finder .hf-container { padding:32px 16px 48px; }
    .page-wrapper .haroone-holster-finder .hf-header { text-align:left; margin-bottom:28px; }
    .page-wrapper .haroone-holster-finder .hf-subtitle { font-size:15px; margin-top:16px; }
    .page-wrapper .haroone-holster-finder .hf-trust { align-items:flex-start; text-align:left; line-height:1.5; }
    .page-wrapper .haroone-holster-finder .hf-progress { gap:8px; margin-bottom:28px; }
    .page-wrapper .haroone-holster-finder .hf-progress-step { gap:10px; }
    .page-wrapper .haroone-holster-finder .hf-progress-step strong { font-size:12px; line-height:1.3; }
    .page-wrapper .haroone-holster-finder .hf-progress-step small { display:none; }
    .page-wrapper .haroone-holster-finder .hf-form { padding:20px 16px; border-radius:16px; }
    .page-wrapper .haroone-holster-finder .hf-form-header { gap:12px; padding-bottom:20px; margin-bottom:24px; }
    .page-wrapper .haroone-holster-finder .hf-form-header h2 { font-size:26px; }
    .page-wrapper .haroone-holster-finder .hf-form-header .hf-privacy { grid-column:1/-1; }
    .page-wrapper .haroone-holster-finder .hf-field-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
    .page-wrapper .haroone-holster-finder .hf-choice-group { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .page-wrapper .haroone-holster-finder .hf-assurance-card { grid-template-columns:minmax(0,1fr); padding:8px 20px; gap:0; }
    .page-wrapper .haroone-holster-finder .hf-assurance-item + .hf-assurance-item { border-top: 1px solid var(--color-line); }
    .page-wrapper .haroone-holster-finder .hf-results-title { font-size:28px; }
    .page-wrapper .haroone-holster-finder .hf-results-grid { grid-template-columns:minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) {
    .page-wrapper .haroone-holster-finder * { animation:none !important; transition:none !important; }
}
.page-wrapper .haroone-holster-finder :is(.hf-submit-btn,.hf-card-cta,.hf-empty-submit) { background-image: none !important; }
/* Finder layout and results: a centred, token-aware page in both colour modes. */
body.holsterfinder-index-index #maincontent { width:100%; max-width:1200px !important; margin-inline:auto !important; }
body.holsterfinder-index-index #maincontent > .columns { width:100%; padding:0; }
body.holsterfinder-index-index #maincontent .column.main { width:100%; min-width:0; }
.page-wrapper .haroone-holster-finder .hf-container { width:100%; padding:56px 24px 80px; box-sizing:border-box; }
.page-wrapper .haroone-holster-finder .hf-header { max-width:none; text-align:left; margin:0 0 36px; padding-bottom:32px; border-bottom:1px solid var(--color-line); }
.page-wrapper .haroone-holster-finder .hf-eyebrow { justify-content:flex-start; font-weight:600; color:var(--color-accent-ink); }
.page-wrapper .haroone-holster-finder .hf-title { font-size:clamp(44px,5vw,76px); text-shadow:none; margin:0; letter-spacing:-.02em; }
.page-wrapper .haroone-holster-finder .hf-subtitle { max-width:680px; margin:18px 0 0; font-size:18px; line-height:1.6; }
.page-wrapper .haroone-holster-finder .hf-trust { justify-content:flex-start; margin-top:16px; }
.page-wrapper .haroone-holster-finder .hf-progress { max-width:none; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:0 0 32px; }
.page-wrapper .haroone-holster-finder .hf-progress-line { display:none; }
.page-wrapper .haroone-holster-finder .hf-progress-step { display:grid; grid-template-columns:44px minmax(0,1fr); gap:4px 14px; text-align:left; align-items:center; padding:18px 20px; border:1px solid var(--color-line); border-radius:12px; background:var(--color-surface); color:var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-progress-step span { grid-row:1/3; width:44px; height:44px; color:var(--color-fg); background:var(--color-bg); border-color:var(--color-line); }
.page-wrapper .haroone-holster-finder .hf-progress-step strong { color:var(--color-fg); font-size:16px; font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-progress-step small { color:var(--color-fg-secondary); font-size:13px; }
.page-wrapper .haroone-holster-finder .hf-progress-step--active { border-color:var(--color-primary); }
.page-wrapper .haroone-holster-finder :is(.hf-progress-step--active,.hf-progress-step--complete) span { background:var(--color-primary); color: var(--color-on-primary); border-color:var(--color-primary); }
.page-wrapper .haroone-holster-finder .hf-main-column { grid-template-columns:minmax(0,1fr) 340px; gap:28px; }
.page-wrapper .haroone-holster-finder :is(.hf-form,.hf-card,.hf-empty,.hf-benefits,.hf-help-card,.hf-applied-toolbar,.hf-assurance-card) { color:var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-form { padding:36px; border-radius:18px; }
.page-wrapper .haroone-holster-finder .hf-form-header h2 { font-size:32px; }
.page-wrapper .haroone-holster-finder .hf-form-header p { color:var(--color-fg-secondary); font-size:15px; line-height:1.5; margin-top:8px; }
.page-wrapper .haroone-holster-finder .hf-field > label { color:var(--color-fg); font-size:13px; }
/* Align the quick choices beneath their label and keep equal click areas. */
.page-wrapper .haroone-holster-finder .hf-chip-row { flex-wrap:wrap; gap:calc(var(--spacing) * 2); margin-top:calc(var(--spacing) * 3); }
.page-wrapper .haroone-holster-finder .hf-chip-row > span { flex-basis:100%; color:var(--color-fg-secondary); font-size:var(--text-xs); font-weight:500; }
.page-wrapper .haroone-holster-finder .hf-chip {
    flex:1 1 0;
    min-width:0;
    min-height:calc(var(--spacing) * 11);
    align-items:center;
    padding:calc(var(--spacing) * 2) !important;
    border-radius:var(--radius-lg) !important;
    color:var(--color-fg);
    background:var(--color-surface) !important;
    border-color:var(--color-line) !important;
    font-family:var(--font-sans);
    font-size:var(--text-sm);
    font-weight:500;
}
.page-wrapper .haroone-holster-finder .hf-chip:hover { border-color:var(--color-primary) !important; }
.page-wrapper .haroone-holster-finder .hf-chip:focus-visible { outline:calc(var(--spacing) / 2) solid var(--color-primary); outline-offset:var(--spacing); }
.page-wrapper .haroone-holster-finder .hf-chip--active {
    background:var(--color-primary) !important;
    border-color:var(--color-primary) !important;
    color:var(--color-on-primary) !important;
}
.page-wrapper .haroone-holster-finder .hf-choice > span { color:var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-action-panel { margin-top:28px; }
.page-wrapper .haroone-holster-finder .hf-action-panel p { color:var(--color-fg-secondary); margin-top:16px; font-size:13px; }
.page-wrapper .haroone-holster-finder .hf-submit-btn { width:auto; min-width:260px; padding-inline:24px; }
.page-wrapper .haroone-holster-finder .hf-assurance { gap:0; }
.page-wrapper .haroone-holster-finder .hf-assurance-card { background:#171714; border-color:#343026; color:#f5f2ea; padding:8px 24px; border-radius:18px; }
.page-wrapper .haroone-holster-finder .hf-assurance-item { display:grid; grid-template-columns:32px minmax(0,1fr); padding:24px 0; }
.page-wrapper .haroone-holster-finder .hf-assurance-item + .hf-assurance-item { border-color:#343026; }
.page-wrapper .haroone-holster-finder .hf-assurance-item strong { color:#f5f2ea; font-size:17px; line-height:1.3; font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-assurance-item p { color:#c9c3b7; font-size:14px; margin-top:8px; }
.page-wrapper .haroone-holster-finder .hf-assurance-item > .fa { color:var(--color-primary); }
.page-wrapper .haroone-holster-finder .hf-help-text { text-align:left; padding:20px 0; margin:0; }
.page-wrapper .haroone-holster-finder .hf-help-text strong { color:var(--color-fg); font-size:17px; }
.page-wrapper .haroone-holster-finder .hf-help-text a { color:var(--color-accent-ink); font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-applied-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:24px; padding:24px; background:var(--color-bg) !important; border-color:var(--color-line) !important; border-radius:16px; }
.page-wrapper .haroone-holster-finder .hf-applied-summary { border:0; padding:0; flex:0 0 200px; }
.page-wrapper .haroone-holster-finder .hf-applied-summary strong { color:var(--color-fg); font-size:17px; font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-applied-summary span:not(.hf-applied-summary-icon) { color:var(--color-fg-secondary); font-size:13px; }
.page-wrapper .haroone-holster-finder .hf-applied-list { flex:1 1 300px; min-width:0; gap:16px; }
.page-wrapper .haroone-holster-finder :is(.hf-applied-label,.hf-sort-form label) { color:var(--color-fg-secondary); font-size:12px; font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-applied-chip { background:var(--color-surface); border-color:var(--color-line); color:var(--color-fg); min-height:36px; font-size:14px; }
.page-wrapper .haroone-holster-finder .hf-applied-chip .fa { color:var(--color-fg-secondary); }
.page-wrapper .haroone-holster-finder .hf-applied-actions { border:0; padding:0; gap:16px; }
.page-wrapper .haroone-holster-finder .hf-toolbar-edit { background:var(--color-surface); border-color:var(--color-line); color:var(--color-fg); min-height:44px; padding-inline:16px; }
.page-wrapper .haroone-holster-finder .hf-toolbar-clear { color:var(--color-fg-secondary); font-size:13px; }
.page-wrapper .haroone-holster-finder .hf-sort-form { min-width:180px; }
.page-wrapper .haroone-holster-finder .hf-sort-select { background-color:var(--color-surface); border-color:var(--color-line); color:var(--color-fg); min-height:44px; font-size:14px; }
.page-wrapper .haroone-holster-finder .hf-sort-select option { background:var(--color-surface); color:var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-results { margin-top:40px; padding-top:32px; }
.page-wrapper .haroone-holster-finder .hf-results-kicker { color:var(--color-accent-ink); font-size:12px; font-weight:600; letter-spacing:.12em; }
.page-wrapper .haroone-holster-finder .hf-results-title { font-size:36px; }
.page-wrapper .haroone-holster-finder .hf-results-count { color:var(--color-fg-secondary); font-weight:500; }
.page-wrapper .haroone-holster-finder .hf-results-perks { color:var(--color-fg-secondary); }
.page-wrapper .haroone-holster-finder .hf-results-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:calc(var(--spacing) * 6); }
.page-wrapper .haroone-holster-finder .hf-card { padding:calc(var(--spacing) * 2.5); border-radius:var(--radius-3xl); background:var(--color-surface); border-color:var(--color-line); box-shadow:none; transition:border-color .2s; }
.page-wrapper .haroone-holster-finder .hf-card:hover { border-color:var(--color-primary); box-shadow:none; transform:none; }
.page-wrapper .haroone-holster-finder .hf-card-media { aspect-ratio:1; background:var(--color-white); border:0; border-radius:var(--radius-2xl); overflow:hidden; }
.page-wrapper .haroone-holster-finder .hf-card-img { width:100%; height:100%; padding:0; object-fit:contain; }
.page-wrapper .haroone-holster-finder .hf-card-body { padding:calc(var(--spacing) * 4) calc(var(--spacing) * 2.5) calc(var(--spacing) * 2.5); gap:calc(var(--spacing) * 3); }
.page-wrapper .haroone-holster-finder .hf-card-title { font-family:var(--font-sans); font-size:var(--text-base); line-height:1.5; font-weight:600; text-transform:none; letter-spacing:normal; margin:0; overflow-wrap:anywhere; }
.page-wrapper .haroone-holster-finder .hf-results .hf-card-title a { color:var(--color-fg) !important; }
.page-wrapper .haroone-holster-finder :is(.hf-card-price,.hf-card-price-current,.hf-card-price--sale .hf-card-price-current) { color:var(--color-fg) !important; font-size:24px; font-weight:600; }
.page-wrapper .haroone-holster-finder .hf-card-price-original { color:var(--color-fg-secondary); font-size:14px; }
.page-wrapper .haroone-holster-finder .hf-card-reasons { margin:0 0 8px; }
.page-wrapper .haroone-holster-finder .hf-card-reasons li { color:var(--color-fg-secondary); font-size:13px; line-height:1.5; }
.page-wrapper .haroone-holster-finder .hf-card-reasons .fa { color:var(--color-accent-ink); }
.page-wrapper .haroone-holster-finder .hf-card-cta { color:var(--color-on-primary) !important; min-height:calc(var(--spacing) * 12); font-size:var(--text-base); border-radius:var(--radius-3xl); width:100%; }
.page-wrapper .haroone-holster-finder .hf-badge { font-family:var(--font-sans); font-weight:600; background:var(--color-primary); color:var(--color-on-primary); border-color:var(--color-primary); }
.page-wrapper .haroone-holster-finder .hf-empty-text { color:var(--color-fg-secondary); }
@media(max-width:1100px) {
 .page-wrapper .haroone-holster-finder .hf-main-column { grid-template-columns:minmax(0,1fr); }
 .page-wrapper .haroone-holster-finder .hf-assurance-card { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
 .page-wrapper .haroone-holster-finder .hf-assurance-item + .hf-assurance-item { border:0; }
 .page-wrapper .haroone-holster-finder .hf-results-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:767px) {
 .page-wrapper .haroone-holster-finder .hf-container { padding:32px 16px 48px; }
 .page-wrapper .haroone-holster-finder .hf-header { margin-bottom:24px; padding-bottom:24px; }
 .page-wrapper .haroone-holster-finder .hf-subtitle { font-size:16px; }
 .page-wrapper .haroone-holster-finder .hf-progress { gap:8px; margin-bottom:24px; }
 .page-wrapper .haroone-holster-finder .hf-progress-step { display:flex; flex-direction:column; align-items:flex-start; padding:12px 10px; gap:10px; border-radius:10px; }
 .page-wrapper .haroone-holster-finder .hf-progress-step span { width:32px; height:32px; font-size:14px; }
 .page-wrapper .haroone-holster-finder .hf-progress-step strong { font-size:13px; line-height:1.3; }
 .page-wrapper .haroone-holster-finder .hf-progress-step small { display:none; }
 .page-wrapper .haroone-holster-finder .hf-form { padding:24px 18px; }
 .page-wrapper .haroone-holster-finder .hf-form-header h2 { font-size:26px; }
 .page-wrapper .haroone-holster-finder .hf-field-grid { grid-template-columns:minmax(0,1fr); }
 .page-wrapper .haroone-holster-finder .hf-submit-btn { width:100%; min-width:0; }
 .page-wrapper .haroone-holster-finder .hf-assurance-card { grid-template-columns:minmax(0,1fr); padding-inline:20px; gap:0; }
 .page-wrapper .haroone-holster-finder .hf-assurance-item + .hf-assurance-item { border-top:1px solid #343026; }
 .page-wrapper .haroone-holster-finder .hf-applied-toolbar { gap:20px; padding:20px; }
 .page-wrapper .haroone-holster-finder .hf-applied-summary,.page-wrapper .haroone-holster-finder .hf-applied-list { flex-basis:100%; }
 .page-wrapper .haroone-holster-finder .hf-sort-form { flex:1 1 100%; width:100%; }
 .page-wrapper .haroone-holster-finder .hf-results-title { font-size:28px; }
 .page-wrapper .haroone-holster-finder .hf-results-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
 .page-wrapper .haroone-holster-finder .hf-card-body { padding:calc(var(--spacing) * 3) var(--spacing) var(--spacing); }
 .page-wrapper .haroone-holster-finder .hf-card-title { font-size:var(--text-sm); }
 .page-wrapper .haroone-holster-finder .hf-card-img { padding:0; }
}
@media(max-width:479px) {
 .page-wrapper .haroone-holster-finder .hf-results-grid { gap:calc(var(--spacing) * 3); }
 .page-wrapper .haroone-holster-finder .hf-card { padding:calc(var(--spacing) * 2); border-radius:var(--radius-2xl); }
 .page-wrapper .haroone-holster-finder .hf-card-cta { font-size:var(--text-sm); }
 .page-wrapper .haroone-holster-finder .hf-card-reasons li { font-size:var(--text-xs); }
 .page-wrapper .haroone-holster-finder .hf-badge { left:var(--spacing); top:var(--spacing); padding:var(--spacing) calc(var(--spacing) * 2); font-size:var(--text-xs); }
}

.page-wrapper .haroone-holster-finder .hf-progress-step strong { text-align:left; }
@media(min-width:1001px) {
 .page-wrapper .haroone-holster-finder .hf-header { display:grid; grid-template-columns:1fr 1fr; column-gap:64px; align-items:start; }
 .page-wrapper .haroone-holster-finder .hf-eyebrow { grid-column:1; margin-bottom:16px; }
 .page-wrapper .haroone-holster-finder .hf-title { grid-column:1; grid-row:2/4; }
 .page-wrapper .haroone-holster-finder .hf-subtitle { grid-column:2; grid-row:1/3; margin:0; }
 .page-wrapper .haroone-holster-finder .hf-trust { grid-column:2; grid-row:3; margin-top:16px; }
}

.page-wrapper .haroone-holster-finder .hf-progress-step :is(strong,small) { justify-self:start; }
.page-wrapper .haroone-holster-finder .hf-card-media { background-image:none !important; }

.page-wrapper .haroone-holster-finder .hf-choice--selected { background:var(--color-bg); border-color:var(--color-primary); color:var(--color-fg); }
.page-wrapper .haroone-holster-finder .hf-help-text :is(strong,span) { text-align:left; }

/* Match the priority of the module's fixed chip colours. */
.page-wrapper .haroone-holster-finder .hf-chip:not(.hf-chip--active) { color:var(--color-fg) !important; }
.page-wrapper .haroone-holster-finder :is(.hf-help-link,.hf-help-text a) { color:var(--color-fg) !important; text-decoration:underline; text-decoration-color:var(--color-primary); text-underline-offset:4px; }

/* Support belongs beneath both Finder columns. */
.page-wrapper .haroone-holster-finder .hf-main-column > .hf-help-text { grid-column:1/-1; text-align:center; padding:8px 16px 0; margin:0; }
.page-wrapper .haroone-holster-finder .hf-main-column > .hf-help-text :is(strong,span) { text-align:center; }

/* Native select menus follow the same colour mode as the Finder fields. */
.page-wrapper .haroone-holster-finder :is(.hf-input,.hf-select,.hf-empty-input,.hf-empty-textarea) {
    color-scheme: var(--hh-color-scheme);
}
.page-wrapper .haroone-holster-finder .hf-select {
    appearance: auto;
    background-image: none !important;
    padding-right: calc(var(--spacing) * 3) !important;
}
.page-wrapper .haroone-holster-finder .hf-select option {
    background: var(--color-surface);
    color: var(--color-fg);
}

.page-wrapper .haroone-holster-finder .hf-input-wrap > .fa { color: var(--color-fg-secondary); }

/* Keep the browser's select semantics while styling its option popup where supported. */
@supports (appearance: base-select) {
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select),
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select)::picker(select) {
        appearance: base-select;
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select) {
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:calc(var(--spacing) * 3);
        background-image:none;
        border-radius:var(--radius-xl);
        font-family:var(--font-sans);
        font-size:var(--text-base);
        font-weight:500;
        cursor:pointer;
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select)::picker-icon {
        color:var(--color-primary);
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select):open {
        border-color:var(--color-primary);
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select)::picker(select) {
        margin-block:calc(var(--spacing) * 2);
        padding:var(--spacing);
        background:var(--color-surface);
        color:var(--color-fg);
        border:1px solid var(--color-line);
        border-radius:var(--radius-xl);
        box-shadow:var(--shadow-lg);
        max-block-size:50dvh;
        overflow-y:auto;
        scrollbar-width:thin;
        scrollbar-color:var(--color-line) var(--color-surface);
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select) option {
        display:flex;
        align-items:center;
        gap:calc(var(--spacing) * 3);
        min-height:calc(var(--spacing) * 11);
        padding:calc(var(--spacing) * 2) calc(var(--spacing) * 3);
        background:var(--color-surface);
        color:var(--color-fg);
        border:0;
        border-radius:var(--radius-lg);
        font-family:var(--font-sans);
        font-size:var(--text-sm);
        line-height:1.5;
        font-weight:500;
        white-space:normal;
        cursor:pointer;
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select) option:is(:hover, :focus) {
        background:var(--color-hide-deep);
        outline:1px solid var(--color-line);
        outline-offset:-1px;
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select) option:checked {
        background:var(--color-primary);
        color:var(--color-on-primary);
    }
    .page-wrapper .haroone-holster-finder :is(.hf-select, .hf-sort-select) option::checkmark {
        order:1;
        margin-inline-start:auto;
        color:currentColor;
    }
}
