.elementor-7879 .elementor-element.elementor-element-akhero{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:Arraypx Arraypx;--row-gap:Arraypx;--column-gap:Arraypx;--padding-top:52px;--padding-bottom:44px;--padding-left:24px;--padding-right:24px;}.elementor-7879 .elementor-element.elementor-element-akhero:not(.elementor-motion-effects-element-type-background), .elementor-7879 .elementor-element.elementor-element-akhero > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F6F8;}.elementor-7879 .elementor-element.elementor-element-aklogo{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 4px) 0px;text-align:center;}.elementor-7879 .elementor-element.elementor-element-aklogo img{width:50px;}.elementor-7879 .elementor-element.elementor-element-akh1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-7879 .elementor-element.elementor-element-akh1 .elementor-heading-title{font-family:"Georgia", Sans-serif;font-size:36px;font-weight:700;line-height:1.18em;color:#1E2A3A;}.elementor-7879 .elementor-element.elementor-element-aklead{width:var( --container-widget-width, 720px );max-width:720px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:720px;--container-widget-flex-grow:0;text-align:center;font-family:"Inter", Sans-serif;font-size:17px;line-height:1.55em;color:#4F6C83;}.elementor-7879 .elementor-element.elementor-element-aklead.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-7879 .elementor-element.elementor-element-aks1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:Arraypx Arraypx;--row-gap:Arraypx;--column-gap:Arraypx;--padding-top:36px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-7879 .elementor-element.elementor-element-aks2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:Arraypx Arraypx;--row-gap:Arraypx;--column-gap:Arraypx;--padding-top:0px;--padding-bottom:64px;--padding-left:24px;--padding-right:24px;}.elementor-7879 .elementor-element.elementor-element-akinfo{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:Arraypx Arraypx;--row-gap:Arraypx;--column-gap:Arraypx;border-style:solid;--border-style:solid;border-width:0px 0px 0px 3px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:3px;border-color:#D9B788;--border-color:#D9B788;--border-radius:10px 10px 10px 10px;--padding-top:22px;--padding-bottom:22px;--padding-left:24px;--padding-right:24px;}.elementor-7879 .elementor-element.elementor-element-akinfo:not(.elementor-motion-effects-element-type-background), .elementor-7879 .elementor-element.elementor-element-akinfo > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F6F8;}.elementor-7879 .elementor-element.elementor-element-akih{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-7879 .elementor-element.elementor-element-akih .elementor-heading-title{font-family:"Georgia", Sans-serif;font-size:22px;font-weight:700;line-height:1.18em;color:#1E2A3A;}.elementor-7879 .elementor-element.elementor-element-akip{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Inter", Sans-serif;font-size:15px;line-height:1.55em;color:#33414F;}.elementor-7879 .elementor-element.elementor-element-akipr{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Inter", Sans-serif;font-size:13.5px;line-height:1.55em;color:#4F6C83;}@media(max-width:767px){.elementor-7879 .elementor-element.elementor-element-akh1 .elementor-heading-title{font-size:28px;}.elementor-7879 .elementor-element.elementor-element-aklead{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}}@media(min-width:768px){.elementor-7879 .elementor-element.elementor-element-akhero{--content-width:1120px;}.elementor-7879 .elementor-element.elementor-element-aks1{--content-width:1080px;}.elementor-7879 .elementor-element.elementor-element-aks2{--content-width:1080px;}}/* Start custom CSS *//* ============================================================
   Sereno — Amelia booking widget brand styling (supplementary)
   ------------------------------------------------------------
   Primary branding is set in Amelia → Customize (colors + fonts).
   This file is POLISH: selected states, buttons, step indicator,
   focus rings. Amelia class names can change between versions —
   re-check body.elementor-page-7879s after any Amelia update.

   Brand tokens:
     navy   #1E2A3A   steel  #4F6C83   gold #D9B788
     soft   #F5F6F8   divider #E0E4E8
   Fonts: Georgia (headings) / Calibri (body)
   ============================================================ */

:root {
  --sereno-navy:    #1E2A3A;
  --sereno-steel:   #4F6C83;
  --sereno-gold:    #D9B788;
  --sereno-soft:    #F5F6F8;
  --sereno-divider: #E0E4E8;
  --sereno-radius:  10px;
}

/* Amelia root scope — keeps overrides off the rest of the theme */
.amelia-app-booking,
.amelia-app-booking * {
  font-family: Calibri, "Segoe UI", system-ui, sans-serif;
  color: var(--sereno-navy);
}

.amelia-app-booking h1,
.amelia-app-booking h2,
.amelia-app-booking h3,
.amelia-app-booking .am-step-title {
  font-family: Georgia, "Times New Roman", serif;
  color: var(--sereno-navy);
  letter-spacing: .1px;
}

/* Panels / cards */
.amelia-app-booking .am-fs,
.amelia-app-booking .am-step,
.amelia-app-booking .el-card {
  background: #fff;
  border: 1px solid var(--sereno-divider);
  border-radius: var(--sereno-radius);
}

/* Selectable service / time tiles */
.amelia-app-booking .am-service,
.amelia-app-booking .am-slot,
.amelia-app-booking .el-radio {
  border: 1px solid var(--sereno-divider);
  border-radius: var(--sereno-radius);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.amelia-app-booking .am-service:hover,
.amelia-app-booking .am-slot:hover {
  border-color: var(--sereno-steel);
}

/* Selected state — gold, used sparingly */
.amelia-app-booking .am-service.am-selected,
.amelia-app-booking .am-slot.am-selected,
.amelia-app-booking .el-radio.is-checked {
  border-color: var(--sereno-gold);
  box-shadow: 0 0 0 2px rgba(217, 183, 136, .35);
}

/* Primary buttons — navy with gold hover lift */
.amelia-app-booking button.am-button,
.amelia-app-booking .el-button--primary {
  background: var(--sereno-navy);
  border: 1px solid var(--sereno-navy);
  color: #fff;
  border-radius: 999px;
  font-weight: 600;
  padding: 12px 26px;
  transition: background .15s ease, transform .05s ease;
}
.amelia-app-booking button.am-button:hover,
.amelia-app-booking .el-button--primary:hover {
  background: var(--sereno-steel);
}
.amelia-app-booking button.am-button:active {
  transform: translateY(1px);
}

/* Secondary / back buttons — outline */
.amelia-app-booking .el-button--default {
  background: transparent;
  border: 1px solid var(--sereno-divider);
  color: var(--sereno-navy);
  border-radius: 999px;
}

/* Step indicator */
.amelia-app-booking .am-progress .am-step-dot {
  background: var(--sereno-divider);
}
.amelia-app-booking .am-progress .am-step-dot.is-active {
  background: var(--sereno-gold);
}
.amelia-app-booking .am-progress .am-step-dot.is-done {
  background: var(--sereno-steel);
}

/* Calendar accents */
.amelia-app-booking .am-calendar .is-today {
  border-color: var(--sereno-steel);
}
.amelia-app-booking .am-calendar .is-selected {
  background: var(--sereno-navy);
  color: #fff;
}

/* Inputs */
.amelia-app-booking input[type="text"],
.amelia-app-booking input[type="email"],
.amelia-app-booking input[type="tel"],
.amelia-app-booking select,
.amelia-app-booking textarea {
  border: 1px solid var(--sereno-divider);
  border-radius: 8px;
  background: #fff;
}
.amelia-app-booking input:focus,
.amelia-app-booking select:focus,
.amelia-app-booking textarea:focus {
  outline: none;
  border-color: var(--sereno-gold);
  box-shadow: 0 0 0 3px rgba(217, 183, 136, .3);
}

/* Accessibility: visible keyboard focus everywhere */
.amelia-app-booking a:focus-visible,
.amelia-app-booking button:focus-visible,
.amelia-app-booking [tabindex]:focus-visible {
  outline: 2px solid var(--sereno-gold);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  .amelia-app-booking * { transition: none !important; }
}/* End custom CSS */