/* CuraWell homepage: hero entrance motion, phone sticky action bar, swipe rows with dots, About read-more.
   Pairs with cw-home.js. Phone rules are scoped to max-width 700px. */

/* ---- hero entrance: title, subtitle, buttons, then the photo, in sequence ---- */
@keyframes cwRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.cw-hero__title{animation:cwRise .6s cubic-bezier(.2,.7,.2,1) both}
.cw-hero__sub{animation:cwRise .6s cubic-bezier(.2,.7,.2,1) .1s both}
.cw-hero__actions{animation:cwRise .6s cubic-bezier(.2,.7,.2,1) .18s both}
.cw-hero__media{animation:cwRise .7s cubic-bezier(.2,.7,.2,1) .26s both}
@media (prefers-reduced-motion:reduce){
  .cw-hero__title,.cw-hero__sub,.cw-hero__actions,.cw-hero__media{animation:none}
}

/* ---- sticky Call / Request bar (phones only; cw-home.js toggles .is-on after the hero scrolls away) ---- */
.cw-stickybar{position:fixed;left:0;right:0;bottom:0;z-index:9000;display:none;gap:10px;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
  background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  box-shadow:0 -8px 24px rgba(16,32,80,.14);transform:translateY(110%);transition:transform .28s ease;
  font-family:"Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.cw-stickybar.is-on{transform:none}
.cw-stickybar__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;
  border-radius:999px;font-weight:700;font-size:15px;line-height:1.1;text-decoration:none;transition:background .15s ease}
.cw-stickybar__btn svg{width:18px;height:18px;flex:0 0 auto}
.cw-stickybar__btn--call{flex:0 0 auto;padding:0 18px;background:#fff;color:#1d2f7a;box-shadow:inset 0 0 0 2px #1d2f7a}
.cw-stickybar__btn--call:hover{background:#eef3fb;color:#1d2f7a}
.cw-stickybar__btn--primary{flex:1 1 auto;padding:0 16px;background:#1d2f7a;color:#fff}
.cw-stickybar__btn--primary:hover{background:#152360;color:#fff}
@media (max-width:700px){
  .cw-stickybar{display:flex}
  /* lift the chat bubble above the bar while it is showing */
  body.cw-bar-on #cw-chat{bottom:calc(24px + 76px) !important}
}
@media (prefers-reduced-motion:reduce){.cw-stickybar{transition:none}}

/* ---- testimonials: a snap row at every width (3 per view on desktop, 2 on tablets, 1 on phones),
   rotated every 7s by cw-home.js unless the visitor is hovering, touching, or prefers reduced motion ---- */
.cw-tst__grid{display:flex !important;grid-template-columns:none !important;overflow-x:auto;overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;gap:26px;max-width:1200px;margin:0 auto;padding:8px 4px 18px;
  scrollbar-width:none;-webkit-overflow-scrolling:touch}
.cw-tst__grid::-webkit-scrollbar{display:none}
.cw-tst__card{flex:0 0 calc((100% - 52px) / 3) !important;max-width:none !important;scroll-snap-align:start}
@media (max-width:900px){
  .cw-tst__grid{gap:20px;max-width:none !important}
  .cw-tst__card{flex-basis:calc((100% - 20px) / 2) !important}
}

/* ---- phones: What we do cards become a swipe row too, both rows run edge to edge ---- */
@media (max-width:700px){
  .cw-tst__grid,.cw-topics__grid{display:flex !important;grid-template-columns:none !important;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;gap:14px !important;max-width:none !important;
    margin:0 calc(50% - 50vw) !important;padding:6px 20px 14px !important;
    scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .cw-topics__grid::-webkit-scrollbar{display:none}
  .cw-tst__card,.cw-topics__card{flex:0 0 84% !important;max-width:none !important;scroll-snap-align:center;scroll-snap-stop:always}
}

/* ---- page dots (built by cw-home.js; hidden when everything fits in one view) ---- */
.cw-dots{display:flex;justify-content:center;gap:8px;margin:4px 0 0}
.cw-dots[hidden]{display:none !important}
.cw-dots__dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(29,47,122,.25);cursor:pointer;transition:transform .2s ease,background .2s ease}
.cw-dots__dot.is-active{background:#1d2f7a;transform:scale(1.3)}
.cw-dots__dot:focus-visible{outline:2px solid #2f7dc2;outline-offset:3px}
/* on the navy What we do band the dots need to be light */
.e11-e9 .cw-dots__dot{background:rgba(255,255,255,.45)}
.e11-e9 .cw-dots__dot.is-active{background:#fff}
.e11-e9 .cw-dots{margin-bottom:6px}
@media (prefers-reduced-motion:reduce){.cw-dots__dot{transition:none}}

/* ---- About paragraph: six lines on phones, then Read more ---- */
.cw-readmore{display:none}
@media (max-width:700px){
  .e11-e8.cw-clamp:not(.is-open){display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
  .cw-readmore{display:inline-flex;align-items:center;margin-top:8px;padding:0;border:0;background:none;
    color:#2f7dc2;font:700 15px/1.2 "Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;
    text-decoration:underline;text-decoration-color:#b0c911;text-decoration-thickness:2px;text-underline-offset:5px}
  .cw-readmore:hover{color:#1d2f7a}
}
