/* First Aid Collective — booking widget. Inherits the site's Roboto font. */
.fac-wrap{max-width:1160px;margin:0 auto;padding:8px 18px 60px;color:#26324a;font-family:inherit;line-height:1.5;box-sizing:border-box}
.fac-wrap *{box-sizing:border-box}

.fac-hero{text-align:center;padding:26px 12px 20px}
.fac-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#8790a5;font-weight:700;margin-bottom:10px}
.fac-hero h1{font-size:clamp(30px,4.6vw,46px);margin:0 0 10px;color:#16223f;font-weight:800;letter-spacing:-.015em}
.fac-hero p{color:#5b6678;font-size:17px;margin:0}

/* category tabs */
.fac-tabs{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:6px 0 30px}
.fac-tab{padding:10px 18px;border-radius:30px;text-decoration:none;color:#5b6678;font-weight:700;font-size:15px;transition:.15s}
.fac-tab:hover{color:#16223f;background:#eef1f7}
.fac-tab.on{background:#16223f;color:#fff}
.fac-locfilter{margin:-18px 0 30px}
.fac-tab-loc{font-size:13.5px;padding:8px 15px;border:1px solid #e2e6ee;background:#fff}
.fac-tab-loc:hover{border-color:#c9d0dc}
.fac-tab-loc.on{background:#c0392b;color:#fff;border-color:#c0392b}

/* course grid */
.fac-cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:22px;margin-bottom:20px}
.fac-ccard{display:flex;flex-direction:column;background:#fff;border:1px solid #e8ebf1;border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 12px 30px -22px rgba(20,40,80,.5);transition:transform .16s ease,box-shadow .16s ease}
.fac-ccard:hover{transform:translateY(-4px);box-shadow:0 22px 44px -22px rgba(20,40,80,.55)}
.fac-cimg{height:172px;background-size:cover;background-position:center;background-color:#dfe4ee}
.fac-cimg-none{background:linear-gradient(135deg,#e7ecf5,#d6deec)}
.fac-cbody{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.fac-cat{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#c0392b;font-weight:800}
.fac-title{margin:0;font-size:19px;line-height:1.28;color:#16223f;font-weight:700}
.fac-cmeta{font-size:14px;color:#6b7688;margin-top:2px}
.fac-cfoot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:14px;border-top:1px solid #eef1f5}
.fac-clink{color:#16223f;font-weight:700;font-size:15px}
.fac-ccard:hover .fac-clink{color:#c0392b}
.fac-price{font-size:19px;font-weight:800;color:#16223f;white-space:nowrap}

/* course view + dates */
.fac-bookwrap{max-width:760px}
.fac-back{margin:4px 0 14px}.fac-back a{color:#6b7688;text-decoration:none;font-weight:600}.fac-back a:hover{color:#16223f}
.fac-coursehead{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-start;margin-bottom:26px}
.fac-chimg{flex:0 0 300px;max-width:100%;height:210px;border-radius:16px;background-size:cover;background-position:center;background-color:#dfe4ee}
.fac-chbody{flex:1;min-width:240px}
.fac-chbody h1{font-size:clamp(24px,3.4vw,34px);margin:6px 0 8px;color:#16223f;font-weight:800;line-height:1.15}
.fac-cdesc{color:#3a4756;font-size:16px;line-height:1.7;margin:24px 0 14px}
.fac-cdesc p{margin:0 0 15px}
.fac-cdesc h2,.fac-cdesc h3,.fac-cdesc h4{color:#16223f;font-weight:800;margin:22px 0 8px;line-height:1.25}
.fac-cdesc h2{font-size:22px}.fac-cdesc h3{font-size:19px}.fac-cdesc h4{font-size:17px}
.fac-cdesc ul,.fac-cdesc ol{margin:0 0 15px;padding-left:22px}
.fac-cdesc li{margin:5px 0}
.fac-cdesc strong{color:#16223f}
.fac-cdesc a{color:#c0392b}
.fac-dates{display:flex;flex-direction:column;gap:12px;margin-bottom:26px}
.fac-venue{margin:22px 0 12px;font-size:17px;color:#16223f;font-weight:800;padding-bottom:8px;border-bottom:2px solid #eef1f7}
.fac-daterow{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#fff;border:1px solid #e8ebf1;border-radius:14px;padding:16px 20px;box-shadow:0 10px 26px -22px rgba(20,40,80,.5)}
.fac-daterow.fac-empty{justify-content:center;color:#5b6678;font-style:normal}
.fac-daterow a{color:#5b6678}

.fac-meta{color:#6b7688;font-size:14.5px}
.fac-seats{font-size:13px;color:#237a2e;font-weight:700}
.fac-seats.fac-full{color:#b23b3b}
.fac-h2{margin:8px 0 14px;font-size:24px;color:#16223f;font-weight:800}
.fac-empty{color:#68727d;text-align:center;padding:24px 0}

.fac-btn{display:inline-block;background:#c0392b;color:#fff;text-decoration:none;text-align:center;padding:12px 20px;border:none;border-radius:11px;font-size:16px;font-weight:700;cursor:pointer;transition:background .15s;white-space:nowrap}
.fac-btn:hover{background:#a5301f;color:#fff}
.fac-btn-ghost{background:#eef1f7;color:#33414d}.fac-btn-ghost:hover{background:#e3e8f0;color:#33414d}
.fac-btn-lg{font-size:18px;padding:16px;width:100%}

/* booking form */
.fac-booksummary{border:1px solid #e8ebf1;border-radius:16px;padding:22px;background:#f8fafc;margin-bottom:22px}
.fac-booksummary .fac-price{font-size:23px}
.fac-form{display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid #e8ebf1;border-radius:16px;padding:24px;box-shadow:0 12px 30px -24px rgba(20,40,80,.5)}
.fac-form label{display:flex;flex-direction:column;font-size:14px;font-weight:700;gap:6px;color:#2a3648}
.fac-form input[type=text],.fac-form input[type=email],.fac-form input[type=tel],.fac-form select{padding:13px 15px;border:1px solid #d3dae4;border-radius:10px;font-size:16px;background:#fff}
.fac-opt{font-weight:400;color:#8790a5}
.fac-participants input{padding:12px 15px;border:1px solid #d3dae4;border-radius:10px;font-size:15px;width:100%;margin-bottom:8px;background:#fff}
.fac-plabel{font-size:12px;font-weight:800;color:#54606d;margin:4px 0 8px;text-transform:uppercase;letter-spacing:.05em}
.fac-pay{border:1px solid #e8ebf1;border-radius:12px;padding:16px 18px}
.fac-pay legend{font-weight:800;padding:0 6px;color:#2a3648}
.fac-radio{display:flex;align-items:center;gap:10px;font-weight:500;padding:7px 0;cursor:pointer}
.fac-note{font-size:13px;color:#8a6d3b;background:#fcf6e6;border-radius:8px;padding:9px 12px;margin:8px 0 0}
.fac-alert{background:#fdecea;color:#a5301f;border-radius:10px;padding:13px 16px;margin-bottom:18px;font-weight:600}
.fac-thanks{border:1px solid #e8ebf1;border-radius:16px;padding:34px;background:#fff;text-align:center;box-shadow:0 12px 30px -24px rgba(20,40,80,.5)}
.fac-thanks h2{color:#237a2e;margin-top:0;font-weight:800}
.fac-summary{margin:20px auto 0;border-collapse:collapse}
.fac-summary td{padding:9px 16px;border:1px solid #eaeef2;text-align:left}
.fac-summary td:first-child{color:#7a8797;font-weight:700}

@media (max-width:560px){.fac-chimg{flex-basis:100%;height:190px}}
@media (prefers-color-scheme:dark){
  .fac-wrap{color:#dbe3ee}
  .fac-ccard,.fac-daterow,.fac-form,.fac-pay,.fac-thanks{background:#161d29;border-color:#2a3341}
  .fac-booksummary{background:#141a24;border-color:#2a3341}
  .fac-hero h1,.fac-title,.fac-h2,.fac-price,.fac-clink,.fac-chbody h1{color:#eef3f9}
  .fac-tab.on{background:#3a63d0}.fac-tab:hover{background:#1d2635;color:#eef3f9}
  .fac-form label{color:#c4cfda}
  .fac-form input,.fac-form select,.fac-participants input{background:#0f151d;color:#eef3f9;border-color:#38424f}
}
