/* Public audiences reuse the original home-brnds identity, not a separate theme.
   Scope every adjustment: private spaces, shared forms and business rules stay intact. */
.page-public-landing { --landing-ink:var(--hy-ink); --landing-green:var(--hy-green); }
.audience-landing { color:var(--hy-ink); background:var(--hy-cream); }
.audience-landing p { line-height:1.65; }
.audience-landing a { overflow-wrap:anywhere; }
.audience-landing h1,.audience-landing h2,.audience-landing h3 { text-wrap:balance; }
.audience-landing :focus-visible { outline:3px solid var(--hy-coral-dark); outline-offset:5px; }

/* Restore the old hero: oversized display type, human photography, organic frame,
   floating notes, coral/yellow accents and the dark principles ribbon. */
.home-brnds .landing-hero { padding-top:clamp(2.75rem,5vw,5rem); }
.home-brnds .landing-hero-inner { margin-inline:auto; align-items:center; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:clamp(2.5rem,5vw,5rem); }
.home-brnds .landing-copy { padding-bottom:4rem; min-width:0; }
.home-brnds .landing-copy h1 { max-width:11ch; margin:1.15rem 0 1.5rem; font-size:clamp(3.5rem,6vw,5.8rem); font-weight:750; line-height:1.04; letter-spacing:-.045em; }
.home-brnds .landing-copy h1 span { display:block; }
.home-brnds .landing-eyebrow { text-transform:uppercase; color:var(--hy-coral-dark); font-size:.78rem; font-weight:800; letter-spacing:.1em; }
.home-brnds .landing-copy .landing-lead { max-width:35ch; margin:0 0 1rem; font-size:clamp(1.1rem,1.5vw,1.3rem); font-weight:550; line-height:1.6; color:var(--hy-ink); }
.home-brnds .landing-copy > p:not(.landing-eyebrow):not(.landing-lead):not(.landing-note) { max-width:53ch; color:#425f58; margin:1rem 0; }
.landing-actions { display:flex; flex-wrap:wrap; gap:.875rem; margin:2rem 0 1.25rem; }
/* Same hierarchy and press feedback as the existing site's shared buttons. */
body.page-public-landing .audience-landing .btn { display:inline-flex; align-items:center; justify-content:center; gap:.6rem; min-height:52px; padding:.9rem 1.4rem; border-radius:14px; border:2px solid var(--hy-ink); font-size:1rem; line-height:1.4; font-weight:750; white-space:normal; text-align:center; text-decoration:none; transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease; }
body.page-public-landing .audience-landing .btn-primary { background:var(--hy-ink); color:var(--hy-white); box-shadow:0 4px 12px rgb(18 59 53 / 10%); }
body.page-public-landing .audience-landing .btn-secondary { background:var(--hy-white); color:var(--hy-ink); border-color:#92aea1; box-shadow:none; }
@media(hover:hover) {
 body.page-public-landing .audience-landing .btn:hover { transform:none; background:var(--hy-green-dark); border-color:var(--hy-green-dark); color:white; box-shadow:0 4px 12px rgb(18 59 53 / 10%); }
 body.page-public-landing .audience-landing .btn-secondary:hover { background:var(--hy-mint); color:var(--hy-ink); border-color:var(--hy-ink); box-shadow:none; }
}
body.page-public-landing .audience-landing .btn:active { transform:translateY(1px); box-shadow:none; }
.landing-note { max-width:58ch; font-size:.9rem; line-height:1.65; color:#425f58; }
.home-brnds .landing-hero-media { min-height:600px; padding-bottom:3.5rem; align-self:stretch; }
.home-brnds .landing-hero-media .hero-visual { min-height:560px; }
.home-brnds .landing-hero-media .hero-visual img { min-height:560px; }
.home-brnds .pro-landing .hero-visual img { object-position:61% 50%; }
.home-brnds .landing-hero-media .hero-float-card strong { font-size:.9rem; line-height:1.35; }
.home-brnds .landing-hero-media .hero-float-card div span { font-size:.8rem; line-height:1.4; }
.home-brnds .landing-hero-media .hero-float-card { width:min(295px,75%); }
.home-brnds .hero-marquee>div { width:100%; flex-wrap:wrap; gap:1rem clamp(1rem,2.5vw,3rem); }
.home-brnds .hero-marquee span { font-size:.9rem; }

/* Alternate generous cream/mint sections and tactile numbered cards. */
.landing-section { position:relative; isolation:isolate; width:min(calc(100% - 2 * var(--cm-gutter)),1240px); margin:0 auto; padding:clamp(3.5rem,6vw,6rem) 0; }
.landing-section-heading { max-width:800px; margin-bottom:2.5rem; }
.home-brnds .landing-section h2 { margin:.8rem 0 1.3rem; font-size:clamp(2.4rem,4.3vw,4rem); line-height:1.09; letter-spacing:-.035em; }
.landing-section h3 { margin:1rem 0 .8rem; }
.landing-section p { margin:.8rem 0; }
.landing-section:before { content:''; position:absolute; z-index:-1; inset:0 calc(-1 * (100vw - 100%) / 2); background:var(--hy-cream); }
#mon-quotidien:before,#fonctionnement:before { background:var(--hy-mint); }
.landing-status { display:block; max-width:700px; margin-top:1.5rem; padding:1rem 1.2rem; border:1px solid rgb(18 59 53 / 15%); border-left:4px solid var(--hy-green); border-radius:0 14px 14px 0; background:rgb(255 254 251 / 75%); font-size:.95rem; }
.landing-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.4rem; }
.landing-cards article { min-width:0; padding:2rem 1.75rem; border:1px solid rgb(18 59 53 / 12%); border-radius:26px; background:var(--hy-white); box-shadow:0 6px 0 rgb(18 59 53 / 10%),0 14px 26px rgb(18 59 53 / 5%); }
.landing-cards article:nth-child(2) { background:#fff3cf; transform:rotate(-1deg); }
.landing-cards article:nth-child(3) { background:#f6edff; }
.landing-cards article>span { display:inline-flex; align-items:center; min-height:40px; padding:.45rem .85rem; border-radius:12px; background:var(--hy-ink); color:white; font-size:.9rem; font-weight:750; }
.home-brnds .landing-cards h3 { font-size:1.7rem; line-height:1.18; letter-spacing:-.025em; }
.landing-cards p { color:#425650; font-size:1rem; }
.landing-mint:before { background:#fff1d9; }
.landing-split,.landing-offer { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:3rem; }
.landing-split>div,.landing-offer>div { min-width:0; }
.landing-section-heading+.landing-split { gap:4rem; }
.landing-chip { display:inline-block; max-width:100%; padding:.5rem .8rem; border-radius:10px; color:var(--hy-ink); background:var(--hy-yellow); font-size:.875rem; line-height:1.5; font-weight:750; }
.landing-offer { align-items:center; gap:5rem; }
.landing-offer aside { padding:2.5rem; border-radius:32px 32px 72px 32px; color:var(--hy-white); background:var(--hy-ink-deep); box-shadow:10px 12px 0 var(--hy-mint-bright); }
.home-brnds .landing-offer aside h3 { margin:0 0 1.5rem; color:var(--hy-white); font-size:2rem; }
.landing-offer aside ul { list-style:none; padding:0; margin:0; }
.landing-offer aside li { display:flex; gap:.75rem; padding:.8rem 0; border-bottom:1px solid rgb(255 255 255 / 16%); }
.landing-offer aside li:before { content:'✓'; color:var(--hy-mint-bright); }
.landing-offer aside p { color:#e4f2ed; }
.landing-faq:before { background:#f1eee7; }
.landing-faq details { border-top:1px solid #b2c6bd; padding:1.3rem 0; max-width:900px; }
.landing-faq summary { cursor:pointer; font-size:1.1rem; font-weight:750; line-height:1.6; }
.landing-faq details p { max-width:70ch; }
.landing-final { text-align:center; }
.landing-final:before { background:var(--hy-mint); }
.landing-final>.btn { margin:1rem auto; }

/* Keep the schedule explicitly fictitious and the candidate screenshot separate
   from the live product. A visual restoration must not activate the CRM. */
.landing-product-proof { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:3.5rem; margin:4rem 0 0; }
.landing-day { min-width:0; padding:2rem; border:1px solid rgb(18 59 53 / 15%); border-radius:24px; background:var(--hy-white); box-shadow:8px 10px 0 #a8d7bd; transform:rotate(-1deg); }
.home-brnds .landing-day h2 { font-size:2.25rem; line-height:1.05; margin:1.4rem 0; }
.landing-day ol { padding:0; list-style:none; }
.landing-day li { display:flex; gap:1rem; padding:1rem 0; border-top:1px solid #d7e2dc; }
.landing-day li>span { color:var(--hy-green-dark); font-variant-numeric:tabular-nums; font-weight:800; }
.landing-day small { display:block; margin-top:.3rem; font-size:.9rem; }
.landing-proof { display:grid; grid-template-columns:minmax(0,180px) minmax(0,1fr); align-items:center; gap:1.5rem; margin:0; min-width:0; }
.landing-proof img { display:block; width:100%; height:auto; border:5px solid var(--hy-ink); border-radius:22px; box-shadow:0 16px 32px rgb(18 59 53 / 16%); }
.landing-proof figcaption { min-width:0; font-size:1rem; line-height:1.65; }
.landing-proof strong { font-family:var(--cm-font-display); font-size:1.5rem; line-height:1.2; }

/* Restore the original header's breathing room without touching private shells. */
.page-public-landing .site-header>nav.nav-public { width:min(calc(100% - 2 * var(--cm-gutter)),1240px); min-height:76px; padding:0; }
.page-public-landing .nav-public .logo { color:var(--hy-ink); font-size:1.27rem; font-weight:850; }
.page-public-landing .nav-public .logo-dot { color:var(--hy-coral); }
.page-public-landing .public-nav-actions { gap:.7rem; }
.page-public-landing .public-nav-actions>.nav-link { white-space:nowrap; }
.page-public-landing .public-nav-actions [aria-current=page] { border-radius:999px; padding:.65rem 1.1rem; color:var(--hy-ink); background:var(--hy-mint); text-decoration:none; }
.page-public-landing .nav-mobile-link[aria-current=page] { font-weight:800; text-decoration:underline; text-underline-offset:6px; }
.page-public-landing [hidden] { display:none!important; }

@media(max-width:1119px) {
 .page-public-landing .public-nav-actions>.nav-link { display:none; }
 .page-public-landing .site-header>nav.public-audience-switch { display:flex; justify-content:center; gap:1.5rem; width:100%; max-width:100%; flex-basis:100%; padding:.2rem 1rem; border-top:1px solid var(--cm-line); }
 .page-public-landing .site-header:has(.public-audience-switch) { flex-wrap:wrap; }
 .page-public-landing .public-audience-switch a { min-height:44px; display:inline-flex; align-items:center; padding:.4rem .8rem; font-size:.9rem; color:var(--hy-green-dark); }
 .page-public-landing .public-audience-switch [aria-current=page] { font-weight:800; text-decoration:underline; text-underline-offset:5px; }
 .home-brnds .landing-copy h1 { font-size:clamp(3rem,6.2vw,5.3rem); }
 .home-brnds .landing-hero-media { min-height:540px; }
 .home-brnds .landing-hero-media .hero-visual,.home-brnds .landing-hero-media .hero-visual img { min-height:500px; }
 .landing-product-proof { gap:2rem; }
 .landing-proof { grid-template-columns:minmax(0,150px) 1fr; gap:1rem; }
}
@media(max-width:759px) {
 .page-public-landing .site-header>nav.nav-public { min-height:62px; }
 .home-brnds .landing-hero { padding-top:2.25rem; }
 .home-brnds .landing-hero-inner { grid-template-columns:minmax(0,1fr); gap:2rem; }
 .home-brnds .landing-copy { padding-bottom:0; }
 .home-brnds .landing-copy h1 { max-width:12ch; margin:1rem 0 1.4rem; font-size:clamp(2.8rem,12.5vw,3.8rem); line-height:1.04; }
 .home-brnds .landing-copy .landing-lead { font-size:1.15rem; }
 .home-brnds .landing-eyebrow { font-size:.75rem; line-height:1.6; }
 .landing-actions { flex-direction:column; align-items:stretch; margin-top:1.5rem; }
 .home-brnds .landing-hero-media { min-height:390px; padding:0 1rem 2.5rem .4rem; }
 .home-brnds .landing-hero-media .hero-visual { height:360px; min-height:360px; border-width:5px; border-radius:28px 28px 75px 28px; }
 .home-brnds .landing-hero-media .hero-visual img { height:360px; min-height:360px; }
 .home-brnds .landing-hero-media .hero-float-card { padding:.6rem .7rem; width:min(270px,80%); }
 .home-brnds .landing-hero-media .hero-float-card-top { top:.65rem; left:-.3rem; }
 .home-brnds .landing-hero-media .hero-float-card-bottom { bottom:2rem; right:0; }
 .home-brnds .landing-hero-media .hero-float-card strong { font-size:.85rem; }
 .home-brnds .landing-hero-media .hero-float-card div span { font-size:.75rem; }
 .home-brnds .landing-hero-media .hero-sticker { top:6.5rem; right:-.2rem; width:4.6rem; height:4.6rem; }
 .home-brnds .hero-marquee>div { width:100%; flex-wrap:wrap; gap:.5rem .8rem; justify-content:center; padding:.9rem 1rem; }
 .home-brnds .hero-marquee span { font-size:.8rem; }
 .home-brnds .hero-marquee i { display:none; }
 .landing-section { padding:3.5rem 0; }
 .home-brnds .landing-section h2 { font-size:clamp(2rem,8.2vw,2.7rem); line-height:1.1; }
 .landing-section-heading { margin-bottom:2rem; }
 .landing-cards,.landing-split,.landing-offer,.landing-product-proof { grid-template-columns:minmax(0,1fr); gap:1.5rem; }
 .landing-cards article { padding:1.5rem; border-radius:22px; }
 .landing-cards article:nth-child(2) { transform:none; }
 .landing-product-proof { margin-top:2.5rem; gap:2.5rem; }
 .landing-day { padding:1.4rem; transform:none; box-shadow:5px 7px 0 #a8d7bd; }
 .landing-proof { grid-template-columns:minmax(0,150px) minmax(0,1fr); gap:1rem; }
 .landing-proof strong { font-size:1.3rem; }
 .landing-offer aside { padding:1.75rem; box-shadow:5px 7px 0 var(--hy-mint-bright); }
 .landing-section-heading+.landing-split { gap:1.5rem; }
}
@media(max-width:379px) {
 .landing-proof { grid-template-columns:1fr; }
 .landing-proof img { max-width:180px; margin:0 auto 1rem; }
 .home-brnds .landing-hero-media .hero-float-card { width:85%; }
 .landing-chip { font-size:.85rem; }
}
@media(prefers-reduced-motion:reduce) {
 body.page-public-landing .audience-landing .btn,body.page-public-landing .audience-landing .btn:hover,body.page-public-landing .audience-landing .btn:active { transition:none; transform:none; }
}

/* Clearer reading order; retain the existing palette, typography and photography. */
.landing-product-proof { display:block; margin-top:2rem; }
.landing-product-proof .landing-proof { max-width:760px; margin:0 auto; }
#creneaux-libres,#mon-quotidien { scroll-margin-top:130px; }
@media(max-width:759px) {
 .landing-product-proof .landing-proof { grid-template-columns:minmax(0,120px) minmax(0,1fr); gap:1rem; }
 .landing-product-proof .landing-proof strong { font-size:1.15rem; }
}

/* Editorial rhythm: separate the action, supporting note and optional detail. */
.landing-section :is(p,details)+.btn { margin-top:1rem; }
.landing-section .btn+.landing-note,.landing-section p:has(>.btn)+.landing-note { margin-top:1.25rem; }
.landing-offer>div>.btn { margin-block:1.25rem .25rem; }
.landing-terms[open]>summary { margin-bottom:.5rem; }
.landing-faq details { max-width:900px; }
.landing-faq summary { min-height:48px; padding-block:.4rem; padding-right:.75rem; }
.landing-faq details[open] { padding-bottom:1.75rem; }
.landing-faq details p { padding-left:1.2rem; margin-top:1rem; }
.landing-final>p { max-width:55ch; margin-inline:auto; }
@media(max-width:759px) {
 .landing-actions { gap:.75rem; }
 .landing-section .btn { width:100%; }
 .landing-section .landing-note { margin-top:1rem; }
 .landing-offer aside { margin-top:.5rem; }
}
