/* A²DL v5: section alignment and compact closing screen. Loaded LAST. */
:root{--a2dl-nav-height:76px}
/* Avoid double offsets: scroll-padding AND scroll-margin were both active. */
html{scroll-padding-top:0!important}
#hero,#laboratory,#work,#finale{scroll-margin-top:var(--a2dl-nav-height)!important}
/* Align desktop screens to the visible area below the fixed header. */
@media(min-width:1100px) and (min-height:740px){
 .celestial-stage{min-height:calc(100dvh - var(--a2dl-nav-height));display:flex;flex-direction:column}
 #laboratory.lab{flex:1;min-height:0;display:flex;align-items:center;padding-top:46px}
 #laboratory .section-shell{width:100%;padding-top:30px;padding-bottom:25px}
.celestial-stage .motto{
    flex: 0 0 105px;
    min-height: 105px !important;
    padding: 0 5vw !important;

    display: flex;
    align-items: center;
    justify-content: center;

    transform: translateY(-45px);
}

.celestial-stage .motto p{
    font-size: clamp(30px, 3.6vw, 52px) !important;
    line-height: 1.15;
    margin: 0;
}
 #work.work{height:calc(100dvh - var(--a2dl-nav-height));min-height:0!important}
 #work.work>.section-shell{padding-top:65px!important;padding-bottom:20px!important}
 #work .beauty{min-height:0!important;height:min(53vh,490px)!important}
 #work .project-stack{height:min(53vh,490px)!important}
 .a2dl-finale{height:calc(100dvh - var(--a2dl-nav-height));min-height:0!important}
}
#laboratory.lab{position:relative}
#laboratory .lab-section-label{position:absolute;z-index:4;top:12px;left:0;right:0;margin:0;text-align:center;font-size:11px;letter-spacing:3px;color:#e9b970}
#work .work-section-label{top:18px!important}
/* The fourth screen is the entire finale; its anchor begins below the header. */
.a2dl-finale{padding-top:0!important;display:grid!important;grid-template-rows:minmax(0,1.05fr) minmax(0,1fr) auto!important;overflow:hidden!important}
.a2dl-finale #motion{min-height:0!important;padding:16px 22px 0!important;overflow:visible!important}
.a2dl-finale #motion blockquote{max-width:1150px;padding:0!important}
.a2dl-finale #motion blockquote p.quote-lines{font:italic 400 clamp(18px,2.15vw,31px)/1.22 Georgia,'Times New Roman',serif!important;color:#edc68e!important;margin:0!important}
.a2dl-finale #motion .quote-lines span{display:block!important;font:inherit!important;color:inherit!important}
.a2dl-finale #motion blockquote footer{margin-top:8px!important}
.a2dl-finale #motion .a2dl-light-track{position:relative;left:auto;right:auto;bottom:auto;height:22px;width:min(560px,70vw);margin:8px auto 0;overflow:hidden}
.a2dl-finale #motion .a2dl-light-track::before{top:11px}
.a2dl-finale #motion .a2dl-light-runner{top:8px;animation:a2dl-track-v5 5.5s ease-in-out infinite}
@keyframes a2dl-track-v5{0%{left:-20%;opacity:0}12%{opacity:1}80%{opacity:1}100%{left:100%;opacity:0}}
.a2dl-finale #contact{min-height:0!important;padding:4px 20px!important}
.a2dl-finale #contact h2{font-size:clamp(31px,3.6vw,52px)!important;margin:0 auto 8px!important}
.a2dl-finale #contact .eyebrow{margin:0 0 7px!important}
.a2dl-finale #contact .section-shell>p:not(.eyebrow):not(.notice):not(.contact-email){margin:0 auto 10px!important;line-height:1.35!important}
.a2dl-finale #contact .contact-button{padding:10px 19px!important}
.a2dl-finale>.footer{display:block!important;visibility:visible!important;min-height:50px!important}
.a2dl-finale>.footer .footer-inner{min-height:50px!important;padding:7px 5vw!important}
@media(max-width:1099px),(max-height:739px){
 .a2dl-finale{height:auto!important;min-height:calc(100dvh - var(--a2dl-nav-height))!important;overflow:visible!important;grid-template-rows:auto auto auto!important}
 .a2dl-finale #motion{padding:38px 18px 12px!important}
 .a2dl-finale #contact{padding:25px 18px!important}
}
@media(max-width:700px){:root{--a2dl-nav-height:64px}#laboratory .lab-section-label{position:relative;top:auto;padding-top:90px}#laboratory .section-shell{padding-top:20px}#work .work-section-label{top:auto!important}}
@media(prefers-reduced-motion:reduce){.a2dl-finale #motion .a2dl-light-runner{animation:none!important;left:50%}}
/* A2DL Contact: visible email address */

.a2dl-finale #contact .section-shell > p.contact-email {
    margin: 28px auto 0 !important;
    width: 100%;
    text-align: center !important;
    font-size: clamp(15px, 1.2vw, 18px);
    line-height: 1.5;
}

#contact .contact-email a {
    color: #d6c29a;
    text-decoration: none;
    letter-spacing: 0.06em;
    transition: color 0.25s ease;
}

#contact .contact-email a:hover {
    color: #ffffff;
    text-decoration: underline;
}

