/* V Care U - About page layer. Loaded after style.css, vcareu-header.css and vcareu-home.css.
   Seniar components are reused as they are; only the new Purpose, Values, Commitment and CTA treatments live here. */

/* ---------- Who We Are: photo + floating card, animated reveal (same style as the Old Age Home and Nursing intros) ---------- */
.vcu-who{ padding:90px 0 80px; }
.vcu-who-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:0 80px; align-items:center; max-width:1200px; margin:0 auto; }

.vcu-who-media{ position:relative; padding:0 0 38px 0; }
.vcu-who-frame{ position:absolute; z-index:0; top:26px; left:-22px; right:22px; bottom:12px; border:2px solid rgba(230,0,18,.55); border-radius:28px; transition:transform .7s cubic-bezier(.2,.7,.2,1); }
.vcu-who-photo{ position:relative; z-index:1; margin:0; border-radius:28px; overflow:hidden; aspect-ratio:4/4.6; box-shadow:0 34px 60px -38px rgba(9,41,91,.6); }
.vcu-who-photo img{ width:100%; height:100%; object-fit:cover; object-position:center 30%; transform:scale(1.04); animation:vcuDrift 22s ease-in-out infinite alternate; }
.vcu-who-photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(9,41,91,0) 55%, rgba(9,41,91,.28)); }
.vcu-who-media:hover .vcu-who-frame{ transform:translate(8px,-8px); }

.vcu-who-card{ position:absolute; z-index:2; right:-34px; bottom:0; width:270px; margin:0; padding:20px 24px; list-style:none; background:#fff; border-radius:20px; box-shadow:0 26px 50px -26px rgba(9,41,91,.55); animation:vcuFloat 6s ease-in-out infinite; }
.vcu-who-card::before{ content:""; position:absolute; left:0; top:20px; bottom:20px; width:4px; border-radius:0 4px 4px 0; background:linear-gradient(180deg,#E60012,var(--theme-color1)); }
.vcu-who-card li{ display:flex; align-items:center; gap:14px; font-size:16.5px; font-weight:600; line-height:1.4; color:var(--theme-color2); }
.vcu-who-card li + li{ margin-top:14px; padding-top:14px; border-top:1px solid rgba(0,59,142,.12); }
.vcu-who-pill{ flex:0 0 42px; width:42px; height:42px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:rgba(0,59,142,.1); color:var(--theme-color1); font-size:17px; }
.vcu-who-pill.is-red{ background:rgba(230,0,18,.1); color:#E60012; animation:vcuBeat 2.8s ease-in-out infinite; }

.vcu-who .sec-title .title{ font-size:clamp(32px,3.3vw,48px); line-height:1.1; color:var(--theme-color2); max-width:560px; text-wrap:balance; margin-bottom:20px; }
.vcu-who-rule{ display:block; width:76px; height:4px; border-radius:4px; background:linear-gradient(90deg,#E60012,var(--theme-color1)); transform-origin:left center; }
.vcu-who-text{ margin-top:24px; }
.vcu-who-text p{ font-size:17px; line-height:1.85; color:#52637A; margin:0 0 12px; }
.vcu-who-text p:first-child{ color:var(--theme-color2); font-weight:500; }

.vcu-who-points{ list-style:none; margin:26px 0 0; padding:0; border-top:1px solid rgba(0,59,142,.16); }
.vcu-who-point{ display:flex; align-items:flex-start; gap:18px; padding:18px 0; border-bottom:1px solid rgba(0,59,142,.16); transition:padding-left .35s ease; }
.vcu-who-point:hover{ padding-left:8px; }
.vcu-who-ico{ flex:0 0 48px; width:48px; height:48px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:rgba(0,59,142,.08); color:var(--theme-color1); font-size:19px; transition:background-color .35s ease, color .35s ease, transform .4s ease; }
.vcu-who-point:hover .vcu-who-ico{ background:#E60012; color:#fff; transform:rotate(-8deg); }
.vcu-who-ptitle{ font-size:19px; line-height:1.3; color:var(--theme-color2); margin:2px 0 4px; }
.vcu-who-point p{ font-size:15.5px; line-height:1.65; color:#52637A; margin:0; }

@keyframes vcuReveal{ from{ opacity:0; transform:translateY(34px) scale(.97); clip-path:inset(0 0 14% 0 round 28px); } to{ opacity:1; transform:none; clip-path:inset(0 0 0 0 round 28px); } }
@keyframes vcuGrow{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
@keyframes vcuDrift{ from{ transform:scale(1.04) translate(0,0); } to{ transform:scale(1.12) translate(-1.5%,-1%); } }
@keyframes vcuFloat{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-8px); } }
@keyframes vcuBeat{ 0%,100%{ transform:scale(1); } 12%{ transform:scale(1.16); } 24%{ transform:scale(1); } 36%{ transform:scale(1.1); } }
.vcuReveal{ animation-name:vcuReveal; animation-duration:1.1s; animation-timing-function:cubic-bezier(.2,.7,.2,1); }
.vcuGrow{ animation-name:vcuGrow; animation-duration:.9s; animation-timing-function:cubic-bezier(.2,.7,.2,1); }

@media (max-width:1199.98px){ .vcu-who-grid{ gap:0 56px; } .vcu-who-card{ right:-20px; width:250px; } }
@media (max-width:991.98px){
  .vcu-who{ padding:64px 0 50px; }
  .vcu-who-grid{ grid-template-columns:1fr; gap:46px 0; max-width:640px; }
  .vcu-who-photo{ aspect-ratio:16/11; }
  .vcu-who-card{ right:12px; }
  .vcu-who-frame{ left:-12px; right:12px; }
}
@media (max-width:575.98px){
  .vcu-who{ padding:50px 0 40px; }
  .vcu-who-media{ padding-bottom:30px; }
  .vcu-who-photo{ aspect-ratio:4/3.3; border-radius:22px; }
  .vcu-who-frame{ border-radius:22px; top:20px; left:-8px; right:8px; }
  .vcu-who-card{ position:relative; right:auto; bottom:auto; width:auto; margin:-34px 14px 0; padding:16px 18px; animation:none; }
  .vcu-who-card li{ font-size:15.5px; }
  .vcu-who-text p{ font-size:16px; }
}
@media (prefers-reduced-motion:reduce){
  .vcu-who-photo img,.vcu-who-card,.vcu-who-pill{ animation:none; }
  .vcuReveal,.vcuGrow{ animation-duration:.01ms; }
}

/* ---------- Our Mission: navy statement card with body / mind / spirit (client's own mission wording) ---------- */
.vcu-mis{ padding:20px 0 70px; }
.vcu-mis-card{ position:relative; overflow:hidden; max-width:1200px; margin:0 auto; padding:70px 72px 64px; border-radius:34px; background:linear-gradient(125deg,#09295B 0%,#0a3f8f 100%); color:#fff; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:30px 64px; align-items:start; box-shadow:0 44px 80px -50px rgba(9,41,91,.8); }
.vcu-mis-glow{ position:absolute; z-index:0; right:-120px; top:-140px; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,0) 68%); animation:vcuMisGlow 9s ease-in-out infinite alternate; }
@keyframes vcuMisGlow{ from{ transform:translate(0,0) scale(1); } to{ transform:translate(-40px,30px) scale(1.15); } }
.vcu-mis-head,.vcu-mis-body,.vcu-mis-bms{ position:relative; z-index:1; }
.vcu-mis .sec-title .sec-sub-title{ background:rgba(255,255,255,.14); margin-bottom:0; }
.vcu-mis .sec-title .sec-sub-title .sub-title{ color:#fff; }
.vcu-mis .sec-title .sec-sub-title .sub-title::before{ background:#ff7d86; }
.vcu-mis-title{ font-size:clamp(30px,3.2vw,46px); line-height:1.15; font-weight:500; color:#fff; margin:20px 0 22px; }
.vcu-mis-rule{ display:block; width:84px; height:4px; border-radius:4px; background:linear-gradient(90deg,#E60012,#ff7d86); transform-origin:left center; }
.vcu-mis-body{ padding-top:40px; }
.vcu-mis-body p{ font-size:18px; line-height:1.85; color:rgba(237,245,255,.88); margin:0 0 16px; }
.vcu-mis-body p:first-child{ color:#fff; font-weight:500; }
.vcu-mis-bms{ grid-column:1 / -1; list-style:none; margin:14px 0 0; padding:34px 0 0; border-top:1px solid rgba(255,255,255,.2); display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.vcu-mis-bm{ display:flex; align-items:center; gap:16px; font-size:clamp(20px,1.8vw,26px); font-weight:500; color:#fff; }
.vcu-mis-bmi{ flex:0 0 58px; width:58px; height:58px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.26); color:#ff9aa1; font-size:22px; transition:background-color .35s ease, color .35s ease, transform .45s ease; }
.vcu-mis-bm:hover .vcu-mis-bmi{ background:#E60012; color:#fff; border-color:#E60012; transform:translateY(-4px) rotate(-6deg); }
@keyframes vcuGrow{ from{ transform:scaleX(0); } to{ transform:scaleX(1); } }
.vcuGrow{ animation-name:vcuGrow; animation-duration:.9s; animation-timing-function:cubic-bezier(.2,.7,.2,1); }
@media (max-width:1199.98px){ .vcu-mis-card{ padding:56px 48px 52px; gap:26px 44px; } }
@media (max-width:991.98px){
  .vcu-mis{ padding:10px 0 50px; }
  .vcu-mis-card{ grid-template-columns:1fr; padding:44px 32px 40px; gap:0; border-radius:28px; }
  .vcu-mis-body{ padding-top:26px; }
  .vcu-mis-body p{ font-size:17px; }
}
@media (max-width:575.98px){
  .vcu-mis{ padding:0 0 40px; }
  .vcu-mis-card{ padding:36px 22px 32px; border-radius:24px; }
  .vcu-mis-bms{ grid-template-columns:1fr; gap:16px; padding-top:26px; }
  .vcu-mis-bmi{ flex-basis:50px; width:50px; height:50px; font-size:19px; }
}
@media (prefers-reduced-motion:reduce){ .vcu-mis-glow{ animation:none; } .vcuGrow{ animation-duration:.01ms; } }

/* ---------- CTA (Seniar cta-banner): light band, no decoration ---------- */
.vcu-cta{ margin-top:40px; margin-bottom:60px; padding:56px 0; background:linear-gradient(120deg,#EDF5FF 0%,#fff 75%); border:1px solid rgba(0,59,142,.14); box-shadow:0 34px 64px -50px rgba(9,41,91,.5); position:relative; overflow:hidden; }
.vcu-cta::before{ content:""; position:absolute; left:0; top:36px; bottom:36px; width:5px; border-radius:0 5px 5px 0; background:linear-gradient(180deg,#E60012,var(--theme-color1)); }
.vcu-cta .auto-container{ position:relative; z-index:1; }
.vcu-cta .cta-banner-wrapper .content{ gap:56px; align-items:center; }
.vcu-cta-copy{ flex:0 0 auto; max-width:400px; }
.vcu-cta-eyebrow{ display:block; font-size:13px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:#E60012; margin-bottom:12px; }
.vcu-cta .cta-banner-wrapper .content .title{ max-width:none; font-size:clamp(28px,2.6vw,38px); line-height:1.2; color:var(--theme-color2); margin:0; }
.vcu-cta .cta-banner-wrapper .content .text{ color:#52637A; opacity:1; max-width:440px; margin:0; font-size:16.5px; line-height:1.8; }
.vcu-cta-action{ display:flex; flex-direction:column; align-items:flex-start; gap:14px; flex:0 0 auto; }
.vcu-cta-phone{ display:inline-flex; align-items:center; gap:10px; color:var(--theme-color2); font-size:20px; font-weight:600; letter-spacing:.02em; }
.vcu-cta-phone::before{ content:"\f095"; font-family:"Font Awesome 6 Pro","Font Awesome 6 Free"; font-weight:900; display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%; background:#E60012; color:#fff; font-size:14px; }
.vcu-cta-phone:hover{ color:var(--theme-color1); }
@media (max-width:1199.98px){ .vcu-cta .cta-banner-wrapper .content{ gap:28px; flex-wrap:wrap; } }
@media (max-width:991.98px){ .vcu-cta{ margin-top:30px; margin-bottom:40px; padding:46px 0; } }
@media (max-width:575.98px){
  .vcu-cta{ margin-top:24px; margin-bottom:28px; padding:40px 0; }
  .vcu-cta::before{ display:none; }
  .vcu-cta .cta-banner-wrapper{ text-align:center; }
  .vcu-cta .cta-banner-wrapper .content{ justify-content:center; text-align:center; }
  .vcu-cta-action{ align-items:center; width:100%; }
  .vcu-cta-copy{ max-width:none; }
}

/* Footer already follows the CTA with its own spacing on the homepage; keep the About page consistent. */

/* ---------- fixes ---------- */
.page-title .page-breadcrumb li a{ color:#fff; }
.page-title .page-breadcrumb li a:hover{ color:#ff9aa1; }
@media (max-width:575.98px){
  .vcu-cta-copy{ flex:1 1 100%; min-width:0; }
  .vcu-cta .cta-banner-wrapper .content .title{ overflow-wrap:break-word; }
}
