/* casa-v1.css — additions for the Claude Design migration. Loaded after the three Webflow stylesheets, which stay unedited. */

/* Footer hours: platform-rendered rows (data-rdp-hours) laid out exactly like live's single <p> with <br> line breaks. */
.casa-hours-row { display: block; }

/* UserWay icon position, moved from live's inline embed. */
#userwayAccessibilityIcon {
  bottom: 2.5rem !important;
  left: .125rem !important;
}

/* Services directory card hover — IX2 a-60/a-61 (300ms ease). CSS so it survives the platform cloning the card. */
.component_services_category_link {
  transition: transform .3s ease, background-color .3s ease, color .3s ease;
}
.component_services_category_link .component_services_arrow_icon {
  transform: translateX(-.1875rem);
  transition: transform .3s ease;
}
.component_services_category_link:hover {
  transform: translateY(-.3125rem);
  background-color: var(--background-color--background-alternate);
  color: var(--text-color--text-white);
}
.component_services_category_link:hover .component_services_arrow_icon {
  transform: translateX(0);
}

/* Service template: step numbers come from a counter so the platform can clone the first process card. */
.services_treatment_list { counter-reset: casa-step; }
.services_treatment_item { counter-increment: casa-step; }
.casa-step-number::before { content: counter(casa-step); }

/* Service template: the FAQ subtitle shows the service name in lowercase, as on live. */
.casa-lowercase { text-transform: lowercase; }

.hero_badge{z-index:5;filter:drop-shadow(0 6px 16px #0000005c);width:140px;transform-style:preserve-3d;position:absolute;inset:auto 3rem -3.5rem auto;transform:rotateX(6deg) rotateY(6deg) rotate(6deg)}
.footer_badge{width:90px;padding-top:35px;padding-bottom:0;display:block}
@media screen and (max-width:991px){.hero_badge{width:110px;bottom:-3.5rem;right:2rem}}
@media screen and (max-width:479px){.hero_badge{bottom:-2.5rem}}
.home_hero_container{position:relative}
.component_skip_link{z-index:99999;pointer-events:none;width:0;height:0;color:var(--text-color--text-secondary);font-size:var(--_typhography---body-tiny);justify-content:center;align-items:center;margin-left:.25rem;margin-right:.25rem;display:flex;position:absolute;inset:.5rem 0% auto;overflow:hidden}
.component_skip_link:focus-visible,.component_skip_link[data-wf-focus-visible]{pointer-events:auto;width:auto;height:auto;margin-bottom:1rem;padding:.25rem;font-size:.75rem;position:relative}
/* Homepage hero: show the first-frame poster immediately so the video never flashes the pale section background. */
.home_hero_background {
  background-color: #6aa1e3;
  background-image: url("../images/casa-hero-poster.webp");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.home_background_video {
  aspect-ratio: 16 / 9;
  height: auto;
}
/* Montserrat, self-hosted (same Google Fonts v31 latin files that were loaded before) */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/montserrat-latin-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/montserrat-latin-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/montserrat-latin-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/montserrat-latin-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/montserrat-latin-italic.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/montserrat-latin-italic.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Homepage hero: lighter same-framing photo on tall phone screens */
@media (max-width: 767px) and (max-aspect-ratio: 3/5) {
  .home_hero_background {
    background-image: url("../images/casa-hero-poster-mobile.webp");
  }
}
