/* Mohamed Nabil — purple / pink edition. Shared across every page. */
:root{--mn-max:1360px;--mn-radius:26px;--mn-shadow:0 24px 65px #170a2d12}
body{font-size:1rem;line-height:1.6}
:focus-visible{outline:3px solid #bd219c;outline-offset:5px}
section[id]{scroll-margin-top:105px}
.mn-eyebrow{font-size:.875rem;line-height:1.6;letter-spacing:.12em}
.mn-display{line-height:1.06;letter-spacing:-.055em}
.mn-copy{color:#665972}.mn-lead{line-height:1.5}
.mn-gradient-text{background-image:linear-gradient(115deg,#fcfbfe 5%,#ff70d1 60%,#e8ddf6)}
.mn-section{padding:clamp(72px,8vw,120px) 0}
.mn-section-head{grid-template-columns:.42fr 1.58fr;gap:48px}
.mn-h2{font-size:clamp(2.45rem,4.7vw,4.65rem);line-height:1.1}
.mn-h1{font-size:clamp(3rem,7.2vw,6.9rem)}
.mn-header{background:#170a2d45;backdrop-filter:blur(16px)}
.mn-header.is-scrolled{background:#170a2df2}
.mn-header-inner{height:88px;gap:22px}
.mn-brand{flex-shrink:0;display:block}.mn-brand img{width:202px;max-height:60px}
.mn-nav-wrap{gap:17px}.mn-menu{gap:20px}.mn-menu>li>a{font-size:.875rem;padding:29px 0}
.mn-menu .sub-menu{top:72px}.mn-menu .sub-menu a{font-size:.9rem}
.mn-menu li:focus-within>.sub-menu,.mn-menu li.mn-sub-open>.sub-menu{opacity:1;visibility:visible;transform:none}
.mn-menu .sub-menu a:hover,.mn-menu .sub-menu a:focus{background:#f1eafa;color:#5b21b6}
.mn-sub-toggle{width:25px;height:30px;border:0;background:transparent;color:inherit;display:grid;place-items:center;padding:0}
.mn-menu>li.menu-item-has-children{display:flex;align-items:center;gap:4px}
.mn-btn{min-height:48px;padding:14px 24px;line-height:1.4}
.mn-btn-primary{background:#5b21b6;box-shadow:0 12px 24px #5b21b622}
.mn-btn-primary:hover{background:#6c28ce;box-shadow:0 16px 32px #5b21b632}
.mn-btn-cyan{background:#ff2db9;color:#170a2d}
.mn-hero .mn-btn-primary{background:#ff2db9;color:#170a2d;box-shadow:0 12px 38px #ff2db91c}
.mn-hero .mn-btn-primary:hover{background:#ff69cc}
.mn-header-cta{padding:11px 17px;min-height:43px}
.mn-hero{min-height:min(920px,100svh);padding:140px 0 86px;align-items:center;background:radial-gradient(ellipse at 92% 12%,#5b1e6c 0,transparent 50%),linear-gradient(150deg,#201037,#170a2d 65%,#10071e)}
.mn-hero:before{inset:-20% -20% auto 30%;height:800px;background:radial-gradient(ellipse,#a1229620,transparent 68%);animation:mn-aurora 14s ease-in-out infinite alternate}
.mn-hero-grid{grid-template-columns:1fr 1.05fr;gap:clamp(35px,5vw,85px)}
.mn-hero-copy{padding:16px 0}.mn-hero-copy .mn-eyebrow{max-width:43ch;color:#e8ddf6;font-size:.875rem;letter-spacing:.11em}
.mn-hero-title{font-size:clamp(3.4rem,6.3vw,6.25rem);max-width:11ch;line-height:1.04;letter-spacing:-.06em}
.mn-hero-title em{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;color:#ff65ce;letter-spacing:-.05em;line-height:1.02;margin-top:.12em}
.mn-hero-copy .mn-lead{font-size:clamp(1.05rem,1.4vw,1.25rem);max-width:42ch;color:#e8ddf6cd;margin-top:28px}
.mn-hero .mn-actions{gap:25px}.mn-hero .mn-link{font-size:.95rem}
.mn-scroll-note{transform:none;left:var(--mn-pad);bottom:28px;font-size:.75rem;color:#e8ddf6a6;display:flex;align-items:center;gap:18px;letter-spacing:.13em}
.mn-scroll-note span{color:#ff2db9;font-size:1.2rem;animation:mn-nudge 2.8s ease-in-out infinite}
.mn-media-collage{position:relative;min-width:0;padding:3% 1% 2%;isolation:isolate}
.mn-collage-signature{width:72%;height:76px;object-fit:contain;margin:0 auto 24px;transform:rotate(-3deg)}
.mn-video-frame{aspect-ratio:16/9;width:96%;border:5px solid #fcfbfe;border-radius:24px;background:#140920;box-shadow:0 22px 50px #0004;transform:rotate(-2deg);overflow:hidden;margin:auto;position:relative}
.mn-video-frame.has-video{transform:none}
.mn-video-frame video{display:block;width:100%;height:100%;object-fit:contain}
.mn-video-open{display:flex;width:100%;height:100%;position:absolute;inset:0;align-items:center;justify-content:center;gap:14px;background:transparent;border:0;color:#fcfbfe;font-size:1.05rem}
.mn-video-open span{border:1px solid #fff8;border-radius:50%;padding:18px 23px;line-height:1}
.mn-collage-portraits{display:grid;grid-template-columns:1fr 1.18fr 1fr;align-items:start;margin-top:-28px;position:relative;gap:0}
.mn-collage-photo{margin:0;position:relative;border:5px solid #fcfbfe;border-radius:22px;overflow:hidden;box-shadow:0 20px 38px #0005;background:#140920;will-change:transform}
.mn-collage-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mn-photo-left{width:117%;aspect-ratio:4/5;transform:rotate(-8deg);margin-top:8%;z-index:1;animation:mn-float-left 8s ease-in-out infinite}
.mn-photo-left img{object-position:43% 40%}
.mn-photo-center{width:108%;aspect-ratio:3/4;transform:rotate(4deg);z-index:3;animation:mn-float-center 9s ease-in-out infinite}
.mn-photo-center img{object-position:50% 42%}
.mn-photo-right{width:114%;aspect-ratio:1;border-radius:50%;margin:18% 0 0 -14%;z-index:2;box-shadow:0 0 0 2px #ff2db933,0 20px 40px #0005;animation:mn-float-right 10s ease-in-out infinite}
.mn-photo-right img{object-position:56% 26%}
.mn-media-collage:has(.has-video) .mn-collage-portraits{margin-top:28px}
.mn-impact-strip{background:#211136;border-top:1px solid #fcfbfe12;padding:34px 0;color:#fcfbfe}
.mn-impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.mn-impact-item{padding:6px 24px;border-right:1px solid #fcfbfe24}.mn-impact-item:last-child{border:0}
.mn-impact-item strong{font-size:clamp(2.1rem,3.3vw,3.4rem);font-weight:600;letter-spacing:-.055em;color:#fcfbfe;line-height:1.15;display:block;font-variant-numeric:tabular-nums}
.mn-impact-item span{font-size:.875rem;line-height:1.5;color:#e8ddf6ba;margin-top:10px;display:block}
.mn-marquee-track span{font-size:.8rem;color:#e8ddf6b3;padding:20px 26px}
.mn-marquee:hover .mn-marquee-track{animation-play-state:paused}
.mn-role-notes{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}
.mn-role-notes span{font-size:.85rem;color:#5b21b6;border:1px solid #5b21b629;padding:7px 13px;border-radius:50px}
.mn-service-row{padding:40px 18px;transition:background .35s,padding .35s;border-radius:4px}
.mn-service-row:hover,.mn-service-row:focus-visible{background:#fcfbfe06;padding-left:30px}
.mn-service-row h3{font-size:clamp(1.8rem,3.6vw,3.3rem);line-height:1.15}
.mn-service-index{font-size:.9rem}.mn-service-row p{font-size:1.05rem;max-width:65ch}
.mn-service-arrow{border:1px solid #fcfbfe36;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;font-size:1.6rem}
.mn-work-card{border:0;background:#f0ebf7;border-radius:24px}
.mn-work-content{padding:28px 32px 32px}.mn-work-content h3{font-size:clamp(1.75rem,2.7vw,2.5rem);line-height:1.15}
.mn-work-meta{font-size:.8rem;color:#705d82}.mn-work-content p{color:#655570}
.mn-work-image{background:#e8ddf6}
.mn-testimonial{border:1px solid #5b21b61a;box-shadow:none;background:#f2edf8;min-height:470px;padding:clamp(28px,4.5vw,66px)}
.mn-quote{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.45rem,2.2vw,2.1rem);line-height:1.52;letter-spacing:-.025em;color:#2a163c}
.mn-quote:before{color:#b91a86;font-size:5rem}.mn-person span{font-size:.875rem;color:#6a547c}
.mn-slider-status{font-size:.875rem;color:#715982;align-self:center;margin:0 14px}
.mn-newsletter{background:linear-gradient(130deg,#48206c,#5b21b6);border:1px solid #f3e7ff29;box-shadow:0 30px 60px #0002}
.mn-newsletter h2{line-height:1.12}.mn-newsletter .mn-eyebrow{color:#ffe0f6}
.mn-footer{background:#10071e}.mn-footer-brand img{width:230px}.mn-footer p,.mn-footer a{color:#e8ddf6bd}
.mn-footer h4{font-size:.9rem;letter-spacing:.08em;color:#fcfbfe}.mn-footer-links a{font-size:.95rem;line-height:1.8}
.mn-footer-bottom{font-size:.85rem}.mn-footer-bottom a:hover,.mn-footer-links a:hover{color:#ff76d4}
.mn-page-hero{background:radial-gradient(ellipse at 85% 5%,#5b1f7044,transparent 65%),#170a2d;padding-top:165px}
.mn-breadcrumb{font-size:.85rem;color:#f491da}.mn-page-hero .mn-lead{color:#e8ddf6c7}
.mn-card .mn-tag,.mn-tag{font-size:.8rem}.mn-card h3{line-height:1.25}.mn-card p{color:#695b76}
.mn-card,.mn-book-panel,.mn-kit-card{box-shadow:none;border-color:#5b21b61c}
.mn-scheduler-card{background:#f1eafa}.mn-scheduler-card .mn-copy{color:#655570}
.mn-form input,.mn-form select,.mn-form textarea{font-size:1rem;min-height:48px}
.mn-form-message{font-size:.95rem;line-height:1.6;min-height:1.6em}
.mn-faq-q{font-size:1.1rem}.mn-faq-q:focus-visible{outline-offset:-4px}
.mn-search-overlay,.mn-modal{background:#170a2df7}.mn-search-overlay:not(.is-open),.mn-modal:not(.is-open){visibility:hidden;pointer-events:none}
.mn-cursor-glow{background:radial-gradient(circle,#ff2db90d,transparent 66%);z-index:0}
.mn-skip-link{position:fixed;z-index:10001;left:15px;top:-100px;background:white;color:#170a2d;padding:12px 20px;border-radius:8px}.mn-skip-link:focus{top:12px}
.mn-reveal{opacity:1;transform:none}.mn-js .mn-reveal{opacity:0;transform:translateY(25px);transition:opacity .75s ease,transform .75s cubic-bezier(.16,1,.3,1);transition-delay:var(--mn-delay,0ms)}
.mn-js .mn-reveal.is-visible{opacity:1;transform:none}
.mn-motion-toggle{position:fixed;right:18px;bottom:18px;z-index:100;background:#fcfbfee8;color:#321348;border:1px solid #5b21b62b;border-radius:50px;padding:8px 13px;font-size:.8rem;box-shadow:0 3px 16px #170a2d10}
@keyframes mn-aurora{from{transform:translate3d(0,0,0)}to{transform:translate3d(-4%,5%,0)}}
@keyframes mn-float-left{50%{transform:rotate(-7deg) translateY(-6px)}}
@keyframes mn-float-center{50%{transform:rotate(3deg) translateY(-5px)}}
@keyframes mn-float-right{50%{transform:translateY(-7px)}}
@keyframes mn-nudge{50%{transform:translateY(5px)}}
.mn-motion-off *,.mn-motion-off *::before,.mn-motion-off *::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}
.mn-motion-off .mn-reveal{opacity:1;transform:none}
@media(min-width:1281px){.mn-nav-menu{display:block!important}.mn-menu-toggle{display:none!important}}
@media(max-width:1280px){
 .mn-header-inner{height:80px}.mn-brand img{width:185px}.mn-nav-wrap{gap:12px}.mn-menu-toggle{display:grid}.mn-header-cta{font-size:.8rem;min-height:42px}
 .mn-nav-menu{position:fixed;top:80px;left:0;right:0;bottom:0;max-height:calc(100dvh - 80px);overflow-y:auto;background:#170a2d;padding:22px var(--mn-pad) 50px;display:none}
 .mn-nav-menu.is-open{display:block}.mn-menu{display:block}.mn-menu>li>a{font-size:1.25rem;padding:14px 0}
 .mn-menu>li.menu-item-has-children{display:flex;flex-wrap:wrap;justify-content:space-between}.mn-sub-toggle{width:44px;height:44px}
 .mn-menu .sub-menu{display:none;position:static;flex-basis:100%;width:100%;background:#ffffff08;box-shadow:none;color:#fcfbfe;transform:none;margin:4px 0 12px;opacity:1;visibility:visible;padding:10px 14px}
 .mn-menu li.mn-sub-open>.sub-menu{display:block}.mn-menu .sub-menu a{font-size:1rem;color:#e8ddf6}.mn-menu .sub-menu a:hover{color:#170a2d}
 .mn-hero{padding:120px 0 70px;min-height:auto}.mn-hero-grid{gap:32px}.mn-hero-title{font-size:clamp(3rem,6vw,4.5rem)}.mn-collage-signature{height:56px;margin-bottom:18px}
}
@media(max-width:760px){
 :root{--mn-pad:24px}.mn-header-inner{height:76px}.mn-nav-menu{top:76px;max-height:calc(100dvh - 76px)}.mn-brand img{width:152px}.mn-header-cta{display:none}.mn-search-button{width:42px;height:42px}
 .mn-hero{padding-top:115px;padding-bottom:68px}.mn-hero-grid{grid-template-columns:1fr;gap:34px}.mn-hero-copy{padding:0}.mn-hero-copy .mn-eyebrow{max-width:40ch;font-size:.8rem}.mn-hero-title{font-size:clamp(3.25rem,11vw,5rem);max-width:12ch}.mn-hero-copy .mn-lead{font-size:1.05rem;margin-top:24px;max-width:42ch}.mn-actions{gap:20px;margin-top:27px}
 .mn-media-collage{max-width:560px;width:100%;margin:0 auto}.mn-collage-signature{height:66px}.mn-scroll-note{display:none}
 .mn-video-frame{border-width:4px;border-radius:20px}.mn-collage-photo{border-width:4px;border-radius:18px}.mn-photo-right{border-radius:50%}
 .mn-impact-grid{grid-template-columns:repeat(2,1fr);gap:24px}.mn-impact-item{padding:0 8px}.mn-impact-item:nth-child(2){border:0}.mn-impact-item strong{font-size:2.25rem}.mn-impact-item span{font-size:.85rem}
 .mn-section-head{grid-template-columns:1fr;gap:8px;margin-bottom:34px}.mn-section-head p{margin:0 0 12px}.mn-intro-grid{grid-template-columns:1fr;gap:30px}.mn-intro-grid .mn-h2{max-width:16ch}.mn-section-head .mn-h2{max-width:17ch}
 .mn-service-row{grid-template-columns:32px 1fr 40px;gap:14px;padding:30px 0}.mn-service-row:hover{padding-left:8px}.mn-service-arrow{width:38px;height:38px;font-size:1.2rem}.mn-service-row h3{font-size:1.75rem}.mn-service-row p{font-size:1rem}.mn-service-index{font-size:.8rem}
 .mn-work-card,.mn-work-card:nth-child(3n+1),.mn-work-card:nth-child(3n+2){grid-column:span 12}.mn-work-content{padding:25px}.mn-work-content h3{font-size:1.8rem}
 .mn-person{align-items:flex-start}.mn-person span{font-size:.8rem}.mn-testimonial{min-height:0}.mn-quote{font-size:1.5rem;line-height:1.5}
 .mn-footer-top{gap:38px}.mn-footer-bottom{align-items:flex-start;gap:20px}.mn-motion-toggle{bottom:10px;right:10px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.mn-js .mn-reveal{opacity:1;transform:none}.mn-cursor-glow{display:none}}

/* The name is editable text, typeset with a locally bundled signature font. */
.mn-wordmark{font-family:Allura,Georgia,serif;font-size:48px;font-weight:400;letter-spacing:-.025em;line-height:1.1;white-space:nowrap;color:inherit;display:block}
.mn-brand .mn-wordmark{font-size:43px;color:#fcfbfe}.mn-brand a{display:block}
.mn-collage-signature.mn-wordmark{font-size:clamp(40px,4.8vw,74px);width:100%;height:auto;text-align:center;line-height:1.15;margin-bottom:28px;color:#fcfbfe}
.mn-footer-brand .mn-wordmark{font-size:49px;margin-bottom:24px;color:#fcfbfe}
.mn-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px;font-size:.875rem;line-height:1.6;color:#f8eaff;cursor:pointer}
.mn-consent input{width:18px;height:18px;flex:0 0 18px;accent-color:#ff2db9;margin:3px 0 0}
.mn-consent a,.mn-form-note a{text-decoration:underline;text-underline-offset:3px}
.mn-form-note{font-size:.875rem;line-height:1.6;color:#6a547c;margin:0 0 8px}
.mn-form label{font-size:.875rem}.mn-form-row input:focus,.mn-form input:focus,.mn-form textarea:focus,.mn-form select:focus{border-color:#8b43ce;box-shadow:0 0 0 3px #8b43ce25}
.mn-newsletter:after{background:radial-gradient(circle,#ff2db925,transparent 65%)}
.mn-page-hero:after{background:radial-gradient(circle,#ae25bc25,transparent 65%)}
.mn-prose,.mn-single-content,.mn-faq-a-inner{color:#665773}
.mn-assessment-result{background:#f1eafa;border-color:#e1d4ef}
.mn-scale label small{font-size:.75rem;color:#695776}.mn-result-card span{font-size:.875rem}
.mn-scale input:checked+b{box-shadow:0 8px 20px #5b21b622}
.mn-scale input:focus-visible+b{outline:3px solid #b21b82;outline-offset:3px}
.mn-faq-item.open .mn-faq-a{max-height:1000px}.mn-modal #mn-video-target{height:100%}
.mn-modal #mn-video-target>p{padding:40px;color:white}
.mn-motion-off .mn-cursor-glow{display:none}
@media(max-width:1280px){.mn-nav-menu{height:calc(100dvh - 80px);bottom:auto}.mn-menu>li>a{flex:1}.mn-sub-toggle{flex:0 0 44px}.mn-brand .mn-wordmark{font-size:42px}}
@media(max-width:760px){.mn-nav-menu{height:calc(100dvh - 76px)}.mn-search-button{display:grid}.mn-brand .mn-wordmark{font-size:36px}.mn-collage-signature.mn-wordmark{font-size:clamp(42px,9vw,64px)}.mn-form-grid{grid-template-columns:1fr}.mn-scale{gap:5px}.mn-scale label small{font-size:.69rem;overflow-wrap:anywhere}.mn-assessment-q{padding:20px 12px}.mn-work-card[style]{grid-column:span 12!important}.mn-modal{padding:20px}}
