/* AGAFORT storefront Bootstrap lite — only utilities actually used on Homepage V2.
   Replaces full bootstrap.min.css (~233 KiB) on the homepage critical path.
   Does not redesign components; mirrors Bootstrap 5 utility semantics. */

*,*::before,*::after{box-sizing:border-box}
.container,.container-fluid{width:100%;margin-inline:auto;padding-inline:12px}
.row{display:flex;flex-wrap:wrap;margin:0}
[class^="col-"],[class*=" col-"]{flex:1 0 0%;max-width:100%;padding:0}
.col-12{flex:0 0 100%;max-width:100%}
.col-6{flex:0 0 50%;max-width:50%}
.col-4{flex:0 0 33.333%;max-width:33.333%}
.col-3{flex:0 0 25%;max-width:25%}
.col-md-6{flex:0 0 50%;max-width:50%}
@media (min-width:768px){
  .col-md-3{flex:0 0 25%;max-width:25%}
  .col-md-4{flex:0 0 33.333%;max-width:33.333%}
  .col-md-6{flex:0 0 50%;max-width:50%}
  .col-md-8{flex:0 0 66.666%;max-width:66.666%}
}
.d-none{display:none!important}
.d-flex{display:flex!important}
.d-block{display:block!important}
.d-inline-flex{display:inline-flex!important}
.flex-wrap{flex-wrap:wrap!important}
.flex-column{flex-direction:column!important}
.align-items-center{align-items:center!important}
.align-items-start{align-items:flex-start!important}
.justify-content-between{justify-content:space-between!important}
.justify-content-center{justify-content:center!important}
.justify-content-end{justify-content:flex-end!important}
.gap-1{gap:.25rem!important}
.gap-2{gap:.5rem!important}
.gap-3{gap:1rem!important}
.w-100{width:100%!important}
.h-100{height:100%!important}
.m-0{margin:0!important}
.mt-2{margin-top:.5rem!important}
.mb-0{margin-bottom:0!important}
.mb-2{margin-bottom:.5rem!important}
.ms-1{margin-inline-start:.25rem!important}
.ms-2{margin-inline-start:.5rem!important}
.me-1{margin-inline-end:.25rem!important}
.me-2{margin-inline-end:.5rem!important}
.p-0{padding:0!important}
.px-2{padding-inline:.5rem!important}
.py-2{padding-block:.5rem!important}
.text-center{text-align:center!important}
.text-start{text-align:start!important}
.fw-bold{font-weight:700!important}
.small{font-size:.875em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:0;border-radius:8px;padding:.55rem 1rem;font-weight:700;cursor:pointer;text-decoration:none;line-height:1.2}
.btn-sm{padding:.35rem .7rem;font-size:.875rem}
.btn-light{background:#f8fafc;color:#0f172a}
.btn-primary{background:var(--ag-dh-primary,#0e7490);color:#fff}
.form-control{display:block;width:100%;padding:.55rem .75rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff}
.dropdown{position:relative}
.dropdown-menu{position:absolute;z-index:40;display:none;min-width:10rem;padding:.5rem 0;margin:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px rgba(15,23,42,.12)}
.dropdown-menu.show{display:block}
.collapse:not(.show){display:none}
.modal{position:fixed;inset:0;z-index:1050;display:none}
.modal.show{display:block}
.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
