/* Identité publique Mafate Café · P41. Polices système et images locales légères. */
:root{--mafate-green:#244c3b;--mafate-cream:#faf6ee;--mafate-paper:#fffdf8;--mafate-line:#d9dfd1;--mafate-ochre:#a54e30}
body>.masthead,body>.header,body>main{width:min(1180px,calc(100% - 48px));max-width:1180px;margin-left:auto;margin-right:auto}
body>.header,body>.masthead{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;border:0;border-bottom:1px solid var(--mafate-line);background:transparent}
body>main.layout,body[data-traiteur-mode]>main{padding-left:0;padding-right:0}
.masthead .brand,.header .brand{display:block;width:auto;font:800 23px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.07em;color:var(--mafate-green);text-decoration:none}
.masthead .brand span,.header .brand span{display:block;margin-top:6px;font:italic 17px/1.35 Georgia,serif;letter-spacing:0;color:#5c6d5d}
.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.masthead .header-contact,.masthead .contact,.masthead .header-pro,.header .basket-link,.header .header-pro{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 15px;min-height:44px;border:1px solid #c8d2be;border-radius:12px;background:var(--mafate-paper);font-size:15px;line-height:1.4;color:var(--mafate-green);text-decoration:none;flex-shrink:0}
.masthead .header-contact .journey-icon{width:21px;height:21px}
.mafate-navigation-shell{width:100%;margin:0 auto 26px;padding:18px 0 13px;border-bottom:1px solid var(--mafate-line)}
body>.mafate-navigation-shell{width:min(1180px,calc(100% - 48px))}
.mafate-navigation-shell>.client-navigation{display:block;width:100%;max-width:none;margin:0;padding:0;border:0;background:none}
.mafate-navigation-shell .home-navigation-primary,.mafate-navigation-primary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.mafate-navigation-shell .client-navigation .home-navigation-action,.mafate-navigation-shell .client-navigation .mafate-navigation-action{display:flex;align-items:center;justify-content:center;min-height:56px;padding:14px 10px;border:1px solid var(--mafate-green);border-radius:10px;background:var(--mafate-green);color:var(--mafate-paper);font-size:18px;font-weight:750;line-height:1.35;letter-spacing:.025em;text-align:center;text-decoration:none}
.mafate-navigation-shell .client-navigation .home-navigation-action:hover,.mafate-navigation-shell .client-navigation .mafate-navigation-action:hover{background:#365f49;border-color:#365f49;color:#fff}
.mafate-navigation-shell .client-navigation .mafate-navigation-action[aria-current=page]{box-shadow:inset 0 -4px #dfc28b}
.mafate-navigation-shell .home-navigation-secondary,.mafate-navigation-secondary{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0 21px;margin:6px 0 0}
.mafate-navigation-shell .client-navigation .home-navigation-link,.mafate-navigation-shell .client-navigation .mafate-navigation-link{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:7px 0;border:0;border-radius:5px;background:none;color:#526555;font-size:14px;font-weight:550;line-height:1.4;text-decoration:none}
.mafate-navigation-shell .client-navigation .home-navigation-link:hover,.mafate-navigation-shell .client-navigation .mafate-navigation-link:hover{text-decoration:underline;text-underline-offset:4px}
.mafate-navigation-shell .client-navigation .home-navigation-link[aria-current=page],.mafate-navigation-shell .client-navigation .mafate-navigation-link[aria-current=page]{color:var(--mafate-green);font-weight:750}
.mafate-navigation-shell .journey-icon{width:19px;height:19px;flex-shrink:0}
.mafate-navigation-shell .mafate-promesse{display:flex;align-items:center;justify-content:center;gap:8px;margin:5px 0 0;padding:0;border:0;border-radius:0;background:none;color:var(--mafate-green);font-size:16px;font-weight:650;line-height:1.5;text-align:center;text-wrap:balance}
.mafate-promesse svg{width:23px;height:23px;flex:0 0 23px;color:#7c8d51}
.mafate-navigation-shell a:focus-visible{outline:3px solid var(--mafate-ochre);outline-offset:3px}

/* Le texte et la photo appartiennent au même accueil, avec la même hauteur. */
.hero.mafate-hero,.information-page .legal-hero.mafate-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:stretch;gap:0;padding:0;margin:0 0 32px;border:1px solid #e1ddcf;border-radius:24px;overflow:hidden;background:#f1eddf}
.mafate-hero .mafate-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:32px}
.mafate-hero .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.11em;margin:0 0 15px;color:#5d715c}
.hero.mafate-hero h1,.legal-hero.mafate-hero h1{font:500 clamp(40px,4.3vw,58px)/1.07 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:0 0 20px;color:var(--mafate-green);text-wrap:balance}
.hero.mafate-hero h1 em,.legal-hero.mafate-hero h1 em{font-weight:400;color:var(--mafate-ochre)}
.hero.mafate-hero .lede,.hero.mafate-hero .hero-description,.legal-hero.mafate-hero .lede{display:block;max-width:46ch;margin:0;color:#526555;font-size:17px;line-height:1.65}
.mafate-hero .mafate-hero-photo{display:block;position:relative;align-self:stretch;min-width:0;min-height:340px;margin:0;border:0;border-radius:0;background:#e5eadb;overflow:hidden}
.mafate-hero .mafate-hero-photo img{display:block;width:100%;height:100%;min-height:340px;aspect-ratio:auto;object-fit:cover;object-position:center;border-radius:0}
.hero-discover{display:inline-flex;align-items:center;gap:22px;min-height:48px;margin-top:24px;padding:11px 16px;border:1px solid #b9c7a7;border-radius:10px;background:#fffdf8;color:var(--mafate-green);font-size:16px;font-weight:650;text-decoration:none}
.hero-discover:hover{background:#e7ecd9}.hero-discover:focus-visible{outline:3px solid var(--mafate-ochre);outline-offset:3px}

/* La maison, ses spécialités, son engagement et ses distinctions. */
.mafate-engagement{margin:44px 0 0;padding:32px;background:#eee9dc;border:1px solid #dcd4bd;border-radius:24px;color:#243e31;text-align:left}
body>.mafate-engagement{width:min(1180px,calc(100% - 48px));margin:44px auto 0}
.mafate-engagement-intro{display:grid;grid-template-columns:minmax(200px,.75fr) minmax(0,1.5fr);gap:36px;align-items:center}
.mafate-brand-seal{padding:0 28px 0 0;border-right:1px solid #cec7b5;text-align:center}
.mafate-engagement-logo{display:block;width:148px;height:148px;object-fit:contain;margin:0 auto 10px}
.mafate-brand-seal>p{margin:0;font:800 17px/1.3 system-ui,sans-serif;letter-spacing:.07em;color:var(--mafate-green)}
.mafate-brand-seal>p span{display:block;margin-top:7px;font:italic 19px/1.35 Georgia,serif;letter-spacing:0;text-wrap:balance}
.mafate-engagement .eyebrow{margin:0 0 12px;letter-spacing:.11em;font-size:12px;font-weight:750;line-height:1.5;text-transform:uppercase;color:#7a5734}
.mafate-engagement h2{max-width:21ch;font:500 clamp(30px,3.4vw,40px)/1.13 Georgia,serif;letter-spacing:-.025em;margin:0 0 15px;color:var(--mafate-green);text-wrap:balance}
.mafate-engagement-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;margin:0;max-width:57ch;color:#526555}
.mafate-engagement-details{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
.mafate-signatures,.mafate-engagement .mafate-esus{display:flex;align-items:flex-start;gap:14px;min-width:0;padding:21px;border:1px solid #d8d1be;border-radius:15px;background:#fffdf7}
.mafate-detail-icon{width:31px;height:31px;flex:0 0 31px;color:#957147}
.mafate-signatures h3,.mafate-engagement .mafate-esus strong{display:block;margin:0 0 6px;font:750 16px/1.4 system-ui,sans-serif;color:var(--mafate-green)}
.mafate-signatures p,.mafate-engagement .mafate-esus{font-size:16px;font-weight:400;line-height:1.6;margin-bottom:0}
.mafate-signatures p{margin:0;color:#526555}
.mafate-engagement .mafate-esus{background:var(--mafate-green);border-color:var(--mafate-green);color:#f4f3e9;text-decoration:none}
.mafate-engagement .mafate-esus strong{color:#fffdf7}.mafate-engagement .mafate-esus .mafate-detail-icon{color:#d9e3b4}.mafate-engagement .mafate-esus:hover{background:#315c46}
.mafate-detail-arrow{margin-left:auto;font-size:21px;color:#e0d5b1}
.mafate-awards-heading{display:flex;align-items:center;gap:16px;margin-top:28px}
.mafate-awards-heading .eyebrow{margin:0}.mafate-awards-heading>span{flex:1;border-top:1px solid #ccc5b4}
.mafate-awards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;margin:14px 0 0;list-style:none;border:0}
.mafate-awards li{min-width:0;padding:0;margin:0}
.mafate-awards a{color:inherit;text-decoration:none;display:block;height:100%;padding:18px;border:1px solid #d8d1be;border-radius:13px;background:#faf8f0}
.mafate-awards a:hover{background:#fffdf8}.mafate-awards a:hover strong{text-decoration:underline;text-underline-offset:3px}
.mafate-award-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.mafate-awards .mafate-award-icon{display:block;width:27px;height:27px;margin:0;color:#917042;flex-shrink:0}
.mafate-awards .mafate-award-top span{font-size:14px;color:#7f6240;font-weight:750}
.mafate-awards strong{display:block;font-size:15px;line-height:1.45;font-weight:700}
.mafate-awards small{display:block;font-size:13px;line-height:1.5;color:#60705d;margin-top:7px}
.mafate-engagement a:focus-visible{outline:3px solid var(--mafate-ochre);outline-offset:4px}
.customer-help-photo{display:block;width:150px;height:125px;object-fit:cover;border-radius:16px;flex-shrink:0}
.customer-help:has(.customer-help-photo){display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center}.customer-help:has(.customer-help-photo)>div:last-child{grid-column:2}

@media(max-width:850px){.mafate-hero .mafate-hero-copy{padding:26px}.mafate-engagement{padding:26px}.mafate-engagement-intro{gap:26px;grid-template-columns:minmax(180px,.8fr) minmax(0,1.4fr)}.mafate-brand-seal{padding-right:24px}.mafate-engagement-details{gap:12px}.mafate-signatures,.mafate-engagement .mafate-esus{padding:18px}.mafate-awards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 body>.masthead,body>.header,body>main,body>.mafate-navigation-shell,body>.mafate-engagement{width:calc(100% - 36px)}
 body>.header,body>.masthead{padding:18px 0;gap:12px;align-items:center}
 .masthead .brand,.header .brand{font-size:19px;letter-spacing:.05em}.masthead .brand span,.header .brand span{font-size:14px;max-width:190px;margin-top:5px}
 .header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.masthead .header-contact,.masthead .contact,.masthead .header-pro,.header .basket-link,.header .header-pro{font-size:13px;gap:6px;padding:9px 11px;max-width:132px;text-align:center}
 .mafate-navigation-shell{padding:14px 0 12px;margin-bottom:22px}
 .mafate-navigation-shell .home-navigation-primary,.mafate-navigation-primary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .mafate-navigation-shell .client-navigation .home-navigation-action,.mafate-navigation-shell .client-navigation .mafate-navigation-action{font-size:16px;min-height:52px;padding:12px 8px;letter-spacing:.015em}
 .mafate-navigation-shell .home-navigation-secondary,.mafate-navigation-secondary{gap:0 15px;justify-content:center;margin-top:5px}
 .mafate-navigation-shell .client-navigation .home-navigation-link,.mafate-navigation-shell .client-navigation .mafate-navigation-link{font-size:13px;gap:5px;min-height:39px}
 .mafate-navigation-shell .journey-icon{width:17px;height:17px}
 .mafate-navigation-shell .mafate-promesse{align-items:center;font-size:14px;line-height:1.55;gap:6px;margin-top:7px}.mafate-promesse svg{width:20px;height:20px;flex-basis:20px}
 .hero.mafate-hero,.information-page .legal-hero.mafate-hero{grid-template-columns:1fr;gap:0;border-radius:20px;margin-bottom:28px;padding:0}
 .mafate-hero .mafate-hero-copy{padding:25px 24px}.hero.mafate-hero h1,.legal-hero.mafate-hero h1{font-size:43px;margin-bottom:17px}
 .hero.mafate-hero .lede,.hero.mafate-hero .hero-description,.legal-hero.mafate-hero .lede{font-size:16px;line-height:1.65}
 .mafate-hero .mafate-hero-photo{min-height:0;max-height:none}.mafate-hero .mafate-hero-photo img{height:auto;min-height:0;aspect-ratio:16/10;max-height:none}
 .hero-discover{font-size:15px;margin-top:20px;min-height:46px}
 .mafate-engagement{padding:24px 20px;margin-top:32px;border-radius:20px}.mafate-engagement-intro{display:block}
 .mafate-brand-seal{display:flex;align-items:center;gap:16px;text-align:left;border-right:0;border-bottom:1px solid #cec7b5;padding:0 0 22px;margin-bottom:24px}
 .mafate-engagement-logo{width:95px;height:95px;margin:0;flex:0 0 95px}.mafate-brand-seal>p{font-size:16px}.mafate-brand-seal>p span{font-size:18px}
 .mafate-engagement h2{font-size:33px;max-width:21ch}.mafate-engagement-copy>p:not(.eyebrow){font-size:16px}
 .mafate-engagement-details{grid-template-columns:1fr;gap:12px;margin-top:24px}.mafate-signatures,.mafate-engagement .mafate-esus{padding:18px;gap:12px}
 .mafate-awards{gap:10px}.mafate-awards a{padding:14px}.mafate-awards strong{font-size:14px}.mafate-awards small{font-size:12px}.mafate-awards-heading .eyebrow{font-size:11px}
 .customer-help:has(.customer-help-photo){display:block}.customer-help-photo{width:100%;height:135px;margin-bottom:1rem}
}
@media(max-width:380px){.masthead .brand,.header .brand{font-size:17px}.masthead .brand span,.header .brand span{font-size:13px}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.masthead .header-contact,.masthead .contact,.masthead .header-pro,.header .basket-link,.header .header-pro{font-size:12px;padding:9px;max-width:115px}.hero.mafate-hero h1,.legal-hero.mafate-hero h1{font-size:38px}.mafate-hero .mafate-hero-copy{padding:23px 20px}.mafate-engagement-logo{width:80px;height:80px;flex-basis:80px}.mafate-brand-seal{gap:12px}.mafate-awards{grid-template-columns:1fr 1fr}}
@media print{.mafate-navigation-shell{display:none}.hero.mafate-hero{display:block}.mafate-hero .mafate-hero-photo{display:none}}

/* P41 : téléphone lisible et introduction traiteur compacte sur mobile. */
@media(max-width:700px){
 .masthead .contact{flex-direction:column;gap:2px;line-height:1.35}
 .masthead .contact strong{white-space:nowrap;font-size:14px;line-height:1.35}
 body[data-traiteur-mode] .hero.mafate-hero h1{font-size:clamp(33px,9vw,38px);margin-bottom:15px}
 body[data-traiteur-mode] .mafate-hero .hero-tags{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:13px}
 body[data-traiteur-mode] .mafate-hero .hero-tags span{padding:0;border:0;border-radius:0;background:none;font-size:12.5px;line-height:1.5;font-weight:600;color:#526555}
 body[data-traiteur-mode] .mafate-hero .hero-actions{margin-top:16px;gap:9px;width:100%}
}
@media(max-width:380px){.masthead .contact strong{font-size:13px}}

/* Accès professionnel compact, à côté des commandes et du contact. */
.header-actions .header-pro{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 13px;border:1px solid #bbc9b3;border-radius:10px;background:#fffdf7;color:#244b36;text-decoration:none;font:700 13px/1.2 system-ui,-apple-system,sans-serif;white-space:nowrap}.header-actions .header-pro:hover{background:#edf1e3}.header-actions .header-pro:focus-visible{outline:3px solid #a56e36;outline-offset:3px}@media(max-width:700px){.header-actions{gap:6px}.header-actions .header-pro,.masthead .header-contact,.masthead .contact,.header .basket-link{min-height:40px;padding:8px 9px;font-size:12px}.header-actions .header-pro{font-size:12px}}

@media(max-width:700px){body>.masthead,body>.header{gap:10px;flex-wrap:wrap}.header-actions{margin-left:auto}.header-actions .header-pro{white-space:nowrap}}
