/* Interior pages share the home navigation and its illustrated visual language. */
.m-home-header { position:sticky; top:0; z-index:100; background:#fff; transform:translateZ(0); }
.m-site [id] { scroll-margin-top:112px; }
.m-home-header nav.lfc-navbar { max-width:none; margin:0; }
.m-home-header .lfc-navbar-link-label { display:none!important; }
.m-home-header p { margin:0; }
.m-home-header .lfc-navbar-burger { cursor:pointer; }
.m-home-header nav.lfc-navbar .lfc-navbar-call { background-image:url('../menu/icone-telephone-v9.svg'); }
.m-home-header nav.lfc-navbar a.lfc-primary-button .lfc-text { font-weight:600!important; --lfc-font-weight:600!important; }
.m-site .lfc-menu p { margin:0; }
.m-site .lfc-menu button { font-size:28px; }

/* The decorations sit at the edges, leaving an uninterrupted reading area. */
.m-site #contenu { overflow-x:clip; }
.m-hero { max-width:none; padding-bottom:42px; overflow:visible; }
.m-hero::before { left:-24px; top:50px; width:95px; height:240px; opacity:1;
  background:url('../arc-en-ciel/svg/mobile/hero-gauche-vol.svg') left top/95px auto no-repeat; }
.m-hero::after { top:42px; right:-110px; width:190px; height:240px; opacity:1;
  background:url('../arc-en-ciel/images/hero-arc-peint-mobile-v10.webp') top right/190px auto no-repeat; }
.m-hero .m-eyebrow,.m-hero h1,.m-hero .m-intro { position:relative; }
.m-hero .m-eyebrow { max-width:calc(100% - 48px); margin-inline:auto; }
.m-hero .m-intro { max-width:640px; margin-inline:auto; }
.m-breadcrumb { color:#77796c; }
.m-content { position:relative; z-index:1; }
.m-button { background-color:#b5cf8a; background-image:none;
  box-shadow:inset 0 2px 3px #ffffff73,inset 0 -3px 0 #5a782d2e,0 12px 22px -12px #6e913c99; }
.m-meeting { background-color:#fcf1d8; }

@media(min-width:900px) {
  .m-hero { padding:0 100px 82px; }
  .m-breadcrumb { justify-content:flex-start; max-width:1320px; margin:auto; padding:28px 0 52px; }
  .m-site .m-hero h1 { max-width:960px; font-size:clamp(56px,5.5vw,82px); line-height:1.08; margin:22px auto 24px; }
  .m-hero .m-intro { max-width:720px; font-size:20px; line-height:1.65; }
  .m-hero::before { left:0; top:85px; width:260px; height:480px;
    background-image:url('../arc-en-ciel/images/fee-officielle-hero.webp'),url('/vendor/lfc/arc-en-ciel/svg/etoile-beurre.svg'),url('/vendor/lfc/arc-en-ciel/svg/etincelle-bleu.svg'),url('../arc-en-ciel/svg/maquette-hero-gauche.svg');
    background-size:auto 90px,20px,23px,165px 330px;
    background-position:90px 12px,177px 34px,160px 210px,0 24px; }
  .m-hero::after { right:-135px; top:80px; width:410px; height:450px;
    background-image:url('/vendor/lfc/arc-en-ciel/svg/etoile-bleu.svg'),url('/vendor/lfc/arc-en-ciel/svg/etoile-sauge.svg'),url('/vendor/lfc/arc-en-ciel/svg/etincelle-peche.svg'),url('../arc-en-ciel/images/hero-arc-peint-desktop-v10.webp');
    background-size:30px,24px,20px,410px 400px;
    background-position:190px 30px,125px 136px,100px 235px,0 0; }
  .m-content { max-width:1440px; padding:0 60px 90px; }
  .m-kind-faq .m-tabs,.m-location,.m-contact-phone,.d-reading-layout>.m-contents { top:112px; }
  .m-content>select { background:#fff; border-color:#cdd7bb; }
  .m-site .m-content>.lfc-nursery-home { margin:0 -60px!important; width:calc(100% + 120px)!important; }
  .m-paper { border-radius:32px; }
  .m-help { padding:42px 48px; margin-top:64px; }
  .m-meeting { max-width:1320px; margin:32px auto 100px; padding:50px 64px; border-radius:40px 70px 40px 40px; }
  .m-meeting h2 { font-size:48px; }
  .m-meeting .m-art { height:300px; max-height:300px; }
  .m-footer { padding-inline:max(60px,calc((100% - 1320px)/2)); }

  /* Open nursery cards echo the home: an illustrated arch on a quiet white card. */
  .d-cards { gap:28px; align-items:stretch; }
  .d-cards .m-nursery-card { position:relative; overflow:hidden; background:#fff; border:1px solid #e6e7df; border-radius:36px;
    box-shadow:0 14px 30px -24px #5c483052; }
  .d-cards .m-nursery-card summary { padding:28px 26px 18px; min-height:124px; }
  .d-cards .m-nursery-card summary strong { font-size:32px; }
  .d-cards .m-nursery-card summary small { margin-top:5px; color:#6b735e; }
  .d-cards .m-nursery-card .m-panel { padding:0 26px 28px; }
  .d-cards .m-nursery-card .m-art { height:240px; max-height:240px; padding:12px 8px; margin:0 0 24px;
    background:var(--m-paper) url('../arc-en-ciel/images/grain-papier.png') center/256px; border-radius:150px 150px 26px 26px; }
  .m-nursery-group { margin-top:56px; }
  .m-nursery-group>h2 { display:flex; align-items:center; gap:16px; margin-bottom:28px; }
  .m-nursery-group>h2::before { content:''; width:30px; height:30px; background:url('/vendor/lfc/arc-en-ciel/svg/etoile-sauge.svg') center/contain no-repeat; }
  .m-nursery-group+.m-nursery-group>h2::before { background-image:url('/vendor/lfc/arc-en-ciel/svg/etoile-peche.svg'); }
  .m-nursery-card .m-panel>p { min-height:110px; }
  .m-kind-nursery .m-nursery-intro { background:#fff; border:1px solid #e4ead6; border-radius:48px; padding:40px 64px;
    gap:28px 76px; box-shadow:0 20px 50px -36px #5c483052; margin-bottom:64px; }
  .m-nursery-intro .m-art { background:var(--m-paper) url('../arc-en-ciel/images/grain-papier.png') center/256px; border-radius:230px 230px 40px 40px;
    height:340px; padding:20px; }
  .m-nursery-intro p { font-size:26px; line-height:1.5; }

  /* Softer reading surfaces, the same airy rhythm as the home sections. */
  .m-question { background:#fbfcf8; border:1px solid #e4ead6; border-left-width:5px; box-shadow:none; border-radius:20px; margin-bottom:16px; }
  .m-question summary { padding:25px; }
  .m-form-panel { border-radius:36px; padding:44px; border-color:#dbe4cd; box-shadow:0 20px 48px -35px #5c483052; }
  .m-contact-phone { border-radius:150px 150px 36px 36px; padding-top:48px; }
  .m-kind-journal .m-article-card:has(.m-art) { border-radius:40px; padding:48px; }
  .d-story-intro { gap:76px; }
  .m-founders img { border-radius:40px 90px 40px 40px; }
  .d-reading-body>.m-accordion { background:#fff; border:0; border-bottom:1px solid #e4ead6; border-radius:0; padding-bottom:24px; margin-bottom:28px; }
  .d-reading-body>.m-accordion>summary { padding-left:0; }
  .d-reading-body>.m-accordion>.m-panel { padding-left:0; }
}

@media(min-width:1280px) {
  .m-nursery-group:has([data-sector=saint-pierre]) .m-nursery-card summary { min-height:150px; }
  .m-nursery-group:has([data-sector=saint-pierre]) .m-nursery-card .m-panel>p { min-height:164px; }
}

@media(min-width:1200px) {
  .m-hero { padding-inline:max(60px,calc((100% - 1320px)/2)); }
  .m-hero::before { width:330px; height:510px; background-size:auto 110px,22px,26px,215px 430px;
    background-position:140px 14px,250px 42px,218px 250px,0 20px; }
  .m-hero::after { right:-135px; width:465px; height:470px; background-size:34px,30px,24px,465px 450px;
    background-position:220px 32px,140px 136px,115px 278px,0 0; }
  .m-kind-directory .m-hero,.m-kind-nursery .m-hero { padding-bottom:96px; }
}

@media(min-width:900px) and (max-width:1199px) {
  .m-content { padding-inline:36px; }
  .m-site .m-content>.lfc-nursery-home { margin-inline:-36px!important; width:calc(100% + 72px)!important; }
  .m-meeting { margin-inline:36px; }
  .m-footer { padding-inline:36px; }
  .m-hero .m-intro { max-width:620px; }
}
