/* GERCEK V72 — targeted mobile refinements and compact quality timeline.
   No site-wide layout resets; desktop service pages and other sections are retained. */

/* Quality policy: replace 01/02/03 boxes with a continuous, accessible timeline. */
.v32-about .quality-v31-list.v72-quality-timeline {
  position:relative;
  display:grid;
  align-content:start;
  gap:0;
  padding:4px 0 2px;
}
.v32-about .quality-v31-list.v72-quality-timeline::before {
  content:"";
  position:absolute;
  top:15px;
  bottom:20px;
  left:7px;
  width:2px;
  background:linear-gradient(180deg,#1ca9e5 0%,#9adbf3 75%,#e7f6ff 100%);
  border-radius:2px;
}
.v32-about .quality-v31-list .v72-quality-step,
.v32-about .quality-v31-list .v72-quality-step:last-child {
  position:relative;
  display:grid;
  grid-template-columns:16px minmax(0,1fr);
  align-items:start;
  gap:12px;
  padding:0 0 19px;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:transparent;
}
.v32-about .quality-v31-list .v72-quality-step:last-child {padding-bottom:0}
.v32-about .quality-v31-list .v72-quality-node {
  position:relative;
  width:14px;
  height:14px;
  margin:4px 0 0 1px;
  padding:0;
  border:3px solid #139bd8;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px #e9f8ff;
  font-size:0;
}
.v32-about .quality-v31-list .v72-quality-step p {
  margin:0;
  min-width:0;
  font-size:13.5px;
  line-height:1.65;
  font-weight:450;
  color:#48657d;
}

/* Optional text-only route to the containing category, not a back button. */
.v66-unified-copy .v72-service-path {
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  max-width:100%;
  margin:0 0 13px;
  font-size:11px;
  line-height:1.45;
  font-weight:750;
  letter-spacing:.01em;
  color:#6187a6;
}
.v66-unified-copy .v72-service-path a {
  min-width:0;
  max-width:100%;
  color:#147bb6;
  text-decoration:none;
  border-bottom:1px solid transparent;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.v66-unified-copy .v72-service-path a:first-child{flex:none;color:#2e648d}
.v66-unified-copy .v72-service-path a:last-child {flex:0 1 auto}
.v66-unified-copy .v72-service-path a:hover,
.v66-unified-copy .v72-service-path a:focus-visible {color:#07588e;border-color:currentColor}
.v66-unified-copy .v72-service-path span {flex:none;opacity:.45}

/* The v70 photograph catalog has been reverted to the previous v69 grid.
   Do not show service counts in the restored catalog. */
.v45-catalog .v43-results-head .v38-results-count{display:none!important}
/* Preserve PHP category and JavaScript search filters even against legacy display:block!important rules. */
.v45-catalog [hidden]{display:none!important}

@media (max-width:860px) {
  /* Mobile navigation: compact icon-only control, accessible label retained. */
  .v34-header .v34-nav {min-height:68px;gap:10px}
  .v34-header .v34-brand img{width:min(46vw,178px);height:auto;max-height:50px}
  .v34-header .v34-menu-toggle.v72-mobile-menu-button {
    display:inline-grid;
    place-items:center;
    flex:none;
    position:relative;
    width:43px;
    height:43px;
    min-width:43px;
    min-height:43px;
    padding:0;
    margin-left:auto;
    border:1px solid #cae4f4;
    border-radius:13px;
    background:linear-gradient(145deg,#fff 0%,#edf8ff 100%);
    color:#077eb9;
    box-shadow:0 3px 9px rgba(13,101,160,.06);
    transition:background .2s,border-color .2s,box-shadow .2s;
    cursor:pointer;
  }
  .v34-header .v72-mobile-menu-button svg{
    grid-area:1/1;
    width:21px;
    height:21px;
    stroke:currentColor;
    transition:opacity .14s ease,transform .14s ease;
  }
  .v34-header .v72-mobile-menu-button .v72-menu-close{opacity:0;transform:rotate(-40deg) scale(.8)}
  .v34-header .v72-mobile-menu-button[aria-expanded="true"]{
    background:#dff3ff;border-color:#99d4f2;color:#006fa7;
  }
  .v34-header .v72-mobile-menu-button[aria-expanded="true"] .v72-menu-open{opacity:0;transform:rotate(40deg) scale(.8)}
  .v34-header .v72-mobile-menu-button[aria-expanded="true"] .v72-menu-close{opacity:1;transform:none}
  .v34-header .v72-mobile-menu-button .v72-menu-label{display:none}
  .v34-header .v34-menu-toggle:focus-visible{outline:3px solid #82cdf3;outline-offset:3px}
  .v34-header .v34-nav-links {z-index:80;border-radius:0 0 16px 16px}
}

@media (max-width:700px) {
  /* Slider controls should read as quiet navigation, not large floating buttons. */
  body.cms-theme .hero-slider-v19 .slider-arrow {
    top:auto!important;
    bottom:10px!important;
    transform:none!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    padding:0!important;
    border:1px solid rgba(122,182,214,.60)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.79)!important;
    color:#117bb3!important;
    box-shadow:0 2px 8px rgba(13,68,103,.06)!important;
    backdrop-filter:blur(6px);
  }
  body.cms-theme .hero-slider-v19 .slider-arrow:hover{transform:none!important;background:#fff!important}
  body.cms-theme .hero-slider-v19 .slider-prev{left:15px!important}
  body.cms-theme .hero-slider-v19 .slider-next{right:15px!important}
  body.cms-theme .hero-slider-v19 .slider-arrow svg{
    width:14px!important;height:14px!important;
    stroke-width:1.7!important;
  }
  body.cms-theme .hero-slider-v19 .slider-dots-v19 {
    left:50%!important;
    right:auto!important;
    bottom:10px!important;
    transform:translateX(-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-height:29px!important;
    padding:8px 10px!important;
    background:rgba(255,255,255,.75)!important;
    border:1px solid rgba(161,209,235,.52)!important;
    border-radius:999px!important;
    box-shadow:0 2px 8px rgba(14,73,108,.045)!important;
  }
  body.cms-theme .hero-slider-v19 .slider-dots-v19 .slider-dot {
    display:block!important;
    width:6px!important;
    height:6px!important;
    min-width:6px!important;
    min-height:6px!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    background:#a2c7df!important;
    box-shadow:none!important;
    transition:width .2s ease,background .2s ease!important;
  }
  body.cms-theme .hero-slider-v19 .slider-dots-v19 .slider-dot.active{
    width:18px!important;
    background:#139cdf!important;
  }

  /* Headings scale with mobile screens, no oversized 4–5-line blocks. */
  body.cms-theme .why-us .why-us-head{
    max-width:100%;
    margin-bottom:15px!important;
  }
  body.cms-theme .why-us .why-us-head h2{
    font-size:clamp(24px,6.2vw,32px)!important;
    line-height:1.14!important;
    letter-spacing:-.035em!important;
    text-wrap:balance;
    overflow-wrap:break-word;
    max-width:100%;
  }
  body.cms-theme .why-us .why-copy h3{
    font-size:clamp(20px,5.2vw,24px)!important;
    line-height:1.23!important;
  }
  body.cms-theme .why-us .why-copy p{font-size:12.5px!important;line-height:1.6!important;margin-top:11px!important}
  body.cms-theme .why-us .why-copy strong{font-size:13px!important;line-height:1.45!important;margin-top:14px!important}

  /* Smaller service tiles on the home page, no extra vertical padding. */
  body.cms-theme .services-card-grid{gap:9px!important}
  body.cms-theme .services-card-grid>.service-tile {
    display:grid!important;
    grid-template-columns:37px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    gap:2px 10px!important;
    align-content:center!important;
    min-height:0!important;
    padding:12px!important;
    border:1px solid #e0edf5!important;
    border-radius:14px!important;
    box-shadow:0 4px 12px rgba(11,65,98,.035)!important;
  }
  body.cms-theme .services-card-grid>.service-tile .service-icon {
    grid-column:1!important;
    grid-row:1/span 3!important;
    width:35px!important;height:35px!important;
    min-width:35px!important;
    margin:0!important;
    padding:7px!important;
    border-radius:10px!important;
  }
  body.cms-theme .services-card-grid>.service-tile .service-icon svg{width:19px!important;height:19px!important;max-width:19px!important}
  body.cms-theme .services-card-grid>.service-tile h3 {
    grid-column:2!important;grid-row:1!important;
    min-height:0!important;
    margin:0!important;
    font-size:14px!important;
    line-height:1.27!important;
    letter-spacing:-.01em!important;
  }
  body.cms-theme .services-card-grid>.service-tile p {
    grid-column:2!important;grid-row:2!important;
    margin:3px 0 0!important;
    font-size:11.5px!important;
    line-height:1.47!important;
    color:#57738b!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
  }
  body.cms-theme .services-card-grid>.service-tile a {
    grid-column:2!important;grid-row:3!important;
    margin:3px 0 0!important;
    padding:0!important;
    font-size:11.5px!important;
    line-height:1.4!important;
    text-decoration:underline!important;
    text-underline-offset:2px!important;
  }

  /* About page — remove huge padding, headings and tall service cards on mobile. */
  .v32-about .about-hero-v31 {
    padding:28px 0 31px!important;
    background:linear-gradient(155deg,#fbfeff,#edf8fe)!important;
  }
  .v32-about .about-hero-v31-grid{gap:0!important}
  .v32-about .about-hero-v31 h1{
    font-size:clamp(25px,6.6vw,33px)!important;
    line-height:1.15!important;
    letter-spacing:-.035em!important;
    text-wrap:balance;
    margin-top:7px!important;
  }
  .v32-about .about-hero-v31 p{
    font-size:12.8px!important;
    line-height:1.62!important;
    margin-top:12px!important;
  }
  .v32-about .about-hero-actions{margin-top:16px!important;gap:8px!important}
  .v32-about .about-hero-actions .btn{
    min-height:36px!important;
    padding:8px 12px!important;
    font-size:11.8px!important;
    border-radius:10px!important;
  }
  .v32-about .section {padding-top:28px!important;padding-bottom:29px!important}
  .v32-about .about-section-head{margin-bottom:13px!important}
  .v32-about .about-section-head h2{
    font-size:clamp(23px,6vw,29px)!important;
    line-height:1.17!important;
    letter-spacing:-.035em!important;
  }
  .v32-about .about-section-head p{
    font-size:12px!important;line-height:1.56!important;margin-top:8px!important;
  }
  .v32-about .about-service-grid{grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
  .v32-about .about-service-grid article{
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    align-content:center!important;
    gap:3px 11px!important;
    min-height:0!important;
    padding:13px!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }
  .v32-about .about-service-grid .about-service-icon {
    grid-column:1!important;grid-row:1/span 2!important;
    width:35px!important;height:35px!important;
    padding:7px!important;
    border-radius:9px!important;
    margin:0!important;
  }
  .v32-about .about-service-grid h3{grid-column:2!important;grid-row:1!important;font-size:14px!important;line-height:1.3!important;margin:0!important}
  .v32-about .about-service-grid p{grid-column:2!important;grid-row:2!important;margin:2px 0 0!important;font-size:11.8px!important;line-height:1.45!important}
  .v32-about .about-pillars-grid{gap:10px!important}
  .v32-about .about-pillar-card{
    min-height:0!important;
    padding:18px!important;
    border-radius:16px!important;
  }
  .v32-about .about-pillar-card h2 {
    font-size:clamp(19px,5vw,23px)!important;
    padding-right:22px!important;
    line-height:1.22!important;
  }
  .v32-about .v32-pillar-icon{right:14px!important;top:13px!important;width:55px!important;height:55px!important;opacity:.075!important}
  .v32-about .about-richtext{font-size:12.5px!important;line-height:1.62!important;margin-top:10px!important}
  .v32-about .quality-v31-shell{
    display:block!important;
    padding:19px 17px!important;
    border-radius:19px!important;
    box-shadow:none!important;
    background:linear-gradient(155deg,#fff,#f6fbff)!important;
  }
  .v32-about .quality-v31-intro h2 {
    font-size:clamp(23px,6vw,28px)!important;
    line-height:1.2!important;
    letter-spacing:-.035em!important;
    text-wrap:balance;
  }
  .v32-about .quality-v31-intro p{
    font-size:12.3px!important;
    line-height:1.6!important;
    margin-top:9px!important;
  }
  .v32-about .quality-v31-list.v72-quality-timeline{margin-top:19px!important;}
  .v32-about .quality-v31-list .v72-quality-step p{font-size:12.4px!important;line-height:1.58!important}
  .v32-about .quality-v31-list .v72-quality-step{padding-bottom:16px!important}
  .v32-about .quality-v31-list .v72-quality-step:last-child{padding-bottom:0!important}
  .v32-about .v34-extra-inner{border-radius:16px!important;padding:17px!important}
  .v32-about .v34-extra h2{font-size:21px!important;line-height:1.2!important}
  .v32-about .v34-extra p{font-size:12.5px!important;line-height:1.55!important}
}

@media (max-width:400px) {
  body.cms-theme .why-us .why-us-head h2{font-size:clamp(23px,6.15vw,26px)!important}
  .v66-unified-copy .v72-service-path{gap:5px;font-size:10px;margin-bottom:9px}
  .v66-unified-copy .v72-service-path a:first-child{max-width:100px}
  .v66-unified-copy .v72-service-path a:last-child{max-width:calc(100% - 110px)}
  .v32-about .about-hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  .v32-about .about-hero-actions .btn{width:100%;text-align:center;font-size:11px!important;padding:7px 5px!important}
}
@media (prefers-reduced-motion:reduce) {
  .v34-header .v72-mobile-menu-button svg,
  body.cms-theme .hero-slider-v19 .slider-dots-v19 .slider-dot{transition:none!important}
}
