/* Layout only: all visible school content is imported from original source HTML. */
.source-content{padding-top:48px;padding-bottom:65px;max-width:1140px}.source-module{margin-bottom:26px}.source-module:empty{display:none}.source-content h1{font-size:clamp(40px,4vw,58px);margin-bottom:32px}.source-content h2{font-size:34px;margin:32px 0 20px}.source-content h3{font-size:26px}.source-module p{line-height:1.8}.source-module ul{margin-top:12px}.source-module img{max-width:100%;height:auto}.source-module .fl-photo-content{display:inline-block}.source-module .fl-callout-photo{margin-bottom:18px}.source-faculty-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.source-faculty-card img{width:100%;max-width:200px;height:auto;object-fit:contain}.source-faculty-card h2,.source-faculty-card h3{font-size:23px;line-height:1.25;margin:18px 0}.source-faculty-card p{font-size:14px;line-height:1.75}.source-content .fl-callout-content{display:block}.source-content .uabb-advanced-menu .menu{display:flex;flex-wrap:wrap;gap:12px 25px;padding:0;list-style:none}.source-content .uabb-menu-toggle,.source-content .uabb-menu-toggle-icon,.source-content .uabb-menu-toggle-container{display:none}.source-content .uabb-button-group{display:flex;gap:18px;flex-wrap:wrap}.fl-button,.uabb-button{display:inline-flex;background:var(--blue);color:white!important;padding:11px 24px;border-radius:3px;text-decoration:none}.source-module .fl-button-wrap{margin:14px 0}.source-video{border:0;display:block;width:100%;aspect-ratio:16/9;height:auto;min-height:240px}.source-content .fl-video iframe{width:100%;aspect-ratio:16/9;height:auto}.source-content iframe:not(.source-video){max-width:100%}.source-home-intro{display:grid;grid-template-columns:2fr 1fr;gap:55px;padding:55px 0}.source-home-intro h1{font-size:36px;line-height:1.25}.source-home-intro aside{padding:20px;background:#f4f3ef;height:fit-content}.source-home-programs{background:var(--blue);padding:52px 0;color:white}.source-home-programs h2{text-align:center;color:white}.source-program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.source-program-grid a{color:white;text-decoration:none}.source-program-grid img{width:100%;height:240px;object-fit:cover}.source-program-grid h3{font-size:26px;margin:12px 0}.source-program-grid p{margin:14px 0 0;font-size:13px}.source-program-grid .source-module{margin:0}.source-home-video{padding:55px 0;text-align:center}.source-home-video .source-video{max-width:850px;margin:auto}.source-footer-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:80px}.source-footer h2{font:32px var(--serif);text-transform:none;letter-spacing:0}.source-footer blockquote{margin:20px 0;font-size:16px;line-height:1.8}.source-footer details{padding:15px 0;border-color:#ffffff40}.source-footer summary{color:inherit}.source-footer details p{padding:0}.source-footer .uabb-info-list-wrapper{list-style:none;padding:0}.source-footer .fl-icon-group{display:flex;gap:18px;font-size:26px}.source-footer .fl-icon-group a{font-size:26px}.source-copyright{border-top:1px solid #ffffff40;padding-top:20px;margin-top:25px;text-align:center}.source-copyright p{margin:0}.source-footer .source-module{margin-bottom:18px}.source-form{padding:28px;background:#f7f6f2;border:1px solid #ddd;border-radius:4px;color:#444}.source-form .gform_fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0;list-style:none}.source-form .gfield{list-style:none;min-width:0;grid-column:1/-1}.source-form .gfield--width-half{grid-column:auto}.source-form .ginput_complex{display:flex;flex-wrap:wrap;gap:12px}.source-form .ginput_complex>span{flex:1;min-width:120px}.source-form label,.source-form legend{display:block;font-size:14px;margin-bottom:6px}.source-form input:not([type=checkbox]):not([type=radio]),.source-form select,.source-form textarea{width:100%;padding:11px;border:1px solid #aaa;border-radius:3px;background:white;color:#555;opacity:1}.source-form input[type=checkbox],.source-form input[type=radio]{margin-right:8px}.source-form .gchoice label{display:inline}.source-form textarea{min-height:120px}.source-form fieldset{border:0;padding:0;margin:0}.source-form .gform_validation_container,.source-form .gform_hidden,.source-form .gfield_visibility_hidden,.source-form .gfield--type-honeypot{display:none}.source-form .gform_footer{margin-top:20px}.source-form input[type=submit]{width:auto!important;background:var(--plum)!important;color:white!important;opacity:.7}.source-form .gfield_description{font-size:13px;line-height:1.6;margin:8px 0 18px}.source-form .gfield_required{margin-left:4px}.source-content .uabb-info-list-wrapper{list-style:none;padding:0}.source-content .gform_confirmation_wrapper{display:none}.primary-nav li{position:relative}.primary-nav .source-submenu{display:none;position:absolute;top:100%;left:0;min-width:215px;background:var(--paper);box-shadow:0 8px 20px #0002;padding:10px 0;z-index:50}.primary-nav .source-submenu ul{display:block;list-style:none;padding:0}.primary-nav .source-submenu a{display:block;padding:9px 16px}.primary-nav li:hover>.source-submenu,.primary-nav li:focus-within>.source-submenu{display:block}.source-announcement{background:var(--plum);color:white;text-align:center;padding:15px 22px;font-size:23px;line-height:1.3}.source-announcement a{color:white;text-decoration:none}.source-home-v1 .hero h1{font-size:clamp(32px,3.4vw,48px);line-height:1.15}.source-home-v1 .hero-copy{padding:20px 0}.source-home-v1 .hero-photo{height:560px}.source-home-v1 .hero{padding:35px 0}.source-home-v1 .home-shortcuts{max-width:none}.source-home-v1 .hero-copy>p{font-size:16px}.source-home-v1 .hero-slideshow .photo-note{display:none}.source-home-v1 .header-inner{padding:15px 28px;height:auto;min-height:100px}.source-home-v1 .brand .original-logo{width:290px;height:auto}.source-home-v1 .site-header{background:#254799}.source-home-v1 .primary-nav a{color:white}.source-home-v1 .primary-nav>ul{gap:17px}.source-home-v1 .primary-nav .source-submenu{background:#254799}.source-home-v1 .menu-toggle{color:white}.source-home-v1 .primary-nav{background:#254799}.original-content.home:not(.source-home-v1) .site-header{top:0}.original-content:not(.source-home-v1) .source-submenu{background:#254799}.original-content:not(.source-home-v1) .source-footer details{border-color:#ccc}.original-content:not(.source-home-v1) .source-copyright{border-color:#ccc}
@media(max-width:1200px){.source-home-v1 .primary-nav>ul{gap:10px}.source-home-v1 .primary-nav a{font-size:12px}.source-home-v1 .brand .original-logo{width:230px}}
@media(max-width:1000px){.source-faculty-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.source-home-v1 .header-inner{flex-wrap:wrap}.source-home-v1 .menu-toggle{display:block}.source-home-v1 .primary-nav{width:100%}.source-home-v1 .primary-nav>ul{flex-direction:column;align-items:stretch}.source-home-v1 .js .primary-nav{display:none}.js .source-home-v1 .primary-nav{display:none;position:absolute;top:100%;left:0;padding:18px}.js .source-home-v1 .primary-nav.is-open{display:block}.source-home-v1 .primary-nav a{font-size:15px;padding:10px}.source-home-v1 .source-submenu{position:static;box-shadow:none}.source-home-v1 .header-inner .primary-nav{max-height:70vh;overflow:auto}}
@media(max-width:950px){.primary-nav .source-submenu{position:static;box-shadow:none;padding-left:14px}.source-home-intro{gap:30px}.source-footer-grid{gap:40px}}
@media(max-width:600px){.source-content{padding-top:30px}.source-home-intro,.source-footer-grid{grid-template-columns:1fr;gap:28px}.source-faculty-grid,.source-program-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}.source-faculty-card h2,.source-faculty-card h3{font-size:21px}.source-program-grid img{height:190px}.source-program-grid h3{font-size:23px}.source-video{min-height:180px}.source-home-intro{padding:35px 0}.source-home-video{padding:35px 0}.source-form{padding:18px}.source-form .gform_fields{display:block}.source-form .gfield{margin-bottom:18px}.source-home-v1 .hero-photo{height:410px}.source-home-v1 .header-inner{padding:12px 18px;min-height:85px}.source-home-v1 .brand .original-logo{width:235px}.source-home-v1 .hero h1{font-size:36px}.source-announcement{font-size:20px}.source-home-v1 .hero{padding-top:20px}}

.source-faculty-card .fl-callout{display:flex;flex-direction:column}.source-faculty-card .fl-callout-photo{order:-1;margin-bottom:0}.source-faculty-card .fl-callout-photo img{max-width:200px;width:100%;height:auto}

.google-events{margin-top:28px;border-top:1px solid #d5d5d5;padding-top:24px}.google-events h2{font-size:28px;margin:0 0 16px}.events-preview-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#666}.events-document p{margin:0 0 10px}.events-document p:first-child{font-weight:600}

/* Event concept: compact date cards with the school's blue and plum palette. */
.source-home-intro>aside{align-self:start}
.google-events{margin-top:28px;padding-top:24px;border-top:1px solid #ddd9d2;text-align:left}
.events-eyebrow{display:block;color:#6a2448;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin-bottom:8px}
.google-events h2{font-size:30px;line-height:1.12;margin:0 0 12px;color:#382a32}
.events-preview-label{display:inline-block;font-size:10px;font-weight:600;letter-spacing:.04em;color:#655d50;background:#eee8da;padding:5px 9px;border-radius:5px;margin:0 0 20px;text-transform:none}
.event-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:15px;padding:20px 0;border-top:1px solid #dfdcd5}
.event-date{align-self:start;display:flex;flex-direction:column;text-align:center;border-radius:9px;overflow:hidden;border:1px solid #dce2ee;background:white;color:#244a91}
.event-date span{padding:5px 0;background:#244a91;color:white;font-size:10px;letter-spacing:.1em;font-weight:700}
.event-date strong{font-size:26px;line-height:1.3;padding:3px 0 5px;font-weight:600}
.event-category{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#713454;font-weight:700}
.google-events .event-details h3{font-size:19px;line-height:1.25;margin:5px 0 7px;color:#302b2c}
.event-time{font-size:12px;font-weight:600;color:#565656;margin:0 0 7px}
.event-description{font-size:13px;line-height:1.55;color:#666;margin:0}
.events-demo-note{font-size:11px;line-height:1.5;color:#70695f;padding-top:14px;border-top:1px solid #dfdcd5;margin:0}
@media(max-width:600px){.google-events h2{font-size:28px}.event-card{gap:16px}.google-events .event-details h3{font-size:21px}}

.events-scroll{max-height:440px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#a59aa2 transparent;padding-right:10px;scrollbar-gutter:stable}.events-scroll:focus-visible{outline:2px solid #244a91;outline-offset:4px}.events-scroll::-webkit-scrollbar{width:6px}.events-scroll::-webkit-scrollbar-thumb{background:#a59aa2;border-radius:9px}
/* Public Version 2: prominent infant-house announcement. */
.source-home-v1 .source-announcement{font-size:clamp(24px,2.3vw,34px);font-weight:700;line-height:1.3;padding:20px 24px}.source-home-v1 .source-announcement a{font-weight:700}
/* Public Version 2: referral summary above, events beside the school video. */
.referral-summary h2{font-size:30px;line-height:1.2;margin:0 0 18px}.referral-summary p{font-size:15px;line-height:1.7;margin-bottom:18px}.referral-summary strong{color:#4a092d;font-weight:750}.referral-summary .referral-terms{font-size:12px;line-height:1.6;color:#666}.referral-summary .fl-button{display:inline-block;padding:12px 24px;background:#4a092d;color:white;text-decoration:none;border-radius:3px}.source-home-video.about-events-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:55px;align-items:start}.about-school-column h2{margin-bottom:28px}.about-events-column{text-align:left;padding:24px;background:#f4f3ef}.about-events-column .google-events{margin:0;padding:0;border:0}.about-events-column .events-scroll{max-height:440px}.about-school-column .source-video{min-height:0;width:100%;max-width:none}
@media(max-width:850px){.source-home-video.about-events-layout{grid-template-columns:1fr;gap:32px}.about-events-column{padding:22px}.about-events-column .events-scroll{max-height:400px}}
/* Alternative design: sliding testimonials, retaining the plum and gold palette. */
.alt-testimonials{min-width:0}.alt-quote-window{display:grid;overflow:hidden}.alt-quote{grid-area:1/1;min-width:0;margin:0;visibility:hidden;pointer-events:none;padding:5px 2px}.alt-quote.is-active,.alt-quote.is-exiting{visibility:visible}.alt-quote.is-active{pointer-events:auto}.source-footer .alt-quote blockquote{margin:12px 0 24px;font-size:16px;line-height:1.8}.alt-quote figcaption{font-size:18px;font-weight:600;color:#f7cd6b}.alt-quote-controls{display:flex;gap:12px;margin-top:22px}.alt-quote-controls[hidden]{display:none}.alt-quote-controls button{width:40px;height:40px;border:1px solid #ffffff60;border-radius:3px;background:transparent;color:#f7cd6b;font-size:27px;line-height:1;cursor:pointer}.alt-quote-controls button:hover{background:#ffffff15}.alt-quote-controls button:focus-visible{outline:2px solid #f7cd6b;outline-offset:4px}

/* Program photos: puzzle silhouettes, with a clear top edge for faces. */
.source-home-v1 .source-program-grid img{height:auto;aspect-ratio:1.12;object-fit:cover;object-position:center;--program-puzzle:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M14%200H86Q90%200%2090%204V33C90%2036%2093%2035%2095%2035C102%2035%20102%2059%2095%2059C93%2059%2090%2058%2090%2061V96Q90%20100%2086%20100H63C60%20100%2061%2096%2061%2094C61%2081%2039%2081%2039%2094C39%2096%2040%20100%2037%20100H14Q10%20100%2010%2096V63C10%2060%2014%2061%2016%2061C29%2061%2029%2039%2016%2039C14%2039%2010%2040%2010%2037V4Q10%200%2014%200Z%22%2F%3E%3C%2Fsvg%3E");-webkit-mask-image:var(--program-puzzle);mask-image:var(--program-puzzle);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}

.source-home-v1 .source-program-grid>:nth-child(2) img{object-position:20% center}.source-home-v1 .source-program-grid>:nth-child(3) img{object-position:90% center}

/* Individually shaped puzzle pieces; photos stay upright. */
.source-home-v1 .source-program-grid>:nth-child(2) img{--program-puzzle:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M14%200H86Q90%200%2090%204V40C90%2043%2086%2042%2084%2042C71%2042%2071%2064%2084%2064C86%2064%2090%2063%2090%2066V96Q90%20100%2086%20100H14Q10%20100%2010%2096V67C10%2064%207%2065%205%2065C-2%2065%20-2%2041%205%2041C7%2041%2010%2042%2010%2039V4Q10%200%2014%200Z%22%2F%3E%3C%2Fsvg%3E")}
.source-home-v1 .source-program-grid>:nth-child(3) img{--program-puzzle:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M14%200H86Q90%200%2090%204V96Q90%20100%2086%20100H63C60%20100%2061%2096%2061%2094C61%2081%2039%2081%2039%2094C39%2096%2040%20100%2037%20100H14Q10%20100%2010%2096V69C10%2066%207%2067%205%2067C-2%2067%20-2%2043%205%2043C7%2043%2010%2044%2010%2041V4Q10%200%2014%200Z%22%2F%3E%3C%2Fsvg%3E")}
.source-home-v1 .source-program-grid>:nth-child(4) img{--program-puzzle:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20100%20100%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M14%200H86Q90%200%2090%204V40C90%2043%2086%2042%2084%2042C71%2042%2071%2064%2084%2064C86%2064%2090%2063%2090%2066V86Q90%2090%2086%2090H64C61%2090%2062%2093%2062%2095C62%20102%2038%20102%2038%2095C38%2093%2039%2090%2036%2090H14Q10%2090%2010%2086V4Q10%200%2014%200Z%22%2F%3E%3C%2Fsvg%3E")}

/* Original-style Facebook and Instagram brand icons. */
.source-footer .fl-icon-group{align-items:center;gap:14px}.source-footer .fl-icon-group a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:40px;color:#fff;text-decoration:none;border:0}.source-footer .fl-icon-group svg{display:block;width:30px;height:30px}.source-footer .fl-icon-group a:hover{opacity:.8}.source-footer .fl-icon-group a:focus-visible{outline:2px solid #f7cd6b;outline-offset:4px}
