:root {
  --cream:#fbf1df; --ivory:#fff8eb; --coffee:#d2b08c; --coffee2:#c59b74;
  --orange:#c8612d; --orange2:#de8745; --orange-dark:#843718; --light-orange:#efc48f;
  --green:#0b4a3d; --green-dark:#052a23; --blue:#082b49; --blue-deep:#061b2d;
  --gold:#c99a42; --purple:#6d416d; --ink:#172c25; --muted:#6a5e4d;
  --line:rgba(201,154,66,.24); --shadow:0 28px 70px rgba(10,27,22,.20); --soft:0 16px 38px rgba(10,27,22,.12);
  --serif:Georgia,'Times New Roman',serif; --sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.62} a{color:inherit;text-decoration:none} img{display:block;width:100%;height:100%;object-fit:cover} main{overflow:hidden;width:100%}
.em-section{position:relative;width:100%;padding:clamp(76px,8vw,128px) 0;overflow:hidden}
.section-inner{width:min(1720px,96vw);margin-inline:auto;position:relative;z-index:2}
.bg-zellige::before{content:"";position:absolute;inset:0;background:url("/assets/images/exotic-morocco-discover-background-008.webp") center/520px auto;opacity:.12;mix-blend-mode:multiply;z-index:0;pointer-events:none}
.bg-zellige-strong::before{content:"";position:absolute;inset:0;background:url("/assets/images/exotic-morocco-discover-background-008.webp") center/460px auto;opacity:.22;mix-blend-mode:multiply;z-index:0;pointer-events:none}
.bg-zellige-dark::before{content:"";position:absolute;inset:0;background:url("/assets/images/exotic-morocco-discover-background-008.webp") center/500px auto;opacity:.11;mix-blend-mode:screen;z-index:0;pointer-events:none}
.eyebrow{display:inline-flex;align-items:center;gap:.65rem;margin-bottom:14px;color:var(--orange);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:950}
.eyebrow::before{content:"";width:38px;height:2px;background:currentColor;border-radius:99px} .dark .eyebrow,.blue .eyebrow{color:#f0c973}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.02;letter-spacing:-.045em;margin:0} h1{font-size:clamp(4.4rem,9vw,10rem)} h2{font-size:clamp(2.75rem,5vw,5.8rem)} h3{font-size:clamp(2rem,3vw,3.5rem)} h4{font-size:1.44rem}
p{font-size:1.02rem;color:var(--muted);margin:1rem 0 0} .lead{font-size:clamp(1.08rem,1.35vw,1.28rem);color:#51483a} .dark p,.blue p{color:rgba(255,255,255,.80)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px} .btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.9rem 1.14rem;border-radius:999px;border:1px solid rgba(201,154,66,.5);font-weight:850;transition:.25s ease} .btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(0,0,0,.16)} .btn.gold{background:var(--gold);border-color:var(--gold);color:#14231d} .btn.green{background:var(--green);border-color:var(--green);color:#fff} .btn.ghost{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.36);color:white;backdrop-filter:blur(8px)}
.caption{position:absolute;left:14px;bottom:12px;z-index:2;color:white;background:rgba(5,42,35,.72);padding:.38rem .62rem;border-radius:999px;font-weight:850;font-size:.78rem;backdrop-filter:blur(8px)}

.site-header{position:absolute;z-index:60;left:0;right:0;top:0;height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,64px);color:white;background:linear-gradient(180deg,rgba(3,20,17,.82),rgba(3,20,17,0))}
.logo-img{width:254px;height:auto;filter:brightness(0) invert(1) sepia(1) saturate(.2) hue-rotate(20deg)} .nav{display:flex;align-items:center;gap:1.02rem;font-size:.88rem;color:rgba(255,255,255,.86)} .nav a:hover{color:white} .header-cta{padding:.64rem .95rem;border-radius:999px;border:1px solid rgba(201,154,66,.7);background:rgba(201,154,66,.15);font-weight:850}
.hero{min-height:96vh;display:grid;align-items:end;color:white;padding:122px clamp(24px,5vw,76px) 106px;background:#051f1b;isolation:isolate;position:relative;overflow:hidden} .hero-bg{position:absolute;inset:0;z-index:-3;margin:0} .hero-bg img{width:100%;height:100%;object-fit:cover}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(3,20,17,.94),rgba(3,20,17,.74) 35%,rgba(3,20,17,.22) 64%,rgba(3,20,17,.66)),linear-gradient(0deg,rgba(3,20,17,.84),rgba(3,20,17,0) 46%)} .hero::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:92px;background:linear-gradient(90deg,rgba(251,241,223,.94),rgba(251,241,223,.98)),url("/assets/images/exotic-morocco-discover-background-008.webp") center/480px auto;clip-path:polygon(0 44%,9% 59%,18% 35%,31% 58%,43% 34%,56% 58%,68% 34%,82% 57%,93% 37%,100% 53%,100% 100%,0 100%)}
.hero-copy{max-width:960px;position:relative;z-index:1} .hero .eyebrow{color:#f2cb76} .hero-sub{font-family:var(--serif);font-size:clamp(1.45rem,2.6vw,2.8rem);color:#ffe0a0;margin-top:.75rem} .hero p{max-width:780px;color:rgba(255,255,255,.84);font-size:1.1rem} .hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px} .pill{padding:.54rem .82rem;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.09);font-weight:850}

.intro{background:var(--cream)} .intro-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:52px;align-items:center} .intro-card{background:rgba(255,248,235,.94);border:1px solid var(--line);border-radius:36px;padding:36px;box-shadow:var(--soft)} .city-circles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start} .city-circle-card{text-align:center} .city-circle{width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:var(--shadow);border:8px solid rgba(255,248,235,.9);background:#ddd;margin:0} .city-circle-card h4{margin-top:14px;color:var(--green);font-size:1.55rem} .city-circle-card p{font-size:.9rem;margin-top:.35rem}

.route-voices{background:#f7e6cd} .route-block{display:grid;grid-template-columns:380px minmax(520px,1.1fr) 410px;gap:22px;align-items:stretch;margin-top:34px} .route-menu,.route-main,.route-side{height:690px} .route-menu{background:rgba(255,248,235,.96);border:1px solid var(--line);border-radius:34px;padding:28px;box-shadow:var(--soft);display:flex;flex-direction:column;justify-content:space-between} .route-list{display:grid;gap:12px;margin-top:22px} .route-item{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start;background:white;border-radius:20px;padding:14px;border:1px solid rgba(201,154,66,.16)} .route-number{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-weight:950} .route-item b{display:block;color:var(--green)} .route-item span{display:block;color:var(--muted);font-size:.88rem;margin-top:2px} .route-main{border-radius:34px;overflow:hidden;box-shadow:var(--shadow);position:relative;margin:0;background:#ddd} .route-side{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr 1fr;gap:14px} .route-side figure{margin:0;border-radius:24px;overflow:hidden;box-shadow:var(--soft);position:relative;background:#ddd} .route-side figure.wide{grid-column:span 2}

.why{background:var(--coffee)} .why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px} .why-card{background:rgba(255,248,235,.88);border:1px solid rgba(91,60,26,.12);border-radius:28px;padding:28px;box-shadow:var(--soft);min-height:260px} .why-card h4{color:var(--purple)}
.voices{background:linear-gradient(135deg,#c8612d,#df8945);color:white} .voices p{color:rgba(255,255,255,.84)} .voices .eyebrow{color:#ffe0a3} .voice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:36px} .voice-card{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.18);border-radius:30px;overflow:hidden;box-shadow:var(--shadow);backdrop-filter:blur(4px)} .voice-img{height:310px} .voice-copy{padding:24px} .voice-copy h3{font-size:2.45rem} .voice-copy p{font-size:.95rem}
.power{background:linear-gradient(135deg,var(--blue-deep),var(--blue));color:white} .power .eyebrow{color:#f2cb76} .power-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:36px} .power-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:30px;min-height:300px;box-shadow:0 20px 48px rgba(0,0,0,.18)} .power-card b{display:inline-grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--gold);color:#12231d;margin-bottom:18px;font-weight:950} .power-card h4{color:#ffe0a3;margin-bottom:8px}

.city-chapter{background:var(--cream)} .city-chapter.alt{background:#f1dfc5} .city-layout{display:grid;grid-template-columns:minmax(430px,.84fr) minmax(690px,1.16fr);gap:48px;align-items:stretch} .city-layout.reverse{grid-template-columns:minmax(690px,1.16fr) minmax(430px,.84fr)} .text-panel{background:rgba(255,248,235,.95);border:1px solid var(--line);border-radius:36px;padding:36px;box-shadow:var(--soft);display:flex;flex-direction:column;justify-content:center} .text-panel h2{font-size:clamp(3rem,4.8vw,5.25rem)} .city-note{font-family:var(--serif);font-size:1.34rem;line-height:1.28;color:var(--purple);margin-top:1rem} .key-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px} .key{background:white;border:1px solid rgba(201,154,66,.16);border-radius:18px;padding:15px} .key b{display:block;color:var(--green);font-weight:900} .key span{display:block;color:var(--muted);font-size:.88rem;margin-top:2px}
.photo-mosaic{display:grid;grid-template-columns:1.26fr .74fr .74fr;grid-template-rows:230px 230px 230px;gap:16px;align-items:stretch;min-height:706px} .photo-mosaic .tile{position:relative;overflow:hidden;border-radius:28px;box-shadow:var(--shadow);margin:0;background:#ddd} .photo-mosaic .main{grid-row:1/4;grid-column:1/2;border-radius:34px} .photo-mosaic .round{border-radius:50%;aspect-ratio:1;height:auto;align-self:center;justify-self:center;width:100%} .photo-mosaic .square{aspect-ratio:1;height:auto;align-self:center} .photo-mosaic .wide{grid-column:2/4} .extra-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:36px;align-items:center} .extra-gallery figure{position:relative;margin:0;height:255px;border-radius:26px;overflow:hidden;box-shadow:var(--soft);background:#ddd} .extra-gallery figure.wide{grid-column:span 2} .extra-gallery figure.tall{height:330px} .extra-gallery figure.round{height:auto;aspect-ratio:1;border-radius:50%} .extra-gallery figure.square{height:auto;aspect-ratio:1} .info-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px} .info-pair article{background:rgba(255,255,255,.74);border:1px solid rgba(201,154,66,.16);border-radius:24px;padding:24px} .info-pair h4{color:var(--purple);margin-bottom:8px}

.arch{background:var(--light-orange)} .arch-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:42px;align-items:center} .arch-text{background:rgba(255,248,235,.78);border:1px solid rgba(94,57,24,.14);border-radius:32px;padding:32px;box-shadow:var(--soft)} .arch-circles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px} .arch-circle{text-align:center} .arch-circle figure{margin:0 auto;width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:var(--shadow);border:9px solid rgba(255,248,235,.84)} .arch-circle h4{margin-top:12px;color:var(--green)} .arch-circle p{font-size:.92rem;margin-top:.35rem}
.route-map-section{background:var(--ivory)} .map-card{position:relative;background:rgba(255,248,235,.94);border:1px solid var(--line);border-radius:38px;padding:42px;box-shadow:var(--shadow)} .map-grid{display:grid;grid-template-columns:.67fr 1.33fr;gap:36px;align-items:center} .route-map{position:relative;min-height:580px} .route-map svg{position:absolute;inset:0;width:100%;height:100%} .marker{position:absolute;transform:translate(-50%,-50%);width:220px;text-align:center} .marker img{width:176px;height:176px;border-radius:50%;box-shadow:var(--shadow);border:10px solid white;margin:auto} .marker strong{display:block;font-family:var(--serif);font-size:1.32rem;margin-top:8px} .marker small{display:block;color:var(--muted);font-size:.82rem;line-height:1.15} .m-rabat{left:12%;top:64%}.m-meknes{left:38%;top:36%}.m-fes{left:63%;top:54%}.m-marrakech{left:88%;top:30%}
.continue{background:linear-gradient(135deg,#873718,#b65327);color:white} .continue p{color:rgba(255,255,255,.82)} .continue .eyebrow{color:#ffe0a3} .guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:36px} .guide-card{background:rgba(255,248,235,.94);color:var(--ink);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)} .guide-img{height:260px} .guide-copy{padding:22px} .guide-copy h4{color:var(--green);font-size:1.8rem} .guide-copy p{font-size:.93rem} .guide-copy a{display:inline-block;margin-top:12px;font-weight:900;color:var(--green)}
@media(max-width:1220px){.nav{display:none} .intro-grid,.route-block,.city-layout,.city-layout.reverse,.arch-grid,.map-grid{grid-template-columns:1fr} .route-menu,.route-main,.route-side{height:auto} .route-main{height:580px} .route-side{grid-template-columns:repeat(3,1fr);grid-template-rows:210px 210px} .why-grid,.voice-grid,.city-circles,.arch-circles,.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))} .power-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.section-inner{width:min(100% - 30px,1720px)} .logo-img{width:210px} .header-cta{display:none} h1{font-size:4.1rem} h2{font-size:2.7rem} .city-circles,.why-grid,.voice-grid,.power-grid,.key-row,.extra-gallery,.info-pair,.arch-circles,.guide-grid{grid-template-columns:1fr} .route-side{grid-template-columns:1fr 1fr;grid-template-rows:170px 170px 170px} .photo-mosaic{grid-template-columns:1fr;grid-template-rows:auto;min-height:auto} .photo-mosaic .tile,.photo-mosaic .main,.photo-mosaic .wide{height:320px;grid-column:auto;grid-row:auto} .photo-mosaic .round,.photo-mosaic .square{height:auto;aspect-ratio:1;width:min(100%,330px);justify-self:center} .extra-gallery figure,.extra-gallery figure.tall{height:300px} .extra-gallery figure.wide{grid-column:auto} .extra-gallery figure.round,.extra-gallery figure.square{height:auto;aspect-ratio:1;width:min(100%,330px);justify-self:center} .route-map{min-height:760px} .marker{width:160px} .marker img{width:128px;height:128px} .m-rabat{left:32%;top:14%}.m-meknes{left:70%;top:35%}.m-fes{left:32%;top:58%}.m-marrakech{left:70%;top:82%}}

.site-header{display:none!important}
.section-inner{width:min(1840px,97vw)!important}.em-section{padding:clamp(76px,7vw,118px) 0!important}
.bg-zellige::before,.bg-zellige-strong::before,.bg-zellige-dark::before{background:linear-gradient(45deg,rgba(11,74,61,.18) 12.5%,transparent 12.5%,transparent 37.5%,rgba(201,154,66,.14) 37.5%,rgba(201,154,66,.14) 50%,transparent 50%,transparent 87.5%,rgba(11,74,61,.18) 87.5%) 0 0/86px 86px,linear-gradient(-45deg,rgba(109,65,109,.10) 12.5%,transparent 12.5%,transparent 37.5%,rgba(11,74,61,.10) 37.5%,rgba(11,74,61,.10) 50%,transparent 50%,transparent 87.5%,rgba(109,65,109,.10) 87.5%) 0 0/86px 86px!important;opacity:.12!important;mix-blend-mode:multiply!important}
.bg-zellige-strong::before{opacity:.18!important}.bg-zellige-dark::before{opacity:.10!important;mix-blend-mode:screen!important}

.hero{min-height:82vh!important;align-items:end!important;background:#b9895f!important;padding:clamp(118px,12vw,190px) clamp(24px,5vw,76px) clamp(78px,8vw,112px)!important}
.hero-bg img{filter:brightness(1.10) contrast(1.02) saturate(1.03)!important;transform:scale(1.01)}
.hero::before{background:linear-gradient(90deg,rgba(18,48,41,.66),rgba(18,48,41,.43) 39%,rgba(18,48,41,.13) 68%,rgba(18,48,41,.28)),linear-gradient(0deg,rgba(251,241,223,.16),rgba(251,241,223,0) 48%)!important}
.hero::after{display:none!important;content:none!important;clip-path:none!important}
.hero-copy{max-width:1040px!important}.hero p{color:rgba(255,255,255,.92)!important}.hero-sub{color:#ffe4ad!important}.hero .btn.ghost{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.55)!important}

#intro{background:linear-gradient(135deg,#fbf1df,#f4dfc0)!important}
#intro .intro-grid{display:block!important}.intro-card{box-shadow:none!important;border:0!important;background:transparent!important;border-radius:0!important;padding:0!important;margin:0 0 clamp(34px,4vw,58px)!important}
#intro .intro-card{display:grid!important;grid-template-columns:minmax(300px,.40fr) minmax(520px,.60fr)!important;column-gap:clamp(36px,5vw,90px)!important;align-items:end!important}
#intro .intro-card .eyebrow{grid-column:1!important;grid-row:1!important}#intro .intro-card h2{grid-column:1!important;grid-row:2/4!important;max-width:720px!important}
#intro .intro-card p.lead{grid-column:2!important;grid-row:1/3!important;margin-top:0!important;font-size:clamp(1.16rem,1.45vw,1.36rem)!important;color:#4f4334!important}
#intro .intro-card p:not(.lead){grid-column:2!important;grid-row:3!important;color:#625543!important}
#intro .city-circles{grid-template-columns:repeat(4,minmax(220px,1fr))!important;gap:clamp(22px,2.4vw,38px)!important;align-items:start!important;margin-top:0!important}
#intro .city-circle{width:min(100%,340px)!important;margin:0 auto!important;border:0!important;box-shadow:0 30px 70px rgba(10,27,22,.22)!important}.city-circle-card h4{font-size:clamp(1.5rem,1.8vw,2rem)!important}.city-circle-card p{max-width:280px;margin-inline:auto!important}

#route-voices .route-block{max-width:1780px;margin-inline:auto!important}.route-menu,.route-main,.route-side figure{border:0!important}.route-side figure,.route-main{box-shadow:0 24px 58px rgba(10,27,22,.16)!important}

.city-layout{gap:clamp(34px,4vw,64px)!important}.text-panel{border:0!important;box-shadow:0 20px 48px rgba(10,27,22,.10)!important}.photo-mosaic .tile{border:0!important;box-shadow:0 24px 58px rgba(10,27,22,.16)!important}.photo-mosaic .main{min-height:706px!important}.info-pair{margin-top:clamp(24px,3vw,40px)!important}

.imperial-gallery{background:linear-gradient(135deg,#f8ead3,#eed0a5)!important}.imperial-gallery::before{opacity:.10!important}.gallery-head{display:grid;grid-template-columns:minmax(320px,.42fr) minmax(520px,.58fr);gap:clamp(32px,5vw,88px);align-items:end;margin-bottom:clamp(32px,4vw,56px)}.gallery-head p{margin:0;color:#5b4d3b}.collected-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense;gap:16px}.collected-gallery figure{position:relative;margin:0;min-height:235px;border-radius:28px;overflow:hidden;box-shadow:0 20px 48px rgba(10,27,22,.14);background:#ddd}.collected-gallery figure.wide{grid-column:span 2}.collected-gallery figure.tall{grid-row:span 2;min-height:486px}.collected-gallery figure.square{aspect-ratio:1;min-height:0}.collected-gallery figure.round{aspect-ratio:1;border-radius:50%;min-height:0;align-self:center}.collected-gallery .caption{font-size:.74rem;background:rgba(5,42,35,.70)}

#architecture{background:linear-gradient(135deg,#f1c28a,#edb16e)!important}.arch-grid{display:block!important}.arch-text{display:grid!important;grid-template-columns:minmax(300px,.40fr) minmax(520px,.60fr)!important;column-gap:clamp(36px,5vw,90px)!important;align-items:end!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;margin-bottom:clamp(34px,4vw,58px)!important}.arch-text .eyebrow{grid-column:1;grid-row:1}.arch-text h2{grid-column:1;grid-row:2/4}.arch-text p.lead{grid-column:2;grid-row:1/3;margin-top:0!important;color:#4f4334!important}.arch-text p:not(.lead){grid-column:2;grid-row:3;color:#625543!important}.arch-circles{grid-template-columns:repeat(4,minmax(220px,1fr))!important;gap:clamp(22px,2.4vw,38px)!important}.arch-circle figure{width:min(100%,350px)!important;border:0!important;box-shadow:0 30px 70px rgba(10,27,22,.22)!important}.arch-circle h4{font-size:clamp(1.45rem,1.7vw,1.9rem)!important}

.route-map-section{background:linear-gradient(135deg,#fff7e8,#f3dec0)!important}.map-card{border:0!important;background:rgba(255,248,235,.95)!important;box-shadow:0 30px 80px rgba(10,27,22,.16)!important}.route-map{min-height:680px!important;border-radius:34px!important;overflow:hidden!important;background:radial-gradient(circle at 55% 48%,rgba(201,154,66,.16),transparent 38%),linear-gradient(135deg,#fff3dc,#f0d2a8)!important;isolation:isolate!important}.route-map svg{position:absolute;inset:0;width:100%;height:100%}.route-map .morocco-map-bg{z-index:0!important;opacity:.95!important}.route-map .route-line{z-index:1!important}.route-map .marker{z-index:3!important;width:270px!important}.route-map .marker img{width:220px!important;height:220px!important;border:8px solid rgba(255,255,255,.92)!important;box-shadow:0 30px 70px rgba(10,27,22,.24)!important}.marker strong{font-size:1.55rem!important}.marker small{font-size:.9rem!important}.m-rabat{left:14%!important;top:64%!important}.m-meknes{left:38%!important;top:38%!important}.m-fes{left:63%!important;top:55%!important}.m-marrakech{left:86%!important;top:31%!important}

#continue{background:linear-gradient(135deg,#7e3218,#b44f24)!important}#continue .guide-grid{grid-template-columns:repeat(4,minmax(220px,1fr))!important;gap:clamp(18px,2vw,30px)!important}

@media(max-width:1220px){#intro .intro-card,.arch-text,.gallery-head{grid-template-columns:1fr!important}#intro .intro-card .eyebrow,#intro .intro-card h2,#intro .intro-card p.lead,#intro .intro-card p:not(.lead),.arch-text .eyebrow,.arch-text h2,.arch-text p.lead,.arch-text p:not(.lead){grid-column:1!important;grid-row:auto!important}#intro .city-circles,.arch-circles{grid-template-columns:repeat(2,minmax(220px,1fr))!important}.collected-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.route-map .marker{width:210px!important}.route-map .marker img{width:168px!important;height:168px!important}}
@media(max-width:760px){.section-inner{width:min(100% - 30px,1720px)!important}.hero{min-height:78vh!important;padding-top:96px!important}#intro .city-circles,.arch-circles,#continue .guide-grid{grid-template-columns:1fr!important}.city-circle,.arch-circle figure{width:min(100%,310px)!important}.collected-gallery{grid-template-columns:1fr 1fr!important}.collected-gallery figure,.collected-gallery figure.tall{min-height:250px!important}.collected-gallery figure.wide{grid-column:span 2}.collected-gallery figure.round,.collected-gallery figure.square{aspect-ratio:1}.map-grid{grid-template-columns:1fr!important}.route-map{min-height:760px!important}.route-map .marker{width:165px!important}.route-map .marker img{width:128px!important;height:128px!important;border-width:5px!important}.m-rabat{left:32%!important;top:15%!important}.m-meknes{left:70%!important;top:35%!important}.m-fes{left:32%!important;top:59%!important}.m-marrakech{left:70%!important;top:83%!important}}

:root{
  --em-zellige-user:url("/assets/images/exotic-morocco-discover-background-008.webp");
  --em-teal-route:#45757a;
  --em-coffee-milk:#cfad87;
  --em-coffee-milk-dark:#b98f68;
  --em-coffee-milk-deep:#a87956;
  --em-orange-final:#be5728;
  --em-orange-warm:#d87435;
  --em-sage-arch:#d8d7bd;
}

.bg-zellige::before,
.bg-zellige-strong::before,
.bg-zellige-dark::before{
  background-image:var(--em-zellige-user)!important;
  background-repeat:repeat!important;
  background-position:center!important;
  background-size:520px auto!important;
  pointer-events:none!important;
}
.bg-zellige::before{opacity:.16!important;mix-blend-mode:multiply!important;}
.bg-zellige-strong::before{opacity:.24!important;mix-blend-mode:multiply!important;}
.bg-zellige-dark::before{opacity:.14!important;mix-blend-mode:screen!important;}

#intro{
  background:linear-gradient(135deg,#fbf1df 0%,#f3ddbd 100%)!important;
  color:var(--ink)!important;
}
#intro::before{opacity:.18!important;mix-blend-mode:multiply!important;background-size:500px auto!important;}
#intro .section-inner{width:min(1880px,97vw)!important;}
#intro .intro-card{
  display:grid!important;
  grid-template-columns:minmax(360px,.42fr) minmax(640px,.58fr)!important;
  column-gap:clamp(44px,6vw,112px)!important;
  align-items:end!important;
  padding:0!important;
  margin:0 0 clamp(42px,5vw,72px)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
#intro .intro-card .eyebrow{grid-column:1!important;grid-row:1!important;color:#aa4d24!important;}
#intro .intro-card h2{grid-column:1!important;grid-row:2 / 4!important;max-width:780px!important;color:#203e34!important;}
#intro .intro-card p.lead{grid-column:2!important;grid-row:1 / 3!important;margin:0!important;color:#443a2f!important;font-size:clamp(1.18rem,1.5vw,1.42rem)!important;line-height:1.68!important;}
#intro .intro-card p:not(.lead){grid-column:2!important;grid-row:3!important;color:#5e5140!important;font-size:1.04rem!important;}
#intro .city-circles{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(270px,1fr))!important;
  gap:clamp(24px,2.6vw,44px)!important;
  align-items:start!important;
  margin-top:0!important;
  padding:clamp(26px,3vw,46px)!important;
  border-radius:44px!important;
  background:rgba(255,248,235,.58)!important;
  box-shadow:0 28px 74px rgba(10,27,22,.12)!important;
  backdrop-filter:blur(3px)!important;
}
#intro .city-circle-card{min-width:0!important;text-align:center!important;}
#intro .city-circle{
  width:min(100%,410px)!important;
  max-width:410px!important;
  aspect-ratio:1/1!important;
  margin:0 auto!important;
  border:0!important;
  outline:0!important;
  box-shadow:0 34px 78px rgba(10,27,22,.24)!important;
}
#intro .city-circle-card h4{font-size:clamp(1.65rem,2vw,2.25rem)!important;color:#0b4a3d!important;margin-top:18px!important;}
#intro .city-circle-card p{max-width:300px!important;margin-inline:auto!important;color:#5b4e3f!important;}

#route-voices{background:var(--em-teal-route)!important;color:#fff!important;}
#route-voices::before{display:none!important;}
#route-voices .eyebrow,
#route-voices h2,
#route-voices p,
#route-voices .lead{color:#fff!important;}
#route-voices .section-inner > p{color:rgba(255,255,255,.90)!important;max-width:980px!important;}
#route-voices .route-menu{
  background:rgba(7,54,56,.78)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  box-shadow:0 28px 66px rgba(4,27,29,.24)!important;
}
#route-voices .route-menu h3,
#route-voices .route-menu p,
#route-voices .route-item b,
#route-voices .route-item span{color:#fff!important;}
#route-voices .route-item{
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.16)!important;
}
#route-voices .route-number{background:#f1c979!important;color:#16352f!important;}
#route-voices .route-main,
#route-voices .route-side figure{box-shadow:0 30px 72px rgba(4,27,29,.25)!important;}

#voices{
  background:linear-gradient(135deg,#bd5528 0%,#dd7b38 100%)!important;
  color:white!important;
}
#voices::before{opacity:.18!important;mix-blend-mode:multiply!important;background-size:500px auto!important;}
#voices .eyebrow{color:#fff1c4!important;}
#voices h2,
#voices p,
#voices .lead{color:#fff!important;}
#voices .voice-card{background:rgba(94,35,14,.26)!important;border:1px solid rgba(255,255,255,.20)!important;}
#voices .voice-copy p{color:rgba(255,255,255,.88)!important;}

#power{
  background:linear-gradient(135deg,var(--em-coffee-milk) 0%,#c29b74 48%,#b78c66 100%)!important;
  color:#172c25!important;
}
#power::before{opacity:.14!important;mix-blend-mode:multiply!important;background-size:520px auto!important;}
#power .eyebrow{color:#9e421d!important;}
#power h2{color:#203e34!important;}
#power p,
#power .lead{color:#534536!important;}
#power .power-card{
  background:rgba(255,248,235,.74)!important;
  border:1px solid rgba(91,60,26,.12)!important;
  color:#172c25!important;
  box-shadow:0 24px 58px rgba(55,34,18,.16)!important;
  min-height:320px!important;
}
#power .power-card h4{color:#0b4a3d!important;}
#power .power-card p{color:#5b4d3d!important;}
#power .power-card b{background:#c99a42!important;color:#172c25!important;}

.city-chapter{background:#fbf1df!important;}
.city-chapter.alt{background:#f0ddc3!important;}
.photo-mosaic{grid-template-columns:1.18fr .82fr .82fr!important;gap:18px!important;}
.photo-mosaic .tile{border:0!important;outline:0!important;box-shadow:0 28px 66px rgba(10,27,22,.17)!important;}
.photo-mosaic .round{
  border-radius:50%!important;
  aspect-ratio:1/1!important;
  width:min(100%,272px)!important;
  max-width:272px!important;
  height:auto!important;
  align-self:center!important;
  justify-self:center!important;
  box-shadow:0 30px 70px rgba(10,27,22,.22)!important;
  z-index:2!important;
}
.photo-mosaic .round img{border-radius:50%!important;}
.photo-mosaic .main{border-radius:36px!important;}
.photo-mosaic .wide{border-radius:30px!important;}
.photo-mosaic .square{border-radius:30px!important;}
.text-panel{background:rgba(255,248,235,.94)!important;border:0!important;box-shadow:0 22px 54px rgba(10,27,22,.11)!important;}

#imperial-gallery{
  background:linear-gradient(135deg,var(--em-coffee-milk-dark) 0%,var(--em-coffee-milk-deep) 100%)!important;
  color:#fff!important;
}
#imperial-gallery::before{opacity:.18!important;mix-blend-mode:screen!important;background-size:520px auto!important;}
#imperial-gallery .gallery-head{
  display:grid!important;
  grid-template-columns:minmax(360px,.40fr) minmax(640px,.60fr)!important;
  gap:clamp(40px,6vw,100px)!important;
  align-items:end!important;
  margin-bottom:clamp(34px,4vw,60px)!important;
}
#imperial-gallery .eyebrow{color:#fff0be!important;}
#imperial-gallery h2{color:#fff8eb!important;}
#imperial-gallery .lead,
#imperial-gallery p{color:rgba(255,255,255,.90)!important;}
#imperial-gallery .collected-gallery{
  display:block!important;
  columns:5 255px!important;
  column-gap:18px!important;
  width:100%!important;
}
#imperial-gallery .collected-gallery figure{
  display:inline-block!important;
  width:100%!important;
  margin:0 0 18px!important;
  min-height:0!important;
  height:auto!important;
  break-inside:avoid!important;
  -webkit-column-break-inside:avoid!important;
  border-radius:28px!important;
  overflow:hidden!important;
  box-shadow:0 24px 58px rgba(38,22,12,.24)!important;
  background:#e5c29a!important;
  aspect-ratio:1/1.08!important;
}
#imperial-gallery .collected-gallery figure.wide{aspect-ratio:1.42/1!important;}
#imperial-gallery .collected-gallery figure.tall{aspect-ratio:.76/1!important;}
#imperial-gallery .collected-gallery figure.square{aspect-ratio:1/1!important;}
#imperial-gallery .collected-gallery figure.round{aspect-ratio:1/1!important;border-radius:28px!important;}
#imperial-gallery .collected-gallery img{width:100%!important;height:100%!important;object-fit:cover!important;}
#imperial-gallery .caption{background:rgba(23,44,37,.72)!important;color:#fff!important;}

#architecture{
  background:linear-gradient(135deg,var(--em-sage-arch) 0%,#ead8b8 100%)!important;
  color:var(--ink)!important;
}
#architecture::before{opacity:.16!important;mix-blend-mode:multiply!important;background-size:500px auto!important;}
#architecture .arch-grid{display:block!important;}
#architecture .arch-text{
  display:grid!important;
  grid-template-columns:minmax(360px,.42fr) minmax(640px,.58fr)!important;
  column-gap:clamp(44px,6vw,112px)!important;
  align-items:end!important;
  padding:0!important;
  margin:0 0 clamp(42px,5vw,72px)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
#architecture .arch-text .eyebrow{grid-column:1!important;grid-row:1!important;color:#a3461f!important;}
#architecture .arch-text h2{grid-column:1!important;grid-row:2 / 4!important;color:#203e34!important;}
#architecture .arch-text p.lead{grid-column:2!important;grid-row:1 / 3!important;margin:0!important;color:#443a2f!important;font-size:clamp(1.18rem,1.5vw,1.42rem)!important;line-height:1.68!important;}
#architecture .arch-text p:not(.lead){grid-column:2!important;grid-row:3!important;color:#5e5140!important;font-size:1.04rem!important;}
#architecture .arch-circles{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(270px,1fr))!important;
  gap:clamp(24px,2.6vw,44px)!important;
  align-items:start!important;
  padding:clamp(26px,3vw,46px)!important;
  border-radius:44px!important;
  background:rgba(255,248,235,.55)!important;
  box-shadow:0 28px 74px rgba(10,27,22,.12)!important;
  backdrop-filter:blur(3px)!important;
}
#architecture .arch-circle figure{
  width:min(100%,410px)!important;
  max-width:410px!important;
  aspect-ratio:1/1!important;
  border:0!important;
  outline:0!important;
  box-shadow:0 34px 78px rgba(10,27,22,.24)!important;
}
#architecture .arch-circle h4{font-size:clamp(1.55rem,1.85vw,2.15rem)!important;color:#0b4a3d!important;margin-top:18px!important;}
#architecture .arch-circle p{max-width:305px!important;margin-inline:auto!important;color:#5b4e3f!important;}

#map{background:linear-gradient(135deg,#fff7e8,#f3dec0)!important;}
#map::before{opacity:.10!important;mix-blend-mode:multiply!important;}
#map .marker img{border:0!important;outline:0!important;}
#continue{
  background:linear-gradient(135deg,#9a3f1d 0%,var(--em-orange-final) 48%,var(--em-orange-warm) 100%)!important;
  color:#fff!important;
}
#continue::before{opacity:.15!important;mix-blend-mode:multiply!important;background-size:500px auto!important;}
#continue h2,
#continue p,
#continue .lead{color:#fff!important;}
#continue .eyebrow{color:#fff0be!important;}
#continue .guide-card{background:rgba(255,248,235,.96)!important;color:#172c25!important;}
#continue .guide-copy p{color:#5b4d3d!important;}

@media(max-width:1220px){
  #intro .intro-card,
  #architecture .arch-text,
  #imperial-gallery .gallery-head{grid-template-columns:1fr!important;}
  #intro .intro-card .eyebrow,#intro .intro-card h2,#intro .intro-card p.lead,#intro .intro-card p:not(.lead),
  #architecture .arch-text .eyebrow,#architecture .arch-text h2,#architecture .arch-text p.lead,#architecture .arch-text p:not(.lead){grid-column:1!important;grid-row:auto!important;}
  #intro .city-circles,
  #architecture .arch-circles{grid-template-columns:repeat(2,minmax(260px,1fr))!important;}
  #imperial-gallery .collected-gallery{columns:3 245px!important;}
}
@media(max-width:760px){
  #intro .city-circles,
  #architecture .arch-circles{grid-template-columns:1fr!important;padding:24px!important;}
  #intro .city-circle,
  #architecture .arch-circle figure{width:min(100%,335px)!important;}
  #imperial-gallery .collected-gallery{columns:2 150px!important;column-gap:14px!important;}
  #imperial-gallery .collected-gallery figure{margin-bottom:14px!important;border-radius:22px!important;}
  .photo-mosaic{grid-template-columns:1fr 1fr!important;grid-template-rows:auto!important;min-height:0!important;}
  .photo-mosaic .main{grid-column:1/3!important;grid-row:auto!important;min-height:360px!important;}
  .photo-mosaic .wide{grid-column:1/3!important;}
  .photo-mosaic .round{width:min(100%,210px)!important;}
}

:root{
  --em-soft-taupe:#a69180;
}

#route-voices{
  background:linear-gradient(135deg,rgba(69,117,122,.97),rgba(69,117,122,.97))!important;
  position:relative!important;
}
#route-voices::before{
  content:""!important;position:absolute!important;inset:0!important;
  background-image:var(--em-zellige-user)!important;background-repeat:repeat!important;
  background-size:520px auto!important;background-position:center!important;
  opacity:.16!important;mix-blend-mode:screen!important;pointer-events:none!important;
}
#route-voices .section-inner{position:relative!important;z-index:1!important;}
#route-voices .eyebrow,#route-voices h2,#route-voices p,#route-voices .lead,#route-voices .route-menu h3,#route-voices .route-menu p,#route-voices .route-item b,#route-voices .route-item span{color:#fff!important;}

#why{
  background:#a69180!important;
  position:relative!important;
}
#why::before{content:"";position:absolute;inset:0;background-image:var(--em-zellige-user);background-repeat:repeat;background-size:520px auto;opacity:.10;mix-blend-mode:screen;pointer-events:none;}
#why .section-inner{position:relative;z-index:1;}
#why h2,#why .eyebrow{color:#fff7ef!important;}
#why p,#why .lead{color:#f7efe6!important;}
#why .why-card{background:rgba(255,248,235,.9)!important;}

#voices{position:relative!important;}
#voices::before{content:""!important;position:absolute!important;inset:0!important;background-image:var(--em-zellige-user)!important;background-repeat:repeat!important;background-size:520px auto!important;opacity:.18!important;mix-blend-mode:multiply!important;pointer-events:none!important;}
#voices .section-inner{position:relative!important;z-index:1!important;}

#power{
  background:#a69180!important;position:relative!important;color:#172c25!important;
}
#power::before{content:""!important;position:absolute!important;inset:0!important;background-image:var(--em-zellige-user)!important;background-repeat:repeat!important;background-size:520px auto!important;opacity:.11!important;mix-blend-mode:screen!important;pointer-events:none!important;}
#power .section-inner{position:relative!important;z-index:1!important;}
#power .eyebrow{color:#fff1df!important;}
#power h2{color:#fff8f2!important;}
#power p,#power .lead{color:#f8efe6!important;}
#power .power-card{background:rgba(255,248,235,.92)!important;color:#172c25!important;}
#power .power-card h4{color:#0b4a3d!important;}
#power .power-card p{color:#544839!important;}

.photo-mosaic.six-rect{
  display:grid!important;
  grid-template-columns:1.16fr .84fr .84fr!important;
  grid-template-rows:220px 220px 220px!important;
  gap:16px!important;
  min-height:692px!important;
}
.photo-mosaic.six-rect .tile{
  border-radius:28px!important;overflow:hidden!important;box-shadow:0 24px 58px rgba(10,27,22,.16)!important;
}
.photo-mosaic.six-rect .main{grid-column:1;grid-row:1 / span 3;border-radius:34px!important;}
.photo-mosaic.six-rect .tile:not(.main){height:220px!important;}
.photo-mosaic.six-rect .round,.photo-mosaic.six-rect .square,.photo-mosaic.six-rect .wide{border-radius:28px!important;aspect-ratio:auto!important;width:auto!important;max-width:none!important;height:220px!important;justify-self:stretch!important;align-self:stretch!important;}
.photo-mosaic.six-rect img{object-fit:cover!important;}

#imperial-gallery{background:#a69180!important;position:relative!important;}
#imperial-gallery::before{content:""!important;position:absolute!important;inset:0!important;background-image:var(--em-zellige-user)!important;background-repeat:repeat!important;background-size:520px auto!important;opacity:.12!important;mix-blend-mode:screen!important;pointer-events:none!important;}
#imperial-gallery .section-inner{position:relative!important;z-index:1!important;}
#imperial-gallery h2,#imperial-gallery .eyebrow{color:#fff8f2!important;}
#imperial-gallery p,#imperial-gallery .lead{color:#f7efe7!important;}
#imperial-gallery .collected-gallery{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:start!important;
}
#imperial-gallery .collected-gallery figure,
#imperial-gallery .collected-gallery figure.portrait,
#imperial-gallery .collected-gallery figure.wide,
#imperial-gallery .collected-gallery figure.square,
#imperial-gallery .collected-gallery figure.round,
#imperial-gallery .collected-gallery figure.tall{
  grid-column:auto!important;grid-row:auto!important;
  min-height:0!important;height:auto!important;
  aspect-ratio:4 / 5!important;
  border-radius:26px!important;overflow:hidden!important;
  box-shadow:0 20px 48px rgba(10,27,22,.16)!important;
}
#imperial-gallery .collected-gallery img{width:100%!important;height:100%!important;object-fit:cover!important;}
#imperial-gallery .caption{background:rgba(32,62,52,.74)!important;}

#architecture{position:relative!important;background:linear-gradient(135deg,#c8b79c,#d9c6aa)!important;}
#architecture::before{content:""!important;position:absolute!important;inset:0!important;background-image:var(--em-zellige-user)!important;background-repeat:repeat!important;background-size:520px auto!important;opacity:.16!important;mix-blend-mode:multiply!important;pointer-events:none!important;}
#architecture .section-inner{position:relative!important;z-index:1!important;}

#continue{position:relative!important;background:linear-gradient(135deg,#8d4d2b,#bf6b38)!important;}
#continue::before{content:""!important;position:absolute!important;inset:0!important;background-image:var(--em-zellige-user)!important;background-repeat:repeat!important;background-size:520px auto!important;opacity:.18!important;mix-blend-mode:multiply!important;pointer-events:none!important;}
#continue .section-inner{position:relative!important;z-index:1!important;}
#continue h2,#continue .eyebrow,#continue p,#continue .lead{color:#fff!important;}

@media(max-width:1220px){
  .photo-mosaic.six-rect{grid-template-columns:1fr 1fr!important;grid-template-rows:auto!important;min-height:auto!important;}
  .photo-mosaic.six-rect .main{grid-column:1 / span 2!important;grid-row:auto!important;height:420px!important;}
  .photo-mosaic.six-rect .tile:not(.main),.photo-mosaic.six-rect .round,.photo-mosaic.six-rect .square,.photo-mosaic.six-rect .wide{height:240px!important;}
  #imperial-gallery .collected-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .photo-mosaic.six-rect{grid-template-columns:1fr!important;}
  .photo-mosaic.six-rect .main{grid-column:1!important;height:360px!important;}
  .photo-mosaic.six-rect .tile:not(.main),.photo-mosaic.six-rect .round,.photo-mosaic.six-rect .square,.photo-mosaic.six-rect .wide{height:260px!important;}
  #imperial-gallery .collected-gallery{grid-template-columns:1fr 1fr!important;}
}

#route-voices{
  position:relative!important;
  background:#45757a!important;
}
#route-voices::before{
  content:""!important;
  position:absolute!important;inset:0!important;
  background-image:url("/assets/images/exotic-morocco-discover-background-008.webp")!important;
  background-repeat:repeat!important;
  background-position:center!important;
  background-size:520px auto!important;
  opacity:.16!important;
  mix-blend-mode:screen!important;
  pointer-events:none!important;
}
#route-voices .section-inner{position:relative!important;z-index:1!important;}

.photo-mosaic.six-rect,
#fes .photo-mosaic,
#marrakech .photo-mosaic,
#meknes .photo-mosaic,
#rabat .photo-mosaic{
  display:grid!important;
  grid-template-columns:1.16fr .84fr .84fr!important;
  grid-template-rows:220px 220px 220px!important;
  gap:16px!important;
  min-height:692px!important;
}
#fes .photo-mosaic .tile,
#marrakech .photo-mosaic .tile,
#meknes .photo-mosaic .tile,
#rabat .photo-mosaic .tile{
  border-radius:28px!important;
  overflow:hidden!important;
  box-shadow:0 24px 58px rgba(10,27,22,.16)!important;
}
#fes .photo-mosaic .main,
#marrakech .photo-mosaic .main,
#meknes .photo-mosaic .main,
#rabat .photo-mosaic .main{
  grid-column:1!important;
  grid-row:1 / span 3!important;
  border-radius:34px!important;
}
#fes .photo-mosaic .tile:not(.main),
#marrakech .photo-mosaic .tile:not(.main),
#meknes .photo-mosaic .tile:not(.main),
#rabat .photo-mosaic .tile:not(.main){
  height:220px!important;
}
#fes .photo-mosaic .round,
#fes .photo-mosaic .square,
#fes .photo-mosaic .wide,
#marrakech .photo-mosaic .round,
#marrakech .photo-mosaic .square,
#marrakech .photo-mosaic .wide,
#meknes .photo-mosaic .round,
#meknes .photo-mosaic .square,
#meknes .photo-mosaic .wide,
#rabat .photo-mosaic .round,
#rabat .photo-mosaic .square,
#rabat .photo-mosaic .wide{
  border-radius:28px!important;
  aspect-ratio:auto!important;
  width:auto!important;
  max-width:none!important;
  height:220px!important;
  justify-self:stretch!important;
  align-self:stretch!important;
}
#fes .photo-mosaic .round img,
#marrakech .photo-mosaic .round img,
#meknes .photo-mosaic .round img,
#rabat .photo-mosaic .round img{border-radius:28px!important;}

#why{
  background:#a69180!important;
}
#why::before{display:none!important;content:none!important;}

#voices{
  position:relative!important;
}
#voices::before{
  content:""!important;
  position:absolute!important;inset:0!important;
  background-image:url("/assets/images/exotic-morocco-discover-background-008.webp")!important;
  background-repeat:repeat!important;
  background-position:center!important;
  background-size:520px auto!important;
  opacity:.18!important;
  mix-blend-mode:multiply!important;
  pointer-events:none!important;
}
#voices .section-inner{position:relative!important;z-index:1!important;}

#power{
  background:#a69180!important;
}
#power::before{display:none!important;content:none!important;}

#imperial-gallery{
  background:#a69180!important;
}
#imperial-gallery::before{display:none!important;content:none!important;}
#imperial-gallery .collected-gallery{
  columns:5 220px!important;
  column-gap:16px!important;
}
#imperial-gallery .collected-gallery figure,
#imperial-gallery .collected-gallery figure.portrait,
#imperial-gallery .collected-gallery figure.wide,
#imperial-gallery .collected-gallery figure.square,
#imperial-gallery .collected-gallery figure.round,
#imperial-gallery .collected-gallery figure.tall{
  display:block!important;
  break-inside:avoid!important;
  margin:0 0 16px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4 / 5!important;
  border-radius:26px!important;
  overflow:hidden!important;
}
#imperial-gallery .collected-gallery img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

#architecture{
  position:relative!important;
}
#architecture::before{
  content:""!important;
  position:absolute!important;inset:0!important;
  background-image:url("/assets/images/exotic-morocco-discover-background-008.webp")!important;
  background-repeat:repeat!important;
  background-position:center!important;
  background-size:520px auto!important;
  opacity:.16!important;
  mix-blend-mode:multiply!important;
  pointer-events:none!important;
}
#architecture .section-inner{position:relative!important;z-index:1!important;}

#continue{
  position:relative!important;
}
#continue::before{
  content:""!important;
  position:absolute!important;inset:0!important;
  background-image:url("/assets/images/exotic-morocco-discover-background-008.webp")!important;
  background-repeat:repeat!important;
  background-position:center!important;
  background-size:520px auto!important;
  opacity:.18!important;
  mix-blend-mode:multiply!important;
  pointer-events:none!important;
}
#continue .section-inner{position:relative!important;z-index:1!important;}

@media(max-width:1220px){
  #fes .photo-mosaic,
  #marrakech .photo-mosaic,
  #meknes .photo-mosaic,
  #rabat .photo-mosaic{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto!important;
    min-height:auto!important;
  }
  #fes .photo-mosaic .main,
  #marrakech .photo-mosaic .main,
  #meknes .photo-mosaic .main,
  #rabat .photo-mosaic .main{
    grid-column:1 / span 2!important;
    grid-row:auto!important;
    height:420px!important;
  }
  #imperial-gallery .collected-gallery{columns:3 220px!important;}
}
@media(max-width:760px){
  #fes .photo-mosaic,
  #marrakech .photo-mosaic,
  #meknes .photo-mosaic,
  #rabat .photo-mosaic{grid-template-columns:1fr!important;}
  #fes .photo-mosaic .main,
  #marrakech .photo-mosaic .main,
  #meknes .photo-mosaic .main,
  #rabat .photo-mosaic .main{grid-column:1!important;height:360px!important;}
  #imperial-gallery .collected-gallery{columns:2 150px!important;column-gap:14px!important;}
}

#why .why-card p{display:block!important;visibility:visible!important;opacity:1!important;color:#4f4334!important;margin-top:.8rem!important;}
#why .why-card{min-height:300px!important;}
#route-voices .route-side{grid-template-columns:1fr 1fr!important;grid-template-rows:repeat(3,1fr)!important;}
#route-voices .route-side figure{height:220px!important;border-radius:24px!important;}
#fes .photo-mosaic.six-rect,#marrakech .photo-mosaic.six-rect,#meknes .photo-mosaic.six-rect,#rabat .photo-mosaic.six-rect{align-items:stretch!important;grid-auto-flow:row dense!important;}
#fes .photo-mosaic.six-rect .main,#marrakech .photo-mosaic.six-rect .main,#meknes .photo-mosaic.six-rect .main,#rabat .photo-mosaic.six-rect .main{height:692px!important;align-self:stretch!important;}
#fes .photo-mosaic.six-rect img,#marrakech .photo-mosaic.six-rect img,#meknes .photo-mosaic.six-rect img,#rabat .photo-mosaic.six-rect img{object-fit:cover!important;}

#fes .text-panel,#marrakech .text-panel,#meknes .text-panel,#rabat .text-panel{min-height:692px!important;}
@media(max-width:1220px){#fes .text-panel,#marrakech .text-panel,#meknes .text-panel,#rabat .text-panel{min-height:auto!important;}}

#route-voices .route-block{
  align-items:start!important;
}
#route-voices .route-main{
  height:592px!important;
  min-height:0!important;
  align-self:start!important;
}
#route-voices .route-main img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
#route-voices .route-side{
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:repeat(3,188px)!important;
  gap:14px!important;
  height:auto!important;
  min-height:0!important;
}
#route-voices .route-side figure{
  height:188px!important;
  min-height:0!important;
  margin:0!important;
}
#route-voices .route-side img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

#fes.city-chapter,
#marrakech.city-chapter,
#meknes.city-chapter,
#rabat.city-chapter{
  padding-top:78px!important;
  padding-bottom:78px!important;
}
#fes .city-layout,
#marrakech .city-layout,
#meknes .city-layout,
#rabat .city-layout{
  align-items:start!important;
}
#fes .text-panel,
#marrakech .text-panel,
#meknes .text-panel,
#rabat .text-panel{
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
}
#fes .photo-mosaic.six-rect,
#marrakech .photo-mosaic.six-rect,
#meknes .photo-mosaic.six-rect,
#rabat .photo-mosaic.six-rect{
  grid-template-columns:1.16fr .84fr .84fr!important;
  grid-template-rows:repeat(3,188px)!important;
  gap:14px!important;
  min-height:0!important;
  height:auto!important;
  align-items:stretch!important;
}
#fes .photo-mosaic.six-rect .tile.main,
#marrakech .photo-mosaic.six-rect .tile.main,
#meknes .photo-mosaic.six-rect .tile.main,
#rabat .photo-mosaic.six-rect .tile.main{
  grid-column:1!important;
  grid-row:1 / span 3!important;
  height:592px!important;
  min-height:0!important;
  align-self:stretch!important;
}
#fes .photo-mosaic.six-rect .tile:not(.main),
#marrakech .photo-mosaic.six-rect .tile:not(.main),
#meknes .photo-mosaic.six-rect .tile:not(.main),
#rabat .photo-mosaic.six-rect .tile:not(.main){
  height:188px!important;
  min-height:0!important;
}
#fes .photo-mosaic.six-rect img,
#marrakech .photo-mosaic.six-rect img,
#meknes .photo-mosaic.six-rect img,
#rabat .photo-mosaic.six-rect img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

@media(max-width:1220px){
  #route-voices .route-main{height:430px!important;}
  #route-voices .route-side{
    grid-template-columns:repeat(3,1fr)!important;
    grid-template-rows:repeat(2,190px)!important;
  }
  #route-voices .route-side figure{height:190px!important;}
  #fes .photo-mosaic.six-rect,
  #marrakech .photo-mosaic.six-rect,
  #meknes .photo-mosaic.six-rect,
  #rabat .photo-mosaic.six-rect{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto!important;
  }
  #fes .photo-mosaic.six-rect .tile.main,
  #marrakech .photo-mosaic.six-rect .tile.main,
  #meknes .photo-mosaic.six-rect .tile.main,
  #rabat .photo-mosaic.six-rect .tile.main{
    grid-column:1 / span 2!important;
    height:430px!important;
  }
  #fes .photo-mosaic.six-rect .tile:not(.main),
  #marrakech .photo-mosaic.six-rect .tile:not(.main),
  #meknes .photo-mosaic.six-rect .tile:not(.main),
  #rabat .photo-mosaic.six-rect .tile:not(.main){
    height:230px!important;
  }
}
@media(max-width:760px){
  #route-voices .route-main{height:340px!important;}
  #route-voices .route-side{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:repeat(3,150px)!important;
  }
  #route-voices .route-side figure{height:150px!important;}
  #fes .photo-mosaic.six-rect,
  #marrakech .photo-mosaic.six-rect,
  #meknes .photo-mosaic.six-rect,
  #rabat .photo-mosaic.six-rect{
    grid-template-columns:1fr!important;
  }
  #fes .photo-mosaic.six-rect .tile.main,
  #marrakech .photo-mosaic.six-rect .tile.main,
  #meknes .photo-mosaic.six-rect .tile.main,
  #rabat .photo-mosaic.six-rect .tile.main{
    grid-column:1!important;
    height:340px!important;
  }
  #fes .photo-mosaic.six-rect .tile:not(.main),
  #marrakech .photo-mosaic.six-rect .tile:not(.main),
  #meknes .photo-mosaic.six-rect .tile:not(.main),
  #rabat .photo-mosaic.six-rect .tile:not(.main){
    height:230px!important;
  }
}

.hero .btn.gold,
.btn.gold{
  background:#d9792b!important;
  border-color:#d9792b!important;
  color:#fff!important;
}
#continue{
  background:linear-gradient(135deg,#c96d27,#dd8740)!important;
}
#continue .guide-copy a{
  color:#d9792b!important;
  font-weight:800!important;
}
#continue .guide-card:nth-child(3) .guide-copy a{
  margin-top:22px!important;
  display:inline-block!important;
}
#route-voices .route-main{height:595px!important;}
#route-voices .route-side{grid-template-rows:repeat(3,189px)!important;}
#route-voices .route-side figure{height:189px!important;}
#fes .photo-mosaic.six-rect .tile.main,
#marrakech .photo-mosaic.six-rect .tile.main,
#meknes .photo-mosaic.six-rect .tile.main,
#rabat .photo-mosaic.six-rect .tile.main{height:595px!important;}
#fes .photo-mosaic.six-rect,
#marrakech .photo-mosaic.six-rect,
#meknes .photo-mosaic.six-rect,
#rabat .photo-mosaic.six-rect{grid-template-rows:repeat(3,189px)!important;}
#fes .photo-mosaic.six-rect .tile:not(.main),
#marrakech .photo-mosaic.six-rect .tile:not(.main),
#meknes .photo-mosaic.six-rect .tile:not(.main),
#rabat .photo-mosaic.six-rect .tile:not(.main){height:189px!important;}

#route-voices .route-menu,
#route-voices .route-main,
#route-voices .route-side{
  height:595px!important;
  min-height:595px!important;
  align-self:start!important;
}
#route-voices .route-menu{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}
#route-voices .route-side{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:repeat(3,1fr)!important;
  gap:14px!important;
}
#route-voices .route-side figure,
#route-voices .route-side figure.wide{
  height:auto!important;
  min-height:0!important;
  border-radius:24px!important;
}
#route-voices .route-side img{width:100%!important;height:100%!important;object-fit:cover!important;}

#fes .text-panel,
#marrakech .text-panel,
#meknes .text-panel,
#rabat .text-panel{
  min-height:595px!important;
  height:595px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
#fes .photo-mosaic.six-rect,
#marrakech .photo-mosaic.six-rect,
#meknes .photo-mosaic.six-rect,
#rabat .photo-mosaic.six-rect{
  height:595px!important;
  min-height:595px!important;
}
#fes .photo-mosaic.six-rect .tile.main,
#marrakech .photo-mosaic.six-rect .tile.main,
#meknes .photo-mosaic.six-rect .tile.main,
#rabat .photo-mosaic.six-rect .tile.main{
  height:595px!important;
}
#fes .photo-mosaic.six-rect .tile:not(.main),
#marrakech .photo-mosaic.six-rect .tile:not(.main),
#meknes .photo-mosaic.six-rect .tile:not(.main),
#rabat .photo-mosaic.six-rect .tile:not(.main){
  height:189px!important;
}
@media(max-width:1220px){
  #route-voices .route-menu,
  #route-voices .route-main,
  #route-voices .route-side,
  #fes .text-panel,
  #marrakech .text-panel,
  #meknes .text-panel,
  #rabat .text-panel,
  #fes .photo-mosaic.six-rect,
  #marrakech .photo-mosaic.six-rect,
  #meknes .photo-mosaic.six-rect,
  #rabat .photo-mosaic.six-rect{height:auto!important;min-height:0!important;}
}

#fes.city-chapter,
#marrakech.city-chapter,
#meknes.city-chapter,
#rabat.city-chapter{
  padding-top:58px!important;
  padding-bottom:58px!important;
}

#route-voices .route-block{
  grid-template-columns:360px minmax(315px,370px) minmax(520px,1fr)!important;
  gap:20px!important;
  align-items:stretch!important;
}

#route-voices .route-menu,
#route-voices .route-main,
#route-voices .route-side{
  height:500px!important;
  min-height:500px!important;
  align-self:stretch!important;
}

#route-voices .route-menu{
  padding:22px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}

#route-voices .route-menu h3{
  font-size:clamp(2rem,2.2vw,2.75rem)!important;
  line-height:1!important;
}

#route-voices .route-menu p{
  font-size:.88rem!important;
  line-height:1.38!important;
  margin-top:.45rem!important;
}

#route-voices .route-list{
  gap:8px!important;
  margin-top:14px!important;
}

#route-voices .route-item{
  padding:9px 11px!important;
  grid-template-columns:34px 1fr!important;
  gap:9px!important;
  border-radius:17px!important;
}

#route-voices .route-number{
  width:34px!important;
  height:34px!important;
  font-size:.88rem!important;
}

#route-voices .route-item b{
  font-size:.9rem!important;
}

#route-voices .route-item span{
  font-size:.78rem!important;
  line-height:1.35!important;
}

#route-voices .route-menu .btn{
  padding:.72rem .9rem!important;
  font-size:.9rem!important;
}

#route-voices .route-main{
  max-width:370px!important;
  width:100%!important;
  justify-self:stretch!important;
  border-radius:30px!important;
}

#route-voices .route-main img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

#route-voices .route-side{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:repeat(3,1fr)!important;
  gap:14px!important;
}

#route-voices .route-side figure{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:24px!important;
}

#route-voices .route-side img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

#fes .city-layout,
#marrakech .city-layout,
#meknes .city-layout,
#rabat .city-layout{
  align-items:stretch!important;
}

#fes .text-panel,
#marrakech .text-panel,
#meknes .text-panel,
#rabat .text-panel{
  height:500px!important;
  min-height:500px!important;
  align-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  background:rgba(255,248,235,.94)!important;
  border:0!important;
  border-radius:36px!important;
  box-shadow:0 22px 54px rgba(10,27,22,.11)!important;
  padding:28px!important;
}

#fes .text-panel h2,
#marrakech .text-panel h2,
#meknes .text-panel h2,
#rabat .text-panel h2{
  font-size:clamp(2.75rem,3.85vw,4.25rem)!important;
  line-height:1.02!important;
}

#fes .city-note,
#marrakech .city-note,
#meknes .city-note,
#rabat .city-note{
  font-size:1.12rem!important;
  line-height:1.25!important;
  margin-top:.7rem!important;
}

#fes .text-panel p,
#marrakech .text-panel p,
#meknes .text-panel p,
#rabat .text-panel p{
  font-size:.92rem!important;
  line-height:1.43!important;
  margin-top:.8rem!important;
}

#fes .key-row,
#marrakech .key-row,
#meknes .key-row,
#rabat .key-row{
  gap:10px!important;
  margin-top:16px!important;
}

#fes .key,
#marrakech .key,
#meknes .key,
#rabat .key{
  padding:12px!important;
  background:white!important;
  border:1px solid rgba(201,154,66,.16)!important;
  border-radius:18px!important;
}

#fes .key b,
#marrakech .key b,
#meknes .key b,
#rabat .key b{
  font-size:.9rem!important;
  color:#0b4a3d!important;
}

#fes .key span,
#marrakech .key span,
#meknes .key span,
#rabat .key span{
  font-size:.78rem!important;
  line-height:1.35!important;
}

#fes .photo-mosaic.six-rect,
#marrakech .photo-mosaic.six-rect,
#meknes .photo-mosaic.six-rect,
#rabat .photo-mosaic.six-rect{
  height:500px!important;
  min-height:500px!important;
  align-self:stretch!important;
  grid-template-rows:repeat(3,1fr)!important;
  gap:14px!important;
}

#fes .photo-mosaic.six-rect .tile.main,
#marrakech .photo-mosaic.six-rect .tile.main,
#meknes .photo-mosaic.six-rect .tile.main,
#rabat .photo-mosaic.six-rect .tile.main{
  height:auto!important;
  min-height:0!important;
  grid-row:1 / span 3!important;
  align-self:stretch!important;
}

#fes .photo-mosaic.six-rect .tile:not(.main),
#marrakech .photo-mosaic.six-rect .tile:not(.main),
#meknes .photo-mosaic.six-rect .tile:not(.main),
#rabat .photo-mosaic.six-rect .tile:not(.main){
  height:auto!important;
  min-height:0!important;
  align-self:stretch!important;
}

#fes .photo-mosaic.six-rect img,
#marrakech .photo-mosaic.six-rect img,
#meknes .photo-mosaic.six-rect img,
#rabat .photo-mosaic.six-rect img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

#fes .text-panel .eyebrow,
#meknes .text-panel .eyebrow,
#rabat .text-panel .eyebrow,
#marrakech .text-panel .eyebrow{
  color:#c8612d!important;
}

#fes .text-panel h2,
#meknes .text-panel h2,
#rabat .text-panel h2,
#marrakech .text-panel h2{
  color:#172c25!important;
}

#fes .city-note,
#meknes .city-note,
#rabat .city-note,
#marrakech .city-note{
  color:#6d416d!important;
}

#fes .text-panel p,
#meknes .text-panel p,
#rabat .text-panel p,
#marrakech .text-panel p{
  color:#6a5e4d!important;
}

@media(max-width:1220px){
  #route-voices .route-block{
    grid-template-columns:1fr!important;
  }

  #route-voices .route-menu,
  #route-voices .route-main,
  #route-voices .route-side,
  #fes .text-panel,
  #marrakech .text-panel,
  #meknes .text-panel,
  #rabat .text-panel,
  #fes .photo-mosaic.six-rect,
  #marrakech .photo-mosaic.six-rect,
  #meknes .photo-mosaic.six-rect,
  #rabat .photo-mosaic.six-rect{
    min-height:0!important;
    height:auto!important;
  }

  #route-voices .route-main{
    max-width:none!important;
    height:360px!important;
  }
}

#route-voices .route-menu{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
#route-voices .route-menu .btn,
#route-voices .route-menu .btn.green{
  margin-top:auto!important;
  transform:translateY(14px)!important;
  background:#d9792b!important;
  border-color:#d9792b!important;
  color:#fff!important;
}

#route-voices .route-side{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:repeat(3,1fr)!important;
  gap:14px!important;
}
#route-voices .route-side figure{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:transparent!important;
}
#route-voices .route-side figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:transparent!important;
}

#fes .photo-mosaic.six-rect .tile:not(.main),
#marrakech .photo-mosaic.six-rect .tile:not(.main),
#meknes .photo-mosaic.six-rect .tile:not(.main),
#rabat .photo-mosaic.six-rect .tile:not(.main),
#imperial-gallery .collected-gallery figure,
#architecture .arch-circle figure,
#continue .guide-img{
  background:transparent!important;
  overflow:hidden!important;
}

#fes .photo-mosaic.six-rect .tile:not(.main) img,
#marrakech .photo-mosaic.six-rect .tile:not(.main) img,
#meknes .photo-mosaic.six-rect .tile:not(.main) img,
#rabat .photo-mosaic.six-rect .tile:not(.main) img,
#imperial-gallery .collected-gallery figure img,
#architecture .arch-circle figure img,
#continue .guide-img img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  background:transparent!important;
}

#route-voices .route-main img,
#fes .photo-mosaic.six-rect .tile.main img,
#marrakech .photo-mosaic.six-rect .tile.main img,
#meknes .photo-mosaic.six-rect .tile.main img,
#rabat .photo-mosaic.six-rect .tile.main img{
  object-fit:cover!important;
  object-position:center center!important;
}

#route-voices .route-menu{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
}
#route-voices .route-menu .btn,
#route-voices .route-menu .btn.green{
  margin-top:auto !important;
  transform:translateY(34px) !important;
  background:#d9792b !important;
  border-color:#d9792b !important;
  color:#fff !important;
}

#route-voices .route-block{
  grid-template-columns:360px minmax(315px,355px) 430px !important;
  gap:18px !important;
}
#route-voices .route-side{
  width:430px !important;
  max-width:430px !important;
  height:500px !important;
  min-height:500px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  grid-template-rows:repeat(3,1fr) !important;
  gap:14px !important;
  justify-self:start !important;
}
#route-voices .route-side figure{
  overflow:hidden !important;
  border-radius:22px !important;
}
#route-voices .route-side img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}

#marrakech .photo-mosaic.six-rect > figure:nth-child(2) img{ object-position:center 76% !important; } 
#marrakech .photo-mosaic.six-rect > figure:nth-child(3) img{ object-position:center 74% !important; } 
#marrakech .photo-mosaic.six-rect > figure:nth-child(7) img{ object-position:center 72% !important; } 

#meknes .photo-mosaic.six-rect > figure:nth-child(6) img{ object-position:center 34% !important; } 

#rabat .photo-mosaic.six-rect > figure:nth-child(2) img{ object-position:center 72% !important; } 
#rabat .photo-mosaic.six-rect > figure:nth-child(5) img{ object-position:center 70% !important; } 
#rabat .photo-mosaic.six-rect > figure:nth-child(6) img{ object-position:center 72% !important; } 
#rabat .photo-mosaic.six-rect > figure:nth-child(7) img{ object-position:center 74% !important; } 

@media (max-width:1220px){
  #route-voices .route-block{
    grid-template-columns:1fr !important;
  }
  #route-voices .route-side{
    width:auto !important;
    max-width:none !important;
    height:auto !important;
    min-height:0 !important;
    justify-self:stretch !important;
  }
}

#route-voices .section-inner{
  max-width:1600px!important;
}
#route-voices .route-block{
  grid-template-columns:420px minmax(560px,1.05fr) 500px!important;
  gap:18px!important;
  align-items:start!important;
  margin-top:40px!important;
}
#route-voices .route-menu{
  height:650px!important;
  min-height:650px!important;
  padding:28px 28px 44px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
#route-voices .route-list{
  gap:10px!important;
  margin-top:20px!important;
}
#route-voices .route-item{
  padding:14px!important;
}
#route-voices .route-main{
  height:650px!important;
  min-height:650px!important;
}
#route-voices .route-main img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
#route-voices .route-side{
  width:500px!important;
  max-width:500px!important;
  min-width:500px!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,206px)!important;
  gap:14px!important;
  height:auto!important;
  min-height:0!important;
  align-self:start!important;
}
#route-voices .route-side figure{
  width:100%!important;
  height:206px!important;
  min-height:206px!important;
  margin:0!important;
  overflow:hidden!important;
}
#route-voices .route-side img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
#route-voices .route-menu .btn,
#route-voices .route-menu .btn.green{
  margin-top:auto!important;
  align-self:stretch!important;
  transform:translateY(22px)!important;
  background:#de7f30!important;
  border-color:#de7f30!important;
  color:#fff!important;
}

#marrakech .photo-mosaic.six-rect > figure:nth-child(2) img{ object-position:center 82%!important; } 
#marrakech .photo-mosaic.six-rect > figure:nth-child(3) img{ object-position:center 80%!important; } 
#marrakech .photo-mosaic.six-rect > figure:nth-child(7) img{ object-position:center 78%!important; } 
#meknes .photo-mosaic.six-rect > figure:nth-child(6) img{ object-position:center 34%!important; } 
#rabat .photo-mosaic.six-rect > figure:nth-child(2) img{ object-position:center 78%!important; } 
#rabat .photo-mosaic.six-rect > figure:nth-child(5) img{ object-position:center 72%!important; } 
#rabat .photo-mosaic.six-rect > figure:nth-child(6) img{ object-position:center 78%!important; } 
#rabat .photo-mosaic.six-rect > figure:nth-child(7) img{ object-position:center 80%!important; } 

@media (max-width:1220px){
  #route-voices .route-block{grid-template-columns:1fr!important;}
  #route-voices .route-menu,
  #route-voices .route-main{height:auto!important;min-height:0!important;}
  #route-voices .route-side{
    width:auto!important;max-width:none!important;min-width:0!important;
    grid-template-rows:repeat(3,180px)!important;
  }
  #route-voices .route-side figure{height:180px!important;min-height:180px!important;}
  #route-voices .route-menu .btn{transform:none!important;}
}

#route-voices .section-inner{
  width:min(1880px,97vw)!important;
  max-width:1880px!important;
}

#route-voices .route-block{
  width:100%!important;
  max-width:1840px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  display:grid!important;
  grid-template-columns:430px minmax(430px,520px) minmax(700px,1fr)!important;
  gap:26px!important;
  align-items:stretch!important;
  margin-top:46px!important;
}

#route-voices .route-menu,
#route-voices .route-main,
#route-voices .route-side{
  height:690px!important;
  min-height:690px!important;
  align-self:stretch!important;
}

#route-voices .route-menu{
  padding:30px!important;
  border-radius:36px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}

#route-voices .route-menu h3{
  font-size:clamp(2.8rem,3.1vw,3.65rem)!important;
  line-height:1!important;
}

#route-voices .route-menu p{
  font-size:1rem!important;
  line-height:1.5!important;
}

#route-voices .route-list{
  gap:12px!important;
  margin-top:22px!important;
}

#route-voices .route-item{
  padding:15px!important;
  border-radius:20px!important;
  grid-template-columns:42px 1fr!important;
}

#route-voices .route-number{
  width:42px!important;
  height:42px!important;
  font-size:1rem!important;
}

#route-voices .route-item b{
  font-size:1rem!important;
}

#route-voices .route-item span{
  font-size:.88rem!important;
  line-height:1.45!important;
}

#route-voices .route-main{
  max-width:520px!important;
  width:100%!important;
  border-radius:34px!important;
  overflow:hidden!important;
}

#route-voices .route-main img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

#route-voices .route-side{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,1fr)!important;
  gap:16px!important;
}

#route-voices .route-side figure{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  border-radius:26px!important;
  overflow:hidden!important;
  margin:0!important;
}

#route-voices .route-side img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

#route-voices .route-menu .btn,
#route-voices .route-menu .btn.green{
  margin-top:auto!important;
  transform:translateY(28px)!important;
  background:#d9792b!important;
  border-color:#d9792b!important;
  color:#fff!important;
  padding:1rem 1.2rem!important;
  font-size:1rem!important;
}

@media(max-width:1320px){
  #route-voices .route-block{
    grid-template-columns:1fr!important;
  }
  #route-voices .route-menu,
  #route-voices .route-main,
  #route-voices .route-side{
    height:auto!important;
    min-height:0!important;
  }
  #route-voices .route-main{
    max-width:none!important;
    height:520px!important;
  }
  #route-voices .route-side{
    grid-template-rows:repeat(3,220px)!important;
  }
}

#route-voices {
  background:
    linear-gradient(rgba(80,129,134,0.90), rgba(80,129,134,0.90)),
    url("/assets/images/exotic-morocco-discover-background-008.webp") center/420px repeat !important;
}
#route-voices .section-inner {
  width:min(1880px,97vw)!important;
  max-width:1880px!important;
}
#route-voices .section-title,
#route-voices > .section-inner > h2,
#route-voices h2 {
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
#route-voices > .section-inner > p,
#route-voices .section-intro,
#route-voices .intro,
#route-voices .lead {
  text-align:center!important;
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
#route-voices .route-block {
  margin-left:auto!important;
  margin-right:auto!important;
  align-items:center!important;
}
#route-voices .route-menu {
  text-align:center!important;
  align-items:center!important;
  background:rgba(14,74,78,0.92)!important;
}
#route-voices .route-menu h3,
#route-voices .route-menu p {
  text-align:center!important;
}
#route-voices .route-list {
  width:100%!important;
}
#route-voices .route-item {
  align-items:center!important;
}
#route-voices .route-item > div,
#route-voices .route-item .route-copy {
  text-align:left!important;
}
#route-voices .route-menu .btn,
#route-voices .route-menu .btn.green {
  width:auto!important;
  min-width:0!important;
  max-width:220px!important;
  padding:0.9rem 1.15rem!important;
  font-size:0.96rem!important;
  line-height:1.1!important;
  margin-top:auto!important;
  margin-bottom:0!important;
  transform:none!important;
  align-self:center!important;
  display:inline-flex!important;
  justify-content:center!important;
}
#route-voices .route-main,
#route-voices .route-side {
  align-self:center!important;
}
@media (max-width:1320px) {
  #route-voices .route-menu {
    align-items:stretch!important;
  }
  #route-voices .route-menu .btn,
  #route-voices .route-menu .btn.green {
    align-self:center!important;
  }
}

#route-voices{
  background:
    linear-gradient(rgba(47,96,101,0.94), rgba(47,96,101,0.94)),
    var(--em-zellige-user) center/420px repeat !important;
}

#route-voices .section-inner{
  width:min(1880px,97vw)!important;
  max-width:1880px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

#route-voices h2,
#route-voices .lead,
#route-voices > .section-inner > p{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

#route-voices .route-block{
  width:max-content!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  justify-content:center!important;
  align-items:stretch!important;
  grid-template-columns:430px 520px 760px!important;
  gap:26px!important;
}

#route-voices .route-menu,
#route-voices .route-main,
#route-voices .route-side{
  align-self:stretch!important;
}

#route-voices .route-side{
  width:760px!important;
  max-width:760px!important;
  justify-self:center!important;
}

#route-voices .route-menu .btn,
#route-voices .route-menu .btn.green{
  margin-top:auto!important;
  transform:translateY(42px)!important;
  background:#d9792b!important;
  border-color:#d9792b!important;
  color:#fff!important;
  max-width:220px!important;
  align-self:center!important;
}

@media(max-width:1320px){
  #route-voices .route-block{
    width:100%!important;
    grid-template-columns:1fr!important;
  }
  #route-voices .route-side{
    width:100%!important;
    max-width:none!important;
  }
  #route-voices .route-menu .btn,
  #route-voices .route-menu .btn.green{
    transform:none!important;
  }
}

#route-voices{
  background-color:#45757a!important;
  background-image:
    linear-gradient(rgba(69,117,122,.91), rgba(69,117,122,.91)),
    url("/assets/images/exotic-morocco-discover-background-008.webp")!important;
  background-repeat:repeat, repeat!important;
  background-size:auto, 430px auto!important;
  background-position:center, center!important;
  color:#fff!important;
}

#route-voices::before{
  opacity:.16!important;
  background-image:url("/assets/images/exotic-morocco-discover-background-008.webp")!important;
  background-repeat:repeat!important;
  background-size:430px auto!important;
  background-position:center!important;
  mix-blend-mode:screen!important;
}

#route-voices .section-inner,
#route-voices .route-block{
  position:relative!important;
  z-index:1!important;
}

#route-voices h2,
#route-voices .lead,
#route-voices > .section-inner > p{
  color:#fff!important;
}

#route-voices .route-menu .btn,
#route-voices .route-menu .btn.green{
  margin-top:auto!important;
  margin-bottom:10px!important;
  transform:none!important;
  background:#d9792b!important;
  border-color:#d9792b!important;
  color:#fff!important;
  max-width:220px!important;
  align-self:center!important;
  display:inline-flex!important;
  justify-content:center!important;
}

#route-voices .route-city,
#route-voices .route-item b{
  color:#cfe5f2 !important;
}
#route-voices .route-item b{
  font-weight:700 !important;
}

#route-voices{
  background-color:#315f64!important;
  background-image:
    linear-gradient(rgba(34,82,87,.94), rgba(34,82,87,.94)),
    var(--em-zellige-user)!important;
  background-repeat:repeat, repeat!important;
  background-size:auto, 430px auto!important;
  background-position:center, center!important;
}

#route-voices .route-menu{
  padding-bottom:32px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}

#route-voices .route-list{
  margin-bottom:26px!important;
}

#route-voices .route-menu .btn,
#route-voices .route-menu a.btn,
#route-voices .route-menu .btn.green{
  margin-top:26px!important;
  margin-bottom:0!important;
  transform:none!important;
  position:relative!important;
  top:auto!important;
  bottom:auto!important;
  align-self:center!important;
  display:inline-flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:auto!important;
  min-width:180px!important;
  max-width:230px!important;
  padding:.92rem 1.2rem!important;
  background:#f1c979!important;
  border-color:#f1c979!important;
  color:#173b35!important;
  box-shadow:0 16px 34px rgba(0,0,0,.18)!important;
}

#route-voices .route-menu .btn *,
#route-voices .route-menu a.btn *{
  color:#173b35!important;
}

#route-voices{
  position:relative!important;
  overflow:hidden!important;
  background:#315f64!important;
  background-image:none!important;
  color:#fff!important;
}

#route-voices::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  background-image:url("/assets/images/exotic-morocco-discover-background-008.webp")!important;
  background-repeat:repeat!important;
  background-size:420px auto!important;
  background-position:center!important;
  opacity:.28!important;
  mix-blend-mode:screen!important;
  pointer-events:none!important;
  z-index:0!important;
}

#route-voices::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:rgba(25,70,75,.30)!important;
  pointer-events:none!important;
  z-index:0!important;
}

#route-voices .section-inner,
#route-voices .route-block,
#route-voices .route-menu,
#route-voices .route-main,
#route-voices .route-side{
  position:relative!important;
  z-index:1!important;
}

.site-header{
  position:fixed !important;
  top:46px !important;
  left:0 !important;
  right:0 !important;
  z-index:99999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:0 72px !important;
  background:transparent !important;
  background-image:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border:0 !important;
  box-shadow:none !important;
  pointer-events:none !important;
}
.site-header::before,
.site-header::after{
  display:none !important;
  content:none !important;
}
.site-header .logo,
.site-header .nav{
  pointer-events:auto !important;
}
.logo{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}
.logo img{
  width:92px !important;
  height:92px !important;
  object-fit:cover !important;
  border-radius:50% !important;
  filter:drop-shadow(0 12px 26px rgba(0,0,0,.34)) !important;
}
.nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:wrap !important;
  gap:14px 22px !important;
  max-width:min(1040px,78vw) !important;
  transform:translateY(9px) !important;
}
.nav a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
  text-transform:none !important;
  text-shadow:0 2px 13px rgba(0,0,0,.50) !important;
  cursor:pointer !important;
  opacity:.98 !important;
}
.nav a:hover,
.nav .shop{
  color:#ffd498 !important;
}
section[id]{
  scroll-margin-top:18px !important;
}
@media(max-width:1180px){
  .site-header{
    top:28px !important;
    padding:0 28px !important;
    align-items:flex-start !important;
  }
  .logo img{
    width:76px !important;
    height:76px !important;
  }
  .nav{
    gap:10px 14px !important;
    max-width:calc(100vw - 130px) !important;
    transform:translateY(8px) !important;
  }
  .nav a{
    font-size:12px !important;
  }
}
@media(max-width:760px){
  .site-header{
    top:18px !important;
    padding:0 18px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:10px !important;
  }
  .logo img{
    width:66px !important;
    height:66px !important;
  }
  .nav{
    max-width:100% !important;
    justify-content:flex-start !important;
    transform:none !important;
    gap:8px 12px !important;
  }
  .nav a{
    font-size:11px !important;
  }
}

.site-header{
  position:absolute !important;
  top:34px !important;
  left:0 !important;
  right:0 !important;
  z-index:30 !important;
  padding:0 72px !important;
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  pointer-events:none !important;
}
.site-header .logo,
.site-header .nav{ pointer-events:auto !important; }
.site-header::before,
.site-header::after{ display:none !important; content:none !important; }
.logo img{
  width:92px !important;
  height:92px !important;
  object-fit:cover !important;
  border-radius:50% !important;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.30)) !important;
}
.nav{ transform:translateY(8px) !important; }

@media (min-width:821px) and (max-width:1180px){
  .site-header .nav{gap:16px !important;font-size:13px !important;}
}
@media (min-width:1181px) and (max-width:1360px){
  .site-header .nav{gap:20px !important;}
}

.em-global-footer{
  --em-footer-bg:#213b52;
  --em-footer-text:#f7f4ec;
  --em-footer-soft:rgba(247,244,236,.84);
  --em-footer-muted:rgba(247,244,236,.72);
  --em-footer-link:#f7f4ec;
  background:#213b52 !important;
  color:var(--em-footer-text) !important;
  font-family:Inter,Arial,Helvetica,sans-serif !important;
  width:100% !important;
  margin:0 !important;
  padding:clamp(42px,5.6vw,70px) 0 clamp(24px,3vw,34px) !important;
  min-height:0 !important;
  overflow:hidden !important;
  position:relative !important;
  z-index:4 !important;
  text-align:left !important;
}

.em-global-footer,
.em-global-footer *{
  box-sizing:border-box !important;
}

.em-global-footer a{
  color:var(--em-footer-link) !important;
  text-decoration:none !important;
}

.em-footer-shell{
  width:min(1480px,calc(100% - 64px)) !important;
  margin:0 auto !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:minmax(260px,1.12fr) repeat(5,minmax(145px,.92fr)) !important;
  gap:clamp(24px,2.45vw,44px) !important;
  align-items:start !important;
}

.em-footer-brand,
.em-footer-col{
  padding:0 !important;
  margin:0 !important;
  min-height:0 !important;
  height:auto !important;
  width:auto !important;
  max-width:none !important;
  display:block !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  text-align:left !important;
}

.em-footer-brand{
  max-width:320px !important;
}

.em-footer-logo{
  width:82px !important;
  height:82px !important;
  border-radius:50% !important;
  overflow:hidden !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 0 32px !important;
  padding:0 !important;
  background:rgba(255,255,255,.06) !important;
  box-shadow:none !important;
}

.em-footer-logo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  max-width:none !important;
}

.em-footer-brand h2{
  font-family:Inter,Arial,Helvetica,sans-serif !important;
  font-size:16px !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  margin:0 0 18px !important;
  color:#fff !important;
  letter-spacing:-.01em !important;
  text-transform:none !important;
}

.em-footer-brand p{
  font-family:Inter,Arial,Helvetica,sans-serif !important;
  font-size:15px !important;
  line-height:1.72 !important;
  color:var(--em-footer-soft) !important;
  margin:0 0 20px !important;
  max-width:320px !important;
  letter-spacing:0 !important;
}

.em-footer-brand .em-footer-copyright{
  font-weight:800 !important;
  color:#fff !important;
  margin-top:26px !important;
  line-height:1.55 !important;
}

.em-footer-col{
  min-width:0 !important;
}

.em-footer-col h3{
  font-family:Inter,Arial,Helvetica,sans-serif !important;
  font-size:15px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  color:#fff !important;
  margin:3px 0 18px !important;
  letter-spacing:-.01em !important;
  text-transform:none !important;
}

.em-footer-col ul{
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  gap:12px !important;
}

.em-footer-col li{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.em-footer-col a{
  font-family:Inter,Arial,Helvetica,sans-serif !important;
  font-size:14.5px !important;
  color:rgba(247,244,236,.84) !important;
  line-height:1.38 !important;
  display:inline-block !important;
  transition:color .18s ease,opacity .18s ease !important;
}

.em-footer-col a:hover{
  color:#fff !important;
  opacity:1 !important;
}

.em-footer-social{
  width:min(1480px,calc(100% - 64px)) !important;
  margin:clamp(34px,4.3vw,56px) auto 0 !important;
  padding:0 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:22px !important;
}

.em-footer-social a{
  width:24px !important;
  height:24px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  font-size:24px !important;
  font-weight:800 !important;
  line-height:1 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  opacity:.96 !important;
  text-transform:lowercase !important;
}

.em-footer-social a[aria-label="YouTube"]{
  font-size:20px !important;
}

.em-footer-social a:hover{
  opacity:.78 !important;
}

@media(max-width:1280px){
  .em-footer-shell{
    grid-template-columns:minmax(260px,1.1fr) repeat(3,minmax(180px,1fr)) !important;
    gap:36px 44px !important;
  }
}

@media(max-width:980px){
  .em-footer-shell{
    width:min(100% - 44px,900px) !important;
    grid-template-columns:1fr 1fr !important;
    gap:34px 46px !important;
  }

  .em-footer-brand{
    max-width:none !important;
    grid-column:1 / -1 !important;
  }

  .em-footer-brand p{
    max-width:560px !important;
  }

  .em-footer-social{
    width:min(100% - 44px,900px) !important;
  }
}

@media(max-width:620px){
  .em-global-footer{
    padding:42px 0 26px !important;
  }

  .em-footer-shell{
    width:min(100% - 34px,520px) !important;
    grid-template-columns:1fr !important;
    gap:34px !important;
  }

  .em-footer-brand{
    grid-column:auto !important;
  }

  .em-footer-logo{
    width:72px !important;
    height:72px !important;
    margin-bottom:20px !important;
  }

  .em-footer-col h3{
    margin-bottom:14px !important;
  }

  .em-footer-col ul{
    gap:10px !important;
  }

  .em-footer-social{
    width:min(100% - 34px,520px) !important;
    justify-content:flex-start !important;
    margin-top:34px !important;
  }
}

.nav .em-nav-search{
  appearance:none;
  border:0;
  background:rgba(255,255,255,.12);
  color:#fff;
  width:36px;
  height:36px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  padding:0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),0 8px 24px rgba(0,0,0,.16);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.nav .em-nav-search svg{
  width:18px;
  height:18px;
  fill:currentColor;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.28));
}
.nav .em-nav-search:hover,
.nav .em-nav-search:focus-visible{
  background:rgba(255,255,255,.22);
  outline:2px solid rgba(255,215,138,.62);
  outline-offset:3px;
}
.em-site-search-overlay[hidden]{
  display:none !important;
}
.em-site-search-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding:clamp(88px,10vh,124px) 22px 32px;
  background:rgba(20,29,35,.58);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.em-site-search-panel{
  position:relative;
  width:min(760px,100%);
  border-radius:34px;
  background:linear-gradient(180deg,#fffaf3 0%,#f4eadc 100%);
  box-shadow:0 30px 90px rgba(0,0,0,.32);
  padding:clamp(28px,4vw,46px);
  border:1px solid rgba(255,255,255,.72);
}
.em-site-search-close{
  position:absolute;
  top:18px;
  right:20px;
  width:40px;
  height:40px;
  border-radius:999px;
  border:0;
  background:#213b52;
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.em-site-search-kicker{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-weight:900;
  color:#f39200;
  margin:0 0 12px;
}
.em-site-search-panel h2{
  font-size:clamp(38px,5vw,68px);
  line-height:.92;
  color:#213b52;
  margin:0 44px 14px 0;
}
.em-site-search-intro{
  max-width:620px;
  font-size:16px;
  color:rgba(33,59,82,.78);
  margin:0 0 24px;
}
.em-site-search-label{
  display:block;
  font-family:Arial,Helvetica,sans-serif;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:900;
  color:#213b52;
  margin:0 0 10px;
}
.em-site-search-input{
  width:100%;
  border:0;
  outline:0;
  border-radius:999px;
  padding:18px 22px;
  font-size:17px;
  color:#213b52;
  background:#fff;
  box-shadow:inset 0 0 0 1px rgba(33,59,82,.13),0 12px 26px rgba(33,59,82,.09);
}
.em-site-search-input:focus{
  box-shadow:inset 0 0 0 2px rgba(243,146,0,.72),0 12px 26px rgba(33,59,82,.11);
}
.em-site-search-results{
  display:grid;
  gap:10px;
  margin-top:20px;
}
.em-site-search-result{
  display:block;
  padding:15px 17px;
  border-radius:20px;
  background:rgba(255,255,255,.76);
  box-shadow:inset 0 0 0 1px rgba(33,59,82,.08);
  color:#213b52;
  text-decoration:none;
}
.em-site-search-result strong{
  display:block;
  font-size:16px;
  color:#213b52;
  margin:0 0 4px;
}
.em-site-search-result span{
  display:block;
  font-family:Arial,Helvetica,sans-serif;
  font-size:13px;
  line-height:1.45;
  color:rgba(33,59,82,.72);
}
.em-site-search-empty{
  padding:14px 0 0;
  color:rgba(33,59,82,.72);
  font-family:Arial,Helvetica,sans-serif;
  font-size:14px;
}
@media (max-width:760px){
  .nav .em-nav-search{
    width:34px;
    height:34px;
  }
  .em-site-search-overlay{
    padding-top:76px;
  }
  .em-site-search-panel{
    border-radius:26px;
  }
}

.nav .em-nav-search{
  appearance:none !important;
  border:0 !important;
  background:transparent !important;
  color:#fff !important;
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  border-radius:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  padding:0 !important;
  margin-left:-2px !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.nav .em-nav-search svg{
  width:18px !important;
  height:18px !important;
  fill:currentColor !important;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.32)) !important;
}
.nav .em-nav-search:hover,
.nav .em-nav-search:focus-visible{
  color:#ffd78a !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
}
.nav .em-nav-search:focus-visible svg{
  filter:drop-shadow(0 0 10px rgba(255,215,138,.58)) !important;
}

:root{
  --serif:Georgia,"Times New Roman",serif;
  --sans:Arial,Helvetica,sans-serif;
  --em-home-serif:Georgia,"Times New Roman",serif;
  --em-home-sans:Arial,Helvetica,sans-serif;
  --em-home-petrol:#2f5863;
  --em-home-orange-dark:#a66f00;
}
body{
  font-family:var(--em-home-serif) !important;
  font-size:16px !important;
  font-weight:400 !important;
  text-rendering:optimizeLegibility !important;
  -webkit-font-smoothing:antialiased !important;
  -moz-osx-font-smoothing:grayscale !important;
}
p{
  font-family:var(--em-home-sans) !important;
  font-size:16px !important;
  font-weight:400 !important;
  line-height:1.6 !important;
}
h1,h2,h3,h4{
  font-family:var(--em-home-serif) !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
}
h1{
  font-size:clamp(46px,6vw,92px) !important;
  line-height:.95 !important;
}
h2{
  font-size:clamp(38px,4.4vw,72px) !important;
  line-height:.96 !important;
}
h3{
  font-size:32px !important;
  line-height:.98 !important;
}
h4{
  font-size:24px !important;
  line-height:1.1 !important;
}
a,button,input,select,textarea,.btn,.pill,.caption,.route-item,.key,.marker,.guide-card a{
  font-family:var(--em-home-sans) !important;
}
.eyebrow{
  display:block !important;
  margin:0 0 12px !important;
  font-family:var(--em-home-sans) !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}
.eyebrow::before{
  display:none !important;
  content:none !important;
}
.lead,
.em-section > .section-inner > p.lead,
#intro .intro-card .lead,
#architecture .arch-text .lead,
#imperial-gallery .gallery-head .lead,
#map .map-card .lead{
  margin-top:14px !important;
  font-family:var(--em-home-sans) !important;
  font-size:18px !important;
  font-weight:400 !important;
  line-height:1.6 !important;
}
.hero{
  min-height:100vh !important;
  display:flex !important;
  align-items:center !important;
  padding-top:130px !important;
  padding-right:72px !important;
  padding-bottom:88px !important;
  padding-left:72px !important;
}
.hero-copy{
  width:min(620px,calc(100% - 152px)) !important;
  max-width:620px !important;
  margin-left:76px !important;
  padding-left:14px !important;
}
.hero .eyebrow{
  color:#ffd78a !important;
  margin-bottom:12px !important;
}
.hero h1{
  color:#fff !important;
  font-size:clamp(46px,6vw,92px) !important;
  font-weight:700 !important;
  line-height:.95 !important;
  letter-spacing:-.045em !important;
  text-shadow:0 16px 38px rgba(0,0,0,.45) !important;
  text-wrap:balance !important;
}
.hero-sub{
  margin-top:16px !important;
  font-family:var(--em-home-serif) !important;
  font-size:clamp(24px,2.2vw,34px) !important;
  font-weight:700 !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  color:#ffe0a0 !important;
}
.hero p{
  max-width:560px !important;
  margin-top:24px !important;
  font-family:var(--em-home-sans) !important;
  font-size:clamp(17px,2vw,22px) !important;
  font-weight:400 !important;
  line-height:1.65 !important;
  color:rgba(255,255,255,.94) !important;
  text-shadow:0 4px 16px rgba(0,0,0,.44) !important;
}
.hero .btn-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:30px !important;
  font-family:var(--em-home-sans) !important;
}
.hero .btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:0 !important;
  padding:13px 22px !important;
  border-radius:999px !important;
  font-family:var(--em-home-sans) !important;
  font-size:16px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  box-shadow:0 16px 34px rgba(0,0,0,.15) !important;
}
.hero .btn.gold{
  background:var(--em-home-orange-dark) !important;
  border-color:var(--em-home-orange-dark) !important;
  color:#fff !important;
}
.hero .btn.ghost{
  background:rgba(255,255,255,.16) !important;
  border-color:rgba(255,255,255,.28) !important;
  color:#fff !important;
  box-shadow:none !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}
.hero-pills{
  margin-top:28px !important;
}
.pill{
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}
.em-section > .section-inner > h2,
.gallery-head h2,
.arch-text h2,
.map-card h2,
.text-panel h2,
.intro-card h2{
  font-family:var(--em-home-serif) !important;
  font-size:clamp(38px,4.4vw,72px) !important;
  font-weight:700 !important;
  line-height:.96 !important;
  letter-spacing:-.045em !important;
}
#intro .intro-card p:not(.lead),
#architecture .arch-text p:not(.lead),
#map .map-card p:not(.lead),
.text-panel p:not(.city-note),
.why-card p,
.voice-copy p,
.power-card p,
.arch-circle p,
.guide-copy p,
.city-circle-card p{
  font-family:var(--em-home-sans) !important;
  font-size:15px !important;
  font-weight:400 !important;
  line-height:1.6 !important;
}
#intro .intro-card p:not(.lead),
#architecture .arch-text p:not(.lead),
#map .map-card p:not(.lead),
.text-panel p:not(.city-note){
  font-size:16px !important;
  margin-top:14px !important;
}
.city-note{
  margin-top:14px !important;
  font-family:var(--em-home-serif) !important;
  font-size:18px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  letter-spacing:-.01em !important;
}
.city-circle-card h4,
.why-card h4,
.power-card h4,
.arch-circle h4{
  font-family:var(--em-home-serif) !important;
  font-size:24px !important;
  font-weight:700 !important;
  line-height:1.1 !important;
  letter-spacing:-.035em !important;
}
.city-circle-card h4{
  margin-top:14px !important;
}
.voice-copy h3,
.guide-copy h4,
.route-menu h3{
  font-family:var(--em-home-serif) !important;
  font-size:32px !important;
  font-weight:700 !important;
  line-height:.98 !important;
  letter-spacing:-.045em !important;
}
.route-menu > div > p{
  margin-top:14px !important;
  font-family:var(--em-home-sans) !important;
  font-size:16px !important;
  line-height:1.6 !important;
}
.route-item b,
.key b,
.guide-copy a{
  font-family:var(--em-home-sans) !important;
  font-weight:900 !important;
  line-height:1.3 !important;
}
.route-item b{
  font-size:16px !important;
}
.route-item span{
  margin-top:2px !important;
  font-family:var(--em-home-sans) !important;
  font-size:14px !important;
  line-height:1.45 !important;
}
.key b{
  font-size:14px !important;
  line-height:1.25 !important;
}
.key span{
  margin-top:4px !important;
  font-family:var(--em-home-sans) !important;
  font-size:13px !important;
  line-height:1.4 !important;
}
.caption{
  font-family:var(--em-home-sans) !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
}
.marker strong,
.marker small{
  font-family:var(--em-home-sans) !important;
}
.marker strong{
  font-weight:900 !important;
}
@media(max-width:820px){
  h1,.hero h1{
    font-size:clamp(40px,11vw,60px) !important;
  }
  h2,
  .em-section > .section-inner > h2,
  .gallery-head h2,
  .arch-text h2,
  .map-card h2,
  .text-panel h2,
  .intro-card h2{
    font-size:38px !important;
    line-height:.96 !important;
  }
  .hero{
    min-height:760px !important;
    padding-top:170px !important;
    padding-right:20px !important;
    padding-bottom:64px !important;
    padding-left:20px !important;
  }
  .hero-copy{
    width:min(620px,calc(100% - 48px)) !important;
    max-width:620px !important;
    margin-left:24px !important;
    padding-left:14px !important;
  }
  .hero-sub{
    margin-top:14px !important;
    font-size:clamp(22px,7vw,30px) !important;
    line-height:1.1 !important;
  }
  .hero p{
    margin-top:24px !important;
    font-size:17px !important;
    line-height:1.65 !important;
  }
  .lead,
  .em-section > .section-inner > p.lead,
  #intro .intro-card .lead,
  #architecture .arch-text .lead,
  #imperial-gallery .gallery-head .lead{
    font-size:18px !important;
    line-height:1.6 !important;
  }
  .voice-copy h3,
  .guide-copy h4{
    font-size:28px !important;
  }
  .city-circle-card h4,
  .why-card h4,
  .power-card h4,
  .arch-circle h4{
    font-size:22px !important;
  }
}
@media(max-width:480px){
  .hero{
    padding-right:20px !important;
    padding-left:20px !important;
  }
  .hero-copy{
    padding-left:14px !important;
  }
  .hero .btn-row{
    align-items:stretch !important;
  }
  .hero .btn{
    width:100% !important;
  }
  .hero-pills{
    gap:8px !important;
  }
  .pill{
    font-size:13px !important;
  }
}

#route-voices::before,
  #voices::before,
  #architecture::before,
  #continue::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background-image: url("/assets/images/exotic-morocco-discover-background-008.webp") !important;
    background-color: transparent !important;
    background-repeat: repeat !important;
    background-size: 2048px auto !important;
    background-position: center !important;
    mix-blend-mode: multiply !important;
    opacity: .24 !important;
  }

  #route-voices > .section-inner,
  #voices > .section-inner,
  #architecture > .section-inner,
  #continue > .section-inner {
    position: relative !important;
    z-index: 2 !important;
  }

#route-voices,
  #voices,
  #architecture,
  #continue {
    position: relative !important;
    overflow: hidden !important;
  }

  #route-voices::before,
  #voices::before,
  #architecture::before,
  #continue::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background-image: url("/assets/images/exotic-morocco-discover-background-008.webp") !important;
    background-color: transparent !important;
    background-repeat: repeat !important;
    background-size: 2048px auto !important;
    background-position: center !important;
    mix-blend-mode: multiply !important;
    opacity: .16 !important;
  }

  #route-voices {
    background: #213b52 !important;
    background-color: #213b52 !important;
    color: #ffffff !important;
  }

  #route-voices::after {
    content: none !important;
    display: none !important;
    background: none !important;
  }

  #route-voices .route-menu {
    background: #213b52 !important;
    background-color: #213b52 !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    color: #ffffff !important;
  }

  #architecture {
    background: #3b2418 !important;
    background-color: #3b2418 !important;
    color: #ffffff !important;
  }

  #architecture .eyebrow,
  #architecture h2,
  #architecture h3,
  #architecture h4,
  #architecture p,
  #architecture .lead,
  #architecture .arch-text p,
  #architecture .arch-text p.lead,
  #architecture .arch-text p:not(.lead) {
    color: #ffffff !important;
  }

  #route-voices > .section-inner,
  #voices > .section-inner,
  #architecture > .section-inner,
  #continue > .section-inner {
    position: relative !important;
    z-index: 2 !important;
  }

#architecture {
    background: #857469 !important;
    background-color: #857469 !important;
  }

  #architecture::before {
    opacity: .10 !important;
  }

  #architecture .eyebrow,
  #architecture h2,
  #architecture h3,
  #architecture h4,
  #architecture .arch-circle h4,
  #architecture .arch-text .eyebrow,
  #architecture .arch-text h2 {
    color: #ffffff !important;
  }

  #voices .voice-card,
  #voices .voice-copy {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
  }

  #voices .voice-card h3,
  #voices .voice-copy h3,
  #voices .voice-card h4,
  #voices .voice-copy h4 {
    color: #E07A5F !important;
  }

  #voices .voice-card p,
  #voices .voice-copy p {
    color: #000000 !important;
  }

  #intro,
  #map {
    position: relative !important;
    overflow: hidden !important;
    background-image: none !important;
  }

  #intro::before,
  #map::before {
    content: none !important;
    display: none !important;
    background: none !important;
  }

  #intro::after,
  #map::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background-image: none !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center !important;
    opacity: .38 !important;
  }

  #intro > .section-inner,
  #map > .section-inner {
    position: relative !important;
    z-index: 2 !important;
  }

  #imperial-gallery::after {
    content: none !important;
    display: none !important;
    background: none !important;
    background-image: none !important;
    opacity: 0 !important;
  }

#route-voices .route-menu .btn,
#route-voices .route-menu a.btn,
#route-voices .route-menu .btn.green{
  margin-top:14px!important;
  margin-bottom:0!important;
  transform:translateY(-12px)!important;
  position:relative!important;
  align-self:center!important;
}

#voices{
  background:#705241!important;
  background-image:linear-gradient(135deg,#5f4335 0%,#705241 48%,#8b6a56 100%)!important;
  color:#ffffff!important;
}
#voices::before{
  opacity:.16!important;
  mix-blend-mode:multiply!important;
  background-size:2048px auto!important;
}
#voices .eyebrow,
#voices h2,
#voices .lead{
  color:#ffffff!important;
}
#voices .voice-card{
  background:#ffffff!important;
  border:1px solid rgba(64,39,25,.12)!important;
  color:#000000!important;
  box-shadow:0 26px 64px rgba(38,23,15,.18)!important;
}
#voices .voice-copy h3{
  color:#E07A5F!important;
}
#voices .voice-copy p{
  color:#000000!important;
}

#architecture{
  background:#74645b!important;
  color:#ffffff!important;
}
#architecture::before{
  opacity:.10!important;
  mix-blend-mode:multiply!important;
  background-size:2048px auto!important;
}
#architecture .eyebrow,
#architecture .arch-text .eyebrow,
#architecture h2,
#architecture .arch-text h2,
#architecture .section-inner > h2{
  color:#ffffff!important;
}
#architecture .arch-text p,
#architecture .arch-text p.lead,
#architecture .arch-text p:not(.lead),
#architecture .arch-circle h4,
#architecture .arch-circle p{
  color:rgba(255,255,255,.92)!important;
}

.site-header{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:20 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  height:auto !important;
  padding:28px 64px !important;
  color:#fff !important;
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  pointer-events:auto !important;
}
.site-header::before,
.site-header::after{
  display:none !important;
  content:none !important;
}
.site-header .logo{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
  line-height:1 !important;
  flex:0 0 auto !important;
  pointer-events:auto !important;
}
.site-header .logo img{
  width:70px !important;
  height:70px !important;
  object-fit:contain !important;
  border-radius:0 !important;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.35)) !important;
}
.site-header .nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:26px !important;
  max-width:none !important;
  padding:0 !important;
  margin:0 !important;
  transform:none !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:14px !important;
  line-height:1 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  color:#fff !important;
  pointer-events:auto !important;
}
.site-header .nav a{
  color:#fff !important;
  text-shadow:0 2px 12px rgba(0,0,0,.35) !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:14px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  white-space:nowrap !important;
}
.site-header .nav a:hover,
.site-header .nav .shop,
.site-header .nav .is-active{
  color:#ffd78a !important;
}
.site-header .nav .shop{
  font-weight:900 !important;
}
.site-header .nav .em-nav-search{
  flex:0 0 auto !important;
}
.hero{
  min-height:100vh !important;
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  overflow:hidden !important;
  color:#fff !important;
  background:#051f1b !important;
  padding:0 !important;
  isolation:isolate !important;
}
.hero-bg{
  position:absolute !important;
  inset:0 !important;
  z-index:-3 !important;
  margin:0 !important;
}
.hero-bg img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  filter:none !important;
  transform:none !important;
}
.hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
  background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.50) 42%,rgba(0,0,0,.14) 72%,rgba(0,0,0,.25)) !important;
  pointer-events:none !important;
}
.hero::after{
  display:none !important;
  content:none !important;
}
.hero-inner{
  width:100% !important;
  padding:170px 76px 100px !important;
  position:relative !important;
  z-index:1 !important;
}
.hero-copy{
  max-width:760px !important;
  position:relative !important;
  z-index:1 !important;
}
.hero .kicker{
  display:block !important;
  font-family:Arial,Helvetica,sans-serif !important;
  text-transform:uppercase !important;
  letter-spacing:.18em !important;
  color:#ffd78a !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  margin:0 0 12px !important;
}
.hero h1{
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:clamp(62px,7vw,116px) !important;
  line-height:.88 !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
  color:#fff !important;
  margin:0 !important;
  text-shadow:0 16px 38px rgba(0,0,0,.45) !important;
}
.hero .hero-title-line{
  max-width:690px !important;
  margin:22px 0 0 !important;
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:clamp(26px,2.35vw,42px) !important;
  line-height:1.04 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
  color:#ffd78a !important;
  text-shadow:0 10px 28px rgba(0,0,0,.42) !important;
}
.hero .hero-description{
  max-width:690px !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:clamp(18px,1.4vw,23px) !important;
  line-height:1.6 !important;
  font-weight:400 !important;
  color:rgba(255,255,255,.94) !important;
  margin:24px 0 0 !important;
  text-shadow:0 4px 16px rgba(0,0,0,.44) !important;
}
.hero .actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:30px !important;
  font-family:Arial,Helvetica,sans-serif !important;
}
.hero .actions .btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:13px 22px !important;
  border-radius:999px !important;
  border:0 !important;
  background:#fff !important;
  color:#2f5863 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:0 16px 34px rgba(0,0,0,.15) !important;
  transform:none !important;
}
.hero .actions .btn.gold{
  background:#a66f00 !important;
  color:#fff !important;
}
.hero .actions .btn.ghost{
  background:rgba(255,255,255,.16) !important;
  color:#fff !important;
  box-shadow:none !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}
.hero .actions .btn:hover{
  transform:translateY(-2px) !important;
}

#why .section-inner{
  display:block !important;
}
#why .eyebrow{
  margin-bottom:18px !important;
}
#why h2{
  max-width:1120px !important;
  line-height:.92 !important;
  letter-spacing:-.052em !important;
}
#why .lead{
  max-width:980px !important;
  margin-top:22px !important;
  line-height:1.72 !important;
}
#why .why-grid{
  gap:clamp(22px,2.4vw,36px) !important;
  margin-top:clamp(40px,4vw,66px) !important;
  align-items:stretch !important;
}
#why .why-card{
  padding:clamp(32px,3.2vw,48px) !important;
  border-radius:34px !important;
  min-height:320px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  gap:0 !important;
}
#why .why-card h4{
  font-size:clamp(1.55rem,1.9vw,2.25rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.035em !important;
}
#why .why-card p{
  margin-top:18px !important;
  line-height:1.76 !important;
  font-size:1.03rem !important;
}

#power .section-inner{
  display:block !important;
}
#power .eyebrow{
  margin-bottom:18px !important;
}
#power h2{
  max-width:1120px !important;
  line-height:.92 !important;
  letter-spacing:-.052em !important;
}
#power .lead{
  max-width:1000px !important;
  margin-top:22px !important;
  line-height:1.72 !important;
}
#power .power-grid{
  gap:clamp(22px,2.4vw,36px) !important;
  margin-top:clamp(40px,4vw,66px) !important;
  align-items:stretch !important;
}
#power .power-card{
  padding:clamp(30px,3vw,46px) !important;
  border-radius:34px !important;
  min-height:340px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
}
#power .power-card b{
  width:48px !important;
  height:48px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:999px !important;
  margin-bottom:22px !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:.92rem !important;
  line-height:1 !important;
}
#power .power-card h4{
  font-size:clamp(1.5rem,1.85vw,2.16rem) !important;
  line-height:1.03 !important;
  letter-spacing:-.035em !important;
}
#power .power-card p{
  margin-top:18px !important;
  line-height:1.74 !important;
  font-size:1.02rem !important;
}

@media(max-width:1180px){
  .site-header .nav{display:none !important;}
  .hero{min-height:820px !important;}
  #why .why-grid,
  #power .power-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:760px){
  .site-header{padding:22px !important;}
  .site-header .logo img{width:58px !important;height:58px !important;}
  .hero{min-height:760px !important;}
  .hero-inner{padding:130px 24px 80px !important;}
  .hero h1{font-size:58px !important;}
  .hero .hero-title-line{font-size:30px !important;}
  #why .why-grid,
  #power .power-grid{
    grid-template-columns:1fr !important;
  }
  #why .why-card,
  #power .power-card{
    min-height:0 !important;
  }
}

#why .why-card{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(201,97,45,.24)!important;
  box-shadow:0 30px 74px rgba(54,31,18,.18)!important;
}
#why .why-card::before{
  content:""!important;
  position:absolute!important;
  left:32px!important;
  right:32px!important;
  top:0!important;
  height:4px!important;
  border-radius:0 0 999px 999px!important;
  background:linear-gradient(90deg,#c8612d 0%,#de8745 100%)!important;
  pointer-events:none!important;
}
#why .why-card h4{
  color:#c8612d!important;
}
#voices{
  background:#857469!important;
  background-color:#857469!important;
  background-image:none!important;
  color:#ffffff!important;
}
#voices .eyebrow,
#voices h2,
#voices .lead{
  color:#ffffff!important;
}
#voices .voice-card,
#voices .voice-copy{
  background:#ffffff!important;
  background-color:#ffffff!important;
  color:#000000!important;
}
#voices .voice-card{
  border:1px solid rgba(64,39,25,.12)!important;
  box-shadow:0 26px 64px rgba(38,23,15,.18)!important;
}
#voices .voice-copy h3,
#voices .voice-card h3,
#voices .voice-copy h4,
#voices .voice-card h4{
  color:#c8612d!important;
}
#voices .voice-copy p,
#voices .voice-card p{
  color:#000000!important;
}
#power .power-card{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(201,97,45,.22)!important;
  box-shadow:0 30px 74px rgba(28,18,10,.22)!important;
}
#power .power-card b{
  background:#c8612d!important;
  background-color:#c8612d!important;
  color:#ffffff!important;
  box-shadow:0 14px 30px rgba(201,97,45,.28)!important;
}
#power .power-card h4{
  color:#c8612d!important;
}
#architecture .arch-circle figure{
  background:#f1c979!important;
  background-color:#f1c979!important;
  border:9px solid rgba(241,201,121,.88)!important;
}

#why .why-card{
  border:1px solid rgba(91,60,26,.12)!important;
  position:relative!important;
  overflow:hidden!important;
}
#why .why-card::before{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:6px!important;
  border-radius:34px 34px 0 0!important;
  background:linear-gradient(90deg,#c8612d 0%,#de8745 50%,#c8612d 100%)!important;
  pointer-events:none!important;
}
#why .why-card::after{
  content:none!important;
  display:none!important;
}

#architecture .arch-circle figure{
  box-sizing:border-box!important;
  padding:10px!important;
  background:#F5EFE6!important;
  background-color:#F5EFE6!important;
  border:0!important;
  outline:0!important;
  box-shadow:0 30px 68px rgba(10,27,22,.18)!important;
}
#architecture .arch-circle figure::before,
#architecture .arch-circle figure::after{
  content:none!important;
  display:none!important;
}
#architecture .arch-circle figure img{
  border-radius:50%!important;
}

#continue{
  background:#857469!important;
  background-color:#857469!important;
}

#why {
  position: relative !important;
  overflow: hidden !important;
}
#why::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background-image: none !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center !important;
  opacity: .32 !important;
  mix-blend-mode: screen !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
#why .section-inner {
  position: relative !important;
  z-index: 1 !important;
}
#why .why-card {
  position: relative !important;
  overflow: hidden !important;
  border-color: rgba(91,60,26,.12) !important;
}
#why .why-card::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 7px !important;
  border-radius: inherit !important;
  background: #E07A5F !important;
  pointer-events: none !important;
  z-index: 2 !important;
}
#why .why-card::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 46px !important;
  background:
    linear-gradient(#E07A5F,#E07A5F) left top / 7px 46px no-repeat,
    linear-gradient(#E07A5F,#E07A5F) right top / 7px 46px no-repeat !important;
  pointer-events: none !important;
  z-index: 2 !important;
}
#why .why-card h4 {
  color: #E07A5F !important;
}
#power .power-card b {
  background: #E07A5F !important;
  background-color: #E07A5F !important;
  color: #FFFFFF !important;
  border: 0 !important;
  outline: 0 !important;
}
#power .power-card h4 {
  color: #E07A5F !important;
}
#architecture .arch-circle figure {
  background: #F5EFE6 !important;
  background-color: #F5EFE6 !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
#architecture .arch-circle figure::before,
#architecture .arch-circle figure::after,
#architecture .arch-circle::before,
#architecture .arch-circle::after {
  content: none !important;
  display: none !important;
}

:root{
  --em-exact-orange:#cf8313;
  --em-architecture-circle-cream:#F5EFE6;
}

section#why.em-section.why{
  position:relative!important;
  overflow:hidden!important;
  background-color:var(--coffee)!important;
  background-image:
    linear-gradient(rgba(62,43,30,.56),rgba(62,43,30,.56)),
    none!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
  background-blend-mode:normal!important;
}
section#why.em-section.why::before,
section#why.em-section.why::after{
  content:none!important;
  display:none!important;
  background:none!important;
}
section#why.em-section.why > .section-inner{
  position:relative!important;
  z-index:1!important;
}
section#why.em-section.why .why-card{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(207,131,19,.22)!important;
  box-shadow:0 30px 74px rgba(54,31,18,.18)!important;
}
section#why.em-section.why .why-card::before{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:6px!important;
  border-radius:28px 28px 0 0!important;
  background:var(--em-exact-orange)!important;
  pointer-events:none!important;
  z-index:2!important;
}
section#why.em-section.why .why-card::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:58px!important;
  background:
    linear-gradient(var(--em-exact-orange),var(--em-exact-orange)) left top / 6px 58px no-repeat,
    linear-gradient(var(--em-exact-orange),var(--em-exact-orange)) right top / 6px 58px no-repeat!important;
  pointer-events:none!important;
  z-index:2!important;
}
section#why.em-section.why .why-card h4{
  color:var(--em-exact-orange)!important;
}

section#power.em-section.power .power-card b{
  background:var(--em-exact-orange)!important;
  background-color:var(--em-exact-orange)!important;
  color:#ffffff!important;
  border:0!important;
  outline:0!important;
}
section#power.em-section.power .power-card h4{
  color:var(--em-exact-orange)!important;
}

section#route-voices.em-section.route-voices .route-number{
  background:var(--em-exact-orange)!important;
  background-color:var(--em-exact-orange)!important;
  color:#ffffff!important;
  border:0!important;
  outline:0!important;
}
section#route-voices.em-section.route-voices .route-menu a.btn,
section#route-voices.em-section.route-voices .route-menu .btn,
section#route-voices.em-section.route-voices .route-menu .btn.green{
  background:var(--em-exact-orange)!important;
  background-color:var(--em-exact-orange)!important;
  color:#ffffff!important;
  border-color:var(--em-exact-orange)!important;
  box-shadow:0 18px 42px rgba(207,131,19,.26)!important;
}
section#route-voices.em-section.route-voices .route-menu a.btn:hover,
section#route-voices.em-section.route-voices .route-menu .btn:hover,
section#route-voices.em-section.route-voices .route-menu .btn.green:hover{
  color:#ffffff!important;
  background:var(--em-exact-orange)!important;
  background-color:var(--em-exact-orange)!important;
  border-color:var(--em-exact-orange)!important;
}

section#voices.em-section.voices .voice-copy h3,
section#voices.em-section.voices .voice-card h3,
section#voices.em-section.voices .voice-card h4{
  color:var(--em-exact-orange)!important;
}

section#architecture.em-section.arch .arch-circle figure,
section#architecture.em-section.arch .arch-circle figure.portrait{
  background:var(--em-architecture-circle-cream)!important;
  background-color:var(--em-architecture-circle-cream)!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
}
section#architecture.em-section.arch .arch-circle figure::before,
section#architecture.em-section.arch .arch-circle figure::after,
section#architecture.em-section.arch .arch-circle::before,
section#architecture.em-section.arch .arch-circle::after{
  content:none!important;
  display:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:none!important;
}
section#architecture.em-section.arch .arch-circle figure img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

:root{
  --em-exact-orange:#cf8313 !important;
}

section#why.em-section.why{
  position:relative !important;
  overflow:hidden !important;
  background-color:var(--coffee) !important;
  background-image:
    linear-gradient(rgba(62,43,30,.72),rgba(62,43,30,.72)),
    none !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center center !important;
  background-blend-mode:normal !important;
}
section#why.em-section.why::before,
section#why.em-section.why::after{
  content:none !important;
  display:none !important;
  background:none !important;
}
section#why.em-section.why > .section-inner{
  position:relative !important;
  z-index:1 !important;
}
section#why.em-section.why .why-card::before{
  background:#cf8313 !important;
}
section#why.em-section.why .why-card::after{
  background:
    linear-gradient(#cf8313,#cf8313) left top / 6px 58px no-repeat,
    linear-gradient(#cf8313,#cf8313) right top / 6px 58px no-repeat !important;
}
section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
}

section#power.em-section.power .power-card b{
  background:#cf8313 !important;
  background-color:#cf8313 !important;
  color:#ffffff !important;
  border-color:#cf8313 !important;
}
section#power.em-section.power .power-card h4{
  color:#cf8313 !important;
}

section#route-voices.em-section.route-voices .route-number{
  background:#cf8313 !important;
  background-color:#cf8313 !important;
  color:#ffffff !important;
  border-color:#cf8313 !important;
}
section#route-voices.em-section.route-voices .route-menu a.btn,
section#route-voices.em-section.route-voices .route-menu .btn,
section#route-voices.em-section.route-voices .route-menu .btn.green{
  background:#cf8313 !important;
  background-color:#cf8313 !important;
  color:#ffffff !important;
  border-color:#cf8313 !important;
  box-shadow:0 18px 42px rgba(207,131,19,.24) !important;
}
section#route-voices.em-section.route-voices .route-menu a.btn:hover,
section#route-voices.em-section.route-voices .route-menu .btn:hover,
section#route-voices.em-section.route-voices .route-menu .btn.green:hover{
  background:#cf8313 !important;
  background-color:#cf8313 !important;
  color:#ffffff !important;
  border-color:#cf8313 !important;
}

section#voices.em-section.voices::before,
#voices::before{
  opacity:.08 !important;
}
section#voices.em-section.voices .voice-copy h3,
section#voices.em-section.voices .voice-card h3,
section#voices.em-section.voices .voice-card h4{
  color:#cf8313 !important;
}

section#continue.em-section.continue::before,
#continue::before{
  opacity:.08 !important;
}

.em-global-footer .em-footer-logo{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
  background:rgba(255,255,255,.06) !important;
}
.em-global-footer .em-footer-logo img{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

section#why.em-section.why{
  background-color:#bda995!important;
  background-image:
    linear-gradient(rgba(189,169,149,.88),rgba(189,169,149,.88)),
    none!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center center!important;
  background-blend-mode:normal!important;
}
section#voices.em-section.voices{
  background:#74645b!important;
  background-color:#74645b!important;
}
section#architecture.em-section.arch .arch-circle figure,
section#architecture.em-section.arch .arch-circle figure.portrait{
  background:#e8dccb!important;
  background-color:#e8dccb!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
  background-clip:padding-box!important;
}
section#architecture.em-section.arch .arch-circle figure::before,
section#architecture.em-section.arch .arch-circle figure::after,
section#architecture.em-section.arch .arch-circle::before,
section#architecture.em-section.arch .arch-circle::after{
  content:none!important;
  display:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:none!important;
}
section#architecture.em-section.arch .arch-circle figure img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

:root{
  --em-exact-orange:#cf8313 !important;
}

section#why.em-section.why{
  background-color:#c9b7a6 !important;
  background-image:
    linear-gradient(rgba(201,183,166,.82),rgba(201,183,166,.82)),
    none !important;
  background-repeat:no-repeat !important;
  background-size:cover !important;
  background-position:center center !important;
  background-blend-mode:normal !important;
}

section#why.em-section.why .why-card{
  position:relative !important;
  overflow:hidden !important;
  border:1px solid rgba(207,131,19,.18) !important;
}

section#why.em-section.why .why-card::before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  height:46px !important;
  box-sizing:border-box !important;
  border-top:6px solid #cf8313 !important;
  border-left:6px solid #cf8313 !important;
  border-right:6px solid #cf8313 !important;
  border-bottom:0 !important;
  border-radius:28px 28px 0 0 !important;
  background:transparent !important;
  pointer-events:none !important;
  z-index:3 !important;
}

section#why.em-section.why .why-card::after{
  content:none !important;
  display:none !important;
}

section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
}

section#why.em-section.why{
  background:#d8cdc3 !important;
}
section#why.em-section.why::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  background-image:linear-gradient(rgba(255,248,240,.84),rgba(255,248,240,.84)),none !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:1200px auto !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
  pointer-events:none !important;
}
section#why.em-section.why > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#why.em-section.why .why-card{
  position:relative !important;
  z-index:2 !important;
  overflow:visible !important;
  background:#f5efe4 !important;
  border:0 !important;
  border-radius:32px !important;
  box-shadow:0 18px 34px rgba(64,43,27,.10) !important;
}
section#why.em-section.why .why-card::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  z-index:-1 !important;
  left:-6px !important;
  right:-6px !important;
  top:-6px !important;
  height:44px !important;
  background:#cf8313 !important;
  border-radius:34px 34px 18px 18px !important;
  box-shadow:none !important;
}
section#why.em-section.why .why-card::after{
  content:none !important;
  display:none !important;
}
section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
}
section#why.em-section.why .eyebrow{
  color:#cf8313 !important;
}

section#why.em-section.why{
  background:#d8cdc3 !important;
}
section#why.em-section.why::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  background-image:linear-gradient(rgba(255,248,240,.84),rgba(255,248,240,.84)),none !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:1200px auto !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
  pointer-events:none !important;
}
section#why.em-section.why > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#why.em-section.why .why-card{
  position:relative !important;
  z-index:2 !important;
  overflow:hidden !important;
  background:linear-gradient(145deg,#fff8eb 0%,#f7eddf 100%) !important;
  border:1px solid rgba(92,70,48,.12) !important;
  border-radius:32px !important;
  box-shadow:0 22px 44px rgba(54,38,25,.13) !important;
}
section#why.em-section.why .why-card::before,
section#why.em-section.why .why-card::after{
  content:none !important;
  display:none !important;
}
section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
}
section#why.em-section.why .why-card p{
  color:#4f4334 !important;
}
section#why.em-section.why .eyebrow{
  color:#cf8313 !important;
}

section#why.em-section.why{
  background:#c9b7a6 !important;
  color:#fff7ef !important;
}
section#why.em-section.why::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  background-image:
    linear-gradient(rgba(92,70,52,.26),rgba(92,70,52,.26)),
    none !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:1200px auto !important;
  opacity:.52 !important;
  mix-blend-mode:normal !important;
  pointer-events:none !important;
}
section#why.em-section.why::after{
  content:none !important;
  display:none !important;
}
section#why.em-section.why > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#why.em-section.why .eyebrow,
section#why.em-section.why h2,
section#why.em-section.why .lead,
section#why.em-section.why > .section-inner > p{
  color:#fff7ef !important;
  text-shadow:0 2px 14px rgba(54,38,25,.20) !important;
}
section#why.em-section.why .why-card{
  position:relative !important;
  z-index:2 !important;
  overflow:hidden !important;
  background:linear-gradient(145deg,#fff8eb 0%,#f7eddf 100%) !important;
  border:1px solid rgba(92,70,48,.14) !important;
  border-radius:32px !important;
  box-shadow:0 24px 46px rgba(54,38,25,.14) !important;
}
section#why.em-section.why .why-card::before,
section#why.em-section.why .why-card::after{
  content:none !important;
  display:none !important;
}
section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
  text-shadow:none !important;
}
section#why.em-section.why .why-card p{
  color:#4f4334 !important;
  text-shadow:none !important;
}

section#why.em-section.why h2{
  color:#4b3428 !important;
  text-shadow:none !important;
}
section#why.em-section.why .eyebrow{
  color:#cf8313 !important;
  text-shadow:none !important;
}
section#why.em-section.why .lead,
section#why.em-section.why > .section-inner > p{
  color:#5a4638 !important;
  text-shadow:none !important;
}
section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
}
section#power.em-section.power,
#power{
  background:#b3a092 !important;
}

section#intro.em-section.intro .intro-card{
  align-items:center !important;
}
section#intro.em-section.intro .intro-card p.lead{
  background:rgba(255,248,235,.76) !important;
  border:1px solid rgba(79,55,38,.11) !important;
  border-left:5px solid #cf8313 !important;
  border-bottom:0 !important;
  border-radius:26px 26px 0 0 !important;
  box-shadow:0 18px 42px rgba(64,43,27,.08) !important;
  padding:28px 32px 12px !important;
  margin:0 !important;
  color:#3f3128 !important;
  font-size:clamp(1.18rem,1.42vw,1.38rem) !important;
  line-height:1.64 !important;
}
section#intro.em-section.intro .intro-card p:not(.lead){
  background:rgba(255,248,235,.76) !important;
  border:1px solid rgba(79,55,38,.11) !important;
  border-left:5px solid #cf8313 !important;
  border-top:0 !important;
  border-radius:0 0 26px 26px !important;
  box-shadow:0 20px 44px rgba(64,43,27,.08) !important;
  padding:0 32px 28px !important;
  margin:0 !important;
  color:#67564a !important;
  font-size:16px !important;
  line-height:1.62 !important;
}
section#architecture.em-section.arch .arch-circles{
  background:rgba(216,206,194,.86) !important;
  border:0 !important;
  outline:0 !important;
}
section#architecture.em-section.arch .arch-circle,
section#architecture.em-section.arch .arch-circle figure{
  background:#D8CEC2 !important;
  border:0 !important;
  outline:0 !important;
}
section#architecture.em-section.arch .arch-circle::before,
section#architecture.em-section.arch .arch-circle::after,
section#architecture.em-section.arch .arch-circle figure::before,
section#architecture.em-section.arch .arch-circle figure::after{
  content:none !important;
  display:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
section#power.em-section.power,
#power{
  background:#bca99b !important;
}

section#intro.em-section.intro .intro-card h2{
  color:#cf8313 !important;
}
section#intro.em-section.intro .intro-card p.lead{
  border-left:10px solid #cf8313 !important;
  padding-left:34px !important;
}
section#intro.em-section.intro .intro-card p:not(.lead){
  border-left:10px solid #cf8313 !important;
  padding-left:34px !important;
}
section#why.em-section.why .why-card{
  position:relative !important;
  overflow:hidden !important;
  padding-top:34px !important;
}
section#why.em-section.why .why-card::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:0 !important;
  height:10px !important;
  z-index:3 !important;
  background:#cf8313 !important;
  border-radius:32px 32px 0 0 !important;
  box-shadow:none !important;
}
section#why.em-section.why .why-card::after{
  content:none !important;
  display:none !important;
}
section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
}

section#why.em-section.why .why-card{
  position:relative !important;
  overflow:hidden !important;
  padding-top:34px !important;
  border-top:8px solid #cf8313 !important;
}
section#why.em-section.why .why-card::before,
section#why.em-section.why .why-card::after{
  content:none !important;
  display:none !important;
}
section#why.em-section.why .why-card h4{
  color:#cf8313 !important;
}
section#architecture.em-section.arch .arch-circle{
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
section#architecture.em-section.arch .arch-circle::before,
section#architecture.em-section.arch .arch-circle::after,
section#architecture.em-section.arch .arch-circle figure::before,
section#architecture.em-section.arch .arch-circle figure::after{
  content:none !important;
  display:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
section#architecture.em-section.arch .arch-circle figure,
section#architecture.em-section.arch .arch-circle figure.portrait{
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
}
section#architecture.em-section.arch .arch-circle h4{
  color:#4b3428 !important;
  text-shadow:none !important;
}
section#architecture.em-section.arch .arch-circle p{
  color:#5a4638 !important;
  text-shadow:none !important;
}
#fes .text-panel h2,
#marrakech .text-panel h2,
#meknes .text-panel h2,
#rabat .text-panel h2{
  color:#4b3428 !important;
}

section#voices.em-section.voices .voice-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  overflow:visible !important;
  padding:clamp(24px,2vw,34px) clamp(20px,1.7vw,30px) clamp(28px,2.2vw,38px) !important;
  border-radius:34px !important;
}
section#voices.em-section.voices .voice-img{
  width:clamp(230px,17.5vw,318px) !important;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  margin:0 auto clamp(20px,1.8vw,28px) !important;
  padding:12px !important;
  background:#ffffff !important;
  border-radius:50% !important;
  box-shadow:0 26px 54px rgba(58,38,26,.18) !important;
  overflow:hidden !important;
}
section#voices.em-section.voices .voice-img img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:50% !important;
}
section#voices.em-section.voices .voice-copy{
  width:100% !important;
  padding:0 !important;
}
section#voices.em-section.voices .voice-copy h3{
  margin:0 auto .62rem !important;
}
section#voices.em-section.voices .voice-copy p{
  max-width:28ch !important;
  margin:.45rem auto 0 !important;
}
section#continue.em-section.continue .guide-copy a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  line-height:1 !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}
section#continue.em-section.continue .guide-copy{
  min-width:0 !important;
}
section#intro,
section#continue{
  scroll-margin-top:0 !important;
}

section#voices.em-section.voices .voice-card{
  overflow:visible !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:0 24px 58px rgba(38,23,15,.15) !important;
}

section#voices.em-section.voices .voice-card::before,
section#voices.em-section.voices .voice-card::after,
section#voices.em-section.voices .voice-img::before,
section#voices.em-section.voices .voice-img::after{
  content:none !important;
  display:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:none !important;
}

section#voices.em-section.voices .voice-img{
  width:clamp(258px,19vw,352px) !important;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  margin:0 auto clamp(20px,1.7vw,26px) !important;
  padding:7px !important;
  background:#F5EFE6 !important;
  background-color:#F5EFE6 !important;
  border:0 !important;
  outline:0 !important;
  border-radius:50% !important;
  box-shadow:0 24px 50px rgba(58,38,26,.16) !important;
  overflow:hidden !important;
  line-height:0 !important;
}

section#voices.em-section.voices .voice-img img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:50% !important;
  background:transparent !important;
}

section#continue.em-section.continue .guide-copy h4{
  color:#4b3428 !important;
}

section#continue.em-section.continue .guide-copy a,
section#continue.em-section.continue .guide-card .guide-copy a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  width:auto !important;
  max-width:none !important;
  min-width:max-content !important;
  line-height:1 !important;
  word-break:keep-all !important;
  overflow-wrap:normal !important;
  color:#cf8313 !important;
}

section#continue.em-section.continue .guide-copy{
  min-width:0 !important;
  overflow:visible !important;
}

section#intro.em-section.intro .city-circle-card h4,
#intro .city-circle-card h4{
  color:#cf8313 !important;
}

section#voices.em-section.voices,
#voices{
  background:#f7eddf !important;
  background-color:#f7eddf !important;
  color:#4b3428 !important;
}

section#voices.em-section.voices::before,
#voices::before{
  opacity:.10 !important;
  mix-blend-mode:multiply !important;
}

section#voices.em-section.voices .eyebrow,
#voices .eyebrow{
  color:#cf8313 !important;
}

section#voices.em-section.voices h2,
#voices h2{
  color:#4b3428 !important;
  text-shadow:none !important;
}

section#voices.em-section.voices .lead,
section#voices.em-section.voices > .section-inner > p,
#voices .lead,
#voices > .section-inner > p{
  color:#5a4638 !important;
  text-shadow:none !important;
}

section#voices.em-section.voices .voice-grid,
#voices .voice-grid{
  align-items:stretch !important;
}

section#voices.em-section.voices .voice-card,
#voices .voice-card{
  background:#fff8eb !important;
  background-color:#fff8eb !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:0 24px 50px rgba(64,43,27,.10) !important;
  overflow:hidden !important;
  border-radius:34px !important;
  backdrop-filter:none !important;
}

section#voices.em-section.voices .voice-card::before,
section#voices.em-section.voices .voice-card::after,
section#voices.em-section.voices .voice-img::before,
section#voices.em-section.voices .voice-img::after,
#voices .voice-card::before,
#voices .voice-card::after,
#voices .voice-img::before,
#voices .voice-img::after{
  content:none !important;
  display:none !important;
  background:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

section#voices.em-section.voices .voice-img,
#voices .voice-img{
  background:#f5efe6 !important;
  background-color:#f5efe6 !important;
  padding:6px !important;
  box-shadow:0 18px 34px rgba(64,43,27,.10) !important;
  border:0 !important;
  outline:0 !important;
}

section#voices.em-section.voices .voice-img img,
#voices .voice-img img{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

section#voices.em-section.voices .voice-copy h3,
section#voices.em-section.voices .voice-card h3,
section#voices.em-section.voices .voice-card h4,
#voices .voice-copy h3,
#voices .voice-card h3,
#voices .voice-card h4{
  color:#cf8313 !important;
  text-shadow:none !important;
}

section#voices.em-section.voices .voice-copy p,
#voices .voice-copy p{
  color:#2f2924 !important;
  text-shadow:none !important;
}

section#continue.em-section.continue .guide-grid,
#continue .guide-grid{
  align-items:stretch !important;
}

section#continue.em-section.continue .guide-card,
#continue .guide-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
}

section#continue.em-section.continue .guide-copy,
#continue .guide-copy{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  overflow:visible !important;
}

section#continue.em-section.continue .guide-copy h4,
#continue .guide-copy h4{
  color:#4b3428 !important;
}

section#continue.em-section.continue .guide-copy p,
#continue .guide-copy p{
  min-height:3.35em !important;
}

section#continue.em-section.continue .guide-copy a,
section#continue.em-section.continue .guide-card .guide-copy a,
#continue .guide-copy a,
#continue .guide-card .guide-copy a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  width:max-content !important;
  max-width:none !important;
  min-width:max-content !important;
  line-height:1 !important;
  word-break:keep-all !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
  margin-top:auto !important;
  color:#cf8313 !important;
}

section#voices.em-section.voices,
#voices{
  background:#74645b !important;
  background-color:#74645b !important;
  color:#fff7ef !important;
}

section#voices.em-section.voices::before,
#voices::before{
  opacity:.12 !important;
  mix-blend-mode:multiply !important;
  background-size:520px auto !important;
}

section#voices.em-section.voices .eyebrow,
#voices .eyebrow{
  color:#fff1df !important;
}

section#voices.em-section.voices h2,
#voices h2{
  color:#fff8f2 !important;
  text-shadow:0 2px 14px rgba(38,23,15,.20) !important;
}

section#voices.em-section.voices .lead,
section#voices.em-section.voices > .section-inner > p,
#voices .lead,
#voices > .section-inner > p{
  color:#f8efe6 !important;
  text-shadow:0 2px 12px rgba(38,23,15,.18) !important;
}

section#voices.em-section.voices .voice-card,
#voices .voice-card{
  background:#fff8eb !important;
  background-color:#fff8eb !important;
  border:0 !important;
  outline:0 !important;
  border-radius:34px !important;
  box-shadow:0 24px 52px rgba(38,23,15,.16) !important;
  overflow:hidden !important;
  backdrop-filter:none !important;
}

section#voices.em-section.voices .voice-card::before,
section#voices.em-section.voices .voice-card::after,
section#voices.em-section.voices .voice-img::before,
section#voices.em-section.voices .voice-img::after,
section#voices.em-section.voices .voice-copy::before,
section#voices.em-section.voices .voice-copy::after,
#voices .voice-card::before,
#voices .voice-card::after,
#voices .voice-img::before,
#voices .voice-img::after,
#voices .voice-copy::before,
#voices .voice-copy::after{
  content:none !important;
  display:none !important;
  background:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

section#voices.em-section.voices .voice-img,
#voices .voice-img{
  background:#F5EFE6 !important;
  background-color:#F5EFE6 !important;
  padding:6px !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:0 18px 34px rgba(64,43,27,.10) !important;
}

section#voices.em-section.voices .voice-img img,
#voices .voice-img img{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

section#voices.em-section.voices .voice-copy,
#voices .voice-copy{
  background:transparent !important;
  background-color:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}

section#voices.em-section.voices .voice-copy h3,
section#voices.em-section.voices .voice-card h3,
section#voices.em-section.voices .voice-card h4,
#voices .voice-copy h3,
#voices .voice-card h3,
#voices .voice-card h4{
  color:#cf8313 !important;
  background:transparent !important;
  text-shadow:none !important;
}

section#voices.em-section.voices .voice-copy p,
#voices .voice-copy p{
  color:#2f2924 !important;
  background:transparent !important;
  text-shadow:none !important;
}

section#architecture.em-section.arch .arch-text p.lead,
#architecture .arch-text p.lead{
  background:rgba(255,248,235,.84) !important;
  border:1px solid rgba(79,55,38,.12) !important;
  border-left:7px solid #cf8313 !important;
  border-bottom:0 !important;
  border-radius:28px 28px 0 0 !important;
  box-shadow:0 20px 46px rgba(38,23,15,.16) !important;
  padding:28px 32px 12px !important;
  margin:0 !important;
  color:#3f3128 !important;
  line-height:1.62 !important;
  text-shadow:none !important;
}

section#architecture.em-section.arch .arch-text p:not(.lead),
#architecture .arch-text p:not(.lead){
  background:rgba(255,248,235,.84) !important;
  border:1px solid rgba(79,55,38,.12) !important;
  border-left:7px solid #cf8313 !important;
  border-top:0 !important;
  border-radius:0 0 28px 28px !important;
  box-shadow:0 20px 46px rgba(38,23,15,.16) !important;
  padding:0 32px 28px !important;
  margin:0 !important;
  color:#67564a !important;
  line-height:1.62 !important;
  text-shadow:none !important;
}

section#continue.em-section.continue .guide-copy h4,
#continue .guide-copy h4{
  color:#4b3428 !important;
}

section#continue.em-section.continue .guide-copy a,
#continue .guide-copy a{
  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  word-break:keep-all !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
}

section#voices.em-section.voices,
#voices{
  background:#74645b !important;
  background-color:#74645b !important;
  color:#fff7ef !important;
  position:relative !important;
}
section#voices.em-section.voices::before,
#voices::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  background-image:var(--em-zellige-user) !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:520px auto !important;
  opacity:.18 !important;
  mix-blend-mode:multiply !important;
  pointer-events:none !important;
}
section#voices.em-section.voices > .section-inner,
#voices > .section-inner{
  position:relative !important;
  z-index:1 !important;
}

section#architecture.em-section.arch .arch-text p.lead,
#architecture .arch-text p.lead,
section#architecture.em-section.arch .arch-text p:not(.lead),
#architecture .arch-text p:not(.lead){
  border-left-width:12px !important;
  border-left-color:#cf8313 !important;
}

section#architecture.em-section.arch .arch-circle,
#architecture .arch-circle{
  background:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
section#architecture.em-section.arch .arch-circle::before,
section#architecture.em-section.arch .arch-circle::after,
#architecture .arch-circle::before,
#architecture .arch-circle::after{
  content:none !important;
  display:none !important;
}
section#architecture.em-section.arch .arch-circle h4,
#architecture .arch-circle h4{
  color:#4b3428 !important;
  text-shadow:none !important;
}
section#architecture.em-section.arch .arch-circle p,
#architecture .arch-circle p{
  color:#5a4638 !important;
  text-shadow:none !important;
}

section#continue.em-section.continue .guide-copy h4,
#continue .guide-copy h4,
section#continue.em-section.continue .guide-card h4,
#continue .guide-card h4{
  color:#4b3428 !important;
  text-shadow:none !important;
}
section#continue.em-section.continue .guide-copy a,
section#continue.em-section.continue .guide-card .guide-copy a,
#continue .guide-copy a,
#continue .guide-card .guide-copy a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:max-content !important;
  max-width:none !important;
  min-width:max-content !important;
  white-space:nowrap !important;
  flex-wrap:nowrap !important;
  word-break:keep-all !important;
  overflow-wrap:normal !important;
  hyphens:none !important;
  line-height:1.1 !important;
}

section.city-chapter .text-panel .eyebrow,
section.city-chapter .text-panel h2,
#fes .text-panel .eyebrow,
#fes .text-panel h2,
#marrakech .text-panel .eyebrow,
#marrakech .text-panel h2,
#meknes .text-panel .eyebrow,
#meknes .text-panel h2,
#rabat .text-panel .eyebrow,
#rabat .text-panel h2{
  color:#4b3428 !important;
  text-shadow:none !important;
}

section#voices.em-section.voices .voice-img,
#voices .voice-img{
  background:rgba(255,255,255,.86) !important;
  background-color:rgba(255,255,255,.86) !important;
  padding:7px !important;
  border:1px solid rgba(255,255,255,.82) !important;
  outline:0 !important;
  border-radius:50% !important;
  box-shadow:0 18px 34px rgba(64,43,27,.11) !important;
  overflow:hidden !important;
}
section#voices.em-section.voices .voice-img::before,
section#voices.em-section.voices .voice-img::after,
#voices .voice-img::before,
#voices .voice-img::after{
  content:none !important;
  display:none !important;
}
section#voices.em-section.voices .voice-img img,
#voices .voice-img img{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:50% !important;
}

section#voices.em-section.voices,
#voices{
  background:#857469 !important;
  background-color:#857469 !important;
  color:#ffffff !important;
}
section#voices.em-section.voices::before,
#voices::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:var(--em-zellige-user) !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:520px auto !important;
  opacity:.18 !important;
  mix-blend-mode:multiply !important;
}
section#voices.em-section.voices > .section-inner,
#voices > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#voices.em-section.voices .eyebrow,
section#voices.em-section.voices h2,
section#voices.em-section.voices .lead,
section#voices.em-section.voices > .section-inner > p{
  color:#ffffff !important;
}

section#power.em-section.power,
#power{
  position:relative !important;
  isolation:isolate !important;
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#4b3428 !important;
}
section#power.em-section.power::before,
#power::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),url("/assets/images/imperial-morocco/imperial-morocco-hero-background-52daa77994.webp") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:cover !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
}
section#power.em-section.power::after,
#power::after{
  content:none !important;
  display:none !important;
}
section#power.em-section.power > .section-inner,
#power > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#power.em-section.power .eyebrow,
#power .eyebrow{
  color:#cf8313 !important;
  text-shadow:none !important;
}
section#power.em-section.power h2,
#power h2{
  color:#4b3428 !important;
  text-shadow:none !important;
}
section#power.em-section.power .lead,
section#power.em-section.power p,
#power .lead,
#power p{
  color:#4f4035 !important;
  text-shadow:none !important;
}
section#power.em-section.power .power-card,
#power .power-card{
  background:rgba(255,248,235,.92) !important;
  border:1px solid rgba(75,52,40,.12) !important;
  color:#4b3428 !important;
  box-shadow:0 24px 58px rgba(75,52,40,.13) !important;
}
section#power.em-section.power .power-card h4,
#power .power-card h4{
  color:#4b3428 !important;
}
section#power.em-section.power .power-card p,
#power .power-card p{
  color:#5a4638 !important;
}
section#power.em-section.power .power-card b,
#power .power-card b{
  background:#cf8313 !important;
  background-color:#cf8313 !important;
  color:#ffffff !important;
  border-color:#cf8313 !important;
}

:root{
  --em-final-visible-brown:#7a4a2a;
  --em-final-readable-brown:#5a3d2d;
}

section#voices.em-section.voices,
#voices{
  background:#b5a498 !important;
  background-color:#b5a498 !important;
  color:var(--em-final-readable-brown) !important;
}
section#voices.em-section.voices::before,
#voices::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:var(--em-zellige-user) !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:520px auto !important;
  opacity:.18 !important;
  mix-blend-mode:multiply !important;
}
section#voices.em-section.voices > .section-inner,
#voices > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#voices.em-section.voices h2,
#voices h2{
  color:var(--em-final-visible-brown) !important;
  text-shadow:none !important;
}
section#voices.em-section.voices .eyebrow,
#voices .eyebrow{
  color:#cf8313 !important;
  text-shadow:none !important;
}
section#voices.em-section.voices .lead,
section#voices.em-section.voices > .section-inner > p,
#voices .lead,
#voices > .section-inner > p{
  color:var(--em-final-readable-brown) !important;
  text-shadow:none !important;
}

section#power.em-section.power::before,
#power::before{
  opacity:.52 !important;
}

section#why.em-section.why h2,
#why h2,
section#power.em-section.power h2,
#power h2,
section#power.em-section.power .power-card h4,
#power .power-card h4,
section#architecture.em-section.arch h2,
#architecture h2,
section#architecture.em-section.arch .arch-circle-card h4,
#architecture .arch-circle-card h4,
section#architecture.em-section.arch .arch-circle-card p,
#architecture .arch-circle-card p,
section#continue.em-section.continue h2,
#continue h2,
section#continue.em-section.continue .continue-card h3,
#continue .continue-card h3,
section#continue.em-section.continue .continue-card h4,
#continue .continue-card h4,
.city-chapter .text-panel h2,
.city-chapter h2,
.city-chapter h3,
.text-panel h2{
  color:var(--em-final-visible-brown) !important;
}

section#why.em-section.why .lead,
section#why.em-section.why > .section-inner > p,
#why .lead,
#why > .section-inner > p,
section#power.em-section.power .lead,
section#power.em-section.power > .section-inner > p,
#power .lead,
#power > .section-inner > p{
  color:var(--em-final-readable-brown) !important;
}

section#voices.em-section.voices,
#voices{
  background:#b5a498 !important;
  background-color:#b5a498 !important;
  color:#ffffff !important;
}
section#voices.em-section.voices::before,
#voices::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:var(--em-zellige-user) !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:520px auto !important;
  opacity:.12 !important;
  mix-blend-mode:multiply !important;
}
section#voices.em-section.voices > .section-inner,
#voices > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#voices.em-section.voices h2,
#voices h2{
  color:#ffffff !important;
  text-shadow:0 2px 16px rgba(75,52,40,.28) !important;
}
section#voices.em-section.voices .eyebrow,
#voices .eyebrow{
  color:#cf8313 !important;
  text-shadow:none !important;
}
section#voices.em-section.voices > .section-inner > p,
section#voices.em-section.voices .lead,
#voices > .section-inner > p,
#voices .lead{
  color:#fff7ef !important;
  text-shadow:0 1px 10px rgba(75,52,40,.24) !important;
}
section#voices.em-section.voices .voice-card,
#voices .voice-card{
  background:#F4EBDC !important;
  background-color:#F4EBDC !important;
  border:1px solid rgba(75,52,40,.10) !important;
  box-shadow:0 24px 54px rgba(75,52,40,.16) !important;
}
section#voices.em-section.voices .voice-img,
#voices .voice-img{
  background:#F1E6D6 !important;
  background-color:#F1E6D6 !important;
}
section#voices.em-section.voices .voice-copy h3,
section#voices.em-section.voices .voice-card h3,
#voices .voice-copy h3,
#voices .voice-card h3{
  color:#cf8313 !important;
  text-shadow:none !important;
}
section#voices.em-section.voices .voice-copy p,
section#voices.em-section.voices .voice-card p,
#voices .voice-copy p,
#voices .voice-card p{
  color:#4f4035 !important;
  text-shadow:none !important;
}

section#power.em-section.power,
#power{
  position:relative !important;
  isolation:isolate !important;
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#ffffff !important;
}
section#power.em-section.power::before,
#power::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:url("/assets/images/imperial-morocco/imperial-morocco-hero-background-52daa77994.webp") !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:cover !important;
  opacity:1 !important;
  mix-blend-mode:normal !important;
}
section#power.em-section.power::after,
#power::after{
  content:none !important;
  display:none !important;
}
section#power.em-section.power > .section-inner,
#power > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#power.em-section.power .eyebrow,
#power .eyebrow{
  color:#cf8313 !important;
  text-shadow:0 3px 16px rgba(0,0,0,.72) !important;
}
section#power.em-section.power h2,
#power h2{
  color:#fff8ef !important;
  text-shadow:0 4px 24px rgba(0,0,0,.72) !important;
}
section#power.em-section.power > .section-inner > p,
section#power.em-section.power .lead,
#power > .section-inner > p,
#power .lead{
  color:#ffffff !important;
  text-shadow:0 3px 18px rgba(0,0,0,.76) !important;
}
section#power.em-section.power .power-card,
#power .power-card{
  background:rgba(255,248,235,.94) !important;
  border:1px solid rgba(75,52,40,.14) !important;
  color:#4b3428 !important;
  box-shadow:0 26px 62px rgba(0,0,0,.18) !important;
  backdrop-filter:blur(2px) !important;
}
section#power.em-section.power .power-card h4,
#power .power-card h4{
  color:#7a4a2a !important;
  text-shadow:none !important;
}
section#power.em-section.power .power-card p,
#power .power-card p{
  color:#4f4035 !important;
  text-shadow:none !important;
}
section#power.em-section.power .power-card b,
#power .power-card b{
  background:#cf8313 !important;
  background-color:#cf8313 !important;
  border-color:#cf8313 !important;
  color:#ffffff !important;
  text-shadow:none !important;
}

:root{
  --em-visible-brown:#8a5634;
  --em-premium-orange:#cf8313;
}

section#why.em-section.why{
  background:#e3d8cf !important;
  background-color:#e3d8cf !important;
  background-image:none !important;
  color:#4f4035 !important;
}
section#why.em-section.why::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  pointer-events:none !important;
  background-image:none !important;
  background-repeat:repeat !important;
  background-position:center !important;
  background-size:1200px auto !important;
  background-color:transparent !important;
  opacity:.20 !important;
  mix-blend-mode:multiply !important;
}
section#why.em-section.why::after{
  content:none !important;
  display:none !important;
}
section#why.em-section.why > .section-inner{
  position:relative !important;
  z-index:2 !important;
}
section#why.em-section.why .eyebrow{
  color:var(--em-premium-orange) !important;
}
section#why.em-section.why h2{
  color:var(--em-visible-brown) !important;
}
section#why.em-section.why .lead,
section#why.em-section.why > .section-inner > p{
  color:#5a4638 !important;
}

section#architecture.em-section.arch h2,
section#continue.em-section.continue h2{
  color:#ffffff !important;
}

section.city-chapter h2,
section#fes h2,
section#marrakech h2,
section#meknes h2,
section#rabat h2{
  color:var(--em-visible-brown) !important;
}
section.city-chapter .eyebrow,
section#fes .eyebrow,
section#marrakech .eyebrow,
section#meknes .eyebrow,
section#rabat .eyebrow{
  color:var(--em-premium-orange) !important;
}

section#architecture.em-section.arch .arch-circle h4,
section#architecture.em-section.arch .arch-circle h3,
section#architecture.em-section.arch .arch-circles h4,
section#architecture.em-section.arch .arch-circles h3{
  color:var(--em-visible-brown) !important;
}
section#architecture.em-section.arch .arch-circle p,
section#architecture.em-section.arch .arch-circles p{
  color:#5a4638 !important;
}

section#continue.em-section.continue .guide-card h4,
section#continue.em-section.continue .guide-card h3,
section#continue.em-section.continue .guide-copy h4,
section#continue.em-section.continue .guide-copy h3{
  color:var(--em-visible-brown) !important;
}
section#continue.em-section.continue .guide-copy a,
section#continue.em-section.continue .guide-card a{
  white-space:nowrap !important;
  display:inline-flex !important;
  width:auto !important;
  max-width:100% !important;
  align-items:center !important;
  gap:.25rem !important;
}

.site-header{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:99999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  height:auto !important;
  min-height:0 !important;
  padding:28px 64px !important;
  color:#ffffff !important;
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  pointer-events:auto !important;
}
.site-header::before,
.site-header::after{
  display:none !important;
  content:none !important;
}
.site-header .logo{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  gap:12px !important;
  line-height:1 !important;
}
.site-header .logo img{
  width:70px !important;
  height:70px !important;
  object-fit:contain !important;
  border-radius:0 !important;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.35)) !important;
}
.site-header .nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:26px !important;
  max-width:none !important;
  transform:none !important;
  margin:0 !important;
  padding:0 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:14px !important;
  line-height:1 !important;
}
.site-header .nav a,
.site-header .nav button{
  color:#ffffff !important;
  text-decoration:none !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:14px !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-shadow:0 2px 12px rgba(0,0,0,.35) !important;
  opacity:1 !important;
}
.site-header .nav a.is-active,
.site-header .nav a[aria-current="page"],
.site-header .nav .shop{
  color:#ffd78a !important;
  font-weight:900 !important;
}
.site-header .em-nav-search{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:18px !important;
  height:18px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#ffffff !important;
  cursor:pointer !important;
}
.site-header .em-nav-search svg{
  width:16px !important;
  height:16px !important;
  display:block !important;
  fill:currentColor !important;
}
.hero{
  min-height:100vh !important;
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:hidden !important;
  color:#ffffff !important;
  padding:0 !important;
  background-color:#051f1b !important;
  isolation:isolate !important;
}
.hero-bg{
  position:absolute !important;
  inset:0 !important;
  z-index:-3 !important;
  margin:0 !important;
  padding:0 !important;
}
.hero-bg img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  filter:none !important;
  transform:none !important;
}
.hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
  background:linear-gradient(90deg,rgba(0,0,0,.60),rgba(0,0,0,.38) 42%,rgba(0,0,0,.08) 72%,rgba(0,0,0,.16)) !important;
  pointer-events:none !important;
}
.hero::after{
  display:none !important;
  content:none !important;
}
.hero-inner{
  width:100% !important;
  padding:170px 76px 100px !important;
  position:relative !important;
  z-index:1 !important;
}
.hero-copy{
  max-width:760px !important;
  position:relative !important;
  z-index:1 !important;
  transform:translateY(46px) !important;
}
.hero .kicker{
  display:block !important;
  font-family:Arial,Helvetica,sans-serif !important;
  text-transform:uppercase !important;
  letter-spacing:.18em !important;
  color:#ffd78a !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1.2 !important;
  margin:0 0 12px !important;
}
.hero h1{
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:clamp(62px,7vw,116px) !important;
  line-height:.88 !important;
  font-weight:700 !important;
  letter-spacing:-.045em !important;
  color:#ffffff !important;
  margin:0 !important;
  text-shadow:0 16px 38px rgba(0,0,0,.45) !important;
}
.hero .hero-title-line{
  max-width:690px !important;
  margin:22px 0 0 !important;
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:clamp(26px,2.35vw,42px) !important;
  line-height:1.04 !important;
  font-weight:700 !important;
  letter-spacing:-.035em !important;
  color:#ffd78a !important;
  text-shadow:0 10px 28px rgba(0,0,0,.42) !important;
}
.hero .hero-description,
.hero p{
  max-width:690px !important;
  margin-top:24px !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:clamp(18px,1.4vw,23px) !important;
  font-weight:400 !important;
  line-height:1.6 !important;
  color:rgba(255,255,255,.94) !important;
  text-shadow:0 4px 16px rgba(0,0,0,.44) !important;
}
.hero .btn-row,
.hero .actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:30px !important;
  font-family:Arial,Helvetica,sans-serif !important;
}
.hero .btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.55rem !important;
  padding:13px 22px !important;
  border-radius:999px !important;
  border:0 !important;
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:16px !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:0 16px 34px rgba(0,0,0,.15) !important;
  transition:.25s ease !important;
}
.hero .btn.gold{
  background:#a66f00 !important;
  color:#ffffff !important;
}
.hero .btn.ghost,
.hero .btn:not(.gold){
  background:#ffffff !important;
  color:#2f5863 !important;
  box-shadow:0 16px 34px rgba(0,0,0,.15) !important;
  backdrop-filter:none !important;
}
.em-footer-logo,
.em-footer-logo img{
  opacity:1 !important;
  visibility:visible !important;
}
.em-footer-logo img{
  content:url("/assets/images/exotic-morocco-logo.webp") !important;
}
@media(max-width:1180px){
  .site-header{
    padding:22px !important;
  }
  .site-header .logo img{
    width:58px !important;
    height:58px !important;
  }
  .site-header .nav{
    display:none !important;
  }
  .hero{
    min-height:820px !important;
  }
  .hero-copy{
    transform:translateY(20px) !important;
  }
}
@media(max-width:760px){
  .hero{
    min-height:760px !important;
  }
  .hero-inner{
    padding:130px 24px 80px !important;
  }
  .hero-copy{
    transform:none !important;
  }
  .hero h1{
    font-size:58px !important;
  }
}

html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
main{
  width:100%;
  max-width:100%;
  overflow:hidden;
}
img{
  max-width:100%;
  object-fit:cover;
}
figure img,
.hero-bg img,
.city-circle img,
.route-main img,
.route-side img,
.voice-img img,
.photo-mosaic img,
.extra-gallery img,
.arch-circle img,
.guide-img img,
.map-card img,
.continue img{
  width:100%;
  height:100%;
  object-fit:cover;
}
section[id]{
  scroll-margin-top:96px;
}
.section-inner,
.hero-copy,
.intro-grid,
.route-block,
.why-grid,
.voice-grid,
.power-grid,
.city-layout,
.photo-mosaic,
.extra-gallery,
.arch-grid,
.guide-grid,
.map-grid{
  max-width:100%;
}
.btn-row,
.hero-pills,
.key-row,
.info-pair{
  max-width:100%;
  flex-wrap:wrap;
}
.guide-copy a{
  white-space:nowrap;
}

@media (max-width:1220px){
  .section-inner{
    width:min(100% - 32px,1720px) !important;
  }
  .intro-grid,
  #intro .intro-card,
  .route-block,
  .city-layout,
  .city-layout.reverse,
  .arch-grid,
  .map-grid{
    grid-template-columns:1fr !important;
  }
  .route-menu,
  .route-main,
  .route-side{
    height:auto !important;
  }
  .route-main{
    min-height:460px !important;
    height:clamp(420px,52vw,620px) !important;
  }
  .route-side{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:none !important;
    grid-auto-rows:clamp(190px,24vw,300px) !important;
  }
  .route-side figure,
  .route-side figure.wide{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  .city-circles,
  .why-grid,
  .voice-grid,
  .power-grid,
  .arch-circles,
  .guide-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .photo-mosaic,
  .photo-mosaic.six-rect,
  .extra-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:none !important;
    min-height:0 !important;
  }
  .photo-mosaic .tile,
  .photo-mosaic .main,
  .photo-mosaic .wide,
  .photo-mosaic.six-rect .tile,
  .photo-mosaic.six-rect .main,
  .extra-gallery figure,
  .extra-gallery figure.tall,
  .extra-gallery figure.wide{
    grid-column:auto !important;
    grid-row:auto !important;
    height:clamp(260px,34vw,430px) !important;
  }
}

@media (max-width:760px){
  .em-section{
    padding:clamp(58px,14vw,86px) 0 !important;
  }
  .section-inner{
    width:min(100% - 24px,1720px) !important;
  }
  .site-header{
    height:auto !important;
    min-height:78px !important;
    padding:20px 18px !important;
  }
  .logo-img,
  .site-header .logo img{
    width:70px !important;
    height:70px !important;
    max-width:70px !important;
    border-radius:50% !important;
    object-fit:cover !important;
  }
  .nav{
    display:none !important;
  }
  .hero{
    min-height:88vh !important;
    padding:132px 18px 72px !important;
    align-items:end !important;
  }
  .hero-copy{
    max-width:100% !important;
  }
  h1{
    font-size:clamp(3.35rem,18vw,5.4rem) !important;
    line-height:.95 !important;
  }
  h2{
    font-size:clamp(2.35rem,13vw,4.1rem) !important;
    line-height:1 !important;
  }
  h3{
    font-size:clamp(1.7rem,9vw,2.7rem) !important;
  }
  .hero-sub{
    font-size:clamp(1.25rem,7vw,2rem) !important;
  }
  .hero p,
  .lead{
    font-size:1rem !important;
    line-height:1.62 !important;
  }
  .btn-row{
    gap:10px !important;
  }
  .btn{
    width:100%;
    max-width:340px;
  }
  .city-circles,
  .why-grid,
  .voice-grid,
  .power-grid,
  .key-row,
  .info-pair,
  .arch-circles,
  .guide-grid,
  .photo-mosaic,
  .photo-mosaic.six-rect,
  .extra-gallery{
    grid-template-columns:1fr !important;
  }
  .route-side{
    grid-template-columns:1fr !important;
    grid-auto-rows:220px !important;
  }
  .route-main{
    min-height:360px !important;
    height:420px !important;
  }
  .intro-card,
  .route-menu,
  .text-panel,
  .why-card,
  .power-card,
  .voice-card,
  .guide-card{
    max-width:100%;
  }
  .photo-mosaic .tile,
  .photo-mosaic .main,
  .photo-mosaic .wide,
  .photo-mosaic.six-rect .tile,
  .photo-mosaic.six-rect .main,
  .extra-gallery figure,
  .extra-gallery figure.tall,
  .extra-gallery figure.wide{
    width:100% !important;
    height:320px !important;
  }
  .photo-mosaic .round,
  .photo-mosaic .square,
  .extra-gallery figure.round,
  .extra-gallery figure.square{
    width:min(100%,330px) !important;
    height:auto !important;
    aspect-ratio:1/1 !important;
    justify-self:center !important;
  }
  .arch-circle,
  .city-circle-card,
  .voice-card,
  .guide-card{
    min-width:0 !important;
  }
  .guide-copy a{
    white-space:nowrap !important;
  }
  .route-map{
    min-height:760px !important;
    overflow:hidden !important;
  }
  .marker{
    width:150px !important;
  }
  .marker img{
    width:120px !important;
    height:120px !important;
  }
}

@media (max-width:480px){
  .section-inner{
    width:min(100% - 20px,1720px) !important;
  }
  h1{
    font-size:clamp(3rem,20vw,4.6rem) !important;
  }
  h2{
    font-size:clamp(2.1rem,14vw,3.35rem) !important;
  }
  .hero{
    padding-left:16px !important;
    padding-right:16px !important;
  }
  .route-main,
  .photo-mosaic .tile,
  .photo-mosaic .main,
  .photo-mosaic .wide,
  .photo-mosaic.six-rect .tile,
  .photo-mosaic.six-rect .main,
  .extra-gallery figure,
  .extra-gallery figure.tall,
  .extra-gallery figure.wide{
    height:280px !important;
  }
  .guide-copy a{
    font-size:.95rem !important;
  }
}
