/*
 * Detay Temizlik — Final Global UI/UX System
 * Based on the final project specification.
 */
:root{
  --dt-site-width:1140px;
  --dt-font-base:var(--dt-base-font-size,16px);
  --dt-font-small:max(13px,calc(var(--dt-font-base) * .8125));
  --dt-font-body:var(--dt-font-base);
  --dt-font-h6:var(--dt-font-base);
  --dt-font-h5:calc(var(--dt-font-base) * 1.125);
  --dt-font-h4:calc(var(--dt-font-base) * 1.3125);
  --dt-font-h3:calc(var(--dt-font-base) * 1.625);
  --dt-font-h2:calc(var(--dt-font-base) * 2.125);
  --dt-font-h1:calc(var(--dt-font-base) * 2.875);
  --dt-line-height:1.65;
  --dt-navy:#071b34;
  --dt-navy-2:#0a2444;
  --dt-gold:#e8a400;
  --dt-gold-2:#f1b52a;
  --dt-surface:#fff;
  --dt-surface-soft:#f7f9fb;
  --dt-text:#10233d;
  --dt-muted:#657386;
  --dt-radius:16px;
  --dt-shadow:0 8px 24px rgba(7,26,49,.07);
}

html{box-sizing:border-box}
*,*:before,*:after{box-sizing:inherit}

body{
  font-size:var(--dt-font-base);
  line-height:var(--dt-line-height);
  color:var(--dt-text);
}

p,li{
  font-size:var(--dt-font-body);
  line-height:var(--dt-line-height);
}

.entry-content p,.entry-content li,
.dt-single-service-page .dt-ss-content p,
.dt-single-service-page .dt-ss-content li{
  max-width:70ch;
}

h1{font-size:var(--dt-font-h1);line-height:1.12}
h2{font-size:var(--dt-font-h2);line-height:1.18}
h3{font-size:var(--dt-font-h3);line-height:1.25}
h4{font-size:var(--dt-font-h4);line-height:1.3}
h5{font-size:var(--dt-font-h5);line-height:1.35}
h6{font-size:var(--dt-font-h6);line-height:1.4}

/* One central width system */
.dt-container,
.dt-v2-container,
.dt-v7-hero-container,
.dt-v31-cta-inner,
.dt-about-container,
.dt-about-hero-inner,
.dt-contact-container,
.dt-ss-wrap,
.dt-footer-shell,
.dt-cta-inner,
.dt-section-inner,
.dt-content-inner,
.dt-page-inner{
  width:min(calc(100% - 32px),var(--dt-site-width)) !important;
  max-width:var(--dt-site-width) !important;
  margin-inline:auto;
}

/* Keep full-width backgrounds while inner content follows the central width. */
.dt-main-inner-sticky.is-dt-stuck{
  width:min(calc(100% - 32px),var(--dt-site-width)) !important;
  max-width:var(--dt-site-width) !important;
}

/* Services: 5 / 3 / 1 card system */
.dt-services-page .dt-v2-grid{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  align-items:stretch !important;
  gap:20px !important;
}
.dt-services-page .dt-v2-card{
  height:100%;
  min-width:0;
  display:flex !important;
  flex-direction:column !important;
  border-radius:18px;
}
.dt-services-page .dt-v2-card-body{
  display:flex !important;
  flex:1 1 auto;
  flex-direction:column !important;
}
.dt-services-page .dt-v2-card-body>a{
  margin-top:auto;
}
.dt-services-page .dt-v2-card p{
  font-size:15px !important;
  line-height:1.6 !important;
  min-height:0 !important;
}
.dt-services-page .dt-v2-card h3{
  font-size:17px !important;
  line-height:1.3 !important;
}

/* Compact premium services hero */
.dt-services-page .dt-v2-hero-v7,
.dt-services-page .dt-v7-hero-container{
  min-height:0 !important;
}
.dt-services-page .dt-v2-hero-v7 .dt-v7-copy{
  max-width:700px;
  padding-block:42px !important;
}
.dt-services-page .dt-v2-hero-v7 h1{
  font-size:clamp(34px,4vw,var(--dt-font-h1));
  line-height:1.1;
}
.dt-services-page .dt-v2-hero-v7 .dt-v7-copy>p{
  max-width:68ch;
  font-size:16px !important;
  line-height:1.65 !important;
}

/* Common card language */
.dt-v2-card,
.dt-contact-info-card,
.dt-contact-form-card,
.dt-contact-address-card,
.dt-about-page article,
.dt-ss-side-card{
  border-radius:var(--dt-radius);
}

/* Single service width and readability */
.dt-single-service-page .dt-ss-wrap{
  width:min(calc(100% - 32px),var(--dt-site-width)) !important;
  max-width:var(--dt-site-width) !important;
}
.dt-single-service-page .dt-ss-content{
  font-size:var(--dt-font-body);
  line-height:var(--dt-line-height);
}
.dt-single-service-page .dt-ss-content h2{
  font-size:var(--dt-font-h2);
  line-height:1.2;
  margin-top:34px;
}
.dt-single-service-page .dt-ss-content h3{
  font-size:var(--dt-font-h3);
  line-height:1.25;
}

/* About and contact use the same width/typography system */
.dt-about-page .dt-about-container,
.dt-about-page .dt-about-hero-inner{
  width:min(calc(100% - 32px),var(--dt-site-width)) !important;
  max-width:var(--dt-site-width) !important;
}
.dt-about-page p,
.dt-about-page li{
  font-size:var(--dt-font-body) !important;
  line-height:var(--dt-line-height) !important;
}
.dt-contact-container{
  width:min(calc(100% - 32px),var(--dt-site-width)) !important;
  max-width:var(--dt-site-width) !important;
}
.dt-contact-page p{
  line-height:var(--dt-line-height);
}

/* CTA geometry */
.dt-services-page .dt-v31-cta-inner{
  width:min(calc(100% - 32px),var(--dt-site-width)) !important;
  max-width:var(--dt-site-width) !important;
  min-height:100px;
}
.dt-ss-bottom-cta{
  min-height:315px;
  border-radius:20px;
  overflow:hidden;
}

/* Footer: only the two WP menus + contact/service-area columns already rendered by the theme. */
.dt-footer-shell{
  width:min(calc(100% - 32px),var(--dt-site-width)) !important;
  max-width:var(--dt-site-width) !important;
}

/* Mobile sticky contact remains the only mobile contact bar. */
@media (max-width:1199px) and (min-width:768px){
  .dt-services-page .dt-v2-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media (max-width:767px){
  :root{
    --dt-font-base:max(15px,var(--dt-base-font-size,16px));
    --dt-font-body:var(--dt-font-base);
    --dt-font-h1:clamp(30px,8vw,34px);
    --dt-font-h2:clamp(26px,7vw,30px);
    --dt-font-h3:clamp(22px,6vw,25px);
    --dt-font-h4:20px;
  }
  body{font-size:var(--dt-font-base);line-height:1.65}
  p,li{font-size:var(--dt-font-body);line-height:1.65}
  .dt-container,
  .dt-v2-container,
  .dt-v7-hero-container,
  .dt-v31-cta-inner,
  .dt-about-container,
  .dt-about-hero-inner,
  .dt-contact-container,
  .dt-ss-wrap,
  .dt-footer-shell,
  .dt-cta-inner,
  .dt-section-inner,
  .dt-content-inner,
  .dt-page-inner{
    width:calc(100% - 24px) !important;
    max-width:none !important;
  }
  .dt-main-inner-sticky.is-dt-stuck{
    width:calc(100% - 24px) !important;
    max-width:none !important;
  }
  .dt-services-page .dt-v2-grid{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  .dt-services-page .dt-v2-card p{
    font-size:15px !important;
  }
  .dt-services-page .dt-v2-hero-v7 .dt-v7-copy{
    padding-block:32px !important;
  }
  .dt-services-page .dt-v2-hero-v7 h1{
    font-size:var(--dt-font-h1);
  }
  .dt-services-page .dt-v2-hero-v7 .dt-v7-copy>p{
    font-size:15px !important;
  }
  .dt-single-service-page .dt-ss-content h2{
    font-size:var(--dt-font-h2);
  }
}


/* LCP fix — services hero uses a real eager image instead of a CSS background. */
.dt-services-page .dt-v2-hero-v7 .dt-v7-hero-bg{
  background-image:none !important;
  background-color:#071a31 !important;
  overflow:hidden;
}
.dt-services-page .dt-v2-hero-v7 .dt-v7-hero-bg .dt-v7-hero-img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center center;
}
.dt-services-page .dt-v2-hero-v7 .dt-v7-hero-bg[style]{
  background-image:none !important;
}


/* Final NO_LCP hardening — keep a visible, non-ARIA-hidden hero image. */
.dt-services-page .dt-v2-hero-v7 .dt-v7-hero-bg{
  content-visibility:visible !important;
  contain:none !important;
  background-image:none !important;
}
.dt-services-page .dt-v2-hero-v7 .dt-v7-hero-bg .dt-v7-hero-img{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
}


/* Homepage LCP hardening — keep the primary hero image paintable. */
.dt-hero{
  content-visibility:visible !important;
  contain:none !important;
}
.dt-hero .dt-hero-visual{
  content-visibility:visible !important;
  contain:none !important;
}
.dt-hero .dt-hero-visual img{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  transform:none !important;
  will-change:auto !important;
}
@media (min-width:981px){
  .dt-hero .dt-hero-visual img{
    width:100% !important;
    height:100% !important;
  }
}


/* LCP candidate hardening — never defer hero image rendering. */
.dt-hero .dt-hero-visual img,
.dt-services-page .dt-v2-hero-v7 .dt-v7-hero-img{
  content-visibility:visible !important;
}
