/* Navigation publique unique, y compris les tablettes en portrait. */
html body .site-shell-header{background:transparent!important}
html body .site-shell-header .topbar{
 background:rgba(3,16,10,.58)!important;background-image:none!important;
 backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
@media(min-width:1101px){
 html body .site-shell-header .menu-button{display:none!important}
 html body .site-shell-header .nav{display:flex!important}
 html body .site-shell-header .products-nav[data-pc-products-open] .mega-menu{
  display:grid!important;opacity:1!important;visibility:visible!important;
  pointer-events:auto!important;transform:translate(-50%,0)!important;
 }
 html body .site-shell-header .products-nav[data-pc-products-ready]:not([data-pc-products-open]) .mega-menu{
  display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
 }
}
@media(max-width:1100px){
 html body .site-shell-header .topbar{display:flex!important;gap:12px!important;padding:0 16px!important}
 html body .site-shell-header .brand{min-width:0!important;flex:1 1 auto!important}
 html body .site-shell-header .brand img{width:clamp(120px,26vw,230px)!important;max-width:100%!important;height:auto!important;max-height:66px!important;object-fit:contain}
 html body .site-shell-header .menu-button{
 display:flex!important;align-items:center;justify-content:center;flex:0 0 44px;
 width:44px;height:44px;margin:0!important;padding:0!important;order:3;
 border:1px solid #dfbc6480!important;border-radius:50%;background:#082418dd!important;color:#f0cf78!important;font-size:0!important;
 }
 html body .site-shell-header .menu-button>*{display:none!important}
 html body .site-shell-header .menu-button::before{content:"☰";font:23px/1 Arial}
 html body .site-shell-header[data-pc-menu-open] .menu-button::before{content:"×";font-size:29px}
 html body .site-shell-header .header-tools{display:flex!important;gap:6px!important;margin:0!important}
 html body .site-shell-header .header-tools>a{display:flex!important;align-items:center;justify-content:center;width:36px!important;height:44px!important;padding:4px!important}
 html body .site-shell-header .header-tools svg{width:25px!important;height:25px!important}
 html body .site-shell-header .nav{
 display:none!important;position:absolute!important;top:100%!important;left:12px!important;right:12px!important;
 width:auto!important;transform:none!important;margin:0!important;padding:14px!important;
 max-height:calc(100svh - 170px);overflow-y:auto;z-index:90!important;
 border:1px solid #d8b25080;border-radius:14px;background:#062017!important;box-shadow:0 16px 30px #0006;
 opacity:1!important;visibility:visible!important;pointer-events:auto!important;
 }
 html body .site-shell-header[data-pc-menu-open] .nav{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important}
 html body .site-shell-header .nav>a,html body .site-shell-header .products-trigger{display:flex!important;align-items:center!important;min-height:46px!important;padding:12px 16px!important;width:100%!important}
 html body .site-shell-header .products-nav{width:100%!important}
 html body .site-shell-header .mega-menu{display:none!important}
 html body .site-shell-header .menu-button:focus-visible{outline:2px solid #ffe5a3;outline-offset:3px}
}
@media(max-width:360px){
 html body .site-shell-header .topbar{gap:6px!important;padding:0 8px!important}
 html body .site-shell-header .header-tools{gap:2px!important}
 html body .site-shell-header .header-tools>a{width:30px!important}
}

/* Le décor appartient à la page, jamais au header. */
:root{--pc-header-height:158px}
@media(max-width:1000px){:root{--pc-header-height:116px}}
html body main:has(> :is(.hero-store,.practical-hero,.contact-hero,.recipe-hero,.advice-hero,.about-hero,.service-hero,.legal-hero-v2,.terms-hero,.about-story-hero,.recipe-story)){
 padding-top:0!important;
}
html body main>:is(.hero-store,.practical-hero,.contact-hero,.recipe-hero,.advice-hero,.about-hero,.service-hero,.legal-hero-v2,.terms-hero,.about-story-hero){
 box-sizing:border-box;padding-top:calc(var(--pc-header-height) + 90px)!important;
 min-height:calc(570px + var(--pc-header-height))!important;
}
html body main>.hero-store{min-height:calc(360px + var(--pc-header-height))!important}
html body main>.hero-store.compact-hero{min-height:calc(280px + var(--pc-header-height))!important}
html body main>.about-story-hero{min-height:calc(760px + var(--pc-header-height))!important}
html body main>.recipe-story{height:calc(clamp(690px,100svh - 140px,900px) + var(--pc-header-height))!important}
html body main>.recipe-story .recipe-story-copy{margin-top:calc(var(--pc-header-height)/2)}
html body .pc-enroll-hero,html body .pc-partner-hero{
 box-sizing:content-box;padding-top:var(--pc-header-height)!important;
}
html body:has(.pc-client-gate) .site-shell-header{position:absolute!important;inset:0 0 auto!important}
html body .pc-client-gate{padding-top:var(--pc-header-height)!important}
html body .site-shell-header .announcement{background:rgba(3,16,10,.75)!important}
@media(max-width:700px){
 html body main>:is(.practical-hero,.contact-hero,.recipe-hero,.advice-hero,.about-hero,.service-hero,.legal-hero-v2,.terms-hero){padding-top:calc(var(--pc-header-height) + 48px)!important}
 html body main>.recipe-story .recipe-story-copy{margin-top:0}
}

/* Navigation tactile : des cartes lisibles, sans effet de flou animé. */
@media(max-width:1100px){
 html body .site-shell-header .menu-button{
  flex-basis:88px;width:88px;border-radius:999px;gap:8px;
  box-shadow:inset 0 1px #ffe9af25;background:linear-gradient(135deg,#183e2c,#071d13)!important;
 }
 html body .site-shell-header .menu-button::before{content:"";width:15px;height:10px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
 html body .site-shell-header .menu-button::after{content:"Menu";font:700 11px/1 Arial;letter-spacing:.05em}
 html body .site-shell-header[data-pc-menu-open] .menu-button::before{content:"×";border:0;width:15px;height:auto;font:24px/1 Arial}
 html body .site-shell-header[data-pc-menu-open] .menu-button::after{content:"Fermer"}
 html body .site-shell-header .nav{
  left:auto!important;right:20px!important;width:min(620px,calc(100vw - 40px))!important;
  padding:24px!important;border-radius:20px!important;
  background:linear-gradient(145deg,#153d2b,#051b12 75%)!important;
  box-shadow:0 24px 55px #0009,inset 0 1px #ffe9af26!important;
  max-height:calc(100svh - var(--pc-header-height) - 16px);overscroll-behavior:contain;
 }
 html body .site-shell-header[data-pc-menu-open] .nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}
 html body .site-shell-header .nav::before{content:"Les sentiers ProChampi";grid-column:1/-1;font:27px/1.2 Georgia,serif;color:#f6e9c9;padding:0 0 12px;border-bottom:1px solid #d9b65a40;margin-bottom:4px}
 html body .site-shell-header .nav>a,html body .site-shell-header .products-trigger{
  position:relative;box-sizing:border-box;display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center;
  gap:8px!important;min-height:98px!important;padding:18px 34px 18px 18px!important;margin:0!important;
  border:1px solid #d6b66845!important;border-radius:12px!important;background:#03170e80!important;
  color:#f5ead5!important;text-decoration:none!important;white-space:normal!important;font:600 14px/1.3 Arial!important;letter-spacing:.02em!important;
 }
 html body .site-shell-header .nav>a::after,html body .site-shell-header .products-trigger::after{
  content:attr(data-pc-description)!important;position:static!important;display:block!important;
  width:auto!important;height:auto!important;transform:none!important;background:none!important;
  color:#b9cbbb!important;font:400 12px/1.45 Arial!important;text-transform:none!important;letter-spacing:0!important;
 }
 html body .site-shell-header .nav>a::before,html body .site-shell-header .products-trigger::before{
  content:"↗";position:absolute;right:15px;top:20px;color:#dfbd68;
 }
 html body .site-shell-header .products-nav{min-width:0;display:block!important}
 html body .site-shell-header .products-emblem{display:none!important}
 html body .site-shell-header .nav>a:last-child{grid-column:1/-1;min-height:78px!important}
 html body .site-shell-header .nav .active,html body .site-shell-header .nav a[aria-current="page"]{
  border-color:#eccb78!important;background:linear-gradient(125deg,#365c38,#183b29)!important;box-shadow:inset 3px 0 #edc96a!important;color:#ffe8a6!important;
 }
 html body .site-shell-header .nav>a:focus-visible,html body .site-shell-header .products-trigger:focus-visible{outline:2px solid #ffe5a3;outline-offset:3px}
}
@media(max-width:480px){
 html body .site-shell-header .menu-button{flex-basis:44px;width:44px}
 html body .site-shell-header .menu-button::after{display:none}
 html body .site-shell-header .nav{right:10px!important;width:calc(100vw - 20px)!important;padding:16px!important}
 html body .site-shell-header[data-pc-menu-open] .nav{grid-template-columns:1fr;gap:8px!important}
 html body .site-shell-header .nav>a,html body .site-shell-header .products-trigger{min-height:72px!important;padding:14px 34px 14px 16px!important;gap:5px!important}
 html body .site-shell-header .nav::before{font-size:23px}
}

/* Conserver la hauteur utile des bannières existantes. */
html body main>:is(.practical-hero,.contact-hero){min-height:calc(620px + var(--pc-header-height))!important}
html body main>:is(.recipe-hero,.advice-hero,.about-hero){min-height:calc(650px + var(--pc-header-height))!important}
html body main>.enchanted-contact-hero{min-height:calc(720px + var(--pc-header-height))!important}
html body main>.terms-hero{min-height:calc(610px + var(--pc-header-height))!important;padding-top:calc(120px + var(--pc-header-height))!important}
html body main>.about-story-hero{min-height:calc(clamp(700px,82vh,920px) + var(--pc-header-height))!important}
@media(max-width:900px){
 html body main>.recipe-story{height:calc(760px + var(--pc-header-height))!important}
 html body main>:is(.practical-hero,.contact-hero,.recipe-hero,.advice-hero,.about-hero){min-height:calc(560px + var(--pc-header-height))!important}
}
@media(max-width:620px){html body main>.recipe-story{height:calc(730px + var(--pc-header-height))!important}}

html body #pc-practical-reference{padding-top:0!important}

/* Touch navigation: isolate cards from desktop pills and underline effects. */
@media(max-width:1100px){
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .products-nav{
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
 }
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a::after,
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .products-trigger::after{
  content:attr(data-pc-description)!important;position:static!important;inset:auto!important;display:block!important;
  width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important;
  color:#b9cbbb!important;font:400 12px/1.45 Arial!important;text-transform:none!important;letter-spacing:0!important;
 }
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a>span,
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .products-trigger>.products-label{
  position:static!important;inset:auto!important;width:auto!important;height:auto!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;transform:none!important;
 }
}

@media(max-width:1100px){
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a::before,
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .products-trigger::before{
  content:"↗"!important;position:absolute!important;inset:auto!important;right:15px!important;top:14px!important;
  width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important;
  color:#dfbd68!important;font:400 15px/1 Arial!important;pointer-events:none!important;
 }
 body:has(.site-shell-header[data-pc-menu-open]) [data-pcv-cookie]{
  visibility:hidden!important;pointer-events:none!important;
 }
}

/* Phones only: no top promotion strip and a complete, compact touch menu. */
@media(max-width:620px){
 :root{--pc-header-height:82px}
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header){height:82px!important}
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .topbar{top:0!important}
 html body .site-shell-header .announcement,
 html body [data-promo-position="header"]{display:none!important}
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav{
  left:10px!important;right:10px!important;width:calc(100vw - 20px)!important;padding:12px!important;
  max-height:none!important;height:auto!important;overflow:visible!important;border-radius:18px!important;
 }
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header)[data-pc-menu-open] .nav{
  grid-template-columns:1fr!important;gap:6px!important;
 }
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav::before{
  font:21px/1.2 Georgia,serif!important;padding-bottom:10px!important;margin-bottom:2px!important;
 }
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a,
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .products-trigger{
  min-height:58px!important;padding:9px 30px 9px 14px!important;gap:3px!important;font-size:13px!important;
 }
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a:last-child{min-height:58px!important}
}
@media(max-width:620px) and (max-height:560px){
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header)[data-pc-menu-open] .nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px) and (max-height:400px){
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav{padding:8px!important}
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav::before{font-size:18px!important;padding-bottom:6px!important}
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a,
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .products-trigger{min-height:44px!important;padding:7px 25px 7px 10px!important}
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a:last-child{min-height:44px!important}
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .nav>a::after,
 html body .site-shell-header:is(#prochampi-home-header,.site-shell-header) .products-trigger::after{display:none!important}
}

/* Phone banners: readable copy, visible artwork, and content-driven height. */
@media(max-width:620px){
 html body main#pc-shop-restored.store-story-page>.store-story-hero{
  box-sizing:border-box!important;height:auto!important;min-height:0!important;padding-top:var(--pc-header-height)!important;
 }
 html body #pc-shop-restored .store-story-hero>.store-story-copy{
  box-sizing:border-box!important;width:100%!important;min-height:0!important;margin:0!important;
  padding:96px 20px 48px!important;justify-content:flex-start!important;
 }
 html body #pc-shop-restored .store-story-hero h1{
  font-size:clamp(30px,8.7vw,39px)!important;line-height:1.08!important;margin:12px 0 18px!important;
 }
 html body #pc-shop-restored .store-story-hero .eyebrow{
  font-size:10px!important;line-height:1.5!important;letter-spacing:.1em!important;margin:0!important;
 }
 html body #pc-shop-restored .store-story-hero .store-story-copy>p:not(.eyebrow){
  font-size:14px!important;line-height:1.55!important;margin:0!important;
 }
 html body #pc-shop-restored .store-story-hero .store-story-actions{display:flex!important;flex-wrap:wrap;gap:10px!important;margin-top:20px!important}
 html body #pc-shop-restored .store-story-hero .store-story-actions>a{box-sizing:border-box;flex:0 0 auto!important;width:100%!important;height:auto!important;min-height:48px!important;font-size:12px!important;padding:12px 14px!important;text-align:left;gap:12px!important;border-radius:14px!important}
 html body #pc-shop-restored .store-story-scroll{display:none!important}

 html body #accueil.enchanted-hero-carousel,
 html body main>.recipe-story{
  height:auto!important;min-height:0!important;padding:0!important;display:block!important;
 }
 html body #accueil>.hero-slides,
 html body main>.recipe-story>.recipe-story-slides{
  position:relative!important;inset:auto!important;display:grid!important;height:auto!important;
 }
 html body #accueil .hero-slide,
 html body main>.recipe-story .recipe-story-slide{
  box-sizing:border-box!important;position:relative!important;inset:auto!important;grid-area:1/1!important;
  min-width:0;min-height:0!important;padding:calc(var(--pc-header-height) + 120px) 20px 112px!important;
 }
 html body #accueil .hero-slide>img,
 html body main>.recipe-story .recipe-story-slide>img{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;
 }
 html body #accueil .hero-copy,
 html body main>.recipe-story .recipe-story-copy{
  box-sizing:border-box!important;position:relative!important;inset:auto!important;transform:none!important;
  width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;
 }
 html body #accueil .hero-copy h1,
 html body main>.recipe-story .recipe-story-copy h1{
  font-size:clamp(30px,8.7vw,39px)!important;line-height:1.08!important;margin:12px 0 18px!important;
 }
 html body #accueil .hero-copy h1 small{display:block;font-size:17px!important;line-height:1.3!important;margin-top:12px!important}
 html body #accueil .hero-eyebrow,
 html body main>.recipe-story .recipe-story-copy .eyebrow{
  font-size:10px!important;line-height:1.5!important;letter-spacing:.1em!important;margin:0!important;
 }
 html body #accueil .hero-copy .lead,
 html body main>.recipe-story .recipe-story-copy>p:not(.eyebrow){
  font-size:14px!important;line-height:1.55!important;margin:12px 0 18px!important;
 }
 html body #accueil .hero-copy .actions{display:flex!important;flex-wrap:wrap;gap:10px!important;margin-top:18px!important}
 html body #accueil .hero-copy .button,
 html body main>.recipe-story .recipe-story-copy>.button{
  box-sizing:border-box!important;min-height:44px!important;padding:12px 16px!important;font-size:12px!important;
 }
 html body #accueil .hero-divider,
 html body main>.recipe-story .story-divider{margin:14px 0!important}
 html body #accueil .hero-arrow,
 html body main>.recipe-story .recipe-story-arrow,
 html body main>.recipe-story .pc-public-banner-arrow{
  top:calc(var(--pc-header-height) + 48px)!important;width:36px!important;height:36px!important;font-size:27px!important;
 }

 html body main>.contact-hero.enchanted-contact-hero,
 html body main>.practical-hero,
 html body main>.about-story-hero{
  box-sizing:border-box!important;height:auto!important;min-height:0!important;
  padding:calc(var(--pc-header-height) + 120px) 20px 48px!important;
 }
 html body main>.contact-hero.enchanted-contact-hero>div:first-child,
 html body main>.practical-hero>div:first-child,
 html body main>.about-story-hero>.about-story-copy{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-height:0!important;margin:0!important;padding:0!important;
 }
 html body main>.contact-hero.enchanted-contact-hero h1,
 html body main>.practical-hero h1,
 html body main>.about-story-hero h1{
  font-size:clamp(30px,8.7vw,39px)!important;line-height:1.08!important;margin:12px 0 18px!important;
 }
 html body main>.contact-hero.enchanted-contact-hero .eyebrow,
 html body main>.practical-hero .eyebrow,
 html body main>.about-story-hero .eyebrow{
  font-size:10px!important;line-height:1.5!important;letter-spacing:.1em!important;margin:0!important;
 }
 html body main>.contact-hero.enchanted-contact-hero>div:first-child>p:not(.eyebrow),
 html body main>.practical-hero>div:first-child>p:not(.eyebrow),
 html body main>.about-story-hero>.about-story-copy>p:not(.eyebrow){
  font-size:14px!important;line-height:1.55!important;margin:12px 0 0!important;
 }
}

/* Final phone polish: compact theme buttons and balanced text blocks. */
@media(max-width:620px){
 html body #pc-shop-restored .store-story-hero .store-story-actions{
  flex-direction:column!important;align-items:stretch!important;
 }
 html body #pc-shop-restored .store-story-hero .store-story-actions>a>span{
  width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;font-size:12px!important;
 }
 html body #pc-shop-restored .store-story-hero h1 em,
 html body main>.recipe-story .recipe-story-copy h1 em{
  display:inline-block;max-width:100%;text-wrap:balance;
 }
 html body main>.practical-hero>div:first-child>div{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-top:22px!important;
 }
 html body main>.practical-hero>div:first-child>div>a,
 html body main>.recipe-story .recipe-story-copy>.button,
 html body #accueil .hero-copy .actions>.button{
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  min-height:48px!important;height:auto!important;padding:12px 16px!important;margin:0!important;
  border-radius:14px!important;font-size:12px!important;line-height:1.4!important;letter-spacing:.06em!important;
 }
 html body main>.practical-hero>div:first-child>div>a{width:100%!important}
 html body main>.recipe-story .recipe-story-copy>.button{width:100%!important}
 html body main>.recipe-story .recipe-story-nav{
  box-sizing:border-box!important;bottom:24px!important;max-width:calc(100% - 150px)!important;padding:5px!important;
 }
 html body main>.recipe-story .recipe-story-nav button{
  min-width:60px!important;height:38px!important;padding:0 10px!important;font-size:13px!important;
 }
 html body .contact-workspace{margin:0 12px 48px!important;border-radius:18px;overflow:hidden}
 html body .contact-workspace>aside{padding:26px 20px!important}
 html body .contact-workspace>aside h2{font-size:30px!important;line-height:1.1!important;margin:12px 0 20px!important;text-wrap:balance}
 html body .contact-workspace>aside .eyebrow{font-size:10px!important;line-height:1.5!important;letter-spacing:.1em!important}
 html body #pc-visitor-controls .pcv-cookie{box-sizing:border-box;width:56px!important;min-height:56px!important;padding:5px!important;left:8px!important;bottom:calc(10px + env(safe-area-inset-bottom))!important}
 html body #pc-visitor-controls .pcv-cookie svg{width:38px!important;height:38px!important}
 html body #pc-visitor-controls .pcv-cookie span{font-size:7px!important;letter-spacing:.1em!important}
}
