/*
Theme Name: Le Sainte Honorine
Theme URI: https://lesaintehonorine-tabac.fr/
Author: TEAMALF
Description: Thème WordPress léger et responsive pour Le Sainte Honorine.
Version: 1.6.4
Text Domain: sainte-honorine
*/
:root{--gold:#b88a2b;--dark:#181818;--cream:#f8f5ee;--text:#252525;--white:#fff;--line:#e8e2d8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:var(--text);background:#fff;line-height:1.55}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,92%);margin:auto}.top{background:#202020;color:#fff;font-size:13px}.top .wrap{display:flex;justify-content:space-between;gap:18px;padding:9px 0;flex-wrap:wrap}.nav{background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 14px #00000012}.nav .wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-family:Georgia,serif;font-size:24px;letter-spacing:1px}.brand small{display:block;font:10px Arial,sans-serif;letter-spacing:3px;text-align:center;color:#777}.menu{display:flex;gap:24px;align-items:center}.menu a:hover{color:var(--gold)}.btn{display:inline-block;padding:13px 22px;border-radius:8px;background:var(--gold);color:#fff;font-weight:700;border:1px solid var(--gold)}.btn.outline{background:transparent;border-color:#fff}.hero{min-height:510px;background-image:linear-gradient(90deg,rgba(10,10,10,.92) 0%,rgba(10,10,10,.70) 28%,rgba(10,10,10,.12) 62%,rgba(10,10,10,0) 78%),url('assets/storefront.webp');background-repeat:no-repeat,no-repeat;background-position:center,right center;background-size:100% 100%,auto 100%;background-color:#181818;display:flex;align-items:center;color:#fff}.hero-copy{width:min(540px,92%);padding:55px 0}.eyebrow{color:#d5a947;text-transform:uppercase;letter-spacing:4px;font-size:12px;font-weight:700}.hero h1{font:52px/1.02 Georgia,serif;margin:14px 0}.hero p{font-size:18px;max-width:430px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:64px 0}.section.alt{background:var(--cream)}.title{text-align:center;margin-bottom:34px}.title h2{font:42px Georgia,serif;margin:6px}.title p{color:#666}.services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.services .card{grid-column:auto}.card{border:1px solid var(--line);border-radius:12px;background:#fff;padding:0;overflow:hidden;box-shadow:0 8px 24px #00000008}.card-photo{display:block;width:100%;height:130px;object-fit:cover}.card-body{padding:18px}.card-heading{display:flex;align-items:center;gap:10px;margin-bottom:8px}.card h3{font:18px Georgia,serif;margin:0}.icon{font-size:24px;color:var(--gold);margin:0;flex:0 0 auto}.note{font-weight:700}.upload{margin-top:16px;width:100%;border:0;cursor:pointer}.features{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;gap:0}.feature{padding:22px;border-right:1px solid #ddd}.feature:last-child{border:0}.feature strong{display:block;font:18px Georgia,serif}.contact{background:#171717;color:#eee;padding:45px 0}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:28px}.contact h3{color:#d5a947;font-size:14px}.footer{background:#111;color:#aaa;border-top:1px solid #333;padding:20px 0;font-size:13px}.form-modal{display:none;position:fixed;inset:0;background:#000a;z-index:100;padding:25px;overflow:auto}.form-modal.open{display:block}.formbox{max-width:650px;margin:5vh auto;background:#fff;padding:28px;border-radius:14px;position:relative}.formbox h2{font-family:Georgia,serif}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:28px;cursor:pointer}.field{margin:14px 0}.field label{font-weight:700;display:block;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:7px}.field textarea{min-height:100px}.status{margin-top:12px;font-weight:700}.legal{font-size:12px;color:#666}.services .card:nth-last-child(2){grid-column:2}.services .card:nth-last-child(1){grid-column:3}@media(max-width:1100px){.services{grid-template-columns:repeat(3,minmax(0,1fr))}.services .card:nth-last-child(2),.services .card:nth-last-child(1){grid-column:auto}}@media(max-width:800px){.services{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){.menu{display:none}.services{grid-template-columns:1fr 1fr}.features,.contact-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:42px}}@media(max-width:560px){.top .wrap{justify-content:center;text-align:center}.nav .wrap{height:68px}.brand{font-size:19px}.nav .btn{padding:10px 12px;font-size:13px}.hero{min-height:520px;background-position:center,62% center;background-size:100% 100%,auto 100%}.hero h1{font-size:38px}.services,.features,.contact-grid{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid #ddd}.section{padding:45px 0}}

/* V1.3 — Mode vacances */
.vacation-banner{background:#e31b23;border-bottom:1px solid #b51219;color:#fff;padding:13px 0;text-align:center;font-size:16px;font-weight:600;box-shadow:0 2px 8px #0002}.vacation-banner strong{margin-right:10px;color:#fff}.print-closed{margin-top:16px;padding:12px;border:1px solid #d7b56d;background:#fff8e7;border-radius:8px;font-weight:700;color:#5c4515}

/* V1.4.3 — service cards aligned with approved visual */
.card-heading{align-items:center}
.card-heading .icon{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:#fff;font-family:Arial,sans-serif;font-size:20px;font-weight:700;line-height:1;box-shadow:0 2px 7px #0002}
.card-heading h3{line-height:1.2}

/* V1.4.8 — Promotions du moment */
.promo-zone{background:#1b1d1c;color:#fff;padding:30px 0}.promo-wrap{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:24px}.promo-kicker{font:italic 32px/1.15 Georgia,serif;color:#d6a84a;transform:rotate(-3deg);text-align:center}.promo-carousel{position:relative;min-width:0}.promo-slides{position:relative;min-height:270px}.promo-slide{display:none;position:relative;min-height:270px;border:1px solid #b88a2b;border-radius:14px;overflow:hidden;background:#f4ead4;color:#181818}.promo-slide.active{display:flex}.promo-image{order:2;flex:1;min-width:45%;background-size:cover;background-position:center}.promo-copy{flex:0 0 43%;padding:28px 30px;display:flex;flex-direction:column;justify-content:center}.promo-label{font-size:12px;font-weight:800;letter-spacing:2px;color:#9a7020}.promo-copy h2{font:700 38px/1.05 Georgia,serif;margin:6px 0 8px}.promo-date{font-weight:700;margin-bottom:4px}.promo-text p{margin:5px 0 12px}.promo-btn{align-self:flex-start;margin-top:4px}.promo-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border:0;border-radius:50%;background:#b88a2b;color:#fff;font-size:34px;line-height:1;cursor:pointer;box-shadow:0 3px 12px #0004}.promo-prev{left:-22px}.promo-next{right:-22px}.promo-dots{display:flex;justify-content:center;gap:9px;margin-top:12px}.promo-dot{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:#777;cursor:pointer}.promo-dot.active{background:#d6a84a}@media(max-width:850px){.promo-wrap{grid-template-columns:1fr}.promo-kicker{font-size:27px}.promo-slide.active{display:block}.promo-image{height:210px}.promo-copy{padding:24px}.promo-copy h2{font-size:32px}.promo-prev{left:8px}.promo-next{right:8px}}@media(max-width:560px){.promo-zone{padding:24px 0}.promo-slides,.promo-slide{min-height:0}.promo-image{height:180px}.promo-copy h2{font-size:28px}}

/* V1.5.0 — Informations légales */
.footer-legal{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.legal-links{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.legal-links span{color:#d5a947;font-weight:700}.legal-links a{color:#ddd}.legal-links a:hover{color:#d5a947;text-decoration:underline}.page .entry-content,.legal-page{width:min(900px,92%);margin:0 auto;padding:55px 0}.entry-content h1,.entry-content h2{font-family:Georgia,serif}.entry-content h2{margin-top:30px;color:#6f531d}@media(max-width:650px){.footer-legal{display:block;text-align:center}.legal-links{justify-content:center;margin-top:12px}}


/* V1.5.1 — Espace Commerçant */
.merchant-shell{width:min(1080px,92%);margin:42px auto 70px}.merchant-login{max-width:480px;margin:55px auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px;box-shadow:0 14px 40px #00000012}.merchant-login h1,.merchant-shell h1,.merchant-panel h2{font-family:Georgia,serif}.merchant-login .field input,.merchant-panel input,.merchant-panel textarea{width:100%;padding:12px;border:1px solid #d5d0c7;border-radius:8px}.merchant-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.merchant-linkbtn{border:0;background:none;color:#765817;text-decoration:underline;cursor:pointer;padding:8px 0}.merchant-reset{display:none;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.merchant-reset.open{display:block}.merchant-alert{padding:12px 14px;border-radius:8px;margin:0 0 18px;background:#fff8e7;border:1px solid #d7b56d}.merchant-alert.ok{background:#edf8ef;border-color:#a8d5ae}.merchant-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}.merchant-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:28px}.merchant-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 8px 24px #00000008}.merchant-card strong{font:21px Georgia,serif;display:block;margin-bottom:6px}.merchant-card a{color:#8a641c;font-weight:700}.merchant-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;margin:22px 0}.merchant-panel label{font-weight:700;display:block;margin:12px 0 5px}.merchant-panel textarea{min-height:95px}.merchant-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.merchant-table{width:100%;border-collapse:collapse;margin-top:14px}.merchant-table th,.merchant-table td{text-align:left;border-bottom:1px solid var(--line);padding:11px 8px;vertical-align:top}.merchant-promo-list{display:grid;gap:12px;margin-top:18px}.merchant-promo-item{border:1px solid var(--line);border-radius:10px;padding:15px;display:flex;justify-content:space-between;gap:16px;align-items:center}.merchant-small{font-size:13px;color:#666}.merchant-logout{font-weight:700;color:#7b5a18}@media(max-width:800px){.merchant-grid{grid-template-columns:1fr}.merchant-row{grid-template-columns:1fr}.merchant-table{display:block;overflow-x:auto}.merchant-head{align-items:flex-start;flex-direction:column}}

.print-important{margin:14px 0 20px;padding:14px 16px;border:2px solid #c62828;border-radius:8px;background:#fff1f1;color:#b71c1c;text-align:center;font-size:15px;line-height:1.45}.print-important strong{font-size:17px;letter-spacing:.3px}

/* V1.5.5 — demandes d’impression simplifiées */
.merchant-download{display:inline-block;margin:3px 0;color:#8b6418;font-weight:700}.merchant-deletebtn{border:1px solid #b42318;background:#fff;color:#b42318;border-radius:7px;padding:9px 12px;font-weight:700;cursor:pointer}.merchant-deletebtn:hover{background:#b42318;color:#fff}


/* V1.5.8 — Avis Google */
.reviews-section{padding:66px 0;background:#fbf8f1}.reviews-title{margin-bottom:18px}.google-rating{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;margin:0 auto 30px;font-size:20px}.google-rating strong{font:34px Georgia,serif}.google-rating small{width:100%;text-align:center;color:#666;font-size:13px}.google-word{font-size:30px;font-weight:800;letter-spacing:-1px;color:#4285f4}.review-stars{color:#f2a900;letter-spacing:2px;font-size:25px;white-space:nowrap}.review-stars.small{font-size:16px;margin-top:2px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 10px 28px #0000000a}.review-head{display:flex;align-items:center;gap:12px;margin-bottom:13px}.review-avatar{width:46px;height:46px;border-radius:50%;background:#e9e2d4;color:#6f531d;display:flex;align-items:center;justify-content:center;font-weight:800}.review-card p{margin:0;color:#444}.reviews-cta{text-align:center;margin-top:28px}.google-btn{border-radius:999px;padding:14px 25px;background:#1c3d32;border-color:#1c3d32}@media(max-width:800px){.review-grid{grid-template-columns:1fr}.google-rating{gap:9px}.google-rating strong{font-size:30px}}

/* V1.5.9 — Statistiques & contact administration */
.merchant-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0 8px}.merchant-stat{background:#faf7ef;border:1px solid #e3d8bd;border-radius:12px;padding:18px;text-align:center}.merchant-stat strong{display:block;font:28px Georgia,serif;color:#7b5a18}.merchant-stat span{font-size:13px;color:#666}.merchant-help{font-size:13px;color:#666}.merchant-file-note{font-size:12px;color:#777;margin-top:5px}@media(max-width:800px){.merchant-stats{grid-template-columns:1fr 1fr}}


/* V1.6.0 — Espace Commerçant sombre avec navigation latérale TEAMALF */
body:has(.merchant-app){background:#111820;color:#eef1f3}
body:has(.merchant-app) header,body:has(.merchant-app) footer{display:none}
.merchant-app{min-height:100vh;background:linear-gradient(135deg,#111820,#17232c);display:grid;grid-template-columns:270px minmax(0,1fr);color:#eef1f3}
.merchant-sidebar{position:sticky;top:0;height:100vh;background:#09121a;border-right:1px solid #2b3740;padding:24px 18px;display:flex;flex-direction:column;z-index:20}
.merchant-teamalf{display:block;width:210px;max-width:100%;height:auto;margin:0 auto 26px;object-fit:contain}
.merchant-sidebar nav{display:grid;gap:7px}.merchant-sidebar nav a{display:flex;gap:12px;align-items:center;color:#e9edf0;text-decoration:none;padding:13px 14px;border-radius:9px;font-weight:700;border-left:3px solid transparent}.merchant-sidebar nav a:hover{background:#26303a;color:#e6bd68;border-left-color:#e6bd68}.merchant-sidebar .merchant-side-logout{margin-top:16px;color:#e9c9c9}.merchant-side-brand{margin-top:auto;border-top:1px solid #2b3740;padding:18px 10px 0;display:grid;gap:4px}.merchant-side-brand strong{font-family:Georgia,serif;color:#fff}.merchant-side-brand small{color:#9da8b0}
.merchant-main{min-width:0}.merchant-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:34px 0 70px}.merchant-head{padding:4px 0 24px;border-bottom:1px solid #34414b}.merchant-head .eyebrow{color:#e6bd68}.merchant-head h1{color:#fff;margin:.2em 0}.merchant-head .merchant-small{color:#aeb8bf}.merchant-logout{color:#e6bd68}
.merchant-grid{display:none}.merchant-panel{background:#18242d;border:1px solid #34414b;color:#eef1f3;box-shadow:0 12px 34px #0003}.merchant-panel h2{color:#fff}.merchant-panel p,.merchant-help,.merchant-file-note,.merchant-small{color:#b9c2c8}.merchant-panel label{color:#f1f3f4}.merchant-panel input,.merchant-panel textarea{background:#f7f7f5;color:#16191b;border-color:#4b5963}.merchant-panel hr{border:0;border-top:1px solid #34414b}.merchant-table th,.merchant-table td{border-bottom-color:#34414b}.merchant-panel a,.merchant-download,.merchant-linkbtn{color:#e6bd68}.merchant-stats{gap:16px}.merchant-stat{background:#101a22;border-color:#34414b}.merchant-stat strong{color:#e6bd68}.merchant-stat span{color:#b9c2c8}.merchant-alert{color:#2b2418}.merchant-alert.ok{color:#17351d}.merchant-deletebtn{background:transparent}.merchant-panel .btn{background:#d8aa4e;color:#101820;border-color:#d8aa4e}.merchant-panel .btn:hover{filter:brightness(1.08)}
@media(max-width:900px){.merchant-app{grid-template-columns:82px minmax(0,1fr)}.merchant-sidebar{padding:18px 10px}.merchant-teamalf{width:64px;margin-bottom:20px}.merchant-sidebar nav a{justify-content:center;font-size:20px;padding:12px 8px}.merchant-sidebar nav a span,.merchant-side-brand{display:none}.merchant-shell{width:min(100% - 28px,1180px)}}
@media(max-width:600px){.merchant-app{display:block}.merchant-sidebar{position:sticky;height:auto;padding:8px 10px;flex-direction:row;align-items:center;overflow-x:auto}.merchant-teamalf{width:72px;margin:0 12px 0 0}.merchant-sidebar nav{display:flex;gap:4px}.merchant-sidebar nav a{font-size:18px;min-width:46px}.merchant-shell{width:calc(100% - 22px);padding-top:20px}.merchant-head{align-items:flex-start}.merchant-stats{grid-template-columns:1fr 1fr}}

/* V1.6.1 — l'Espace Commerçant occupe réellement tout le viewport */
body.page-espace-commercant,body:has(.merchant-app){margin:0!important;padding:0!important;background:#111820!important}
body:has(.merchant-app)>.site-header,body:has(.merchant-app)>.site-footer{display:none!important}
body:has(.merchant-app) .merchant-app{width:100vw;max-width:none;margin:0;min-height:100vh}
body:has(.merchant-app) .merchant-main{width:100%;max-width:none}
body:has(.merchant-app) .merchant-shell{max-width:none;width:100%;box-sizing:border-box;padding:34px 36px 70px;margin:0}
@media(max-width:900px){body:has(.merchant-app) .merchant-shell{width:100%;padding:28px 22px 60px}}
@media(max-width:600px){body:has(.merchant-app) .merchant-shell{width:100%;padding:20px 12px 45px}}


/* V1.6.2 — tableau de bord par rubriques */
.merchant-view{display:none!important}.merchant-view.active{display:block!important}.merchant-panel.merchant-view{margin-top:24px}.merchant-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0 0}.merchant-card{background:#18242d;border:1px solid #34414b;color:#eef1f3;box-shadow:0 12px 30px #0002;display:flex;flex-direction:column;min-height:150px}.merchant-card strong{color:#fff}.merchant-card span{color:#b9c2c8;display:block;flex:1}.merchant-card a{color:#e6bd68;font-weight:700;margin-top:18px}.merchant-welcome{min-height:180px;border:1px solid #34414b;border-radius:16px;padding:30px;background:linear-gradient(110deg,#18242df2,#1f2d37e8);display:flex;align-items:center;margin:24px 0}.merchant-welcome h2{font:36px Georgia,serif;color:#fff;margin:7px 0}.merchant-welcome p{max-width:720px;color:#c2cbd1;margin:0}.merchant-quick-title{font:28px Georgia,serif;color:#fff;margin:30px 0 4px}.merchant-sidebar nav a.active{background:linear-gradient(90deg,#6f5630,#3a3328);color:#f4cf7c;border-left-color:#e6bd68}.merchant-sidebar nav a.active:hover{color:#f4cf7c}.merchant-panel{max-width:1180px}.merchant-panel h2{margin-top:0}.merchant-head{margin-bottom:0}@media(max-width:900px){.merchant-grid{grid-template-columns:1fr 1fr}.merchant-welcome{min-height:150px}}@media(max-width:600px){.merchant-grid{grid-template-columns:1fr}.merchant-welcome{padding:22px}.merchant-welcome h2{font-size:29px}}
