/* Shared APD Maroc graphic charter. Status colours keep their semantic meaning. */
:root{--apd-teal:#007676;--apd-accent:#669ba2;--apd-ink:#004d4d;--apd-paper:#f4f8f8;--apd-heading:"Montserrat",Arial,sans-serif;--apd-text:"Muli",Arial,sans-serif}
body{font-family:var(--apd-text)}
button,input,select,textarea{font-family:inherit}
body:not(.home-redesign) :is(h1,h2,h3,h4){font-family:var(--apd-heading);font-style:normal;line-height:1.22;overflow-wrap:anywhere;text-wrap:pretty}
body:not(.home-redesign) h1{font-weight:300;letter-spacing:-.035em}
body:not(.home-redesign) h2{font-weight:400;letter-spacing:-.025em}
body:not(.home-redesign) :is(h3,h4){font-weight:700;letter-spacing:-.015em}
body:not(.home-redesign) :is(h1,h2,h3) em{font-family:inherit;font-style:normal;font-weight:700}
body:not(.home-redesign) :is(.page-head h1,.hero h1){font-size:clamp(34px,4.1vw,56px)}
body:not(.home-redesign) .page-head{background:#fff;border-bottom:1px solid #dce7e7;padding-block:64px 44px}
body:not(.home-redesign) :is(.btn,.mail-button,.links,.menu,.eyebrow,.overline){font-family:var(--apd-heading)}
body:not(.home-redesign) .btn{border-radius:4px;min-height:46px;line-height:1.45;white-space:normal;text-align:center;max-width:100%}
body:not(.home-redesign) :is(.card,.person){border-radius:4px;box-shadow:none}
body:not(.home-redesign) :is(.grid3,.split,.details-grid,.contact-layout)>*{min-width:0}
body:not(.home-redesign) .text-link{white-space:normal}
body:not(.home-redesign) .nav{row-gap:12px}
body:not(.home-redesign) .links{font-size:13px;line-height:1.6}
body:not(.home-redesign) .featured h3{font-size:clamp(24px,2.5vw,32px)}
body:not(.home-redesign) .mail-heading h1{font-family:var(--apd-heading);font-weight:700;letter-spacing:-.025em}
body:not(.home-redesign) .mail-event{border-radius:8px;box-shadow:none;border:1px solid #dce7e7}
body:not(.home-redesign) .mail-event :is(h2,h3){font-family:var(--apd-heading)}
body:not(.home-redesign) .contact-layout{box-shadow:none;border:1px solid #dce7e7}
body:not(.home-redesign) .speakers-section{background:#007676}
body:not(.home-redesign) .speaker-stage:before,body:not(.home-redesign) .speaker-stage:after{display:none}
body:not(.home-redesign) .speaker-name{font-family:var(--apd-heading);font-weight:700;line-height:1.4}
.academy-premium .academy-hero{background:#fff}
.academy-premium h1{font-size:clamp(34px,3.6vw,52px)}
.academy-premium h2{font-size:clamp(29px,3.1vw,44px)}
.academy-premium h3{font-size:24px}
.academy-premium :is(h1,h2) em{color:#007676}
.academy-premium .academy-method,.academy-premium .academy-project{background:#007676}
.academy-premium :is(.academy-method,.academy-project) :is(h2 em,.eyebrow){color:#fff}
.academy-hero-visual figcaption strong{font-family:var(--apd-heading);font-size:clamp(26px,2.6vw,36px);font-weight:300}
.academy-need{border-top-color:#669ba2}
.mailing-section{background:#f4f8f8}
.mailing-section h2{font-family:var(--apd-heading);font-weight:300;line-height:1.2}
.mailing-input-row .btn{font-family:var(--apd-heading);font-weight:700}
.mp{font-family:var(--apd-text)}
.mp :is(h1,h2,h3){font-family:var(--apd-heading)}
.mp em{font-family:var(--apd-heading);font-style:normal;font-weight:700}
.mp :is(.mp-intro,.mp-welcome){background:#007676}
.mp :is(button,.mp-eyebrow){font-family:var(--apd-heading)}
.mp label,.mp button{font-size:14px}
.mp input{font-size:16px}
body:not(.home-redesign) :is(.registration-page,.gate) h1{font-family:var(--apd-heading);font-size:clamp(28px,3.5vw,38px)}
body:not(.home-redesign) :is(.admin-main,.registration-page,.gate) :is(button,.primary){font-family:var(--apd-heading)}
@media(max-width:760px){
 body:not(.home-redesign) .page-head{padding-block:40px 28px}
 body:not(.home-redesign) .page-head h1{font-size:clamp(30px,7.5vw,42px)}
 body:not(.home-redesign) h2{font-size:clamp(26px,6vw,34px)}
 body:not(.home-redesign) .links{font-size:14px}
 .academy-hero-visual figcaption{padding:24px}
 .academy-project-actions>a:last-child{font-size:17px;overflow-wrap:anywhere}
 .mp .mp-intro h1{font-size:clamp(32px,8vw,46px);letter-spacing:-.035em}
}

/* Membership remains immediately visible in the mobile navigation. */
header .links>a.mobile-membership-cta{display:none}
@media(max-width:1100px){
 header .links>a.mobile-membership-cta,.home-redesign.home-nav-ready>header .links>a.mobile-membership-cta{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:50px;margin:0 0 12px;padding:14px 20px;background:#007676;color:#fff;border:1px solid #007676;border-radius:4px;font:700 15px/1.4 var(--apd-heading);text-decoration:none}
 header .links>a.mobile-membership-cta:hover,.home-redesign.home-nav-ready>header .links>a.mobile-membership-cta:hover{background:#004d4d;border-color:#004d4d;color:#fff}
 header .links>a.mobile-membership-cta:focus-visible{outline:3px solid #004d4d;outline-offset:4px}
}
