/* ==========================================================================
   events.css — self-hosted utility classes (Bootstrap-style, no dependency)
   Sections: Flex | Spacing | Order | Grid (+ responsive)
   ========================================================================== */

/* ---------- FLEX ---------- */
.d-flex{display:flex}.d-inline-flex{display:inline-flex}

.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}
.flex-column{flex-direction:column}.flex-column-reverse{flex-direction:column-reverse}

.justify-content-start{justify-content:flex-start}
.justify-content-end{justify-content:flex-end}
.justify-content-center{justify-content:center}
.justify-content-between{justify-content:space-between}
.justify-content-around{justify-content:space-around}
.justify-content-evenly{justify-content:space-evenly}

.align-items-start{align-items:flex-start}
.align-items-end{align-items:flex-end}
.align-items-center{align-items:center}
.align-items-baseline{align-items:baseline}
.align-items-stretch{align-items:stretch}

.align-self-start{align-self:flex-start}
.align-self-end{align-self:flex-end}
.align-self-center{align-self:center}
.align-self-baseline{align-self:baseline}
.align-self-stretch{align-self:stretch}

.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}

.flex-fill{flex:1 1 auto}
.flex-grow-0{flex-grow:0}.flex-grow-1{flex-grow:1}
.flex-shrink-0{flex-shrink:0}.flex-shrink-1{flex-shrink:1}

.gap-0{gap:0}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:1rem}.gap-4{gap:1.5rem}.gap-5{gap:3rem}

/* ---------- ORDER ---------- */
.order-first{order:-1}
.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}
.order-last{order:6}

/* ---------- SPACING ----------
   scale: 0=0  1=.25rem  2=.5rem  3=1rem  4=1.5rem  5=3rem
*/

/* margin */
.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:1rem}.m-4{margin:1.5rem}.m-5{margin:3rem}.m-auto{margin:auto}
.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mt-auto{margin-top:auto}
.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.mb-auto{margin-bottom:auto}
.ms-0{margin-left:0}.ms-1{margin-left:.25rem}.ms-2{margin-left:.5rem}.ms-3{margin-left:1rem}.ms-4{margin-left:1.5rem}.ms-5{margin-left:3rem}.ms-auto{margin-left:auto}
.me-0{margin-right:0}.me-1{margin-right:.25rem}.me-2{margin-right:.5rem}.me-3{margin-right:1rem}.me-4{margin-right:1.5rem}.me-5{margin-right:3rem}.me-auto{margin-right:auto}
.mx-0{margin-left:0;margin-right:0}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3{margin-left:1rem;margin-right:1rem}.mx-4{margin-left:1.5rem;margin-right:1.5rem}.mx-5{margin-left:3rem;margin-right:3rem}.mx-auto{margin-left:auto;margin-right:auto}
.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:1rem;margin-bottom:1rem}.my-4{margin-top:1.5rem;margin-bottom:1.5rem}.my-5{margin-top:3rem;margin-bottom:3rem}.my-auto{margin-top:auto;margin-bottom:auto}
.m-n1{margin:-.25rem}.m-n2{margin:-.5rem}.m-n3{margin:-1rem}.m-n4{margin:-1.5rem}.m-n5{margin:-3rem}

/* padding (no negative/auto) */
.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}
.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:1rem}.pt-4{padding-top:1.5rem}.pt-5{padding-top:3rem}
.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:1rem}.pb-4{padding-bottom:1.5rem}.pb-5{padding-bottom:3rem}
.ps-0{padding-left:0}.ps-1{padding-left:.25rem}.ps-2{padding-left:.5rem}.ps-3{padding-left:1rem}.ps-4{padding-left:1.5rem}.ps-5{padding-left:3rem}
.pe-0{padding-right:0}.pe-1{padding-right:.25rem}.pe-2{padding-right:.5rem}.pe-3{padding-right:1rem}.pe-4{padding-right:1.5rem}.pe-5{padding-right:3rem}
.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:1rem;padding-right:1rem}.px-4{padding-left:1.5rem;padding-right:1.5rem}.px-5{padding-left:3rem;padding-right:3rem}
.py-0{padding-top:0;padding-bottom:0}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:1rem;padding-bottom:1rem}.py-4{padding-top:1.5rem;padding-bottom:1.5rem}.py-5{padding-top:3rem;padding-bottom:3rem}

/* ---------- GRID ---------- */
.container{width:100%;padding-left:.75rem;padding-right:.75rem;margin-left:auto;margin-right:auto}

.row{display:flex;flex-wrap:wrap;margin-left:-.75rem;margin-right:-.75rem}
.row>*{padding-left:.75rem;padding-right:.75rem;width:100%}

.col{flex:1 0 0%}
.col-auto{flex:0 0 auto;width:auto}
.col-1{flex:0 0 auto;width:8.33333%}
.col-2{flex:0 0 auto;width:16.66667%}
.col-3{flex:0 0 auto;width:25%}
.col-4{flex:0 0 auto;width:33.33333%}
.col-5{flex:0 0 auto;width:41.66667%}
.col-6{flex:0 0 auto;width:50%}
.col-7{flex:0 0 auto;width:58.33333%}
.col-8{flex:0 0 auto;width:66.66667%}
.col-9{flex:0 0 auto;width:75%}
.col-10{flex:0 0 auto;width:83.33333%}
.col-11{flex:0 0 auto;width:91.66667%}
.col-12{flex:0 0 auto;width:100%}

/* ---------- RESPONSIVE (md: 768px, lg: 992px) ---------- */
@media (min-width:768px){
  .d-md-flex{display:flex}
  .flex-md-row{flex-direction:row}.flex-md-column{flex-direction:column}
  .justify-content-md-start{justify-content:flex-start}
  .justify-content-md-center{justify-content:center}
  .justify-content-md-between{justify-content:space-between}
  .align-items-md-start{align-items:flex-start}
  .align-items-md-center{align-items:center}

  .col-md{flex:1 0 0%}
  .col-md-auto{flex:0 0 auto;width:auto}
  .col-md-1{flex:0 0 auto;width:8.33333%}
  .col-md-2{flex:0 0 auto;width:16.66667%}
  .col-md-3{flex:0 0 auto;width:25%}
  .col-md-4{flex:0 0 auto;width:33.33333%}
  .col-md-5{flex:0 0 auto;width:41.66667%}
  .col-md-6{flex:0 0 auto;width:50%}
  .col-md-7{flex:0 0 auto;width:58.33333%}
  .col-md-8{flex:0 0 auto;width:66.66667%}
  .col-md-9{flex:0 0 auto;width:75%}
  .col-md-10{flex:0 0 auto;width:83.33333%}
  .col-md-11{flex:0 0 auto;width:91.66667%}
  .col-md-12{flex:0 0 auto;width:100%}
}

@media (min-width:992px){
  .d-lg-flex{display:flex}
  .flex-lg-row{flex-direction:row}.flex-lg-column{flex-direction:column}
  .justify-content-lg-start{justify-content:flex-start}
  .justify-content-lg-center{justify-content:center}
  .justify-content-lg-between{justify-content:space-between}
  .align-items-lg-start{align-items:flex-start}
  .align-items-lg-center{align-items:center}

  .col-lg{flex:1 0 0%}
  .col-lg-auto{flex:0 0 auto;width:auto}
  .col-lg-1{flex:0 0 auto;width:8.33333%}
  .col-lg-2{flex:0 0 auto;width:16.66667%}
  .col-lg-3{flex:0 0 auto;width:25%}
  .col-lg-4{flex:0 0 auto;width:33.33333%}
  .col-lg-5{flex:0 0 auto;width:41.66667%}
  .col-lg-6{flex:0 0 auto;width:50%}
  .col-lg-7{flex:0 0 auto;width:58.33333%}
  .col-lg-8{flex:0 0 auto;width:66.66667%}
  .col-lg-9{flex:0 0 auto;width:75%}
  .col-lg-10{flex:0 0 auto;width:83.33333%}
  .col-lg-11{flex:0 0 auto;width:91.66667%}
  .col-lg-12{flex:0 0 auto;width:100%}
}

.bg-light { background: #efefef; }
.text-red { color: #F40000; }
.text-uppercase { text-transform: uppercase; }
.text-capitalize { text-transform: capitalize; }
.img-fluid { max-width: 100%; }
.border-bottom { border-bottom: 1px solid #dedede; }
.h4 { font-size: 1.5rem !important; }
.font-l { font-weight: 300; }
.font-b { font-weight: 700; }