/* ============================================================================
   1. NORMALIZE.CSS
   ============================================================================ */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

body {
  margin: 0;
}

main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

button,
input {
  /* 1 */
  overflow: visible;
}

button,
select {
  /* 1 */
  text-transform: none;
}

button,
[type='button'],
[type='reset'],
[type='submit'] {
  appearance: button;
}

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type='checkbox'],
[type='radio'] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}

[type='search'] {
  appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

[type='search']::-webkit-search-decoration {
  appearance: none;
}

::-webkit-file-upload-button {
  appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

/* ============================================================================
   2. FONTS (from fonts.scss - SCSS variables resolved)
   ============================================================================ */
/* latin-ext */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cMpwpRnDirZPl3v-qzs.woff2)
    format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4cMpwqxnDirZPl3v-.woff2)
    format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4F8pwpRnDirZPl3v-qzs.woff2)
    format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4F8pwqxnDirZPl3v-.woff2)
    format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4LspwpRnDirZPl3v-qzs.woff2)
    format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4LspwqxnDirZPl3v-.woff2)
    format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4ws1wpRnDirZPl3v-qzs.woff2)
    format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4ws1wqxnDirZPl3v-.woff2)
    format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1wpRnDirZPl3v-qzs.woff2)
    format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U48M1wqxnDirZPl3v-.woff2)
    format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4rs1wpRnDirZPl3v-qzs.woff2)
    format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
    U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020,
    U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Lexend Deca";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lexenddeca/v24/K2FifZFYk-dHSE0UPPuwQ7CrD94i-NCKm-U4rs1wqxnDirZPl3v-.woff2)
    format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin */
@font-face {
  font-family: "Caesar Dressing";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/caesardressing/v21/yYLx0hLa3vawqtwdswbotmK4vrRHdrz7D5h9yw.woff2)
    format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
    U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ============================================================================
   3. BASE STYLES (from base.scss - SCSS variables and functions resolved)
   ============================================================================ */

html {
  box-sizing: border-box;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
  overflow-x: clip;
  scroll-behavior: smooth;
  text-rendering: optimizeLegibility;
  text-size-adjust: 100%;
}

html ::-webkit-scrollbar {
  background-color: "Lexend Deca", sans-serif;
  width: 10px;
}

html ::-webkit-scrollbar-thumb {
  background: #9bd7ff;
  border: 1px solid #1a4a10;
  border-radius: 10px;
}

body {
  background: linear-gradient(to bottom, #9bd7ff, #029aff);
  background-repeat: no-repeat;
  background-size: cover;
  color: #000;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1em;
  overflow-x: clip;
}

*,
::after,
::before {
  box-sizing: inherit;
}

img,
svg {
  background-repeat: no-repeat;
  background-size: cover;
  height: auto;
  -webkit-user-drag: none;
  vertical-align: middle;
}

img {
  max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Caesar Dressing", sans-serif;
  font-weight: 400;
  line-height: 1;
  margin: 0;
}

p {
  margin-bottom: 1em;
  margin-top: 0;
  font-family: "Lexend Deca", sans-serif;
  font-size: 16px;
  color: #580c0c;
}

p:last-child {
  margin-bottom: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

.site-logo {
  display: inline-block;
}

.site-logo img {
  width: 180px;
}

.container {
  margin: 0 auto;
  max-width: 1440px;
  padding: 0 2rem;
  width: 100%;
}

.section {
  padding: 4rem 0;
}

.section--regular {
  line-height: 1.7;
}

.section--regular h1,
.section--regular h2,
.section--regular h3,
.section--regular h4,
.section--regular h5,
.section--regular h6,
.section--regular p {
  margin-bottom: 1em;
}

.section__heading {
  margin-bottom: 2rem;
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .section__heading h1,
  .section__heading h2 {
    font-size: 3.125rem;
  }
}

.flex {
  display: flex;
}

.grid {
  display: grid;
  gap: 1rem;
}

@media screen and (min-width: 768px) {
  .grid--2 {
    column-gap: 1.5rem;
    grid-template-columns: repeat(2, 1fr);
  }
}

.flex-align-center {
  align-items: center;
}

.flex-justify-center {
  justify-content: center;
}

.menu {
  flex-direction: column;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.overlay {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

.overlay .container {
  width: 100%;
}

.overlay__content {
  margin-left: auto;
  margin-right: auto;
  max-width: 666px;
}

.link {
  background: transparent;
  border: none;
  color: currentColor;
  cursor: pointer;
  display: inline-block;
  margin: 0;
  outline: none;
  padding: 0;
  text-decoration: underline;
}

.read-more-button {
  margin-top: 2rem;
}

.signup-popup {
  background-color: #14a1ff;
  border-radius: 10px;
  left: 50%;
  max-width: 666px;
  overflow: hidden;
  position: fixed;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 80%;
  z-index: 1000;
}

.signup-popup h2 {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}

.signup-popup__content {
  width: 100%;
}

.signup-popup .popup-form-section {
  margin: 0;
  padding: 2rem;
  text-align: left;
}

.signup-popup .thank-you-message {
  display: none;
  margin: 0;
  padding: 4rem 2rem;
  text-align: center;
}

.signup-popup .thank-you-message h2 {
  margin: 0;
}

.fancy-title {
  background: linear-gradient(90deg, #e3b200 0%, #ffe893 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  -webkit-text-stroke: 2px #580c0c;
  line-height: 1.1;
  font-size: 50px;
  margin-bottom: 1rem;
}

@media (max-width: 767px) {
  .fancy-title {
    font-size: 36px;
  }
}

.page-template-about-us .reviews::after {
  display: none;
}

/* ============================================================================
   4. BUTTON STYLES (from _button.scss)
   ============================================================================ */

.button {
  font-family: "Caesar Dressing", sans-serif;
  align-items: center;
  color: #edc637;
  cursor: pointer;
  display: flex;
  background-color: #580c0c;
  border: unset;
  font-weight: 700;
  justify-content: center;
  line-height: 1;
  padding: 0.75rem 2.5rem;
  text-align: center;
  transition: all 0.2s ease-in-out;
  white-space: nowrap;
  border-radius: 1000px;
  font-size: 18px;
  border: 2px solid #580c0c;
}

.button:hover {
  color: #580c0c;
  background-color: #efc941;
}

.button--submit {
  width: fit-content;
  margin: 0 auto !important;
}

.button--alt {
  background-color: #efc941;
  color: #580c0c;
}

.button--alt:hover {
  background-color: #580c0c;
  color: #efc941;
}

/* ============================================================================
   5. CONTACT STYLES (from _contact.scss)
   ============================================================================ */

.contact h1 {
  font-size: 3.125rem;
  line-height: 1.1;
  margin-bottom: 1rem;
  background: linear-gradient(90deg, #e3b200 0%, #ffe893 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  -webkit-text-stroke: 2px #580c0c;
}

@media (max-width: 767px) {
  .contact h1 {
    font-size: 36px;
  }
}

.contact .section__heading {
  margin: 0 auto 2rem;
  text-align: center;
}

.contact__inner {
  margin: 0 auto;
  max-width: 640px;
  padding: 1rem;
  border-radius: 10px;
}

.contact input,
.contact textarea {
  border-radius: 10px !important;
  padding: 1rem !important;
}

.contact .email-feedback {
  font-weight: 600;
  margin-bottom: 1rem;
  text-align: center;
}

.contact .button {
  width: 90%;
}

/* ============================================================================
   6. FORM STYLES (from _form.scss)
   ============================================================================ */

.form {
  gap: 1rem;
  margin: 0 auto;
  width: 100%;
}

.form__field {
  gap: 0.5rem;
}

.form__field input,
.form__field textarea {
  border: none;
  border-radius: 5px;
  color: #000;
  font-size: 1rem;
  padding: 0.5rem;
  width: 100%;
  background-color: #fff;
  border: 1px solid #000;
}

.form__field input::placeholder,
.form__field textarea::placeholder {
  color: #000;
  opacity: 0.7;
}

.form__field textarea {
  height: 200px;
  resize: vertical;
}

.form .button {
  margin: 0 auto;
}

.form__wrapper img {
  display: none;
}

@media screen and (min-width: 768px) {
  .form__wrapper {
    align-items: center;
    grid-template-columns: repeat(2, 1fr);
  }

  .form__wrapper img {
    display: block;
    width: 100%;
  }

  .form .button {
    margin: 0;
  }
}

.checkbox {
  line-height: 1;
  align-items: start;
  font-size: 12px;
}

.checkbox input {
  width: auto;
}

.checkbox a {
  text-decoration: underline;
}

/* ============================================================================
   7. HEADER STYLES (from _header.scss)
   ============================================================================ */

.header {
  padding: 1.5rem 0;
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 999;
}

.header .burger-menu {
  display: block;
  margin-left: auto;
}

.header__nav {
  display: none;
}

.header__inner {
  gap: 1rem;
  padding: 1rem;
}

.header__menu {
  align-items: center;
  position: relative;
}

.header__menu a {
  color: #000;
}

.header__menu .menu-item:not(.menu-item-as-button) a {
  color: #000;
  font-size: 0.875rem;
  transition: color 0.2s ease-in-out;
  white-space: nowrap;
}

.header__menu .menu-item:not(.menu-item-as-button) a:hover {
  color: green;
}

.header__menu .current-menu-item:not(.menu-item-as-button) a {
  color: #000;
}

.header__buttons {
  gap: 1rem;
}

.header .button--logout {
  display: none;
}

@media screen and (min-width: 1024px) {
  .header__inner {
    gap: 2rem;
    justify-content: space-between;
  }

  .header__logo {
    flex-shrink: 0;
  }

  .header__menu {
    flex-direction: row;
    gap: 2rem;
  }

  .header__nav,
  body.nav-active .header__nav {
    display: flex;
    gap: 0.5rem;
    width: 100%;
    justify-content: flex-end;
    align-items: center;
  }

  .header .burger-menu {
    display: none;
  }

  .header__buttons {
    margin-left: 2rem;
  }

  .header__buttons .button {
    font-weight: 400;
    text-transform: capitalize;
  }
}

@media screen and (max-width: 1023px) {
  body.nav-active .header__nav {
    background-color: #ffe04d;
    box-shadow: 0 0 10px rgba(255, 224, 77, 0.1);
    display: flex;
    flex-direction: column;
    left: 50%;
    padding: 1rem;
    position: absolute;
    top: 100%;
    transform: translate(-50%, 0);
    width: 100%;
    z-index: 555;
  }

  .header__buttons {
    margin-top: 2rem;
  }
}

/* ============================================================================
   8. FOOTER STYLES (from _footer.scss)
   ============================================================================ */

.footer {
  padding: 2rem 0 2rem 0;
  font-size: 12px;
}

.footer__nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.footer__nav ul {
  margin-top: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  text-align: center;
}

.footer__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  text-align: center;
  gap: 3rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #ffffff52;
}

@media (max-width: 767px) {
  .footer__inner {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

.footer__copyright p {
  padding: 1rem;
  text-align: center;
  font-size: 12px;
  font-weight: 600;
}

@media (max-width: 767px) {
  .footer__copyright p {
    display: none;
  }
}

.footer__menu {
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: row;
  font-size: 14px;
  text-align: left;
  gap: 0.75rem;
  display: flex;
}

.footer__menu li:hover a {
  color: #ffffff;
}

.footer__left {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: start;
  text-align: left;
}

@media (max-width: 767px) {
  .footer__left {
    align-items: center;
    text-align: center;
  }
}

.footer__text p {
  font-size: 14px;
  color: #f6f6f6;
}

.footer__icons {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  align-items: center;
}

.footer__icons img {
  max-height: 30px;
}

/* ============================================================================
   9. HERO STYLES (from _hero.scss)
   ============================================================================ */

.hero {
  padding-top: 130px;
  position: relative;
}

.hero::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url("./images/cloud.png");
  background-size: 100% 100%;
  background-position: center;
  z-index: -1;
}

@media (max-width: 767px) {
  .hero::after {
    background-size: cover;
    top: 25%;
  }
}

.hero__inner {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
  width: 900px;
  max-width: 100%;
  margin: 0 auto;
  text-align: center;
  position: relative;
}

@media (max-width: 767px) {
  .hero__inner {
    padding: 1rem;
  }
}

.hero__inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: -50%;
  width: 440px;
  height: 520px;
  background-image: url("./images/hero-l.png");
  background-size: cover;
  background-position: center;
  z-index: -2;
}

.hero__inner::after {
  content: "";
  position: absolute;
  top: 0;
  right: -50%;
  width: 505px;
  height: 597px;
  background-image: url("./images/hero-r.png");
  background-size: cover;
  background-position: center;
  z-index: -2;
}

.hero__text {
  gap: 2rem;
}

.hero__text h1 {
  font-size: 3.125rem;
  line-height: 1.1;
  margin-bottom: 1rem;
  background: linear-gradient(90deg, #e3b200 0%, #ffe893 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  -webkit-text-stroke: 2px #580c0c;
}

@media (max-width: 767px) {
  .hero__text h1 {
    font-size: 36px;
  }
}

.hero__text p {
  line-height: 20px;
}

/* ============================================================================
   10. ABOUT STYLES (from _about.scss)
   ============================================================================ */

.about__content {
  text-align: center;
  padding: 5rem 2rem 2rem 2rem;
}

@media (max-width: 767px) {
  .about__content {
    padding: 4rem 1rem 1rem 1rem;
  }
}

.about__content h3 {
  margin-bottom: 1rem;
}

.about__inner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  background: #ffffff33;
  box-shadow: 0px 54px 34px 0px #ffffff40 inset;
  padding: 2rem;
  border-radius: 50px;
}

@media (max-width: 912px) {
  .about__inner {
    gap: 5rem;
  }
}

.about__header h1 {
  margin-bottom: 1rem;
}

.about__items {
  margin-top: 3rem;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
}

@media (max-width: 912px) {
  .about__items {
    grid-template-columns: 1fr;
    gap: 5rem;
  }
}

@media (max-width: 767px) {
  .about__items {
    margin-top: 0;
  }
}

.about__item {
  height: 100%;
  background: #70c6ff;
  border-radius: 20px;
  position: relative;
}

.about__icon {
  position: absolute;
  top: -50px;
  left: 50%;
  transform: translateX(-50%);
}

.about__icon img {
  max-width: 100%;
  width: 100px;
}

.about .button {
  width: fit-content;
  margin: 0 auto;
}

@media (max-width: 912px) {
  .about .button {
    margin: -2rem auto 0 auto;
  }
}

/* ============================================================================
   11. LEADERBOARD STYLES (from _leaderboard.scss)
   ============================================================================ */

.lb__wrapper {
  background: #ffffff33;
  box-shadow: 0px 54px 34px 0px #ffffff40 inset;
  padding: 2rem;
  border-radius: 50px;
}

@media (max-width: 767px) {
  .lb__wrapper {
    padding: 1rem;
  }
}

.lb__head {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 4rem;
  margin-top: 3rem;
  margin-bottom: 2rem;
}

@media (max-width: 767px) {
  .lb__head {
    gap: 1rem;
    margin-top: 2rem;
    margin-bottom: 1rem;
  }
}

.lb__head > div {
  background: #ffffff1a;
  box-shadow: 0px 4px 42.2px 0px #ffffff4d inset;
  padding: 0.5rem 1rem;
  text-align: center;
  border-radius: 10px;
}

@media (max-width: 767px) {
  .lb__head > div {
    font-size: 14px;
    padding: 0.25rem 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

@media (max-width: 425px) {
  .lb__head > div {
    font-size: 12px;
  }
}

.lb__table {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.lb__single-leader {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 4rem;
  text-align: center;
  align-items: center;
}

@media (max-width: 767px) {
  .lb__single-leader {
    gap: 1rem;
    font-size: 14px;
  }
}

@media (max-width: 425px) {
  .lb__single-leader {
    font-size: 12px;
    gap: 0.5rem;
  }
}

.lb__points {
  color: #e3b200;
  font-weight: 900;
}

/* ============================================================================
   12. REGISTER FORM STYLES (from _register-form.scss)
   ============================================================================ */

.register-form__login {
  font-size: 1rem;
}

.register-form.hidden {
  display: none;
  visibility: hidden;
}

.register-form .form {
  flex-wrap: wrap;
}

.register-form .form__field {
  width: 100%;
}

.register-form .form__field--checkbox {
  align-items: start;
  line-height: 1;
  text-align: left;
}

.register-form .form__field--checkbox label a {
  text-decoration: underline;
}

.register-form .form__field--checkbox label p {
  font-size: 0.75rem;
}

.register-form .form__field--checkbox input {
  width: auto;
}

.register-form .button {
  margin: 0 auto;
  width: fit-content;
}

@media screen and (min-width: 768px) {
  .register-form .form__field:not(.form__field--checkbox) {
    flex: 1 1 calc(33.333% - 1rem);
  }
}

.hidden {
  display: none;
  visibility: hidden;
}

/* ============================================================================
   13. MODAL STYLES (from _modal.scss)
   ============================================================================ */

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.modal-overlay .modal-content {
  background: #14a1ff;
  background-size: 100% 100%;
  padding: 30px 20px;
  max-width: 450px;
  width: 90%;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
  text-align: center;
  position: relative;
  font-weight: bold;
  border-radius: 20px;
}

.modal-overlay .modal-content p {
  text-align: left;
  padding-left: 1.5rem;
}

.modal-overlay .modal-content a {
  color: #fcff2e;
  text-decoration: underline;
}

.modal-overlay .modal-content h2 {
  margin-bottom: 1rem;
}

.modal-overlay .modal-content li {
  text-align: left;
}

.modal-overlay .modal-content .submit-button {
  display: inline-block;
  margin-top: 10px;
  padding: 12px 36px;
  border: none;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  color: #fff;
  font-size: 1.1rem;
  font-weight: bold;
  cursor: pointer;
  transition: transform 0.1s ease-in-out;
}

/* ============================================================================
   14. GAMES STYLES (from _games.scss)
   ============================================================================ */

.home .games__grid > .game:nth-child(n + 5),
.page-template-about-us .games__grid > .game:nth-child(n + 5) {
  display: none;
}

.games__grid {
  margin-top: 2rem;
  gap: 1rem;
  grid-template-columns: repeat(auto-fill, minmax(240px, 20em));
  justify-content: center;
}

.games__header h1 {
  margin-bottom: 1rem;
}

.games .game {
  border-radius: 16px;
  overflow: clip;
}

.games .game__wrapper {
  position: relative;
}

.games .game__wrapper img {
  width: 100%;
  border-radius: 14px;
}

.games .game__info img {
  margin-top: 0.5rem;
  height: 20px;
  width: auto;
}

.games__item .game__wrapper {
  display: flex;
  flex-direction: column;
  text-align: center;
}

/* ============================================================================
   15. COOKIES STYLES (from _cookies.scss)
   ============================================================================ */

#cookie-banner {
  position: fixed;
  bottom: 1rem;
  left: 0;
  width: 100%;
  z-index: 1000;
  box-sizing: border-box;
}

.cookie-inner {
  border: 2px solid #000;
  background-color: #9bd7ff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 20px;
  width: 80%;
  margin: 0 auto;
  border-radius: 10px;
}

.cookie-icon {
  flex: 0 0 auto;
  margin-right: 15px;
  display: flex;
  align-items: center;
}

.cookie-icon img {
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.cookie-text {
  flex: 1 1 auto;
  font-size: 14px;
  line-height: 1.4;
}

.cookie-buttons {
  flex: 0 0 auto;
  display: flex;
  gap: 10px;
}

#accept-btn {
  background-color: #580c0c;
  color: #fff;
  border: none;
  padding: 8px 16px;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
}

#accept-btn:hover {
  background-color: #af2828;
}

.more-info-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  border: 1px solid #000;
  padding: 8px 16px;
  border-radius: 4px;
  font-size: 14px;
  text-decoration: none;
  cursor: pointer;
}

.more-info-btn:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

@media (max-width: 600px) {
  .cookie-inner {
    flex-direction: column;
    text-align: center;
    gap: 10px;
  }

  .cookie-icon {
    margin: 0 auto;
  }

  .cookie-buttons {
    justify-content: center;
  }

  .cookie-text {
    font-size: 13px;
  }
}

/* ============================================================================
   16. SINGLE GAME STYLES (from _single-sport.scss)
   ============================================================================ */

.game-page .game__body,
.single-sport .game__body {
  margin-top: 5rem;
  position: relative;
  z-index: 1;
}

.game-page .game__title,
.single-sport .game__title {
  margin-bottom: 2rem;
}

.game-page .game__title h1,
.single-sport .game__title h1 {
    background: linear-gradient(90deg, #e3b200 0%, #ffe893 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    -webkit-text-stroke: 2px #580c0c;
  font-size: 3rem;
  text-align: center;
  text-transform: uppercase;
}

.game-page .game__wrapper,
.single-sport .game__wrapper {
  margin: 0 auto;
  max-width: 100%;
  width: 100%;
}

.game-page .game__area,
.single-sport .game__area {
  padding-top: 55.56%;
  position: relative;
}

.game-page iframe.game__iframe,
.single-sport iframe.game__iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

@media screen and (max-width: 1023px) {
  .game-page .game__body,
  .single-sport .game__body {
    margin-top: 2rem;
  }

  .game-page .game.supports-mobile,
  .single-sport .game.supports-mobile {
    padding-top: 176%;
  }
}

/* ============================================================================
   17. REVIEWS STYLES (from _reviews.scss)
   ============================================================================ */

.reviews {
  position: relative;
}

.reviews::after {
  content: "";
  position: absolute;
  top: -40%;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url("./images/cloud.png");
  background-size: 100% 100%;
  background-position: center;
  z-index: -1;
}

@media (max-width: 767px) {
  .reviews::after {
    background-size: cover;
  }
}

.reviews__wrapper {
  display: flex;
  flex-wrap: wrap;
  column-gap: 4rem;
  row-gap: 2rem;
  margin-top: 2rem;
}

.reviews__single {
  padding: 2rem;
  flex: 1 1 300px;
  box-sizing: border-box;
  background-color: #fff;
  border-radius: 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  background: #ffffff33;
  box-shadow: 0px 54px 34px 0px #ffffff40 inset;
  padding: 2rem;
  border-radius: 50px;
}

.reviews__single-content {
  font-size: 16px;
  color: #580c0c;
  font-weight: 700;
  text-align: center;
  line-height: 30px;
}

/* ============================================================================
   18. NO PURCHASE STYLES (from _no-purchase.scss)
   ============================================================================ */

.no-purchase {
  position: relative;
}

.no-purchase::after {
  content: "";
  position: absolute;
  top: 25%;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url("./images/cloud.png");
  background-size: 100% 100%;
  background-position: center;
  z-index: -1;
}

@media (max-width: 767px) {
  .no-purchase::after {
    background-size: cover;
  }
}

.no-purchase::before {
  content: "";
  position: absolute;
  top: -20%;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url("./images/cloud.png");
  background-size: 100% 100%;
  background-position: center;
  z-index: -1;
}

@media (max-width: 767px) {
  .no-purchase::before {
    background-size: cover;
  }
}

.no-purchase__inner {
  height: 400px;
  display: flex;
  align-items: center;
}

.no-purchase__inner img {
  margin: 0 auto;
  display: block;
}

.no-purchase .button {
  width: fit-content;
  margin: 0 auto;
  margin-top: 1rem;
}

.no-purchase__text {
  position: relative;
}

.no-purchase__text::before {
  content: "";
  position: absolute;
  top: -180px;
  left: -300px;
  width: 460px;
  height: 460px;
  background-image: url("./images/horse.png");
  background-size: cover;
  background-position: center;
  z-index: -1;
}

.no-purchase__text::after {
  content: "";
  position: absolute;
  top: -180px;
  right: -300px;
  width: 460px;
  height: 460px;
  background-image: url("./images/horse.png");
  background-size: cover;
  background-position: center;
  z-index: -1;
  transform: rotateY(180deg);
}

/* ============================================================================
   END OF STYLES
   ============================================================================ */