.audience-links{display:flex;gap:28px;font-size:14px}.audience-links a{font-weight:800}.audience-links a:hover{text-decoration:underline;text-underline-offset:4px}.service-nav{position:relative;display:flex;align-items:center;gap:4px}.services-toggle{background:none;border:0;color:var(--blue);font-weight:900;font-size:22px;line-height:1;padding:0 3px;min-width:24px;min-height:30px}.service-dropdown{display:none;position:absolute;top:calc(100% + 22px);left:-25px;min-width:330px;padding:16px;border-radius:17px;background:#fff;border:1px solid #dceef9;box-shadow:0 18px 45px #00477b22;z-index:45}.service-dropdown.open{display:grid;gap:2px}.service-dropdown a{padding:10px 13px;font-size:16px;line-height:1.35;border-radius:9px}.service-dropdown a:hover{background:#edf8fe}.professional-nav{color:var(--red)}header nav{gap:20px;font-size:16px}.header-actions{gap:12px}.header-actions .button{font-size:15px;padding:13px 19px}.service-detail{display:inline-block;margin-top:20px;font-weight:900;font-size:17px;color:var(--blue);text-decoration:underline;text-underline-offset:5px}.professional-entry{padding:60px 0;background:#153e65;color:#fff}.professional-entry .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:20px 35px}.professional-entry h2{font-size:36px}.professional-entry p{color:#d5eaff;font-size:19px;max-width:510px}.professional-entry .button{margin-left:auto}.footer-pages{display:flex;flex-wrap:wrap;gap:15px 28px;padding:20px 0 32px;font-size:17px;font-weight:800;border-top:1px solid #dcedf7}.footer-pages a:hover{color:var(--red)}.interior .page-hero{background:#eaf7ff;position:relative;overflow:hidden;border-bottom:8px solid var(--yellow);padding:45px 0 75px}.page-hero:after{content:'';position:absolute;right:-70px;top:-130px;width:430px;height:430px;border:45px solid #22aae20d;border-radius:50%;pointer-events:none}.breadcrumb{display:inline-block;font-size:16px;color:var(--blue);text-decoration:underline;text-underline-offset:4px;margin-bottom:28px}.page-hero .eyebrow{font-size:14px;letter-spacing:1.1px;margin-bottom:20px}.page-hero h1{color:var(--blue);font-size:clamp(42px,4.7vw,66px);line-height:1.09;letter-spacing:-2px;max-width:950px}.page-lead{max-width:800px;font-size:22px;line-height:1.65;margin-top:26px}.page-hero .actions{margin-top:32px;flex-wrap:wrap}.service-index{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-tile{border:2px solid #e2f0f8;border-bottom:6px solid var(--sky);background:#fff;border-radius:22px;padding:28px;display:block;transition:transform .25s,box-shadow .25s}.service-tile:nth-child(3n+2){border-bottom-color:var(--purple)}.service-tile:nth-child(3n){border-bottom-color:var(--red)}.service-tile:hover{transform:translateY(-7px);box-shadow:0 15px 30px #006db812}.service-symbol{display:grid;place-items:center;width:60px;height:60px;border-radius:18px;background:#e6f6ff;color:var(--blue);margin-bottom:22px}.service-symbol svg{width:42px;height:42px}.service-tile h3{font-size:25px;margin-bottom:12px}.service-tile p{font-size:19px}.tile-link{display:inline-block;margin-top:25px;color:var(--blue);font-size:17px;font-weight:900;text-decoration:underline;text-underline-offset:5px}.directory-note{font-size:16px;line-height:1.65;margin-top:30px;color:#526c80}.service-overview{display:grid;grid-template-columns:.6fr 1fr;align-items:center;gap:80px}.service-overview h2{margin-bottom:24px;color:var(--blue)}.service-overview p{font-size:21px}.large-service-symbol{display:grid;place-items:center;width:270px;height:270px;background:#e8f7ff;color:var(--blue);border-radius:40% 60% 35% 65%;margin:auto;position:relative;box-shadow:16px 16px 0 #fec40d}.large-service-symbol svg{width:150px;height:150px}.benefit-list{list-style:none;padding:0;margin:25px 0;display:grid;gap:16px}.benefit-list li{position:relative;padding-left:29px;font-size:19px;line-height:1.6}.benefit-list li:before{content:'✓';position:absolute;left:0;top:0;color:var(--red);font-weight:900}.pale-section{background:#f1f9fe}.pale-section h2{max-width:850px;color:var(--blue)}.detail-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.detail-steps>article>span{display:grid;place-items:center;background:var(--blue);color:white;border-radius:20px;width:60px;height:60px;font-weight:900;font-size:25px;margin-bottom:23px}.detail-steps>article:nth-child(2)>span{background:var(--red)}.detail-steps>article:nth-child(3)>span{background:var(--purple)}.detail-steps h3{font-size:26px;margin-bottom:15px}.detail-steps p{font-size:19px}.narrow-section{max-width:880px;margin-left:auto;margin-right:auto}.narrow-section h2{color:var(--blue);margin-bottom:25px}.narrow-section>p{font-size:21px}.page-cta{background:var(--blue);color:#fff;padding:70px 0;position:relative;overflow:hidden;border-top:9px solid var(--sky)}.page-cta h2{font-size:clamp(34px,3.8vw,50px)}.page-cta p{color:white;font-size:22px;margin-top:20px}.page-cta .text-link{color:#fff}.related-services h2{color:var(--blue);margin-bottom:30px}.related-links{display:flex;flex-wrap:wrap;gap:15px}.related-links a{padding:12px 20px;border:1px solid #b7daf0;border-radius:40px;font-size:18px;font-weight:800;color:var(--blue)}.related-links a:hover{background:#eaf7ff}.interior .referral-hero{background:radial-gradient(ellipse at 90% 10%,#006db8 0,transparent 65%),#12395b;border-color:var(--red);color:#fff;padding-top:35px;padding-bottom:80px}.referral-hero h1{color:#fff;max-width:1000px;font-size:clamp(42px,4.8vw,68px)}.referral-hero .breadcrumb{color:#cbeaff}.referral-hero .page-lead{color:#e4f4ff;max-width:810px}.referral-hero .eyebrow{color:var(--yellow);font-size:13px;letter-spacing:1.3px}.referral-trust{display:flex;justify-content:space-between;gap:25px;padding-top:26px;padding-bottom:26px;border-bottom:1px solid #daedf8;font-size:17px;color:var(--blue)}.referral-trust b:before{content:'✓ ';color:var(--red)}.referral-overview{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.referral-overview h2{color:var(--blue);margin-bottom:25px}.referral-overview>div>p{font-size:21px;margin-bottom:25px}.referral-focus{background:#f0f8fe;border-radius:24px;padding:32px}.referral-focus h3{font-size:26px}.referral-focus .directory-note{font-size:16px}.referral-checklist{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.referral-checklist h2{color:var(--blue);margin-bottom:25px}.referral-checklist>div>p{font-size:21px}#referral-print{padding:30px;border:2px solid #deedf8;border-radius:20px}#referral-print h3{font-size:23px;color:var(--blue)}#referral-print>p{font-size:17px}.outline-button{border:2px solid var(--blue);color:var(--blue);padding:13px 22px;border-radius:10px;background:white;font-size:18px;font-weight:900;margin-top:28px}.outline-button:hover{background:#e9f6ff}.referral-options{background:#eaf7ff;border-top:8px solid var(--red)}.referral-options h2{color:var(--blue)}.referral-options>.wrap>p{margin-top:20px;font-size:21px}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:35px}.contact-options article{background:white;padding:35px;border-radius:23px;box-shadow:0 10px 25px #006db809}.contact-options h3{color:var(--blue);margin-bottom:17px}.contact-options p{font-size:20px}.contact-options .button{margin-top:25px}.contact-options .directory-note{font-size:16px;margin-top:25px}.blog-controls{display:grid;grid-template-columns:auto 1fr auto 250px;align-items:center;gap:15px 20px;background:#edf8fe;padding:25px;border-radius:18px;margin-bottom:25px}.blog-controls label{font-size:17px;font-weight:900}.blog-controls input,.blog-controls select{min-width:0;background:#fff;border:1px solid #a8cfe5;border-radius:9px;padding:14px;font:18px Nunito,Arial;color:var(--ink)}#blog-results{font-size:17px;font-weight:800;margin-bottom:25px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.blog-card{padding:28px;border:1px solid #d9ebf6;border-radius:22px;display:flex;flex-direction:column;border-top:5px solid var(--sky)}.blog-card[hidden]{display:none}.blog-card:nth-child(3n+2){border-top-color:var(--purple)}.blog-card:nth-child(3n){border-top-color:var(--red)}.blog-card-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:14px;color:#526b80}.category-label{font-weight:900;color:var(--blue)}.blog-card-mark{width:56px;height:56px;background:#edf8fe;color:var(--blue);border-radius:15px;padding:10px;margin:25px 0}.blog-card h2{font-size:27px;line-height:1.2;letter-spacing:-.5px;margin-bottom:19px;color:var(--blue)}.blog-card p{font-size:18px;margin-bottom:25px}.blog-card .text-link{margin-top:auto;font-size:17px}.blog-empty{background:#fff7db;padding:30px;border-radius:15px;font-size:21px}.story-layout{display:grid;grid-template-columns:.8fr 1.1fr;gap:80px;align-items:center}.story-layout>img{max-height:580px;border-radius:30px;object-position:50% 35%}.story-layout h2{color:var(--blue);margin-bottom:25px}.story-layout p{font-size:21px;margin-bottom:22px}.interior .team-grid{margin-bottom:65px}.team-disciplines{max-width:850px;padding-top:40px;border-top:2px dashed #c5e3f5}.team-disciplines h2{color:var(--blue);margin-bottom:25px}.team-disciplines p{font-size:21px;margin-bottom:25px}.contact-page-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.contact-primary h2{color:var(--blue);margin-bottom:25px}.contact-primary p{font-size:21px;margin-bottom:28px}.contact-primary .directory-note{font-size:16px;margin-top:22px}.contact-primary .text-link{display:block}.contact-page-grid .contact-card{background:#f0f8fe}.photo-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.photo-gallery figure{margin:0}.photo-gallery img{height:400px;border-radius:22px;background:#ecf8ff;object-position:50% 25%}.photo-gallery figure:nth-child(2) img{object-fit:contain}.photo-gallery figcaption{font-size:18px;margin-top:20px;font-weight:800}.gallery-video{margin-top:70px}.gallery-video h2{color:var(--blue);margin-bottom:30px}.gallery-video a{display:block;max-width:800px}.gallery-video img{aspect-ratio:16/9;border-radius:20px;margin-bottom:25px}.interior .section{animation:interior-in .6s ease both}@keyframes interior-in{from{opacity:.25;translate:0 15px}to{opacity:1;translate:0 0}}
@media(max-width:1150px){header nav{gap:13px;font-size:15px}.header-actions .button{display:none}.service-index,.blog-grid{grid-template-columns:repeat(2,1fr)}.service-overview{gap:45px}.referral-overview,.referral-checklist,.contact-page-grid{gap:45px}.blog-controls{grid-template-columns:auto 1fr}.founder-note{max-width:calc(100% - 64px)}}
@media(max-width:760px){.audience-links{gap:20px;font-size:12px}.top{justify-content:space-between;padding:9px 18px}.audience-links a:first-child{display:none}.top>a{font-size:12px}.interior header{height:92px}header nav{top:92px;gap:0;font-size:19px;max-height:calc(100dvh - 160px);overflow-y:auto}header nav>a{padding:14px}.service-nav{display:grid;grid-template-columns:1fr 45px}.service-nav>a{padding:14px}.services-toggle{padding:10px;min-height:45px}.service-dropdown{position:static;grid-column:1/-1;min-width:0;border:0;border-radius:0;background:#edf8fe;box-shadow:none;margin:0 0 10px;padding:10px}.service-dropdown a{font-size:17px;padding:12px 15px}.service-dropdown.open{display:grid}.professional-entry{padding:45px 0}.professional-entry .wrap{display:block}.professional-entry h2{font-size:33px;margin-bottom:18px}.professional-entry p{font-size:20px;margin-bottom:25px}.professional-entry .button{margin:0}.footer-pages{font-size:17px;gap:17px 24px}.interior .page-hero{padding:30px 0 50px}.page-hero h1{font-size:43px;letter-spacing:-1.3px}.page-hero .eyebrow{font-size:12px;letter-spacing:.7px}.page-lead{font-size:21px;margin-top:24px}.breadcrumb{font-size:16px;margin-bottom:25px}.page-hero .actions{align-items:start;flex-direction:column;gap:25px}.page-hero .button{white-space:normal;text-align:center}.service-index,.blog-grid{grid-template-columns:1fr;gap:22px}.service-tile{padding:26px}.service-symbol{float:left;margin-right:18px;margin-bottom:15px}.service-tile h3{font-size:25px;min-height:60px;display:flex;align-items:center}.service-tile p{clear:both;font-size:20px}.service-overview{grid-template-columns:1fr;gap:45px}.large-service-symbol{width:170px;height:170px;box-shadow:10px 10px 0 #fec40d}.large-service-symbol svg{width:100px;height:100px}.service-overview p{font-size:20px}.service-overview h2{font-size:35px}.benefit-list li{font-size:19px}.detail-steps{grid-template-columns:1fr;gap:35px}.detail-steps article{padding-left:75px;position:relative}.detail-steps article>span{position:absolute;left:0;top:0;width:52px;height:52px;font-size:22px;border-radius:15px}.detail-steps h3{font-size:25px}.detail-steps p{font-size:20px}.page-cta{padding:55px 0}.page-cta h2{font-size:36px}.page-cta p{font-size:21px}.page-cta .actions{flex-direction:column;align-items:start;gap:27px}.related-links a{font-size:17px;padding:11px 17px}.interior .referral-hero{padding-top:28px;padding-bottom:50px}.referral-hero h1{font-size:43px}.referral-trust{flex-direction:column;gap:12px;font-size:17px}.referral-overview,.referral-checklist,.contact-page-grid{grid-template-columns:1fr;gap:35px}.referral-focus{padding:25px}.referral-focus h3{font-size:25px}.referral-overview>div>p{font-size:21px}.referral-checklist h2{font-size:35px}.referral-checklist>div>p{font-size:20px}#referral-print{padding:25px}.contact-options{grid-template-columns:1fr;gap:24px}.contact-options article{padding:27px}.contact-options .button{white-space:normal;text-align:center;width:100%}.blog-controls{grid-template-columns:1fr;padding:23px;gap:12px}.blog-controls select{width:100%}.blog-controls label:not(:first-child){margin-top:10px}.blog-card{padding:26px}.blog-card h2{font-size:29px}.blog-card p{font-size:20px}.blog-card-top{font-size:15px}.story-layout{grid-template-columns:1fr;gap:35px}.story-layout>img{height:420px;width:100%}.story-layout p{font-size:21px}.interior .team-grid{margin-bottom:45px}.team-disciplines h2{font-size:35px}.photo-gallery{grid-template-columns:1fr;gap:35px}.photo-gallery img{height:390px}.photo-gallery figcaption{font-size:19px}.multi-footer .footer-top{padding-top:35px}.multi-footer .footer-bottom{padding-bottom:110px}.interior .mobile-cta a{font-size:16px}.interior.professional-page .mobile-cta a:last-child{flex:1.25}.directory-note{font-size:16px}.interior .narrow-section h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){.interior .section{animation:none!important}.service-tile{transition:none}}
@media print{body.printing-referral *{visibility:hidden!important}body.printing-referral #referral-print,body.printing-referral #referral-print *{visibility:visible!important}body.printing-referral #referral-print{position:absolute;inset:0 auto auto 0;width:100%;border:0;color:#000;padding:25px}body.printing-referral #referral-print h3{color:#000}body.printing-referral #referral-print p,body.printing-referral #referral-print li{color:#000;font-size:14pt}body.printing-referral header,body.printing-referral footer,body.printing-referral .mobile-cta{display:none!important}}
@media(max-width:760px){.referral-hero h1{font-size:36px;letter-spacing:-1px;line-height:1.12}.referral-hero .page-lead{font-size:20px}.referral-hero .breadcrumb{margin-bottom:22px}.referral-hero .eyebrow{font-size:11px;line-height:1.7}}
/* One contact banner, a direct PPEC opening, and calm staff portraits. */
.top-contact{padding:10px max(24px,calc((100vw - 1154px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:40px}.banner-address{display:flex;gap:9px;align-items:center;font-size:14px;line-height:1.4;font-weight:700}.banner-address svg{width:17px;height:21px;flex-shrink:0}.banner-phone{font-size:14px;white-space:nowrap}.hero .hero-copy .ppec-title{font-size:clamp(90px,10vw,142px);line-height:.95;letter-spacing:-5px;color:#fff;margin:0 0 16px;font-weight:900}.hero .hero-copy .eyebrow{margin-bottom:18px;font-size:13px;letter-spacing:1.4px}.ppec-meaning{color:var(--yellow);font-size:30px;line-height:1.18;font-weight:900;letter-spacing:-.4px}.ppec-summary{color:white;font-size:20px;line-height:1.5;margin-top:18px}.hero .hero-copy .actions{flex-direction:row;align-items:center;gap:17px;margin-top:25px}.hero-call{font-size:18px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;min-height:58px;border:2px solid #ffffffa0;border-radius:12px;padding:12px 22px;color:white}.hero-call:hover{background:#ffffff18}.hero-address{display:flex;align-items:center;gap:11px;color:white;font-size:18px;font-weight:800;line-height:1.45;margin-top:24px;width:fit-content}.hero-address svg{width:23px;height:29px;color:var(--yellow);flex-shrink:0}.hero-address:hover span{text-decoration:underline;text-underline-offset:4px}.hero .hero-copy .hero-note{margin-top:18px;font-size:16px;gap:8px}.hero .hero-copy{animation:none}.hero{padding-top:50px;padding-bottom:80px;min-height:0}.team-card,.team-card:hover,.team-card img,.team-card:hover img,.team-section .team-card:nth-child(2),.team-section .team-card:nth-child(2):hover{animation:none!important;transition:none!important;transform:none!important;translate:none!important;scale:none!important;opacity:1!important}.interior:has(.team-disciplines) .section{animation:none!important}.hero .hero-copy .button{font-size:18px;padding:16px 25px}.hero .hero-art{align-self:center}
@media(max-width:760px){.top-contact{padding:8px 18px;gap:10px;min-height:40px}.banner-address{font-size:12px;line-height:1.35;gap:6px}.banner-city{display:block}.banner-phone{font-size:12px}.banner-address svg{width:15px;height:18px}header{height:78px!important;padding:3px 20px}.brand img{width:68px;height:68px}.interior header{height:78px}.header-actions{gap:16px}header nav{top:78px}.hero{padding-top:28px;padding-bottom:65px;gap:55px}.hero .hero-copy .eyebrow{font-size:11px;letter-spacing:1.1px;margin-bottom:14px}.hero .hero-copy .ppec-title{font-size:82px;letter-spacing:-3px;margin-bottom:12px;line-height:.95}.ppec-meaning{font-size:24px;line-height:1.17;letter-spacing:-.3px}.ppec-summary{font-size:17px;line-height:1.45;margin-top:13px;max-width:300px}.hero .hero-copy .actions{margin-top:19px;gap:12px;flex-wrap:nowrap}.hero .hero-copy .button{font-size:17px;padding:13px 19px;min-height:51px}.hero-call{min-height:54px;font-size:17px;padding:11px 16px;border-radius:10px;white-space:nowrap}.hero-address{font-size:16px;line-height:1.4;margin-top:20px;gap:10px}.hero-address svg{width:20px;height:25px}.hero .hero-copy .hero-note{font-size:13px;line-height:1.4;margin-top:14px}.hero .hero-copy .check{font-size:19px}.hero .hero-art{margin-top:0}html{scroll-padding-top:82px}.mobile-cta{padding-top:9px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.mobile-cta a{padding:10px;font-size:16px}}
@media(max-width:360px){.hero .hero-copy .ppec-title{font-size:74px}.ppec-meaning{font-size:22px}.hero .hero-copy .button,.hero-call{font-size:16px;padding-left:15px;padding-right:15px}.banner-address,.banner-phone{font-size:11px}}
@media(max-width:760px){.top-contact{min-height:38px;padding-top:6px;padding-bottom:6px}header,.interior header{height:72px!important}.brand img{width:62px;height:62px}header nav{top:72px}.hero{padding-top:22px}.hero .hero-copy .eyebrow{margin-bottom:10px}.hero .hero-copy .ppec-title{font-size:76px;margin-bottom:10px}.ppec-meaning{font-size:23px;line-height:1.14}.ppec-summary{display:none}.hero .hero-copy .actions{margin-top:18px}.hero-address{margin-top:16px}.hero .hero-copy .hero-note{margin-top:11px}.hero .hero-copy .hero-note .check{font-size:18px}}
.banner-city:before{content:' · '}@media(max-width:760px){.banner-city:before{content:none}}
/* Original, uncropped care photography and videos directly after the introduction. */
.hero .hero-img{height:auto;aspect-ratio:1;object-fit:contain;object-position:center;background:#fff;max-height:525px}.hero+.video-section{padding-top:65px;border-top:0}.hero+.video-section .section-heading{margin-bottom:35px}
@media(max-width:760px){.hero .hero-img{height:auto;aspect-ratio:1;object-fit:contain;max-height:none}.hero+.video-section{padding-top:50px}.hero+.video-section .section-heading>p{font-size:19px}}
@media(min-width:761px){.hero .photo-orbit{top:-30px}}
/* Playful waves, stronger contrast and visible original community content. */
.hero{background:linear-gradient(115deg,#074c84 0%,#08659c 65%,#0873a5 100%)}.hero .hero-art{animation:none}.hero:after,.program-section:after{display:none}.hero .ppec-meaning{color:#ffda42}.hero .hero-grain{opacity:.08}.hero .hero-copy .hero-note{color:#fff}.hero .hero-address{color:#fff}.hero .hero-call{background:#ffffff0d;border-color:#ffffffc0}.hero .hero-call:hover{background:#ffffff24}section:has(>.section-wave){position:relative;padding-bottom:140px}.hero:has(>.section-wave){padding-bottom:130px}.section-wave{position:absolute;bottom:-1px;left:50%;width:100vw;height:78px;transform:translateX(-50%);pointer-events:none;z-index:0;overflow:hidden;line-height:0}.section-wave svg{display:block;width:100%;height:100%}.video-section,.program-section,.team-section,.admissions,.visit{border-top:0;border-bottom:0;border-radius:0}.team-section{background:#fff}.home-gallery{background:#e9f7ff}.home-journal{background:#f7eef9}.home-gallery h2,.home-journal h2{color:var(--blue)}.section-heading .button{align-self:center}.home-photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.home-photo-grid .gallery-item:nth-child(2n){padding-top:25px}.gallery-item{margin:0;min-width:0}.gallery-thumb{padding:0;background:#eaf6ff;display:block;width:100%;border:0;border-radius:22px;overflow:hidden;position:relative;cursor:zoom-in}.gallery-thumb img{width:100%;height:250px;object-fit:cover;transition:transform .35s}.gallery-thumb:hover img{transform:scale(1.035)}.gallery-item figcaption{font-size:17px;font-weight:800;color:var(--ink);margin-top:15px;line-height:1.45}.enlarge-hint{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;background:white;color:var(--blue);width:36px;height:36px;border-radius:50%;font-size:26px;font-weight:800;box-shadow:0 4px 18px #00365a30}.gallery-filters{display:flex;gap:13px;flex-wrap:wrap;margin-bottom:25px}.gallery-filters button{border:1px solid #bad9ed;border-radius:30px;background:#fff;color:var(--blue);font:800 17px Nunito;padding:11px 20px;cursor:pointer}.gallery-filters button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}#gallery-count{font-size:17px;font-weight:800;color:var(--blue);margin-bottom:25px}.full-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 24px}.full-photo-grid .gallery-item[hidden]{display:none}.full-photo-grid .gallery-thumb img{height:270px}.full-photo-grid .gallery-item:nth-child(5n+2) img{height:310px}.staff-directory-heading h2{color:var(--blue);margin-bottom:20px}.staff-directory-heading>p{font-size:21px;margin-bottom:40px}.staff-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.staff-person{display:flex;align-items:center;gap:18px;padding:20px;border-radius:20px;border:1px solid #d5eaf6;background:#f6fbff;min-width:0}.staff-person:nth-child(3n+2){background:#fff8e2;border-color:#f1e3b3}.staff-person:nth-child(3n){background:#f8f1fa;border-color:#e8d8ed}.staff-person>img{width:95px;height:115px;object-fit:contain;flex-shrink:0;border-radius:15px}.staff-person h3{font-size:21px;line-height:1.25;letter-spacing:-.3px}.staff-person p{font-size:17px;margin-top:9px;line-height:1.4;color:#355475}.staff-person,.staff-person img{animation:none!important;transition:none!important;transform:none!important}.staff-preview-rail{margin-top:40px;border-top:2px dashed #d4e9f5;padding-top:30px}.staff-mini-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px}.staff-mini{display:flex;align-items:center;flex-direction:column;text-align:center;gap:12px;font-size:15px;font-weight:800;line-height:1.4}.staff-mini img{height:95px;width:85px;object-fit:contain;border-radius:15px}.staff-mini:hover span{text-decoration:underline;text-underline-offset:3px}.team-more{margin-top:30px}.blog-original-image{width:100%;height:180px;object-fit:cover;border-radius:14px;margin:22px 0}.home-journal .blog-card{background:white}.home-journal .blog-card h2{font-size:25px}.home-journal .blog-card p{font-size:18px}header nav{gap:17px;font-size:15px}header .header-actions{gap:10px}.header-actions .button{padding:12px 17px;font-size:14px}.interior:has(.staff-directory) .section{animation:none}
#photo-lightbox{width:min(1100px,95vw);max-width:95vw;padding:50px 65px 25px;border:0;border-radius:20px;background:#fff;color:var(--ink);text-align:center;overflow:visible}#photo-lightbox::backdrop{background:#07314de8}#lightbox-image{height:min(72vh,800px);max-height:72vh;width:100%;object-fit:contain;background:#f4f8fa;border-radius:12px}#lightbox-caption{font-size:18px;font-weight:800;line-height:1.4;margin-top:18px}#lightbox-count{display:block;font-size:15px;color:#526b80;margin-top:8px}.photo-close,.photo-prev,.photo-next{position:absolute;border:0;cursor:pointer;background:#fff;color:var(--blue);min-height:44px;min-width:44px;border-radius:50%;display:grid;place-items:center}.photo-close{top:3px;right:8px;font-size:34px}.photo-prev,.photo-next{top:45%;box-shadow:0 4px 16px #00335420}.photo-prev{left:10px}.photo-next{right:10px}.photo-prev svg,.photo-next svg{height:24px;width:24px}
@media(max-width:1200px){header nav{gap:13px;font-size:14px}.header-actions .button{display:none}.staff-directory{grid-template-columns:repeat(2,1fr)}.home-photo-grid{gap:16px}.home-photo-grid .gallery-thumb img{height:220px}.staff-person h3{font-size:22px}}
@media(max-width:760px){header nav{font-size:19px;gap:0}section:has(>.section-wave){padding-bottom:105px}.hero:has(>.section-wave){padding-bottom:115px}.section-wave{height:50px}.hero .hero-art{animation:none}.home-photo-grid{grid-template-columns:1fr 1fr;gap:25px 16px}.home-photo-grid .gallery-thumb img{height:180px}.home-photo-grid .gallery-item:nth-child(2n){padding-top:16px}.gallery-item figcaption{font-size:16px}.home-gallery .section-heading,.home-journal .section-heading{margin-bottom:30px}.home-gallery .section-heading .button,.home-journal .section-heading .button{margin-top:25px}.full-photo-grid{grid-template-columns:1fr 1fr;gap:25px 16px}.full-photo-grid .gallery-thumb img,.full-photo-grid .gallery-item:nth-child(5n+2) img{height:170px}.gallery-thumb{border-radius:17px}.enlarge-hint{width:30px;height:30px;font-size:22px;right:9px;bottom:9px}.gallery-filters{gap:10px}.gallery-filters button{font-size:15px;padding:10px 15px}.staff-directory{grid-template-columns:1fr;gap:17px}.staff-person{gap:20px;padding:18px}.staff-person>img{height:108px;width:90px}.staff-person h3{font-size:23px}.staff-person p{font-size:18px}.staff-mini-grid{grid-template-columns:repeat(3,1fr);gap:25px 16px}.staff-mini{font-size:14px}.staff-mini img{height:85px;width:75px}.blog-original-image{height:190px}.home-journal .blog-card h2{font-size:27px}.home-journal .blog-card p{font-size:19px}#photo-lightbox{padding:46px 12px 20px;border-radius:15px}#lightbox-image{max-height:65vh;height:65vh}.photo-prev,.photo-next{top:42%;min-height:40px;min-width:40px;background:#fffffff0}.photo-prev{left:4px}.photo-next{right:4px}#lightbox-caption{font-size:17px;padding:0 12px}.photo-close{font-size:32px}}
@media(prefers-reduced-motion:reduce){.gallery-thumb img{transition:none}}
.interior .page-hero{border-bottom:0;padding-bottom:110px}.interior .page-hero:before{content:'';position:absolute;bottom:-1px;left:0;right:0;height:65px;background:url('/assets/section-wave-white.svg') center bottom/100% 100% no-repeat;pointer-events:none;z-index:1}@media(max-width:760px){.interior .page-hero{padding-bottom:80px}.interior .page-hero:before{height:42px}}
.section-wave{translate:-50% 0;transform:none!important;animation:none!important;transition:none!important;opacity:1!important}@media(max-width:760px){.section-wave{width:100%;left:0;translate:0 0}}
/* Real CRM form: shared visit popup and contact page embed. */
#every-step{border-radius:0}
#visit-form-dialog{border:0;border-radius:22px;padding:0;width:min(760px,calc(100vw - 32px));max-width:760px;height:min(900px,92dvh);max-height:92dvh;color:var(--ink);background:#fff;box-shadow:0 25px 100px #062b5370;overflow:hidden}
#visit-form-dialog[open]{display:flex;flex-direction:column}
#visit-form-dialog::backdrop{background:#092b4bd9;backdrop-filter:blur(4px)}
.visit-modal-header{display:flex;align-items:flex-start;gap:18px;justify-content:space-between;padding:22px 25px 16px;border-bottom:1px solid #dceaf2;flex-shrink:0}
.visit-modal-header h2{font-size:29px;letter-spacing:-.6px;color:var(--blue)}.visit-modal-header p{font-size:16px;line-height:1.4;margin-top:7px}
.visit-modal-close{border:0;background:#edf6fc;color:var(--blue);border-radius:50%;width:44px;height:44px;flex-shrink:0;font-size:32px;line-height:1}
#visit-form-dialog iframe{display:block;border:0;width:100%;flex:1;min-height:0;background:white}.visit-modal-fallback{padding:9px 20px;font-size:14px;text-align:center;border-top:1px solid #dceaf2}.visit-modal-fallback a{text-decoration:underline}.visit-form-open{overflow:hidden}.crm-inline{width:100%;height:1450px;border:0;margin-top:25px;border-radius:14px;background:#fff}
@media(max-width:760px){#visit-form-dialog{width:calc(100vw - 16px);height:94dvh;max-height:94dvh;border-radius:16px}.visit-modal-header{padding:16px}.visit-modal-header h2{font-size:25px}.visit-modal-header p{font-size:15px}.crm-inline{height:1700px}.contact-page-grid{grid-template-columns:1fr}}

/* Branded visit-request shell; CRM field styling is owned by LeadConnector. */
#visit-form-dialog{border-top:7px solid var(--yellow,#facb43);border-radius:25px;background:#f1f8fd}
.visit-modal-header{align-items:center;background:#eaf5fc;border-bottom:2px solid #d3e8f4;padding:20px 24px;gap:16px}
.visit-modal-logo{width:72px;height:72px;object-fit:contain;flex-shrink:0}
.visit-modal-header h2{color:#126ca5;font-size:28px;line-height:1.15}
.visit-modal-header p{color:#355772;font-size:15px;max-width:480px}
.visit-modal-close{background:#fff;border:2px solid #d3e8f4;color:#126ca5;cursor:pointer}
.visit-modal-close:hover{border-color:#d93630;color:#d93630}
.visit-modal-close:focus-visible{outline:3px solid #126ca5;outline-offset:3px}
.visit-modal-help{margin:0;padding:12px 20px;background:#fff6d8;font-size:14px;text-align:center;flex-shrink:0;color:#25485f}
.visit-modal-help a{color:#126ca5;font-weight:800;text-decoration:underline;white-space:nowrap}
.visit-modal-fallback{margin:0;background:#eaf5fc;flex-shrink:0;color:#126ca5}
.crm-inline{border:2px solid #d3e8f4;border-top:6px solid #facb43;border-radius:20px}
@media(max-width:760px){.visit-modal-header{padding:14px;gap:10px}.visit-modal-logo{width:48px;height:48px}.visit-modal-header h2{font-size:22px}.visit-modal-header p{font-size:13px;line-height:1.35}.visit-modal-close{width:38px;height:38px}.visit-modal-help{font-size:13px;padding:10px 12px}}
