 /* ---------- Font ---------- */
  @import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,500&display=swap');


.features { list-style: none; margin: 10px 0; padding: 0; }
.features li { position: relative; padding: 4px 0 4px 24px; font-size: 14px; }
.features li::before { content: "✔"; position: absolute; left: 0; color: #16a34a; font-weight: 700; }
.closing { font-weight: 600; font-size: 14px; }
.specs { list-style: none; margin: 12px 0; padding: 0; font-size: 14px; }
.specs li { padding: 6px 0; border-bottom: 1px dashed #ddd; }
.card-actions { display: flex; gap: 10px; margin-top: 14px; }
.card-actions .btn { flex: 1; text-align: center; }
.btn-whatsapp { background: #25D366; color: #fff; }
.btn-call { background: #1f2937; color: #fff; }

  /* ---------- Tokens ---------- */
  .home-page{
    --orange:#ef6a04;
    --orange-dark:#c9550a;
    --ink:#111820;
    --ink-70:rgba(17,24,32,.7);
    --ink-50:rgba(17,24,32,.5);
    --paper:#faf8f5;
    --line:#e4e0d8;
    --white:#ffffff;

    --side-pad:40px; /* desktop default, overridden below */

    font-family:'Plus Jakarta Sans', sans-serif;
    color:var(--ink);
    background:var(--white);
    overflow-x:hidden;
  }

  .home-page *{ box-sizing:border-box; }

  .home-page section{
    width:100%;
    padding-left:var(--side-pad);
    padding-right:var(--side-pad);
  }

  .home-page .inner{
    max-width:1260px;
    margin:0 auto;
  }

  /* Responsive side padding: 40 desktop / 30 tablet / 10 mobile */
  @media (max-width:1024px){
    .home-page{ --side-pad:30px; }
  }
  @media (max-width:600px){
    .home-page{ --side-pad:10px; }
  }

  .home-page h1,
  .home-page h2,
  .home-page h3,
  .home-page h4{
    font-family:'Plus Jakarta Sans', sans-serif;
    color:var(--ink);
    margin:0;
    line-height:1.15;
  }

  .home-page p{
    font-family:'Plus Jakarta Sans', sans-serif;
    color:var(--ink-70);
    line-height:1.65;
    margin:0;
  }

  .home-page a{ text-decoration:none; }

  /* ---------- Buttons ---------- */
  .home-page .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:14px 28px;
    font-weight:700;
    font-size:14px;
    letter-spacing:.02em;
    border-radius:6px;
    white-space:nowrap;
    transition:background .2s ease, color .2s ease, border-color .2s ease, transform .15s ease;
  }
  .home-page .btn:active{ transform:translateY(1px); }

  .home-page .btn-primary{
    background:var(--orange);
    color:var(--white);
    border:1.5px solid var(--orange);
  }
  .home-page .btn-primary:hover{ background:var(--orange-dark); border-color:var(--orange-dark); }

  .home-page .btn-outline-dark{
    background:transparent;
    color:var(--ink);
    border:1.5px solid var(--ink);
  }
  .home-page .btn-outline-dark:hover{ background:var(--ink); color:var(--white); }

  .home-page .btn-outline-light{
    background:transparent;
    color:var(--white);
    border:1.5px solid rgba(255,255,255,.55);
  }
  .home-page .btn-outline-light:hover{ background:var(--white); color:var(--ink); }

  .home-page .btn-ghost{
    background:transparent;
    color:var(--orange);
    border:1.5px solid var(--orange);
    padding:10px 20px;
    font-size:13px;
  }
  .home-page .btn-ghost:hover{ background:var(--orange); color:var(--white); }

/* ---------- Hero ---------- */
.home-page .hero{
  position:relative;
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  background:transparent !important;
}

.home-page .hero-top{
  position:relative;
  overflow:hidden;
  min-height:620px;
  padding:60px 0;
  display:flex;
  align-items:center;
}

/* ---------- Slider ---------- */
.home-page .hero-slider{
  position:absolute;
  inset:0;
  z-index:0;
}
.home-page .hero-slide{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  opacity:0;
  transition:opacity 1s ease;
}
.home-page .hero-slide.active{ opacity:1; }

/* ---------- Light overlay (image clearly dikhegi) ---------- */
.home-page .hero-top::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,
    rgba(17,24,32,.55) 0%,
    rgba(17,24,32,.30) 45%,
    rgba(17,24,32,.05) 100%);
}

.home-page .hero-top::after{
  content:"";
  position:absolute;
  left:0; bottom:0;
  width:100%;
  height:6px;
  background:var(--orange);
  z-index:2;
}

.home-page .hero .inner{
  position:relative;
  z-index:2;
  max-width:1260px;
  width:100%;
  margin:0 auto;
}

/* ---------- Dots ---------- */
.home-page .hero-dots{
  position:absolute;
  bottom:24px;
  left:50%;
  transform:translateX(-50%);
  z-index:3;
  display:flex;
  gap:10px;
}
.home-page .hero-dots .dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:rgba(255,255,255,.55);
  cursor:pointer;
  transition:background .2s ease, transform .2s ease;
}
.home-page .hero-dots .dot.active{
  background:var(--orange);
  transform:scale(1.25);
}

/* ---------- Text ---------- */
.home-page .hero .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--white);
  background:rgba(239,106,4,.35);
  border:1px solid rgba(239,106,4,.7);
  font-weight:600;
  font-size:13px;
  padding:7px 14px;
  border-radius:100px;
  margin-bottom:24px;
}
.home-page .hero .eyebrow::before{
  content:"";
  width:7px; height:7px;
  border-radius:50%;
  background:var(--orange);
}
.home-page .hero h1{
  font-size:46px;
  font-weight:800;
  color:var(--white);
  letter-spacing:-.01em;
  margin-bottom:22px;
  text-shadow:0 2px 14px rgba(0,0,0,.55);
}

/* ---------- Grid ---------- */
.home-page .hero-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:56px;
  align-items:center;
}
.home-page .hero-content{ max-width:620px; }

/* ---------- Form card ---------- */
.home-page .hero-form-card{
  background:var(--white);
  border-radius:14px;
  padding:32px 30px;
  box-shadow:0 24px 48px -16px rgba(0,0,0,.35);
}
.home-page .form-card-head{ margin-bottom:22px; text-align:left; }
.home-page .form-tag{
  display:inline-block;
  color:var(--orange);
  font-weight:700;
  font-size:13px;
  margin-bottom:10px;
}
.home-page .form-card-head h3{
  font-size:22px;
  font-weight:800;
  color:var(--ink);
  margin-bottom:8px;
}
.home-page .form-card-head p{
  font-size:14px;
  color:var(--ink-70);
}

/* Mobile form section: desktop pe hidden */
.home-page .hero-form-mobile{ display:none; }

/* ---------- Contact Form 7 ---------- */
.home-page .hero-form-card .wpcf7-form p{ margin:0 0 16px; }
.home-page .hero-form-card .wpcf7-form label{
  display:block;
  font-size:13px;
  font-weight:600;
  color:var(--ink);
  margin-bottom:6px;
}
.home-page .hero-form-card .wpcf7-form-control-wrap{ display:block; }

.home-page .hero-form-card input[type="text"],
.home-page .hero-form-card input[type="email"],
.home-page .hero-form-card input[type="tel"],
.home-page .hero-form-card input[type="number"],
.home-page .hero-form-card select,
.home-page .hero-form-card textarea{
  width:100%;
  font-family:'Plus Jakarta Sans', sans-serif;
  font-size:14.5px;
  color:var(--ink);
  background:var(--paper);
  border:1.5px solid var(--line);
  border-radius:8px;
  padding:13px 14px;
  transition:border-color .2s ease, background .2s ease;
}
.home-page .hero-form-card textarea{
  min-height:90px;
  resize:vertical;
}
.home-page .hero-form-card input:focus,
.home-page .hero-form-card select:focus,
.home-page .hero-form-card textarea:focus{
  outline:none;
  border-color:var(--orange);
  background:var(--white);
}
.home-page .hero-form-card input::placeholder,
.home-page .hero-form-card textarea::placeholder{ color:var(--ink-50); }

.home-page .hero-form-card input[type="submit"]{
  width:100%;
  background:var(--orange);
  color:var(--white);
  font-family:'Plus Jakarta Sans', sans-serif;
  font-weight:700;
  font-size:14.5px;
  letter-spacing:.02em;
  border:none;
  border-radius:8px;
  padding:14px 20px;
  cursor:pointer;
  transition:background .2s ease, transform .15s ease;
}
.home-page .hero-form-card input[type="submit"]:hover{ background:var(--orange-dark); }
.home-page .hero-form-card input[type="submit"]:active{ transform:translateY(1px); }

.home-page .hero-form-card .wpcf7-spinner{ display:block; margin:10px auto 0; }
.home-page .hero-form-card .wpcf7-not-valid-tip{
  color:#d92d20;
  font-size:12.5px;
  font-weight:600;
  margin-top:5px;
}
.home-page .hero-form-card .wpcf7-response-output{
  margin-top:16px;
  padding:12px 14px;
  border-radius:8px;
  font-size:13.5px;
  border:1.5px solid var(--line);
}
.home-page .hero-form-card form.sent .wpcf7-response-output{
  border-color:#2e7d32;
  color:#2e7d32;
  background:rgba(46,125,50,.06);
}
.home-page .hero-form-card form.failed .wpcf7-response-output,
.home-page .hero-form-card form.aborted .wpcf7-response-output{
  border-color:#d92d20;
  color:#d92d20;
  background:rgba(217,45,32,.06);
}

/* ---------- Tablet ---------- */
@media (max-width:1024px){
  .home-page .hero-top{ min-height:520px; }
  .home-page .hero-grid{ grid-template-columns:1fr; gap:36px; }
  .home-page .hero-content{ max-width:100%; }
  .home-page .hero-form-card{ max-width:520px; }
  .home-page .hero h1{ font-size:38px; }
}

/* ---------- Mobile ---------- */
@media (max-width:768px){
  .home-page .hero-top{
    min-height:420px;
    padding:40px 0 60px;
    align-items:flex-end;   /* title neeche, image upar clearly dikhe */
  }

 .home-page .hero-top{
    min-height:420px;
    padding:0 0 60px;
    align-items:flex-end;
  }

  .home-page .hero-top::before{
    background:linear-gradient(180deg,
      rgba(17,24,32,0) 0%,
      rgba(17,24,32,.15) 35%,
      rgba(17,24,32,.75) 100%);
  }

  .home-page .hero .inner{ padding:0 18px; }
  .home-page .hero h1{ font-size:26px; line-height:1.25; margin-bottom:0; }
  .home-page .hero .eyebrow{ font-size:12px; margin-bottom:14px; }
  .home-page .hero-dots{ bottom:20px; }

  /* Desktop form hide, mobile form section show */
  .home-page .hero-form-desktop{ display:none; }

  .home-page .hero-form-mobile{
    display:block;
    background:#f5f6f8;
    padding:32px 0 40px;
  }
  .home-page .hero-form-mobile .inner{ padding:0 18px; }
  .home-page .hero-form-mobile .hero-form-card{
    max-width:100%;
    padding:24px 20px;
    box-shadow:0 10px 30px -12px rgba(0,0,0,.2);
  }
  .home-page .form-card-head h3{ font-size:19px; }
}

  /* ---------- Stats ---------- */
  .home-page .stats-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--white);
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
  }

  .home-page .stats-inner{
    max-width:1260px;
    margin:0 auto;
  }

  .home-page .stats-top{
    display:grid;
    grid-template-columns:.85fr 1fr;
    gap:56px;
    align-items:end;
    margin-bottom:48px;
  }
  .home-page .stats-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .stats-heading{
    font-size:30px;
    font-weight:800;
    color:var(--ink);
  }
  .home-page .stats-intro{
    font-size:15.5px;
    color:var(--ink-70);
  }

  .home-page .stats-row{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
  }
  .home-page .stat-item{
    padding:0 32px;
    border-left:1px solid var(--line);
  }
  .home-page .stat-item:first-child{ border-left:none; padding-left:0; }

  .home-page .stat-num{
    display:block;
    font-size:44px;
    font-weight:800;
    color:var(--ink);
    letter-spacing:-.01em;
    line-height:1;
    margin-bottom:10px;
  }
  .home-page .stat-num .accent{ color:var(--orange); }

  .home-page .stat-label{
    font-size:14.5px;
    font-weight:600;
    color:var(--ink-70);
  }

  /* ---------- About ---------- */
  .home-page .about{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--white);
  }
  .home-page .about .about-head{
    max-width:720px;
    margin-bottom:44px;
  }
  .home-page .about .tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .about h2{
    font-size:32px;
    font-weight:800;
    margin-bottom:18px;
  }
  .home-page .about .about-head p{ font-size:16px; margin-bottom:12px; }

  .home-page .about-grid{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:56px;
    align-items:start;
  }
  .home-page .about-copy p{ margin-bottom:16px; font-size:15.5px; }

  .home-page .pillars{
    display:flex;
    flex-direction:column;
    gap:0;
    border-top:1px solid var(--line);
  }
  .home-page .pillar{
    padding:26px 0;
    border-bottom:1px solid var(--line);
  }
  .home-page .pillar h3{
    font-size:17px;
    font-weight:700;
    margin-bottom:8px;
  }
  .home-page .pillar p{ font-size:14.5px; }

  .home-page .about-cta{
    margin-top:36px;
    padding-top:28px;
    border-top:1px solid var(--line);
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:16px;
  }
  .home-page .about-cta p{ font-size:16px; font-weight:600; color:var(--ink); }

  /* ---------- Products ---------- */
  .home-page .products{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--paper);
  }
  .home-page .products .products-head{
    max-width:680px;
    margin-bottom:40px;
  }
  .home-page .products h2{
    font-size:32px;
    font-weight:800;
    margin-bottom:14px;
  }
  .home-page .products .products-head p{ font-size:16px; }

  .home-page .product-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:20px;
  }
  .home-page .product-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:8px;
    padding:28px 24px;
    display:flex;
    flex-direction:column;
    gap:12px;
    transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
  }
  .home-page .product-card:hover{
    border-color:var(--orange);
    box-shadow:0 12px 24px -16px rgba(17,24,32,.25);
    transform:translateY(-3px);
  }
  .home-page .product-card .code{
    font-size:12px;
    font-weight:700;
    letter-spacing:.06em;
    color:var(--orange);
  }
  .home-page .product-card h3{
    font-size:19px;
    font-weight:700;
  }
  .home-page .product-card p{
    font-size:14px;
    flex-grow:1;
  }
  .home-page .product-card .btn-ghost{ align-self:flex-start; margin-top:4px; }

  .home-page .products-help{
    margin-top:48px;
    background:var(--ink);
    border-radius:10px;
    padding:40px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:24px;
  }
  .home-page .products-help h3{
    color:var(--white);
    font-size:22px;
    font-weight:700;
    margin-bottom:8px;
  }
  .home-page .products-help p{
    color:rgba(255,255,255,.68);
    font-size:15px;
    max-width:460px;
  }
  .home-page .products-help .help-actions{
    display:flex;
    align-items:center;
    gap:20px;
    flex-wrap:wrap;
  }
  .home-page .products-help .phone{
    color:var(--white);
    font-size:18px;
    font-weight:700;
  }
  .home-page .products-help .phone span{
    display:block;
    color:rgba(255,255,255,.55);
    font-size:12.5px;
    font-weight:500;
    margin-bottom:2px;
  }

  /* ---------- Responsive ---------- */
  @media (max-width:1024px){
    .home-page .about-grid{ grid-template-columns:1fr; gap:36px; }
    .home-page .product-grid{ grid-template-columns:repeat(2, 1fr); }
    .home-page .hero{ min-height:560px; }
    .home-page .hero h1{ font-size:36px; }
    .home-page .stats-top{ grid-template-columns:1fr; gap:16px; align-items:start; }
  }

  @media (max-width:600px){
    .home-page .hero{
      min-height:0;
      padding-top:64px;
      padding-bottom:64px;
      background-image:
        linear-gradient(180deg, rgba(17,24,32,.9) 0%, rgba(17,24,32,.9) 100%),
        url('https://sm.medesty.com/wp-content/uploads/2026/09/red-bricks-for-home-construction.jpg');
    }
    .home-page .hero .inner{ max-width:100%; }
    .home-page .hero h1{ font-size:28px; }
    .home-page .hero .cta-row{ flex-direction:column; align-items:stretch; }
    .home-page .hero .cta-row .btn{ width:100%; }

    .home-page .about,
    .home-page .products{ padding-top:56px; padding-bottom:56px; }
    .home-page .about h2,
    .home-page .products h2{ font-size:26px; }

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

    .home-page .about-cta{ flex-direction:column; align-items:flex-start; }
    .home-page .products-help{ padding:28px 20px; flex-direction:column; align-items:flex-start; }
    .home-page .products-help .help-actions{ width:100%; justify-content:space-between; }

    .home-page .stats-section{ padding-top:52px; padding-bottom:52px; }
    .home-page .stats-heading{ font-size:24px; }
    .home-page .stats-row{ grid-template-columns:repeat(2, 1fr); row-gap:32px; }
    .home-page .stat-item{ padding:0 20px; }
    .home-page .stat-item:nth-child(2n+1){ border-left:none; padding-left:0; }
    .home-page .stat-item:nth-child(2){ border-left:1px solid var(--line); }
    .home-page .stat-item:nth-child(4){ border-left:1px solid var(--line); }
    .home-page .stat-num{ font-size:34px; }
  }
  
    /* ---------- Why Choose Us ---------- */
  .home-page .why-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--white);
  }

  .home-page .why-inner{
    max-width:1260px;
    margin:0 auto;
  }

  .home-page .why-head{
    max-width:640px;
    margin-bottom:44px;
  }
  .home-page .why-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .why-heading{
    font-size:32px;
    font-weight:800;
  }

  .home-page .why-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    border-top:1px solid var(--line);
    border-left:1px solid var(--line);
  }
  .home-page .why-item{
    padding:32px 28px;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
  }
  .home-page .why-item h3{
    font-size:17px;
    font-weight:700;
    margin-bottom:10px;
    position:relative;
    padding-top:14px;
  }
  .home-page .why-item h3::before{
    content:"";
    position:absolute;
    top:0; left:0;
    width:28px;
    height:3px;
    background:var(--orange);
  }
  .home-page .why-item p{ font-size:14.5px; }

  .home-page .why-cta{
    margin-top:40px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:20px;
  }
  .home-page .why-cta p{
    font-size:16px;
    font-weight:600;
    color:var(--ink);
    max-width:480px;
  }

  /* ---------- Responsive ---------- */
  @media (max-width:1024px){
    .home-page .why-grid{ grid-template-columns:repeat(2, 1fr); }
  }

  @media (max-width:600px){
    .home-page .why-section{ padding-top:56px; padding-bottom:56px; }
    .home-page .why-heading{ font-size:26px; }
    .home-page .why-grid{ grid-template-columns:1fr; }
    .home-page .why-item{ padding:24px 4px; }
    .home-page .why-cta{ flex-direction:column; align-items:flex-start; }
    .home-page .why-cta .btn{ width:100%; }
  }
  
  
    /* ---------- Services ---------- */
  .home-page .services-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--paper);
  }

  .home-page .services-inner{
    max-width:1260px;
    margin:0 auto;
  }

  .home-page .services-head{
    max-width:620px;
    margin-bottom:48px;
  }
  .home-page .services-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .services-heading{
    font-size:32px;
    font-weight:800;
    margin-bottom:16px;
  }
  .home-page .services-intro{ font-size:16px; }

  .home-page .services-list{
    border-top:1px solid var(--line);
  }

  .home-page .service-row{
    display:grid;
    grid-template-columns:340px 1fr;
    gap:40px;
    align-items:start;
    padding:30px 0;
    border-bottom:1px solid var(--line);
    border-left:2px solid transparent;
    padding-left:20px;
    margin-left:-22px;
    transition:border-left-color .2s ease, background .2s ease;
  }
  .home-page .service-row:hover{
    border-left-color:var(--orange);
    background:rgba(239,106,4,.03);
  }
  .home-page .service-row h3{
    font-size:19px;
    font-weight:700;
    color:var(--ink);
  }
  .home-page .service-row p{
    font-size:15px;
    max-width:560px;
  }

  /* ---------- Responsive ---------- */
  @media (max-width:1024px){
    .home-page .service-row{
      grid-template-columns:1fr;
      gap:10px;
    }
  }

  @media (max-width:600px){
    .home-page .services-section{ padding-top:56px; padding-bottom:56px; }
    .home-page .services-heading{ font-size:26px; }
    .home-page .service-row{
      padding-left:14px;
      margin-left:-16px;
      padding-top:22px;
      padding-bottom:22px;
    }
  }
  
    /* ---------- Our Customers ---------- */
  .home-page .customers-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--white);
  }

  .home-page .customers-inner{
    max-width:1260px;
    margin:0 auto;
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:64px;
  }

  .home-page .customers-left{
    position:sticky;
    top:24px;
    align-self:start;
  }
  .home-page .customers-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .customers-heading{
    font-size:30px;
    font-weight:800;
    margin-bottom:22px;
  }
  .home-page .customers-cta-line{
    font-size:15.5px;
    margin-bottom:22px;
  }

  .home-page .customers-right{
    border-top:1px solid var(--line);
  }

  .home-page .customer-row{
    display:flex;
    gap:18px;
    padding:26px 0;
    border-bottom:1px solid var(--line);
  }
  .home-page .customer-row .dot{
    flex-shrink:0;
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--orange);
    margin-top:7px;
  }
  .home-page .customer-row h3{
    font-size:18px;
    font-weight:700;
    margin-bottom:6px;
  }
  .home-page .customer-row p{ font-size:14.5px; }

  /* ---------- Responsive ---------- */
  @media (max-width:1024px){
    .home-page .customers-inner{ grid-template-columns:1fr; gap:36px; }
    .home-page .customers-left{ position:static; }
  }

  @media (max-width:600px){
    .home-page .customers-section{ padding-top:56px; padding-bottom:56px; }
    .home-page .customers-heading{ font-size:24px; }
    .home-page .customer-row{ padding:20px 0; gap:14px; }
  }
  
    /* ---------- Testimonials ---------- */
  .home-page .testimonials-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--ink);
  }

  .home-page .testimonials-inner{
    max-width:1260px;
    margin:0 auto;
  }

  .home-page .testimonials-head{
    max-width:640px;
    margin-bottom:48px;
  }
  .home-page .testimonials-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .testimonials-heading{
    font-size:32px;
    font-weight:800;
    color:var(--white);
    margin-bottom:16px;
  }
  .home-page .testimonials-intro{
    color:rgba(255,255,255,.68);
    font-size:15.5px;
  }

  .home-page .testimonial-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:24px;
  }

  .home-page .testimonial-card{
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.12);
    border-radius:8px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    gap:24px;
  }
  .home-page .testimonial-card .quote{
    color:rgba(255,255,255,.85);
    font-size:15px;
    line-height:1.65;
  }
  .home-page .testimonial-meta{
    display:flex;
    flex-direction:column;
    gap:2px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.12);
  }
  .home-page .testimonial-meta .name{
    color:var(--white);
    font-weight:700;
    font-size:15px;
  }
  .home-page .testimonial-meta .project{
    color:var(--orange);
    font-size:13px;
    font-weight:600;
  }

  /* ---------- Responsive ---------- */
  @media (max-width:1024px){
    .home-page .testimonial-grid{ grid-template-columns:1fr; }
  }

  @media (max-width:600px){
    .home-page .testimonials-section{ padding-top:56px; padding-bottom:56px; }
    .home-page .testimonials-heading{ font-size:26px; }
  }
  
  
    /* ---------- Contact ---------- */
  .home-page .contact-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--paper);
  }

  .home-page .contact-inner{
    max-width:1260px;
    margin:0 auto;
    display:grid;
    grid-template-columns:1fr .85fr;
    gap:56px;
    align-items:start;
  }

  .home-page .contact-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .contact-heading{
    font-size:32px;
    font-weight:800;
    margin-bottom:18px;
  }
  .home-page .contact-intro{
    font-size:16px;
    margin-bottom:32px;
    max-width:520px;
  }

  .home-page .contact-cta-row{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
  }

  .home-page .contact-card{
    background:var(--white);
    border:1px solid var(--line);
    border-radius:8px;
    padding:8px 32px;
  }

  .home-page .contact-item{
    padding:24px 0;
    border-bottom:1px solid var(--line);
    display:flex;
    flex-direction:column;
    gap:6px;
  }
  .home-page .contact-item:last-child{ border-bottom:none; }

  .home-page .contact-label{
    font-size:12.5px;
    font-weight:700;
    letter-spacing:.03em;
    color:var(--orange);
    text-transform:uppercase;
  }
  .home-page .contact-value{
    font-size:15.5px;
    font-weight:600;
    color:var(--ink);
    line-height:1.55;
  }
  .home-page .contact-value.link:hover{ color:var(--orange); }

  /* ---------- Responsive ---------- */
  @media (max-width:1024px){
    .home-page .contact-inner{ grid-template-columns:1fr; gap:40px; }
  }

  @media (max-width:600px){
    .home-page .contact-section{ padding-top:56px; padding-bottom:56px; }
    .home-page .contact-heading{ font-size:26px; }
    .home-page .contact-cta-row{ flex-direction:column; align-items:stretch; }
    .home-page .contact-cta-row .btn{ width:100%; }
    .home-page .contact-card{ padding:4px 20px; }
  }
  
    /* ---------- FAQ ---------- */
  .home-page .faq-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--white);
  }

  .home-page .faq-inner{
    max-width:840px;
    margin:0 auto;
  }

  .home-page .faq-head{
    margin-bottom:40px;
  }
  .home-page .faq-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .faq-heading{
    font-size:32px;
    font-weight:800;
  }

  .home-page .faq-list{
    border-top:1px solid var(--line);
  }

  .home-page .faq-item{
    border-bottom:1px solid var(--line);
    padding:22px 0;
  }

  .home-page .faq-item summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    font-size:16.5px;
    font-weight:700;
    color:var(--ink);
  }
  .home-page .faq-item summary::-webkit-details-marker{ display:none; }

  .home-page .faq-item summary::after{
    content:"+";
    flex-shrink:0;
    width:28px;
    height:28px;
    border-radius:50%;
    border:1.5px solid var(--line);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    font-weight:600;
    color:var(--orange);
    transition:transform .2s ease, background .2s ease, border-color .2s ease;
  }
  .home-page .faq-item[open] summary::after{
    content:"–";
    background:var(--orange);
    border-color:var(--orange);
    color:var(--white);
  }

  .home-page .faq-item p{
    font-size:15px;
    margin-top:14px;
    padding-right:48px;
  }

  /* ---------- Responsive ---------- */
  @media (max-width:600px){
    .home-page .faq-section{ padding-top:56px; padding-bottom:56px; }
    .home-page .faq-heading{ font-size:24px; }
    .home-page .faq-item summary{ font-size:15px; gap:12px; }
    .home-page .faq-item p{ padding-right:0; }
  }
  
    .home-page .product-thumb{
    width:calc(100% + 48px);
    margin:-28px -24px 4px;
    aspect-ratio:3/3;
    overflow:hidden;
    border-radius:8px 8px 0 0;
    background:var(--paper);
  }
  .home-page .product-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .3s ease;
  }
  .home-page .product-card:hover .product-thumb img{
    transform:scale(1.04);
  }

  /* ---------- Video Section ---------- */
  .home-page .video-section{
    padding-top:50px;
    padding-bottom:50px;
    background:var(--paper);
  }

  .home-page .video-inner{
    max-width:1260px;
    margin:0 auto;
  }

  .home-page .video-head{
    max-width:620px;
    margin-bottom:40px;
  }
  .home-page .video-tag{
    color:var(--orange);
    font-weight:700;
    font-size:14px;
    margin-bottom:14px;
  }
  .home-page .video-heading{
    font-size:32px;
    font-weight:800;
    margin-bottom:16px;
  }
  .home-page .video-intro{ font-size:16px; }

  .home-page .video-grid{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:24px;
  }

  .home-page .video-card{
    background:#000;
    border-radius:10px;
    overflow:hidden;
    border:1px solid var(--line);
    aspect-ratio:8/10;
  }
  .home-page .video-card video{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    background:#000;
  }

  /* ---------- Responsive ---------- */
  @media (max-width:1024px){
    .home-page .video-grid{ grid-template-columns:1fr; }
    .home-page .video-card{ aspect-ratio:16/9; }
  }

  @media (max-width:600px){
    .home-page .video-section{ padding-top:56px; padding-bottom:56px; }
    .home-page .video-heading{ font-size:26px; }
    .home-page .video-card{ aspect-ratio:4/3; }
  }
  

  /* ---------- Highlight Badge (full width, animated, bigger) ---------- */
  .highlight-badge-wrap{
    width:100%;
    margin:0;
    padding:0;
  }

  .highlight-badge{
    position:relative;
    display:block;
    width:100%;
    overflow:hidden;
    background:linear-gradient(90deg, #ef6a04, #ff8a3d, #ef6a04);
    background-size:200% 100%;
    color:#ffffff;
    font-weight:800;
    font-size:22px;
    letter-spacing:.02em;
    text-align:center;
    padding:5px 16px;
    box-shadow:0 6px 20px -4px rgba(239,106,4,.5);
    animation:badge-shine 4s linear infinite;
  }

  /* moving light streak on top of the badge */
  .highlight-badge::after{
    content:"";
    position:absolute;
    top:0;
    left:-40%;
    width:40%;
    height:100%;
    background:linear-gradient(120deg, transparent, rgba(255,255,255,.45), transparent);
    transform:skewX(-20deg);
    animation:badge-shimmer 3.2s ease-in-out infinite;
  }

  @keyframes badge-shine{
    0%{ background-position:0% 0%; }
    100%{ background-position:200% 0%; }
  }

  @keyframes badge-shimmer{
    0%{ left:-40%; }
    55%{ left:120%; }
    100%{ left:120%; }
  }

  @media (max-width:1024px){
    .highlight-badge{ font-size:19px; padding:20px 16px; }
  }

  @media (max-width:600px){
    .highlight-badge{
      font-size:15.5px;
      padding:16px 10px;
      line-height:1.4;
    }
  }