/* mobile-first: base=mobile, min-width enhancements; generated by css_mobile_first.py + css_fix_revert.py */
.pf-main{ background:linear-gradient(180deg,#faf7f3,#fff); min-height:70vh; padding-top:38px; padding-right:16px; padding-bottom:60px; padding-left:16px; }
.pf-wrap{ max-width:860px; margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; }
.pf-intro{ text-align:center; margin-top:0; margin-right:0; margin-bottom:26px; margin-left:0; }
.pf-eyebrow{ display:inline-block; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#c8102e; background:#fdecec; border:1px solid #f6c9c9; border-radius:999px; padding-top:5px; padding-right:13px; padding-bottom:5px; padding-left:13px; margin-bottom:14px; }
.pf-intro h1{ margin-top:0; margin-right:0; margin-bottom:10px; margin-left:0; font-size:clamp(26px,4vw,38px); letter-spacing:-.02em; color:#1e1a16; }
.pf-intro p{ margin-top:0; margin-right:auto; margin-bottom:0; margin-left:auto; max-width:560px; font-size:15px; line-height:1.6; color:#6a6058; }
.pf-card{ background:#fff; border:1px solid #eee2d7; border-radius:20px; box-shadow:0 18px 44px rgba(60,40,20,.08); padding-top:20px; padding-right:16px; padding-bottom:24px; padding-left:16px; min-height:320px; }
.pf-progress{ display:flex; align-items:center; gap:14px; margin-top:0; margin-right:0; margin-bottom:22px; margin-left:0; }
.pf-progress-bar{ flex:1; height:6px; background:#f0e7db; border-radius:4px; overflow:hidden; }
.pf-progress-bar span{ display:block; height:100%; width:0; background:linear-gradient(90deg,#F0801E,#c8102e); border-radius:4px; transition:width .3s; }
.pf-back{ background:#fff; border:1.5px solid #e2d6c6; color:#5c5348; font:inherit; font-size:13px; font-weight:600; cursor:pointer; display:inline-flex; align-items:center; gap:6px; padding-top:8px; padding-right:15px; padding-bottom:8px; padding-left:15px; border-radius:10px; transition:.15s; }
.pf-back:hover{ color:#c8102e; background:#fbf4ee; border-color:#e2a37f; box-shadow:0 4px 12px rgba(200,80,26,.12); }
.pf-q{ font-size:12.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#b3a496; margin-top:0; margin-right:0; margin-bottom:4px; margin-left:0; }
.pf-h{ font-size:22px; color:#1e1a16; margin-top:0; margin-right:0; margin-bottom:20px; margin-left:0; letter-spacing:-.01em; }
.pf-opts{ display:grid; grid-template-columns:1fr; gap:12px; }
.pf-opt{ display:flex; align-items:center; gap:14px; text-align:left; background:#fff; border:1.5px solid #e8ddce; border-radius:14px; padding-top:16px; padding-right:18px; padding-bottom:16px; padding-left:18px; cursor:pointer; font:inherit; transition:.15s; width:100%; }
.pf-opt:hover{ border-color:#e2a37f; box-shadow:0 8px 20px rgba(200,80,26,.1); transform:translateY(-1px); }
.pf-opt-ic{ flex:none; width:46px; height:46px; border-radius:12px; background:#f6efe7; color:#c8511a; display:flex; align-items:center; justify-content:center; font-size:24px; }
.pf-opt.hi .pf-opt-ic{ background:linear-gradient(150deg,#F0801E,#c8102e); color:#fff; }
.pf-opt-t{ display:block; font-size:15.5px; font-weight:700; color:#2c2620; }
.pf-opt-s{ display:block; font-size:12.5px; color:#8a7f74; margin-top:3px; line-height:1.4; }
.pf-opt-go{ margin-left:auto; color:#d9c9b6; font-size:20px; }
.pf-opt:hover .pf-opt-go{ color:#c8102e; }
.pf-brands{ display:grid; grid-template-columns:repeat(auto-fill,minmax(130px,1fr)); gap:9px; max-height:360px; overflow-y:auto; padding-top:2px; padding-right:2px; padding-bottom:2px; padding-left:2px; }
.pf-brand{ background:#fff; border:1.5px solid #e8ddce; border-radius:11px; padding-top:12px; padding-right:10px; padding-bottom:12px; padding-left:10px; cursor:pointer; font:inherit; font-size:13.5px; font-weight:600; color:#3c342c; text-align:center; transition:.14s; }
.pf-brand:hover{ border-color:#c8102e; background:#fff8f2; color:#c8102e; }
.pf-brand small{ display:block; font-weight:400; color:#a99483; font-size:11px; margin-top:2px; }
.pf-res-h{ display:flex; align-items:center; gap:10px; margin-top:0; margin-right:0; margin-bottom:6px; margin-left:0; }
.pf-res-h i{ color:#1d9e5f; font-size:24px; }
.pf-res-h h2{ margin-top:0; margin-right:0; margin-bottom:0; margin-left:0; font-size:21px; color:#1e1a16; }
.pf-res-sub{ font-size:13.5px; color:#8a7f74; margin-top:0; margin-right:0; margin-bottom:20px; margin-left:0; }
.pf-recs{ display:flex; flex-direction:column; gap:14px; }
.pf-rec{ display:flex; gap:16px; border:1px solid #eee2d7; border-radius:16px; padding-top:16px; padding-right:16px; padding-bottom:16px; padding-left:16px; background:#fff; position:relative; }
.pf-rec.best{ border-color:#f0c9a8; box-shadow:0 0 0 2px rgba(232,101,26,.14); }
.pf-rec-badge{ position:absolute; top:-10px; left:16px; background:linear-gradient(150deg,#F0801E,#c8102e); color:#fff; font-size:10.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; padding-top:3px; padding-right:10px; padding-bottom:3px; padding-left:10px; border-radius:999px; }
.pf-rec-im{ flex:none; width:96px; height:96px; border-radius:12px; background:#faf7f2; border:1px solid #f2e8dd; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.pf-rec-im img{ max-width:90%; max-height:90%; object-fit:contain; }
.pf-rec-b{ flex:1; min-width:0; }
.pf-rec-t{ font-size:16.5px; font-weight:700; color:#1e1a16; margin-top:0; margin-right:0; margin-bottom:2px; margin-left:0; text-decoration:none; display:inline-block; }
.pf-rec-t:hover{ color:#c8102e; }
.pf-rec-sub{ font-size:12.5px; color:#8a7f74; margin-top:0; margin-right:0; margin-bottom:8px; margin-left:0; }
.pf-why{ display:flex; flex-wrap:wrap; gap:6px; margin-top:0; margin-right:0; margin-bottom:12px; margin-left:0; }
.pf-why span{ font-size:11.5px; background:#eef8f1; color:#1d7a45; border:1px solid #cdebd8; border-radius:999px; padding-top:3px; padding-right:9px; padding-bottom:3px; padding-left:9px; display:inline-flex; align-items:center; gap:4px; }
.pf-why span.alt{ background:#f4f1ec; color:#6a6058; border-color:#e6ddd0; }
.pf-rec-cta{ display:flex; gap:10px; flex-wrap:wrap; }
.pf-btn{ display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding-top:9px; padding-right:18px; padding-bottom:9px; padding-left:18px; font-size:13.5px; font-weight:700; text-decoration:none; cursor:pointer; border:none; }
.pf-btn-red{ background:linear-gradient(150deg,#e0324b,#c8102e); color:#fff; }
.pf-btn-red:hover{ filter:brightness(1.06); }
.pf-btn-line{ background:#fff; border:1.5px solid #e5d9cc; color:#3c342c; }
.pf-btn-line:hover{ border-color:#c8102e; color:#c8102e; }
.pf-none{ text-align:center; color:#8a7f74; padding-top:24px; padding-right:24px; padding-bottom:24px; padding-left:24px; }
.pf-why-us{ margin-top:24px; margin-right:0; margin-bottom:0; margin-left:0; background:linear-gradient(160deg,#1e1a16,#2c2620); border-radius:16px; padding-top:22px; padding-right:22px; padding-bottom:8px; padding-left:22px; color:#fff; }
.pf-why-us h3{ margin-top:0; margin-right:0; margin-bottom:14px; margin-left:0; font-size:15px; display:flex; align-items:center; gap:8px; }
.pf-why-us h3 i{ color:#F0801E; }
.pf-why-grid{ display:grid; grid-template-columns:1fr; gap:10px 22px; }
.pf-why-item{ display:flex; gap:9px; align-items:flex-start; padding-top:0; padding-right:0; padding-bottom:14px; padding-left:0; }
.pf-why-item i{ color:#4be08a; font-size:17px; flex:none; margin-top:1px; }
.pf-why-item b{ display:block; font-size:13.5px; color:#fff; }
.pf-why-item small{ font-size:12px; color:rgba(255,255,255,.62); line-height:1.45; }
.pf-restart{ display:block; margin-top:20px; margin-right:auto; margin-bottom:0; margin-left:auto; background:none; border:1px solid #e5d9cc; color:#6a6058; border-radius:999px; padding-top:9px; padding-right:20px; padding-bottom:9px; padding-left:20px; font:inherit; font-size:13.5px; cursor:pointer; }
.pf-restart:hover{ border-color:#c8102e; color:#c8102e; }
.pf-fade{ animation:pffade .28s ease; }
@keyframes pffade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (min-width: 561px) {
  .pf-card{ padding-top:26px; padding-right:26px; padding-bottom:30px; padding-left:26px; }
  .pf-opts{ grid-template-columns:1fr 1fr; }
  .pf-why-grid{ grid-template-columns:1fr 1fr; }
}
