
:root{
  --ink:#071b3a;
  --blue:#0878de;
  --blue-dark:#0754a8;
  --cyan:#1ccaf0;
  --green:#8be640;
  --paper:#ffffff;
  --surface:#ffffff;
  --surface-2:#f7fbff;
  --soft:#f3f7fc;
  --line:#d9e3ee;
  --muted:#5d6c80;
  --page-bg:#eef3f8;
  --max:1180px;
  --radius:24px;
  --shadow:0 24px 70px rgba(7,27,58,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:var(--page-bg);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.55;
}
a{color:var(--blue-dark)}
img{max-width:100%;display:block}
.page-shell{
  width:min(100%, 1480px);
  margin:auto;
  background:var(--paper);
  min-height:100vh;
}
.site-header{
  max-width:var(--max);
  margin:auto;
  padding:24px 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-bottom:1px solid var(--line);
}
.brand{
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--ink);
  text-decoration:none;
}
.brand-fox{width:106px;height:58px;object-fit:contain}
.brand strong{display:block;font-size:1.7rem;line-height:1}
.brand small{display:block;color:var(--muted);margin-top:6px}
.main-nav{display:flex;align-items:center;gap:22px}
.main-nav a{color:var(--ink);text-decoration:none;font-weight:700;font-size:.94rem}
.main-nav a:hover{color:var(--blue)}

.main-nav a{
  position:relative;
  padding:8px 0;
}
.main-nav a.active,
.main-nav a[aria-current="page"]{color:var(--blue)}
.main-nav a.active::after,
.main-nav a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--blue),var(--cyan),var(--green));
}

.menu-button{display:none}
main{max-width:var(--max);margin:auto;padding:0 32px}
.hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:32px;
  align-items:center;
  padding:88px 0 96px;
}
.hero-copy{min-width:0}
.eyebrow{
  display:inline-block;
  color:var(--blue);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:800;
  font-size:.78rem;
  margin-bottom:15px;
}
h1,h2,h3{margin:0 0 18px;line-height:1.08;letter-spacing:-.035em}
h1{font-size:clamp(3rem,6vw,5.7rem)}
h2{font-size:clamp(2rem,4vw,3.3rem)}
h3{font-size:1.45rem}
p{margin:0 0 20px}
.hero-copy>p,.simple-hero>p,.intro-grid>p{
  color:var(--muted);
  font-size:1.16rem;
  max-width:720px;
}
.button-row{display:flex;flex-wrap:wrap;gap:14px;margin:34px 0}
.button{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:52px;
  padding:0 24px;
  border-radius:999px;
  font-weight:800;
  text-decoration:none;
  transition:.18s ease;
}
.button.primary{
  color:white;
  background:linear-gradient(90deg,var(--blue-dark),var(--blue),var(--green));
}
.button.primary:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(8,120,222,.25)}
.button.secondary{border:1px solid var(--line);color:var(--ink);background:white}
.button.disabled{opacity:.55;cursor:not-allowed;pointer-events:none}
.trust-list,.check-list{
  list-style:none;
  padding:0;
  margin:0;
}
.trust-list{display:flex;flex-wrap:wrap;gap:10px 24px;color:var(--muted);font-size:.94rem}
.trust-list li::before,.check-list li::before{content:"✓";color:#36c05b;font-weight:900;margin-right:9px}
.cover-card{
  background:white;
  padding:12px;
  border-radius:18px;
  box-shadow:var(--shadow);
  transform:rotate(1.5deg);
}
.cover-card img{width:100%;border-radius:10px}
.cover-card.large{max-width:500px}
.section{padding:88px 0;border-top:1px solid var(--line)}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}
.feature-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  padding:0 0 100px;
}
.feature{
  padding:28px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(145deg,var(--surface),var(--surface-2));
}
.feature-number{font-weight:900;color:var(--blue);font-size:.82rem}
.feature p{color:var(--muted);margin-bottom:0}
.closing-strip{
  margin:0 0 100px;
  padding:34px 40px 42px;
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:center;
  text-align:center;
  background:var(--soft);
  border-radius:var(--radius);
}
.closing-strip img{
  width:100%;
  max-height:330px;
  object-fit:contain;
  margin:auto;
}
.closing-strip .button{margin-top:8px}
.simple-hero{padding:78px 0 54px;border-bottom:1px solid var(--line)}
.simple-hero.narrow{max-width:850px}
.simple-hero h1{font-size:clamp(2.7rem,5vw,4.7rem)}
.edition-layout{
  display:grid;
  grid-template-columns:.8fr 1fr;
  gap:80px;
  align-items:center;
  padding:80px 0 100px;
}
.edition-copy{max-width:640px}
.check-list li{margin:14px 0;font-size:1.05rem}
.notice{
  margin:28px 0;
  padding:20px 22px;
  background:var(--soft);
  border-left:5px solid var(--blue);
}

.edition-hero{padding-bottom:42px}
.edition-pages-first{padding-top:64px}
.edition-pages-section{padding-bottom:92px}
.edition-pages-header{margin-bottom:30px}
.edition-pages-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:28px;
}
.edition-page-card{
  margin:0;
  padding:18px;
  border:1px solid var(--line);
  border-radius:22px;
  background:linear-gradient(145deg,var(--surface),var(--surface-2));
  box-shadow:var(--shadow);
}
.edition-page-card figcaption{
  margin-bottom:14px;
  font-weight:800;
  color:var(--blue);
}
.edition-page-card img{
  width:100%;
  border-radius:12px;
}
.edition-download{
  display:flex;
  justify-content:center;
  margin-top:36px;
}
.edition-cta-strip{margin-top:0}
.edition-cta-strip p{margin:0 auto 18px;color:var(--muted);max-width:760px}
.pricing-card{
  margin:70px auto 100px;
  padding:44px;
  max-width:880px;
  border:1px solid var(--line);
  border-radius:32px;
  box-shadow:var(--shadow);
}
.pricing-label{font-weight:900;color:var(--blue)}
.price{display:flex;align-items:baseline;gap:10px;margin:18px 0}
.price strong{font-size:4.5rem;line-height:1}
.price span{font-size:1.2rem;color:var(--muted)}
.pricing-card .check-list{margin:30px 0}
.faq details{
  border-top:1px solid var(--line);
  padding:20px 0;
}
.faq summary{font-weight:800;cursor:pointer;font-size:1.1rem}
.faq details p{color:var(--muted);max-width:780px;margin:12px 0 0}
.action-panel{
  max-width:760px;
  margin:70px auto 100px;
  padding:45px;
  text-align:center;
  border:1px solid var(--line);
  border-radius:30px;
  background:linear-gradient(145deg,var(--surface),var(--soft));
}
.action-panel img{width:130px;margin:0 auto 20px}
.help-text{margin-top:22px;color:var(--muted)}
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  padding:70px 0 100px;
}
.contact-card{
  padding:38px;
  border:1px solid var(--line);
  border-radius:var(--radius);
}
.contact-card.accent{background:linear-gradient(145deg,var(--surface-2),var(--soft))}
.contact-email{display:block;font-size:1.4rem;font-weight:900;margin-bottom:20px}
.legal-copy{max-width:820px;padding:50px 0 100px}
.legal-copy h2{font-size:1.65rem;margin-top:42px}
.site-footer{
  margin-top:30px;
  background:linear-gradient(135deg,#071b3a,#0878de);
  color:#ffffff;
  padding:46px max(32px,calc((100% - var(--max))/2 + 32px));
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  align-items:start;
}
.site-footer p{color:#b9c6d7}
.footer-links{display:flex;flex-wrap:wrap;gap:18px}
.footer-links a{color:white}
.copyright{grid-column:1/-1;margin:5px 0 0;font-size:.86rem}

.legal-warning{
  padding:16px 18px;
  border-left:5px solid #e2a400;
  background:rgba(226,164,0,.12);
}
.legal-date{margin-top:50px;color:var(--muted);font-size:.9rem}



.hero-title{
  font-size:clamp(2.3rem,3.6vw,3.4rem);
  max-width:none;
}
.hero-title span{
  display:block;
  white-space:nowrap;
}
.cover-card{
  width:100%;
  max-width:300px;
  justify-self:end;
}

@media (prefers-color-scheme: dark){
  :root{
    color-scheme:dark;
    --ink:#edf5ff;
    --paper:#0b1321;
    --surface:#101d2f;
    --surface-2:#13243a;
    --soft:#101d2f;
    --line:#273c56;
    --muted:#a9b8ca;
    --page-bg:#050a11;
    --shadow:0 24px 70px rgba(0,0,0,.42);
  }
  .button.secondary{background:var(--surface);color:var(--ink)}
  .site-footer{background:#050a11}
  .cover-card{box-shadow:0 24px 70px rgba(0,0,0,.55)}
  .feature,
  .pricing-card,
  .action-panel,
  .contact-card,
  .main-nav{box-shadow:none}
  .contact-card.accent{background:linear-gradient(145deg,#10263c,#173226)}
  .pricing-card,
  .action-panel,
  .contact-card{background:var(--surface)}
  .notice{background:var(--soft)}
  .cover-card{background:#e8eef5}
}

@media (max-width:950px){
  .edition-pages-grid{grid-template-columns:1fr}

  .main-nav{
    position:absolute;
    top:88px;left:22px;right:22px;
    display:none;
    padding:18px;
    flex-direction:column;
    align-items:flex-start;
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:18px;
    box-shadow:var(--shadow);
    z-index:5;
  }
  .main-nav.open{display:flex}
  .menu-button{
    display:block;
    border:1px solid var(--line);
    border-radius:999px;
    background:white;
    padding:10px 16px;
    font-weight:800;
  }
  .hero,.edition-layout{grid-template-columns:1fr;gap:50px}
  .hero-title{max-width:none}
  .hero-title span{white-space:normal}
  .hero{padding-top:62px}
  .cover-card{max-width:540px;margin:auto}
  .feature-grid{grid-template-columns:1fr 1fr}
  .intro-grid,.closing-strip,.contact-grid{grid-template-columns:1fr}
}
@media (max-width:620px){
  .edition-page-card{padding:14px}

  .site-header,main{padding-left:20px;padding-right:20px}
  .brand-fox{width:76px;height:45px}
  .brand strong{font-size:1.35rem}
  .brand small{display:none}
  h1{font-size:3.25rem}
  .feature-grid{grid-template-columns:1fr}
  .hero{padding:54px 0 70px}
  .section{padding:65px 0}
  .simple-hero{padding:58px 0 42px}
  .pricing-card,.action-panel{padding:28px;margin-top:48px}
  .button-row{flex-direction:column}
  .button{width:100%}
  .site-footer{grid-template-columns:1fr}
}




/* --- Country edition selector: discreet, always available --- */
.site-header{display:flex;align-items:center;gap:22px}
.main-nav{margin-left:auto}
.country-switch{
  display:flex;
  align-items:center;
  gap:2px;
  flex:0 0 auto;
  padding:2px;
  border:1px solid var(--line);
  border-radius:10px;
  background:transparent;
}
.country-switch a{
  color:var(--muted);
  text-decoration:none;
  font-size:.74rem;
  font-weight:800;
  line-height:1;
  padding:6px 8px;
  border-radius:7px;
}
.country-switch a:hover{color:var(--ink)}
.country-switch a.active{
  color:var(--ink);
  background:var(--soft);
}
.country-maroc .eyebrow{color:#0a7d68}
.country-maroc .button.primary{background:linear-gradient(90deg,#0754a8,#0878de,#0a9f78)}
.country-maroc .pricing-label,.country-maroc .feature-number,.country-maroc .edition-page-card figcaption{color:#0a7d68}

.origin-ribbon{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:34px;
  align-items:center;
  padding:30px 34px;
  margin:0 0 88px;
  border:1px solid var(--line);
  border-radius:22px;
  background:linear-gradient(145deg,var(--surface-2),var(--surface));
}
.origin-ribbon h2{font-size:clamp(1.55rem,2.5vw,2.15rem);margin-bottom:10px}
.origin-ribbon p{color:var(--muted);margin:0;max-width:780px}
.origin-mark{
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:16px;
  border-radius:16px;
  background:linear-gradient(135deg,#071b3a,#0878de);
  color:#ffffff;
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.edition-provenance{font-size:.92rem!important;color:var(--muted)!important;margin-top:20px!important}
.maroc-closing{background:linear-gradient(145deg,var(--soft),rgba(10,159,120,.06))}

@media (max-width:1100px){
  .site-header{flex-wrap:wrap}
  .main-nav{order:3;width:100%;justify-content:flex-end;margin-left:0}
  .country-switch{margin-left:auto}
}
@media (max-width:950px){
  .site-header{flex-wrap:nowrap;position:relative}
  .main-nav{order:initial;width:auto;margin-left:0}
  .country-switch{margin-left:auto}
  .menu-button{order:4}
  .origin-ribbon{grid-template-columns:1fr}
  .origin-mark{min-height:66px;max-width:240px}
}
@media (max-width:620px){
  .country-switch a{font-size:.69rem;padding:5px 7px}
  .country-switch{border-radius:9px}
  .origin-ribbon{padding:24px;margin-bottom:60px}
}

/* Final country-edition refinements */
.origin-mark{box-shadow:0 10px 28px rgba(7,27,58,.14)}
@media (prefers-color-scheme: dark){
  .origin-mark{background:linear-gradient(135deg,#071b3a,#0754a8);color:#fff;border:1px solid #28486d}
}
