/* Morgan's motion language: type opens, photographs settle, links follow the hand. */
.website main :is(h1,.section-heading h2){font-family:Jakarta,Arial,sans-serif;font-weight:500;letter-spacing:-.04em;text-transform:none}
.website .motion-word-mask{display:inline-block;vertical-align:top;overflow:clip;padding-bottom:.12em;margin-bottom:-.12em}
.website .motion-word{display:inline-block;transform-origin:0 100%}
.website ::selection{background:#a30e2d;color:#fffaf3}
.website :focus-visible{outline:3px solid #a30e2d;outline-offset:5px}
.website :is(.landing-about,.landing-approach,.landing-portal,.landing-hero,.site-header,.site-footer) :focus-visible{outline-color:#d7eaf0}
.website .landing-cta{position:relative}
.website .round-arrow{transition:transform 260ms cubic-bezier(.16,1,.3,1),background-color 180ms,color 180ms}
.website a:hover .round-arrow,.website a:focus-visible .round-arrow{transform:translate(3px,-3px) rotate(-8deg)}
.website .landing-cta:active .round-arrow{transform:scale(.9)}
.website .site-header nav>a:not(.button):not(.portal-link){text-underline-offset:7px;text-decoration-thickness:1px}
.website .site-header nav>a:not(.button):not(.portal-link):hover{text-decoration:underline}
.landing-page .existing-student-login{display:block;max-width:34ch;margin-top:28px;font-size:12px;line-height:1.7;color:#f5ece2;text-decoration:underline;text-underline-offset:4px}
.landing-page .existing-student-login svg{display:inline-block;width:14px;height:14px;vertical-align:middle;margin-left:4px}
.landing-page .school-album{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;align-items:center}
.landing-page .album-photo{display:block;grid-column:span 4;min-width:0;color:#fffaf3;text-decoration:none}
.landing-page .album-photo:nth-child(2){grid-column:span 5}
.landing-page .album-photo:nth-child(3){grid-column:span 3}
.landing-page .album-photo:nth-child(4){grid-column:2/span 5}
.landing-page .album-photo:nth-child(5){grid-column:7/span 5}
.landing-page .album-photo figure{margin:0;overflow:hidden;border-radius:14px;background:#fffaf3}
.landing-page .album-photo img{display:block;width:100%;height:auto;object-fit:contain;filter:saturate(.96)}
.landing-page .album-photo figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:12px 18px;color:#163f49;font-size:12px}
.landing-page .album-photo figcaption span{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid #163f4940;border-radius:50%;transition:transform 240ms cubic-bezier(.16,1,.3,1),background-color 180ms,color 180ms}
.landing-page .album-photo figcaption svg{width:17px;height:17px}
.landing-page .album-photo:hover figcaption span,.landing-page .album-photo:focus-visible figcaption span{transform:rotate(45deg);background:#163f49;color:#fffaf3}
.landing-page .landing-approach{overflow:clip}
@media(max-width:700px){
 .landing-page .school-album{grid-template-columns:1fr 1fr;gap:18px 14px;align-items:start}
 .landing-page .album-photo:nth-child(n){grid-column:auto}
 .landing-page .album-photo:nth-child(2){margin-top:32px}
 .landing-page .album-photo:nth-child(4){margin-top:24px}
 .landing-page .album-photo:nth-child(5){grid-column:1/-1;width:75%;justify-self:center}
 .landing-page .album-photo figcaption{min-height:54px;padding:10px 12px;font-size:11px}
 .landing-page .album-photo figcaption span{width:28px;height:28px}
}
@media(prefers-reduced-motion:reduce){
 .website .motion-word,.website [data-motion-entered]{transform:none!important;opacity:1!important;clip-path:none!important}
 .website .round-arrow,.website .album-photo figcaption span{transition:none!important;transform:none!important}
}
@media print{.website .motion-word,.website [data-motion-entered]{transform:none!important;opacity:1!important;clip-path:none!important}}
