@charset "UTF-8";
/* ==================================================================
   Globynix Solutions — minimal grid & reset
   ------------------------------------------------------------------
   Replaces bootstrap.min.css (160 KB) with only the pieces this site
   actually uses. Values are copied from Bootstrap 5 exactly, so the
   layout is byte-for-byte identical:

     grid       container, row, col-{12,sm,md,lg}-*, offset-lg-1
     utilities  mb-{3,4,5}, mb-lg-0, text-center, d-none,
                d-lg-block, d-lg-flex, align-items-center,
                justify-content-center
     reboot     the box-sizing / margin normalisation the design
                was built on top of

   Breakpoints: sm 576 · md 768 · lg 992 · xl 1200 · xxl 1400
   ================================================================== */

/* ------------------------------------------------------------------
   1. Reboot — the parts of Bootstrap's reset the design depends on
   ------------------------------------------------------------------ */
*,
*::before,
*::after { box-sizing: border-box; }

body {
  margin: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

h1, h2, h3, h4, h5, h6 { margin-top: 0; margin-bottom: .5rem; }
p                      { margin-top: 0; margin-bottom: 1rem; }
ul, ol                 { margin-top: 0; margin-bottom: 1rem; padding-left: 2rem; }
ul ul, ol ul, ul ol, ol ol { margin-bottom: 0; }
blockquote, figure     { margin: 0 0 1rem; }
hr                     { margin: 1rem 0; color: inherit; border: 0; border-top: 1px solid; opacity: .25; }
b, strong              { font-weight: bolder; }
small                  { font-size: .875em; }
sub, sup               { position: relative; font-size: .75em; line-height: 0; vertical-align: baseline; }
sub { bottom: -.25em; }
sup { top: -.5em; }

/* Browsers underline links by default. The design underlines deliberately —
   .gx-link on hover, .gx-legal in long-form prose — so clear it globally and
   let those rules opt back in. */
a { color: inherit; text-decoration: none; }

img, svg { vertical-align: middle; }
img { max-width: 100%; height: auto; }

/* <picture> is only a delivery wrapper for WebP — keep it out of the layout
   tree so surrounding CSS behaves exactly as it did with a bare <img>. */
picture { display: contents; }

label { display: inline-block; }

button, input, optgroup, select, textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
button, select { text-transform: none; }
button, [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button:not(:disabled), [type="button"]:not(:disabled),
[type="reset"]:not(:disabled), [type="submit"]:not(:disabled) { cursor: pointer; }
::-moz-focus-inner { padding: 0; border-style: none; }
textarea { resize: vertical; }
select { word-wrap: normal; }

table { border-collapse: collapse; }

[hidden] { display: none !important; }

/* ------------------------------------------------------------------
   2. Container
   ------------------------------------------------------------------ */
.container,
.container-fluid {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px)  { .container { max-width: 540px; } }
@media (min-width: 768px)  { .container { max-width: 720px; } }
@media (min-width: 992px)  { .container { max-width: 960px; } }
@media (min-width: 1200px) { .container { max-width: 1140px; } }
@media (min-width: 1400px) { .container { max-width: 1320px; } }

/* ------------------------------------------------------------------
   3. Row & columns
   ------------------------------------------------------------------ */
.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-.5 * var(--bs-gutter-x));
  margin-left: calc(-.5 * var(--bs-gutter-x));
}

.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-top: var(--bs-gutter-y);
}

.col-12 { flex: 0 0 auto; width: 100%; }

@media (min-width: 576px) {
  .col-sm-6 { flex: 0 0 auto; width: 50%; }
}

@media (min-width: 768px) {
  .col-md-6 { flex: 0 0 auto; width: 50%; }
}

@media (min-width: 992px) {
  .col-lg-2 { flex: 0 0 auto; width: 16.66666667%; }
  .col-lg-3 { flex: 0 0 auto; width: 25%; }
  .col-lg-4 { flex: 0 0 auto; width: 33.33333333%; }
  .col-lg-5 { flex: 0 0 auto; width: 41.66666667%; }
  .col-lg-6 { flex: 0 0 auto; width: 50%; }
  .col-lg-7 { flex: 0 0 auto; width: 58.33333333%; }
  .col-lg-8 { flex: 0 0 auto; width: 66.66666667%; }
  .col-lg-9 { flex: 0 0 auto; width: 75%; }
  .offset-lg-1 { margin-left: 8.33333333%; }
}

/* ------------------------------------------------------------------
   4. Utilities
   ------------------------------------------------------------------ */
.d-none  { display: none !important; }
.d-flex  { display: flex !important; }
.d-block { display: block !important; }

.align-items-center     { align-items: center !important; }
.justify-content-center { justify-content: center !important; }
.justify-content-between{ justify-content: space-between !important; }

.text-center { text-align: center !important; }

.mb-0 { margin-bottom: 0 !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.mb-5 { margin-bottom: 3rem !important; }

@media (min-width: 992px) {
  .d-lg-none  { display: none !important; }
  .d-lg-block { display: block !important; }
  .d-lg-flex  { display: flex !important; }
  .mb-lg-0    { margin-bottom: 0 !important; }
}
