    /* ============================================================
   UBICUE THEME — FRONT PAGE STYLES
   assets/css/front-page.css
   ============================================================ */

/* ─────────────────────────────────────────────────────────────
   CSS CUSTOM PROPERTIES
───────────────────────────────────────────────────────────── */
:root {
  --bg-dark:       #062f31;
  --bg-darker:     #05282a;
  --accent:        #ff6a14;
  --accent-hover:  #e85b06;
  --text-white:    #ffffff;
  --text-muted:    #a9c1c1;
  --card-bg:       #073638;
  --border:        rgba(255, 255, 255, 0.14);
  --border-soft:   rgba(255, 255, 255, 0.08);
}

/* ─────────────────────────────────────────────────────────────
   GLOBAL RESET & BASE
───────────────────────────────────────────────────────────── */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--bg-dark);
  color: var(--text-white);
  /* Adelle Sans is a commercial font (Adobe Fonts / self-hosted).
     DM Sans is the Google Fonts fallback loaded in functions.php.
     Once Adelle Sans is loaded via Adobe Fonts kit, it will take
     precedence automatically. */
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
}

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

/* Custom scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--bg-dark); }
::-webkit-scrollbar-thumb {
  background: var(--accent);
  border-radius: 9999px;
}

/* Site shell */
.site-shell {
  position: relative;
  isolation: isolate;
}


/* ─────────────────────────────────────────────────────────────
   NAVBAR
───────────────────────────────────────────────────────────── */
.navbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
  background: transparent;
  transition:
    background-color 0.3s ease,
    backdrop-filter  0.3s ease,
    box-shadow       0.3s ease;
}

.navbar.scrolled {
  background: rgba(2, 17, 18, 0.58);
  backdrop-filter: blur(14px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
}

.navbar-inner {
  max-width: 1280px;
  margin: 0 auto;
  height: 92px;
  padding: 0 28px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
  transition: height 0.3s ease;
}

.navbar.scrolled .navbar-inner {
  height: 76px;
}

/* Logo */
.logo-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  flex-shrink: 0;
}

.logo-link img,
.logo-img {
  height: 64px;
  width: auto;
  display: block;
  object-fit: contain;
  margin-top: 10px;
}

/* WordPress custom-logo wrapper */
.custom-logo-link img {
  height: 104px;
  width: auto;
  margin-top: 10px;
}

/* Desktop nav */
.site-nav {
  justify-self: center;
}

.site-nav ul {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 28px;
  margin: 0;
  padding: 0;
}

/* WordPress adds <li> wrappers — reset them */
.site-nav li,
.mobile-menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav-link {
  color: #fff;
  text-decoration: none;
  font-size: 20px;
  line-height: 1;
  font-weight: 500;
  transition: color 0.2s ease;
  white-space: nowrap;
}

.nav-link:hover,
.nav-link.active,
/* WordPress current-menu-item class */
.site-nav .current-menu-item > a,
.mobile-menu .current-menu-item > a {
  color: var(--accent);
}

/* Hamburger button */
.hamburger {
  justify-self: end;
  width: 32px;
  height: 22px;
  border: 0;
  background: transparent;
  padding: 0;
  display: none;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
}

.hamburger span {
  display: block;
  height: 4px;
  background: var(--accent);
  border-radius: 9999px;
}

.hamburger span:nth-child(1),
.hamburger span:nth-child(2) {
  width: 100%;
}

.hamburger span:nth-child(3) {
  width: 70%;
  margin-left: auto;
}

/* Mobile dropdown */
.mobile-menu {
  display: none;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(0, 0, 0, 0.9);
  backdrop-filter: blur(12px);
}

.mobile-menu.open {
  display: block;
}

.mobile-menu ul {
  list-style: none;
  margin: 0;
  padding: 18px 28px 22px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}


/* ─────────────────────────────────────────────────────────────
   HERO
───────────────────────────────────────────────────────────── */
.hero {
  min-height: 100vh;
  padding-top: 92px;
  position: relative;
  overflow: hidden;
  /* IMAGE PATH: Once assets/images/A.jpg is added, this works as-is. */
  background:
    linear-gradient(rgba(2, 15, 17, 0.28), rgba(2, 15, 17, 0.28)),
    url('../images/A.jpg') center / cover no-repeat;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.05), transparent 26%),
    radial-gradient(circle at bottom right, rgba(255, 255, 255, 0.03), transparent 18%);
  pointer-events: none;
}

.hero-inner {
  position: relative;
  z-index: 1;
  max-width: 1580px;
  margin: 0 auto;
  padding: 72px 28px 38px;
  min-height: calc(100vh - 92px);
  display: flex;
  align-items: center;
}

.hero-copy {
  max-width: 820px;
  padding-left: 10px;
}

.eyebrow {
  color: var(--accent);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.hero-title {
  font-size: clamp(2.9rem, 8vw, 7rem);
  line-height: 0.95;
  letter-spacing: -0.03em;
  margin: 0 0 16px;
  font-weight: 800;
  max-width: 820px;
  text-wrap: balance;
}

.hero-desc {
  font-size: 22px;
  line-height: 1.55;
  color: #dce7e7;
  max-width: 490px;
  margin: 0 0 24px;
}

/* Primary CTA Button */
.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: 9999px;
  background: #ff6a14;
  color: #fff;
  text-decoration: none;
  font-family: 'Syne', sans-serif;
  font-weight: 700;
  font-size: 20px;
  padding: 10px 18px;
  transition:
    transform          0.2s ease,
    background-color   0.2s ease;
  box-shadow: 0 8px 24px rgba(255, 106, 20, 0.18);
  cursor: pointer;
}

.btn-primary:hover {
  background: var(--accent-hover);
  transform: translateY(-1px);
}


 
 /* =====================================
   TICKER
===================================== */

.ticker{

    overflow:hidden;

    background:#ff6a14;

    border-top:1px solid rgba(255,255,255,.15);

    border-bottom:1px solid rgba(255,255,255,.15);

    width:100%;

    position:relative;

}

.ticker-track{

    display:flex;

    width:max-content;

    animation:ticker-scroll 18s linear infinite;

}

.ticker-group{

    display:flex;

    align-items:center;

    flex-shrink:0;

}

.ticker-item{

    display:flex;

    align-items:center;

    gap:12px;

    white-space:nowrap;

    padding:5px 28px;

    font-size:20px;

    font-weight:700;

    color:#fff;

}

.ticker-icon{

    width:28px;

    height:28px;

    flex-shrink:0;

}

@keyframes ticker-scroll{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}


@media(max-width:768px){

.ticker-track{

    animation-duration:18s;

}

.ticker-item{

    font-size:17px;

    padding:10px 22px;

}

.ticker-icon{

    width:22px;

    height:22px;

}

}

/* ─────────────────────────────────────────────────────────────
   PROCESS SECTION
───────────────────────────────────────────────────────────── */
.process-section {
  position: relative;
  overflow: hidden;
  padding: 120px 0;
}

.process-section .container {
  position: relative;
  z-index: 2;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 24px;
}

/* Decorative SVG arrows */
.process-arrow {
  position: absolute;
  z-index: 1;
  pointer-events: none;
  opacity: 1;
}

.process-arrow-left {
  width: 240px;
  bottom: 270px;
}

.process-arrow-right {
  width: 240px;
  right: -5px;
  top: 70px;
}

/* Heading */
.process-title {
  text-align: center;
  margin-bottom: 36px;
}

.process-title h2 {
  margin: 0;
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-weight: 800;
  font-size: clamp(2.5rem, 5vw, 5.5rem);
  line-height: 0.95;
  color: white;
}

.process-title .accent {
  color: #ff5a00;
  font-style: italic;
}

.process-line {
  width: 56px;
  height: 3px;
  background: #ff5a00;
  margin: 24px auto 0;
}

/* Description */
.process-description {
  max-width: 960px;
  margin: 0 auto;
  text-align: center;
}

.process-description p {
  margin: 0 0 16px;
  color: white;
  font-size: 25px;
  line-height: 1.8;
  font-weight: 400;
}
 
 
/* =====================================
   INDUSTRY GRID
===================================== */

.industry-grid {

    margin-top: 90px;

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 18px;

}


.industry-card {

    display: flex;

    align-items: center;

    min-height: 90px;

    border: 1px solid rgba(255,255,255,0.6);

    background: transparent;

    overflow: hidden;

}


.industry-icon {

    width: 90px;

    height: 90px;

    background: #e8e8e8;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

}


.industry-icon img {

    width: 60px;

    height: 60px;

    object-fit: contain;

}


.industry-name {

    flex: 1;

    text-align: center;

    color: var(--accent);

    font-size: 1.6rem;

    font-weight: 600;

    padding: 0 15px;

}


/* Tablet */

@media (max-width: 992px) {


    .industry-grid {

        grid-template-columns: repeat(2, 1fr);

    }


}


/* Mobile */

@media (max-width: 768px) {



    .industry-grid {

        grid-template-columns: 1fr;

    }


    .industry-card {

        min-height: 80px;

    }


    .industry-icon {

        width: 80px;

        height: 80px;

    }


    .industry-icon img {

        width: 50px;

        height: 50px;

    }


    .industry-name {

        font-size: 1.1rem;

    }

}

.rotated-image {
  transform: rotate(180deg);
}

/* ─────────────────────────────────────────────────────────────
   GENERIC SECTION UTILITIES
───────────────────────────────────────────────────────────── */
.section {
  position: relative;
  padding: 92px 28px;
}

.section-dark    { background: var(--bg-dark); }
.section-darker  { background: var(--bg-darker); }

.container {
  max-width: 1280px;
  margin: 0 auto;
 
}

@media (max-width: 640px) {
    .extra-page-content .container {
        padding: 40px 18px 0px ;
    }
}

.section-heading {
  text-align: center;
  max-width: 840px;
  margin: 0 auto;
}

.section-title {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.35rem);
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.03em;
}

.section-title .accent {
  color: var(--accent);
  font-style: italic;
}

.section-title-underline {
  width: 58px;
  height: 3px;
  margin: 18px auto 22px;
  background: var(--accent);
  border-radius: 9999px;
}

.section-copy {
  color: #e0ecec;
  font-size: 15px;
  line-height: 1.7;
  max-width: 630px;
  margin: 0 auto;
}

/* Decorative corner accents */
.corner {
  position: absolute;
  width: 120px;
  height: 120px;
  border-color: var(--accent);
  opacity: 0.7;
  pointer-events: none;
}

.corner.left {
  left: 0;
  top: 120px;
  border-left: 1px solid var(--accent);
  border-top: 1px solid var(--accent);
  transform: translateX(-8px);
  clip-path: polygon(0 0, 100% 0, 100% 7%, 7% 7%, 7% 100%, 0 100%);
}

.corner.right {
  right: 0;
  top: 36px;
  border-right: 1px solid var(--accent);
  border-top: 1px solid var(--accent);
  transform: translateX(8px);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 93% 100%, 93% 7%, 0 7%);
}

.corner.bottom-left {
  left: 0;
  bottom: 10px;
  border-left: 1px solid var(--accent);
  border-bottom: 1px solid var(--accent);
  transform: translateX(-8px);
  clip-path: polygon(0 0, 7% 0, 7% 93%, 100% 93%, 100% 100%, 0 100%);
}

/* Stats circles (generic / smaller variant) */
.stats {
  margin: 72px auto 84px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
}

.stat-circle {
  width: 164px;
  height: 164px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  margin-left: -28px;
  background: transparent;
}

.stat-circle:first-child { margin-left: 0; }

.stat-value {
  color: var(--accent);
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 6px;
}

.stat-label {
  color: var(--text-muted);
  font-size: 14px;
  font-weight: 500;
}

/* Grid decorative backdrop */
.grid-backdrop {
  position: absolute;
  inset: 52px 14px 0 14px;
  border-radius: 18px;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.16) 1px, transparent 1px);
  background-size: 54px 54px;
  opacity: 0.8;
  pointer-events: none;
}

/* Spark decorations */
.spark {
  position: absolute;
  width: 10px;
  height: 10px;
  background: var(--accent);
  transform: rotate(45deg);
}

.spark.one   { right: 96px;  top: 26px; }
.spark.two   { right: 72px;  top: 42px; }
.spark.three { left: 84px;  bottom: 6px; }
.spark.four  { left: 108px; bottom: 20px; }


/* ─────────────────────────────────────────────────────────────
   TARGET VISUAL SECTION
───────────────────────────────────────────────────────────── */
.target-section {
  position: relative;
  width: 100%;
  height: 700px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #012f2e;
}

.grid-bg-about {
  position: absolute;
  width: 1120px;
  height: auto;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.grid-bg-about img {
  width: 100%;
  height: auto;
  display: block;
}

.target-visual {
  position: absolute;
  width: 720px;
  left: 50%;
  top: 45%;
  transform: translate(-50%, -50%);
  z-index: 3;
}

.target-visual img {
  width: 100%;
  height: auto;
  display: block;
}

/* Stars */
.star {
  position: absolute;
  width: 62px;
  z-index: 5;
}

.star-top    { top: 0;    right: 320px; }
.star-bottom { bottom: 0; left: 320px; }


/* ─────────────────────────────────────────────────────────────
   PROBLEM / FLIP CARDS
───────────────────────────────────────────────────────────── */
.problem-title {
  text-align: center;
  margin-bottom: 42px;
}

.problem-title h2 {
  margin: 0;
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-weight: 800;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1;
  letter-spacing: -0.04em;
  color: white;
}

.problem-title .orange {
  color: var(--accent);
}

/* Grid */
.problem-grid {
  min-width: 500px;
  min-height: 500px;
  cursor: pointer;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 3px solid white;
}

/* Individual card */
.flip-card {
  position: relative;
  min-height: 180px;
  perspective: 1200px;
  border-right: 2.5px solid white;
  border-bottom: 2.5px solid white;
}

.flip-card:nth-child(3n) {
  border-right: 0;
}

/* Inner */
.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 180px;
  transition: transform 0.7s ease;
  transform-style: preserve-3d;
}

.flip-card.active .flip-card-inner {
  transform: rotateY(180deg);
}

/* Both faces */
.flip-card-front,
.flip-card-back {
  position: absolute;
  inset: 0;
  padding: 22px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.flip-card-front { background: transparent; }
.flip-card-back  {
  background: var(--accent);
  transform: rotateY(180deg);
}

/* Arrow icon */
.problem-arrow {

    position:absolute;

    top:100px;

    left:18px;

    width:42px;

    height:42px;

    object-fit:contain;

    display:block;

}

.problem-arrow-1{

    position:absolute;

    top:70px;

    left:18px;

    width:42px;

    height:42px;

    object-fit:contain;

    display:block;

}

/* Text */
.problem-text {
  margin: 0;
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: white;
}

.problem-back-text {
  margin: 0;
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-weight: 700;
  font-size: 17px;
  line-height: 1.2;
  color: white;
  max-width: 220px;
}


/* ─────────────────────────────────────────────────────────────
   RESULTS SLIDER
───────────────────────────────────────────────────────────── */
 

/* Heading */
.results-heading {
  text-align: center;
  margin-bottom: 40px;
}

.results-heading h2 {
  margin: 0;
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1;
  letter-spacing: -0.04em;
  font-weight: 800;
  color: white;
}

.results-heading span {
  color: var(--accent);
}

/* Slider wrapper */
.results-slider {
  width: 100%;
  border-top: 2px solid rgba(255, 255, 255, 0.75);
  border-bottom: 2px solid rgba(255, 255, 255, 0.75);
}

/* Viewport */
.results-viewport {
  overflow: hidden;
}

/* Track */
.results-track {
  display: flex;
  min-height: 650px;
  transition: transform 0.7s ease;
}

/* Card */
.result-card {
  flex: 0 0 33.3333%;
  min-height: 470px;
  border-right: 2px solid rgba(255, 255, 255, 0.75);
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
}

.result-card-content {
  flex: 1;
  padding: 38px 28px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* Metrics */
.result-metrics {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.metric-row {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.metric-value {
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-size: 64px;
  line-height: 1;
  font-weight: 800;
  color: white;
  letter-spacing: -0.05em;
  flex-shrink: 0;
}

.metric-label {
  color: white;
  font-size: 24px;
  line-height: 1.05;
  padding-top: 8px;
}

/* Bottom row */
.result-bottom {
  display: flex;
  align-items: flex-end;
  gap: 18px;
  margin-top: 30px;
}

/* Thumbnail */
.result-thumb {
  width: 70%;
  height: 100%;
  overflow: hidden;
  flex-shrink: 0;
}

.result-thumb img {
  width: 100%;
  height: 100%;
  object-fit: fill;
}

/* Taller thumbnail variant */
.new-thumb {
  width: 250px;
  height: 325px;
}

/* Side metric (ROAS etc.) */
.result-side-metric {
    align-self: flex-end;
    padding-bottom: 4px;
    flex-shrink: 0;
    text-align: left;
    max-width: 140px;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.result-side-metric strong{

    margin:0;

    font-size:58px;

    line-height:1;

    flex-shrink:0;

}
.result-side-metric span{

    margin:0;

    font-size:22px;

    line-height:1.35;

}
/* Company name bar */
.result-company {
  position: relative;
  width: 100%;
  border-top: 2px solid rgba(255, 255, 255, 0.75);
  padding: 16px 28px 24px;
  color: var(--accent);
  font-size: 20px;
  font-weight: 700;
  box-sizing: border-box;
}

/* Controls */
.results-controls {
  height: 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 100px;
  border-top: 2px solid rgba(255, 255, 255, 0.75);
}

.results-arrow {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
}

.results-arrow-icon {
    width: 50px;
    height: 50px;
    object-fit: contain;
    transition: transform 0.3s ease;
}

/* Left arrow rotation */
.results-arrow-left {
    transform: rotate(180deg);
}

/* Hover effect */
.results-arrow:hover .results-arrow-icon {
    transform: scale(1.1);
}

/* Keep left arrow rotated on hover */
.results-arrow:hover .results-arrow-left {
    transform: rotate(180deg) scale(1.1);
}
 

/* ─────────────────────────────────────────────────────────────
   FOOTER
───────────────────────────────────────────────────────────── */
footer {
  background: var(--bg-dark);
  padding: 48px 28px 36px;
}

.footer-grid {
  max-width: 1280px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.3fr 0.9fr 0.6fr;
  gap: 36px;
  align-items: start;
}

.footer-brand {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer-brand img {
  width: 82px;
  height: auto;
}

.footer-brand h2 {
  font-size: clamp(2rem, 3.2vw, 3.1rem);
  line-height: 0.96;
  margin: 0;
  max-width: 420px;
}

.footer-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}

.footer-col p {
  margin: 0 0 12px;
  color: #d3dddd;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.footer-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.footer-col li { margin: 0; padding: 0; }

.footer-col a {
  color: #fff;
  text-decoration: none;
  font-size: 18px;
  line-height: 1.2;
  transition: color 0.2s ease;
}

.footer-col a:hover {
  color: var(--accent);
}

.social {
  display: flex;
  justify-content: flex-end;
}

.social a {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--accent);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-decoration: none;
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-weight: 800;
  font-size: 16px;
}

.footer-bottom {
  max-width: 1280px;
  margin: 34px auto 0;
  padding-top: 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  color: #b7c7c7;
  font-size: 12px;
}

.footer-bottom p { margin: 0; }


/* ─────────────────────────────────────────────────────────────
   ANIMATIONS
───────────────────────────────────────────────────────────── */
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: translateY(0); }
}

.fade-up {
  animation: fadeUp 0.65s ease both;
}

.delay-1 { animation-delay: 0.1s; }
.delay-2 { animation-delay: 0.2s; }
.delay-3 { animation-delay: 0.3s; }


/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — 1200px
───────────────────────────────────────────────────────────── */
@media (max-width: 1200px) {

  .grid-bg-about {
    width: 720px;
  }

  .target-visual {
    width: 540px;
  }

  .star-top    { right: 120px; }
  .star-bottom { left: 120px; }

}


/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — 1024px
───────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {

  .site-nav ul { gap: 20px; }

  .footer-grid { grid-template-columns: 1fr; }

  .result-card {
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.24);
  }

  .result-card:last-child { border-bottom: 0; }

  .footer-links    { grid-template-columns: 1fr 1fr; }
  .social          { justify-content: flex-start; }

  .strategy-grid {
    width: 92%;
    max-width: 900px;
    height: 60vh;
  }

  .strategy-shape,
  .strategy-shadow {
    width: 65vw;
    max-width: 480px;
  }

}


/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — 992px
───────────────────────────────────────────────────────────── */
@media (max-width: 992px) {

  .target-section {
    height: 560px;
  }

  .grid-bg-about { width: 620px; }
  .target-visual { width: 470px; }

  .star { width: 30px; }

  .star-top    { top: 90px;  right: 70px; }
  .star-bottom { bottom: 80px; left: 70px; }

}


/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — 900px (hamburger breakpoint)
───────────────────────────────────────────────────────────── */
@media (max-width: 900px) {

  .site-nav { display: none; }

  .hamburger { display: flex; }

  .navbar-inner {
    grid-template-columns: auto auto;
  }

  .hero-copy { padding-left: 0; }

  .stats { gap: 14px; }

  .stat-circle {
    margin-left: 0;
    width: 148px;
    height: 148px;
  }

  .metric-value { font-size: 36px; }
  .metric-label { font-size: 22px; }

}

 @media (max-width: 1300px){
         .result-card{

        flex:0 0 50%;

    }
 } 


/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — 768px
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    
.problem-text {
  margin: 0;
  font-family: 'Adelle Sans', 'DM Sans', sans-serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: white;
}    
    

.problem-arrow{

    top:80px;

    width:25px;

    height:25px;

}

.problem-arrow-1{
  top:60px;

    width:25px;

    height:25px;

}

.flip-card-front,
.flip-card-back {
  position: absolute;
   
  padding: 14px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
 

 
 
  /* Process */
  .process-section { padding: 60px 0; }

  .process-arrow-left  { width: 130px; bottom: 680px; }
  .process-arrow-right { width: 130px; top: 120px; }

  .process-title h2 { font-size: 3rem; }

  .process-description { padding: 0 10px; }
  .process-description p { font-size: 15px; line-height: 1.9; }

 
 

 

  /* Target visual */
  .target-section { height: 360px; }

  .grid-bg-about { width: 92%; }
  .target-visual { width: 62%; }

  .star { width: 22px; }

  .star-top    { top: 60px;  right: 25px; }
  .star-bottom { bottom: 90px; left: 25px; }

  /* Problem grid → single column */
 



  .problem-grid {
    min-width: 0;
    grid-template-columns: 1fr;
  }

  .flip-card {
    border-right: 0;
    border-bottom: 2.5px solid white;
  }

  .flip-card:last-child { border-bottom: 0; }

  /* Results */
  .result-card {
    flex: 0 0 100%;
    border-right: 0;
  }

  .metric-value  { font-size: 44px; }
  .metric-label  { font-size: 22px; }

  .results-controls { padding: 0 30px; }

  /* Strategy */
  .strategy-grid {
    width: 90%;
    max-width: 100%;
    height: 50vh;
    background-size: 10% 16.66%;
  }

  .strategy-shape,
  .strategy-shadow {
    width: 80vw;
    max-width: 100%;
    transform: rotate(-25deg) translateX(-5%) translateY(-8%);
  }

  .strategy-shadow {
    transform: rotate(-25deg) translateX(-3%) translateY(-6%);
  }

  .star { width: 25px; height: 25px; }

}



/* ─────────────────────────────────────────────────────────────
   RESPONSIVE — 640px
───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {

  .navbar-inner {
    height: 76px;
    padding: 0 18px;
  }

  .navbar.scrolled .navbar-inner { height: 68px; }

  .logo-link img,
  .logo-img,
  .custom-logo-link img { height: 42px; }

  .hero { min-height: 92vh; padding-top: 62px;}

  .hero-inner { padding: 54px 18px 28px; }

  .hero-copy { max-width: 100%; }

  .hero-title {
    font-size: clamp(2.35rem, 13vw, 3.15rem);
    max-width: 330px;
  }

  .hero-desc { font-size: 15px; max-width: 330px; }

  .section { padding: 72px 18px; }

  .section-title  { font-size: clamp(1.8rem, 8vw, 2.6rem); }
  .section-copy   { font-size: 14px; }

  .stats { margin: 56px auto 68px; }

  .stat-circle {
    width: 136px;
    height: 136px;
    margin-left: -14px;
  }

.result-bottom{

    display:flex;

    flex-direction:column;

    align-items:flex-start;

    gap:22px;

}

.result-thumb{

    width:100%;

    max-width:240px;

    height:auto;

}

.result-thumb img{

    width:100%;

    height:150px;

 
}

.result-side-metric{

    display:flex;

    align-items:center;

    justify-content:flex-start;

    gap:5px;

    max-width:100%;

    width:100%;

    text-align:left;

}

.result-side-metric strong{
    
    
}
  .new-thumb {
    height: 250px;
    width: 200px;
  }

  .footer-grid    { gap: 22px; }
  .footer-links   { grid-template-columns: 1fr; }

  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }

  .corner { display: none; }

}

/* ==========================================
   TEAM INTRO
========================================== */

.team-intro{

    padding:150px 28px 90px;

    background:transparent;

}

.team-intro .container{

    max-width:1250px;

    margin:0 auto;

}

.team-intro__content{

    max-width:1100px;

    margin:0 auto;

    text-align:center;

}

.team-intro__title{

    margin:0;

    color:#fff;

    font-size:clamp(2.2rem,4vw,3.75rem);

    font-weight:800;

    line-height:1.1;

}

.team-intro__description{

    margin:30px auto 0;

    max-width:1050px;

    color:rgba(255,255,255,.82);

    font-size:1.2rem;

    line-height:2;

    font-weight:500;

}
/* ==========================================
   ABOUT INTRO
========================================== */

.about-intro {
    padding: 110px 28px 100px;
}

.about-intro__content {
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

.about-intro__title {
    margin: 0 0 10px;
    font-size: clamp(2.5rem, 6vw, 4rem);
    line-height: 1.15;
    font-weight: 800;
}

.about-intro__subtitle {
    margin: 0;
    color: var(--accent);
    font-size: clamp(2rem, 5vw, 3.5rem);
    line-height: 1.15;
    font-weight: 800;
}

.about-divider {
    display: block;
    width: 80px;
    height: 4px;
    background: var(--accent);
    border-radius: 999px;
    margin: 30px auto 40px;
}

.about-intro p {
    max-width: 980px;
    margin: 0 auto 28px;
    color: #d8d8d8;
    font-size: 1.25rem;
    line-height: 1.9;
}

.about-intro p:last-child {
    margin-bottom: 0;
}

/* ==========================================
   VALUES
========================================== */

.about-values {
    padding: 40px 28px 120px;
}

.about-values__intro {
    max-width: 950px;
    margin: 0 auto;
    color: #d8d8d8;
    font-size: 1.25rem;
    line-height: 1.9;
}

.about-values__grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:35px;
}

.about-card {
    text-align: center;
}

.about-card img {
  width:100%;
  height:280px;
  object-fit:cover;

  border-radius:999px;
  border:2px solid rgba(255,255,255,0.2);

  transition:0.4s ease;
}

.about-card:hover img {
    transform: translateY(-8px);
}

.about-card h3 {
    margin-top: 20px;

    font-size: 1.1rem;
    font-weight: 700;

    letter-spacing: 1px;
    line-height: 1.4;
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 992px) {

    .about-values__grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

/* ==========================================
   MOBILE
========================================== */

@media (max-width: 768px) {
    
    .team-intro{

    padding:120px 18px 0px;

}

.team-intro__title{

    font-size:2rem;

}

.team-intro__description{

    margin-top:22px;

    font-size:1rem;

    line-height:1.9;

}

    .about-intro {
        padding: 120px 18px 70px;
    }

    .about-intro p,
    .about-values__intro {
        font-size: 1rem;
        line-height: 1.8;
    }

    .about-values {
        padding: 20px 18px 80px;
    }

    .about-values__grid {
        grid-template-columns: 1fr;
        gap: 40px;
        margin-top: 50px;
    }

    .about-card {
        max-width: 420px;
        margin: 0 auto;
    }

}
/* =========================================
   CASE STUDIES PAGE
========================================= */

.case-studies-section{
    padding:150px 0 100px;
    overflow:hidden;
}

.case-studies-section .container{
    width:min(90%,1250px);
    margin:0 auto;
}

/* =========================================
   HEADING
========================================= */

.section-heading2{
    text-align:center;
    margin-bottom:80px;
}

.section-heading2 h1{
    margin:0;
    font-size:clamp(2.5rem,5vw,4rem);
    line-height:1.1;
    font-weight:800;
    color:#fff;
}

.section-heading2 h2{
    margin:12px 0 0;
    font-size:clamp(2rem,4.5vw,3.5rem);
    line-height:1.1;
    font-weight:800;
    color:var(--accent);
}

.heading-line{
    width:85px;
    height:4px;
    background:var(--accent);
    margin:30px auto;
    border-radius:999px;
}

.section-heading2 p{
    margin:0 auto 10px;
    max-width:900px;
    font-size:1.25rem;
    line-height:1.8;
    color:rgba(255,255,255,.78);
}

/* =========================================
   CASE ITEM
========================================= */

.case-study-item{
    margin-bottom:140px;
}

.case-study-item:last-child{
    margin-bottom:0;
}

/* =========================================
   VISUAL
========================================= */

.visual-wrapper{
    position:relative;
    width:100%;
    max-width:1060px;
   
    margin:0 auto;
 
}

.visual-wrapper{
    aspect-ratio:auto;
    min-height:700px;
}

.grid-bg{
    position:absolute;
    inset:0;
    z-index:1;
}

.grid-bg img{
    width:100%;
    display:block;
}

.case-image 
 {
    width:90%;
    position:absolute;
    left:50%;
    top:41%;
    transform:translate(-50%,-50%);
    z-index:3;
}

 

.case-image img{
    width:100%;
    height:540px;
 
    object-position:center;
    display:block;
    border-radius:12px;
}

/* =========================================
   CONTENT
========================================= */

.case-content{
    text-align:center;
    max-width:1000px;
    margin:0px auto 0;
}

.case-content h3{
    margin:0 0 25px;
    font-size:clamp(2rem,4vw,2.75rem);
    font-weight:800;
}

.case-content p{
    font-size:1.25rem;
    line-height:1.9;
    color:rgba(255,255,255,.78);
    margin-bottom:35px;
}

/* =========================================
   BUTTON
========================================= */

.know-more-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:180px;
    padding:14px 30px;

    border:none;
    border-radius:999px;

    background:var(--accent);
    color:#fff;

    font-size:1.1rem;
    font-weight:700;

    cursor:pointer;
    text-decoration:none;

    transition:.3s ease;
}

.know-more-btn:hover{
    transform:translateY(-3px);
    background:var(--accent-hover);
}

/* =========================================
   MODAL
========================================= */

.case-modal-overlay{
    position:fixed;
    inset:0;

    background:rgba(2,18,18,.45);

    display:none;
    align-items:center;
    justify-content:center;

    z-index:9999;

    backdrop-filter:blur(6px);

    padding:20px;
}

.case-modal-overlay.open{
    display:flex;
}

.case-modal{
    background:rgba(1,47,46,.98);

    border:1px solid rgba(255,255,255,.18);

    border-radius:18px;

    padding:20px 24px;

    width:min(1450px,100%);

    position:relative;
}

.case-modal-close{
    position:absolute;

    top:18px;
    right:18px;

    width:36px;
    height:36px;

    border:none;
    border-radius:50%;

    background:rgba(255,255,255,.1);

    color:#fff;

    font-size:22px;
    cursor:pointer;
}

.case-modal-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;

    flex-wrap:nowrap;
}

.case-modal-item{
    flex:1;
    text-align:center;
    padding:22px 18px;
}

.case-modal-item .value{
    font-size:2.25rem;
    font-weight:800;
}

.case-modal-item .label{
    margin-top:8px;
    color:rgba(255,255,255,.85);
    font-size:1rem;
}

/* =========================================
   TABLET
========================================= */

@media(max-width:992px){

    .case-study-item{
        margin-bottom:100px;
    }

    .case-content p{
        font-size:1.1rem;
    }

}

/* =========================================
   MOBILE
========================================= */

@media(max-width:768px){
    
    .case-image{
        width:83%;
        top:17.5%;
        height: 30%;
    }

.visual-wrapper{
    aspect-ratio:auto;
    min-height:190px;
}

    .case-image img{
        height:auto;
    }

    .case-studies-section{
        padding:120px 0 80px;
    }

    .section-heading2{
        margin-bottom:50px;
    }

    .section-heading2 p{
        font-size:1rem;
    }

    .case-content{
        margin-top:20px;
    }

    .case-content p{
        font-size:1rem;
        line-height:1.8;
    }

    .case-study-item{
        margin-bottom:80px;
    }

    .case-modal{
        padding:16px;
        overflow-y:scroll;
        max-height:90%;
    }

    .case-modal-inner{
        flex-direction:column;
        gap:0;
    }

    .case-modal-item{
        width:100%;
        border-bottom:1px solid rgba(255,255,255,.1);
    }

    .case-modal-item:last-child{
        border-bottom:none;
    }

    .case-modal-item .value{
        font-size:1.8rem;
    }
}

/* ==========================================
   SERVICES PAGE
========================================== */

.capabilities-section{
    padding:150px 0 120px;
}

.capabilities-section .container{
    width:min(90%,1250px);
    margin:0 auto;
}

/* ==========================================
   HERO
========================================== */

.section-heading{
    text-align:center;
    max-width:1000px;
    margin:0 auto 100px;
}

.section-heading h1{
    margin:0;
    font-size:clamp(2.5rem,5vw,4rem);
    line-height:1.1;
    font-weight:800;
}

.orange-line{
    width:85px;
    height:4px;
    background:var(--accent);
    border-radius:999px;
    margin:28px auto;
}

.section-heading p{
    font-size:1.25rem;
    line-height:1.9;
    color:rgba(255,255,255,.78);
}

/* ==========================================
   GROUPS
========================================== */

.capability-group{
    margin-top:70px;
}

.group-title{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:22px;
    margin-bottom:35px;
}

.group-title .line{
    flex:1;
    max-width:500px;
    height:1px;
    background:rgba(255,255,255,.5);
}

.group-title h2{
    margin:0;
    font-size:clamp(1.75rem,3vw,2.6rem);
    font-weight:700;
    white-space:nowrap;
}

/* ==========================================
   TAGS
========================================== */

.capability-tags{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:24px;
}

.tag{
    border:2px solid rgba(255,255,255,.75);
    border-radius:999px;

    padding:14px 28px;

    color:var(--accent);

    font-size:1.2rem;
    font-weight:700;

    transition:.3s ease;
}

.tag:hover{
    background:var(--accent);
    color:#fff;
    transform:translateY(-3px);
}

/* ==========================================
   TABLET
========================================== */

@media(max-width:992px){

    .capabilities-section{
        padding:120px 0 90px;
    }

    .section-heading{
        margin-bottom:70px;
    }

    .tag{
        font-size:1rem;
        padding:12px 22px;
    }

}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:768px){

    .capabilities-section{
        padding:110px 0 80px;
    }

    .section-heading{
        margin-bottom:50px;
    }

    .section-heading p{
        font-size:1rem;
        line-height:1.8;
    }

    .group-title{
        gap:14px;
    }

    .group-title .line{
        max-width:120px;
    }

    .group-title h2{
        font-size:1.5rem;
    }

    .capability-tags{
        gap:14px;
    }

    .tag{
        width:100%;
        text-align:center;
        font-size:1rem;
        padding:14px 20px;
    }

}


 
/* ==========================================
   CONTACT PAGE
========================================== */

 /* ==========================================
   CONTACT PAGE
========================================== */

.ub-contact-container{

    width:min(92%,1350px);

    margin:auto;

}

.ub-contact-grid{

    display:grid;

    grid-template-columns:minmax(0,1fr) 420px;

    gap:24px;

    align-items:flex-start;

}

.ub-contact-left{

    width:100%;

}

.ub-contact-right{

    display:flex;

    justify-content:center;

    align-items:flex-start;
    padding-top:30px;


}

.ub-contact-right img{

    width:100%;

    height:auto;

    display:block;

    border-radius:26px;

}

.ub-contact-image{

    display:flex;

    justify-content:center;

    align-items:center;

}

.ub-contact-image img{

    width:100%;

    max-width:420px;

    height:auto;

}

.ub-contact-section{
    padding:150px 0 120px;
}
 

.ub-contact-heading{
    text-align:center;
    margin-bottom:80px;
}

.ub-contact-heading h2{
    font-size:clamp(2.5rem,5vw,4rem);
    line-height:1.1;
    font-weight:800;
    margin:0;
}

.ub-contact-line{
    width:85px;
    height:4px;
    background:var(--accent);
    margin:30px auto;
    border-radius:999px;
}

.ub-contact-heading p{
    max-width:700px;
    margin:0 auto;
    color:rgba(255,255,255,.78);
    font-size:1.25rem;
    line-height:1.8;
}

.ub-contact-form{

    width:100%;

}

.ub-form-row{

    display:grid;

    grid-template-columns:120px minmax(0,1fr);

    gap:18px;

    align-items:center;

    padding:26px 0;

    border-bottom:1px solid rgba(255,255,255,.12);

}

.ub-form-label{
    font-size:1.15rem;
    font-weight:700;
    color:#fff;
}

 /* ==========================================
   FORM FIELDS
========================================== */

.ub-form-field{

    width:100%;

}
.ub-form-field input,
.ub-form-field textarea{

    width:100%;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.15);

    border-radius:12px;

    color:#fff;

    padding:16px 18px;

    font-size:1rem;

    font-family:inherit;

    transition:all .25s ease;

    outline:none;
}

.ub-form-field input{

    width:100%;

    min-height:64px;

}

.ub-form-field textarea{

    min-height:170px;

}

.ub-form-field input::placeholder,
.ub-form-field textarea::placeholder{
    color:rgba(255,255,255,.45);
}

/* Hover */

.ub-form-field input:hover,
.ub-form-field textarea:hover{
    border-color:rgba(255,255,255,.3);
}

/* Focus */

.ub-form-field input:focus,
.ub-form-field textarea:focus{

    border-color:var(--accent);

    background:rgba(255,255,255,.06);

    box-shadow:
        0 0 0 3px rgba(255,106,20,.18);
}

.ub-message-row{
    align-items:flex-start;
}

.ub-contact-bottom-title{
    text-align:center;
    margin-top:60px;
}

.ub-contact-bottom-title .btn-primary{
    min-width:220px;
}

/* ==========================================
   THANK YOU PAGE
========================================== */

.thankyou-section{
    min-height:70vh;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:120px 20px;
}

.thankyou-card{
    max-width:760px;
    margin:0 auto;
    text-align:center;
}

.thankyou-card .eyebrow{
    margin-bottom:16px;

    color:var(--accent);

    letter-spacing:.16em;
    text-transform:uppercase;

    font-weight:700;
    font-size:.85rem;
}

.thankyou-card h1{
    font-size:clamp(2rem,4vw,3.75rem);
    line-height:1.1;
    margin-bottom:24px;
}

.thankyou-card p{
    color:rgba(255,255,255,.78);

    font-size:1.05rem;
    line-height:1.9;

    margin-bottom:32px;
}

.thankyou-actions{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:16px;
}

/* ==========================================
   MOBILE
========================================== */



@media(max-width:768px){
    
   .ub-contact-grid {
       display: block;
   }

    .ub-contact-right img{

        display:none;

    }

    .ub-contact-section{
        padding:120px 0 80px;
    }

    .ub-contact-heading{
        margin-bottom:50px;
    }

    .ub-contact-heading p{
        font-size:1rem;
    }

    .ub-form-row{
        grid-template-columns:1fr;
        gap:14px;

        padding:22px 0;
    }

    .ub-form-label{
        font-size:1rem;
    }

    .ub-form-field input,
    .ub-form-field textarea{
        font-size:1rem;
    }

    .ub-contact-bottom-title{
        margin-top:40px;
    }

    .thankyou-section{
        padding:100px 20px;
    }

    .thankyou-card p{
        font-size:1rem;
    }

    .thankyou-actions{
        flex-direction:column;
    }

    .thankyou-actions .btn-primary{
        width:100%;
    }

}
 
/* ==========================================
   DEFAULT WORDPRESS PAGES
   For pages created from WP Admin
========================================== */

.default-page {
    padding: 100px 0 100px;
    min-height: 70vh;
}

.default-page .container {
    max-width: 1200px;
    margin: 0 auto;
}

.default-page h1 {
    font-size: clamp(2rem, 5vw, 3.5rem);
    margin-bottom: 24px;
    line-height: 1.2;
}

.default-page h2 {
    font-size: clamp(1.6rem, 4vw, 2.5rem);
    margin-top: 40px;
    margin-bottom: 18px;
}

.default-page h3 {
    font-size: 1.5rem;
    margin-top: 32px;
    margin-bottom: 16px;
}

.default-page p {
    color: rgba(255, 255, 255, 0.78);
    line-height: 1.8;
    font-size: 1.1rem;
    margin-bottom: 20px;
}

.default-page ul,
.default-page ol {
    margin-left: 25px;
    margin-bottom: 25px;
    color: rgba(255, 255, 255, 0.78);
}

.default-page li {
    margin-bottom: 10px;
    line-height: 1.7;
}

.default-page a {
    color: var(--accent);
    text-decoration: none;
}

.default-page a:hover {
    text-decoration: underline;
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 768px) {

    .default-page {
        padding: 80px 0 80px;
    }

    .default-page p,
    .default-page li {
        font-size: 1rem;
    }

}

.service-tab {
    cursor: pointer;
    transition: all 0.3s ease;
}

 /* ==================================================
   SERVICE MODAL
================================================== */

.service-modal-trigger {
    cursor: pointer;
    transition: all 0.3s ease;
}


.service-modal-trigger:hover {
    background: #F26722;
    color: #fff;
}


.service-modal-overlay {

    position: fixed;
    inset: 0;

    background: rgba(0, 0, 0, 0.7);

    display: flex;
    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;

    transition: 0.3s ease;

    z-index: 9999;
}


.service-modal-overlay.open {

    opacity: 1;
    visibility: visible;

}


.service-modal {

    background: #111;
    color: #fff;

    width: min(90%, 700px);

    padding: 3rem;

    border-radius: 24px;

    position: relative;

    text-align: left;

    animation: serviceModalFade 0.3s ease;
}


.service-modal-close {

    position: absolute;

    top: 1rem;
    right: 1.25rem;

    background: transparent;
    border: none;

    color: #fff;

    font-size: 2rem;

    cursor: pointer;
}


.service-modal-title {

    font-size: 2rem;

    margin-bottom: 1rem;

    color: #F26722;
}


.service-modal-description {

    font-size: 1.05rem;

    line-height: 1.8;

    color: #ddd;
}


@keyframes serviceModalFade {

    from {

        transform: translateY(20px);

        opacity: 0;

    }


    to {

        transform: translateY(0);

        opacity: 1;

    }

}


/* Mobile */

@media (max-width: 768px) {


    .service-modal {


        width: 90%;

        padding: 2rem 1.5rem;

    }


    .service-modal-title {


        font-size: 1.5rem;

    }


    .service-modal-description {


        font-size: 1rem;

    }

}


