/*
 * DIBAMED V123 — exact D107 header controls + premium signature footer.
 * No generic anchor selectors. No header/logo/nav markup edits.
 */
:root{
  --d123-navy:#06263a;
  --d123-navy-deep:#022d43;
  --d123-jade:#079286;
  --d123-jade-bright:#22c5b2;
  --d123-gold:#e8bd73;
  --d123-rose:#df5478;
}

/* =========================================================
   EXACT CURRENT HEADER CONTROLS (D107)
   ========================================================= */
html body .d107-site-header .d107-header-actions{
  gap:8px!important;
  min-width:0!important;
  width:auto!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
}
html body .d107-site-header .d107-action{
  box-sizing:border-box!important;
  min-height:40px!important;
  height:40px!important;
  max-height:40px!important;
  padding:0 12px!important;
  gap:7px!important;
  border-radius:13px!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:-.012em!important;
  white-space:nowrap!important;
}
html body .d107-site-header .d107-action.d107-whatsapp{
  flex:0 0 154px!important;
  width:154px!important;
  min-width:154px!important;
  max-width:154px!important;
  box-shadow:0 8px 20px rgba(1,145,82,.17),inset 0 1px 0 rgba(255,255,255,.32)!important;
}
html body .d107-site-header .d107-action.d107-book{
  flex:0 0 174px!important;
  width:174px!important;
  min-width:174px!important;
  max-width:174px!important;
  box-shadow:0 8px 20px rgba(214,73,112,.16),inset 0 1px 0 rgba(255,255,255,.34)!important;
}
html body .d107-site-header .d107-action .d107-icon{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  flex:0 0 24px!important;
  border-radius:8px!important;
}
html body .d107-site-header .d107-action .d107-icon svg{
  width:15px!important;
  height:15px!important;
}

/* Premium language jewel — exact D107 component only. */
html body .d107-site-header .d107-action.d107-language{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  flex:0 0 64px!important;
  width:64px!important;
  min-width:64px!important;
  max-width:64px!important;
  padding:0 8px 0 6px!important;
  color:#08786f!important;
  border:1px solid rgba(9,151,143,.20)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(226,249,246,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 7px 18px rgba(4,105,105,.10)!important;
  -webkit-backdrop-filter:blur(14px) saturate(1.14)!important;
  backdrop-filter:blur(14px) saturate(1.14)!important;
}
html body .d107-site-header .d107-action.d107-language::after{
  content:""!important;
  position:absolute!important;
  top:4px!important;
  left:27px!important;
  width:6px!important;
  height:6px!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#f7dc9c,#c58b39)!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.96),0 2px 7px rgba(171,109,30,.24)!important;
  pointer-events:none!important;
}
html[dir="rtl"] body .d107-site-header .d107-action.d107-language::after{
  left:auto!important;
  right:27px!important;
}
html body .d107-site-header .d107-language .d107-language-icon{
  position:relative!important;
  width:27px!important;
  height:27px!important;
  min-width:27px!important;
  flex:0 0 27px!important;
  border-radius:50%!important;
  color:#fff!important;
  background:radial-gradient(circle at 28% 22%,rgba(255,255,255,.48),transparent 31%),linear-gradient(145deg,#23cab9 0%,#078f87 57%,#075f69 100%)!important;
  border:1px solid rgba(255,255,255,.56)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.50),0 5px 13px rgba(2,124,121,.22),0 0 0 3px rgba(23,173,163,.07)!important;
}
html body .d107-site-header .d107-language .d107-language-icon::before{
  content:""!important;
  position:absolute!important;
  inset:-3px!important;
  border:1px solid rgba(219,162,88,.62)!important;
  border-left-color:transparent!important;
  border-bottom-color:transparent!important;
  border-radius:50%!important;
  transform:rotate(-22deg)!important;
  animation:d123-language-orbit 7s linear infinite!important;
  pointer-events:none!important;
}
html body .d107-site-header .d107-language .d107-language-icon svg{
  width:16px!important;
  height:16px!important;
}

/* =========================================================
   PREMIUM SIGNATURE FOOTER — no duplicate CTA, no gallery
   ========================================================= */
.d123-footer{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:rgba(248,255,254,.90);
  background:
    radial-gradient(circle at 88% 4%,rgba(34,197,178,.19),transparent 29%),
    radial-gradient(circle at 8% 108%,rgba(30,119,143,.30),transparent 38%),
    linear-gradient(122deg,#022f46 0%,#044f5d 52%,#078477 100%);
  border-top:1px solid rgba(232,189,115,.44);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.d123-footer::before{
  content:"";
  position:absolute;
  z-index:-2;
  width:700px;
  height:700px;
  right:-180px;
  top:-360px;
  border-radius:50%;
  border:1px solid rgba(232,189,115,.15);
  box-shadow:0 0 0 92px rgba(255,255,255,.014),0 0 0 184px rgba(255,255,255,.009);
  pointer-events:none;
}
.d123-footer::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(111deg,transparent 0 61%,rgba(232,189,115,.11) 61.12%,transparent 61.55%);
  pointer-events:none;
}
.d123-footer__shell{
  width:min(1540px,calc(100% - 72px));
  margin:0 auto;
  padding:52px 0 20px;
}
.d123-footer__top{
  display:grid;
  grid-template-columns:minmax(340px,1.05fr) minmax(0,1.4fr);
  gap:clamp(34px,5vw,86px);
  align-items:center;
  padding-bottom:30px;
  margin-bottom:30px;
  border-bottom:1px solid rgba(255,255,255,.14);
}
.d123-footer__identity{
  display:grid;
  grid-template-columns:176px minmax(0,1fr);
  gap:24px;
  align-items:center;
}
.d123-footer__logo{
  display:flex;
  align-items:center;
  min-height:90px;
  text-decoration:none;
}
.d123-footer__logo-image{
  display:block;
  width:176px;
  max-height:96px;
  object-fit:contain;
  object-position:left center;
  filter:brightness(0) invert(1);
}
[dir="rtl"] .d123-footer__logo-image{object-position:right center;}
.d123-footer__fallback-logo{display:none;flex-direction:column;color:#fff;line-height:.93;}
.d123-footer__fallback-logo strong{font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:500;}
.d123-footer__fallback-logo small{margin-top:7px;font-size:10px;font-weight:850;letter-spacing:.18em;}
.d123-footer__eyebrow{
  display:block;
  margin-bottom:8px;
  color:#ffe1a0;
  font-size:11px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.18em;
}
.d123-footer__identity-copy p{
  max-width:520px;
  margin:0;
  color:rgba(248,255,254,.80);
  font-size:14.5px;
  line-height:1.68;
}
.d123-footer__trust{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.d123-footer__trust article{
  position:relative;
  min-height:118px;
  padding:17px 16px 15px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 16px 38px rgba(0,34,48,.10);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}
.d123-footer__trust article::after{
  content:"";
  position:absolute;
  width:76px;
  height:76px;
  right:-25px;
  bottom:-36px;
  border-radius:50%;
  border:1px solid rgba(232,189,115,.16);
}
.d123-footer__trust span{
  display:inline-grid;
  place-items:center;
  width:27px;
  height:27px;
  margin-bottom:13px;
  border-radius:9px;
  color:#ffe1a0;
  background:rgba(232,189,115,.10);
  border:1px solid rgba(232,189,115,.20);
  font-size:10px;
  font-weight:900;
}
.d123-footer__trust strong,
.d123-footer__trust small{display:block;}
.d123-footer__trust strong{color:#fff;font-size:13.5px;line-height:1.3;font-weight:850;}
.d123-footer__trust small{margin-top:6px;color:rgba(248,255,254,.64);font-size:11px;line-height:1.45;}
.d123-footer__main{
  display:grid;
  grid-template-columns:minmax(270px,1.2fr) minmax(150px,.7fr) minmax(150px,.7fr) minmax(290px,1.15fr);
  gap:clamp(28px,4vw,72px);
  align-items:start;
}
.d123-footer__profile h2,
.d123-footer__column h2{
  margin:0 0 16px;
  color:#ffe1a0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:12px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.d123-footer__profile p{
  max-width:330px;
  margin:0;
  color:rgba(248,255,254,.76);
  font-size:14px;
  line-height:1.67;
}
.d123-footer__profile-points{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:18px;
}
.d123-footer__profile-points span{
  padding:7px 9px;
  border-radius:999px;
  color:rgba(255,255,255,.84);
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.13);
  font-size:10.5px;
  line-height:1;
  font-weight:760;
}
.d123-footer__column{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.d123-footer__column > a{
  width:max-content;
  max-width:100%;
  color:rgba(248,255,254,.79);
  font-size:13.5px;
  line-height:1.45;
  text-decoration:none;
  transition:color .18s ease,transform .18s ease;
}
.d123-footer__column > a:hover,
.d123-footer__column > a:focus-visible{color:#fff;transform:translateX(3px);}
[dir="rtl"] .d123-footer__column > a:hover,
[dir="rtl"] .d123-footer__column > a:focus-visible{transform:translateX(-3px);}
.d123-footer__contact{gap:10px;}
.d123-footer__contact-line{
  display:grid!important;
  grid-template-columns:32px minmax(0,1fr);
  gap:10px;
  align-items:start;
  width:100%!important;
  color:rgba(248,255,254,.84)!important;
  text-decoration:none;
}
.d123-footer__contact-line i{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:10px;
  color:#ffe1a0;
  background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.14);
  font-size:10px;
  font-style:normal;
  font-weight:900;
}
.d123-footer__contact-line span{display:flex;flex-direction:column;gap:2px;}
.d123-footer__contact-line small{color:rgba(248,255,254,.52);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;}
.d123-footer__contact-line bdi{font-size:13.5px;line-height:1.45;}
.d123-footer__address address{margin:0;color:rgba(248,255,254,.76);font-size:13px;line-height:1.55;font-style:normal;}
.d123-footer__bottom{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:22px;
  align-items:center;
  margin-top:34px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.13);
  color:rgba(248,255,254,.58);
  font-size:11.5px;
}
.d123-footer__bottom p{margin:0;}
.d123-footer__credit{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  white-space:nowrap;
}
.d123-footer__credit-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 9px;
  border-radius:999px;
  color:#ffe1a0!important;
  background:rgba(232,189,115,.075);
  border:1px solid rgba(232,189,115,.18);
  font-weight:900;
  text-decoration:none;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.d123-footer__credit-link:hover,
.d123-footer__credit-link:focus-visible{
  color:#fff!important;
  background:rgba(232,189,115,.14);
  transform:translateY(-1px);
}
.d123-footer__credit-link b{font-size:11px;}
.d123-footer__legal{display:flex;justify-content:flex-end;gap:17px;}
.d123-footer__legal a{color:rgba(248,255,254,.72);text-decoration:none;}
.d123-footer__legal a:hover,.d123-footer__legal a:focus-visible{color:#fff;}

@keyframes d123-language-orbit{to{transform:rotate(338deg)}}

@media(max-width:1380px){
  html body .d107-site-header .d107-action.d107-whatsapp{flex-basis:142px!important;width:142px!important;min-width:142px!important;max-width:142px!important;}
  html body .d107-site-header .d107-action.d107-book{flex-basis:160px!important;width:160px!important;min-width:160px!important;max-width:160px!important;}
  html body .d107-site-header .d107-action{font-size:12px!important;padding-inline:10px!important;}
  .d123-footer__top{grid-template-columns:1fr;}
  .d123-footer__trust{max-width:880px;}
}
@media(max-width:1120px){
  .d123-footer__main{grid-template-columns:1fr 1fr 1fr;}
  .d123-footer__profile{grid-column:1/-1;}
  .d123-footer__profile p{max-width:700px;}
}
@media(max-width:760px){
  html body .d107-site-header .d107-header-actions{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) minmax(0,1fr)!important;
    width:100%!important;
    gap:7px!important;
  }
  html body .d107-site-header .d107-action.d107-language,
  html body .d107-site-header .d107-action.d107-whatsapp,
  html body .d107-site-header .d107-action.d107-book{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    flex:initial!important;
    height:39px!important;
    min-height:39px!important;
    max-height:39px!important;
    padding:0 8px!important;
    font-size:10.5px!important;
  }
  html body .d107-site-header .d107-action .d107-icon{width:22px!important;height:22px!important;min-width:22px!important;flex-basis:22px!important;}
  .d123-footer__shell{width:min(100% - 32px,720px);padding-top:42px;}
  .d123-footer__identity{grid-template-columns:140px 1fr;gap:18px;}
  .d123-footer__logo-image{width:140px;max-height:82px;}
  .d123-footer__trust{grid-template-columns:1fr;}
  .d123-footer__trust article{min-height:0;}
  .d123-footer__main{grid-template-columns:1fr 1fr;gap:32px 24px;}
  .d123-footer__profile,.d123-footer__contact{grid-column:1/-1;}
  .d123-footer__bottom{grid-template-columns:1fr;text-align:center;}
  .d123-footer__credit{white-space:normal;flex-wrap:wrap;}
  .d123-footer__legal{justify-content:center;}
}
@media(max-width:500px){
  html body .d107-site-header .d107-header-actions{grid-template-columns:56px 1fr!important;}
  html body .d107-site-header .d107-action.d107-book{grid-column:1/-1!important;}
  .d123-footer__identity{grid-template-columns:1fr;}
  .d123-footer__main{grid-template-columns:1fr;}
  .d123-footer__profile,.d123-footer__contact{grid-column:auto;}
  .d123-footer__legal{flex-wrap:wrap;}
}
@media(prefers-reduced-motion:reduce){
  html body .d107-site-header .d107-language .d107-language-icon::before{animation:none!important;}
  .d123-footer__column > a,.d123-footer__credit-link{transition:none;}
}
