/* Shared mydev-maquette-footer composition. Native element controls take precedence. */
:where(.elementor) .mydev-maquette-footer {
  display:block;
  --padding-top:75px;
  --padding-right:0;
  --padding-bottom:25px;
  --padding-left:0;
  padding:var(--padding-top) var(--padding-right) var(--padding-bottom) var(--padding-left);
  border-top:1px solid rgba(255,255,255,.12);
  background:var(--mydev-color-surface-inverse,#0a0f1a);
  color:var(--mydev-color-on-inverse, #ffffff);
  font:400 17px/1.7 var(--mydev-font-body);
  --container-widget-width:100%;
}
:where(.elementor) .mydev-maquette-footer > .e-con-inner {
  display:block;
  padding:0;
  max-width:none;
  width:100%;
}
:where(.elementor) .mydev-maquette-footer .ft-top,:where(.elementor) .mydev-maquette-footer .ft-bottom,:where(.elementor) .mydev-maquette-footer .ft-address {
  --width:min(1180px,calc(100% - 48px));
  width:var(--width);
  max-width:none;
  margin-inline:auto;
}
:where(.elementor) .mydev-maquette-footer .e-con {
  --min-height:0;
  min-height:var(--min-height);
  --padding-top:0;
  --padding-right:0;
  --padding-bottom:0;
  --padding-left:0;
  padding:var(--padding-top) var(--padding-right) var(--padding-bottom) var(--padding-left);
}
:where(.elementor) .mydev-maquette-footer .elementor-widget {
  margin:0;
}
:where(.elementor) .mydev-maquette-footer .elementor-widget-text-editor,:where(.elementor) .mydev-maquette-footer .elementor-widget-text-editor > .elementor-widget-container {
  display:contents;
}
:where(.elementor) .mydev-maquette-footer .elementor-widget-text-editor p {
  display:contents;
  margin:0;
}
:where(.elementor) .mydev-maquette-footer .ft-top {
  display:grid;
  --e-con-grid-template-columns:1.8fr repeat(3,minmax(0,1fr));
  grid-template-columns:var(--e-con-grid-template-columns);
  --gap:55px;
  gap:var(--gap);
  padding-bottom:70px;
}
:where(.elementor) .mydev-maquette-footer .ft-brand {
  display:block;
  --width:auto;
  width:var(--width);
}
:where(.elementor) .mydev-maquette-footer .ft-logo {
  width:145px;
  line-height:0;
}
:where(.elementor) .mydev-maquette-footer .ft-logo img {
  display:block;
  width:145px;
  height:auto;
}
:where(.elementor) .mydev-maquette-footer .ft-brand .ft-description {
  display:block;
  margin:23px 0 15px;
  color:rgba(201,212,232,.76);
  font:400 14px/1.7 var(--mydev-font-body);
}
:where(.elementor) .mydev-maquette-footer .ft-brand a {
  display:block;
  margin-top:6px;
  color:var(--mydev-color-accent,#ff6224);
  font:400 12px/1.7 var(--mydev-font-body);
}
:where(.elementor) .mydev-maquette-footer .ft-brand small {
  display:block;
  margin-top:12px;
  color:rgba(201,212,232,.55);
  font:400 10px/1.7 var(--mydev-font-body);
}
:where(.elementor) .mydev-maquette-footer .ft-column {
  display:flex;
  --flex-direction:column;
  flex-direction:var(--flex-direction);
  --gap:10px;
  gap:var(--gap);
  --width:auto;
  width:var(--width);
}
:where(.elementor) .mydev-maquette-footer .ft-column .elementor-widget-heading {
  margin:0 0 12px;
}
:where(.elementor) .mydev-maquette-footer .ft-column h3 {
  margin:0;
  color:rgba(201,212,232,.68);
  font:500 11px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.12em;
  text-transform:uppercase;
}
:where(.elementor) .mydev-maquette-footer .ft-column a {
  color:rgba(255,255,255,.84);
  font:400 13px/1.7 var(--mydev-font-body);
  text-decoration:none;
}
:where(.elementor) .mydev-maquette-footer .ft-top a:hover {
  color:var(--mydev-color-accent,#ff6224);
}
:where(.elementor) .mydev-maquette-footer .ft-bottom {
  display:flex;
  --flex-direction:row;
  flex-direction:var(--flex-direction);
  flex-wrap:nowrap;
  --min-height:55px;
  min-height:var(--min-height);
  --align-items:center;
  align-items:var(--align-items);
  --justify-content:space-between;
  justify-content:var(--justify-content);
  --gap:20px;
  gap:var(--gap);
  border-top:1px solid rgba(255,255,255,.12);
  color:rgba(201,212,232,.66);
  font:400 11px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;
}
:where(.elementor) .mydev-maquette-footer .ft-bottom a {
  color:inherit;
  font:inherit;
  text-decoration:none;
}
:where(.elementor) .mydev-maquette-footer .ft-legal {
  display:flex;
  --flex-direction:row;
  flex-direction:var(--flex-direction);
  --gap:19px;
  gap:var(--gap);
  --width:auto;
  width:var(--width);
}
:where(.elementor) .mydev-maquette-footer .ft-address {
  display:block;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.12);
  color:rgba(201,212,232,.46);
  font:400 10px/1.7 var(--mydev-font-body);
  text-align:center;
}
:where(.elementor) .mydev-maquette-footer a:focus-visible {
  outline:2px solid var(--mydev-color-accent);
  outline-offset:4px;
}
:where(.elementor) .mydev-maquette-footer .ft-arrow::after {
  content:"";
  display:inline-block;
  width:1em;
  height:1em;
  vertical-align:-.125em;
  background:currentColor;
  mask:var(--ft-arrow) center/contain no-repeat;
}
:where(.elementor) .mydev-maquette-footer .ft-up::after {
  mask-image:var(--ft-up);
}
@media (max-width:1020px) {
:where(.elementor) .mydev-maquette-footer .ft-top {
  --e-con-grid-template-columns:1.6fr repeat(3,minmax(0,1fr));
  grid-template-columns:var(--e-con-grid-template-columns);
  --gap:25px;
  gap:var(--gap);
}
}
@media (max-width:760px) {
:where(.elementor) .mydev-maquette-footer .ft-top,:where(.elementor) .mydev-maquette-footer .ft-bottom,:where(.elementor) .mydev-maquette-footer .ft-address {
  --width:min(1180px,calc(100% - 32px));
  width:var(--width);
}
:where(.elementor) .mydev-maquette-footer .ft-top {
  --e-con-grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-columns:var(--e-con-grid-template-columns);
  --gap:45px 25px;
  gap:var(--gap);
}
:where(.elementor) .mydev-maquette-footer .ft-brand {
  grid-column:1 / -1;
}
:where(.elementor) .mydev-maquette-footer .ft-column a {
  min-height:40px;
  display:flex;
  align-items:center;
}
:where(.elementor) .mydev-maquette-footer .ft-bottom {
  --flex-direction:column;
  flex-direction:var(--flex-direction);
  --align-items:flex-start;
  align-items:var(--align-items);
  padding-top:24px;
}
:where(.elementor) .mydev-maquette-footer .ft-bottom a {
  min-height:36px;
  display:inline-flex;
  align-items:center;
}
:where(.elementor) .mydev-maquette-footer .ft-legal {
  flex-wrap:wrap;
}
}
@media (max-width:380px) {
:where(.elementor) .mydev-maquette-footer .ft-top,:where(.elementor) .mydev-maquette-footer .ft-bottom,:where(.elementor) .mydev-maquette-footer .ft-address {
  --width:min(1180px,calc(100% - 28px));
  width:var(--width);
}
}
:where(.elementor) .mydev-maquette-footer {
  --ft-arrow:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.25%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M5%2019%2019%205M5%205h14v14%22%2F%3E%3C%2Fsvg%3E");
}
:where(.elementor) .mydev-maquette-footer {
  --ft-up:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2020V4m-7%207%207-7%207%207%22%2F%3E%3C%2Fsvg%3E");
}
:where(.elementor) .mydev-maquette-footer .elementor-widget-text-editor {
  font:inherit;
  color:inherit;
}
:where(.elementor) .mydev-maquette-footer .ft-arrow::after {
  flex-shrink:0;
}
/* Match the reference container caps between responsive breakpoints. */
@media (min-width:640px) and (max-width:767px) {
:where(.elementor) .mydev-maquette-footer .ft-top,:where(.elementor) .mydev-maquette-footer .ft-bottom,:where(.elementor) .mydev-maquette-footer .ft-address {
  max-width:640px;
}
}
@media (min-width:768px) and (max-width:1023px) {
:where(.elementor) .mydev-maquette-footer .ft-top,:where(.elementor) .mydev-maquette-footer .ft-bottom,:where(.elementor) .mydev-maquette-footer .ft-address {
  max-width:768px;
}
}
@media (min-width:1024px) and (max-width:1279px) {
:where(.elementor) .mydev-maquette-footer .ft-top,:where(.elementor) .mydev-maquette-footer .ft-bottom,:where(.elementor) .mydev-maquette-footer .ft-address {
  max-width:1024px;
}
}
