/* EMIT Maroc Web App V0.3 — functional UI, deliberately easy to restyle later */
:root{--emit03-ink:#17343c;--emit03-ink2:#244b53;--emit03-bg:#f7f6f2;--emit03-card:#fff;--emit03-soft:#eef2ef;--emit03-accent:#b76d4b;--emit03-accent2:#6f7f67;--emit03-text:#243238;--emit03-muted:#6e7a7d;--emit03-line:#e5e7e3;--emit03-radius:22px;--emit03-shadow:0 16px 42px rgba(23,52,60,.09)}
body.emit-maroc-app-active{background:var(--emit03-bg)}
.emit-v03{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--emit03-text);background:var(--emit03-bg);font-size:16px;line-height:1.55;min-height:100vh}
.emit-v03 *{box-sizing:border-box}.emit-v03 a{text-decoration:none;color:inherit}.emit-v03 img{max-width:100%;display:block}.emit-shell{width:min(1160px,calc(100% - 36px));margin:0 auto}.emit-app-header{position:relative;z-index:20;background:rgba(255,255,255,.94);border-bottom:1px solid var(--emit03-line);backdrop-filter:blur(14px)}.emit-app-header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.emit-app-brand{display:flex;align-items:center;gap:11px}.emit-app-brand>span:last-child{display:flex;flex-direction:column;line-height:1.05}.emit-app-brand strong{font-size:17px;color:var(--emit03-ink)}.emit-app-brand small{font-size:10px;color:var(--emit03-muted);text-transform:uppercase;letter-spacing:1.5px;margin-top:4px}.emit-app-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--emit03-ink);color:#fff;font-weight:800;font-size:21px}.emit-desktop-nav-v03{display:flex;gap:26px;align-items:center;font-size:14px;font-weight:650}.emit-desktop-nav-v03 a{color:#536368}.emit-desktop-nav-v03 a.is-active,.emit-desktop-nav-v03 a:hover{color:var(--emit03-accent)}.emit-back-link{font-size:13px;font-weight:650;color:var(--emit03-ink)}
.emit-hero-v03{background:linear-gradient(135deg,#183b45 0%,#42645e 52%,#a66b4c 100%);color:#fff;overflow:hidden}.emit-hero-inner{min-height:500px;display:grid;grid-template-columns:1fr 280px;align-items:center;gap:70px;padding:65px 0}.emit-hero-copy{max-width:720px}.emit-kicker{display:inline-block;font-size:11px;font-weight:750;letter-spacing:1.65px;text-transform:uppercase;color:#f4d2a8}.emit-kicker-dark{color:var(--emit03-accent)}.emit-hero-v03 h1{font-size:clamp(42px,6vw,72px);line-height:.98;letter-spacing:-2.4px;margin:15px 0 22px;color:#fff}.emit-hero-v03 h1 em{font-style:normal;color:#f1d4a7}.emit-hero-v03 p{max-width:610px;color:rgba(255,255,255,.84);font-size:18px}.emit-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.emit-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;font-weight:750;font-size:13px;transition:.2s}.emit-btn:hover{transform:translateY(-2px)}.emit-btn-primary{background:#fff;color:var(--emit03-ink)}.emit-btn-ghost{border:1px solid rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.08)}.emit-btn-dark{background:var(--emit03-ink);color:#fff}.emit-hero-stat{padding:30px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);border-radius:28px;backdrop-filter:blur(10px)}.emit-hero-stat strong{display:block;font-size:64px;line-height:1}.emit-hero-stat span{display:block;margin-top:10px;color:rgba(255,255,255,.7);font-size:13px}
.emit-search-panel{position:relative;z-index:5;margin-top:-40px}.emit-filterbar{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:10px;padding:12px;background:#fff;border:1px solid var(--emit03-line);border-radius:20px;box-shadow:var(--emit03-shadow)}.emit-filter-field{display:flex;flex-direction:column;gap:4px;padding:10px 13px;background:#f7f8f6;border-radius:13px}.emit-filter-field span{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;font-weight:750;color:var(--emit03-muted)}.emit-filter-field input,.emit-filter-field select{border:0;outline:0;background:transparent;min-height:24px;color:var(--emit03-text);font-weight:600;width:100%}.emit-filter-reset{border:0;border-radius:13px;padding:0 18px;background:var(--emit03-ink);color:#fff;font-weight:700;cursor:pointer}.emit-space-top{height:28px}
.emit-section-v03{padding:76px 0}.emit-section-muted{background:#f0f1ed}.emit-section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.emit-section-v03 h2,.emit-section-v03 h1,.emit-single-section h2{color:var(--emit03-ink);margin:7px 0 0;font-size:clamp(30px,4vw,44px);letter-spacing:-1.2px;line-height:1.05}.emit-results-count{color:var(--emit03-muted);font-size:13px}.emit-empty{padding:28px;background:#fff;border:1px dashed #cdd4d0;border-radius:18px;color:var(--emit03-muted)}.emit-empty-small{padding:18px}.emit-filter-empty{margin-top:14px}
.emit-departures-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.emit-departure-card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--emit03-line);border-radius:18px;padding:16px;transition:.2s}.emit-departure-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(23,52,60,.07)}.emit-departure-date{width:64px;min-width:64px;text-align:center;border-radius:14px;padding:9px;background:#f4eee6}.emit-departure-date strong{display:block;font-size:25px;line-height:1;color:var(--emit03-accent)}.emit-departure-date span{font-size:10px;font-weight:800;color:var(--emit03-muted)}.emit-departure-info{min-width:0;flex:1}.emit-departure-info h3{margin:0 0 7px;font-size:16px;color:var(--emit03-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emit-departure-details{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--emit03-muted)}.emit-departure-arrow{font-size:20px;color:var(--emit03-accent)}.emit-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:750;background:#edf4e9;color:#58704f}.status-few,.status-low{background:#fff2da;color:#8b651d}.status-full,.status-cancelled{background:#f8e5e2;color:#9a493e}.status-request,.status-on_request{background:#e9eef7;color:#4b6282}.status-finished{background:#ececec;color:#666}
.emit-circuit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.emit-circuit-card{background:#fff;border:1px solid var(--emit03-line);border-radius:var(--emit03-radius);overflow:hidden;transition:.2s}.emit-circuit-card:hover{transform:translateY(-4px);box-shadow:var(--emit03-shadow)}.emit-circuit-card[hidden]{display:none}.emit-circuit-media{height:220px;position:relative;display:block;background:#dfe6e1;overflow:hidden}.emit-circuit-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.emit-circuit-card:hover .emit-circuit-media img{transform:scale(1.025)}.emit-photo-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#365b60,#b57652);color:rgba(255,255,255,.78);font-size:22px;font-weight:800;letter-spacing:2px}.emit-photo-placeholder-large{min-height:480px}.emit-circuit-type,.emit-draft-badge{position:absolute;top:14px;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.emit-circuit-type{left:14px;background:rgba(255,255,255,.93);color:var(--emit03-ink)}.emit-draft-badge{right:14px;background:#fff2d7;color:#86621b}.emit-circuit-body{padding:20px}.emit-card-meta{display:flex;gap:8px;color:var(--emit03-muted);font-size:11px}.emit-card-meta span+span:before{content:'·';margin-right:8px}.emit-circuit-body h3{font-size:20px;line-height:1.15;color:var(--emit03-ink);margin:9px 0}.emit-route-line{font-size:12px;color:var(--emit03-muted);min-height:38px;margin:0}.emit-card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--emit03-line);margin-top:16px;padding-top:14px}.emit-card-bottom small{display:block;font-size:9px;color:var(--emit03-muted);text-transform:uppercase;letter-spacing:.8px}.emit-card-bottom strong{display:block;margin-top:2px;font-size:12px;color:var(--emit03-accent2)}.emit-card-link{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--emit03-ink);color:#fff;font-size:18px}
.emit-simple-cta{background:#f7f1e7}.emit-simple-cta-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.emit-simple-cta p,.emit-single-final-cta p{max-width:700px;color:var(--emit03-muted)}
.emit-single-hero{padding:56px 0;background:#fff}.emit-single-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}.emit-single-copy h1{font-size:clamp(38px,5vw,62px);line-height:1.02;letter-spacing:-2px;color:var(--emit03-ink);margin:12px 0 14px}.emit-single-route{color:var(--emit03-muted);font-size:14px}.emit-single-intro{font-size:16px;color:#526064;max-width:650px;margin:20px 0 25px}.emit-single-cover{min-height:430px;border-radius:28px;overflow:hidden;background:#e2e6e3}.emit-single-cover img{width:100%;height:100%;min-height:430px;object-fit:cover}.emit-facts{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.emit-facts div{min-width:105px;padding:14px 16px;border:1px solid var(--emit03-line);border-radius:15px;background:#fafaf8}.emit-facts strong{display:block;font-size:22px;color:var(--emit03-ink)}.emit-facts span{font-size:10px;color:var(--emit03-muted);text-transform:uppercase;letter-spacing:.7px}.emit-single-section{padding:72px 0;background:#fff}.emit-readable{max-width:790px}.emit-readable-wide{max-width:900px}.emit-prose{color:#4f5e62;font-size:16px}.emit-itinerary{margin-top:28px;display:flex;flex-direction:column;gap:9px}.emit-day{background:#fff;border:1px solid var(--emit03-line);border-radius:16px;overflow:hidden}.emit-day summary{display:flex;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;list-style:none}.emit-day summary::-webkit-details-marker{display:none}.emit-day-number{display:grid;place-items:center;min-width:43px;height:43px;border-radius:13px;background:var(--emit03-ink);color:#fff;font-weight:800}.emit-day-heading{display:flex;flex-direction:column;flex:1}.emit-day-heading strong{color:var(--emit03-ink)}.emit-day-heading small{color:var(--emit03-muted);margin-top:2px}.emit-day-toggle{font-size:22px;color:var(--emit03-accent)}.emit-day-content{padding:0 18px 18px 75px;color:#566469}.emit-single-departures{display:flex;flex-direction:column;gap:10px;margin-top:25px}.emit-single-departure{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 18px;border:1px solid var(--emit03-line);border-radius:15px;background:#fff}.emit-single-departure>div:first-child{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.emit-single-departure-right{display:flex;gap:15px;color:var(--emit03-muted);font-size:12px}.emit-single-departure-right strong{color:var(--emit03-ink)}.emit-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px}.emit-gallery figure{margin:0;border-radius:16px;overflow:hidden;aspect-ratio:4/3}.emit-gallery img{width:100%;height:100%;object-fit:cover}.emit-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}.emit-info-card{padding:22px;background:#fafaf8;border:1px solid var(--emit03-line);border-radius:18px}.emit-info-card h3{margin:0 0 10px;color:var(--emit03-ink);font-size:16px}.emit-info-card div{font-size:13px;color:#5c696d}.emit-single-final-cta{background:#f7f1e7}
.emit-mobile-nav-v03{display:none}
@media(max-width:900px){.emit-desktop-nav-v03{display:none}.emit-hero-inner{grid-template-columns:1fr;gap:25px}.emit-hero-stat{max-width:280px}.emit-filterbar{grid-template-columns:1fr 1fr}.emit-filter-search{grid-column:1/-1}.emit-filter-reset{min-height:48px}.emit-circuit-grid{grid-template-columns:repeat(2,1fr)}.emit-departures-grid{grid-template-columns:1fr}.emit-single-hero-grid{grid-template-columns:1fr}.emit-single-cover{min-height:360px}.emit-simple-cta-inner{grid-template-columns:1fr}}
@media(max-width:640px){body.emit-maroc-app-active{padding-bottom:74px}.emit-shell{width:min(100% - 26px,1160px)}.emit-app-header-inner{min-height:64px}.emit-hero-inner{min-height:470px;padding:50px 0 65px}.emit-hero-v03 h1{font-size:46px}.emit-hero-v03 p{font-size:15px}.emit-hero-stat{display:none}.emit-search-panel{margin-top:-26px}.emit-filterbar{display:block}.emit-filter-field{margin-bottom:8px}.emit-filter-reset{width:100%;min-height:46px}.emit-section-v03,.emit-single-section{padding:58px 0}.emit-section-title-row{align-items:flex-start}.emit-circuit-grid{grid-template-columns:1fr}.emit-circuit-media{height:215px}.emit-simple-cta-inner{display:block}.emit-simple-cta .emit-btn{margin-top:14px}.emit-single-hero{padding:38px 0}.emit-single-cover{min-height:280px}.emit-single-cover img{min-height:280px}.emit-single-copy h1{font-size:40px}.emit-facts{gap:7px}.emit-facts div{min-width:92px;padding:11px 13px}.emit-day-content{padding-left:18px}.emit-single-departure{align-items:flex-start;flex-direction:column}.emit-gallery{grid-template-columns:repeat(2,1fr)}.emit-info-grid{grid-template-columns:1fr}.emit-back-link{font-size:11px}.emit-mobile-nav-v03{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;z-index:999999;left:10px;right:10px;bottom:9px;background:rgba(255,255,255,.96);border:1px solid rgba(0,0,0,.08);border-radius:19px;padding:7px 4px;box-shadow:0 12px 35px rgba(0,0,0,.16);backdrop-filter:blur(14px)}.emit-mobile-nav-v03 a{text-align:center;color:#748185;font-size:9px;font-weight:650}.emit-mobile-nav-v03 span{display:block;font-size:19px;line-height:1.2}.emit-mobile-nav-v03 small{font-size:9px}.emit-mobile-nav-v03 a.is-active{color:var(--emit03-accent)}}


/* V0.3.1 — isolate the App from OceanWP page-title chrome and keep CTA labels visible */
body.emit-maroc-app-active #page-header,
body.emit-maroc-app-active .page-header,
body.emit-maroc-app-active .page-header-title,
body.emit-maroc-app-active .site-breadcrumbs,
body.emit-maroc-app-active .breadcrumbs,
body.emit-maroc-app-active #breadcrumbs {display:none!important;}
body.emit-maroc-app-active #main #content-wrap,
body.emit-maroc-app-active #content-wrap {max-width:none!important;width:100%!important;padding:0!important;margin:0!important;}
body.emit-maroc-app-active #primary {width:100%!important;max-width:none!important;padding:0!important;border:0!important;}
body.emit-maroc-app-active #content {padding:0!important;}
body.emit-maroc-app-active .content-area {float:none!important;width:100%!important;}
.emit-v03 a.emit-btn,
.emit-v03 a.emit-btn:hover,
.emit-v03 a.emit-btn:focus {text-decoration:none!important;}
.emit-v03 a.emit-btn-dark,
.emit-v03 a.emit-btn-dark:hover,
.emit-v03 a.emit-btn-dark:focus {color:#fff!important;background:var(--emit03-ink)!important;}
.emit-v03 a.emit-btn-primary,
.emit-v03 a.emit-btn-primary:hover,
.emit-v03 a.emit-btn-primary:focus {color:var(--emit03-ink)!important;background:#fff!important;}
.emit-maroc-app-page-template {margin:0;padding:0;}

/* =========================================================
   V0.4 — DEMANDES / FORMULAIRES / WHATSAPP / E-MAIL
========================================================= */
.emit-request-section{background:#f7f1e7}.emit-request-form{background:#fff;border:1px solid var(--emit03-line);border-radius:22px;padding:24px;box-shadow:0 12px 34px rgba(23,52,60,.05)}.emit-request-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.emit-form-field{display:flex;flex-direction:column;gap:6px}.emit-form-field>span,.emit-request-context>span{font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:var(--emit03-muted);font-weight:750}.emit-form-field input,.emit-form-field select,.emit-form-field textarea{width:100%;border:1px solid var(--emit03-line);border-radius:12px;background:#fafaf8;color:var(--emit03-text);padding:12px 13px;min-height:46px;outline:none}.emit-form-field textarea{min-height:110px;resize:vertical}.emit-form-field input:focus,.emit-form-field select:focus,.emit-form-field textarea:focus{border-color:var(--emit03-accent);box-shadow:0 0 0 3px rgba(172,103,70,.08)}.emit-form-wide{grid-column:1/-1}.emit-request-context{grid-column:1/-1;padding:14px 15px;border:1px solid var(--emit03-line);border-radius:13px;background:#fafaf8}.emit-request-context strong{display:block;margin-top:3px;color:var(--emit03-ink);font-size:16px}.emit-request-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.emit-request-submit{appearance:none;border:0;border-radius:999px;min-height:48px;padding:0 20px;font-weight:750;cursor:pointer;transition:.2s}.emit-request-submit:hover{transform:translateY(-1px)}.emit-request-submit:disabled{opacity:.55;cursor:wait;transform:none}.emit-request-email{background:var(--emit03-ink);color:#fff}.emit-request-whatsapp{background:#eaf5eb;color:#2f7141}.emit-request-feedback{min-height:24px;margin-top:13px;font-size:13px}.emit-request-feedback.is-loading{color:var(--emit03-muted)}.emit-request-feedback.is-success{color:#3d7149}.emit-request-feedback.is-error{color:#9a493e}.emit-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.emit-departure-select{border:0;border-radius:999px;background:var(--emit03-ink);color:#fff;padding:8px 11px;font-size:10px;font-weight:750;cursor:pointer}.emit-departure-select:hover{opacity:.9}.emit-single-final-cta .emit-section-title-row p{max-width:760px;color:var(--emit03-muted)}
@media(max-width:640px){.emit-request-grid{grid-template-columns:1fr}.emit-form-wide,.emit-request-context{grid-column:auto}.emit-request-actions{display:grid;grid-template-columns:1fr}.emit-request-submit{width:100%}.emit-single-departure-right{width:100%;align-items:flex-start;flex-wrap:wrap}.emit-departure-select{width:100%;padding:10px 12px}}

/* V0.4.1: readable recovered content and explicit day-range labels. */
.emit-recovered-content{overflow-wrap:anywhere}.emit-recovered-content img{max-width:100%;height:auto}.emit-recovered-content table{display:block;max-width:100%;overflow-x:auto}.emit-single-app .emit-day-number{min-width:72px;height:auto;min-height:43px;padding:6px;font-size:12px;text-align:center}.emit-single-app .emit-day-heading{min-width:0;overflow-wrap:anywhere}

/* V0.5.3 — standalone Web App shell: no Astra/OceanWP visual chrome or site title. */
body.emit-standalone-shell{margin:0!important;padding:0!important;background:#fff!important;overflow-x:hidden}
body.emit-standalone-shell #wpadminbar{z-index:1000000}
body.emit-maroc-app-active :is(#masthead,.site-header,.ast-primary-header-bar,.ast-mobile-header-wrap,.site-branding,.site-title,.custom-logo-link + .site-title,#colophon,.site-footer,.ast-footer-overlay,.entry-header,.entry-title,.page-title,.ast-breadcrumbs-wrapper){display:none!important}
body.emit-maroc-app-active .site-content,body.emit-maroc-app-active .ast-container,body.emit-maroc-app-active #content{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
/* V0.5.3 — richer Explorer filters */
@media(min-width:901px){.emit-filterbar{grid-template-columns:1.35fr repeat(4,minmax(125px,.82fr)) auto;gap:8px}.emit-filter-field{padding:9px 10px}.emit-filter-reset{padding:0 14px}}
.emit-form-consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.5;color:var(--emit03-muted);padding:4px 2px}.emit-form-consent input{margin-top:3px;flex:0 0 auto}.emit-form-consent a{text-decoration:underline!important;color:var(--emit03-ink)!important}
