@font-face{
  font-family:"Neulis Alt";
  src:url("../fonts/NeulisAlt-Regular.otf") format("opentype");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"Neulis Alt";
  src:url("../fonts/NeulisAlt-Light.otf") format("opentype");
  font-weight:300;
  font-style:normal;
  font-display:swap;
}

:root{
  --almecare-blue:#126B98;
  --almecare-blue-dark:#0d5579;
  --almecare-blue-soft:#eaf5fb;
  --almecare-mint:#8FD9B2;
  --almecare-mint-dark:#72C79A;
  --almecare-mint-soft:#EEF8F2;
  --almecare-display-font:"Neulis Alt", "Avenir Next", "Segoe UI", sans-serif;
  --almecare-text:#153447;
  --almecare-muted:#567185;
  --almecare-line:#d9ebf3;
  --almecare-bg:#f6fbfd;
  --almecare-white:#ffffff;
  --almecare-shadow:0 18px 46px rgba(18,107,152,.12);
  --almecare-shadow-soft:0 10px 26px rgba(18,107,152,.08);
  --almecare-radius:28px;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--almecare-text);background:#fff;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.almecare-container{width:min(1160px,calc(100% - 40px));margin:0 auto}
.almecare-topbar{background:var(--almecare-blue-dark);color:#fff;font-size:.92rem}
.almecare-topbar .almecare-container{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:8px 0}
.almecare-topbar a{text-decoration:underline;text-underline-offset:3px;color:#fff}
.almecare-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(217,235,243,.9);box-shadow:0 6px 18px rgba(18,107,152,.04)}
.admin-bar .almecare-header{top:32px}
.almecare-nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.almecare-logo img{height:62px;width:auto}.almecare-logo{display:flex;align-items:center;min-width:230px}
.almecare-menu{display:flex;align-items:center;gap:22px;font-weight:750;color:var(--almecare-blue-dark)}
.almecare-menu ul{list-style:none;display:flex;gap:22px;margin:0;padding:0;align-items:center}.almecare-menu a{position:relative;color:var(--almecare-blue-dark)}
.almecare-menu a:hover{color:var(--almecare-blue)}
.almecare-header-cta{display:inline-flex;background:var(--almecare-blue);color:#fff!important;border-radius:999px;padding:12px 20px;font-weight:850;box-shadow:0 12px 24px rgba(18,107,152,.18)}
.almecare-footer{background:var(--almecare-blue-dark);color:#fff;padding:50px 0 26px;margin-top:40px}
.almecare-footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:30px}.almecare-footer-logo{height:58px;background:#fff;border-radius:10px;padding:6px 8px;margin-bottom:14px}.almecare-footer p,.almecare-footer a{color:rgba(255,255,255,.82)}.almecare-footer a{display:block;margin:8px 0}.almecare-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:18px;color:rgba(255,255,255,.68);font-size:.9rem;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.elementor .almecare-section,.almecare-section{padding:82px 0}.elementor .almecare-section-muted,.almecare-section-muted{background:linear-gradient(180deg,#f8fcfd 0%,#fff 100%)}
.elementor .almecare-hero-section{padding:92px 0 82px;background:linear-gradient(135deg,#eef8fc 0%,#ffffff 58%,#eef8fc 100%);overflow:hidden;position:relative}
.elementor .almecare-heading h1,.almecare-heading h1{font-size:clamp(2.45rem,5vw,4.8rem)!important;line-height:1.04!important;letter-spacing:-.055em;color:var(--almecare-blue-dark);margin:0 0 22px}
.elementor .almecare-heading h2,.almecare-heading h2{font-size:clamp(2rem,3.4vw,3.2rem)!important;line-height:1.1!important;letter-spacing:-.04em;color:var(--almecare-blue-dark);margin:0 0 14px}
.elementor .almecare-lead,.almecare-lead{font-size:1.17rem;color:#48697d;max-width:720px}.almecare-eyebrow{display:inline-flex;padding:8px 13px;border:1px solid var(--almecare-line);background:rgba(255,255,255,.88);border-radius:999px;color:var(--almecare-blue-dark);font-weight:850;font-size:.88rem;box-shadow:var(--almecare-shadow-soft);margin-bottom:18px}
.elementor .almecare-button .elementor-button,.almecare-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px!important;padding:14px 24px!important;font-weight:850!important;background:var(--almecare-blue)!important;color:#fff!important;box-shadow:0 12px 24px rgba(18,107,152,.18)}
.elementor .almecare-button-secondary .elementor-button{background:#fff!important;color:var(--almecare-blue-dark)!important;border:1px solid var(--almecare-line)!important}
.almecare-card,.almecare-service-card{background:#fff;border:1px solid var(--almecare-line);border-radius:var(--almecare-radius);box-shadow:var(--almecare-shadow-soft);overflow:hidden;transition:.18s ease}.almecare-card:hover,.almecare-service-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(18,107,152,.10)}
.almecare-card-pad{padding:26px}.almecare-card h3,.almecare-service-card h3{color:var(--almecare-blue-dark);margin:.2em 0 .45em;font-size:1.3rem}.almecare-card p,.almecare-service-card p{color:var(--almecare-muted);margin:0}
.almecare-illustration img,.almecare-card img,.almecare-service-card img{border-radius:24px;background:#f6fbfd}.almecare-illustration img{box-shadow:var(--almecare-shadow-soft)}
.almecare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.almecare-grid.two{grid-template-columns:repeat(2,1fr)}.almecare-grid.four{grid-template-columns:repeat(4,1fr)}
.almecare-service-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:0}.almecare-service-body{padding:20px 22px 24px}.almecare-service-tag{display:inline-flex;padding:6px 11px;border-radius:999px;background:var(--almecare-mint-soft);color:var(--almecare-blue-dark);font-weight:850;font-size:.82rem;margin-bottom:10px}
.almecare-quote{background:linear-gradient(135deg,var(--almecare-blue),var(--almecare-blue-dark));color:#fff;border-radius:32px;padding:38px;box-shadow:var(--almecare-shadow)}.almecare-quote blockquote{font-size:2rem;line-height:1.2;margin:0 0 18px;font-weight:850;letter-spacing:-.03em}.almecare-quote p{color:rgba(255,255,255,.82)}
.almecare-cta{background:linear-gradient(135deg,var(--almecare-blue),var(--almecare-blue-dark));color:#fff;border-radius:36px;padding:44px;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:var(--almecare-shadow)}.almecare-cta h2{font-size:2.2rem;line-height:1.1;margin:0 0 8px}.almecare-cta p{margin:0;color:rgba(255,255,255,.82)}.almecare-cta a{background:#fff;color:var(--almecare-blue-dark);border-radius:999px;padding:13px 22px;font-weight:850}
.almecare-info-list{display:grid;gap:14px}.almecare-info-row{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--almecare-line);border-radius:20px;padding:16px;box-shadow:var(--almecare-shadow-soft)}.almecare-info-dot{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:15px;background:var(--almecare-mint-soft);color:var(--almecare-blue-dark);font-weight:850}.almecare-info-row strong{display:block;color:var(--almecare-blue-dark)}.almecare-info-row span{color:var(--almecare-muted)}
.almecare-notice{background:#f2fbf7;border:1px solid #cfe9dc;border-radius:22px;padding:20px;color:#345567}
@media(max-width:1000px){.almecare-grid,.almecare-grid.two,.almecare-grid.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.admin-bar .almecare-header{top:46px}.almecare-topbar .almecare-container{display:none}.almecare-nav{height:72px}.almecare-logo img{height:46px}.almecare-menu{font-size:.92rem;gap:12px}.almecare-menu ul{gap:12px;flex-wrap:wrap}.almecare-footer-grid,.almecare-grid,.almecare-grid.two,.almecare-grid.four{grid-template-columns:1fr}.almecare-cta{display:block}.almecare-cta a{margin-top:20px;display:inline-flex}.elementor .almecare-hero-section{padding:54px 0}}


/* =========================================================
   ALME Care navigation fix v2.1.0
   Desktop dropdown + mobile burger menu
   ========================================================= */

.screen-reader-text{
  border:0;
  clip:rect(1px,1px,1px,1px);
  clip-path:inset(50%);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px;
  word-wrap:normal!important;
}

.almecare-menu-toggle{
  display:none;
  width:46px;
  height:46px;
  border:1px solid var(--almecare-line);
  border-radius:16px;
  background:#fff;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  box-shadow:var(--almecare-shadow-soft);
}

.almecare-menu-toggle-lines,
.almecare-menu-toggle-lines::before,
.almecare-menu-toggle-lines::after{
  display:block;
  width:22px;
  height:2px;
  background:var(--almecare-blue-dark);
  border-radius:99px;
  position:relative;
  transition:transform .18s ease, opacity .18s ease;
}

.almecare-menu-toggle-lines::before,
.almecare-menu-toggle-lines::after{
  content:"";
  position:absolute;
  left:0;
}

.almecare-menu-toggle-lines::before{top:-7px}
.almecare-menu-toggle-lines::after{top:7px}

body.almecare-menu-open .almecare-menu-toggle-lines{background:transparent}
body.almecare-menu-open .almecare-menu-toggle-lines::before{transform:translateY(7px) rotate(45deg)}
body.almecare-menu-open .almecare-menu-toggle-lines::after{transform:translateY(-7px) rotate(-45deg)}

.almecare-menu,
.almecare-menu-list{
  display:flex;
  align-items:center;
  gap:22px;
}

.almecare-menu-list,
.almecare-menu-list ul{
  list-style:none;
  margin:0;
  padding:0;
}

.almecare-menu-list > li{
  position:relative;
  display:flex;
  align-items:center;
}

.almecare-menu-list > li > a{
  display:flex;
  align-items:center;
  min-height:42px;
  color:var(--almecare-blue-dark);
  font-weight:800;
}

.almecare-menu-list > li.menu-item-has-children > a::after{
  content:"▾";
  font-size:.72em;
  margin-left:7px;
  color:var(--almecare-mint-dark);
}

.almecare-menu-list .sub-menu{
  position:absolute;
  top:100%;
  left:0;
  min-width:250px;
  display:block;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  background:#fff;
  border:1px solid var(--almecare-line);
  border-radius:18px;
  box-shadow:0 18px 38px rgba(18,107,152,.14);
  padding:10px;
  z-index:999;
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.almecare-menu-list li:hover > .sub-menu,
.almecare-menu-list li:focus-within > .sub-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.almecare-menu-list .sub-menu li{
  position:relative;
  display:block;
}

.almecare-menu-list .sub-menu a{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  color:var(--almecare-blue-dark);
  font-weight:750;
  line-height:1.25;
  white-space:normal;
}

.almecare-menu-list .sub-menu a:hover{
  background:var(--almecare-mint-soft);
  color:var(--almecare-blue);
}

.almecare-menu-list .sub-menu .sub-menu{
  top:0;
  left:100%;
}

.almecare-menu-list .current-menu-item > a,
.almecare-menu-list .current-menu-ancestor > a{
  color:var(--almecare-blue);
}

/* hide old flex behavior from nested uls */
.almecare-menu ul.sub-menu{
  gap:0;
  align-items:stretch;
}

/* mobile */
@media(max-width:980px){
  .almecare-nav{
    height:72px;
  }

  .almecare-menu-toggle{
    display:flex;
    margin-left:auto;
  }

  .almecare-menu{
    display:none;
    position:absolute;
    left:20px;
    right:20px;
    top:calc(100% + 10px);
    background:#fff;
    border:1px solid var(--almecare-line);
    border-radius:24px;
    box-shadow:0 22px 46px rgba(18,107,152,.16);
    padding:12px;
    max-height:calc(100vh - 120px);
    overflow:auto;
    z-index:9999;
  }

  body.almecare-menu-open .almecare-menu{
    display:block;
  }

  .almecare-menu-list{
    display:block!important;
    width:100%;
  }

  .almecare-menu-list > li{
    display:block;
    border-bottom:1px solid rgba(217,235,243,.85);
  }

  .almecare-menu-list > li:last-child{
    border-bottom:0;
  }

  .almecare-menu-list > li > a{
    min-height:auto;
    padding:13px 12px;
    justify-content:space-between;
    font-size:1rem;
  }

  .almecare-menu-list > li.menu-item-has-children > a::after{
    content:"";
  }

  .almecare-menu-list .sub-menu{
    position:static;
    min-width:0;
    display:block;
    opacity:1;
    visibility:visible;
    transform:none;
    box-shadow:none;
    border:0;
    border-radius:16px;
    padding:0 0 10px 12px;
    background:#f7fcfd;
    margin:0 0 8px;
  }

  .almecare-menu-list .sub-menu a{
    padding:10px 12px;
    font-size:.95rem;
    color:#31586f;
  }

  .almecare-menu-list .sub-menu a::before{
    content:"–";
    margin-right:7px;
    color:var(--almecare-mint-dark);
    font-weight:900;
  }

  .almecare-header-cta{
    display:flex!important;
    justify-content:center;
    margin-top:10px;
  }

  body.almecare-menu-open{
    overflow:hidden;
  }
}

/* prevent old mobile flex-wrap style from flattening submenu */
@media(max-width:900px){
  .almecare-menu{
    font-size:1rem!important;
    gap:0!important;
  }

  .almecare-menu ul{
    flex-wrap:initial!important;
  }
}


/* =========================================================
   ALME Care V2 - Elementor structured sections
   ========================================================= */

.elementor-section.almecare-hero-section,
.almecare-hero-section{
  padding:92px 0 82px;
  background:linear-gradient(135deg,#eef8fc 0%,#ffffff 58%,#eef8fc 100%);
  overflow:hidden;
  position:relative;
}

.elementor-section.almecare-page-section,
.almecare-page-section{
  padding:82px 0;
}

.elementor-section.almecare-muted-section,
.almecare-muted-section{
  padding:82px 0;
  background:linear-gradient(180deg,#f8fcfd 0%,#fff 100%);
}

.almecare-heading .elementor-heading-title,
.almecare-heading h1,
.almecare-heading h2{
  color:var(--almecare-blue-dark)!important;
  letter-spacing:-.045em;
}

.almecare-heading h1,
.almecare-heading .elementor-heading-title.elementor-size-default{
  font-size:clamp(2.45rem,5vw,4.8rem)!important;
  line-height:1.04!important;
}

.almecare-section-heading .elementor-heading-title{
  font-size:clamp(2rem,3.4vw,3.2rem)!important;
  line-height:1.1!important;
  letter-spacing:-.04em;
  color:var(--almecare-blue-dark)!important;
}

.almecare-lead,
.almecare-lead .elementor-widget-container,
.almecare-lead p{
  font-size:1.15rem;
  color:#48697d;
  line-height:1.7;
}

.almecare-eyebrow .elementor-heading-title,
.almecare-eyebrow{
  display:inline-flex!important;
  width:auto!important;
  padding:8px 13px;
  border:1px solid var(--almecare-line);
  background:rgba(255,255,255,.88);
  border-radius:999px;
  color:var(--almecare-blue-dark)!important;
  font-weight:850!important;
  font-size:.88rem!important;
  box-shadow:var(--almecare-shadow-soft);
  margin-bottom:18px;
}

.almecare-image-widget img,
.almecare-illustration img{
  border-radius:28px;
  background:#f6fbfd;
  box-shadow:var(--almecare-shadow-soft);
}

.almecare-card-col > .elementor-widget-wrap,
.almecare-card-box{
  background:#fff;
  border:1px solid var(--almecare-line);
  border-radius:28px;
  box-shadow:var(--almecare-shadow-soft);
  padding:26px;
  transition:transform .18s ease, box-shadow .18s ease;
}

.almecare-card-col > .elementor-widget-wrap:hover,
.almecare-card-box:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 38px rgba(18,107,152,.10);
}

.almecare-card-col .elementor-widget-heading .elementor-heading-title{
  color:var(--almecare-blue-dark)!important;
  font-size:1.32rem!important;
  line-height:1.2!important;
  margin-bottom:8px;
}

.almecare-card-col .elementor-widget-text-editor{
  color:var(--almecare-muted);
}

.almecare-button .elementor-button,
.elementor .almecare-button .elementor-button,
a.almecare-button{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  border-radius:999px!important;
  padding:13px 22px!important;
  font-weight:850!important;
  background:var(--almecare-blue)!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(18,107,152,.18);
  border:0!important;
}

.almecare-button-secondary .elementor-button,
.elementor .almecare-button-secondary .elementor-button{
  background:#fff!important;
  color:var(--almecare-blue-dark)!important;
  border:1px solid var(--almecare-line)!important;
  box-shadow:var(--almecare-shadow-soft);
}

.almecare-service-image img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:22px;
  background:#f6fbfd;
}

.almecare-quote-box{
  background:linear-gradient(135deg,var(--almecare-blue),var(--almecare-blue-dark));
  color:#fff;
  border-radius:32px;
  padding:38px;
  box-shadow:var(--almecare-shadow);
}

.almecare-quote-box h2,
.almecare-quote-box .elementor-heading-title{
  color:#fff!important;
}

.almecare-quote-box p{
  color:rgba(255,255,255,.82);
}

.almecare-list-box ul{
  columns:2;
  column-gap:34px;
  padding-left:20px;
}

.almecare-list-box li{
  break-inside:avoid;
  margin:8px 0;
  color:#4a6777;
}

.almecare-news-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.almecare-news-card{
  background:#fff;
  border:1px solid var(--almecare-line);
  border-radius:28px;
  overflow:hidden;
  box-shadow:var(--almecare-shadow-soft);
}

.almecare-news-thumb img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}

.almecare-news-body{
  padding:22px;
}

.almecare-news-date{
  display:inline-flex;
  color:var(--almecare-blue);
  font-weight:850;
  font-size:.86rem;
  margin-bottom:8px;
}

.almecare-news-body h3{
  margin:0 0 10px;
  color:var(--almecare-blue-dark);
  font-size:1.28rem;
}

.almecare-news-body p{
  color:var(--almecare-muted);
}

.almecare-news-link{
  color:var(--almecare-blue-dark);
  font-weight:850;
}

.almecare-social-note{
  background:var(--almecare-mint-soft);
  border:1px solid #cfe9dc;
  border-radius:24px;
  padding:22px;
  color:#345567;
}

/* cleaner dropdown sizing for v2 menu */
.almecare-menu-list .sub-menu{
  min-width:280px;
}

.almecare-menu-list > li > a{
  white-space:nowrap;
}

@media(max-width:1000px){
  .almecare-news-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .almecare-list-box ul{
    columns:1;
  }
}

@media(max-width:768px){
  .elementor-section.almecare-hero-section,
  .almecare-hero-section{
    padding:54px 0 48px;
  }
  .elementor-section.almecare-page-section,
  .elementor-section.almecare-muted-section,
  .almecare-page-section,
  .almecare-muted-section{
    padding:56px 0;
  }
  .almecare-news-grid{
    grid-template-columns:1fr;
  }
  .almecare-card-col > .elementor-widget-wrap{
    padding:22px;
  }
}


/* =========================================================
   ALME Care V2.1 - real photos, form, maps, privacy
   ========================================================= */

.almecare-real-photo img,
.almecare-real-photo .elementor-widget-container img{
  width:100%;
  border-radius:30px;
  box-shadow:0 18px 46px rgba(18,107,152,.14);
  object-fit:cover;
}

.almecare-photo-cover img{
  aspect-ratio:16/10;
  object-fit:cover;
}

.almecare-people-photo img{
  aspect-ratio:4/3;
  object-fit:cover;
}

.almecare-map-frame{
  border:0;
  width:100%;
  min-height:390px;
  border-radius:28px;
  box-shadow:var(--almecare-shadow-soft);
  overflow:hidden;
}

.almecare-form-box{
  background:#fff;
  border:1px solid var(--almecare-line);
  border-radius:28px;
  box-shadow:var(--almecare-shadow-soft);
  padding:28px;
}

.almecare-form-box input,
.almecare-form-box select,
.almecare-form-box textarea,
.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea{
  width:100%;
  border:1px solid var(--almecare-line);
  border-radius:16px;
  padding:13px 14px;
  margin-top:6px;
  font:inherit;
  background:#fff;
}

.wpcf7 label{
  display:block;
  font-weight:750;
  color:var(--almecare-blue-dark);
  margin-bottom:14px;
}

.wpcf7-list-item{
  margin-left:0;
}

.wpcf7 input[type="checkbox"]{
  width:auto;
  margin-right:8px;
}

.wpcf7 input[type="submit"]{
  display:inline-flex;
  width:auto;
  align-items:center;
  justify-content:center;
  border-radius:999px!important;
  padding:13px 22px!important;
  font-weight:850!important;
  background:var(--almecare-blue)!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(18,107,152,.18);
  border:0!important;
  cursor:pointer;
}

.almecare-floating-whatsapp{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:99999;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:13px 18px;
  background:#25D366;
  color:#fff!important;
  font-weight:900;
  box-shadow:0 14px 30px rgba(0,0,0,.18);
}

.almecare-legal-text h2,
.almecare-legal-text h3{
  color:var(--almecare-blue-dark);
}

.almecare-legal-text p,
.almecare-legal-text li{
  color:#48697d;
}

.almecare-seo-note{
  background:#f7fcfd;
  border-left:4px solid var(--almecare-mint-dark);
  padding:16px 18px;
  border-radius:16px;
  color:#345567;
}

@media(max-width:768px){
  .almecare-floating-whatsapp{
    right:16px;
    bottom:16px;
    padding:12px 15px;
    font-size:.92rem;
  }
  .almecare-map-frame{
    min-height:300px;
  }
}

/* =========================================================
   ALME Care V2.1.2 - animations and equal cards
   ========================================================= */

.almecare-card-col.elementor-column,
.almecare-card-col{
  display:flex;
}

.almecare-card-col > .elementor-widget-wrap,
.almecare-card-box,
.almecare-news-card{
  position:relative;
  overflow:hidden;
}

.almecare-card-col > .elementor-widget-wrap{
  width:100%;
  min-height:100%;
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:28px;
  border-radius:30px;
}

.almecare-card-col > .elementor-widget-wrap::before,
.almecare-news-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg,var(--almecare-blue) 0%, var(--almecare-mint-dark) 100%);
  opacity:.95;
}

.almecare-card-col .elementor-widget-image,
.almecare-card-col .elementor-widget-heading,
.almecare-card-col .elementor-widget-text-editor,
.almecare-card-col .elementor-widget-button,
.almecare-card-col .elementor-widget-shortcode,
.almecare-card-col .elementor-widget-html{
  width:100%;
}

.almecare-card-col .elementor-widget-image img,
.almecare-news-thumb img{
  transition:transform .5s ease;
}

.almecare-card-col:hover .elementor-widget-image img,
.almecare-news-card:hover .almecare-news-thumb img{
  transform:scale(1.035);
}

.almecare-card-col .elementor-widget-text-editor,
.almecare-card-col .elementor-widget-shortcode,
.almecare-news-body{
  flex:1 1 auto;
}

.almecare-card-col .elementor-widget-button,
.almecare-card-col .elementor-widget-shortcode:last-child{
  margin-top:auto;
}

.almecare-card-col .elementor-widget-button .elementor-button,
.almecare-news-link{
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease;
}

.almecare-card-col .elementor-widget-button .elementor-button:hover,
.almecare-news-link:hover{
  transform:translateY(-1px);
}

/* Uniforma meglio le card nei listing Bambini/Adulti */
.page-template-default .almecare-card-col .elementor-heading-title,
.page .almecare-card-col .elementor-heading-title{
  min-height:2.5em;
}

.almecare-card-col .elementor-widget-text-editor p{
  margin-top:0;
}

.almecare-service-image img,
.almecare-image-widget img{
  border-radius:24px;
}

/* Reveal animation on scroll */
.almecare-reveal-target{
  opacity:0;
  transform:translateY(26px) scale(.985);
  transition:opacity .65s cubic-bezier(.22,.61,.36,1), transform .65s cubic-bezier(.22,.61,.36,1), box-shadow .2s ease;
  will-change:opacity, transform;
}

.almecare-reveal-visible{
  opacity:1;
  transform:translateY(0) scale(1);
}

.almecare-card-col:nth-child(1) > .elementor-widget-wrap,
.almecare-news-grid > :nth-child(1){ transition-delay: .02s; }
.almecare-card-col:nth-child(2) > .elementor-widget-wrap,
.almecare-news-grid > :nth-child(2){ transition-delay: .10s; }
.almecare-card-col:nth-child(3) > .elementor-widget-wrap,
.almecare-news-grid > :nth-child(3){ transition-delay: .18s; }
.almecare-card-col:nth-child(4) > .elementor-widget-wrap,
.almecare-news-grid > :nth-child(4){ transition-delay: .26s; }

.almecare-hero-section .almecare-image-widget img,
.almecare-hero-section .almecare-real-photo img{
  border-radius:32px;
}

.almecare-quote-box,
.almecare-social-note,
.almecare-form-box,
.almecare-map-frame,
.almecare-news-card{
  transition:transform .2s ease, box-shadow .2s ease;
}

.almecare-quote-box:hover,
.almecare-social-note:hover,
.almecare-form-box:hover,
.almecare-news-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 38px rgba(18,107,152,.12);
}

/* Migliora la leggibilità dei gruppi di servizi */
.almecare-card-col .elementor-widget-heading + .elementor-widget-text-editor{
  margin-top:-4px;
}

/* Mobile */
@media(max-width:768px){
  .almecare-card-col > .elementor-widget-wrap{
    padding:22px;
    border-radius:24px;
  }
  .page-template-default .almecare-card-col .elementor-heading-title,
  .page .almecare-card-col .elementor-heading-title{
    min-height:0;
  }
}

/* =========================================================
   ALME Care V2.1.3 - palette and display font
   ========================================================= */
body{background:#fff}
body, .almecare-body{color:#24404F}
.elementor .almecare-heading h1,
.almecare-heading h1,
.elementor .almecare-heading h2,
.almecare-heading h2,
.almecare-card h3,
.almecare-service-card h3,
.almecare-menu,
.almecare-button,
.almecare-header-cta,
.almecare-news-card h3,
.almecare-hero-section h1,
.almecare-page-section h2{
  font-family:var(--almecare-display-font);
  letter-spacing:-.03em;
}
.almecare-eyebrow,
.almecare-service-tag,
.almecare-topbar,
.almecare-card-col .elementor-widget-button .elementor-button,
.almecare-news-link{
  font-family:var(--almecare-display-font);
}
.almecare-header{background:linear-gradient(180deg,#fff 0%, #fbfdff 100%);border-bottom:1px solid rgba(18,107,152,.08)}
.almecare-topbar{background:linear-gradient(90deg,var(--almecare-blue-dark) 0%, var(--almecare-blue) 60%, #1b7cae 100%)}
.almecare-menu a:hover{color:var(--almecare-mint-dark)}
.almecare-menu a::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:3px;border-radius:999px;background:var(--almecare-mint-dark);transition:width .2s ease}
.almecare-menu a:hover::after,.current-menu-item>a::after,.current_page_item>a::after{width:100%}
.almecare-header-cta{background:linear-gradient(135deg,var(--almecare-blue) 0%, var(--almecare-mint-dark) 100%);box-shadow:0 14px 28px rgba(18,107,152,.20)}
.elementor .almecare-button .elementor-button,.almecare-button{background:linear-gradient(135deg,var(--almecare-blue) 0%, #1d82b6 65%, var(--almecare-mint-dark) 100%)!important}
.elementor .almecare-button-secondary .elementor-button{background:var(--almecare-mint-soft)!important;color:var(--almecare-blue-dark)!important;border:1px solid rgba(114,199,154,.35)!important}
.elementor .almecare-button-secondary .elementor-button:hover{background:var(--almecare-mint)!important}
.almecare-eyebrow{background:linear-gradient(180deg,#fff 0%, var(--almecare-mint-soft) 100%);border-color:rgba(114,199,154,.35);color:var(--almecare-blue-dark)}
.almecare-muted-section{background:linear-gradient(180deg, var(--almecare-blue-soft) 0%, #f9fcff 48%, var(--almecare-mint-soft) 100%)}
.almecare-hero-section{background:radial-gradient(circle at top right, rgba(143,217,178,.22) 0, rgba(143,217,178,0) 28%), linear-gradient(180deg,#ffffff 0%, #fbfdff 100%)}
.almecare-card-col > .elementor-widget-wrap,.almecare-news-card,.almecare-card,.almecare-service-card,.almecare-form-box,.almecare-quote-box,.almecare-social-note{border:1px solid rgba(18,107,152,.08)}
.almecare-card-col > .elementor-widget-wrap::before,.almecare-news-card::before{background:linear-gradient(90deg,var(--almecare-blue) 0%, var(--almecare-mint-dark) 100%)}
.almecare-card-col:hover > .elementor-widget-wrap,.almecare-news-card:hover,.almecare-card:hover,.almecare-service-card:hover{box-shadow:0 20px 40px rgba(18,107,152,.12)}
.almecare-service-tag{background:linear-gradient(180deg,#fff 0%, var(--almecare-mint-soft) 100%);border:1px solid rgba(114,199,154,.25)}
.almecare-news-link{color:var(--almecare-blue-dark)}
.almecare-news-link:hover{color:var(--almecare-mint-dark)}
.almecare-footer a:hover,.almecare-footer a:focus{color:var(--almecare-mint)!important}
.almecare-form-box{background:linear-gradient(180deg,#fff 0%, #fdfefe 100%)}
.almecare-map-frame{border:1px solid rgba(114,199,154,.24)}


/* V2.1.4 - Footer menu editabili da Aspetto > Menu */
.almecare-footer-menu{list-style:none;margin:0;padding:0}
.almecare-footer-menu li{margin:0;padding:0}
.almecare-footer-menu a{display:block;margin:8px 0}
.almecare-footer h4{color:#fff;margin:0 0 12px;font-size:1.03rem}
.almecare-footer-logo{object-fit:contain}


/* V2.1.5 - Footer configurabile da Personalizza */
.almecare-footer-column{
  min-width:0;
}
.almecare-footer-menu{
  list-style:none;
  margin:0;
  padding:0;
}
.almecare-footer-menu li{
  margin:0;
  padding:0;
}
.almecare-footer-menu a{
  display:block;
}
@media(max-width:900px){
  .almecare-footer-grid{
    grid-template-columns:1fr!important;
  }
}


/* V2.1.6 - Colonna Dove siamo separata */
.almecare-footer-location-column p{
  margin-bottom:10px;
}
.almecare-footer-contact-column a,
.almecare-footer-location-column a{
  display:block;
}
