.review-carousel__banner{background:linear-gradient(135deg, var(--primary-color), var(--primary-hover));padding:var(--spacing-3xl) 0;background-position:50%;background-size:cover;position:relative;overflow:hidden}.review-carousel__banner--has-image:before{content:"";z-index:1;background:rgba(25,45,70,.45);position:absolute;top:0;bottom:0;left:0;right:0}.review-carousel__slider{z-index:2;max-width:1400px;padding:0 var(--spacing-lg);margin:0 auto;position:relative;overflow:hidden}.review-carousel__track{will-change:transform;transition:transform .5s;display:flex}.review-carousel__card{padding:0 var(--spacing-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.review-carousel__card-inner{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;background-color:rgba(30,65,110,.55);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:max(280px,min(26vw,385px));height:max(280px,min(26vw,385px));padding:0 max(24px,min(3vw,35px));display:flex;overflow:hidden}.review-carousel__stars{margin-bottom:var(--spacing-sm);justify-content:center;gap:2px;display:flex}.review-carousel__star{width:18px;height:18px;color:var(--secondary-color)}.review-carousel__quote{font-family:var(--font-family);font-size:max(.95rem,min(.85rem + .5vw,1.2rem));font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed);color:var(--on-dark);margin:0 0 var(--spacing-sm);-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;font-style:normal;display:-webkit-box;overflow:hidden}.review-carousel__author{font-family:var(--font-family);font-size:var(--font-small);font-weight:var(--font-weight-semibold);color:var(--on-dark);letter-spacing:.05em;font-style:normal}.review-carousel__nav{z-index:2;padding:0 var(--spacing-sm);pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.review-carousel__arrow{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--on-dark-border);cursor:pointer;width:44px;height:44px;transition:var(--transition);color:var(--on-dark);pointer-events:auto;background:rgba(255,255,255,.15);border-radius:50%;justify-content:center;align-items:center;display:flex}.review-carousel__arrow svg{width:18px;height:18px}.review-carousel__arrow:hover{border-color:var(--on-dark);background:rgba(255,255,255,.3)}.review-carousel__content{padding:var(--spacing-3xl) var(--spacing-lg);background-color:var(--background-warm)}.review-carousel__content-inner{max-width:1000px;margin:0 auto}.review-carousel__heading{font-family:var(--font-heading);font-size:var(--font-h2);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);color:var(--text-color);margin-bottom:var(--spacing-sm)}.review-carousel__subheading{font-family:var(--font-heading);font-size:var(--font-h3);font-weight:var(--font-weight-normal);line-height:var(--line-height-snug);color:var(--secondary-color-text);margin-bottom:var(--spacing-lg)}.review-carousel__description{font-size:var(--font-p);color:var(--text-light);line-height:var(--line-height-relaxed);max-width:800px;margin-bottom:var(--spacing-lg)}.review-carousel__ctas{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.review-carousel__btn{min-height:48px;padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family);font-size:var(--font-small);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em;transition:var(--transition);cursor:pointer;border:2px solid transparent;border-radius:30px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.review-carousel__btn--primary{background-color:var(--primary-color);color:var(--on-dark);border-color:var(--primary-color)}.review-carousel__btn--primary:hover{background-color:var(--primary-hover);border-color:var(--primary-hover);color:var(--on-dark);box-shadow:var(--box-shadow);transform:translateY(-2px)}.review-carousel__btn--outline{color:var(--primary-color);border-color:var(--primary-color);background-color:transparent}.review-carousel__btn--outline:hover{background-color:var(--primary-color);color:var(--on-dark);box-shadow:var(--box-shadow);transform:translateY(-2px)}.review-carousel__dots{z-index:2;margin-top:var(--spacing-md);justify-content:center;gap:8px;display:flex;position:relative}.review-carousel__dot{cursor:pointer;background:0 0;border:2px solid rgba(255,255,255,.6);border-radius:50%;width:10px;height:10px;padding:0;transition:background .2s,border-color .2s}.review-carousel__dot--active{background:var(--secondary-color);border-color:var(--secondary-color)}.review-carousel__dot:hover{border-color:#fff}@media (max-width:640px){.review-carousel__card-inner{width:300px;height:300px;padding:0 28px}.review-carousel__arrow{width:36px;height:36px}.review-carousel__arrow svg{width:14px;height:14px}.review-carousel__quote{-webkit-line-clamp:4;line-clamp:4}}@media (prefers-reduced-motion:reduce){.review-carousel__track{transition:none}}
.team-section{padding:var(--spacing-3xl) var(--spacing-lg);padding-top:calc(var(--spacing-3xl) + 50px);background-color:var(--background-warm);position:relative;overflow:hidden}.team-section:before{content:"";pointer-events:none;z-index:0;background-image:radial-gradient(circle,rgba(0,0,0,.024) 1.5px,transparent 1.5px),radial-gradient(circle,rgba(0,0,0,.016) 1px,transparent 1px);background-position:0 0,10px 10px;background-size:32px 32px,20px 20px;position:absolute;top:0;bottom:0;left:0;right:0}.team-section:after{content:"";z-index:1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 50' preserveAspectRatio='none'%3E%3Cpath d='M0,0 L0,30 C360,50 1080,5 1440,28 L1440,0 Z' fill='%23faf8f5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:100% 100%;width:100%;height:50px;position:absolute;top:0;left:0}.team-section__container{z-index:2;max-width:1200px;margin:0 auto;position:relative}.team-section__header{text-align:center;margin-bottom:var(--spacing-2xl)}.team-section__eyebrow{font-family:var(--font-family);font-size:var(--font-small);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.12em;color:var(--secondary-color-text);margin-bottom:var(--spacing-sm);display:inline-block}.team-section__heading{font-family:var(--font-heading);font-size:var(--font-h2);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);color:var(--text-color);margin-bottom:var(--spacing-md)}.team-section__description{max-width:600px;font-size:var(--font-p);line-height:var(--line-height-relaxed);color:var(--text-light);margin:0 auto}.team-section__description p{margin-bottom:var(--spacing-sm)}.team-section__description p:last-child{margin-bottom:0}.team-section__grid{gap:var(--spacing-xl);grid-template-columns:repeat(2,1fr);display:grid}.team-section__grid--single{grid-template-columns:minmax(0,300px);justify-content:center}.team-section__member{text-align:center}.team-section__member-photo{aspect-ratio:1;width:min(300px,100%);height:auto;margin:0 auto var(--spacing-md);background-color:var(--background-muted);border:3px solid rgba(91,155,213,.3);border-radius:50%;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.1)}.team-section__member-photo img{object-fit:cover;width:100%;height:100%;display:block}.team-section__member-placeholder{background:linear-gradient(135deg, var(--primary-light), #f0ece6);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.team-section__member-placeholder svg{width:56px;height:56px;color:var(--secondary-color);opacity:.35}.team-section__member-name{font-family:var(--font-heading);font-size:var(--font-h4);font-weight:var(--font-weight-normal);color:var(--text-color);margin-bottom:4px}.team-section__member-role{font-size:var(--font-small);color:var(--text-light)}.team-section__cta-wrap{text-align:center;margin-top:var(--spacing-2xl)}.team-section__cta{padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family);font-size:var(--font-small);font-weight:var(--font-weight-bold);color:var(--white);text-transform:uppercase;letter-spacing:.08em;line-height:var(--line-height-normal);background-color:var(--secondary-color);border:2px solid var(--secondary-color);transition:var(--transition);border-radius:30px;justify-content:center;align-items:center;min-height:48px;text-decoration:none;display:inline-flex}.team-section__cta:hover{background-color:var(--primary-color);border-color:var(--primary-color);color:var(--background-color);box-shadow:var(--box-shadow);transform:translateY(-2px)}@media (min-width:768px){.team-section__grid{gap:var(--spacing-2xl);grid-template-columns:repeat(2,1fr)}.team-section__grid--single{grid-template-columns:minmax(0,300px)}}@media (min-width:1200px){.team-section__grid{grid-template-columns:repeat(5,1fr)}.team-section__grid--single{grid-template-columns:minmax(0,300px)}}
.appointment-section{padding:var(--spacing-3xl) var(--spacing-lg);background:linear-gradient(135deg, var(--primary-color) 0%, #1a5278 100%);color:var(--on-dark);position:relative;overflow:hidden}.appointment-section:before{content:"";pointer-events:none;z-index:0;border:3px solid rgba(91,155,213,.1);border-radius:50%;width:200px;height:200px;position:absolute;top:-50px;left:-70px}.appointment-section:after{content:"";pointer-events:none;z-index:0;border:2px solid rgba(91,155,213,.08);border-radius:50%;width:160px;height:160px;position:absolute;bottom:-30px;right:-60px}.appointment-section__container{z-index:1;gap:var(--spacing-2xl);grid-template-columns:1fr;align-items:start;max-width:1100px;margin:0 auto;display:grid;position:relative}.appointment-section__header{text-align:center}.appointment-section__eyebrow{font-family:var(--font-family);font-size:var(--font-small);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.12em;color:var(--secondary-color-light);margin-bottom:var(--spacing-sm);display:inline-block}.appointment-section__heading{font-family:var(--font-heading);font-size:var(--font-h2);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);color:var(--on-dark);margin-bottom:var(--spacing-md)}.appointment-section__description{font-size:var(--font-p);line-height:var(--line-height-relaxed);color:var(--on-dark-muted);max-width:500px;margin:0 auto}.appointment-section__form{background-color:var(--background-warm);border-radius:var(--border-radius-xl);padding:var(--spacing-xl);border:1px solid rgba(91,155,213,.15);width:100%;max-width:600px;margin:0 auto;box-shadow:0 12px 40px rgba(0,0,0,.2)}.appointment-section__simple-form{gap:var(--spacing-md);flex-direction:column;display:flex}.appointment-section__field{flex-direction:column;gap:6px;display:flex}.appointment-section__field label{font-size:var(--font-small);font-weight:var(--font-weight-semibold);color:var(--text-color)}.appointment-section__field input,.appointment-section__field textarea{width:100%;font-family:var(--font-family);font-size:var(--font-p);color:var(--text-color);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:var(--transition);background-color:#fff;outline:none;padding:12px 16px}.appointment-section__field input::-ms-input-placeholder{color:var(--text-light);opacity:.6}.appointment-section__field input::placeholder{color:var(--text-light);opacity:.6}.appointment-section__field textarea::-ms-input-placeholder{color:var(--text-light);opacity:.6}.appointment-section__field textarea::placeholder{color:var(--text-light);opacity:.6}.appointment-section__field input:focus,.appointment-section__field textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(26,79,139,.1)}.appointment-section__field input:disabled,.appointment-section__field textarea:disabled{opacity:.6;cursor:not-allowed}.appointment-section__field textarea{resize:vertical;min-height:100px}.appointment-section__required{color:#c44}.appointment-section__submit{width:100%;padding:var(--spacing-sm) var(--spacing-xl);font-family:var(--font-family);font-size:var(--font-p);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em;color:#fff;background-color:var(--secondary-color);border:2px solid var(--secondary-color);cursor:pointer;transition:var(--transition);border-radius:30px;justify-content:center;align-items:center;min-height:48px;display:inline-flex}.appointment-section__submit:hover:not(:disabled){background-color:var(--secondary-color-dark);border-color:var(--secondary-color-dark);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.15)}.appointment-section__submit:disabled{opacity:.7;cursor:not-allowed}.appointment-section__error{color:#c44;font-size:var(--font-small);text-align:center;margin:0}.appointment-section__success{text-align:center;padding:var(--spacing-xl) var(--spacing-md);color:var(--text-color)}.appointment-section__success svg{color:var(--secondary-color);margin-bottom:var(--spacing-md)}.appointment-section__success h3{font-family:var(--font-heading);font-size:var(--font-h3);font-weight:var(--font-weight-normal);margin-bottom:var(--spacing-sm)}.appointment-section__success p{font-size:var(--font-p);color:var(--text-light);line-height:var(--line-height-relaxed)}@media (min-width:1024px){.appointment-section__container{text-align:left;grid-template-columns:1fr 1.2fr}.appointment-section__header{text-align:left}.appointment-section__description,.appointment-section__form{margin:0}}
.location-cards{padding:var(--spacing-3xl) var(--spacing-lg);background-color:var(--background-warm);position:relative}.location-cards__container{z-index:2;text-align:center;max-width:1400px;margin:0 auto;position:relative}.location-cards__heading{font-family:var(--font-heading);font-size:var(--font-h2);font-weight:var(--font-weight-normal);line-height:var(--line-height-tight);color:var(--text-color);margin-bottom:var(--spacing-2xl)}.location-cards__row{justify-content:center;gap:var(--spacing-3xl) var(--spacing-2xl);flex-wrap:wrap;display:flex}.location-cards__location{flex-direction:column;flex:0 500px;align-items:center;max-width:500px;display:flex}.location-cards__map-circle{width:max(250px,min(40vw,400px));height:max(250px,min(40vw,400px));margin-bottom:var(--spacing-xl);background:linear-gradient(135deg, var(--primary-color), var(--tertiary-color));color:var(--on-dark);transition:var(--transition);border:3px solid rgba(91,155,213,.25);border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden;box-shadow:0 8px 32px rgba(26,79,139,.15),0 4px 12px rgba(60,100,160,.08)}.location-cards__map-circle:hover{box-shadow:0 12px 40px rgba(26,79,139,.25),0 6px 16px rgba(60,100,160,.1)}.location-cards__map-circle svg{opacity:.7;width:60px;height:60px}.location-cards__map-circle img{object-fit:cover;width:100%;height:100%}.location-cards__map-circle iframe{pointer-events:auto;border:0;width:100%;height:100%}.location-cards__map-link{width:100%;height:100%;color:inherit;justify-content:center;align-items:center;text-decoration:none;display:flex}.location-cards__name{font-family:var(--font-heading);font-size:max(1.25rem,min(1rem + 1vw,1.75rem));font-weight:var(--font-weight-normal);color:var(--primary-color);margin-bottom:var(--spacing-sm)}.location-cards__address-link{min-height:44px;color:inherit;transition:var(--transition);align-items:center;text-decoration:none;display:inline-flex}.location-cards__address-link:hover{color:var(--primary-color)}.location-cards__address{color:var(--text-color);font-size:max(.9rem,min(.85rem + .25vw,1.125rem));font-style:normal;line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-sm)}.location-cards__phone{min-height:48px;font-family:var(--font-family);font-size:max(.9rem,min(.85rem + .25vw,1.125rem));font-weight:var(--font-weight-normal);color:var(--text-color);transition:var(--transition);align-items:center;text-decoration:none;display:inline-flex}.location-cards__phone:hover{color:var(--primary-color)}@media (max-width:640px){.location-cards__row{gap:var(--spacing-2xl)}.location-cards__location{flex-basis:100%}}
