/* Golden Quality - site design layer. Loaded after the theme on every public page. */
:root {
  --gq-navy-900: #062a55;
  --gq-navy: #0a3d72;
  --gq-teal: #0a7a94;
  --gq-lime: #c5e65c;
  --gq-lime-deep: #6f9a1c;
  --gq-tint: #f2f8e6;
  --gq-ink: #12264a;
  --gq-muted: #46536f;
  --gq-line: #dfe7ef;
  --gq-soft: #dcebf5;
  --gq-ease: cubic-bezier(.22, 1, .36, 1);
  --gq-gutter: clamp(16px, 5vw, 80px);
  --fontFamily: 'Almarai', sans-serif;
  --headingFontFamily: 'Almarai', sans-serif;
}
html { scroll-behavior: smooth; }
body { color: var(--gq-ink); overflow-x: clip; }
h1, h2, h3, h4, h5, h6 { font-weight: 800; }
:focus-visible { outline: 3px solid var(--gq-teal); outline-offset: 2px; }
.gq-wrap { padding-inline: var(--gq-gutter); }
.gq-eyebrow { margin: 0 0 10px; font-size: 15px; font-weight: 700; color: var(--gq-teal); }
.gq-h2 { margin: 0; font-size: clamp(32px, 4vw, 58px); line-height: 1.16; font-weight: 800; color: var(--gq-navy); }

/* Pills */
.gq-pill {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 56px; padding: 12px 32px;
  border-radius: 100px; font-size: 17px; font-weight: 800; text-decoration: none; transition: transform .3s var(--gq-ease), box-shadow .3s;
}
.gq-pill:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0, 0, 0, .22); }
.gq-pill--lime, .gq-pill--lime:hover { background: var(--gq-lime); color: var(--gq-navy-900); }
.gq-pill--line, .gq-pill--line:hover { border: 1.5px solid #fff; color: #fff; font-weight: 700; }

/* ------------------------------------------------ Navigation */
.navbar-area { position: sticky !important; top: 0; z-index: 999; padding: 6px 0 !important; background: var(--gq-navy-900) !important; animation: none !important; box-shadow: none; }
.navbar-area.is-sticky { background: var(--gq-navy-900) !important; box-shadow: 0 8px 26px rgba(6, 42, 85, .3) !important; }
.gq-home .navbar-area:not(.is-sticky) { position: absolute !important; inset-inline: 0; background: transparent !important; }
.gq-home .navbar-area.is-sticky { position: fixed !important; }
.noke-nav, .noke-responsive-nav { background: transparent !important; }
.navbar-brand img, .noke-responsive-menu .logo img { display: block; padding: 5px 8px; border-radius: 12px; background: #fff; width: 66px !important; transition: width .3s var(--gq-ease); }
/* Larger logo over the hero. It returns to the compact size once the bar sticks. */
.gq-home .navbar-area:not(.is-sticky) .navbar-brand img { width: 90px !important; padding: 8px 12px; border-radius: 16px; }
.gq-home .navbar-area:not(.is-sticky) .noke-responsive-menu .logo img { width: 86px !important; padding: 6px 9px; border-radius: 14px; }
.noke-nav .navbar .navbar-nav > .nav-item > a,
.noke-nav .navbar .navbar-nav > .nav-item > a:hover,
.noke-nav .navbar .navbar-nav > .nav-item:hover > a { color: #fff !important; font-weight: 700; }
.noke-nav .navbar .navbar-nav > .nav-item:hover > a { color: var(--gq-lime) !important; }
.noke-nav .navbar .navbar-nav .dropdown-menu { border: 0; border-radius: 16px; overflow: hidden; box-shadow: 0 18px 44px rgba(6, 42, 85, .24); }
.noke-nav .navbar .navbar-nav .dropdown-menu a { color: var(--gq-ink) !important; }
.noke-nav .navbar .navbar-nav .dropdown-menu a:hover { color: var(--gq-teal) !important; }
html[dir="rtl"] .noke-nav .navbar .navbar-nav > .nav-item:last-child > .dropdown-menu { right: auto !important; left: 0 !important; }
html:not([dir="rtl"]) .noke-nav .navbar .navbar-nav > .nav-item:last-child > .dropdown-menu { left: auto !important; right: 0 !important; }
.mean-container .mean-bar { background: transparent !important; }
.mean-container a.meanmenu-reveal { color: #fff !important; }
.mean-container a.meanmenu-reveal span { background: #fff !important; }
.mean-container .mean-nav { background: #fff !important; border-radius: 0 0 16px 16px; }
.mean-container .mean-nav ul li a { color: var(--gq-ink) !important; }
.others-option-for-responsive .dot-menu .inner .circle { background: #fff !important; }

/* ------------------------------------------------ Hero slider */
.gq-hero { position: relative; overflow: hidden; height: clamp(700px, 94vh, 900px); background: var(--gq-navy-900); color: #fff; }
.gq-slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 1.1s ease, visibility 0s linear 1.1s; }
.gq-slide.is-active { opacity: 1; visibility: visible; transition: opacity 1.1s ease; z-index: 1; }
.gq-slide__media { position: absolute; inset: 0; overflow: hidden; }
.gq-slide__media picture { display: block; width: 100%; height: 100%; }
.gq-slide__media img { width: 100%; height: 100%; object-fit: cover; object-position: left center; }
html:not([dir="rtl"]) .gq-slide__media { transform: scaleX(-1); }
.gq-slide.is-active .gq-slide__media img { animation: gqKen 8s ease-out both; }
@keyframes gqKen { from { transform: scale(1.09); } to { transform: scale(1); } }
.gq-slide::after, .gq-closing::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(to left, rgba(6, 42, 85, .96) 0%, rgba(6, 42, 85, .86) 34%, rgba(6, 42, 85, .28) 62%, rgba(6, 42, 85, 0) 80%);
}
html:not([dir="rtl"]) .gq-slide::after, html:not([dir="rtl"]) .gq-closing::after { transform: scaleX(-1); }
/* A slide with no text shows its whole image, untouched. It may already contain wording. */
.gq-slide--plain::after { display: none; }
.gq-slide--plain .gq-slide__media { inset: 0 !important; transform: none !important; }
.gq-slide--plain .gq-slide__media img { object-fit: contain !important; object-position: center !important; animation: none !important; }
.gq-hero::before { content: ""; position: absolute; z-index: 2; inset: 0 0 auto; height: 150px; pointer-events: none; background: linear-gradient(to bottom, rgba(6, 42, 85, .72), rgba(6, 42, 85, 0)); }
.gq-slide__copy { position: absolute; z-index: 3; inset: 0; display: flex; flex-direction: column; justify-content: center; padding: 120px var(--gq-gutter) 130px; }
.gq-slide__copy > * { max-width: 660px; }
.gq-slide__kicker { margin: 0 0 16px; font-size: 15px; font-weight: 700; color: var(--gq-lime); }
.gq-slide__title { margin: 0 0 20px; color: #fff; font-size: clamp(38px, 5.2vw, 76px); line-height: 1.16; font-weight: 800; }
.gq-slide__text { margin: 0 0 30px; max-width: 46ch; font-size: clamp(16px, 1.35vw, 19px); line-height: 1.8; color: #e6f0f7; }
.gq-slide__cta { display: flex; flex-wrap: wrap; gap: 12px; }
.gq-slide.is-active .gq-slide__kicker { animation: gqRise .9s var(--gq-ease) both; }
.gq-slide.is-active .gq-slide__title { animation: gqRise .9s .14s var(--gq-ease) both; }
.gq-slide.is-active .gq-slide__text, .gq-slide.is-active .gq-slide__cta { animation: gqRise .9s .28s var(--gq-ease) both; }
@keyframes gqRise { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: none; } }

.gq-hero__nav { position: absolute; z-index: 4; inset-inline: 0; inset-block-end: 0; display: flex; align-items: flex-start; gap: clamp(8px, 1.5vw, 20px); padding: 0 var(--gq-gutter) 22px; }
.gq-hero__tabs { flex: 1; display: grid; grid-template-columns: repeat(var(--gq-tabs, 3), minmax(0, 1fr)); gap: clamp(8px, 1.5vw, 20px); }
.gq-tab { min-height: 56px; padding: 0 0 10px; border: 0; background: transparent; color: #fff; text-align: start; cursor: pointer; font: inherit; }
.gq-tab__bar { display: block; height: 3px; margin-bottom: 10px; background: rgba(255, 255, 255, .35); }
.gq-tab__bar i { display: block; height: 100%; width: 0; background: var(--gq-lime); }
.gq-tab.is-active .gq-tab__bar i { width: 100%; }
.gq-hero.is-playing .gq-tab.is-active .gq-tab__bar i { width: 0; animation: gqFill 7s linear both; }
@keyframes gqFill { to { width: 100%; } }
.gq-tab b { font-weight: 800; color: var(--gq-lime); }
.gq-tab span { font-size: 15px; font-weight: 700; }
.gq-hero__arrows { display: flex; gap: 8px; }
.gq-round { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; border: 1.5px solid #fff; background: transparent; color: #fff; cursor: pointer; font: inherit; font-size: 12px; font-weight: 700; transition: background-color .2s, color .2s; }
.gq-round:hover { background: #fff; color: var(--gq-navy-900); }
html:not([dir="rtl"]) .gq-round svg { transform: scaleX(-1); }

/* Nationality band */
.gq-band { overflow: hidden; padding: 16px 0; background: var(--gq-tint); border-bottom: 1px solid #dfe9c4; }
.gq-band__track { display: flex; width: max-content; animation: gqMove 34s linear infinite; }
.gq-band:hover .gq-band__track, .gq-band:focus-within .gq-band__track { animation-play-state: paused; }
html[dir="rtl"] .gq-band__track { --gq-shift: 50%; }
html:not([dir="rtl"]) .gq-band__track { --gq-shift: -50%; }
@keyframes gqMove { to { transform: translateX(var(--gq-shift)); } }
.gq-band a { display: inline-flex; align-items: baseline; gap: 10px; margin-inline-end: 12px; padding: 12px 24px; border-radius: 100px; background: #fff; color: var(--gq-navy); white-space: nowrap; font-size: 18px; font-weight: 800; text-decoration: none; transition: background-color .25s, color .25s; }
.gq-band a span { font-size: 14px; font-weight: 400; }
.gq-band a:hover { background: var(--gq-navy); color: #fff; }

/* ------------------------------------------------ Maid cards and carousel */
.gq-maids { padding-block: clamp(52px, 7vw, 104px); scroll-margin-top: 90px; }
.gq-maids__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 32px; margin-bottom: 24px; padding-inline: var(--gq-gutter); }
.gq-maids .gq-round { border-color: var(--gq-navy); color: var(--gq-navy); }
.gq-maids .gq-round:hover { background: var(--gq-navy); color: #fff; }
.gq-filter { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; padding-inline: var(--gq-gutter); }
.gq-filter--flush { padding-inline: 0; margin: 26px 0 8px; }
.gq-filter a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 20px; border-radius: 100px; border: 1.5px solid #b7c8d9; background: #fff; color: var(--gq-navy); font-size: 15px; font-weight: 700; text-decoration: none; transition: background-color .2s, color .2s; }
.gq-filter a:hover, .gq-filter a.is-active { background: var(--gq-navy); border-color: var(--gq-navy); color: #fff; }
.gq-track { display: flex; gap: 20px; overflow-x: auto; padding: 4px var(--gq-gutter) 14px; scroll-snap-type: x proximity; scroll-padding-inline: var(--gq-gutter); scrollbar-width: none; }
.gq-track::-webkit-scrollbar { display: none; }
.gq-track > .gq-card { flex: 0 0 min(280px, 76vw); scroll-snap-align: start; }
.gq-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 270px), 1fr)); gap: 30px 20px; }
.gq-card__photo { position: relative; display: block; aspect-ratio: 2 / 3; border-radius: 22px; overflow: hidden; background: #dfeaf2; }
.gq-card__photo img { width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .8s var(--gq-ease); }
.gq-card:hover .gq-card__photo img { transform: scale(1.03); }
.gq-status { position: absolute; bottom: 44px; inset-inline-start: 12px; padding: 5px 14px; border-radius: 100px; font-size: 13px; font-weight: 800; }
.gq-tags { position: absolute; bottom: 12px; inset-inline-start: 12px; display: flex; flex-wrap: wrap; gap: 6px; }
.gq-tags > * { padding: 4px 12px; border-radius: 100px; background: rgba(6, 42, 85, .9); color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; }
.gq-card h3 { margin: 14px 0 2px; font-size: 19px; font-weight: 800; color: var(--gq-ink); }
.gq-card__meta { margin: 0 0 4px; font-size: 15px; color: var(--gq-muted); }
.gq-card__price { margin: 0 0 12px; font-size: 18px; font-weight: 800; color: var(--gq-navy); }
.gq-card__price del { margin-inline-start: 6px; font-size: 14px; font-weight: 400; color: #5d6784; }
.gq-card__deal { display: block; font-size: 13px; font-weight: 700; color: #b0520f; }
.gq-card__actions { display: flex; gap: 8px; }
.gq-card__actions a { flex: 1; display: flex; align-items: center; justify-content: center; min-height: 46px; padding: 6px 8px; border-radius: 100px; font-size: 14px; font-weight: 700; text-align: center; text-decoration: none; }
.gq-card__view { background: var(--gq-navy); color: #fff; }
.gq-card__view:hover { background: var(--gq-navy-900); color: #fff; }
.gq-card__chat { border: 1.5px solid #12784a; color: #0f6b41; }
.gq-card__chat:hover { background: #12784a; color: #fff; }
.gq-card__chat.is-off { border-color: #c6ced8; color: #5d6784; pointer-events: none; }
.gq-all { margin-top: 26px; text-align: center; }
.gq-all a { display: inline-flex; align-items: center; min-height: 52px; padding: 10px 32px; border-radius: 100px; background: var(--gq-navy); color: #fff; font-weight: 700; text-decoration: none; }

/* Nationality cards */
.gq-nats { padding-bottom: clamp(44px, 6vw, 84px); }
.gq-nats .features-item { background: #fff !important; border: 1px solid var(--gq-line); border-radius: 22px !important; transition: transform .4s var(--gq-ease), box-shadow .4s; }
.gq-nats .features-item:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(6, 42, 85, .13); }
.gq-nats .btn-success { background: var(--gq-navy); border-color: var(--gq-navy); }

/* ------------------------------------------------ Contracts */
.gq-contracts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 480px), 1fr)); background: var(--gq-navy-900); color: #fff; }
.gq-contracts__copy { padding: clamp(44px, 6vw, 96px) var(--gq-gutter); }
.gq-contracts .gq-eyebrow { color: var(--gq-lime); }
.gq-contracts .gq-h2 { margin-bottom: 28px; color: #fff; }
.gq-contract { border-top: 1px solid #3f6a93; }
.gq-contract button { width: 100%; min-height: 66px; padding: 14px 0; border: 0; background: transparent; color: #fff; font: inherit; font-size: clamp(21px, 2vw, 28px); font-weight: 800; text-align: start; cursor: pointer; }
.gq-contract.is-open button { color: var(--gq-lime); }
.gq-contract__body { display: none; padding-bottom: 22px; }
.gq-contract.is-open .gq-contract__body { display: block; animation: gqRise .6s var(--gq-ease) both; }
.gq-contract__body p { margin: 0 0 14px; max-width: 46ch; font-size: 17px; color: #e6f0f7; }
.gq-contract__body a { font-weight: 700; color: var(--gq-lime); }
.gq-contracts__media { position: relative; min-height: clamp(320px, 42vw, 640px); overflow: hidden; }
.gq-contracts__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: left center; opacity: 0; transition: opacity .8s ease; }
.gq-contracts__media img.is-active { opacity: 1; }

/* Steps */
.gq-steps { padding: clamp(52px, 7vw, 104px) var(--gq-gutter); }
.gq-steps .gq-h2 { margin-bottom: clamp(28px, 4vw, 56px); }
.gq-steps ol { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 30px 26px; margin: 0; padding: 0; list-style: none; }
.gq-steps li { padding-top: 18px; border-top: 3px solid var(--gq-navy); }
.gq-steps li > span { display: block; margin-bottom: 8px; font-size: clamp(44px, 5vw, 72px); line-height: 1; font-weight: 800; color: var(--gq-lime-deep); }
.gq-steps h3 { margin: 0 0 6px; font-size: 22px; color: var(--gq-navy); }
.gq-steps p { margin: 0; color: #33415c; }

/* Guarantee and questions */
.gq-faq { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 30px 72px; align-items: start; padding: clamp(52px, 7vw, 104px) var(--gq-gutter); background: var(--gq-lime); color: var(--gq-navy-900); }
.gq-faq__big { margin: 0; font-size: clamp(82px, 13vw, 190px); line-height: .95; font-weight: 800; color: var(--gq-navy-900); }
.gq-faq h2 { margin: 8px 0 12px; color: var(--gq-navy-900); font-size: clamp(28px, 3vw, 44px); line-height: 1.2; }
.gq-faq__lead { margin: 0; max-width: 42ch; font-size: 17px; color: var(--gq-navy-900); }
.gq-faq__list { display: flex; flex-direction: column; gap: 10px; }
.gq-faq details { border-radius: 18px; background: #fff; }
.gq-faq summary { min-height: 62px; padding: 18px 22px; font-size: 18px; font-weight: 800; cursor: pointer; }
.gq-faq details p { margin: 0; padding: 0 22px 20px; color: #26344f; }

/* Closing */
.gq-closing { position: relative; overflow: hidden; min-height: 620px; display: flex; align-items: center; background: var(--gq-navy-900); color: #fff; }
.gq-closing > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: left center; }
html:not([dir="rtl"]) .gq-closing > img { transform: scaleX(-1); }
.gq-closing__copy { position: relative; z-index: 1; padding: 60px var(--gq-gutter); }
.gq-closing h2 { margin: 0 0 16px; max-width: 13ch; color: #fff; font-size: clamp(38px, 5vw, 72px); line-height: 1.14; }
.gq-closing p { margin: 0 0 6px; max-width: 46ch; font-size: 17px; color: #e6f0f7; }
.gq-closing .gq-slide__cta { margin-top: 24px; }

/* ------------------------------------------------ Inner page header */
.gq-pagehead { position: relative; overflow: hidden; background: var(--gq-navy-900); color: #fff; }
.gq-pagehead > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: left center; }
html:not([dir="rtl"]) .gq-pagehead > img { transform: scaleX(-1); }
.gq-pagehead::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to left, rgba(6, 42, 85, .97) 0%, rgba(6, 42, 85, .88) 42%, rgba(6, 42, 85, .35) 78%, rgba(6, 42, 85, .2) 100%); }
html:not([dir="rtl"]) .gq-pagehead::after { transform: scaleX(-1); }
.gq-pagehead__copy { position: relative; z-index: 1; padding: clamp(36px, 5vw, 72px) var(--gq-gutter) clamp(70px, 8vw, 110px); }
.gq-pagehead h1 { margin: 0 0 12px; color: #fff; font-size: clamp(36px, 5vw, 72px); line-height: 1.15; }
.gq-crumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; font-size: 15px; color: #e6f0f7; }
.gq-crumbs a { color: var(--gq-lime); }
.gq-crumbs li + li::before { content: "/"; margin-inline-end: 8px; }
.gq-list { padding: 0 var(--gq-gutter) clamp(48px, 6vw, 90px); }
.gq-search { position: relative; z-index: 2; margin-top: clamp(-74px, -5vw, -44px); padding: clamp(14px, 2vw, 24px); border-radius: 22px; background: #fff; box-shadow: 0 16px 40px rgba(6, 42, 85, .14); }
.gq-search .products-area { margin: 0 !important; }
.gq-search .form-control { min-height: 48px; border: 1px solid #b7c5d5; border-radius: 12px; background: #fff; }
.gq-search label { font-size: 14px; font-weight: 700; color: var(--gq-ink); }
.gq-search .btn-success { min-height: 50px; border: 0; border-radius: 100px; background: var(--gq-lime); color: var(--gq-navy-900); font-weight: 800; }
.gq-summary { margin: 0 0 22px; color: var(--gq-muted); }

/* Other inner pages keep their markup and share the new header */
.page-title-area.style-four { background-image: none !important; background-color: var(--gq-navy-900) !important; }
.page-title-area.style-four::before { background-image: none !important; display: none; }
.page-title-area .page-title-content h2, .page-title-area .page-title-content h3 { color: #fff; font-size: clamp(30px, 4vw, 54px); font-weight: 800; }
.page-title-area .page-title-content ul li, .page-title-area .page-title-content ul li a { color: #e6f0f7; }
.page-title-area .page-title-content ul li a { color: var(--gq-lime); }

/* Older cards on offers, search and nationality pages */
.single-products-box { background: #fff !important; border: 1px solid var(--gq-line); border-radius: 22px; overflow: hidden; transition: transform .35s var(--gq-ease), box-shadow .35s; }
.single-products-box:hover { transform: translateY(-5px); box-shadow: 0 18px 40px rgba(6, 42, 85, .13); }
.single-products-box .btn { border-radius: 100px; }
.default-btn { border-radius: 100px !important; background: var(--gq-navy) !important; color: #fff !important; }

/* ------------------------------------------------ Maid profile */
.gq-profile { padding: clamp(28px, 4vw, 56px) 0 clamp(36px, 5vw, 70px); }
.gq-profile .image { border-radius: 28px; overflow: hidden; background: #dfeaf2; }
.gq-profile .products-content { margin-top: 0 !important; }
.gq-profile h1 { margin: 0 0 4px; color: var(--gq-navy); font-size: clamp(30px, 3.6vw, 52px); line-height: 1.15; }
.gq-profile__meta { margin: 0 0 14px; font-size: 17px; color: var(--gq-muted); }
.gq-profile__salary { margin: 0 0 12px; font-size: 16px; color: var(--gq-muted); }
.gq-profile__salary strong { color: var(--gq-navy); font-size: 19px; }
.gq-profile .sale { display: inline-block; width: fit-content; margin-bottom: 12px; padding: 5px 16px !important; border-radius: 100px !important; font-size: 14px; }
.gq-profile .price .new-price { font-size: clamp(26px, 2.6vw, 36px); font-weight: 800; color: var(--gq-navy); }
.gq-profile .btn-success { min-height: 58px; border: 0; border-radius: 100px; background: var(--gq-lime); color: var(--gq-navy-900); font-weight: 800; display: flex; align-items: center; justify-content: center; }
.gq-profile .btn-primary { min-height: 54px; border: 1.5px solid var(--gq-navy); border-radius: 100px; background: #fff; color: var(--gq-navy); font-weight: 700; }
.gq-profile .btn-danger.disabled { border-radius: 100px; }
.gq-profile__note { margin: 12px 0 22px; padding: 14px 18px; border-radius: 16px; background: var(--gq-tint); color: #26344f; }
.gq-profile .accordion-item { margin-bottom: 10px; border: 1px solid var(--gq-line); border-radius: 16px !important; overflow: hidden; }
.gq-profile .accordion-button { font-weight: 800; color: var(--gq-navy); background: #fff; box-shadow: none; }
.gq-profile .accordion-button:not(.collapsed) { background: var(--gq-tint); color: var(--gq-navy); }

/* ------------------------------------------------ Footer and floating button */
.footer-area { background: var(--gq-navy-900) !important; color: var(--gq-soft); border-top: 1px solid #2d557f !important; padding-top: clamp(40px, 5vw, 68px) !important; }
.footer-area h3, .footer-area h5 { color: #fff; }
.footer-area p, .footer-area li, .footer-area a { color: var(--gq-soft) !important; list-style: none; }
.footer-area a:hover { color: var(--gq-lime) !important; }
.footer-area .logo img { padding: 8px 12px; border-radius: 14px; background: #fff; }
.footer-area .single-footer-widget > li { margin-bottom: 8px; }
.footer-area .maps iframe { border-radius: 16px; }
.footer-area .bm-2 { display: inline-block; margin-bottom: 12px; }
.copyright-area { margin-top: 24px; background: transparent !important; border-top: 1px solid #2d557f; }
.float { width: 54px !important; height: 54px !important; bottom: 20px !important; font-size: 27px !important; box-shadow: 0 8px 22px rgba(0, 0, 0, .3) !important; }
html[dir="rtl"] .float { right: 18px !important; }
html:not([dir="rtl"]) .float { left: 18px !important; }
.float .my-float { margin-top: 13px !important; }
.float:hover { color: #fff; }

/* Scroll reveal: the class is added by script, so content stays visible without it */
.gq-reveal { opacity: 0; transform: translateY(26px); }
.gq-reveal.is-in { opacity: 1; transform: none; transition: opacity .75s var(--gq-ease), transform .75s var(--gq-ease); transition-delay: var(--gq-d, 0ms); }

/* ------------------------------------------------ Phones */
/* The tabs start after the floating WhatsApp button, which sits on the inline-start corner */
.gq-hero__nav { padding-inline-start: max(var(--gq-gutter), 84px); }

/* Comfortable tap size for buttons on the older card pages */
@media (max-width: 991.98px) {
  .btn:not(.btn-close):not(.accordion-button) { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
}

/* Laptops and landscape tablets: keep the face clear of the shade */
@media (max-width: 1199.98px) {
  .gq-slide::after, .gq-closing::after { background: linear-gradient(to left, rgba(6, 42, 85, .96) 0%, rgba(6, 42, 85, .88) 38%, rgba(6, 42, 85, .42) 56%, rgba(6, 42, 85, 0) 72%); }
  .gq-slide__copy > * { max-width: 520px; }
}

/* Portrait tablets and phones: photo on top, copy underneath */
@media (max-width: 991.98px) {
  .gq-hero { height: clamp(720px, 88vh, 880px); }
  .gq-slide__media { bottom: 38%; }
  .gq-slide__media img { object-position: 12% top; }
  .gq-slide::after, .gq-closing::after { transform: none !important; background: linear-gradient(to top, rgba(6, 42, 85, 1) 0%, rgba(6, 42, 85, .96) 46%, rgba(6, 42, 85, .25) 72%, rgba(6, 42, 85, .1) 100%); }
  .gq-slide__copy { justify-content: flex-end; padding-bottom: 96px; }
  .gq-slide__copy > * { max-width: 620px; }
  .gq-closing { min-height: 720px; align-items: flex-end; }
  .gq-closing > img { height: 60%; object-position: 12% top; }
}

@media (max-width: 767.98px) {
  /* The hero fits the screen, so the buttons never sit under the floating WhatsApp button */
  .gq-hero { height: 790px; height: max(540px, min(790px, 100svh)); }
  .gq-slide__media { bottom: 42%; }
  .gq-slide__copy { padding-top: 100px; padding-bottom: 76px; }
  .gq-slide__kicker { margin-bottom: 8px; font-size: 14px; }
  .gq-slide__title { margin-bottom: 10px; font-size: clamp(28px, 8.6vw, 38px); }
  .gq-slide__text { margin-bottom: 16px; font-size: 15px; line-height: 1.65; }
  .gq-slide__cta { gap: 8px; }
  .gq-slide__cta .gq-pill { flex: 1 1 calc(50% - 4px); min-height: 48px; padding: 8px 10px; font-size: 14px; }
  .gq-tab span { display: none; }
  .gq-tab { min-height: 44px; padding-bottom: 4px; }
  .gq-hero__nav { padding-bottom: 8px; padding-inline-start: 84px; }
  .gq-hero__arrows { display: none; }
  .gq-profile .accordion-body { padding: 10px; overflow-x: auto; }
  .gq-profile .accordion-body table { min-width: 320px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .gq-slide, .gq-slide.is-active .gq-slide__media img, .gq-slide.is-active .gq-slide__kicker, .gq-slide.is-active .gq-slide__title,
  .gq-slide.is-active .gq-slide__text, .gq-slide.is-active .gq-slide__cta, .gq-band__track, .gq-contract.is-open .gq-contract__body { animation: none !important; transition: none !important; }
  .gq-reveal { opacity: 1 !important; transform: none !important; }
}
@media print { .gq-reveal { opacity: 1 !important; transform: none !important; } .float { display: none !important; } }

/* Slide titles can be long, so each tab label stays on one line */
@media (min-width: 768px) {
  .gq-tab > span:not(.gq-tab__bar) { display: inline-block; max-width: calc(100% - 34px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; vertical-align: bottom; }
}

/* The open phone menu starts below the larger logo */
.gq-home .navbar-area:not(.is-sticky) .mean-container .mean-nav { margin-top: 92px; }

/* Statistics above the footer */
.gq-stats { padding: clamp(52px, 7vw, 100px) var(--gq-gutter); background: #fff; }
.gq-stats .gq-h2 { margin-bottom: clamp(28px, 4vw, 52px); text-align: center; }
.gq-stats__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 3px solid var(--gq-navy); }
.gq-stat { position: relative; padding: clamp(22px, 3vw, 40px) clamp(10px, 2vw, 32px) 0; border-inline-start: 1px solid var(--gq-line); text-align: center; }
.gq-stat:first-child { border-inline-start: 0; }
.gq-stat i { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 18px; border-radius: 50%; background: var(--gq-tint); color: var(--gq-lime-deep); font-size: 20px; transition: transform .35s var(--gq-ease), background-color .25s, color .25s; }
.gq-stat:hover i { transform: translateY(-4px); background: var(--gq-lime); color: var(--gq-navy-900); }
.gq-stat strong { display: block; font-size: clamp(44px, 6vw, 88px); line-height: 1; font-weight: 800; color: var(--gq-navy); font-variant-numeric: tabular-nums; }
.gq-stat span { display: block; margin-top: 10px; font-size: clamp(15px, 1.25vw, 18px); color: var(--gq-muted); }
@media (max-width: 767.98px) {
  .gq-stats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gq-stat { padding: 22px 14px; }
  .gq-stat:nth-child(odd) { border-inline-start: 0; }
  .gq-stat:nth-child(n + 3) { border-top: 1px solid var(--gq-line); }
}
