/* BlockWise Cyprus V20, Yacht Care refinements */
.services-grid.v19-three{grid-template-columns:repeat(3,minmax(0,1fr));}
.page-hero-photo{min-width:0}
.page-hero-photo img,.detail-photo img{display:block;width:100%;height:auto;object-fit:cover;object-position:center center}
.photo-credit{display:none}
.yacht-scope{margin-top:34px}
@media(min-width:981px){
  .main-nav{gap:12px!important;font-size:13px!important}
  .brand img{width:192px!important}
  .nav-actions>.btn{padding:10px 14px!important;font-size:13px!important}
}
@media(min-width:981px) and (max-width:1180px){
  .main-nav{gap:8px!important;font-size:12.5px!important}
  .brand img{width:172px!important}
  .nav-wrap{gap:10px!important}
  .nav-actions>.btn{display:none!important}
}
@media(max-width:980px){.services-grid.v19-three{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.services-grid.v19-three{grid-template-columns:1fr}.photo-credit{text-align:left}}

/* V37 mobile navigation fix
   Keep the required menu order, but do NOT force the menu visible on mobile. */
.main-nav a[href="index.html"]{order:1!important;}
.main-nav a[href="about.html"]{order:2!important;}
.main-nav a[href="approach.html"]{order:3!important;}
.main-nav a[href="property-care.html"]{order:4!important;}
.main-nav a[href="building-administration.html"]{order:5!important;}
.main-nav a[href="yacht-care.html"]{order:6!important;}
.main-nav a[href="contact.html"]{order:7!important;}

@media(min-width:981px){
  .main-nav{display:flex!important;}
}

@media(max-width:980px){
  .main-nav{
    display:none!important;
    z-index:1000;
    max-height:calc(100vh - 72px);
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .main-nav.open{display:flex!important;}
  .main-nav a{
    width:100%;
    padding:13px 4px!important;
  }
}

@media(max-width:680px){
  .main-nav{max-height:calc(100vh - 66px);}
}


/* V38 heading refinement
   Slightly smaller headings for a more balanced, premium appearance. */
h1{font-size:clamp(40px,4.9vw,64px)!important;}
h2{font-size:clamp(29px,3.7vw,44px)!important;}
.page-hero h1{font-size:clamp(36px,4.6vw,58px)!important;}

@media(max-width:680px){
  h1{font-size:clamp(34px,9.3vw,42px)!important;line-height:1.08!important;}
  h2{font-size:clamp(28px,7.7vw,35px)!important;line-height:1.12!important;}
  .page-hero h1{font-size:clamp(33px,8.9vw,40px)!important;}
  .content h2{font-size:27px!important;}
  .contact-panel h2{font-size:28px!important;}
}

@media(max-width:390px){
  .hero h1{font-size:34px!important;}
}


/* V47 cache-proof logo sizing */
.brand{
  flex:0 0 auto;
}
.brand img{
  width:220px!important;
  max-width:220px!important;
  height:auto!important;
  display:block!important;
}
.footer-logo{
  width:225px!important;
  max-width:225px!important;
  height:auto!important;
}
@media (min-width:981px) and (max-width:1180px){
  .brand img{width:195px!important;max-width:195px!important;}
}
@media (max-width:980px){
  .brand img{width:190px!important;max-width:190px!important;}
}
@media (max-width:430px){
  .brand img{width:170px!important;max-width:170px!important;}
}


/* V50 - refined heading scale across the whole website
   Smaller and more balanced on desktop, tablet and mobile. */

main h1{
  font-size:clamp(34px,3.9vw,52px)!important;
  line-height:1.08!important;
  letter-spacing:-0.025em;
}

main h2{
  font-size:clamp(26px,2.8vw,36px)!important;
  line-height:1.13!important;
  letter-spacing:-0.018em;
}

main h3{
  font-size:clamp(20px,1.7vw,24px)!important;
  line-height:1.2!important;
}

.page-hero h1{
  font-size:clamp(34px,3.7vw,50px)!important;
}

.hero h1{
  font-size:clamp(36px,4vw,52px)!important;
}

.content h2{
  font-size:clamp(27px,2.5vw,34px)!important;
}

.content h3,
.sidebar-card h3{
  font-size:22px!important;
}

.service-card h3{
  font-size:23px!important;
}

@media(max-width:980px){
  main h1{
    font-size:clamp(32px,6.2vw,42px)!important;
  }
  main h2{
    font-size:clamp(25px,4.6vw,32px)!important;
  }
  main h3{
    font-size:clamp(20px,3.4vw,23px)!important;
  }
  .page-hero h1{
    font-size:clamp(31px,5.8vw,40px)!important;
  }
}

@media(max-width:680px){
  main h1,
  .hero h1{
    font-size:clamp(30px,8vw,36px)!important;
    line-height:1.08!important;
  }

  main h2{
    font-size:clamp(24px,6.4vw,29px)!important;
    line-height:1.12!important;
  }

  .page-hero h1{
    font-size:clamp(30px,7.8vw,35px)!important;
  }

  .content h2,
  .contact-panel h2{
    font-size:26px!important;
  }

  .content h3,
  .sidebar-card h3,
  .service-card h3{
    font-size:21px!important;
  }
}

@media(max-width:390px){
  main h1,
  .hero h1,
  .page-hero h1{
    font-size:30px!important;
  }

  main h2{
    font-size:24px!important;
  }

  main h3{
    font-size:20px!important;
  }
}
