*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  background:#050505;
  color:white;
  font-family:'Inter', sans-serif;
  overflow-x:hidden;
}

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

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

/* ================================================= */
/* NAVBAR */
/* ================================================= */

.ct-navbar{
  position:fixed;
  top:18px;
  left:50%;
  transform:translateX(-50%);
  width:calc(100% - 56px);
  max-width:1320px;
  z-index:9999;
}

.ct-navbar-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 22px;
  background:rgba(10,10,10,0.42);
  backdrop-filter:blur(18px);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:999px;
  box-shadow:0 10px 36px rgba(0,0,0,0.24);
}

.ct-logo{
  height:54px;
  width:auto;
  max-width:160px;
  animation:logoFloat 5s ease-in-out infinite;
}

@keyframes logoFloat{
  0%{transform:translateY(0);}
  50%{transform:translateY(-3px);}
  100%{transform:translateY(0);}
}

.ct-nav-links{
  display:flex;
  align-items:center;
  gap:42px;
}

.ct-nav-links a{
  position:relative;
  color:rgba(255,255,255,0.88);
  font-size:15px;
  transition:0.35s ease;
}

.ct-nav-links a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-8px;
  width:0%;
  height:1px;
  background:#ff5a2a;
  transition:0.35s ease;
}

.ct-nav-links a:hover::after,
.ct-nav-links a.active::after{
  width:100%;
}

.ct-nav-links a.active{
  color:#ff5a2a;
}

.ct-nav-cta{
  padding:13px 24px;
  border-radius:999px;
  background:#ff5a2a;
  color:white;
  font-size:14px;
  font-weight:600;
  transition:0.35s ease;
}

.ct-nav-cta:hover{
  transform:translateY(-2px);
  background:#ff6b3d;
}

.ct-menu-btn,
.ct-mobile-menu-btn{
  display:none;
  width:48px;
  height:48px;
  border:none;
  background:transparent;
  cursor:pointer;
  flex-direction:column;
  justify-content:center;
  gap:6px;
}

.ct-menu-btn span,
.ct-mobile-menu-btn span{
  width:24px;
  height:1.5px;
  background:white;
  border-radius:20px;
}

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

.ct-mobile-menu{
  position:fixed;
  inset:0;
  background:rgba(10,10,10,0.96);
  backdrop-filter:blur(24px);
  z-index:9998;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:36px;
  opacity:0;
  visibility:hidden;
  transition:0.45s ease;
}

.ct-mobile-menu.active{
  opacity:1;
  visibility:visible;
}

.ct-mobile-menu a{
  font-size:42px;
  font-family:'Cormorant Garamond', serif;
}

.mobile-cta{
  margin-top:20px;
  padding:16px 28px;
  border-radius:999px;
  background:#ff5a2a;
  font-size:16px !important;
  font-family:'Inter', sans-serif !important;
}

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

.hero{
  position:relative;
  height:100vh;
  overflow:hidden;
}

.hero-slides{
  position:absolute;
  inset:0;
  z-index:1;
}

.hero-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity 1.2s ease;
  background-size:cover;
  background-position:center;
  transform:scale(1.05);
}

.hero-slide.active{
  opacity:1;
}

.hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(to right, rgba(0,0,0,0.72), rgba(0,0,0,0.25)),
    linear-gradient(to top, rgba(0,0,0,0.55), transparent);
  z-index:2;
}

.hero-content{
  position:relative;
  z-index:3;
  height:100%;
  display:flex;
  align-items:center;
  padding:0 6vw;
  max-width:900px;
}

.hero-inner{
  margin-top:60px;
}

.eyebrow{
  letter-spacing:6px;
  font-size:12px;
  margin-bottom:26px;
  opacity:0.85;
}

.hero h1{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(52px, 7vw, 96px);
  line-height:0.92;
  font-weight:400;
  max-width:820px;
}

.hero p{
  margin-top:32px;
  font-size:20px;
  line-height:1.6;
  color:rgba(255,255,255,0.82);
  max-width:620px;
}

.hero-buttons{
  margin-top:42px;
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}

.btn-primary{
  padding:18px 34px;
  border-radius:999px;
  background:#ff5a2a;
  color:white;
  font-weight:600;
}

.btn-secondary{
  padding:18px 34px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.2);
  background:rgba(255,255,255,0.06);
  backdrop-filter:blur(10px);
}

.site-note{
  position:absolute;
  top:110px;
  left:6vw;
  z-index:10;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.12);
  backdrop-filter:blur(12px);
  font-size:13px;
  color:rgba(255,255,255,0.85);
}

.hero-note{
  position:absolute;
  bottom:32px;
  left:6vw;
  z-index:5;
  font-size:13px;
  color:rgba(255,255,255,0.75);
  letter-spacing:1px;
}

.inline-link{
  color:#ff5a2a;
  font-weight:600;
  border-bottom:1px solid rgba(255,90,42,0.45);
}

.inline-link:hover{
  color:#ff6b3d;
  border-bottom-color:#ff6b3d;
}

/* ================================================= */
/* TRUSTED BRANDS */
/* ================================================= */

.brands-section{
  position:relative;
  padding:120px 0;
  background:linear-gradient(to bottom,#0d0d0d,#111111);
  overflow:hidden;
}

.brands-header{
  text-align:center;
  max-width:760px;
  margin:0 auto 70px auto;
  padding:0 24px;
}

.brands-eyebrow{
  letter-spacing:4px;
  font-size:11px;
  margin-bottom:20px;
  color:rgba(255,255,255,0.45);
}

.brands-header h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(28px, 3.2vw, 46px);
  line-height:1.05;
  font-weight:400;
}

.brands-marquee{
  width:100%;
  overflow:hidden;
  position:relative;
}

.brands-track{
  display:flex;
  align-items:center;
  gap:80px;
  width:max-content;
  animation:marqueeMove 45s linear infinite;
}

.brands-track img{
  height:64px;
  width:auto;
  object-fit:contain;
  opacity:0.88;
  filter:grayscale(1) brightness(1.9);
  transition:all 0.35s ease;
  flex-shrink:0;
  background:none !important;
  mix-blend-mode:screen;
}

.brands-track img:hover{
  opacity:1;
  filter:grayscale(0);
  transform:scale(1.05);
}

@keyframes marqueeMove{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);}
}

/* ================================================= */
/* HOMEPAGE Q&A */
/* ================================================= */

.home-qa-section{
  padding:120px 6% 130px;
  background:#050505;
}

.home-qa-header{
  max-width:900px;
  margin:0 auto 54px;
  text-align:center;
}

.home-qa-eyebrow{
  font-size:12px;
  letter-spacing:4px;
  color:#ff5a2a;
  margin-bottom:18px;
  font-weight:700;
}

.home-qa-header h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(44px, 5vw, 76px);
  line-height:1;
  font-weight:400;
  color:white;
  margin-bottom:18px;
}

.home-qa-header p{
  max-width:760px;
  margin:0 auto;
  color:#cfcfcf;
  font-size:18px;
  line-height:1.7;
}

.home-qa-grid{
  max-width:1320px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:20px;
}

.home-qa-card{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:28px;
  padding:28px;
  transition:0.35s ease;
}

.home-qa-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,42,0.28);
  box-shadow:0 18px 50px rgba(0,0,0,0.32);
}

.home-qa-card h3{
  font-size:22px;
  line-height:1.12;
  color:white;
  margin-bottom:14px;
}

.home-qa-card p{
  font-size:15px;
  line-height:1.7;
  color:#bdbdbd;
}

.home-qa-question-box{
  max-width:900px;
  margin:44px auto 0;
  padding:30px 32px;
  border-radius:30px;
  background:
    radial-gradient(circle at top, rgba(255,90,42,0.10), transparent 48%),
    #111111;
  border:1px solid rgba(255,255,255,0.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}

.home-qa-question-box p{
  color:#d7d7d7;
  font-size:18px;
  line-height:1.5;
}

.home-qa-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  padding:14px 24px;
  border-radius:999px;
  background:#ff5a2a;
  color:white;
  font-weight:700;
  transition:0.3s ease;
}

.home-qa-cta:hover{
  transform:translateY(-2px);
  background:#ff6b3d;
}

/* ================================================= */
/* OLD SERVICES BASE */
/* ================================================= */

.services-page{
  background:#050505;
}

.services-hero{
  position:relative;
  min-height:82vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:190px 7% 90px;
  background:
    linear-gradient(to bottom, rgba(0,0,0,0.30), rgba(0,0,0,0.78)),
    url('../images/services/hero33.png') center/cover no-repeat;
  overflow:hidden;
}

.services-hero-inner,
.services-hero-content{
  position:relative;
  z-index:2;
  max-width:960px;
  text-align:center;
  margin:0 auto;
}

.services-eyebrow{
  letter-spacing:5px;
  font-size:12px;
  margin-bottom:22px;
  color:#d0d0d0;
}

.services-hero h1{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(54px, 7vw, 104px);
  line-height:0.95;
  font-weight:400;
  color:white;
  margin-bottom:28px;
}

.services-intro,
.services-subtext{
  max-width:820px;
  margin:0 auto;
  font-size:20px;
  line-height:1.7;
  color:#d2d2d2;
}

.services-grid-section{
  padding:90px 4% 120px;
  background:#050505;
}

.services-grid{
  width:100%;
  max-width:1500px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:22px;
}

.service-card{
  width:100%;
  background:#111111;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.08);
  transition:transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
  color:white;
  text-decoration:none;
  display:block;
}

.service-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,42,0.28);
  box-shadow:0 18px 50px rgba(0,0,0,0.32);
}

.service-image-wrap{
  width:100%;
  aspect-ratio:1 / 1;
  background:#111111;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  overflow:hidden;
}

.service-image-wrap img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
}

.service-content{
  padding:24px 22px 28px;
}

.service-number{
  display:inline-block;
  font-size:11px;
  letter-spacing:3px;
  color:#ff5a2a;
  margin-bottom:14px;
  font-weight:600;
}

.service-content h2,
.service-content h3{
  font-size:26px;
  line-height:1.05;
  margin-bottom:14px;
  color:white;
}

.service-content p{
  font-size:15px;
  line-height:1.6;
  color:#bdbdbd;
  margin-bottom:18px;
}

.service-content ul{
  list-style:none;
  padding:0;
  margin:0;
}

.service-content li{
  position:relative;
  padding-left:16px;
  margin-bottom:9px;
  color:#d7d7d7;
  font-size:13px;
  line-height:1.45;
}

.service-content li::before{
  content:"";
  position:absolute;
  left:0;
  top:8px;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#ff5a2a;
}

/* ================================================= */
/* BITES PAGE */
/* ================================================= */

.bites-page{
  background:#050505;
}

.bites-hero{
  position:relative;
  min-height:82vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:190px 7% 90px;
  background:
    linear-gradient(to bottom, rgba(0,0,0,0.34), rgba(0,0,0,0.82)),
    url('../images/bites/hero.jpeg') center/cover no-repeat;
  overflow:hidden;
}

.bites-hero-inner{
  position:relative;
  z-index:2;
  max-width:980px;
  text-align:center;
  margin:0 auto;
}

.bites-eyebrow{
  letter-spacing:5px;
  font-size:12px;
  margin-bottom:22px;
  color:#d0d0d0;
}

.bites-hero h1{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(54px, 7vw, 104px);
  line-height:0.95;
  font-weight:400;
  color:white;
  margin-bottom:28px;
}

.bites-intro{
  max-width:820px;
  margin:0 auto;
  font-size:20px;
  line-height:1.7;
  color:#d2d2d2;
}

.bites-hero-notes{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:34px;
}

.bites-hero-notes span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 16px;
  border-radius:999px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.10);
  color:#efefef;
  font-size:13px;
}

.bites-intro-strip{
  padding:46px 6% 0;
  background:#050505;
}

.bites-intro-card{
  max-width:1320px;
  margin:0 auto;
  padding:26px 32px;
  border-radius:28px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  text-align:center;
}

.bites-intro-card p{
  max-width:860px;
  margin:0 auto;
  color:#cfcfcf;
  font-size:18px;
  line-height:1.65;
}

.bites-grid-section{
  padding:70px 6% 130px;
  background:#050505;
}

.bites-grid{
  width:100%;
  max-width:1500px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:26px;
}

.bite-card{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:28px;
  overflow:hidden;
  transition:transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.bite-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,42,0.28);
  box-shadow:0 18px 50px rgba(0,0,0,0.32);
}

.bite-image{
  width:100%;
  aspect-ratio:1 / 1;
  background:#111111;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.bite-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.bite-content{
  padding:24px 24px 26px;
}

.bite-tag{
  display:inline-block;
  font-size:11px;
  letter-spacing:3px;
  color:#ff5a2a;
  margin-bottom:14px;
  font-weight:600;
  text-transform:uppercase;
}

.bite-content h2{
  font-size:24px;
  line-height:1.1;
  color:white;
  margin-bottom:12px;
}

.bite-content p{
  font-size:15px;
  line-height:1.6;
  color:#bdbdbd;
  margin-bottom:16px;
}

.bite-content span{
  display:inline-flex;
  color:#d7d7d7;
  font-size:13px;
  opacity:0.9;
}

.bites-cta-section{
  padding:0 6% 120px;
  background:#050505;
}

.bites-cta-box{
  max-width:1320px;
  margin:0 auto;
  padding:62px 44px;
  border-radius:34px;
  background:
    radial-gradient(circle at top, rgba(255,90,42,0.10), transparent 45%),
    #111111;
  border:1px solid rgba(255,255,255,0.08);
  text-align:center;
}

.bites-cta-eyebrow{
  font-size:12px;
  letter-spacing:4px;
  color:#8d8d8d;
  margin-bottom:18px;
}

.bites-cta-box h3{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(40px, 5vw, 68px);
  line-height:1;
  font-weight:400;
  color:white;
  margin-bottom:18px;
}

.bites-cta-box p{
  max-width:760px;
  margin:0 auto 30px;
  font-size:18px;
  line-height:1.7;
  color:#bdbdbd;
}

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

.bites-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:180px;
  padding:16px 26px;
  border-radius:999px;
  text-decoration:none;
  font-weight:600;
  transition:0.3s ease;
}

.bites-btn-primary{
  background:#ff5a2a;
  color:white;
}

.bites-btn-secondary{
  border:1px solid rgba(255,255,255,0.18);
  color:white;
  background:transparent;
}

.bites-btn:hover{
  transform:translateY(-2px);
}

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

.contact-page{
  background:#050505;
}

.contact-page .contact-hero{
  display:none !important;
}

.contact-info-item a[href^="tel"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(255,90,42,0.12);
  border:1px solid rgba(255,90,42,0.35);
  color:white;
  font-weight:700;
}

/* ================================================= */
/* MOBILE BAR PAGE */
/* ================================================= */

.mobile-bar-page{
  background:#050505;
  color:white;
}

.mobile-bar-main{
  background:
    radial-gradient(circle at top left, rgba(255,90,42,0.14), transparent 30%),
    radial-gradient(circle at top right, rgba(255,255,255,0.06), transparent 28%),
    #050505;
}

.mobile-bar-intro{
  max-width:1420px;
  margin:0 auto;
  padding:170px 6% 90px;
  display:grid;
  grid-template-columns:1.05fr 0.95fr;
  gap:44px;
  align-items:center;
}

.mobile-bar-eyebrow{
  font-size:12px;
  letter-spacing:4px;
  color:#ff5a2a;
  margin-bottom:22px;
  font-weight:700;
  text-transform:uppercase;
}

.mobile-bar-intro h1{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(54px, 7vw, 104px);
  line-height:0.92;
  font-weight:400;
  color:white;
  max-width:860px;
  margin-bottom:28px;
}

.mobile-bar-intro-copy p{
  max-width:760px;
  font-size:20px;
  line-height:1.75;
  color:#cfcfcf;
  margin-bottom:34px;
}

.mobile-bar-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.mobile-bar-actions-center{
  justify-content:center;
}

.mobile-bar-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 26px;
  border-radius:999px;
  font-weight:700;
  text-decoration:none;
  transition:0.3s ease;
}

.mobile-bar-btn-primary{
  background:#ff5a2a;
  color:white;
}

.mobile-bar-btn-secondary{
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.05);
  color:white;
}

.mobile-bar-btn:hover{
  transform:translateY(-2px);
}

.mobile-bar-feature-card{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:34px;
  overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,0.35);
}

.mobile-bar-feature-image{
  width:100%;
  aspect-ratio:1 / 1;
  background:#111111;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
}

.mobile-bar-feature-image img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}

.mobile-bar-feature-copy{
  padding:26px;
}

.mobile-bar-feature-copy span{
  display:block;
  font-size:12px;
  letter-spacing:3px;
  color:#ff5a2a;
  margin-bottom:10px;
  font-weight:700;
  text-transform:uppercase;
}

.mobile-bar-feature-copy p{
  font-size:15px;
  line-height:1.7;
  color:#bdbdbd;
}

.mobile-bar-video-section{
  max-width:1420px;
  margin:0 auto;
  padding:20px 6% 110px;
  display:grid;
  grid-template-columns:0.8fr 1.2fr;
  gap:34px;
  align-items:center;
}

.mobile-bar-video-copy h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(42px, 5vw, 76px);
  line-height:1;
  font-weight:400;
  color:white;
  margin-bottom:18px;
}

.mobile-bar-video-copy p{
  font-size:18px;
  line-height:1.75;
  color:#cfcfcf;
}

.mobile-bar-video-wrap{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:34px;
  overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,0.28);
}

.mobile-bar-video-wrap video{
  width:100%;
  height:auto;
  display:block;
}

.mobile-bar-section{
  max-width:1420px;
  margin:0 auto;
  padding:20px 6% 110px;
}

.mobile-bar-section-soft{
  padding-top:70px;
  background:linear-gradient(to bottom, rgba(255,255,255,0.02), transparent);
}

.mobile-bar-section-header{
  max-width:880px;
  margin-bottom:38px;
}

.mobile-bar-section-header h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(42px, 5vw, 76px);
  line-height:1;
  font-weight:400;
  color:white;
  margin-bottom:18px;
}

.mobile-bar-section-header p{
  font-size:18px;
  line-height:1.75;
  color:#cfcfcf;
}

.mobile-bar-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:20px;
}

.mobile-bar-card{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:28px;
  padding:28px;
  transition:0.35s ease;
}

.mobile-bar-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,42,0.28);
  box-shadow:0 18px 50px rgba(0,0,0,0.32);
}

.mobile-bar-card span{
  display:block;
  font-size:12px;
  letter-spacing:3px;
  color:#ff5a2a;
  margin-bottom:14px;
  font-weight:700;
}

.mobile-bar-card h3{
  font-size:25px;
  line-height:1.12;
  color:white;
  margin-bottom:14px;
}

.mobile-bar-card p{
  font-size:15px;
  line-height:1.7;
  color:#bdbdbd;
}

.mobile-bar-addon-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:24px;
}

.mobile-bar-addon-card{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:30px;
  overflow:hidden;
  display:grid;
  grid-template-columns:220px 1fr;
  gap:0;
  transition:0.35s ease;
}

.mobile-bar-addon-card:hover{
  transform:translateY(-6px);
  border-color:rgba(255,90,42,0.28);
  box-shadow:0 18px 50px rgba(0,0,0,0.32);
}

.mobile-bar-addon-image{
  background:#0c0c0c;
  min-height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
}

.mobile-bar-addon-image img{
  width:100%;
  height:100%;
  object-fit:contain;
}

.mobile-bar-addon-card > div:last-child{
  padding:28px;
}

.mobile-bar-addon-card span{
  display:block;
  font-size:12px;
  letter-spacing:3px;
  color:#ff5a2a;
  margin-bottom:12px;
  font-weight:700;
  text-transform:uppercase;
}

.mobile-bar-addon-card h3{
  font-size:28px;
  line-height:1.08;
  color:white;
  margin-bottom:14px;
}

.mobile-bar-addon-card p{
  font-size:15px;
  line-height:1.7;
  color:#bdbdbd;
  margin-bottom:18px;
}

.mobile-bar-addon-card a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  background:rgba(255,90,42,0.12);
  border:1px solid rgba(255,90,42,0.35);
  color:white;
  font-size:13px;
  font-weight:700;
}

.mobile-bar-scale-section{
  max-width:1420px;
  margin:0 auto;
  padding:40px 6% 110px;
  display:grid;
  grid-template-columns:0.85fr 1.15fr;
  gap:34px;
  align-items:start;
}

.mobile-bar-scale-copy h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(42px, 5vw, 76px);
  line-height:1;
  font-weight:400;
  color:white;
  margin-bottom:18px;
}

.mobile-bar-scale-copy p{
  font-size:18px;
  line-height:1.75;
  color:#cfcfcf;
}

.mobile-bar-scale-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}

.mobile-bar-scale-grid article{
  background:
    radial-gradient(circle at top left, rgba(255,90,42,0.10), transparent 42%),
    #111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:28px;
  padding:28px;
}

.mobile-bar-scale-grid span{
  display:block;
  font-size:12px;
  letter-spacing:3px;
  color:#ff5a2a;
  margin-bottom:12px;
  font-weight:700;
  text-transform:uppercase;
}

.mobile-bar-scale-grid h3{
  font-size:26px;
  line-height:1.1;
  color:white;
  margin-bottom:12px;
}

.mobile-bar-scale-grid p{
  font-size:15px;
  line-height:1.7;
  color:#bdbdbd;
}

.mobile-bar-process-section{
  max-width:1420px;
  margin:0 auto;
  padding:20px 6% 110px;
}

.mobile-bar-process-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:20px;
}

.mobile-bar-process-grid article{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:28px;
  padding:28px;
}

.mobile-bar-process-grid span{
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(255,90,42,0.12);
  border:1px solid rgba(255,90,42,0.35);
  color:#ff5a2a;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  margin-bottom:18px;
}

.mobile-bar-process-grid h3{
  font-size:24px;
  line-height:1.12;
  color:white;
  margin-bottom:12px;
}

.mobile-bar-process-grid p{
  font-size:15px;
  line-height:1.7;
  color:#bdbdbd;
}

.mobile-bar-final-cta{
  max-width:1420px;
  margin:0 auto;
  padding:0 6% 120px;
}

.mobile-bar-final-inner{
  background:
    radial-gradient(circle at top, rgba(255,90,42,0.12), transparent 46%),
    #111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:34px;
  padding:60px 44px;
  text-align:center;
}

.mobile-bar-final-inner h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(44px, 5vw, 76px);
  line-height:1;
  font-weight:400;
  color:white;
  margin-bottom:20px;
}

.mobile-bar-final-inner p{
  max-width:760px;
  margin:0 auto 30px;
  font-size:18px;
  line-height:1.75;
  color:#cfcfcf;
}

/* ================================================= */
/* FOOTER */
/* ================================================= */

.ct-footer{
  position:relative;
  padding:140px 7% 90px;
  background:#050505;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,0.06);
}

.footer-glow{
  position:absolute;
  width:700px;
  height:700px;
  background:radial-gradient(circle, rgba(255,90,42,0.14), transparent 70%);
  top:-320px;
  left:50%;
  transform:translateX(-50%);
  pointer-events:none;
}

.footer-content{
  position:relative;
  z-index:2;
  max-width:900px;
  margin:0 auto;
  text-align:center;
}

.footer-eyebrow{
  font-size:12px;
  letter-spacing:6px;
  color:#7d7d7d;
  margin-bottom:24px;
}

.ct-footer h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(52px, 7vw, 110px);
  line-height:0.95;
  font-weight:400;
  color:white;
  margin-bottom:28px;
}

.ct-footer p{
  max-width:760px;
  margin:0 auto 42px;
  font-size:20px;
  line-height:1.7;
  color:#9b9b9b;
}

.footer-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:18px 34px;
  border-radius:999px;
  background:#ff5a2a;
  color:white;
  font-weight:600;
  transition:0.35s ease;
  margin-bottom:60px;
}

.footer-links{
  display:flex;
  justify-content:center;
  gap:36px;
  flex-wrap:wrap;
  margin-bottom:70px;
}

.footer-links a{
  color:#d7d7d7;
}

.footer-bottom{
  display:flex;
  justify-content:center;
  gap:24px;
  flex-wrap:wrap;
  font-size:14px;
  color:#6f6f6f;
}

/* ================================================= */
/* RESPONSIVE */
/* ================================================= */

@media(max-width:1200px){

  .home-qa-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    max-width:900px;
  }

  .bites-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .services-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    max-width:960px;
  }

  .mobile-bar-grid,
  .mobile-bar-process-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .mobile-bar-addon-grid{
    grid-template-columns:1fr;
  }

}

@media(max-width:1000px){

  .mobile-bar-intro,
  .mobile-bar-video-section,
  .mobile-bar-scale-section{
    grid-template-columns:1fr;
  }

  .mobile-bar-feature-card{
    max-width:620px;
  }

}

@media(max-width:980px){

  .ct-nav-links,
  .ct-nav-cta{
    display:none;
  }

  .ct-menu-btn,
  .ct-mobile-menu-btn{
    display:flex;
  }

}

@media(max-width:900px){

  .bites-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:20px;
  }

}

@media(max-width:768px){

  .ct-navbar{
    width:calc(100% - 28px);
    top:14px;
  }

  .ct-navbar-inner{
    padding:10px 16px;
  }

  .ct-logo{
    height:46px;
    max-width:140px;
  }

  .hero-content{
    padding:0 22px;
  }

  .hero h1{
    line-height:1;
  }

  .hero p{
    font-size:17px;
  }

  .hero-buttons{
    flex-direction:column;
    align-items:flex-start;
  }

  .btn-primary,
  .btn-secondary{
    width:100%;
    text-align:center;
  }

  .site-note{
    left:22px;
    right:22px;
    top:96px;
  }

  .hero-note{
    left:22px;
    right:22px;
  }

  .brands-track{
    gap:50px;
  }

  .brands-track img{
    width:120px;
    height:50px;
  }

  .home-qa-section{
    padding:90px 20px;
  }

  .home-qa-grid{
    grid-template-columns:1fr;
  }

  .home-qa-card{
    padding:26px;
  }

  .home-qa-question-box{
    flex-direction:column;
    align-items:flex-start;
    padding:28px;
  }

  .home-qa-cta{
    width:100%;
  }

  .services-hero{
    min-height:auto;
    padding:150px 22px 90px;
  }

  .services-hero h1{
    font-size:58px;
  }

  .services-intro,
  .services-subtext{
    font-size:17px;
  }

  .services-grid-section{
    padding:70px 20px 90px;
  }

  .services-grid{
    grid-template-columns:1fr;
    max-width:100%;
    gap:28px;
  }

  .service-image-wrap{
    aspect-ratio:1 / 1;
    padding:14px;
  }

  .service-content{
    padding:28px;
  }

  .service-content h2,
  .service-content h3{
    font-size:29px;
  }

  .bites-hero{
    min-height:auto;
    padding:150px 22px 90px;
  }

  .bites-hero h1{
    font-size:58px;
  }

  .bites-intro{
    font-size:17px;
  }

  .bites-hero-notes span{
    width:100%;
  }

  .bites-intro-strip{
    padding:36px 20px 0;
  }

  .bites-intro-card{
    padding:24px;
  }

  .bites-intro-card p{
    font-size:16px;
  }

  .bites-grid-section{
    padding:48px 20px 90px;
  }

  .bites-grid{
    grid-template-columns:1fr;
    gap:24px;
  }

  .bite-content{
    padding:24px;
  }

  .bite-content h2{
    font-size:26px;
  }

  .bites-cta-section{
    padding:0 20px 90px;
  }

  .bites-cta-box{
    padding:42px 24px;
  }

  .bites-btn{
    width:100%;
  }

  .mobile-bar-intro{
    padding:150px 22px 70px;
  }

  .mobile-bar-intro h1{
    font-size:58px;
  }

  .mobile-bar-intro-copy p{
    font-size:17px;
  }

  .mobile-bar-actions a{
    width:100%;
  }

  .mobile-bar-video-section,
  .mobile-bar-section,
  .mobile-bar-scale-section,
  .mobile-bar-process-section{
    padding:20px 20px 80px;
  }

  .mobile-bar-grid,
  .mobile-bar-process-grid{
    grid-template-columns:1fr;
  }

  .mobile-bar-addon-card{
    grid-template-columns:1fr;
  }

  .mobile-bar-addon-image{
    aspect-ratio:1 / 1;
  }

  .mobile-bar-card,
  .mobile-bar-addon-card > div:last-child,
  .mobile-bar-scale-grid article,
  .mobile-bar-process-grid article{
    padding:26px;
  }

  .mobile-bar-final-cta{
    padding:0 20px 90px;
  }

  .mobile-bar-final-inner{
    padding:42px 24px;
  }

  .ct-footer{
    padding:110px 24px 70px;
  }

  .ct-footer h2{
    font-size:64px;
  }

  .ct-footer p{
    font-size:17px;
  }

  .footer-links{
    gap:20px;
  }

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

}
/* ================================================= */
/* Q&A ACCORDION UPDATE */
/* ================================================= */

.home-qa-section{
  padding:120px 6% 130px;
  background:#050505;
}

.home-qa-header{
  max-width:900px;
  margin:0 auto 54px;
  text-align:center;
}

.home-qa-eyebrow{
  font-size:12px;
  letter-spacing:4px;
  color:#ff5a2a;
  margin-bottom:18px;
  font-weight:700;
}

.home-qa-header h2{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(52px, 6vw, 88px);
  line-height:0.95;
  font-weight:400;
  color:white;
  margin-bottom:18px;
}

.home-qa-header p{
  max-width:760px;
  margin:0 auto;
  color:#cfcfcf;
  font-size:18px;
  line-height:1.7;
}

.home-qa-accordion{
  max-width:980px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.home-qa-item{
  background:#111111;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:28px;
  overflow:hidden;
  transition:0.35s ease;
}

.home-qa-item.active{
  border-color:rgba(255,90,42,0.35);
  box-shadow:0 18px 50px rgba(0,0,0,0.32);
}

.home-qa-question{
  width:100%;
  border:none;
  background:transparent;
  color:white;
  padding:28px 30px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  cursor:pointer;
  text-align:left;
  font-family:'Inter', sans-serif;
}

.home-qa-question span:first-child{
  font-size:24px;
  line-height:1.18;
  font-weight:700;
}

.home-qa-icon{
  width:38px;
  height:38px;
  min-width:38px;
  border-radius:50%;
  background:rgba(255,90,42,0.12);
  border:1px solid rgba(255,90,42,0.35);
  color:#ff5a2a;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
  line-height:1;
  transition:0.3s ease;
}

.home-qa-item.active .home-qa-icon{
  background:#ff5a2a;
  color:white;
  transform:rotate(45deg);
}

.home-qa-answer{
  max-height:0;
  overflow:hidden;
  transition:max-height 0.45s ease;
}

.home-qa-item.active .home-qa-answer{
  max-height:360px;
}

.home-qa-answer p{
  color:#bdbdbd;
  font-size:17px;
  line-height:1.75;
  padding:0 30px 30px;
}

.home-qa-question-box{
  max-width:980px;
  margin:44px auto 0;
  padding:30px 32px;
  border-radius:30px;
  background:
    radial-gradient(circle at top, rgba(255,90,42,0.10), transparent 48%),
    #111111;
  border:1px solid rgba(255,255,255,0.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}

.home-qa-question-box p{
  color:#d7d7d7;
  font-size:18px;
  line-height:1.5;
}

.home-qa-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  padding:14px 24px;
  border-radius:999px;
  background:#ff5a2a;
  color:white;
  font-weight:700;
  transition:0.3s ease;
}

.home-qa-cta:hover{
  transform:translateY(-2px);
  background:#ff6b3d;
}

/* ================================================= */
/* MOBILE BAR VIDEO HERO UPDATE */
/* ================================================= */

.mobile-bar-video-hero{
  position:relative;
  min-height:100vh;
  max-width:none;
  width:100%;
  padding:190px 6% 110px;
  display:flex;
  align-items:center;
  overflow:hidden;
}

.mobile-bar-bg-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:1;
}

.mobile-bar-video-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(to right, rgba(0,0,0,0.78), rgba(0,0,0,0.32)),
    linear-gradient(to top, rgba(5,5,5,0.72), transparent);
  z-index:2;
}

.mobile-bar-intro-copy-over-video{
  position:relative;
  z-index:3;
  max-width:860px;
}

.mobile-bar-intro-copy-over-video h1{
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(52px, 6vw, 88px);
  line-height:0.95;
  font-weight:400;
  color:white;
  max-width:860px;
  margin-bottom:28px;
}

.mobile-bar-intro-copy-over-video p{
  max-width:760px;
  font-size:20px;
  line-height:1.75;
  color:#e0e0e0;
  margin-bottom:34px;
}

/* ================================================= */
/* RESPONSIVE FINAL */
/* ================================================= */

@media(max-width:768px){

  .home-qa-section{
    padding:90px 20px;
  }

  .home-qa-header h2{
    font-size:58px;
  }

  .home-qa-question{
    padding:24px;
  }

  .home-qa-question span:first-child{
    font-size:21px;
  }

  .home-qa-answer p{
    padding:0 24px 26px;
    font-size:16px;
  }

  .home-qa-question-box{
    flex-direction:column;
    align-items:flex-start;
    padding:28px;
  }

  .home-qa-cta{
    width:100%;
  }

  .mobile-bar-video-hero{
    min-height:100vh;
    padding:160px 22px 90px;
  }

  .mobile-bar-intro-copy-over-video h1{
    font-size:58px;
  }

  .mobile-bar-intro-copy-over-video p{
    font-size:17px;
  }

}
/* ================================================= */
/* CONTACT FORM EMBED FIX */
/* ================================================= */

.event-form-embed-wrap{
  width:100%;
  min-height:840px;
  height:auto;
  overflow:visible;
  border-radius:26px;
  background:white;
  border:1px solid rgba(255,255,255,0.08);
}

.event-form-embed-wrap iframe{
  display:block;
  width:100%;
  min-height:840px;
  height:840px;
  border:none;
  background:white;
}

.contact-form-card{
  overflow:visible;
}

@media(max-width:768px){

  .event-form-embed-wrap{
    min-height:920px;
  }

  .event-form-embed-wrap iframe{
    min-height:920px;
    height:920px;
  }

}