/* =========================================================
   DREAMGROW DIGITAL — SITE PAGES STYLESHEET
   All CSS that used to live in inline <style> blocks across
   the front-end page templates now lives here, in one
   cacheable external file loaded once in the main layout.
   Organized by source page below.
========================================================= */


/* --------------------------------------------------------
   HOME PAGE (index.blade.php)
-------------------------------------------------------- */
/* =========================================================
   DREAMGROW HOME — SINGLE CONSOLIDATED STYLESHEET
   All rules below are scoped under their section's parent
   class (e.g. .banner-section-h1 .foo) to prevent theme
   CSS conflicts. Previously this page shipped 3 separate
   <style> blocks (one of them malformed/nested) totaling
   far more CSS than needed, including rules for a "team"
   section that no longer exists. Everything has been
   merged into this one block and de-duplicated.
========================================================= */

/* ---------- Global mobile safety ---------- */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
.page-wrapper {
  overflow-x: hidden;
  max-width: 100%;
}
section {
  max-width: 100vw;
}

/* =========================================================
   1. HERO / BANNER
========================================================= */
.banner-section-h1 {
  position: relative;
  isolation: isolate;
}
.banner-section-h1 .anim-icon,
.banner-section-h1 .tm-text-editor {
  display: none !important;
}

.banner-section-h1 .inner-box .hero-image {
  transform: translateX(30px) !important;
  -webkit-transform: translateX(30px) !important;
  flex: 0 1 480px;
  max-width: 480px;
  width: 100%;
}

.banner-section-h1 .inner-box .hero-image img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 480px;
  object-fit: contain;
}

@media (max-width: 1450px) {
  .banner-section-h1 .inner-box .hero-image {
    flex-basis: 380px;
    max-width: 380px;
    transform: translateX(20px) !important;
    -webkit-transform: translateX(90px) !important;
  }
}
.banner-section-h1 .outer-box:before,
.banner-section-h1 .bg-image:before {
  display: none !important;
  content: none !important;
  background: none !important;
}
.banner-section-h1 > .bg-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
.banner-section-h1 > .bg-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}
.banner-section-h1 > .outer-box {
  position: relative;
  z-index: 1;
}

@media (min-width: 1200px) {
  .banner-section-h1 {
    height: 100vh;
    height: 100dvh;
    max-height: 100vh;
    max-height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  .banner-section-h1 .outer-box {
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
    padding: 110px 0 28px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    overflow: hidden;
  }
  .banner-section-h1 .inner-box {
    width: 100%;
    height: 100%;
    min-height: 0;
    gap: 0;
    align-items: center;
    justify-content: flex-end;
    box-sizing: border-box;
  }
  .banner-section-h1 .inner-box .banner-content {
    flex: 0 1 48%;
    max-width: 640px;
    min-width: 0;
    display: flex;
    align-items: center;
    margin-left: auto;
    margin-right: clamp(24px, 4vw, 72px);
  }
  .banner-section-h1 .inner-box .banner-content .inner-content {
    margin: 0 !important;
    max-height: 100%;
  }
  .banner-section-h1 .inner-content .banner-title {
    font-size: 40px !important;
    line-height: 1.15 !important;
    margin-bottom: 18px !important;
  }
  .banner-section-h1 .inner-content .text {
    line-height: 1.5 !important;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}

@media (max-width: 1199.98px) {
  .banner-section-h1 {
    height: auto;
    min-height: 100vh;
    min-height: 100dvh;
    overflow: hidden;
    width: 100%;
    max-width: 100vw;
  }
  .banner-section-h1 .outer-box {
    padding: 120px 16px 40px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    overflow: hidden;
  }
  .banner-section-h1 .inner-box {
    height: auto;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  .banner-section-h1 .inner-box .hero-image,
  .banner-section-h1 .anim-icon,
  .banner-section-h1 .tm-text-editor {
    display: none !important;
  }
  .banner-section-h1 .inner-box .banner-content {
    flex: 1 1 auto;
    width: 100%;
    justify-content: center;
  }
  .banner-section-h1 .inner-content {
    margin: 0 auto !important;
    text-align: center;
    max-width: 100%;
    padding: 18px 16px !important;
    border-radius: 18px;
    background: rgba(255, 252, 245, 0.88);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    box-shadow: 0 12px 36px rgba(34, 36, 41, 0.08);
  }
  .banner-section-h1 .bg-image:before {
    background-image: none !important;
    background: linear-gradient(
      180deg,
      rgba(255, 252, 245, 0.88) 0%,
      rgba(255, 248, 235, 0.72) 55%,
      rgba(34, 36, 41, 0.2) 100%
    ) !important;
    opacity: 1 !important;
  }
  .banner-section-h1 .inner-content .sub-title {
    color: #9a6b12 !important;
  }
  .banner-section-h1 .inner-content .banner-title,
  .banner-section-h1 .inner-content .banner-title span {
    color: #1b1520 !important;
    font-weight: 800 !important;
    word-break: break-word;
    overflow-wrap: anywhere;
  }
  .banner-section-h1 .inner-content .text {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    color: #2c2830 !important;
    font-weight: 500 !important;
    word-break: break-word;
  }
}

@media (max-width: 767.98px) {
  .banner-section-h1 .outer-box {
    padding: 100px 12px 56px;
    align-items: flex-start;
  }
  .banner-section-h1 .inner-content .banner-title {
    font-size: clamp(28px, 8vw, 40px) !important;
    line-height: 1.2 !important;
    margin-bottom: 14px !important;
  }
  .banner-section-h1 .inner-content .sub-title {
    font-size: 12px !important;
    letter-spacing: 0.08em !important;
    line-height: 1.4 !important;
  }
  .banner-section-h1 .inner-content .text {
    font-size: 15px !important;
    line-height: 1.5 !important;
  }
  .banner-section-h1 .inner-content .banner-info {
    margin-top: 18px;
    display: flex;
    justify-content: center;
  }
  .banner-section-h1 .inner-content .banner-info .theme-btn {
    width: 100%;
    max-width: 320px;
    justify-content: center;
    white-space: normal;
  }
}

@media (max-width: 575.98px) {
  .banner-section-h1 .outer-box {
    padding: 92px 10px 48px;
  }
  .banner-section-h1 .inner-content .banner-title {
    font-size: clamp(26px, 7.5vw, 34px) !important;
    line-height: 1.22 !important;
  }
}

/* =========================================================
   2. BRANDS MARQUEE
========================================================= */
.claint-section-h1 .brands-marquee {
  overflow: hidden;
  width: 100%;
  max-width: 100vw;
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.claint-section-h1 .brands-marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: brands-marquee-rtl 35s linear infinite;
  will-change: transform;
}
.claint-section-h1 .brands-marquee:hover .brands-marquee-track {
  animation-play-state: paused;
}
.claint-section-h1 .brands-marquee-item {
  flex: 0 0 auto;
  width: 220px;
  padding: 10px 28px;
  text-align: center;
}
.claint-section-h1 .brands-marquee-item img {
  max-width: 140px;
  max-height: 70px;
  width: auto;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
  filter: grayscale(0.15);
  transition: filter 0.25s ease, transform 0.25s ease;
}
.claint-section-h1 .brands-marquee-item:hover img {
  filter: none;
  transform: scale(1.05);
}
@keyframes brands-marquee-rtl {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (max-width: 767.98px) {
  .claint-section-h1 .brands-marquee-item {
    width: 160px;
    padding: 8px 16px;
  }
  .claint-section-h1 .brands-marquee-item img {
    max-width: 110px;
    max-height: 56px;
  }
  .claint-section-h1 .brands-marquee-track {
    animation-duration: 28s;
  }
}
@media (prefers-reduced-motion: reduce) {
  .claint-section-h1 .brands-marquee-track {
    animation: none;
  }
}

/* =========================================================
   3. SERVICES SECTION + SLIDER
========================================================= */
.ks-service-area.ks-service-style-2 {
  padding-top: 48px !important;
  padding-bottom: 56px !important;
}
.ks-service-area .sec-title-h1 {
  margin-bottom: 35px !important;
}
.ks-service-area .sec-title-h1 .sub-title {
  margin-bottom: 8px !important;
}
.ks-service-area .sec-title-h1 .title {
  font-size: clamp(28px, 3.4vw, 42px) !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}
.home-services-slider {
  position: relative;
  padding: 0 8px 8px;
}
.ks-service-area .service-active-h3 {
  overflow: hidden;
  padding-bottom: 8px;
}
.ks-service-area .swiper-slide {
  height: auto;
}
.ks-service-item {
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 22px 20px 20px !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}
/* Theme hover paints a dark mask and turns only some text white —
   our description is a <p>, so it vanished. Keep cards readable. */
.ks-service-style-2 .ks-service-item::after {
  display: none !important;
}
.ks-service-style-2 .ks-service-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(34, 36, 41, 0.12);
  background: #fff !important;
}
.ks-service-style-2 .ks-service-item:hover .ks-service-title,
.ks-service-style-2 .ks-service-item:hover .ks-service-title a,
.ks-service-style-2 .ks-service-item:hover .ks-service-list-box,
.ks-service-style-2 .ks-service-item:hover .ks-service-list-box p,
.ks-service-style-2 .ks-service-item:hover .ks-service-list-box ul li,
.ks-service-style-2 .ks-service-item:hover .ks-service-more {
  color: #000000 !important;
}
.ks-service-style-2 .ks-service-item:hover .ks-service-title a:hover,
.ks-service-style-2 .ks-service-item:hover .ks-service-more:hover {
  color: var(--theme-color1, #F6B40E) !important;
}
.ks-service-style-2 .ks-service-item:hover .ks-service-more:before {
  background-color: var(--theme-color1, #F6B40E) !important;
}
.ks-service-logo {
  width: 84px;
  height: 84px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  background: #ffffff;
  overflow: hidden;
  text-decoration: none;
  flex: 0 0 auto;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: inset 0 0 0 1px rgba(34, 36, 41, 0.08);
  padding: 8px;
  box-sizing: border-box;
}
.ks-service-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.ks-service-logo:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(34, 36, 41, 0.12);
}
.ks-service-title {
  font-size: 18px !important;
  line-height: 1.3 !important;
  margin-bottom: 12px !important;
  min-height: 2.6em;
}
.ks-service-title a {
  color: inherit;
  text-decoration: none;
}
.ks-service-title a:hover {
  color: var(--theme-color1, #F6B40E);
}
.ks-service-list-box {
  flex: 1 1 auto;
  font-size: 14px !important;
  line-height: 1.5 !important;
  color: #504c45;
  margin-bottom: 14px;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ks-service-list-box p {
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}
.ks-service-more {
  display: inline-flex;
  align-items: center;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #000000;
  text-decoration: none;
  margin-top: auto;
}
.ks-service-more:hover {
  color: var(--theme-color1, #F6B40E);
}
.home-services-nav {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 22px;
}
.home-services-prev,
.home-services-next {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(34, 36, 41, 0.12);
  background: #fff;
  color: #000000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.home-services-prev:hover,
.home-services-next:hover {
  background: var(--theme-color1, #F6B40E);
  border-color: var(--theme-color1, #F6B40E);
  color: #000000;
}
.home-services-pagination {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 14px;
}
.home-services-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  opacity: 0.35;
  background: #000000;
}
.home-services-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--theme-color1, #F6B40E);
}
@media (max-width: 767.98px) {
  .ks-service-title {
    font-size: 16px !important;
    min-height: 0;
  }
  .ks-service-list-box {
    -webkit-line-clamp: 5;
    font-size: 13px !important;
  }
  .ks-service-area {
    padding-left: 12px;
    padding-right: 12px;
    overflow: hidden;
  }
  .ks-service-area .sec-title-h1 .title {
    font-size: clamp(22px, 6vw, 30px) !important;
    line-height: 1.3 !important;
  }
  .ks-service-item {
    max-width: 100%;
  }
  .ks-service-thumb img {
    max-width: 100%;
    height: auto;
  }
}

/* =========================================================
   4. CTA + PROCESS + STATS SECTION
========================================================= */
.cta-section-h1 {
  position: relative;
  overflow: hidden;
  padding: 0;
  background:
    radial-gradient(circle at 10% 15%, rgba(255,255,255,.95) 0%, rgba(255,255,255,.55) 22%, transparent 48%),
    radial-gradient(circle at 90% 75%, rgba(210,164,75,.13) 0%, rgba(210,164,75,.045) 30%, transparent 65%),
    linear-gradient(125deg, #ffffff 0%, #fffdf8 48%, #faf2e2 100%);
}
.cta-section-h1 * { box-sizing: border-box; }
.cta-section-h1 .outer-box {
  position: relative;
  overflow: hidden;
  background: transparent;
}
.cta-section-h1 .outer-box::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(133,96,36,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(133,96,36,.025) 1px, transparent 1px);
  background-size: 65px 65px;
  pointer-events: none;
}
.cta-section-h1 .upper-box {
  position: relative;
  z-index: 2;
  padding: 75px 0 40px;
}
.cta-section-h1 .ks-funfact-2-border {
  position: relative;
  padding: 18px 0;
  border-top: 1px solid rgba(164,120,46,.16);
  border-bottom: 1px solid rgba(164,120,46,.16);
}
.cta-section-h1 .ks-funfact-2-item {
  position: relative;
  min-height: 100px;
  padding: 15px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-right: 1px solid rgba(164,120,46,.12);
}
.cta-section-h1 .ks-funfact-2-item.style-three { border-right: 0; }
.cta-section-h1 .ks-funfact-2-number,
.cta-section-h1 .ks-funfact-2-number .count-text {
  color: #a8731c !important;
}
.cta-section-h1 .ks-funfact-2-number {
  margin: 0 0 7px;
  font-size: 40px;
  line-height: 1;
  font-weight: 600;
}
.cta-section-h1 .ks-funfact-2-item > span {
  color: #756149 !important;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .2px;
}
.cta-section-h1 .lower-box {
  position: relative;
  z-index: 2;
  padding: 45px 0 85px;
}
.cta-section-h1 .sec-title-h1 { margin-bottom: 55px; }
.cta-section-h1 .sec-title-h1 .sub-title { margin-bottom: 12px; }
.cta-section-h1 .sec-title-h1 .title {
  margin: 0;
  color: #302116 !important;
  font-size: clamp(38px,4vw,54px);
  line-height: 1.08;
  font-weight: 500;
}
.cta-section-h1 .ks-step-item {
  position: relative;
  height: 100%;
  padding: 32px 26px 30px;
  border: 1px solid rgba(168,122,42,.15);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(255,249,237,.62));
  box-shadow: 0 10px 30px rgba(93,63,20,.055);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.cta-section-h1 .ks-step-item::before {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  top: 0;
  height: 2px;
  border-radius: 10px;
  background: linear-gradient(90deg, transparent, #d5a13d, transparent);
}
.cta-section-h1 .ks-step-item:hover {
  transform: translateY(-5px);
  border-color: rgba(191,139,40,.30);
  box-shadow: 0 18px 38px rgba(93,63,20,.09);
}
.cta-section-h1 .ks-step-icon {
  position: relative;
  width: 68px;
  height: 68px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, #dca94c, #f0ce7c);
  color: #3a2815;
  box-shadow: 0 8px 20px rgba(183,130,37,.14);
}
.cta-section-h1 .ks-step-icon .icon { font-size: 25px; line-height: 1; }
.cta-section-h1 .ks-step-number {
  position: absolute;
  right: -4px;
  top: -4px;
  width: 25px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #45351f;
  color: #f4d27d;
  font-size: 9px;
  font-weight: 600;
  border: 3px solid #f8ecd5;
}
.cta-section-h1 .ks-step-title {
  margin: 23px 0 9px;
  font-size: 19px;
  line-height: 1.3;
}
.cta-section-h1 .ks-step-title a { color: #302116 !important; text-decoration: none; }
.cta-section-h1 .ks-step-item:hover .ks-step-title a { color: #b27819 !important; }
.cta-section-h1 .ks-step-item p {
  margin-bottom: 0;
  color: #756149 !important;
  font-size: 13px;
  line-height: 1.7;
}
.cta-section-h1 .ks-step-bottom {
  position: relative;
  margin-top: 25px;
  padding: 18px 23px;
  border: 1px solid rgba(168,122,42,.16);
  border-radius: 12px;
  background: linear-gradient(110deg, rgba(255,255,255,.82), rgba(249,236,207,.65));
  box-shadow: 0 10px 25px rgba(93,63,20,.05);
}
.cta-section-h1 .ks-step-bottom h5 {
  margin: 0;
  color: #39291a !important;
  font-size: 15px;
  font-weight: 500;
}
.cta-section-h1 .ks-step-bottom .theme-btn {
  border: 0;
  border-radius: 6px;
  background: linear-gradient(135deg, #d09a38, #e4b961);
  color: #fff;
  box-shadow: 0 7px 18px rgba(174,120,25,.15);
  transition: transform .25s ease, box-shadow .25s ease;
}
.cta-section-h1 .ks-step-bottom .theme-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(174,120,25,.20);
}
.cta-section-h1 .ks-step-bottom .btn-title,
.cta-section-h1 .ks-step-bottom .btn-arrow-left,
.cta-section-h1 .ks-step-bottom .btn-arrow-right {
  color: #fff !important;
}
@media (max-width: 991px) {
  .cta-section-h1 .upper-box { padding-top: 60px; }
  .cta-section-h1 .ks-funfact-2-item {
    border-right: 0;
    border-bottom: 1px solid rgba(164,120,46,.10);
  }
  .cta-section-h1 .ks-step-item { margin-bottom: 22px; }
  .cta-section-h1 .ks-step-bottom { gap: 18px; }
}
@media (max-width: 575px) {
  .cta-section-h1 .upper-box { padding: 45px 0 20px; }
  .cta-section-h1 .lower-box { padding: 40px 0 55px; }
  .cta-section-h1 .sec-title-h1 { margin-bottom: 38px; }
  .cta-section-h1 .sec-title-h1 .title { font-size: 34px; line-height: 1.12; }
  .cta-section-h1 .ks-funfact-2-number { font-size: 33px; }
  .cta-section-h1 .ks-step-item { padding: 28px 20px; }
  .cta-section-h1 .ks-step-bottom {
    flex-direction: column;
    align-items: stretch !important;
    text-align: center;
    padding: 18px;
  }
  .cta-section-h1 .ks-step-bottom .theme-btn { width: 100%; }
}

/* =========================================================
   5. ABOUT SECTION
========================================================= */
.about-section-h1 {
  overflow: hidden;
  width: 100%;
  max-width: 100vw;
}
.about-section-h1 .row {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  margin-left: 0;
  margin-right: 0;
}
.about-section-h1 .image-column,
.about-section-h1 .content-column {
  display: flex;
  max-width: 100%;
}
.about-section-h1 .image-column .inner-column,
.about-section-h1 .content-column .inner-column {
  width: 100%;
  height: 100%;
  max-width: 100%;
}
.about-section-h1 .image-column .inner-column {
  align-items: stretch !important;
  gap: 18px;
  min-height: 100%;
}
.about-section-h1 .image-column .inner-column .image-box {
  flex: 1 1 0;
  max-width: none !important;
  height: auto !important;
  min-height: 100%;
  border-radius: 28px;
  overflow: hidden;
  align-self: stretch;
}
.about-section-h1 .image-column .inner-column .image-box.one { flex: 1.15 1 0; }
.about-section-h1 .image-column .inner-column .image-box img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  margin-bottom: 0 !important;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 28px;
}
.about-section-h1 .content-column .inner-column {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 40px;
  min-width: 0;
}
.about-section-h1 .content-column .sec-title-h1 { max-width: 100%; }
.about-section-h1 .content-column .sec-title-h1 .sub-title {
  display: block;
  width: 100%;
  max-width: 100%;
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.35 !important;
  letter-spacing: 0.06em !important;
}
.about-section-h1 .content-column .sec-title-h1 .title {
  width: 100%;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.25 !important;
}
.about-section-h1 .content-column .sec-title-h1 .text {
  max-width: 540px;
  width: 100%;
  overflow-wrap: anywhere;
}
.about-section-h1 .content-column .info-box {
  margin: 28px 0 36px;
  max-width: 100%;
}
.about-section-h1 .content-column .bottom-box {
  flex-wrap: wrap;
  gap: 16px;
  max-width: 100%;
}
@media (max-width: 1199.98px) {
  .about-section-h1 .content-column .inner-column {
    padding-left: 0;
    padding-top: 10px;
  }
  .about-section-h1 .image-column .inner-column .image-box img {
    min-height: 420px;
  }
}
@media (max-width: 991.98px) {
  .about-section-h1 .image-column .inner-column {
    flex-direction: row;
    width: 100% !important;
    gap: 12px;
  }
  .about-section-h1 .image-column .inner-column .image-box {
    flex: 1 1 50%;
    min-height: 0 !important;
    max-height: 280px;
    border-radius: 20px;
  }
  .about-section-h1 .image-column .inner-column .image-box img {
    min-height: 220px !important;
    max-height: 280px !important;
    height: 280px !important;
    border-radius: 20px;
  }
}
@media (max-width: 767.98px) {
  .about-section-h1 { padding-top: 40px; padding-bottom: 40px; }
  .about-section-h1 .image-column,
  .about-section-h1 .content-column {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .about-section-h1 .image-column .inner-column {
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
  }
  /* One clean image on mobile — avoid stacked weird pills */
  .about-section-h1 .image-column .inner-column .image-box.one { display: none !important; }
  .about-section-h1 .image-column .inner-column .image-box {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    min-height: 0 !important;
    border-radius: 18px !important;
    overflow: hidden;
    margin-bottom: 20px;
  }
  .about-section-h1 .image-column .inner-column .image-box img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 240px !important;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    border-radius: 18px !important;
    margin: 0 !important;
  }
  .about-section-h1 .content-column .inner-column { padding: 0 !important; }
  .about-section-h1 .content-column .sec-title-h1 .sub-title { margin-bottom: 10px !important; }
  .about-section-h1 .content-column .sec-title-h1 .title {
    font-size: clamp(22px, 6.5vw, 30px) !important;
    line-height: 1.3 !important;
    margin-bottom: 12px !important;
  }
  .about-section-h1 .content-column .sec-title-h1 .text {
    font-size: 15px !important;
    line-height: 1.55 !important;
    max-width: 100% !important;
  }
  .about-section-h1 .content-column .info-box {
    margin: 18px 0 22px;
    align-items: flex-start;
  }
  .about-section-h1 .content-column .info-box span br { display: none; }
  .about-section-h1 .content-column .bottom-box {
    flex-direction: column;
    align-items: stretch !important;
    gap: 14px;
  }
  .about-section-h1 .content-column .bottom-box .theme-btn,
  .about-section-h1 .content-column .bottom-box .phone_box {
    width: 100%;
    max-width: 100%;
    justify-content: center;
  }
}

/* =========================================================
   6. GLOBAL MOBILE POLISH (typography/containers used across
      several sections — kept generic and shared on purpose)
========================================================= */
@media (max-width: 767.98px) {
  .auto-container {
    padding-left: 16px !important;
    padding-right: 16px !important;
    max-width: 100%;
    box-sizing: border-box;
  }
  .sec-title .title,
  .sec-title-h1 .title {
    font-size: clamp(22px, 6.5vw, 32px) !important;
    line-height: 1.25 !important;
    word-break: break-word;
    overflow-wrap: anywhere;
  }
  .sec-title .sub-title,
  .sec-title-h1 .sub-title {
    white-space: normal !important;
    letter-spacing: 0.06em !important;
    overflow-wrap: anywhere;
    word-break: break-word;
    line-height: 1.35 !important;
  }
  .ks-why-grid,
  .row { max-width: 100%; }
  .theme-btn { max-width: 100%; }
  .testi-reels-section { padding-left: 0; padding-right: 0; }
  .success-stories-swiper,
  .brands-marquee { max-width: 100vw; }
  section { overflow-x: hidden; }
}

/* =========================================================
   7. SUCCESS STORIES SLIDER
========================================================= */
.success-stories-slider { position: relative; margin-top: 10px; }
.success-stories-swiper { overflow: hidden; padding: 8px 4px 28px; }
.ss-card {
  position: relative;
  height: 100%;
  min-height: 340px;
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #fffdf8 100%);
  border: 1px solid rgba(164, 120, 46, 0.14);
  box-shadow: 0 12px 30px rgba(34, 36, 41, 0.06);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform .25s ease, box-shadow .25s ease;
}
.ss-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 36px rgba(34, 36, 41, 0.1);
}
.ss-logo {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 3;
  width: 64px;
  height: 64px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
}
.ss-logo img { max-width: 100%; max-height: 100%; object-fit: contain; }
.ss-media { height: 160px; overflow: hidden; background: #f3f1ec; }
.ss-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.ss-card:hover .ss-media img { transform: scale(1.05); }
.ss-body { padding: 22px 20px 22px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.ss-category {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--theme-color1, #F6B40E);
}
.ss-title { font-size: 20px; line-height: 1.3; margin: 0; color: #222429; }
.ss-content { margin: 0; color: #6a6f78; font-size: 14.5px; line-height: 1.55; flex: 1; }
.ss-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font-weight: 600;
  color: #222429;
  text-decoration: none;
}
.ss-link:hover { color: var(--theme-color1, #F6B40E); }
.ss-nav { display: flex; justify-content: center; gap: 12px; margin-top: 4px; }
.ss-prev,
.ss-next {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(164, 120, 46, 0.25);
  background: #fff;
  color: #222429;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: .2s ease;
}
.ss-prev:hover,
.ss-next:hover {
  background: var(--theme-color1, #F6B40E);
  border-color: var(--theme-color1, #F6B40E);
  color: #111;
}
.ss-pagination { display: flex; justify-content: center; margin-top: 14px; }
.ss-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: rgba(34,36,41,.25);
  opacity: 1;
}
.ss-pagination .swiper-pagination-bullet-active {
  background: var(--theme-color1, #F6B40E);
  width: 22px;
  border-radius: 999px;
}
@media (max-width: 767.98px) {
  .ss-card { min-height: 300px; }
  .ss-logo { width: 54px; height: 54px; }
}

/* =========================================================
   8. PORTFOLIO / SUCCESS STORIES SECTION WRAPPER
========================================================= */
.projects-section.portfolio-section {
  position: relative;
  overflow: hidden;
  padding-top: 40px !important;
  padding-bottom: 30px !important;
  background:
    radial-gradient(circle at 88% 12%, rgba(218,174,86,.075), transparent 28%),
    radial-gradient(circle at 8% 85%, rgba(218,174,86,.035), transparent 30%),
    linear-gradient(135deg, #ffffff 0%, #fffdf9 52%, #faf8f3 100%);
}
.portfolio-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(110,80,35,.016) 1px, transparent 1px),
    linear-gradient(90deg, rgba(110,80,35,.016) 1px, transparent 1px);
  background-size: 65px 65px;
  pointer-events: none;
}
.portfolio-section .auto-container { position: relative; z-index: 2; }
.portfolio-heading { margin-bottom: 55px; }
.portfolio-heading .sub-title { margin-bottom: 12px; }
.portfolio-heading .title {
  margin: 0;
  color: #302116 !important;
  font-size: clamp(40px,4.5vw,58px);
  line-height: 1.08;
  font-weight: 500;
}
@media (max-width: 991px) {
  .portfolio-section { padding: 80px 0; }
}
@media (max-width: 575px) {
  .portfolio-section { padding: 65px 0; }
  .portfolio-heading { margin-bottom: 38px; }
  .portfolio-heading .title { font-size: 34px; line-height: 1.12; }
}
@media (max-width: 380px) {
  .portfolio-heading .title { font-size: 30px; }
}

/* =========================================================
   9. TESTIMONIALS — alternating text/video reels
========================================================= */
.testimonial-section-h1 { margin-top: 0 !important; }
.testimonial-section-h1.testi-reels-section { padding: 8px 0 75px !important; }
@media (max-width: 1399.98px) {
  .testimonial-section-h1.testi-reels-section { padding: 8px 0 85px !important; }
}
@media (max-width: 991.98px) {
  .testimonial-section-h1.testi-reels-section { padding: 8px 0 60px !important; }
}
.testi-reels-slider { position: relative; max-width: 1180px; margin: 0 auto; }
.testi-reels-swiper { overflow: visible; padding: 8px 6px 20px; }
@media (max-width: 991.98px) {
  .testi-reels-swiper { overflow: hidden; }
}
.testi-reel-card {
  width: 100%;
  max-width: 280px;
  margin: 0 auto;
  aspect-ratio: 9 / 16;
  border-radius: 22px;
  overflow: hidden;
  position: relative;
  background: #161616;
  box-shadow: 0 18px 40px rgba(34,36,41,.12);
  border: 1px solid rgba(164,120,46,.14);
}
.testi-reel-card.is-text {
  background: linear-gradient(165deg, #000000 0%, #302116 48%, #b37b20 140%);
  color: #fff;
}
.testi-reel-media { position: absolute; inset: 0; background: #000; }
.testi-reel-media iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.testi-reel-meta {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  z-index: 2;
  padding: 16px 14px 18px;
  background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.72) 70%);
  color: #fff;
}
.testi-reel-quote-wrap { height: 100%; padding: 22px 18px 20px; display: flex; flex-direction: column; }
.testi-reel-quote-icon { margin-top: 4px; font-size: 22px; color: rgba(246,180,14,.9); }
.testi-reel-quote {
  margin: 14px 0 0;
  flex: 1;
  font-size: 14.5px;
  line-height: 1.55;
  color: rgba(255,255,255,.92);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 12;
  -webkit-box-orient: vertical;
}
.testi-reel-author { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
.testi-reel-author img,
.testi-reel-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
  flex: 0 0 auto;
}
.testi-reel-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(246,180,14,.25);
  color: #f6b40e;
  font-weight: 700;
}
.testi-reel-name { margin: 0; font-size: 15px; font-weight: 700; color: #fff; line-height: 1.25; }
.testi-reel-role { font-size: 12px; color: rgba(255,255,255,.72); line-height: 1.3; }
.testi-reels-nav { display: flex; justify-content: center; gap: 12px; margin-top: 4px; }
.testi-reels-prev,
.testi-reels-next {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(164,120,46,.25);
  background: #fff;
  color: #222429;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.testi-reels-prev:hover,
.testi-reels-next:hover {
  background: var(--theme-color1, #F6B40E);
  border-color: var(--theme-color1, #F6B40E);
}
.testi-reels-pagination { display: flex; justify-content: center; margin-top: 14px; }
.testi-reels-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: rgba(34,36,41,.25);
  opacity: 1;
}
.testi-reels-pagination .swiper-pagination-bullet-active {
  width: 22px;
  border-radius: 999px;
  background: var(--theme-color1, #F6B40E);
}

/* =========================================================
   10. WHY CHOOSE US
========================================================= */
.ks-choose-2-area.home-1-style {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 85% 18%, rgba(213,169,76,.12), transparent 42%),
    radial-gradient(circle at 10% 80%, rgba(255,255,255,.92), transparent 42%),
    linear-gradient(120deg, #ffffff 0%, #fffdf8 55%, #faf1df 100%);
}
.ks-choose-2-area.home-1-style * { box-sizing: border-box; }
.ks-choose-2-area.home-1-style::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(120,87,35,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(120,87,35,.022) 1px, transparent 1px);
  background-size: 65px 65px;
  pointer-events: none;
}
.ks-choose-2-area.home-1-style .outer-box {
  position: relative;
  z-index: 2;
  padding: 50px 0 30px;
}
.ks-choose-2-area.home-1-style .ks-choose-2-content {
  max-width: none;
  padding-right: 28px;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.ks-choose-2-area.home-1-style .ks-choose-2-content .sec-title-h1 { margin-bottom: 8px; }
.ks-choose-2-content .sec-title-h1 .sub-title { margin-bottom: 14px; }
.ks-choose-2-content .sec-title-h1 .title {
  margin: 0 0 22px;
  color: #302116 !important;
  font-size: clamp(40px,4.2vw,58px);
  line-height: 1.08;
  font-weight: 500;
  text-transform: none;
}
.ks-choose-2-content .theme-btn {
  border: 0;
  border-radius: 7px;
  background: linear-gradient(135deg, #c88b22, #e5b550);
  color: #fff !important;
  box-shadow: 0 10px 25px rgba(177,122,26,.16);
  transition: transform .25s ease, box-shadow .25s ease;
}
.ks-choose-2-content .theme-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 30px rgba(177,122,26,.22);
}
.ks-choose-2-content .theme-btn .btn-title { color: #fff !important; }

/* Why Choose — left points + right options (equal height) */
.why-choose-row { display: flex; flex-wrap: wrap; align-items: stretch; row-gap: 40px; }
.why-choose-left,
.why-choose-right { display: flex; }
.why-choose-left .ks-choose-2-content,
.why-choose-right .why-choose-options { width: 100%; height: 100%; }
.why-choose-points {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1 1 auto;
}
.why-choose-point {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 18px;
  border-radius: 14px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(164,120,46,.14);
  box-shadow: 0 8px 20px rgba(48,33,22,.04);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  flex: 1 1 auto;
}
.why-choose-point:hover {
  transform: translateX(4px);
  border-color: rgba(179,123,32,.35);
  box-shadow: 0 12px 24px rgba(48,33,22,.08);
}
.why-choose-index {
  flex: 0 0 auto;
  min-width: 42px;
  height: 42px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #f6b40e 0%, #d39a2c 100%);
  color: #000000;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .04em;
}
.why-choose-text { color: #302116; font-size: 16px; font-weight: 650; line-height: 1.35; }
.why-choose-cta { margin-top: 24px; }
.why-choose-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 18px;
  min-height: 100%;
}
.why-choose-option {
  min-height: 0;
  height: 100%;
  border-radius: 22px;
  padding: 24px 22px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  background: linear-gradient(165deg, #ffffff 0%, #fff8ea 100%);
  border: 1px solid rgba(164,120,46,.16);
  box-shadow: 0 14px 30px rgba(34,36,41,.06);
  transition: transform .25s ease, box-shadow .25s ease;
}
.why-choose-option.is-accent {
  background: linear-gradient(155deg, #222429 0%, #3a3328 55%, #b37b20 140%);
  border-color: transparent;
  color: #fff;
}
.why-choose-option:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 34px rgba(34,36,41,.1);
}
.why-choose-option-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(246,180,14,.18);
  color: #b37b20;
  font-size: 22px;
  flex: 0 0 auto;
}
.why-choose-option.is-accent .why-choose-option-icon {
  background: rgba(255,255,255,.12);
  color: #f6b40e;
}
.why-choose-option-copy { display: flex; flex-direction: column; gap: 8px; }
.why-choose-option-title {
  margin: 0;
  font-size: clamp(17px, 1.45vw, 22px);
  line-height: 1.25;
  font-weight: 650;
  color: #302116;
}
.why-choose-option.is-accent .why-choose-option-title { color: #fff; }
.why-choose-option-text {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.6;
  color: #6f5b43;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.why-choose-option.is-accent .why-choose-option-text { color: rgba(255,255,255,.86); }

@media (max-width: 1199.98px) {
  .ks-choose-2-area.home-1-style .ks-choose-2-content { padding-right: 0; }
  .why-choose-options { min-height: 560px; }
}
@media (max-width: 991px) {
  .ks-choose-2-area.home-1-style .outer-box { padding: 80px 0; }
}
@media (max-width: 575.98px) {
  .why-choose-options {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    min-height: 0;
  }
  .why-choose-option { min-height: 190px; }
  .why-choose-option-text { -webkit-line-clamp: 5; }
  .why-choose-text { font-size: 15px; }
  .ks-choose-2-area.home-1-style .outer-box { padding: 60px 0; }
  .ks-choose-2-content .sec-title-h1 .title { font-size: 34px; line-height: 1.12; }
  .ks-choose-2-content p { font-size: 14px; line-height: 1.7; }
}

/* =========================================================
   11. FAQ SECTION
========================================================= */
.faq-section { padding-top: 20px !important; }
.faq-section .outer-box { padding-top: 70px !important; overflow: visible !important; }
.faq-section .image-column .inner-column { margin-top: -30px !important; }
.faq-section .image-column .inner-column .image { overflow: visible; }

/* =========================================================
   12. CONTACT SECTION
========================================================= */
.contact-section-h1 {
  position: relative;
  padding: 0;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.95), transparent 35%),
    radial-gradient(circle at 88% 82%, rgba(218,174,86,.11), transparent 38%),
    linear-gradient(135deg, #ffffff 0%, #fffdf8 50%, #faf0dd 100%);
}
.contact-section-h1 * { box-sizing: border-box; }
.contact-section-h1 > .bg-image { display: none; }
.contact-section-h1 .anim-icon {
  display: block !important;
  position: absolute;
  left: 3%;
  top: 17%;
  width: 45px !important;
  height: 45px !important;
  opacity: .07;
  z-index: 0;
  transform: none !important;
}
.contact-section-h1 .anim-icon-two {
  display: block !important;
  position: absolute;
  right: 4%;
  bottom: 9%;
  width: 50px !important;
  height: 50px !important;
  opacity: .06;
  z-index: 0;
}
.contact-section-h1 .anim-icon img,
.contact-section-h1 .anim-icon-two img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
}
.contact-section-h1 .content-column,
.contact-section-h1 .form-column {
  position: relative;
  z-index: 2;
}
.contact-section-h1 .content-column .sec-title-h1.white .sub-title { margin-bottom: 10px; }
.contact-section-h1 .content-column .sec-title-h1 .title {
  margin-bottom: 30px;
  color: #302116 !important;
  font-size: clamp(40px, 4vw, 56px);
  line-height: 1.08;
  font-weight: 500;
}
.contact-section-h1 .info-box {
  margin-top: 25px;
  padding: 10px 20px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(177,130,47,.12);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(91,62,20,.045);
  backdrop-filter: blur(6px);
}
.contact-section-h1 .info-box .inner-box { display: flex; flex-direction: column; width: 100%; }
.contact-section-h1 .info-box .info {
  display: flex;
  align-items: center;
  gap: 18px;
  width: 100%;
  padding: 18px 5px;
  margin: 0;
  border-bottom: 1px solid rgba(120,91,48,.10);
}
.contact-section-h1 .info-box .info:last-child { border-bottom: 0; }
.contact-section-h1 .info .icon {
  flex: 0 0 52px;
  width: 52px !important;
  height: 52px !important;
  min-width: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  background: linear-gradient(135deg, #e7c47a, #f3dca7);
  color: #65491f;
  font-size: 20px;
  line-height: 1;
  box-shadow: 0 6px 15px rgba(166,119,37,.12);
  transition: transform .25s ease, box-shadow .25s ease;
}
.contact-section-h1 .info .icon i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}
.contact-section-h1 .info:hover .icon {
  transform: translateY(-2px);
  box-shadow: 0 9px 18px rgba(166,119,37,.18);
}
.contact-section-h1 .info .info-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  flex: 1;
}
.contact-section-h1 .info .label {
  margin: 0;
  color: #ad7926 !important;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.contact-section-h1 .info .text,
.contact-section-h1 .info a {
  display: block;
  margin: 0;
  padding: 0;
  color: #3a2a19 !important;
  font-size: 15px;
  line-height: 1.5;
  text-decoration: none;
  word-break: break-word;
}
.contact-section-h1 .info a:hover { color: #ad7926 !important; }
.contact-section-h1 .form-column .inner-column {
  position: relative;
  padding: 40px;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(174,128,45,.13);
  border-radius: 17px;
  box-shadow: 0 15px 40px rgba(79,55,20,.065);
}
.contact-section-h1 .form-column .inner-column::before {
  content: "";
  position: absolute;
  top: 0;
  left: 40px;
  right: 40px;
  height: 2px;
  background: linear-gradient(90deg, transparent, #d8ae5b, transparent);
}
.contact-section-h1 .form-column .sub-title { margin-bottom: 10px; }
.contact-section-h1 .form-column .sec-title-h1 .title { margin-bottom: 25px; color: #302116 !important; font-size: 31px; }
.contact-section-h1 .contact-form input,
.contact-section-h1 .contact-form textarea {
  background: #fffefa;
  border: 1px solid rgba(120,91,48,.13);
  color: #302116;
  border-radius: 7px;
  box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.contact-section-h1 .contact-form input:focus,
.contact-section-h1 .contact-form textarea:focus {
  border-color: rgba(190,143,55,.40);
  box-shadow: 0 0 0 3px rgba(207,165,88,.06);
}
.contact-section-h1 .contact-form .btn-style-two {
  background: linear-gradient(135deg, #d1a24d, #e2bd70);
  border: 0;
  color: #fff;
  box-shadow: 0 7px 18px rgba(170,120,38,.12);
  transition: transform .25s ease, box-shadow .25s ease;
}
.contact-section-h1 .contact-form .btn-style-two:hover {
  transform: translateY(-2px);
  box-shadow: 0 11px 23px rgba(170,120,38,.18);
}
@media (max-width: 991px) {
  .contact-section-h1 { padding: 80px 0; }
  .contact-section-h1 .form-column .inner-column { margin-top: 40px; }
}
@media (max-width: 575px) {
  .contact-section-h1 { padding: 60px 0; }
  .contact-section-h1 .content-column .sec-title-h1 .title { font-size: 34px; line-height: 1.12; }
  .contact-section-h1 .info-box { padding: 8px 15px; }
  .contact-section-h1 .info-box .info { gap: 14px; padding: 15px 2px; }
  .contact-section-h1 .info .icon { flex: 0 0 46px; width: 46px !important; height: 46px !important; min-width: 46px; font-size: 17px; }
  .contact-section-h1 .info .label { font-size: 10px; }
  .contact-section-h1 .info .text,
  .contact-section-h1 .info a { font-size: 14px; line-height: 1.45; }
  .contact-section-h1 .form-column .inner-column { padding: 27px 20px; margin-top: 35px; }
  .contact-section-h1 .form-column .inner-column::before { left: 20px; right: 20px; }
  .contact-section-h1 .form-column .sec-title-h1 .title { font-size: 27px; }
  .contact-section-h1 .anim-icon { width: 30px !important; height: 30px !important; }
  .contact-section-h1 .anim-icon-two { width: 35px !important; height: 35px !important; }
}
@media (max-width: 380px) {
  .contact-section-h1 .content-column .sec-title-h1 .title { font-size: 30px; }
}

/* =========================================================
   13. REDUCE MOTION (accessibility + perf)
========================================================= */
@media (prefers-reduced-motion: reduce) {
  .cta-section-h1 *,
  .portfolio-section *,
  .ks-choose-2-area.home-1-style *,
  .contact-section-h1 *,
  .claint-section-h1 .brands-marquee-track {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}


/* --------------------------------------------------------
   ABOUT PAGE (about.blade.php)
-------------------------------------------------------- */
/* =========================================
   ABOUT HERO
========================================= */

.about-hero-section {
    position: relative;
    overflow: hidden;

    min-height: 620px;

    background:
        radial-gradient(
            circle at 82% 48%,
            rgba(218, 169, 67, 0.20) 0%,
            rgba(218, 169, 67, 0.08) 28%,
            transparent 58%
        ),
        linear-gradient(
            110deg,
            #fffdf8 0%,
            #fcf7ed 45%,
            #f6ead3 75%,
            #ead6aa 100%
        );
}


/* Background glow */

.about-hero-bg-glow {
    position: absolute;

    width: 650px;
    height: 650px;

    right: -220px;
    top: 20px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(216, 165, 62, 0.22) 0%,
            rgba(216, 165, 62, 0.08) 38%,
            transparent 70%
        );

    filter: blur(12px);

    pointer-events: none;
}


/* Subtle grid */

.about-hero-grid {
    position: absolute;
    inset: 0;

    background-image:
        linear-gradient(
            rgba(150, 120, 65, 0.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(150, 120, 65, 0.045) 1px,
            transparent 1px
        );

    background-size: 55px 55px;

    mask-image: linear-gradient(
        to right,
        rgba(0, 0, 0, 0.65),
        transparent 82%
    );

    pointer-events: none;
}


/* =========================================
   HERO CONTAINER
========================================= */

.about-hero-container {
    position: relative;
    z-index: 2;

    max-width: 1250px;

    min-height: 620px;

    margin: 0 auto;

    padding: 125px 30px 55px;

    display: grid;

    grid-template-columns: 47% 53%;

    align-items: center;
}


/* =========================================
   LEFT CONTENT
========================================= */

.about-hero-content {
    position: relative;
    z-index: 5;

    max-width: 600px;

    padding-top: 20px;
}


/* Small title */

.about-hero-eyebrow {
    display: inline-flex;

    align-items: center;

    margin: 0 0 22px;

    padding: 8px 18px;

    border: 1px solid rgba(190, 140, 45, 0.38);

    border-radius: 50px;

    background: rgba(255, 255, 255, 0.40);

    color: #b47d20;

    font-size: 11px;

    font-weight: 600;

    letter-spacing: 2.4px;

    text-transform: uppercase;
}


/* Main title */

.about-hero-title {
    margin: 0 0 24px;

    max-width: 590px;

    color: #2d1b0e;

    /*
       Important:
       Font-family intentionally NOT defined.
       Existing website font will continue.
    */

    font-size: 40px;

    line-height: 1.15;

    font-weight: 500;

    letter-spacing: -1.2px;
}


/* Description */

.about-hero-description {
    max-width: 500px;

    margin-bottom: 30px;

    color: #705b43;

    font-size: 14px;

    line-height: 1.75;
}


/* =========================================
   BUTTONS
========================================= */

.about-hero-buttons {
    display: flex;

    align-items: center;

    gap: 13px;

    flex-wrap: wrap;
}


.about-hero-btn {
    min-height: 48px;

    padding: 0 19px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    border-radius: 5px;

    text-decoration: none;

    font-size: 11px;

    font-weight: 600;

    transition: all 0.3s ease;
}


.about-hero-btn.primary {
    color: #fff;

    background:
        linear-gradient(
            135deg,
            #c8871d,
            #e5ae45
        );

    box-shadow:
        0 10px 25px rgba(180, 125, 30, 0.20);
}


.about-hero-btn.primary:hover {
    transform: translateY(-2px);

    box-shadow:
        0 14px 30px rgba(180, 125, 30, 0.28);
}


.about-hero-btn.secondary {
    color: #60492d;

    border: 1px solid rgba(170, 130, 70, 0.45);

    background: rgba(255, 255, 255, 0.45);
}


.about-hero-btn.secondary:hover {
    background: #fff;

    transform: translateY(-2px);
}


/* =========================================
   RIGHT IMAGE
========================================= */

.about-hero-visual {
    position: relative;

    min-height: 500px;

    display: flex;

    align-items: center;

    justify-content: center;

    overflow: visible;
}


.hero-visual-glow {
    position: absolute;

    width: 480px;
    height: 480px;

    right: 0;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(216, 165, 62, 0.25) 0%,
            rgba(216, 165, 62, 0.08) 40%,
            transparent 72%
        );

    filter: blur(8px);
}


/* Generated image */

.about-hero-image {
    position: relative;

    z-index: 2;

    /*
       Image smaller than previous version
    */

    width: 690px;

    max-width: none;

    height: auto;

    object-fit: contain;

    transform: translateX(20px);

    filter:
        drop-shadow(
            0 22px 35px rgba(100, 70, 25, 0.10)
        );

    mix-blend-mode: multiply;
}


/* =========================================
   BOTTOM FADE
========================================= */

.about-hero-bottom-fade {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    height: 55px;

    background:
        linear-gradient(
            to bottom,
            transparent,
            rgba(255, 255, 255, 0.75)
        );

    pointer-events: none;
}


/* =========================================
   LARGE DESKTOP
========================================= */

@media (min-width: 1400px) {

    .about-hero-container {
        max-width: 1350px;

        grid-template-columns: 45% 55%;
    }

    .about-hero-title {
        font-size: 70px;
    }

    .about-hero-image {
        width: 730px;

        transform: translateX(10px);
    }
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1199px) {

    .about-hero-container {
        grid-template-columns: 48% 52%;

        padding-left: 35px;
        padding-right: 20px;
    }

    .about-hero-title {
        font-size: 54px;
    }

    .about-hero-image {
        width: 600px;

        transform: translateX(10px);
    }
}


/* =========================================
   MOBILE / TABLET
========================================= */

@media (max-width: 991px) {

    .about-hero-section {
        min-height: auto;
    }

    .about-hero-container {

        min-height: auto;

        display: block;

        padding:
            115px
            25px
            55px;
    }


    .about-hero-content {

        max-width: 700px;

        padding-top: 10px;

        margin: 0 auto;
    }


    .about-hero-title {

        max-width: 650px;

        font-size: 48px;

        line-height: 1.08;
    }


    .about-hero-description {

        max-width: 600px;

        font-size: 14px;
    }


    /*
       IMAGE HIDDEN ON MOBILE/TABLET
    */

    .about-hero-visual {
        display: none;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 575px) {

    .about-hero-container {

        padding:
            105px
            20px
            45px;
    }


    .about-hero-eyebrow {

        margin-bottom: 17px;

        padding: 7px 14px;

        font-size: 9px;

        letter-spacing: 1.8px;
    }


    .about-hero-title {

        max-width: 100%;

        margin-bottom: 20px;

        font-size: 38px;

        line-height: 1.08;

        letter-spacing: -0.7px;
    }


    .about-hero-description {

        max-width: 100%;

        margin-bottom: 25px;

        font-size: 13px;

        line-height: 1.7;
    }


    .about-hero-buttons {

        width: 100%;

        flex-direction: column;

        align-items: stretch;

        gap: 10px;
    }


    .about-hero-btn {

        width: 100%;
    }
}

/* ===== SECTION WRAPPER ===== */


/* --------------------------------------------------------
   BLOG LISTING (blog.blade.php)
-------------------------------------------------------- */
.dg-blog-hero {
  position: relative;
  padding: 140px 0 70px;
  background:
    linear-gradient(120deg, rgba(27, 21, 44, 0.88) 0%, rgba(34, 36, 41, 0.72) 55%, rgba(246, 180, 14, 0.35) 100%),
    url({{ asset('images/background/page-title.jpg') }}) center/cover no-repeat;
  color: #fff;
  overflow: hidden;
}
.dg-blog-hero .auto-container { position: relative; z-index: 1; }
.dg-blog-hero .eyebrow {
  display: inline-block;
  margin-bottom: 14px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #F6B40E;
}
.dg-blog-hero h1 {
  max-width: 720px;
  margin: 0 0 14px;
  color: #fff;
  font-size: clamp(34px, 4.5vw, 52px);
  line-height: 1.15;
  font-weight: 700;
}
.dg-blog-hero p {
  max-width: 620px;
  margin: 0;
  color: rgba(255,255,255,0.86);
  font-size: 17px;
  line-height: 1.6;
}
.dg-blog-hero .breadcrumb {
  margin-top: 22px;
  padding: 0;
  background: transparent;
}
.dg-blog-hero .breadcrumb a { color: rgba(255,255,255,0.8); text-decoration: none; }
.dg-blog-hero .breadcrumb .active { color: #F6B40E; }

.dg-blog-grid-section {
  padding: 70px 0 90px;
  background: linear-gradient(180deg, #fbfaf7 0%, #fff 40%);
}
.dg-blog-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(34, 36, 41, 0.08);
  box-shadow: 0 12px 36px rgba(34, 36, 41, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.dg-blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 44px rgba(34, 36, 41, 0.12);
}
.dg-blog-card-media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #f3f0ea;
}
.dg-blog-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}
.dg-blog-card:hover .dg-blog-card-media img { transform: scale(1.05); }
.dg-blog-card-date {
  position: absolute;
  left: 16px;
  bottom: 16px;
  min-width: 58px;
  padding: 8px 10px;
  border-radius: 12px;
  background: #F6B40E;
  color: #000000;
  text-align: center;
  line-height: 1.1;
}
.dg-blog-card-date .day { display: block; font-size: 20px; font-weight: 800; }
.dg-blog-card-date .month { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; }
.dg-blog-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 22px 22px 24px;
}
.dg-blog-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin-bottom: 12px;
  color: #7a746b;
  font-size: 13px;
  font-weight: 600;
}
.dg-blog-card-meta span { display: inline-flex; align-items: center; gap: 6px; }
.dg-blog-card-meta i { color: #F6B40E; }
.dg-blog-card h3 {
  margin: 0 0 12px;
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
}
.dg-blog-card h3 a {
  color: #000000;
  text-decoration: none;
}
.dg-blog-card h3 a:hover { color: #b37b20; }
.dg-blog-card-excerpt {
  margin: 0 0 18px;
  color: #5d574f;
  font-size: 15px;
  line-height: 1.55;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.dg-blog-card-cta {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #000000;
  text-decoration: none;
}
.dg-blog-card-cta:hover { color: #b37b20; }
.dg-blog-pagination { margin-top: 40px; }
@media (max-width: 767.98px) {
  .dg-blog-hero { padding: 120px 0 56px; }
  .dg-blog-grid-section { padding: 48px 0 64px; }
}


/* --------------------------------------------------------
   BLOG DETAIL (blog-detail.blade.php)
-------------------------------------------------------- */
.dg-post-hero {
  position: relative;
  padding: 140px 0 64px;
  background:
    linear-gradient(115deg, rgba(27, 21, 44, 0.9) 0%, rgba(34, 36, 41, 0.75) 60%, rgba(246, 180, 14, 0.28) 100%),
    url({{ asset('images/background/page-title.jpg') }}) center/cover no-repeat;
  color: #fff;
}
.dg-post-hero .eyebrow {
  display: inline-block;
  margin-bottom: 12px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #F6B40E;
}
.dg-post-hero h1 {
  max-width: 900px;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.18;
  font-weight: 700;
}
.dg-post-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  padding: 0;
  margin: 0;
  list-style: none;
  color: rgba(255,255,255,0.86);
  font-size: 14px;
  font-weight: 600;
}
.dg-post-meta i { color: #F6B40E; margin-right: 6px; }
.dg-post-hero .breadcrumb {
  margin-top: 20px;
  padding: 0;
  background: transparent;
}
.dg-post-hero .breadcrumb a { color: rgba(255,255,255,0.8); text-decoration: none; }
.dg-post-hero .breadcrumb .active { color: #F6B40E; }

.dg-post-section {
  padding: 56px 0 90px;
  background: #fbfaf7;
}
.dg-post-main {
  background: #fff;
  border-radius: 24px;
  padding: 28px;
  border: 1px solid rgba(34, 36, 41, 0.07);
  box-shadow: 0 14px 40px rgba(34, 36, 41, 0.06);
}
.dg-post-cover {
  margin: 0 0 28px;
  border-radius: 18px;
  overflow: hidden;
  background: #f2efe9;
}
.dg-post-cover img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 460px;
  object-fit: cover;
}
.dg-post-body {
  color: #3f3a34;
  font-size: 17px;
  line-height: 1.75;
}
.dg-post-body h2 {
  margin: 34px 0 14px;
  color: #000000;
  font-size: clamp(24px, 2.4vw, 30px);
  line-height: 1.25;
  font-weight: 700;
}
.dg-post-body h3 {
  margin: 26px 0 12px;
  color: #000000;
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
}
.dg-post-body p { margin: 0 0 16px; }
.dg-post-body ul, .dg-post-body ol {
  margin: 0 0 18px;
  padding-left: 1.2em;
}
.dg-post-body li { margin-bottom: 8px; }
.dg-post-body a { color: #b37b20; font-weight: 600; }
.dg-post-body strong { color: #000000; }

.dg-post-sidebar .widget {
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  margin-bottom: 18px;
  border: 1px solid rgba(34, 36, 41, 0.07);
  box-shadow: 0 10px 28px rgba(34, 36, 41, 0.05);
}
.dg-post-sidebar .widget h5 {
  margin: 0 0 16px;
  font-size: 18px;
  font-weight: 800;
  color: #000000;
}
.dg-related-item {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid rgba(34, 36, 41, 0.08);
  text-decoration: none;
}
.dg-related-item:last-child { border-bottom: 0; padding-bottom: 0; }
.dg-related-item img {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border-radius: 12px;
  flex: 0 0 auto;
  background: #f2efe9;
}
.dg-related-item strong {
  display: block;
  color: #000000;
  font-size: 14px;
  line-height: 1.35;
  margin-bottom: 4px;
}
.dg-related-item span {
  color: #7a746b;
  font-size: 12px;
  font-weight: 600;
}
.dg-cta-widget {
  background: linear-gradient(145deg, #000000 0%, #2c2833 70%, #3d3116 100%) !important;
  color: #fff;
}
.dg-cta-widget h5 { color: #fff !important; }
.dg-cta-widget p {
  margin: 0 0 16px;
  color: rgba(255,255,255,0.84);
  font-size: 14px;
  line-height: 1.55;
}
.dg-cta-widget .theme-btn { width: 100%; justify-content: center; }
@media (max-width: 991.98px) {
  .dg-post-main { padding: 20px; }
  .dg-post-sidebar { margin-top: 24px; }
}
@media (max-width: 767.98px) {
  .dg-post-hero { padding: 118px 0 48px; }
  .dg-post-section { padding: 36px 0 64px; }
  .dg-post-body { font-size: 16px; }
}


/* --------------------------------------------------------
   LOCATION PAGE (location.blade.php) — block 1/2
-------------------------------------------------------- */
/* =========================================================
   ROOT / RESET
========================================================= */

section.loc-hero,
section.loc-about,
section.loc-services,
section.loc-benefits,
section.loc-faq {

    --loc-yellow: #FFAA18;
    --loc-yellow-light: #FFF3D8;
    --loc-purple: #000000;
    --loc-purple-2: #1A1A1A;
    --loc-text: #000000;
    --loc-muted: #77727A;
    --loc-border: #EAE4EC;

box-sizing: border-box;

}

section.loc-hero *,
section.loc-about *,
section.loc-services *,
section.loc-benefits *,
section.loc-faq * {

    box-sizing: border-box;

}


/* =========================================================
   CONTAINER
========================================================= */

section.loc-hero .loc-container,
section.loc-about .loc-container,
section.loc-services .loc-container,
section.loc-benefits .loc-container,
section.loc-faq .loc-container {

    width: 100% !important;

    max-width: 1320px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 30px !important;
    padding-right: 30px !important;

}


/* =========================================================
   COMMON
========================================================= */

section.loc-hero h1,
section.loc-hero h2,
section.loc-hero h3,
section.loc-about h1,
section.loc-about h2,
section.loc-about h3,
section.loc-services h1,
section.loc-services h2,
section.loc-services h3,
section.loc-benefits h1,
section.loc-benefits h2,
section.loc-benefits h3,
section.loc-faq h1,
section.loc-faq h2,
section.loc-faq h3 {

}


/* =========================================================
   HERO
========================================================= */

section.loc-hero {

    position: relative !important;

    width: 100% !important;

    min-height: 780px !important;

    overflow: hidden !important;

    display: flex !important;

    align-items: center !important;

    padding: 100px 0 110px !important;

    background:
        radial-gradient(
            circle at 80% 20%,
            rgba(255,170,24,.08),
            transparent 32%
        ),
        #fff !important;

}


/* GRID */

section.loc-hero .loc-hero-grid {

    position: relative !important;

    z-index: 3 !important;

    display: grid !important;

    grid-template-columns: minmax(0, 1.02fr) minmax(500px, .98fr) !important;

    align-items: center !important;

    gap: 75px !important;

}


/* BACKGROUND ORBS */

section.loc-hero .loc-hero-orb {

    position: absolute !important;

    border-radius: 50% !important;

    pointer-events: none !important;

}

section.loc-hero .loc-orb-one {

    width: 600px !important;
    height: 600px !important;

    right: -330px !important;
    top: -250px !important;

    background: #FFF5DF !important;

}

section.loc-hero .loc-orb-two {

    width: 260px !important;
    height: 260px !important;

    left: -150px !important;
    bottom: -150px !important;

    border: 1px solid rgba(255,170,24,.2) !important;

}


/* GRID PATTERN */

section.loc-hero .loc-hero-grid-pattern {

    position: absolute !important;

    width: 450px !important;
    height: 450px !important;

    right: 34% !important;
    top: 20px !important;

    opacity: .28 !important;

    background-image:
        linear-gradient(
            rgba(18,11,26,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(18,11,26,.045) 1px,
            transparent 1px
        );

    background-size: 35px 35px !important;

    mask-image: linear-gradient(
        to bottom,
        black,
        transparent
    );

}


/* =========================================================
   HERO CONTENT
========================================================= */

section.loc-hero .loc-hero-content {

    position: relative !important;

    z-index: 5 !important;

    max-width: 720px !important;

}


/* EYEBROW */

section.loc-hero .loc-eyebrow {

    display: inline-flex !important;

    align-items: center !important;

    gap: 12px !important;

    margin-bottom: 30px !important;

    padding: 9px 15px !important;

    border: 1px solid rgba(255,170,24,.35) !important;

    border-radius: 100px !important;

    background: rgba(255,255,255,.7) !important;

    color: #000000 !important;

font-weight: 700 !important;

    letter-spacing: 1.8px !important;

    text-transform: uppercase !important;

    backdrop-filter: blur(10px) !important;

}

section.loc-hero .loc-eyebrow-line {

    width: 24px !important;

    height: 2px !important;

    background: #FFAA18 !important;

}

section.loc-hero .loc-eyebrow-dot {

    width: 6px !important;
    height: 6px !important;

    border-radius: 50% !important;

    background: #FFAA18 !important;

}


/* HERO TITLE */

section.loc-hero .loc-hero-title {

    margin: 0 0 30px !important;

    max-width: 780px !important;

    color: #000000 !important;

line-height: .98 !important;

    font-weight: 850 !important;

    letter-spacing: -1px !important;
    font-size: 40px;

}

section.loc-hero .loc-title-highlight {

    position: relative !important;

    display: inline-block !important;

    color: #FFAA18 !important;

}

section.loc-hero .loc-title-highlight::after {

    content: "" !important;

    position: absolute !important;

    left: 2px !important;
    right: 5px !important;

    bottom: -4px !important;

    height: 5px !important;

    background: #FFAA18 !important;

    opacity: .28 !important;

    transform: skewX(-18deg) !important;

}


/* DESCRIPTION */

section.loc-hero .loc-hero-description {

    max-width: 650px !important;

    margin: 0 !important;

    color: #6F6972 !important;

line-height: 1.85 !important;

    font-weight: 400 !important;

}

section.loc-hero .loc-hero-description p {

    margin: 0 0 12px !important;

    color: inherit !important;

}


/* BUTTONS */

section.loc-hero .loc-hero-actions {

    display: flex !important;

    align-items: center !important;

    gap: 14px !important;

    margin-top: 38px !important;

}

section.loc-hero .loc-btn {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    gap: 15px !important;

    min-height: 58px !important;

    padding: 0 25px !important;

    border-radius: 4px !important;

font-weight: 800 !important;

    letter-spacing: .7px !important;

    text-decoration: none !important;

    transition: all .3s ease !important;

}

section.loc-hero .loc-btn i {

transition: transform .3s ease !important;

}

section.loc-hero .loc-btn:hover i {

    transform: translateX(4px) !important;

}

section.loc-hero .loc-btn-primary {

    background: #FFAA18 !important;

    color: #000000 !important;

    border: 1px solid #FFAA18 !important;

    box-shadow: 0 12px 30px rgba(255,170,24,.2) !important;

}

section.loc-hero .loc-btn-primary:hover {

    background: #000000 !important;

    color: #fff !important;

    border-color: #000000 !important;

    transform: translateY(-3px) !important;

}

section.loc-hero .loc-btn-ghost {

    background: transparent !important;

    color: #000000 !important;

    border: 1px solid #DCD5DF !important;

}

section.loc-hero .loc-btn-ghost:hover {

    background: #000000 !important;

    color: #fff !important;

    border-color: #000000 !important;

    transform: translateY(-3px) !important;

}


/* TRUST */

section.loc-hero .loc-hero-trust {

    display: flex !important;

    align-items: center !important;

    gap: 24px !important;

    margin-top: 48px !important;

}

section.loc-hero .loc-trust-item {

    display: flex !important;

    align-items: center !important;

    gap: 9px !important;

}

section.loc-hero .loc-trust-item strong {

    color: #FFAA18 !important;

}

section.loc-hero .loc-trust-item span {

    color: #77727A !important;

line-height: 1.3 !important;

    font-weight: 600 !important;

    text-transform: uppercase !important;

    letter-spacing: .6px !important;

}

section.loc-hero .loc-trust-divider {

    width: 1px !important;

    height: 30px !important;

    background: #E7E0E9 !important;

}


/* =========================================================
   HERO VISUAL
========================================================= */

section.loc-hero .loc-hero-visual {

    position: relative !important;

    width: 100% !important;

    height: 610px !important;

}


/* IMAGE BACKDROP */

section.loc-hero .loc-image-backdrop {

    position: absolute !important;

    width: 390px !important;
    height: 520px !important;

    right: 30px !important;
    top: 30px !important;

    background: #FFF3D8 !important;

    border-radius: 12px !important;

    transform: rotate(5deg) !important;

}


/* MAIN IMAGE */

section.loc-hero .loc-hero-main-image {

    position: absolute !important;

    right: 0 !important;
    top: 0 !important;

    width: 82% !important;
    height: 540px !important;

    overflow: hidden !important;

    border-radius: 14px !important;

    z-index: 3 !important;

    box-shadow:
        0 35px 80px rgba(18,11,26,.17) !important;

}

section.loc-hero .loc-hero-main-image img {

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;

    display: block !important;

}

section.loc-hero .loc-image-overlay {

    position: absolute !important;

    inset: 0 !important;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(18,11,26,.35)
        ) !important;

}


/* SMALL IMAGE */

section.loc-hero .loc-hero-small-image {

    position: absolute !important;

    left: 0 !important;

    bottom: 15px !important;

    width: 43% !important;
    height: 205px !important;

    padding: 8px !important;

    background: #fff !important;

    border-radius: 12px !important;

    z-index: 6 !important;

    box-shadow: 0 25px 60px rgba(18,11,26,.18) !important;

}

section.loc-hero .loc-hero-small-image img {

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;

    border-radius: 7px !important;

}


/* FLOATING CARD */

section.loc-hero .loc-floating-card {

    position: absolute !important;

    right: -25px !important;

    bottom: 85px !important;

    z-index: 8 !important;

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    min-width: 235px !important;

    padding: 14px 17px !important;

    background: #000000 !important;

    border-radius: 8px !important;

    color: #fff !important;

    box-shadow: 0 20px 50px rgba(18,11,26,.3) !important;

}

section.loc-hero .loc-floating-icon {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 40px !important;
    height: 40px !important;

    min-width: 40px !important;

    background: #FFAA18 !important;

    border-radius: 6px !important;

    color: #000000 !important;

}

section.loc-hero .loc-floating-content {

    display: flex !important;

    flex-direction: column !important;

    gap: 3px !important;

}

section.loc-hero .loc-floating-content span {

    color: #AAA3AD !important;

font-weight: 700 !important;

    letter-spacing: 1.1px !important;

}

section.loc-hero .loc-floating-content strong {

    color: #fff !important;

}

section.loc-hero .loc-floating-arrow {

    margin-left: auto !important;

    color: #FFAA18 !important;

}


/* GROWTH CARD */

section.loc-hero .loc-growth-card {

    position: absolute !important;

    left: 15px !important;

    top: 70px !important;

    z-index: 7 !important;

    width: 145px !important;

    padding: 15px !important;

    background: rgba(255,255,255,.94) !important;

    border: 1px solid rgba(18,11,26,.07) !important;

    border-radius: 8px !important;

    box-shadow: 0 20px 50px rgba(18,11,26,.12) !important;

    backdrop-filter: blur(12px) !important;

}

section.loc-hero .loc-growth-top {

    display: flex !important;

    justify-content: space-between !important;

    color: #77727A !important;

font-weight: 700 !important;

    text-transform: uppercase !important;

}

section.loc-hero .loc-growth-top i {

    color: #FFAA18 !important;

}

section.loc-hero .loc-growth-value {

    margin-top: 10px !important;

    color: #000000 !important;

font-weight: 800 !important;

}

section.loc-hero .loc-growth-value span {

    color: #FFAA18 !important;

}

section.loc-hero .loc-growth-bars {

    display: flex !important;

    align-items: flex-end !important;

    gap: 4px !important;

    height: 28px !important;

    margin-top: 8px !important;

}

section.loc-hero .loc-growth-bars span {

    flex: 1 !important;

    background: #FFAA18 !important;

    border-radius: 2px !important;

}

section.loc-hero .loc-growth-bars span:nth-child(1) { height: 8px !important; }
section.loc-hero .loc-growth-bars span:nth-child(2) { height: 12px !important; }
section.loc-hero .loc-growth-bars span:nth-child(3) { height: 10px !important; }
section.loc-hero .loc-growth-bars span:nth-child(4) { height: 17px !important; }
section.loc-hero .loc-growth-bars span:nth-child(5) { height: 15px !important; }
section.loc-hero .loc-growth-bars span:nth-child(6) { height: 22px !important; }
section.loc-hero .loc-growth-bars span:nth-child(7) { height: 27px !important; }


/* RINGS */

section.loc-hero .loc-visual-ring {

    position: absolute !important;

    border: 1px solid rgba(255,170,24,.3) !important;

    border-radius: 50% !important;

    z-index: 1 !important;

}

section.loc-hero .loc-ring-one {

    width: 130px !important;
    height: 130px !important;

    right: -45px !important;
    top: -45px !important;

}

section.loc-hero .loc-ring-two {

    width: 210px !important;
    height: 210px !important;

    right: -85px !important;
    top: -85px !important;

}


/* =========================================================
   ABOUT
========================================================= */

section.loc-about {

    position: relative !important;

    overflow: hidden !important;

    padding: 125px 0 !important;

    background: #fff !important;

}

section.loc-about .loc-about-glow {

    position: absolute !important;

    width: 450px !important;
    height: 450px !important;

    left: -300px !important;
    top: 100px !important;

    border-radius: 50% !important;

    background: #FFF8EA !important;

}


/* GRID */

section.loc-about .loc-about-grid {

    position: relative !important;

    z-index: 2 !important;

    display: grid !important;

    grid-template-columns: .92fr 1.08fr !important;

    gap: 105px !important;

    align-items: center !important;

}


/* VISUAL */

section.loc-about .loc-about-visual {

    position: relative !important;

    min-height: 570px !important;

}

section.loc-about .loc-about-image {

    position: absolute !important;

    top: 0 !important;
    left: 0 !important;

    width: 87% !important;
    height: 525px !important;

    overflow: hidden !important;

    border-radius: 14px !important;

    box-shadow: 0 30px 70px rgba(18,11,26,.15) !important;

}

section.loc-about .loc-about-image img {

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;

}

section.loc-about .loc-about-image-overlay {

    position: absolute !important;
    inset: 0 !important;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(18,11,26,.3)
        ) !important;

}


/* NUMBER */

section.loc-about .loc-about-number {

    position: absolute !important;

    right: 20px !important;
    top: 28px !important;

    color: rgba(255,170,24,.75) !important;

font-weight: 800 !important;

    line-height: 1 !important;

}


/* BADGE */

section.loc-about .loc-about-badge {

    position: absolute !important;

    right: 0 !important;
    bottom: 65px !important;

    z-index: 5 !important;

    display: flex !important;

    align-items: center !important;

    gap: 13px !important;

    padding: 15px 20px !important;

    background: #000000 !important;

    border-radius: 8px !important;

    box-shadow: 0 20px 50px rgba(18,11,26,.25) !important;

}

section.loc-about .loc-badge-icon {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 42px !important;
    height: 42px !important;

    border-radius: 6px !important;

    background: #FFAA18 !important;

    color: #000000 !important;

}

section.loc-about .loc-badge-content {

    display: flex !important;

    flex-direction: column !important;

    gap: 4px !important;

}

section.loc-about .loc-badge-content span {

    color: #9D96A4 !important;

letter-spacing: 1px !important;

    font-weight: 700 !important;

}

section.loc-about .loc-badge-content strong {

    color: #fff !important;

}


/* PATTERN */

section.loc-about .loc-about-pattern {

    position: absolute !important;

    width: 170px !important;
    height: 170px !important;

    right: -15px !important;
    bottom: 10px !important;

    border: 1px solid rgba(255,170,24,.35) !important;

    border-radius: 50% !important;

}


/* ABOUT CONTENT */

section.loc-about .loc-section-label,
section.loc-benefits .loc-section-label,
section.loc-faq .loc-section-label {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    margin-bottom: 20px !important;

    color: #FFAA18 !important;

letter-spacing: 1.8px !important;

    text-transform: uppercase !important;

}

section.loc-about .loc-section-label > span,
section.loc-benefits .loc-section-label > span,
section.loc-faq .loc-section-label > span {

    width: 28px !important;

    height: 2px !important;

    background: #FFAA18 !important;

}

section.loc-about .loc-section-label strong,
section.loc-benefits .loc-section-label strong,
section.loc-faq .loc-section-label strong {

    color: inherit !important;

}


/* SECTION TITLE */

section.loc-about .loc-section-title,
section.loc-benefits .loc-section-title,
section.loc-faq .loc-section-title {

    margin: 0 0 27px !important;

    color: #000000 !important;

line-height: 1.04 !important;

    letter-spacing: -0.8px !important;

    font-weight: 800 !important;

}

section.loc-about .loc-section-title span,
section.loc-benefits .loc-section-title span,
section.loc-faq .loc-section-title span {

    color: #FFAA18 !important;

}


/* DESCRIPTION */

section.loc-about .loc-section-description {

    max-width: 680px !important;

    margin-bottom: 35px !important;

    color: #77727A !important;

line-height: 1.85 !important;

}


/* SERVICES BOX */

section.loc-about .loc-about-services {

    border-top: 1px solid #E9E3EB !important;

    border-bottom: 1px solid #E9E3EB !important;

}

section.loc-about .loc-about-services-heading {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    padding: 20px 0 !important;

}

section.loc-about .loc-about-services-heading > div {

    display: flex !important;

    flex-direction: column !important;

    gap: 5px !important;

}

section.loc-about .loc-about-services-heading span {

    color: #9C949F !important;

letter-spacing: 1.4px !important;

    font-weight: 700 !important;

}

section.loc-about .loc-about-services-heading strong {

    color: #000000 !important;

}

section.loc-about .loc-about-services-heading > i {

    color: #FFAA18 !important;

}


/* SERVICE LIST */

section.loc-about .loc-services-list {

    display: grid !important;

    grid-template-columns: 1fr 1fr !important;

    gap: 0 30px !important;

}

section.loc-about .loc-service-list-item {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    padding: 13px 0 !important;

    color: #3F3943 !important;

    border-top: 1px solid #F0EBF1 !important;

}

section.loc-about .loc-service-check {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 24px !important;
    height: 24px !important;

    min-width: 24px !important;

    border-radius: 50% !important;

    background: #FFAA18 !important;

    color: #000000 !important;

}

section.loc-about .loc-service-list-item strong {

font-weight: 700 !important;

}


/* ABOUT ACTION */

section.loc-about .loc-about-actions {

    display: flex !important;

    align-items: center !important;

    gap: 25px !important;

    margin-top: 35px !important;

}

section.loc-about .loc-btn-dark {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    gap: 14px !important;

    min-height: 56px !important;

    padding: 0 24px !important;

    background: #000000 !important;

    color: #fff !important;

    border-radius: 4px !important;

font-weight: 800 !important;

    text-decoration: none !important;

    transition: .3s ease !important;

}

section.loc-about .loc-btn-dark:hover {

    background: #FFAA18 !important;

    color: #000000 !important;

    transform: translateY(-3px) !important;

}

section.loc-about .loc-about-note {

    display: flex !important;

    align-items: center !important;

    gap: 8px !important;

    color: #77727A !important;

font-weight: 600 !important;

}

section.loc-about .loc-about-note i {

    color: #FFAA18 !important;

}


/* =========================================================
   SERVICES
========================================================= */

section.loc-services {

    position: relative !important;

    overflow: hidden !important;

    padding: 125px 0 !important;

    background: #000000 !important;

    color: #fff !important;

}

section.loc-services .loc-services-glow {

    position: absolute !important;

    width: 550px !important;
    height: 550px !important;

    right: -250px !important;
    top: -250px !important;

    border-radius: 50% !important;

    background: rgba(255,170,24,.06) !important;

}

section.loc-services .loc-section-head {

    position: relative !important;

    z-index: 2 !important;

    display: grid !important;

    grid-template-columns: 1fr .55fr !important;

    gap: 100px !important;

    align-items: end !important;

    margin-bottom: 60px !important;

}

section.loc-services .loc-section-label {

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    margin-bottom: 20px !important;

    color: #FFAA18 !important;

font-weight: 700 !important;

    letter-spacing: 1.8px !important;

    text-transform: uppercase !important;

}

section.loc-services .loc-section-label span {

    width: 28px !important;
    height: 2px !important;

    background: #FFAA18 !important;

}

section.loc-services .loc-section-title {

    margin: 0 !important;

    color: #fff !important;

line-height: 1 !important;

    letter-spacing: -0.8px !important;

    font-weight: 800 !important;

}

section.loc-services .loc-section-title span {

    color: #FFAA18 !important;

}

section.loc-services .loc-head-description {

    display: flex !important;

    align-items: flex-start !important;

    gap: 20px !important;

}

section.loc-services .loc-head-index {

    color: #FFAA18 !important;

font-weight: 800 !important;

}

section.loc-services .loc-head-description p {

    margin: 0 !important;

    color: #AAA3AD !important;

line-height: 1.8 !important;

}


/* SERVICE GRID */

section.loc-services .loc-services-grid {

    position: relative !important;

    z-index: 2 !important;

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 16px !important;

}


/* CARD */

section.loc-services .loc-service-card {

    position: relative !important;

    min-height: 390px !important;

    padding: 30px !important;

    overflow: hidden !important;

    background: rgba(255,255,255,.035) !important;

    border: 1px solid rgba(255,255,255,.1) !important;

    border-radius: 8px !important;

    transition: .4s ease !important;

}

section.loc-services .loc-service-card::before {

    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    bottom: 0 !important;

    width: 100% !important;
    height: 0 !important;

    background: #FFAA18 !important;

    transition: .4s ease !important;

    z-index: -1 !important;

}

section.loc-services .loc-service-card:hover {

    transform: translateY(-8px) !important;

    border-color: #FFAA18 !important;

}

section.loc-services .loc-service-card:hover::before {

    height: 100% !important;

}

section.loc-services .loc-card-top {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

}

section.loc-services .loc-card-number {

    color: #766E7D !important;

font-weight: 700 !important;

}

section.loc-services .loc-card-arrow {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 38px !important;
    height: 38px !important;

    border: 1px solid rgba(255,170,24,.35) !important;

    border-radius: 50% !important;

    color: #FFAA18 !important;

transition: .3s ease !important;

}

section.loc-services .loc-card-icon {

    margin-top: 70px !important;

    color: #FFAA18 !important;

transition: .3s ease !important;

}

section.loc-services .loc-service-card h3 {

    max-width: 270px !important;

    margin: 20px 0 12px !important;

    color: #fff !important;

line-height: 1.25 !important;

    font-weight: 750 !important;

    transition: .3s ease !important;

}

section.loc-services .loc-card-description {

    color: #9F97A5 !important;

line-height: 1.75 !important;

    transition: .3s ease !important;

}

section.loc-services .loc-card-bottom {

    position: absolute !important;

    left: 30px !important;
    right: 30px !important;
    bottom: 27px !important;

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    padding-top: 15px !important;

    border-top: 1px solid rgba(255,255,255,.1) !important;

    color: #FFAA18 !important;

font-weight: 800 !important;

    letter-spacing: 1px !important;

    text-transform: uppercase !important;

}

section.loc-services .loc-service-card:hover .loc-card-number,
section.loc-services .loc-service-card:hover .loc-card-description,
section.loc-services .loc-service-card:hover .loc-card-bottom {

    color: #3C3441 !important;

}

section.loc-services .loc-service-card:hover h3 {

    color: #000000 !important;

}

section.loc-services .loc-service-card:hover .loc-card-icon,
section.loc-services .loc-service-card:hover .loc-card-arrow {

    color: #000000 !important;

    border-color: #000000 !important;

}


/* =========================================================
   BENEFITS
========================================================= */

section.loc-benefits {

    position: relative !important;

    padding: 125px 0 !important;

    background: #FFF9F0 !important;

}

section.loc-benefits .loc-benefit-header {

    display: grid !important;

    grid-template-columns: 1fr .45fr !important;

    gap: 80px !important;

    align-items: end !important;

    margin-bottom: 60px !important;

}

section.loc-benefits .loc-section-title {

    margin-bottom: 0 !important;

}

section.loc-benefits .loc-benefit-intro {

    display: flex !important;

    gap: 18px !important;

}

section.loc-benefits .loc-benefit-intro > span {

    color: #FFAA18 !important;

font-weight: 800 !important;

}

section.loc-benefits .loc-benefit-intro p {

    margin: 0 !important;

    color: #77727A !important;

line-height: 1.8 !important;

}


/* GRID */

section.loc-benefits .loc-benefits-grid {

    display: grid !important;

    grid-template-columns: repeat(3, 1fr) !important;

    gap: 16px !important;

}

section.loc-benefits .loc-benefit-card {

    position: relative !important;

    min-height: 285px !important;

    padding: 30px !important;

    background: #fff !important;

    border: 1px solid #EEE6DA !important;

    border-radius: 8px !important;

    transition: .35s ease !important;

}

section.loc-benefits .loc-benefit-card:hover {

    transform: translateY(-7px) !important;

    border-color: #FFAA18 !important;

    box-shadow: 0 25px 55px rgba(18,11,26,.08) !important;

}

section.loc-benefits .loc-benefit-card-top {

    display: flex !important;

    justify-content: space-between !important;

    align-items: center !important;

}

section.loc-benefits .loc-benefit-icon {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 48px !important;
    height: 48px !important;

    background: #FFAA18 !important;

    color: #000000 !important;

    border-radius: 7px !important;

}

section.loc-benefits .loc-benefit-number {

    color: #E8DCCB !important;

font-weight: 800 !important;

}

section.loc-benefits .loc-benefit-card h3 {

    margin: 60px 0 18px !important;

    color: #000000 !important;

line-height: 1.25 !important;

}

section.loc-benefits .loc-benefit-card-line {

    width: 35px !important;
    height: 2px !important;

    margin-bottom: 18px !important;

    background: #FFAA18 !important;

}

section.loc-benefits .loc-benefit-card p {

    margin: 0 !important;

    color: #77727A !important;

line-height: 1.75 !important;

}


/* =========================================================
   FAQ
========================================================= */

section.loc-faq {

    position: relative !important;

    overflow: hidden !important;

    padding: 125px 0 !important;

    background: #fff !important;

}

section.loc-faq .loc-faq-glow {

    position: absolute !important;

    width: 500px !important;
    height: 500px !important;

    right: -280px !important;
    top: 50px !important;

    border-radius: 50% !important;

    background: #FFF7E8 !important;

}

section.loc-faq .loc-faq-grid {

    position: relative !important;

    z-index: 2 !important;

    display: grid !important;

    grid-template-columns: 1.05fr .95fr !important;

    gap: 100px !important;

    align-items: center !important;

}

section.loc-faq .loc-section-title {

    margin-bottom: 25px !important;

}

section.loc-faq .loc-faq-intro {

    max-width: 620px !important;

    margin: 0 0 35px !important;

    color: #77727A !important;

line-height: 1.8 !important;

}


/* ACCORDION */

section.loc-faq .loc-accordion {

    border-top: 1px solid #E8E2E8 !important;

}

section.loc-faq .loc-faq-item {

    border-bottom: 1px solid #E8E2E8 !important;

}

section.loc-faq .loc-faq-question {

    display: flex !important;

    align-items: center !important;

    justify-content: space-between !important;

    width: 100% !important;

    padding: 22px 0 !important;

    background: transparent !important;

    border: 0 !important;

    outline: 0 !important;

    color: #000000 !important;

    text-align: left !important;

font-weight: 700 !important;

    cursor: pointer !important;

}

section.loc-faq .loc-faq-question i {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 34px !important;
    height: 34px !important;

    min-width: 34px !important;

    border-radius: 50% !important;

    background: #FFF3D8 !important;

    color: #000000 !important;

transition: .3s ease !important;

}

section.loc-faq .loc-faq-active .loc-faq-question i {

    background: #FFAA18 !important;

    transform: rotate(45deg) !important;

}

section.loc-faq .loc-faq-answer {

    display: grid !important;

    grid-template-rows: 0fr !important;

    transition: grid-template-rows .35s ease !important;

}

section.loc-faq .loc-faq-answer > div {

    overflow: hidden !important;

    color: #77727A !important;

line-height: 1.8 !important;

}

section.loc-faq .loc-faq-active .loc-faq-answer {

    grid-template-rows: 1fr !important;

}

section.loc-faq .loc-faq-active .loc-faq-answer > div {

    padding-bottom: 22px !important;

}


/* FAQ VISUAL */

section.loc-faq .loc-faq-visual {

    position: relative !important;

    min-height: 570px !important;

}

section.loc-faq .loc-faq-image {

    position: absolute !important;

    right: 0 !important;
    top: 0 !important;

    width: 88% !important;
    height: 530px !important;

    overflow: hidden !important;

    border-radius: 14px !important;

    background: #FFF5DF !important;

}

section.loc-faq .loc-faq-image img {

    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;

}


/* LOCATION CARD */

section.loc-faq .loc-faq-location-card {

    position: absolute !important;

    left: 0 !important;
    bottom: 55px !important;

    z-index: 5 !important;

    display: flex !important;

    align-items: center !important;

    gap: 12px !important;

    padding: 15px 20px !important;

    background: #000000 !important;

    border-radius: 8px !important;

    color: #fff !important;

    box-shadow: 0 20px 50px rgba(18,11,26,.25) !important;

}

section.loc-faq .loc-faq-location-icon {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 40px !important;
    height: 40px !important;

    background: #FFAA18 !important;

    color: #000000 !important;

    border-radius: 6px !important;

}

section.loc-faq .loc-faq-location-card > div:last-child {

    display: flex !important;

    flex-direction: column !important;

    gap: 4px !important;

}

section.loc-faq .loc-faq-location-card small {

    color: #9D96A4 !important;

letter-spacing: 1.2px !important;

}

section.loc-faq .loc-faq-location-card strong {

    color: #fff !important;

}


/* STAMP */

section.loc-faq .loc-faq-stamp {

    position: absolute !important;

    right: -5px !important;

    top: 50px !important;

    z-index: 6 !important;

    display: flex !important;

    flex-direction: column !important;

    align-items: center !important;
    justify-content: center !important;

    width: 105px !important;
    height: 105px !important;

    border: 1px solid rgba(255,170,24,.6) !important;

    border-radius: 50% !important;

    background: rgba(255,255,255,.9) !important;

    transform: rotate(12deg) !important;

}

section.loc-faq .loc-faq-stamp span {

    color: #FFAA18 !important;

font-weight: 900 !important;

}

section.loc-faq .loc-faq-stamp small {

    color: #000000 !important;

line-height: 1.2 !important;

    text-align: center !important;

    font-weight: 800 !important;

    letter-spacing: 1px !important;

}


/* CIRCLE */

section.loc-faq .loc-faq-circle {

    position: absolute !important;

    width: 170px !important;
    height: 170px !important;

    right: -70px !important;
    bottom: 10px !important;

    border: 1px solid rgba(255,170,24,.4) !important;

    border-radius: 50% !important;

}


/* =========================================================
   EMPTY
========================================================= */

section.loc-empty-state {

    padding: 60px !important;

    text-align: center !important;

}

section.loc-empty-light {

    grid-column: 1 / -1 !important;

    padding: 60px !important;

    color: #aaa !important;

    text-align: center !important;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    section.loc-hero .loc-hero-grid {

        grid-template-columns: 1fr 1fr !important;

        gap: 40px !important;

    }

    section.loc-hero .loc-hero-title {

}

    section.loc-hero .loc-floating-card {

        right: -5px !important;

    }

    section.loc-about .loc-about-grid {

        gap: 55px !important;

    }

    section.loc-services .loc-section-head,
    section.loc-benefits .loc-benefit-header {

        gap: 50px !important;

    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    section.loc-hero {

        min-height: auto !important;

        padding: 90px 0 !important;

    }

    section.loc-hero .loc-hero-grid,
    section.loc-about .loc-about-grid,
    section.loc-faq .loc-faq-grid {

        grid-template-columns: 1fr !important;

    }

    section.loc-hero .loc-hero-content {

        max-width: 760px !important;

    }

    section.loc-hero .loc-hero-visual {

        max-width: 700px !important;

        margin: 20px auto 0 !important;

    }

    section.loc-about .loc-about-visual,
    section.loc-faq .loc-faq-visual {

        max-width: 650px !important;

        width: 100% !important;

        margin: 0 auto !important;

    }

    section.loc-about .loc-about-content {

        max-width: 800px !important;

    }

    section.loc-services .loc-services-grid,
    section.loc-benefits .loc-benefits-grid {

        grid-template-columns: repeat(2, 1fr) !important;

    }

    section.loc-services .loc-section-head,
    section.loc-benefits .loc-benefit-header {

        grid-template-columns: 1fr !important;

        gap: 25px !important;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    section.loc-hero .loc-container,
    section.loc-about .loc-container,
    section.loc-services .loc-container,
    section.loc-benefits .loc-container,
    section.loc-faq .loc-container {

        padding-left: 18px !important;
        padding-right: 18px !important;

    }


    /* HERO */

    section.loc-hero {

        padding: 70px 0 75px !important;

    }

    section.loc-hero .loc-eyebrow {

letter-spacing: 1.2px !important;

        margin-bottom: 22px !important;

    }

    section.loc-hero .loc-hero-title {

line-height: 1 !important;

        letter-spacing: -0.6px !important;

        margin-bottom: 22px !important;

    }

    section.loc-hero .loc-hero-description {

line-height: 1.75 !important;

    }

    section.loc-hero .loc-hero-actions {

        flex-wrap: wrap !important;

        margin-top: 28px !important;

    }

    section.loc-hero .loc-btn {

        min-height: 52px !important;

        padding: 0 18px !important;

}

    section.loc-hero .loc-hero-trust {

        gap: 12px !important;

        margin-top: 35px !important;

    }

    section.loc-hero .loc-trust-item {

        gap: 5px !important;

    }

    section.loc-hero .loc-trust-item span {

}

    section.loc-hero .loc-hero-visual {

        height: 430px !important;

        min-height: 430px !important;

    }

    section.loc-hero .loc-hero-main-image {

        width: 84% !important;

        height: 390px !important;

    }

    section.loc-hero .loc-image-backdrop {

        width: 78% !important;

        height: 370px !important;

        right: 10px !important;

    }

    section.loc-hero .loc-hero-small-image {

        width: 46% !important;

        height: 145px !important;

    }

    section.loc-hero .loc-floating-card {

        right: 0 !important;

        bottom: 45px !important;

        min-width: 200px !important;

    }

    section.loc-hero .loc-growth-card {

        left: 0 !important;

        top: 35px !important;

        transform: scale(.82) !important;

        transform-origin: left top !important;

    }


    /* ABOUT */

    section.loc-about,
    section.loc-services,
    section.loc-benefits,
    section.loc-faq {

        padding: 80px 0 !important;

    }

    section.loc-about .loc-about-visual {

        min-height: 430px !important;

    }

    section.loc-about .loc-about-image {

        width: 87% !important;

        height: 400px !important;

    }

    section.loc-about .loc-about-number {

}

    section.loc-about .loc-about-badge {

        bottom: 40px !important;

    }

    section.loc-about .loc-section-title,
    section.loc-benefits .loc-section-title,
    section.loc-faq .loc-section-title {

letter-spacing: -1.8px !important;

    }

    section.loc-about .loc-section-description {

}

    section.loc-about .loc-services-list {

        grid-template-columns: 1fr !important;

    }


    /* SERVICES */

    section.loc-services .loc-section-title {

}

    section.loc-services .loc-services-grid,
    section.loc-benefits .loc-benefits-grid {

        grid-template-columns: 1fr !important;

    }

    section.loc-services .loc-service-card {

        min-height: 340px !important;

    }


    /* BENEFITS */

    section.loc-benefits .loc-benefit-card {

        min-height: 250px !important;

    }


    /* FAQ */

    section.loc-faq .loc-faq-visual {

        min-height: 430px !important;

    }

    section.loc-faq .loc-faq-image {

        width: 88% !important;

        height: 400px !important;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    section.loc-hero .loc-hero-actions {

        flex-direction: column !important;

        align-items: stretch !important;

    }

    section.loc-hero .loc-btn {

        width: 100% !important;

    }

    section.loc-hero .loc-hero-trust {

        justify-content: space-between !important;

    }

    section.loc-hero .loc-trust-divider {

        height: 24px !important;

    }

    section.loc-hero .loc-hero-visual {

        height: 360px !important;

        min-height: 360px !important;

    }

    section.loc-hero .loc-hero-main-image {

        height: 325px !important;

    }

    section.loc-hero .loc-hero-small-image {

        height: 115px !important;

    }

    section.loc-hero .loc-floating-card {

        bottom: 25px !important;

        transform: scale(.9) !important;

        transform-origin: right bottom !important;

    }

    section.loc-about .loc-about-visual {

        min-height: 360px !important;

    }

    section.loc-about .loc-about-image {

        height: 340px !important;

    }

    section.loc-about .loc-about-badge {

        right: -5px !important;

        bottom: 25px !important;

        transform: scale(.9) !important;

    }

    section.loc-about .loc-section-title,
    section.loc-benefits .loc-section-title,
    section.loc-faq .loc-section-title {

}

    section.loc-services .loc-section-title {

}

    section.loc-faq .loc-faq-visual {

        min-height: 360px !important;

    }

    section.loc-faq .loc-faq-image {

        height: 335px !important;

    }

    section.loc-faq .loc-faq-location-card {

        bottom: 25px !important;

    }

}


/* =========================================================
   VERY SMALL
========================================================= */

@media (max-width: 400px) {

    section.loc-hero .loc-hero-title {

}

    section.loc-hero .loc-hero-trust {

        gap: 8px !important;

    }

    section.loc-hero .loc-trust-item strong {

}

    section.loc-hero .loc-trust-item span {

}

}


/* --------------------------------------------------------
   LOCATION PAGE (location.blade.php) — block 2/2
-------------------------------------------------------- */
/* =========================================================
   DREAMGROW DIGITAL — PREMIUM VISUAL REFINEMENT
   Keeps the existing Dark Purple + Yellow brand system.
   Focus: hierarchy, contrast, spacing, card variation,
   editorial polish and responsive consistency.
========================================================= */

:root{
    --dg-purple:#000000;
    --dg-purple-2:#1A1A1A;
    --dg-purple-3:#2B2B2B;
    --dg-yellow:#FFAA18;
    --dg-yellow-soft:#FFF2D2;
    --dg-cream:#FBF8F2;
    --dg-ink:#000000;
    --dg-body:#5D5662;
    --dg-muted:#77707D;
    --dg-line:#E9E3EA;
    --dg-white:#FFFFFF;
}

/* ---------- GLOBAL TYPOGRAPHY / RHYTHM ---------- */

section.loc-hero,
section.loc-about,
section.loc-services,
section.loc-benefits,
section.loc-faq{
    --loc-yellow:#FFAA18 !important;
    --loc-yellow-light:#FFF2D2 !important;
    --loc-purple:#000000 !important;
    --loc-purple-2:#1A1A1A !important;
    --loc-text:#000000 !important;
    --loc-muted:#5D5662 !important;
    --loc-border:#E9E3EA !important;
}

section.loc-hero .loc-container,
section.loc-about .loc-container,
section.loc-services .loc-container,
section.loc-benefits .loc-container,
section.loc-faq .loc-container{
    max-width:1360px !important;
    padding-left:36px !important;
    padding-right:36px !important;
}

/* ---------- HERO ---------- */

section.loc-hero{
    min-height:760px !important;
    padding:132px 0 105px !important;
    background:
        radial-gradient(circle at 82% 18%, rgba(255,170,24,.13), transparent 27%),
        radial-gradient(circle at 8% 92%, rgba(255,170,24,.045), transparent 24%),
        #fff !important;
}

section.loc-hero .loc-hero-grid{
    grid-template-columns:minmax(0,.94fr) minmax(520px,1.06fr) !important;
    gap:64px !important;
}

section.loc-hero .loc-eyebrow{
    margin-bottom:24px !important;
    padding:10px 16px !important;
    background:rgba(255,255,255,.9) !important;
    border-color:rgba(255,170,24,.48) !important;
    box-shadow:0 10px 30px rgba(16,9,26,.05) !important;
}

section.loc-hero .loc-hero-title{
    max-width:680px !important;
    margin-bottom:25px !important;
line-height:.99 !important;
    letter-spacing:-1px !important;
    font-weight:850 !important;
}

section.loc-hero .loc-title-highlight{
    text-shadow:0 8px 24px rgba(255,170,24,.10) !important;
}

section.loc-hero .loc-title-highlight::after{
    height:4px !important;
    bottom:-7px !important;
    opacity:.42 !important;
}

section.loc-hero .loc-hero-description{
    max-width:590px !important;
    color:#5D5662 !important;
line-height:1.78 !important;
}

section.loc-hero .loc-hero-description p,
section.loc-about .loc-section-description,
section.loc-faq .loc-faq-intro{
    color:#5D5662 !important;
}

section.loc-hero .loc-hero-actions{
    margin-top:32px !important;
    gap:12px !important;
}

section.loc-hero .loc-btn{
    min-height:54px !important;
    padding:0 23px !important;
    border-radius:7px !important;
letter-spacing:.8px !important;
}

section.loc-hero .loc-btn-primary{
    box-shadow:0 15px 35px rgba(255,170,24,.24) !important;
}

section.loc-hero .loc-btn-primary:hover{
    box-shadow:0 18px 40px rgba(16,9,26,.18) !important;
}

section.loc-hero .loc-btn-ghost{
    border-color:#D8D0DA !important;
    background:rgba(255,255,255,.55) !important;
}

section.loc-hero .loc-hero-trust{
    margin-top:38px !important;
    gap:20px !important;
}

section.loc-hero .loc-trust-item span{
    color:#615966 !important;
}

section.loc-hero .loc-trust-divider{
    background:#DDD5E0 !important;
}

/* Hero visual becomes more editorial and less "template". */

section.loc-hero .loc-hero-visual{
    height:590px !important;
}

section.loc-hero .loc-image-backdrop{
    width:400px !important;
    height:500px !important;
    right:28px !important;
    top:34px !important;
    background:linear-gradient(145deg,#FFF5DF,#FFEBC4) !important;
    border-radius:22px !important;
    transform:rotate(4deg) !important;
}

section.loc-hero .loc-hero-main-image{
    width:84% !important;
    height:515px !important;
    border-radius:20px !important;
    box-shadow:0 35px 90px rgba(16,9,26,.19) !important;
}

section.loc-hero .loc-image-overlay{
    background:
        linear-gradient(180deg,transparent 52%,rgba(16,9,26,.28)) !important;
}

section.loc-hero .loc-hero-small-image{
    left:-8px !important;
    bottom:4px !important;
    width:43% !important;
    height:188px !important;
    padding:7px !important;
    border-radius:16px !important;
    box-shadow:0 22px 60px rgba(16,9,26,.20) !important;
}

section.loc-hero .loc-floating-card{
    right:-12px !important;
    bottom:74px !important;
    min-width:245px !important;
    padding:15px 18px !important;
    border:1px solid rgba(255,255,255,.09) !important;
    border-radius:12px !important;
    box-shadow:0 25px 60px rgba(16,9,26,.32) !important;
}

section.loc-hero .loc-floating-content span{
    color:#C7BFCC !important;
}

section.loc-hero .loc-floating-content strong{
}

section.loc-hero .loc-growth-card{
    left:0 !important;
    top:56px !important;
    width:158px !important;
    padding:16px !important;
    border-radius:12px !important;
    box-shadow:0 22px 55px rgba(16,9,26,.15) !important;
}

section.loc-hero .loc-growth-top{
    color:#615966 !important;
}

section.loc-hero .loc-growth-value{
}

section.loc-hero .loc-growth-value span{
}

/* ---------- ABOUT ---------- */

section.loc-about{
    padding:118px 0 !important;
    background:
        radial-gradient(circle at 0% 50%,rgba(255,170,24,.07),transparent 22%),
        #fff !important;
}

section.loc-about .loc-about-grid{
    grid-template-columns:.9fr 1.1fr !important;
    gap:88px !important;
}

section.loc-about .loc-about-image{
    width:89% !important;
    height:510px !important;
    border-radius:20px !important;
    box-shadow:0 30px 80px rgba(16,9,26,.16) !important;
}

section.loc-about .loc-about-image-overlay{
    background:linear-gradient(180deg,transparent 50%,rgba(16,9,26,.34)) !important;
}

section.loc-about .loc-about-number{
    right:6px !important;
    top:15px !important;
color:rgba(255,170,24,.9) !important;
}

section.loc-about .loc-about-badge{
    right:-4px !important;
    bottom:55px !important;
    padding:14px 18px !important;
    border-radius:11px !important;
    box-shadow:0 22px 55px rgba(16,9,26,.26) !important;
}

section.loc-about .loc-about-pattern{
    width:190px !important;
    height:190px !important;
    right:-32px !important;
    bottom:-2px !important;
    border-color:rgba(255,170,24,.28) !important;
}

section.loc-about .loc-section-label,
section.loc-benefits .loc-section-label,
section.loc-faq .loc-section-label{
    margin-bottom:17px !important;
letter-spacing:2px !important;
}

section.loc-about .loc-section-title,
section.loc-benefits .loc-section-title,
section.loc-faq .loc-section-title{
    margin-bottom:23px !important;
line-height:1.03 !important;
    letter-spacing:-0.8px !important;
    font-size:40px;
}

section.loc-about .loc-section-description{
    max-width:690px !important;
    margin-bottom:30px !important;
    color:#514A57 !important;
line-height:1.8 !important;
}

section.loc-about .loc-about-services{
    padding:0 0 2px !important;
    border-top:1px solid #DED7E1 !important;
    border-bottom:1px solid #DED7E1 !important;
}

section.loc-about .loc-about-services-heading{
    padding:19px 0 17px !important;
}

section.loc-about .loc-about-services-heading span{
    color:#7A717F !important;
letter-spacing:1.7px !important;
}

section.loc-about .loc-about-services-heading strong{
    color:#000000 !important;
line-height:1.25 !important;
}

section.loc-about .loc-services-list{
    gap:0 34px !important;
}

section.loc-about .loc-service-list-item{
    min-height:52px !important;
    padding:11px 0 !important;
    border-top:1px solid #EEE9EF !important;
}

section.loc-about .loc-service-list-item strong{
    color:#342D39 !important;
}

section.loc-about .loc-about-actions{
    margin-top:29px !important;
}

/* ---------- SERVICES / DARK EDITORIAL SECTION ---------- */

section.loc-services{
    padding:60px 0 126px !important;
    background:
        radial-gradient(circle at 86% 10%,rgba(255,170,24,.09),transparent 25%),
        linear-gradient(135deg,#000000 0%,#0D0D0D 54%,#000000 100%) !important;
}

section.loc-services .loc-services-glow{
    width:700px !important;
    height:700px !important;
    right:-370px !important;
    top:-340px !important;
    background:rgba(255,170,24,.055) !important;
}

section.loc-services .loc-section-head{
    grid-template-columns:1fr .52fr !important;
    gap:80px !important;
    margin-bottom:50px !important;
}

section.loc-services .loc-section-label{
    margin-bottom:17px !important;
}

section.loc-services .loc-section-title{
line-height:1.01 !important;
    letter-spacing:-0.8px !important;
}

section.loc-services .loc-head-description p{
    color:#C5BDC9 !important;
line-height:1.75 !important;
}

section.loc-services .loc-head-index{
    color:#FFAA18 !important;
}

section.loc-services .loc-services-grid{
    gap:14px !important;
}

section.loc-services .loc-service-card{
    min-height:365px !important;
    padding:27px !important;
    border-radius:15px !important;
    border:1px solid rgba(255,255,255,.095) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
    background:
        linear-gradient(155deg,rgba(255,255,255,.055),rgba(255,255,255,.018)) !important;
}

section.loc-services .loc-service-card:nth-child(2n){
    background:
        linear-gradient(155deg,rgba(255,170,24,.075),rgba(255,255,255,.018)) !important;
}

section.loc-services .loc-service-card:nth-child(3n){
    background:
        linear-gradient(155deg,rgba(114,77,144,.12),rgba(255,255,255,.018)) !important;
}

section.loc-services .loc-service-card:hover{
    transform:translateY(-9px) !important;
    border-color:rgba(255,170,24,.65) !important;
    box-shadow:0 25px 65px rgba(0,0,0,.25) !important;
}

section.loc-services .loc-card-number{
    color:#A69CAB !important;
}

section.loc-services .loc-card-arrow{
    width:40px !important;
    height:40px !important;
    border-color:rgba(255,170,24,.45) !important;
    background:rgba(255,170,24,.035) !important;
}

section.loc-services .loc-card-icon{
    margin-top:62px !important;
}

section.loc-services .loc-service-card h3{
    margin:18px 0 11px !important;
line-height:1.28 !important;
    letter-spacing:-.3px !important;
}

section.loc-services .loc-card-description{
    color:#C1B9C5 !important;
line-height:1.72 !important;
}

section.loc-services .loc-card-bottom{
    color:#FFB52F !important;
    border-top-color:rgba(255,255,255,.12) !important;
}

section.loc-services .loc-service-card::before{
    opacity:.92 !important;
}

section.loc-services .loc-service-card:hover .loc-card-number,
section.loc-services .loc-service-card:hover .loc-card-description,
section.loc-services .loc-service-card:hover .loc-card-bottom{
    color:#3C3441 !important;
}

/* ---------- BENEFITS ---------- */

section.loc-benefits{
    padding:118px 0 125px !important;
    background:
        radial-gradient(circle at 100% 0%,rgba(255,170,24,.09),transparent 22%),
        #FBF8F2 !important;
}

section.loc-benefits .loc-benefit-header{
    grid-template-columns:1fr .48fr !important;
    gap:75px !important;
    margin-bottom:48px !important;
}

section.loc-benefits .loc-benefit-intro p{
    color:#625A66 !important;
}

section.loc-benefits .loc-benefits-grid{
    gap:14px !important;
}

section.loc-benefits .loc-benefit-card{
    min-height:275px !important;
    padding:27px !important;
    border-radius:14px !important;
    border:1px solid #E5DDD1 !important;
    box-shadow:0 8px 25px rgba(16,9,26,.025) !important;
    overflow:hidden !important;
    background:#FFFFFF !important;
}

section.loc-benefits .loc-benefit-card:nth-child(2n){
    background:#FFF7E8 !important;
}

section.loc-benefits .loc-benefit-card:nth-child(3n){
    background:#F6F0FA !important;
}

section.loc-benefits .loc-benefit-card:nth-child(4n){
    background:#F4F7F5 !important;
}

section.loc-benefits .loc-benefit-card:nth-child(5n){
    background:#FFF1D9 !important;
}

section.loc-benefits .loc-benefit-card:nth-child(6n){
    background:#F4F1F7 !important;
}

section.loc-benefits .loc-benefit-card::after{
    content:"";
    position:absolute;
    right:-55px;
    bottom:-70px;
    width:145px;
    height:145px;
    border:1px solid rgba(255,170,24,.18);
    border-radius:50%;
    pointer-events:none;
}

section.loc-benefits .loc-benefit-card:hover{
    transform:translateY(-8px) !important;
    border-color:#FFAA18 !important;
    box-shadow:0 25px 55px rgba(16,9,26,.10) !important;
}

section.loc-benefits .loc-benefit-card h3{
    margin:52px 0 16px !important;
    color:#000000 !important;
line-height:1.3 !important;
}

section.loc-benefits .loc-benefit-card p{
    color:#5D5662 !important;
line-height:1.72 !important;
}

section.loc-benefits .loc-benefit-icon{
    width:39px !important;
    height:39px !important;
    border-radius:10px !important;
    background:#FFAA18 !important;
    color:#000000 !important;
    box-shadow:0 8px 18px rgba(255,170,24,.18) !important;
}

section.loc-benefits .loc-benefit-number{
    color:#AFA5B3 !important;
}

/* ---------- FAQ ---------- */

section.loc-faq{
    padding:118px 0 !important;
    background:#fff !important;
}

section.loc-faq .loc-faq-grid{
    grid-template-columns:1.03fr .97fr !important;
    gap:90px !important;
    align-items:center !important;
}

section.loc-faq .loc-faq-intro{
    max-width:620px !important;
    color:#5D5662 !important;
line-height:1.78 !important;
}

section.loc-faq .loc-faq-item{
    border-color:#E4DDE7 !important;
}

section.loc-faq .loc-faq-question{
    min-height:58px !important;
    color:#2B2430 !important;
font-weight:700 !important;
}

section.loc-faq .loc-faq-answer{
    color:#5D5662 !important;
line-height:1.75 !important;
}

section.loc-faq .loc-faq-visual{
    min-height:555px !important;
}

section.loc-faq .loc-faq-image{
    width:86% !important;
    height:520px !important;
    border-radius:20px !important;
    box-shadow:0 30px 80px rgba(16,9,26,.15) !important;
}

section.loc-faq .loc-faq-location-card{
    right:-2px !important;
    bottom:58px !important;
    padding:14px 17px !important;
    border-radius:12px !important;
    box-shadow:0 22px 55px rgba(16,9,26,.24) !important;
}

section.loc-faq .loc-faq-stamp{
    right:-12px !important;
    top:34px !important;
    width:100px !important;
    height:100px !important;
    background:rgba(255,255,255,.94) !important;
    box-shadow:0 15px 35px rgba(16,9,26,.07) !important;
}

/* ---------- EXISTING CONTACT + NEWS HANDOFF ----------
   We can't see their partial markup here, so keep them intact,
   but create a cleaner transition around the custom sections.
------------------------------------------------------------- */

section.loc-faq + *{
    margin-top:0 !important;
}

/* ---------- RESPONSIVE ---------- */

@media (max-width:1100px){
    section.loc-hero{
        padding-top:115px !important;
    }

    section.loc-hero .loc-hero-grid{
        grid-template-columns:1fr 1fr !important;
        gap:42px !important;
    }

    section.loc-hero .loc-hero-title{
letter-spacing:-0.6px !important;
    }

    section.loc-hero .loc-hero-visual{
        height:545px !important;
    }

    section.loc-hero .loc-hero-main-image{
        height:480px !important;
    }

    section.loc-about .loc-about-grid{
        gap:58px !important;
    }
}

@media (max-width:991px){
    section.loc-hero{
        padding:96px 0 88px !important;
    }

    section.loc-hero .loc-hero-grid,
    section.loc-about .loc-about-grid,
    section.loc-faq .loc-faq-grid{
        grid-template-columns:1fr !important;
    }

    section.loc-hero .loc-hero-content{
        max-width:760px !important;
    }

    section.loc-hero .loc-hero-visual{
        max-width:720px !important;
        margin:16px auto 0 !important;
    }

    section.loc-about .loc-about-visual,
    section.loc-faq .loc-faq-visual{
        max-width:680px !important;
        margin:0 auto !important;
    }

    section.loc-services .loc-section-head,
    section.loc-benefits .loc-benefit-header{
        grid-template-columns:1fr !important;
        gap:24px !important;
    }

    section.loc-services .loc-services-grid,
    section.loc-benefits .loc-benefits-grid{
        grid-template-columns:repeat(2,1fr) !important;
    }

    section.loc-faq .loc-faq-grid{
        gap:55px !important;
    }
}

@media (max-width:767px){
    section.loc-hero .loc-container,
    section.loc-about .loc-container,
    section.loc-services .loc-container,
    section.loc-benefits .loc-container,
    section.loc-faq .loc-container{
        padding-left:20px !important;
        padding-right:20px !important;
    }

    section.loc-hero{
        padding:82px 0 74px !important;
    }

    section.loc-hero .loc-hero-title{
letter-spacing:-0.5px !important;
    }

    section.loc-hero .loc-hero-description{
line-height:1.72 !important;
    }

    section.loc-hero .loc-hero-actions{
        flex-wrap:wrap !important;
    }

    section.loc-hero .loc-hero-visual{
        height:430px !important;
    }

    section.loc-hero .loc-hero-main-image{
        width:84% !important;
        height:385px !important;
        border-radius:17px !important;
    }

    section.loc-hero .loc-image-backdrop{
        width:78% !important;
        height:370px !important;
    }

    section.loc-hero .loc-hero-small-image{
        width:46% !important;
        height:140px !important;
        border-radius:13px !important;
    }

    section.loc-hero .loc-growth-card{
        transform:scale(.82) !important;
        transform-origin:left top !important;
    }

    section.loc-hero .loc-floating-card{
        right:0 !important;
        bottom:42px !important;
        min-width:205px !important;
    }

    section.loc-about,
    section.loc-services,
    section.loc-benefits,
    section.loc-faq{
        padding:82px 0 !important;
    }

    section.loc-about .loc-about-visual{
        min-height:430px !important;
    }

    section.loc-about .loc-about-image{
        height:400px !important;
    }

    section.loc-about .loc-section-title,
    section.loc-benefits .loc-section-title,
    section.loc-faq .loc-section-title{
letter-spacing:-0.5px !important;
    }

    section.loc-about .loc-section-description{
}

    section.loc-about .loc-services-list{
        grid-template-columns:1fr !important;
    }

    section.loc-services .loc-section-title{
}

    section.loc-services .loc-services-grid,
    section.loc-benefits .loc-benefits-grid{
        grid-template-columns:1fr !important;
    }

    section.loc-services .loc-service-card{
        min-height:330px !important;
    }

    section.loc-benefits .loc-benefit-card{
        min-height:245px !important;
    }

    section.loc-faq .loc-faq-visual{
        min-height:420px !important;
    }

    section.loc-faq .loc-faq-image{
        width:88% !important;
        height:390px !important;
    }
}

@media (max-width:575px){
    section.loc-hero .loc-hero-actions{
        flex-direction:column !important;
        align-items:stretch !important;
    }

    section.loc-hero .loc-btn{
        width:100% !important;
    }

    section.loc-hero .loc-hero-trust{
        justify-content:space-between !important;
        gap:8px !important;
    }

    section.loc-hero .loc-hero-visual{
        height:355px !important;
    }

    section.loc-hero .loc-hero-main-image{
        height:320px !important;
    }

    section.loc-hero .loc-hero-small-image{
        height:112px !important;
    }

    section.loc-hero .loc-floating-card{
        bottom:22px !important;
        transform:scale(.88) !important;
        transform-origin:right bottom !important;
    }

    section.loc-about .loc-about-visual{
        min-height:355px !important;
    }

    section.loc-about .loc-about-image{
        height:335px !important;
    }

    section.loc-about .loc-about-badge{
        right:-4px !important;
        bottom:23px !important;
        transform:scale(.88) !important;
        transform-origin:right bottom !important;
    }

    section.loc-about .loc-section-title,
    section.loc-benefits .loc-section-title,
    section.loc-faq .loc-section-title{
}

    section.loc-services .loc-section-title{
}

    section.loc-faq .loc-faq-visual{
        min-height:355px !important;
    }

    section.loc-faq .loc-faq-image{
        height:330px !important;
    }

    section.loc-faq .loc-faq-location-card{
        bottom:22px !important;
    }
}

@media (prefers-reduced-motion:reduce){
    section.loc-hero *,
    section.loc-about *,
    section.loc-services *,
    section.loc-benefits *,
    section.loc-faq *{
        scroll-behavior:auto !important;
        transition:none !important;
    }
}


/* =========================================================
   OUR EXPERTISE – CARD LAYOUT IMPROVEMENT
   Title moved higher + more content space
========================================================= */

section.loc-services .loc-service-card{
    display:flex !important;
    flex-direction:column !important;
    min-height:390px !important;
    padding:30px !important;
    background:
        linear-gradient(145deg, #000000 0%, #18111F 100%) !important;
    border:1px solid rgba(207,155,57,.22) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035),
               0 18px 45px rgba(10,6,14,.16) !important;
}

/* subtle variation without blue tones */
section.loc-services .loc-service-card:nth-child(2n){
    background:
        linear-gradient(145deg, #2A1C31 0%, #1A111F 100%) !important;
}

section.loc-services .loc-service-card:nth-child(3n){
    background:
        linear-gradient(145deg, #21142A 0%, #160F1B 100%) !important;
}

/* top row */
section.loc-services .loc-card-top{
    order:1 !important;
    margin-bottom:0 !important;
}

section.loc-services .loc-card-number{
    color:#C9A34A !important;
}

section.loc-services .loc-card-arrow{
    border-color:rgba(207,155,57,.48) !important;
    background:rgba(207,155,57,.06) !important;
    color:#D9AE4B !important;
}

/* TITLE NOW COMES DIRECTLY BELOW NUMBER AREA */
section.loc-services .loc-service-card h3{
    order:2 !important;
    margin:28px 0 0 !important;
    color:#F6F1E8 !important;
}

/* icon moved below title so the title stays high */
section.loc-services .loc-card-icon{
    order:3 !important;
    margin-top:22px !important;
    color:#D9AE4B !important;
}

/* description gets more usable space */
section.loc-services .loc-card-description{
    order:4 !important;
    margin-top:16px !important;
    color:#C9C0CC !important;
    flex:1 1 auto !important;
}

/* bottom stays naturally at card bottom */
section.loc-services .loc-card-bottom{
    order:5 !important;
    position:relative !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    margin-top:24px !important;
    padding-top:18px !important;
    color:#D9AE4B !important;
    border-top:1px solid rgba(207,155,57,.18) !important;
}

/* hover */
section.loc-services .loc-service-card:hover{
    transform:translateY(-8px) !important;
    border-color:rgba(217,174,75,.62) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.05),
        0 26px 65px rgba(10,6,14,.34) !important;
}

section.loc-services .loc-service-card:hover::before{
    background:linear-gradient(
        135deg,
        rgba(207,155,57,.16),
        rgba(91,52,105,.10)
    ) !important;
    height:100% !important;
}

section.loc-services .loc-service-card:hover .loc-card-number,
section.loc-services .loc-service-card:hover .loc-card-description,
section.loc-services .loc-service-card:hover .loc-card-bottom{
    color:#E8D5A3 !important;
}


/* =========================================================
   OUR EXPERTISE - FINAL DESIGN
   Light Golden Section + Dark Purple Cards
========================================================= */

section.loc-services {
    background: #FFF6E5 !important;
    color: #000000 !important;
}

section.loc-services .loc-section-title {
    color: #000000 !important;
}

section.loc-services .loc-section-title span {
    color: #B8861B !important;
}

section.loc-services .loc-section-label {
    color: #B8861B !important;
}

section.loc-services .loc-section-label span {
    background: #B8861B !important;
}

section.loc-services .loc-head-description p {
    color: #6E6572 !important;
}

section.loc-services .loc-head-index {
    color: #B8861B !important;
}

/* CARDS */
section.loc-services .loc-service-card {
    background: linear-gradient(145deg, #281A31 0%, #17101D 100%) !important;
    border-color: rgba(184, 134, 27, 0.28) !important;
}

section.loc-services .loc-card-number {
    color: #D4A843 !important;
}

section.loc-services .loc-card-arrow {
    color: #D4A843 !important;
    border-color: rgba(212, 168, 67, 0.45) !important;
    background: rgba(212, 168, 67, 0.06) !important;
}

section.loc-services .loc-card-icon {
    color: #D4A843 !important;
}

/* TEXT ALWAYS LIGHT */
section.loc-services .loc-service-card h3,
section.loc-services .loc-service-card:hover h3 {
    color: #FFF8EA !important;
}

section.loc-services .loc-card-description,
section.loc-services .loc-service-card:hover .loc-card-description,
section.loc-services .loc-card-description p,
section.loc-services .loc-service-card:hover .loc-card-description p {
    color: #CFC5D1 !important;
}

section.loc-services .loc-card-bottom,
section.loc-services .loc-service-card:hover .loc-card-bottom {
    color: #D4A843 !important;
    border-top-color: rgba(212, 168, 67, 0.18) !important;
}

/* HOVER */
section.loc-services .loc-service-card:hover {
    transform: translateY(-8px) !important;
    background: linear-gradient(145deg, #33203D 0%, #1E1425 100%) !important;
    border-color: #C99A35 !important;
}

/* Keep overlay subtle and behind content */
section.loc-services .loc-service-card::before {
    background: transparent !important;
}

section.loc-services .loc-service-card:hover::before {
    height: 100% !important;
    background: linear-gradient(
        135deg,
        rgba(201, 154, 53, 0.10),
        rgba(92, 53, 110, 0.12)
    ) !important;
}

section.loc-services .loc-card-top,
section.loc-services .loc-card-icon,
section.loc-services .loc-service-card h3,
section.loc-services .loc-card-description,
section.loc-services .loc-card-bottom {
    position: relative !important;
    z-index: 2 !important;
}


/* --------------------------------------------------------
   GENERIC PAGE (page-generic.blade.php)
-------------------------------------------------------- */
html { scroll-behavior: smooth; }

    .legal-toc-sticky { position: sticky; top: 110px; }
    .legal-toc-card {
      background: #F8F8FA !important;
      border: 1px solid #EBEBEF !important;
      border-radius: 16px !important;
      padding: 26px 24px !important;
      box-shadow: 0 6px 20px -8px rgba(20,20,30,.08) !important;
    }
    .legal-toc-heading {
      font-size: 12px !important; font-weight: 700 !important; letter-spacing: .06em !important;
      text-transform: uppercase !important; color: #9a9aa5 !important; margin-bottom: 16px !important;
    }
    .legal-toc-list { list-style: none !important; padding: 0 !important; margin: 0 !important; }
    .legal-toc-list li { margin-bottom: 3px !important; }
    .legal-toc-list a.toc-link {
      display: flex !important; align-items: center !important;
      padding: 10px 12px !important; border-radius: 9px !important;
      color: #4a4a55 !important; text-decoration: none !important;
      font-size: 14px !important; font-weight: 500 !important;
      transition: background .15s ease, color .15s ease !important;
      border: 1px solid transparent !important;
    }
    .legal-toc-list a.toc-link .toc-dot {
      width: 5px; height: 5px; border-radius: 50%; background: #d4d4dc;
      display: inline-block; margin-right: 10px; flex-shrink: 0; transition: background .15s ease;
    }
    .legal-toc-list a.toc-link:hover {
      background: #fff !important; color: var(--theme-color1, #ffaa17) !important;
      border-color: #EDEDF2 !important;
    }
    .legal-toc-list a.toc-link.active {
      background: #fff !important; color: var(--theme-color1, #ffaa17) !important;
      border-color: #EDEDF2 !important; font-weight: 700 !important;
      box-shadow: 0 4px 12px -4px rgba(0,0,0,.08) !important;
    }
    .legal-toc-list a.toc-link.active .toc-dot,
    .legal-toc-list a.toc-link:hover .toc-dot { background: var(--theme-color1, #ffaa17); }

    .legal-block { margin-bottom: 46px; scroll-margin-top: 110px; }
    .legal-block:last-child { margin-bottom: 0; }

    /* Normalize pasted content (Word/Docs/AI text often carries inline
       colors/fonts) so the page always looks consistent no matter what
       was pasted into the admin editor. */
    .legal-content .text,
    .legal-content .text * {
      color: #55555f !important;
      font-family: inherit !important;
      background: transparent !important;
      font-size: 15px !important;
      line-height: 1.85 !important;
    }
    .legal-content .text a { color: var(--theme-color1, #ffaa17) !important; text-decoration: underline !important; }
    .legal-content .text strong, .legal-content .text b { color: #1a1a22 !important; font-weight: 700 !important; }
    .legal-content .text ul, .legal-content .text ol { padding-left: 20px !important; margin: 14px 0 !important; }
    .legal-content .text p { margin-bottom: 14px !important; }
    .legal-content .text p:last-child { margin-bottom: 0 !important; }


/* --------------------------------------------------------
   SERVICE PAGE (service.blade.php)
-------------------------------------------------------- */
/* =========================================================
   ROOT
========================================================= */

:root {

    --p-purple: #000000;
    --p-purple-2: #1A1A1A;
    --p-purple-3: #2B2B2B;

    --p-gold: #ffab18;
    --p-gold-light: #ffd477;

    --p-white: #ffffff;
    --p-cream: #fffaf2;

    --p-text: #5d5665;
    --p-text-dark: #3e3747;
    --p-dark-text: #000000;

    --p-light-text: #aaa1b3;

    --p-border: #e5dfe7;

}



/* =========================================================
   GLOBAL
========================================================= */

.premium-service-hero,
.premium-about,
.premium-services,
.premium-benefits,
.premium-process,
.premium-faq {

    position: relative;
    overflow: hidden;

}


.premium-container {

    width: 100%;
    max-width: 1320px;

    margin: 0 auto;

    padding-left: 35px;
    padding-right: 35px;

}


.premium-service-hero img,
.premium-about img,
.premium-services img,
.premium-benefits img,
.premium-process img,
.premium-faq img {

    max-width: 100%;

}



/* =========================================================
   HERO
========================================================= */

.premium-service-hero {

    min-height: 820px;

    display: flex;
    align-items: center;

    padding: 135px 0 80px;

    background:
        radial-gradient(
            circle at 82% 20%,
            rgba(255,171,24,.12),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #fffdf9 52%,
            #f7f1fb 100%
        );

}


.hero-grid {

    position: absolute;

    inset: 0;

    opacity: .42;

    background-image:
        linear-gradient(
            rgba(18,11,32,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(18,11,32,.045) 1px,
            transparent 1px
        );

    background-size: 65px 65px;

    mask-image: linear-gradient(
        to bottom,
        black,
        transparent 95%
    );

}


.hero-glow {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

}


.hero-glow-1 {

    width: 600px;
    height: 600px;

    right: -280px;
    top: -220px;

    background: rgba(255,171,24,.10);

}


.hero-glow-2 {

    width: 500px;
    height: 500px;

    left: -300px;
    bottom: -300px;

    background: rgba(93,61,134,.08);

}


.hero-circle {

    position: absolute;

    border: 1px solid rgba(255,171,24,.30);

    border-radius: 50%;

}


.hero-circle-1 {

    width: 180px;
    height: 180px;

    right: 30px;
    top: 55px;

}


.hero-circle-2 {

    width: 105px;
    height: 105px;

    right: 75px;
    top: 92px;

}



/* =========================================================
   HERO LAYOUT
========================================================= */

.hero-layout {

    position: relative;

    z-index: 5;

    display: grid;

    grid-template-columns:
        minmax(0, 1.02fr)
        minmax(0, .98fr);

    gap: 75px;

    align-items: center;

}


.hero-content {

    max-width: 680px;

}


.premium-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 11px;

    padding: 9px 16px;

    border: 1px solid rgba(255,171,24,.42);

    border-radius: 50px;

    color: var(--p-purple);

    background: rgba(255,255,255,.86);

    box-shadow:
        0 8px 30px rgba(18,11,32,.04);

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1.2px;

    text-transform: uppercase;

}


.eyebrow-dot {

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: var(--p-gold);

    box-shadow:
        0 0 0 5px rgba(255,171,24,.12);

}


.hero-title {

    margin: 24px 0 22px;

    max-width: 670px;

    color: var(--p-purple);

    font-size: clamp(32px, 3.6vw, 40px);

    line-height: 1.18;

    letter-spacing: -1.2px;

    font-weight: 800;

}


.hero-description {

    max-width: 610px;

    color: #514a59;

    font-size: 15px;

    line-height: 1.8;

}


.hero-description p {

    margin: 0 0 10px;

}


.hero-buttons {

    display: flex;

    flex-wrap: wrap;

    gap: 12px;

    margin-top: 30px;

}


.premium-btn {

    min-height: 52px;

    padding: 0 21px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    border-radius: 6px;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: .65px;

    text-transform: uppercase;

    transition: all .35s ease;

}


.premium-btn-primary {

    color: var(--p-purple);

    background: var(--p-gold);

    border: 1px solid var(--p-gold);

    box-shadow:
        0 12px 30px rgba(255,171,24,.23);

}


.premium-btn-primary:hover {

    color: #fff;

    background: var(--p-purple);

    border-color: var(--p-purple);

    transform: translateY(-3px);

}


.premium-btn-secondary {

    color: var(--p-purple);

    background: rgba(255,255,255,.80);

    border: 1px solid rgba(18,11,32,.17);

}


.premium-btn-secondary:hover {

    color: var(--p-purple);

    background: #fff;

    border-color: var(--p-gold);

    transform: translateY(-3px);

}


.hero-trust {

    display: flex;

    flex-wrap: wrap;

    gap: 25px;

    margin-top: 38px;

    padding-top: 21px;

    border-top: 1px solid rgba(18,11,32,.10);

}


.trust-item {

    display: flex;

    align-items: center;

    gap: 8px;

}


.trust-item strong {

    color: var(--p-gold);

    font-size: 11px;

}


.trust-item span {

    color: #5f5867;

    font-size: 10px;

    font-weight: 700;

}



/* =========================================================
   HERO VISUAL
========================================================= */

.hero-visual {

    position: relative;

    min-height: 600px;

}


.hero-main-image {

    position: absolute;

    top: 0;
    right: 0;

    width: 78%;
    height: 520px;

    overflow: hidden;

    border-radius: 20px;

    background: #eee;

    box-shadow:
        0 30px 75px rgba(25,15,40,.17);

}


.hero-main-image img {

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .7s ease;

}


.hero-visual:hover .hero-main-image img {

    transform: scale(1.035);

}


.hero-small-image {

    position: absolute;

    left: 0;
    bottom: 5px;

    width: 43%;
    height: 215px;

    padding: 8px;

    background: #fff;

    border-radius: 15px;

    box-shadow:
        0 22px 50px rgba(25,15,40,.17);

    z-index: 4;

}


.hero-small-image img {

    width: 100%;
    height: 100%;

    object-fit: cover;

    border-radius: 9px;

}


.hero-floating-card {

    position: absolute;

    right: -15px;
    bottom: 100px;

    z-index: 6;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 13px 17px;

    color: #fff;

    background: var(--p-purple);

    border-radius: 9px;

    box-shadow:
        0 18px 45px rgba(18,11,32,.23);

    animation: floatingCard 4s ease-in-out infinite;

}


@keyframes floatingCard {

    0%,100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-7px);
    }

}


.floating-icon {

    width: 40px;
    height: 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: var(--p-gold);

    border-radius: 7px;

}


.hero-floating-card small {

    display: block;

    color: #c2b8cb;

    font-size: 8px;

    letter-spacing: 1.1px;

}


.hero-floating-card strong {

    display: block;

    margin-top: 3px;

    font-size: 11px;

}


.hero-orbit {

    position: absolute;

    border: 1px solid rgba(255,171,24,.30);

    border-radius: 50%;

    pointer-events: none;

}


.hero-orbit-1 {

    width: 115px;
    height: 115px;

    left: -20px;
    top: -45px;

}


.hero-orbit-2 {

    width: 185px;
    height: 185px;

    left: -55px;
    top: -80px;

}


.hero-number {

    position: absolute;

    right: 8%;
    top: -25px;

    display: flex;

    flex-direction: column;

    align-items: flex-end;

    z-index: 7;

}


.hero-number strong {

    color: var(--p-gold);

    font-size: 48px;

    line-height: .9;

    font-weight: 900;

    letter-spacing: -3px;

}


.hero-number span {

    margin-top: 8px;

    color: #625a69;

    font-size: 7px;

    line-height: 1.5;

    font-weight: 800;

    letter-spacing: 1.5px;

    text-align: right;

}



/* =========================================================
   COMMON TITLES
========================================================= */

.section-label {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 14px;

    color: #e99a00;

    font-size: 10px;

    font-weight: 850;

    letter-spacing: 1.35px;

    text-transform: uppercase;

}


.section-label > span {

    width: 27px;
    height: 2px;

    background: var(--p-gold);

}


.section-label-light {

    color: #b87900 !important;

}


.section-label-light > span {

    background: var(--p-gold);

}


.section-title {

    margin: 0;

    color: var(--p-purple);

    font-size: clamp(30px, 3.2vw, 40px);

    line-height: 1.15;

    letter-spacing: -1.2px;

    font-weight: 800;

}


.section-title span {

    display: inline;

    color: #e79b0c;

}



/* =========================================================
   ABOUT
========================================================= */

.premium-about {

    padding: 115px 0;

    background: #fff;

}


.about-bg-circle {

    position: absolute;

    width: 500px;
    height: 500px;

    left: -300px;
    bottom: -250px;

    border-radius: 50%;

    background: rgba(93,61,134,.045);

}


.about-layout {

    display: grid;

    grid-template-columns: .92fr 1.08fr;

    gap: 85px;

    align-items: center;

}


.about-visual {

    position: relative;

    min-height: 570px;

}


.about-image {

    width: 88%;
    height: 535px;

    overflow: hidden;

    border-radius: 20px;

    box-shadow:
        0 27px 65px rgba(25,15,40,.13);

}


.about-image img {

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .7s ease;

}


.about-visual:hover .about-image img {

    transform: scale(1.035);

}


.about-image-decoration {

    position: absolute;

    width: 165px;
    height: 165px;

    right: 0;
    top: 10px;

    border: 1px solid rgba(255,171,24,.45);

    border-radius: 50%;

}


.about-badge {

    position: absolute;

    right: 0;
    bottom: 70px;

    z-index: 4;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 15px 18px;

    color: #fff;

    background: var(--p-purple);

    border-radius: 10px;

    box-shadow:
        0 18px 45px rgba(18,11,32,.21);

}


.about-badge-icon {

    width: 40px;
    height: 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: var(--p-gold);

    border-radius: 7px;

}


.about-badge small {

    display: block;

    color: #bdb3c6;

    font-size: 8px;

    letter-spacing: 1px;

}


.about-badge strong {

    display: block;

    margin-top: 3px;

    font-size: 11px;

}


.about-big-number {

    position: absolute;

    left: -5px;
    bottom: -5px;

    color: #eee7f2;

    font-size: 95px;

    line-height: 1;

    font-weight: 900;

    letter-spacing: -7px;

}


.about-content {

    max-width: 700px;

}


.section-description {

    margin-top: 22px;

    color: #504958;

    font-size: 14px;

    line-height: 1.85;

}


.section-description p {

    margin-bottom: 11px;

}



/* =========================================================
   ABOUT INFO
========================================================= */

.about-info-grid {

    display: grid;

    grid-template-columns: repeat(2,1fr);

    gap: 16px;

    margin-top: 29px;

}


.about-info-card {

    min-height: 88px;

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 16px;

    background: #fcf9fd;

    border: 1px solid #e9e1ed;

    border-radius: 11px;

    transition: .35s ease;

}


.about-info-card:hover {

    transform: translateY(-4px);

    border-color: var(--p-gold);

    box-shadow:
        0 13px 30px rgba(18,11,32,.07);

}


.info-icon {

    width: 45px;
    height: 45px;

    flex: 0 0 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: #fff0d2;

    border-radius: 8px;

    font-size: 17px;

}


.about-info-card strong {

    display: block;

    color: var(--p-purple);

    font-size: 12px;

    line-height: 1.4;

}


.about-info-card span {

    display: block;

    margin-top: 5px;

    color: #665f6d;

    font-size: 10px;

    line-height: 1.5;

}



/* =========================================================
   COUNTER
========================================================= */

.about-counter {

    display: flex;

    align-items: center;

    gap: 21px;

    margin-top: 28px;

    padding-top: 24px;

    border-top: 1px solid #e9e1ed;

}


.counter-number {

    color: var(--p-purple);

    font-size: 55px;

    line-height: .9;

    font-weight: 900;

    letter-spacing: -3px;

}


.counter-number b {

    color: var(--p-gold);

}


.counter-content strong {

    display: block;

    color: var(--p-purple);

    font-size: 12px;

}


.counter-content span {

    display: block;

    max-width: 330px;

    margin-top: 5px;

    color: #665f6d;

    font-size: 10px;

    line-height: 1.6;

}


.text-action {

    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-top: 29px;

    padding-bottom: 8px;

    color: var(--p-purple);

    border-bottom: 1px solid var(--p-gold);

    font-size: 10px;

    font-weight: 850;

    letter-spacing: .75px;

    text-transform: uppercase;

}


.text-action i {

    color: var(--p-gold);

    transition: .3s;

}


.text-action:hover i {

    transform: translateX(6px);

}



/* =========================================================
   SERVICES - LIGHT GOLDEN
========================================================= */

.premium-services {

    padding: 115px 0;

    background:
        radial-gradient(
            circle at 12% 10%,
            rgba(255,193,71,.18),
            transparent 28%
        ),
        radial-gradient(
            circle at 88% 90%,
            rgba(255,171,24,.10),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #fffaf0 0%,
            #fff4d9 52%,
            #fffaf2 100%
        );

}


.dark-glow {

    position: absolute;

    border-radius: 50%;

    pointer-events: none;

}


.dark-glow-1 {

    width: 480px;
    height: 480px;

    right: -260px;
    top: -180px;

    border: 1px solid rgba(255,171,24,.18);

}


.dark-glow-2 {

    width: 350px;
    height: 350px;

    left: -200px;
    bottom: -180px;

    background: rgba(255,171,24,.07);

}


.dark-circle {

    position: absolute;

    width: 170px;
    height: 170px;

    right: 5%;
    bottom: 10%;

    border: 1px solid rgba(255,171,24,.14);

    border-radius: 50%;

}



/* =========================================================
   SERVICES HEADER
========================================================= */

.services-header {

    display: grid;

    grid-template-columns: 1fr .55fr;

    gap: 70px;

    align-items: end;

    margin-bottom: 55px;

}


.services-header .section-label {

    color: #b87900 !important;

}


.services-header .section-label > span {

    background: var(--p-gold);

}


.services-header .section-title-light {

    color: var(--p-purple);

    text-shadow: none;

}


.services-header .section-title-light span {

    color: #d98b00;

}


.services-intro {

    display: flex;

    gap: 17px;

}


.services-intro strong {

    color: #d98b00;

    font-size: 13px;

}


.services-intro p {

    margin: 0;

    color: #5d5665;

    font-size: 13px;

    line-height: 1.8;

}



/* =========================================================
   SERVICES GRID
========================================================= */

.services-grid {

    display: grid;

    grid-template-columns: repeat(3,1fr);

    gap: 17px;

    position: relative;

    z-index: 2;

}



/* =========================================================
   SERVICE CARD
========================================================= */

.service-card {

    position: relative;

    min-height: 335px;

    padding: 25px;

    overflow: hidden;

    background: rgba(255,255,255,.78);

    border: 1px solid rgba(201,158,74,.28);

    border-radius: 15px;

    box-shadow:
        0 12px 35px rgba(91,66,24,.06);

    transition:
        transform .4s ease,
        background .4s ease,
        border-color .4s ease,
        box-shadow .4s ease;

}


/* Remove old decorative circle */

.service-card::before {

    display: none;

}


/* TOP */

.service-card-top {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;

    justify-content: space-between;

}


.service-card-top > span {

    color: #b99b63;

    font-size: 11px;

    font-weight: 800;

}


.service-card-top i {

    width: 35px;
    height: 35px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: #b87900;

    background: rgba(255,171,24,.10);

    border: 1px solid rgba(255,171,24,.35);

    border-radius: 50%;

    font-size: 10px;

    transition: .35s ease;

}



/* =========================================================
   SERVICE TITLE
========================================================= */

.service-card h3 {

    position: relative;

    z-index: 2;

    margin: 28px 0 13px;

    max-width: 100%;

    color: var(--p-purple);

    font-size: 19px;

    line-height: 1.35;

    font-weight: 800;

}



/* =========================================================
   SERVICE DESCRIPTION
========================================================= */

.service-description {

    position: relative;

    z-index: 2;

    max-width: 100%;

    color: #5d5665;

    font-size: 12px;

    line-height: 1.8;

}


.service-description p {

    margin: 0 0 8px;

}


.service-description p:last-child {

    margin-bottom: 0;

}



/* =========================================================
   SERVICE BOTTOM
========================================================= */

.service-bottom {

    position: absolute;

    left: 25px;
    right: 25px;
    bottom: 22px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-top: 14px;

    color: #8b6b2e;

    border-top: 1px solid rgba(91,66,24,.13);

    font-size: 9px;

    font-weight: 850;

    letter-spacing: .9px;

    text-transform: uppercase;

    transition: .35s ease;

}


.service-bottom i {

    transition: .35s ease;

}



/* =========================================================
   SERVICE HOVER
========================================================= */

.service-card:hover {

    transform: translateY(-9px);

    background:
        linear-gradient(
            145deg,
            #ffb52b,
            #ffd477
        );

    border-color: #ffab18;

    box-shadow:
        0 25px 55px rgba(151,104,16,.18);

}


.service-card:hover .service-card-top > span {

    color: #4b350d;

}


.service-card:hover .service-description {

    color: #3b2b0c;

}


.service-card:hover h3 {

    color: #000000;

}


.service-card:hover .service-bottom {

    color: #3b2b0c;

    border-color: rgba(23,17,38,.18);

}


.service-card:hover .service-card-top i {

    color: #000000;

    background: rgba(255,255,255,.35);

    border-color: rgba(23,17,38,.25);

    transform: rotate(45deg);

}


.service-card:hover .service-bottom i {

    color: #000000;

    transform: translateX(5px);

}



/* =========================================================
   BENEFITS
========================================================= */

.premium-benefits {

    padding: 115px 0;

    background:
        linear-gradient(
            180deg,
            #fffaf2,
            #fff
        );

}


.benefits-glow {

    position: absolute;

    width: 400px;
    height: 400px;

    right: -250px;
    top: -200px;

    border: 1px solid rgba(255,171,24,.18);

    border-radius: 50%;

}


.benefits-header {

    display: grid;

    grid-template-columns: 1fr .48fr;

    gap: 65px;

    align-items: end;

    margin-bottom: 55px;

}


.benefits-intro {

    display: flex;

    gap: 17px;

}


.benefits-intro strong {

    color: #e99a00;

    font-size: 13px;

}


.benefits-intro p {

    margin: 0;

    color: #504958;

    font-size: 13px;

    line-height: 1.8;

}


.benefits-grid {

    display: grid;

    grid-template-columns: repeat(3,1fr);

    gap: 17px;

}


.benefit-card {

    position: relative;

    min-height: 280px;

    padding: 27px;

    overflow: hidden;

    background: #fff;

    border: 1px solid #e6ded3;

    border-radius: 15px;

    transition: .4s ease;

}


.benefit-card:hover {

    transform: translateY(-8px);

    border-color: var(--p-gold);

    box-shadow:
        0 22px 50px rgba(18,11,32,.10);

}


.benefit-top {

    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;

    justify-content: space-between;

}


.benefit-icon {

    width: 50px;
    height: 50px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: #fff0d2;

    border-radius: 9px;

    font-size: 18px;

}


.benefit-top > span {

    color: #ddd4c8;

    font-size: 29px;

    font-weight: 900;

}


.benefit-card h3 {

    position: relative;

    z-index: 2;

    margin: 29px 0 14px;

    color: var(--p-purple);

    font-size: 19px;

    line-height: 1.3;

    font-weight: 800;

}


.benefit-line {

    position: relative;

    z-index: 2;

    width: 36px;
    height: 3px;

    margin-bottom: 15px;

    background: var(--p-gold);

}


.benefit-description {

    position: relative;

    z-index: 2;

    color: #514a59;

    font-size: 12px;

    line-height: 1.8;

}


.benefit-hover-circle {

    position: absolute;

    width: 170px;
    height: 170px;

    right: -100px;
    bottom: -100px;

    border-radius: 50%;

    background: rgba(255,171,24,.08);

    transition: .5s ease;

}


.benefit-card:hover .benefit-hover-circle {

    transform: scale(1.7);

}



/* =========================================================
   PROCESS
========================================================= */

.premium-process {

    padding: 115px 0;

    background:
        radial-gradient(
            circle at 15% 15%,
            rgba(117,76,164,.27),
            transparent 28%
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(255,171,24,.09),
            transparent 24%
        ),
        linear-gradient(
            135deg,
            #0d0817,
            #1a1028,
            #0b0712
        );

}


.process-glow {

    position: absolute;

    border-radius: 50%;

}


.process-glow-1 {

    width: 500px;
    height: 500px;

    left: -350px;
    top: 20%;

    border: 1px solid rgba(255,171,24,.10);

}


.process-glow-2 {

    width: 350px;
    height: 350px;

    right: -220px;
    bottom: -180px;

    background: rgba(93,61,134,.10);

}


.process-header {

    max-width: 750px;

    margin-bottom: 75px;

}


.process-header .section-title-light {

    color: #fff;

}


.process-header .section-title-light span {

    color: #ffb52c;

}


.process-header p {

    max-width: 650px;

    margin: 20px 0 0;

    color: #d3cadc;

    font-size: 13px;

    line-height: 1.8;

}


.process-grid {

    display: grid;

    grid-template-columns: repeat(4,1fr);

    gap: 40px;

}


.process-item {

    position: relative;

    text-align: center;

}


.process-connector {

    position: absolute;

    top: 92px;

    left: calc(50% + 92px);

    width: calc(100% - 90px);

    height: 1px;

    background:
        linear-gradient(
            90deg,
            rgba(255,171,24,.65),
            rgba(255,255,255,.16)
        );

}


.process-connector::after {

    content: "";

    position: absolute;

    right: 0;
    top: -2px;

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--p-gold);

}


.process-circle {

    position: relative;

    width: 180px;
    height: 180px;

    margin: 0 auto;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px dashed rgba(255,255,255,.28);

    border-radius: 50%;

    transition: .45s ease;

}


.process-circle::before {

    content: "";

    position: absolute;

    inset: 18px;

    border: 1px dashed rgba(255,171,24,.42);

    border-radius: 50%;

}


.process-circle::after {

    content: "";

    position: absolute;

    inset: -10px;

    border: 1px solid rgba(255,171,24,.07);

    border-radius: 50%;

}


.process-inner-circle {

    position: relative;

    z-index: 2;

    width: 102px;
    height: 102px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: rgba(255,255,255,.025);

}


.process-inner-circle i {

    color: #ffbd43;

    font-size: 34px;

    transition: .4s;

}


.process-number {

    position: absolute;

    left: 5px;
    top: 8px;

    z-index: 5;

    width: 40px;
    height: 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: var(--p-gold);

    border-radius: 50%;

    font-size: 10px;

    font-weight: 900;

    box-shadow:
        0 8px 20px rgba(255,171,24,.20);

}


.process-item:hover .process-circle {

    transform: translateY(-8px) scale(1.025);

    border-color: var(--p-gold);

    background: rgba(255,171,24,.04);

}


.process-item:hover .process-inner-circle i {

    transform: scale(1.15);

}


.process-item h3 {

    position: relative;

    margin: 28px 0 12px;

    color: #ffffff;

    font-size: 17px;

    line-height: 1.35;

    font-weight: 800;

}


.process-description {

    max-width: 250px;

    margin: auto;

    color: #c9c0d0;

    font-size: 11px;

    line-height: 1.8;

}



/* =========================================================
   FAQ
========================================================= */

.premium-faq {

    padding: 115px 0;

    background: #fff;

}


.faq-circle-bg {

    position: absolute;

    width: 550px;
    height: 550px;

    right: -300px;
    top: -250px;

    border: 1px solid rgba(255,171,24,.18);

    border-radius: 50%;

}


.faq-layout {

    display: grid;

    grid-template-columns: 1.05fr .95fr;

    gap: 85px;

    align-items: center;

}


.faq-content {

    max-width: 700px;

}


.faq-intro {

    margin: 21px 0 35px;

    color: #514a59;

    font-size: 13px;

    line-height: 1.8;

}


.faq-accordion {

    border-top: 1px solid #e5dfe7;

}


.faq-item {

    border-bottom: 1px solid #e5dfe7;

}


.faq-question {

    width: 100%;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    padding: 21px 0;

    color: var(--p-purple);

    background: transparent;

    border: 0;

    text-align: left;

    cursor: pointer;

    font-size: 13px;

    line-height: 1.5;

    font-weight: 800;

}


.faq-question i {

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: #fff1d5;

    border-radius: 50%;

    font-size: 9px;

    transition: .35s;

}


.faq-item.active .faq-question i {

    background: var(--p-gold);

    transform: rotate(45deg);

}


.faq-answer {

    display: grid;

    grid-template-rows: 0fr;

    overflow: hidden;

    transition: .4s ease;

}


.faq-answer > div {

    min-height: 0;

    color: #514a59;

    font-size: 12px;

    line-height: 1.8;

}


.faq-item.active .faq-answer {

    grid-template-rows: 1fr;

}


.faq-item.active .faq-answer > div {

    padding-bottom: 21px;

}



/* =========================================================
   FAQ VISUAL
========================================================= */

.faq-visual {

    position: relative;

    min-height: 540px;

}


.faq-image {

    width: 83%;

    height: 500px;

    margin-left: auto;

    overflow: hidden;

    border-radius: 20px;

    background: #f7f2f8;

    box-shadow:
        0 28px 65px rgba(18,11,32,.10);

}


.faq-image img {

    width: 100%;
    height: 100%;

    display: block;

    object-fit: contain;

}


.faq-location-card {

    position: absolute;

    left: 0;
    bottom: 60px;

    z-index: 4;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 15px 18px;

    color: #fff;

    background: var(--p-purple);

    border-radius: 9px;

    box-shadow:
        0 18px 45px rgba(18,11,32,.20);

}


.faq-location-icon {

    width: 39px;
    height: 39px;

    display: flex;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: var(--p-gold);

    border-radius: 7px;

}


.faq-location-card small {

    display: block;

    color: #bdb3c6;

    font-size: 7px;

    letter-spacing: 1.1px;

}


.faq-location-card strong {

    display: block;

    margin-top: 3px;

    color: #fff;

    font-size: 11px;

}


.faq-stamp {

    position: absolute;

    right: 0;
    top: 20px;

    width: 100px;
    height: 100px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    color: var(--p-purple);

    background: var(--p-gold);

    border-radius: 50%;

    transform: rotate(9deg);

    z-index: 5;

    box-shadow:
        0 15px 35px rgba(255,171,24,.20);

}


.faq-stamp strong {

    font-size: 22px;

    font-weight: 900;

}


.faq-stamp span {

    margin-top: 3px;

    font-size: 7px;

    line-height: 1.35;

    font-weight: 900;

    letter-spacing: 1px;

    text-align: center;

}



/* =========================================================
   EMPTY
========================================================= */

.empty-section {

    padding: 30px;

    color: var(--p-purple);

    text-align: center;

}


.empty-dark {

    grid-column: 1 / -1;

    color: #8b7c60;

}



/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .premium-container {

        padding-left: 25px;

        padding-right: 25px;

    }


    .hero-layout {

        gap: 50px;

    }


    .about-layout,
    .faq-layout {

        gap: 55px;

    }


    .process-grid {

        gap: 25px;

    }


    .process-connector {

        width: calc(100% - 70px);

    }

}



/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .premium-service-hero {

        padding-top: 120px;

    }


    .hero-layout,
    .about-layout,
    .faq-layout {

        grid-template-columns: 1fr;

        gap: 60px;

    }


    .hero-content {

        max-width: 800px;

    }


    .hero-visual {

        max-width: 720px;

        width: 100%;

        margin: auto;

    }


    .about-visual {

        max-width: 680px;

        width: 100%;

        margin: auto;

    }


    .about-content {

        max-width: 800px;

    }


    .faq-visual {

        max-width: 680px;

        width: 100%;

        margin: auto;

    }


    .services-header,
    .benefits-header {

        grid-template-columns: 1fr;

        gap: 22px;

    }


    .services-grid,
    .benefits-grid {

        grid-template-columns: repeat(2,1fr);

    }


    .process-grid {

        grid-template-columns: repeat(2,1fr);

        row-gap: 70px;

    }


    .process-connector {

        display: none;

    }

}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .premium-container {

        padding-left: 17px;

        padding-right: 17px;

    }


    .premium-service-hero {

        min-height: auto;

        padding: 105px 0 65px;

    }


    .hero-title {

        margin-top: 20px;

        font-size: 40px;

        letter-spacing: -1.8px;

    }


    .hero-description {

        font-size: 13px;

    }


    .hero-buttons {

        flex-direction: column;

        align-items: stretch;

    }


    .premium-btn {

        width: 100%;

    }


    .hero-trust {

        gap: 13px;

    }


    .trust-item {

        width: 100%;

    }


    .hero-visual {

        min-height: 440px;

    }


    .hero-main-image {

        width: 84%;

        height: 390px;

    }


    .hero-small-image {

        width: 48%;

        height: 165px;

    }


    .hero-floating-card {

        right: 0;

        bottom: 48px;

    }


    .hero-number {

        right: 3%;

        top: -15px;

    }


    .hero-number strong {

        font-size: 39px;

    }


    .premium-about,
    .premium-services,
    .premium-benefits,
    .premium-process,
    .premium-faq {

        padding: 80px 0;

    }


    .section-title {

        font-size: 35px;

        letter-spacing: -1.2px;

    }


    .about-info-grid {

        grid-template-columns: 1fr;

    }


    .about-visual {

        min-height: 440px;

    }


    .about-image {

        width: 90%;

        height: 410px;

    }


    .about-badge {

        bottom: 42px;

    }


    .services-grid,
    .benefits-grid {

        grid-template-columns: 1fr;

    }


    .service-card {

        min-height: 315px;

        padding: 23px;

    }


    .service-card h3 {

        margin-top: 24px;

        font-size: 18px;

    }


    .service-bottom {

        left: 23px;

        right: 23px;

        bottom: 20px;

    }


    .process-grid {

        grid-template-columns: 1fr;

        row-gap: 60px;

    }


    .process-circle {

        width: 160px;

        height: 160px;

    }


    .faq-visual {

        min-height: 440px;

    }


    .faq-image {

        width: 89%;

        height: 410px;

    }

}



/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575px) {

    .premium-service-hero {

        padding-top: 95px;

    }


    .hero-title {

        font-size: 34px;

        line-height: 1.07;

    }


    .hero-description {

        font-size: 13px;

        line-height: 1.75;

    }


    .hero-visual {

        min-height: 360px;

    }


    .hero-main-image {

        height: 320px;

    }


    .hero-small-image {

        height: 125px;

    }


    .hero-floating-card {

        padding: 9px 11px;

    }


    .floating-icon {

        width: 33px;

        height: 33px;

    }


    .hero-floating-card strong {

        font-size: 10px;

    }


    .hero-circle-1 {

        width: 120px;

        height: 120px;

        right: -25px;

    }


    .hero-circle-2 {

        width: 75px;

        height: 75px;

        right: 20px;

    }


    .section-title {

        font-size: 30px;

    }


    .about-image {

        width: 88%;

        height: 340px;

    }


    .about-visual {

        min-height: 380px;

    }


    .about-badge {

        padding: 10px;

    }


    .about-badge-icon {

        width: 33px;

        height: 33px;

    }


    .counter-number {

        font-size: 43px;

    }


    .service-card {

        padding: 23px;

    }


    .benefit-card {

        min-height: 260px;

    }


    .faq-image {

        height: 340px;

    }


    .faq-visual {

        min-height: 380px;

    }


    .faq-location-card {

        bottom: 32px;

    }


    .faq-stamp {

        width: 76px;

        height: 76px;

    }


    .faq-stamp strong {

        font-size: 16px;

    }

}



/* =========================================================
   ACCESSIBILITY
========================================================= */

button,
a {

    -webkit-tap-highlight-color: transparent;

}


a {

    text-decoration: none;

}



/* =========================================================
   EXTRA CONTRAST
========================================================= */

.premium-services p,
.premium-services .service-description {

    color: #5d5665;

}


.premium-process p,
.premium-process .process-description {

    color: #d5ccdc;

}


.premium-process .section-label {

    color: #ffbf45 !important;

}


.premium-process .section-label > span {

    background: var(--p-gold);

}


.premium-process .section-title-light {

    color: #ffffff;

}


.premium-process .section-title-light span {

    color: #ffb52c;

}



/* =========================================================
   SERVICES MOBILE FINAL FIX
========================================================= */

@media (max-width: 767px) {

    .services-header {

        margin-bottom: 38px;

    }


    .services-intro {

        align-items: flex-start;

    }


    .service-card {

        min-height: 315px;

    }


    .service-card h3 {

        max-width: 95%;

    }


    .service-description {

        max-width: 95%;

    }

}

/* --------------------------------------------------------
   ADMIN-CONTROLLED BACKGROUND BANNERS (any section, any page)
   When a section's "Has background banner" checkbox is on and
   an image is set, its hero text switches to light/white so it
   stays readable over the photo + dark overlay.
-------------------------------------------------------- */
.about-hero-section.has-bg-banner .about-hero-eyebrow,
.about-hero-section.has-bg-banner .about-hero-title,
.about-hero-section.has-bg-banner .about-hero-description {
  color: #504c45 !important;
  
}
.about-hero-section.has-bg-banner .about-hero-title span {
  color: #FFAA18 !important;
}
.about-hero-section.has-bg-banner .about-hero-bg-glow,
.about-hero-section.has-bg-banner .about-hero-grid {
  display: none;
}

.premium-service-hero.has-bg-banner .hero-title,
.premium-service-hero.has-bg-banner .hero-description,
.premium-service-hero.has-bg-banner .hero-content * {
  color: #ffffff !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.45);
}

.legal-page-hero.has-bg-banner .title,
.legal-page-hero.has-bg-banner h1 {
  color: #ffffff !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.45);
}

/* --------------------------------------------------------
   FOOTER + HEADER FIXES
-------------------------------------------------------- */

/* ===== FOOTER: compact + wider About + one-line service text ===== */
.footer-style-one .widgets-section {
  padding: 60px 0 15px !important;
}
.footer-style-one .footer-widget .widget-title.style {
  font-size: 17px !important;
  margin-bottom: 16px !important;
}
.footer-style-one .about-widget .text {
  font-size: 14px !important;
  line-height: 24px !important;
  padding-top: 8px !important;
  margin-bottom: 16px !important;
  max-width: 100%;
}
.footer-style-one .user-links li {
  font-size: 14px !important;
  line-height: 22px !important;
  margin-bottom: 4px !important;
}
.footer-style-one .links-widget .user-links li a {
  display: block;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.footer-style-one .newsletter-widget .list-style-five li {
  font-size: 14px !important;
  line-height: 22px !important;
  margin-bottom: 12px !important;
}
.footer-style-one .newsletter-widget .list-style-five li i {
  font-size: 20px !important;
}
.footer-style-one .contact-social-icons {
  margin-top: 22px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.1);
}
@media (max-width: 767.98px) {
  .footer-style-one .widgets-section { padding: 40px 0 5px !important; }
}

/* ===== HEADER: logo size + sticky spacing fix ===== */
.header-style-one .header-lower .logo-box .logo img {
  max-height: 52px !important;
  width: auto !important;
}
.sticky-header .logo img {
  max-height: 42px !important;
}
.sticky-header .inner-container {
  padding: 14px 0 !important;
}
.sticky-header .main-menu .navigation > li {
  margin-left: 34px !important;
  padding: 22px 0 !important;
}
.sticky-header .header-phone_box {
  margin-right: 40px !important;
}
@media (max-width: 1199.98px) {
  .header-style-one .header-lower .logo-box .logo img {
    max-height: 44px !important;
  }
}

.header-style-one .main-menu .navigation > li > ul > li > ul {
  position: static !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  background: #f7f3ea !important;
  border-radius: 0 !important;
  display: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.header-style-one .main-menu .navigation > li > ul > li.dropdown:hover > ul {
  display: block !important;
}

.header-style-one .main-menu .navigation > li > ul > li > ul > li {
  border-bottom: 1px solid rgba(34,36,41,0.06) !important;
}
.header-style-one .main-menu .navigation > li > ul > li > ul > li:last-child {
  border-bottom: none !important;
}

.header-style-one .main-menu .navigation > li > ul > li > ul > li > a {
  margin: 0 30px 0 42px !important;
  padding: 9px 0 !important;
  font-size: 13px !important;
  color: #6a6f78 !important;
}
.header-style-one .main-menu .navigation > li > ul > li > ul > li > a:hover {
  color: #b37b20 !important;
}

/* Show an arrow on the parent item so it's clear it expands */
.header-style-one .main-menu .navigation > li > ul > li.dropdown > a:after {
  content: "\f107" !important;
  font-weight: 900 !important;
}
.header-style-one .main-menu .navigation > li > ul > li.dropdown:hover > a:after {
  content: "\f106" !important;
}

/* Mobile version — same accordion behaviour already used by theme JS,
   just make sure nested list isn't clipped either */
.mobile-menu .navigation li > ul > li > ul {
  padding-left: 15px;
}




