
/* Ceddu final polish: mobile spacing, WhatsApp, images, performance-safe layout */
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
img{max-width:100%;height:auto}
@media(max-width:760px){
  /* keep WhatsApp visible without covering text/cards */
  a[href*="wa.me"], a[href*="api.whatsapp"], .whatsapp, .whatsapp-float, .floating-whatsapp, [class*="whatsapp"]{
    z-index:900!important;
  }
  a[href*="wa.me"]:has(img), .whatsapp-float, .floating-whatsapp{
    width:58px!important;height:58px!important;bottom:18px!important;left:18px!important;right:auto!important;
  }
  #dynamic-home-root{margin-top:0!important;position:relative!important;z-index:2!important;}
  section{scroll-margin-top:90px;}
}
@media(min-width:761px) and (max-width:1024px){
  #dynamic-home-root{margin-top:0!important;}
}


/* Ceddu final v2: prevent hero search from covering services */
@media(max-width:760px){
  #root section.cu-hero-has-search + section,
  .cu-hero-has-search + *{
    margin-top:110px!important;
    padding-top:30px!important;
    background:#fff!important;
    position:relative!important;
    z-index:3!important;
  }
  .cu-hero-has-search + * h1,
  .cu-hero-has-search + * h2,
  .cu-hero-has-search + * h3{position:relative!important;z-index:4!important;line-height:1.22!important;}
  a[href*="wa.me"], a[href*="api.whatsapp"], .whatsapp-float, .floating-whatsapp, [class*="whatsapp"]{
    bottom:18px!important; left:18px!important; right:auto!important; z-index:850!important;
  }
}
@media(min-width:761px){
  .cu-hero-has-search + *{margin-top:70px!important;background:#fff!important;position:relative!important;z-index:3!important;}
}

/* Ceddu final mobile micro-fix: remove grey gap under hero and prevent service headings overlap */
@media(max-width:760px){
  .cu-hero-has-search{min-height:690px!important;padding-bottom:215px!important;}
  .cu-hero-has-search + *{
    margin-top:-34px!important;
    padding-top:72px!important;
    background:#fff!important;
    position:relative!important;
    z-index:4!important;
    border-radius:26px 26px 0 0!important;
  }
  .cu-hero-has-search + * h1,
  .cu-hero-has-search + * h2,
  .cu-hero-has-search + * h3,
  #dynamic-home-root h1,
  #dynamic-home-root h2,
  #dynamic-home-root h3{
    line-height:1.38!important;
    letter-spacing:0!important;
    word-spacing:0!important;
    white-space:normal!important;
    overflow:visible!important;
    text-wrap:balance;
  }
  .cu-hero-has-search + * h1 span,
  .cu-hero-has-search + * h2 span,
  .cu-hero-has-search + * h3 span,
  #dynamic-home-root h1 span,
  #dynamic-home-root h2 span,
  #dynamic-home-root h3 span{
    position:static!important;
    transform:none!important;
    display:inline!important;
    line-height:inherit!important;
  }
}
@media(max-width:420px){
  .cu-hero-has-search{min-height:690px!important;padding-bottom:215px!important;}
  body #cedduUnifiedHomeSearch{bottom:18px!important;}
  .cu-hero-has-search + *{margin-top:-34px!important;padding-top:72px!important;}
}

/* Ceddu mobile homepage global typography/staging fix - 20260507 */
@media (max-width:760px){
  /* keep the search inside the hero, but remove the excessive grey/empty area */
  .cu-hero-has-search{
    min-height:650px!important;
    padding-bottom:190px!important;
    background-color:#111!important;
  }
  body #cedduUnifiedHomeSearch{
    bottom:16px!important;
  }
  .cu-hero-has-search + *{
    margin-top:-18px!important;
    padding-top:58px!important;
    background:#fff!important;
    border-radius:24px 24px 0 0!important;
    position:relative!important;
    z-index:5!important;
    overflow:visible!important;
  }

  /* fix overlapping titles on the whole homepage, not only services */
  #root section:not(.cu-hero-has-search),
  #dynamic-home-root,
  main section:not(.cu-hero-has-search){
    overflow:visible!important;
  }
  #root section:not(.cu-hero-has-search) h1,
  #root section:not(.cu-hero-has-search) h2,
  #root section:not(.cu-hero-has-search) h3,
  #root section:not(.cu-hero-has-search) p,
  #dynamic-home-root h1,
  #dynamic-home-root h2,
  #dynamic-home-root h3,
  #dynamic-home-root p,
  main section:not(.cu-hero-has-search) h1,
  main section:not(.cu-hero-has-search) h2,
  main section:not(.cu-hero-has-search) h3,
  main section:not(.cu-hero-has-search) p{
    position:relative!important;
    transform:none!important;
    white-space:normal!important;
    overflow:visible!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    line-height:1.45!important;
    letter-spacing:0!important;
    word-spacing:0!important;
    z-index:auto!important;
  }
  #root section:not(.cu-hero-has-search) h1,
  #root section:not(.cu-hero-has-search) h2,
  #root section:not(.cu-hero-has-search) h3,
  #dynamic-home-root h1,
  #dynamic-home-root h2,
  #dynamic-home-root h3,
  main section:not(.cu-hero-has-search) h1,
  main section:not(.cu-hero-has-search) h2,
  main section:not(.cu-hero-has-search) h3{
    display:block!important;
    margin-top:0!important;
    margin-bottom:18px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    clear:both!important;
    text-align:center!important;
  }
  #root section:not(.cu-hero-has-search) h1 span,
  #root section:not(.cu-hero-has-search) h2 span,
  #root section:not(.cu-hero-has-search) h3 span,
  #dynamic-home-root h1 span,
  #dynamic-home-root h2 span,
  #dynamic-home-root h3 span,
  main section:not(.cu-hero-has-search) h1 span,
  main section:not(.cu-hero-has-search) h2 span,
  main section:not(.cu-hero-has-search) h3 span{
    position:static!important;
    transform:none!important;
    display:inline!important;
    line-height:inherit!important;
    vertical-align:baseline!important;
  }

  /* services label + heading: keep the small red label above, never inside the main title */
  .cu-hero-has-search + * > div:first-child,
  .cu-hero-has-search + * .container,
  .cu-hero-has-search + * [class*="container"]{
    overflow:visible!important;
  }
  .cu-hero-has-search + * p:first-child,
  .cu-hero-has-search + * .text-\[\#7A1F2E\],
  .cu-hero-has-search + * [class*="text-[#7A1F2E]"]{
    display:block!important;
    position:relative!important;
    transform:none!important;
    margin:0 auto 10px!important;
    line-height:1.4!important;
    text-align:center!important;
    z-index:1!important;
  }

  /* all homepage cards/sections need breathing room on mobile */
  #root section:not(.cu-hero-has-search){
    padding-left:16px!important;
    padding-right:16px!important;
  }
  #root section:not(.cu-hero-has-search) > div,
  main section:not(.cu-hero-has-search) > div{
    max-width:100%!important;
  }
}
@media (max-width:420px){
  .cu-hero-has-search{min-height:635px!important;padding-bottom:178px!important;}
  body #cedduUnifiedHomeSearch{bottom:14px!important;}
  .cu-hero-has-search + *{margin-top:-14px!important;padding-top:54px!important;}
}
/* Ceddu dynamic reviews */
#ceddu-dynamic-reviews{background:#fff;padding:70px 20px;font-family:'Tajawal','Poppins',sans-serif;position:relative;z-index:2;clear:both}.cdr-wrap{max-width:1180px;margin:0 auto}.cdr-head{text-align:center;margin-bottom:28px}.cdr-head h2{font-size:clamp(30px,4vw,46px);font-weight:900;color:#111;margin:0 0 8px;line-height:1.25}.cdr-head p{font-size:17px;color:#666;margin:0}.cdr-top{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:32px}.cdr-google{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:#fff;border:1px solid #eee;border-radius:18px;padding:22px;box-shadow:0 8px 26px rgba(0,0,0,.06)}.cdr-g-logo{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#4285f4,#34a853,#fbbc05,#ea4335);display:flex;align-items:center;justify-content:center;color:#fff;font-size:42px;font-weight:900}.cdr-google h3{margin:0 0 8px;color:#111;font-size:20px}.cdr-score{font-size:36px;font-weight:900;color:#111}.cdr-score span{font-size:22px;color:#f4b400;letter-spacing:2px}.cdr-google p{margin:3px 0 0;color:#777}.cdr-google a{background:#159957;color:#fff;text-decoration:none;border-radius:12px;padding:14px 22px;font-weight:900;white-space:nowrap}.cdr-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px}.cdr-subtitle{color:#111;font-size:24px;margin:0;font-weight:900}.cdr-nav{display:flex;gap:10px}.cdr-nav button{width:42px;height:42px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#7A1F2E;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.08)}.cdr-track{display:flex;gap:20px;overflow-x:auto;padding:8px 4px 18px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.cdr-track::-webkit-scrollbar{height:8px}.cdr-track::-webkit-scrollbar-thumb{background:#7A1F2E;border-radius:20px}.cdr-card{flex:0 0 320px;background:#fff;border:1px solid #eee;border-radius:18px;padding:22px;box-shadow:0 7px 22px rgba(0,0,0,.05);scroll-snap-align:start}.cdr-stars{color:#f4b400;font-size:20px;margin-bottom:12px;letter-spacing:2px}.cdr-card p{color:#333;line-height:1.8;font-size:16px;min-height:84px;margin:0 0 18px}.cdr-person{display:flex;align-items:center;gap:12px}.cdr-person img,.cdr-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:center;background:#7A1F2E;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:22px;flex:0 0 58px}.cdr-person strong{display:block;color:#111;font-size:17px}.cdr-person small{display:block;color:#777;margin-top:3px}.cdr-empty{text-align:center;color:#777;background:#fafafa;border:1px dashed #ddd;border-radius:16px;padding:24px;width:100%}@media(max-width:768px){#ceddu-dynamic-reviews{padding:48px 16px}.cdr-google{grid-template-columns:1fr;text-align:center}.cdr-g-logo{margin:auto}.cdr-google a{display:block}.cdr-card{flex-basis:86vw}.cdr-head h2{font-size:30px}.cdr-score{font-size:32px}.cdr-title-row{align-items:center}.cdr-nav button{width:38px;height:38px;font-size:27px}}
