:root{--ga-yellow:#f7b900;--ga-yellow-dark:#d99b00;--ga-ink:#29251f;--ga-brown:#3a3024;--ga-cream:#fbf8f0;--ga-paper:#fff;--ga-line:#e8e0d2;--ga-muted:#756e63;--ga-green:#63a942;--ga-red:#b84b43;--ga-shadow:0 8px 26px rgba(58,48,36,.07);--ga-radius:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.public-body{margin:0;background:var(--ga-cream);color:var(--ga-ink);font-family:"Nunito Sans",Arial,sans-serif;line-height:1.55}body.public-body a{color:var(--ga-ink);text-decoration:none}body.public-body h1,body.public-body h2,body.public-body h3{line-height:1.2;color:var(--ga-ink);margin-top:0}.public-container{width:min(1120px,calc(100% - 32px));margin:auto}
.public-header{background:#fff;border-bottom:4px solid var(--ga-yellow);box-shadow:0 2px 14px rgba(58,48,36,.06)}.public-header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}.public-brand{display:flex;align-items:center;gap:14px}.public-brand img{width:68px;height:68px;object-fit:contain}.public-brand strong{display:block;font-size:1.45rem;font-weight:800}.public-brand small{display:block;color:var(--ga-muted);font-size:.88rem}.public-nav{display:flex;gap:25px;font-weight:700}.public-nav a{padding:10px 2px;border-bottom:3px solid transparent}.public-nav a:hover{border-color:var(--ga-yellow)}.public-main{padding:38px 0 64px}
.public-hero{background:#fff;border:1px solid var(--ga-line);border-radius:var(--ga-radius);padding:42px 46px;margin-bottom:34px;box-shadow:var(--ga-shadow);position:relative;overflow:hidden}.public-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:rgba(247,185,0,.14);right:-65px;top:-80px}.public-eyebrow{text-transform:uppercase;letter-spacing:.09em;color:#8b806f;font-weight:800;font-size:.76rem}.public-hero h1{font-size:2.65rem;margin:7px 0 12px;position:relative;z-index:1}.public-hero p{max-width:730px;color:var(--ga-muted);font-size:1.08rem;margin:0;position:relative;z-index:1}.public-section-title{display:flex;align-items:end;justify-content:space-between;margin:0 0 16px}.public-section-title h2{font-size:1.7rem;margin:4px 0}.public-order-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.public-order-card{background:#fff;border:1px solid var(--ga-line);border-radius:var(--ga-radius);padding:24px;box-shadow:var(--ga-shadow);display:flex;flex-direction:column;min-height:330px}.public-status{display:inline-flex;width:max-content;background:#e8f5df;color:#4f8f37;border-radius:99px;padding:5px 11px;font-size:.76rem;font-weight:800}.public-order-card h2{font-size:1.35rem;margin:14px 0 18px}.public-meta{display:grid;gap:13px;color:#5f584e;font-size:.9rem}.public-meta strong{color:var(--ga-ink)}.public-meta-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff4cf;color:#b07b00;margin-right:7px;font-weight:800}.public-info{border-top:1px solid var(--ga-line);margin-top:18px;padding-top:14px;color:#645d52;font-size:.88rem}.public-button{margin-top:auto;width:100%;border-radius:10px;padding:12px 16px;background:var(--ga-yellow);color:#29251f!important;font-weight:800;text-align:center;display:flex;justify-content:center;gap:10px;box-shadow:0 3px 8px rgba(247,185,0,.2)}.public-button:hover{background:#ffc72b}.public-button.secondary{background:#fff;border:1px solid var(--ga-yellow-dark);box-shadow:none}.public-empty{text-align:center;padding:52px;background:#fff;border:1px solid var(--ga-line);border-radius:var(--ga-radius)}
.public-how{margin-top:30px;background:#fff;border:1px solid var(--ga-line);border-radius:var(--ga-radius);padding:28px;box-shadow:var(--ga-shadow)}.public-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.public-step{display:flex;gap:12px}.public-step-number{flex:0 0 36px;height:36px;border-radius:50%;background:var(--ga-yellow);display:grid;place-items:center;font-weight:900}.public-step p{margin:0}.public-muted{color:var(--ga-muted)}
.public-footer{background:#f1ece2;border-top:1px solid var(--ga-line)}.public-footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:38px 0}.public-footer h3{margin-bottom:8px}.public-footer p{margin:0;color:#625b51}.public-hand{font-family:"Patrick Hand",cursive;font-size:1.45rem}.public-footer-bottom{border-top:1px solid #ddd4c7;padding:14px 0;color:#746c60;font-size:.85rem}
.public-command-header{background:#fff;border:1px solid var(--ga-line);border-radius:var(--ga-radius);padding:30px 34px;margin-bottom:22px;box-shadow:var(--ga-shadow)}.public-command-header h1{font-size:2rem;margin-bottom:9px}.public-command-header p{margin:0;color:var(--ga-muted)}.public-command-notice{background:#fff8df;border:1px solid #f2d78a;border-radius:12px;padding:14px 17px;margin-top:17px}
.public-form-card{background:#fff;border:1px solid var(--ga-line);border-radius:var(--ga-radius);padding:26px;margin:18px 0;box-shadow:var(--ga-shadow)}.public-form-card h2{font-size:1.3rem;margin-bottom:18px}.public-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.public-field{margin-bottom:15px}.public-field label{display:block;font-weight:800;margin-bottom:7px}.public-field input,.public-field select,.public-field textarea{width:100%;padding:12px 13px;border:1px solid #cec5b8;border-radius:9px;background:#fff;color:var(--ga-ink);font:inherit;outline:none}.public-field input:focus,.public-field select:focus,.public-field textarea:focus{border-color:var(--ga-yellow-dark);box-shadow:0 0 0 3px rgba(247,185,0,.17)}.public-field small{color:var(--ga-muted)}.public-check{display:flex;align-items:center;gap:8px;font-weight:600}.public-check input{width:18px;height:18px;accent-color:var(--ga-yellow-dark)}
.public-products-title{font-size:1.5rem;margin:30px 0 12px}.public-accordion{background:#fff;border:1px solid var(--ga-line);border-radius:12px;overflow:hidden;margin:12px 0;box-shadow:var(--ga-shadow)}.public-accordion summary{cursor:pointer;padding:16px 20px;background:#faf6eb;font-weight:900;list-style:none}.public-accordion summary::-webkit-details-marker{display:none}.public-accordion summary:before{content:"+";display:inline-block;width:24px;color:var(--ga-yellow-dark);font-size:1.2rem}.public-accordion[open] summary:before{content:"−"}.public-product{padding:19px 20px;border-top:1px solid var(--ga-line);display:grid;grid-template-columns:1fr 190px;gap:18px;align-items:center}.public-product-info strong{font-size:1.03rem}.public-product-info p{margin:5px 0;color:var(--ga-muted);font-size:.88rem}.public-product-price{font-weight:800}.public-product-select label{font-size:.82rem;font-weight:800;display:block;margin-bottom:5px}.public-product-select select{width:100%;padding:10px;border:1px solid #cec5b8;border-radius:8px;font:inherit;background:#fff}.public-bio{display:inline-block;font-size:.7rem;font-weight:900;color:#4d8b37;border:1px solid #72b94d;border-radius:99px;padding:2px 7px;margin-left:6px}.public-tasks{display:grid;gap:10px}.public-task{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid var(--ga-line);border-radius:10px}.public-task input{margin-top:4px;width:18px;height:18px;accent-color:var(--ga-yellow-dark)}.public-submit{width:100%;border:0;cursor:pointer;font:inherit;font-weight:900;font-size:1.05rem;padding:14px 20px;border-radius:10px;background:var(--ga-yellow);color:var(--ga-ink);box-shadow:0 5px 13px rgba(247,185,0,.22)}.public-submit:hover{background:#ffc72b}.public-total{font-size:1.2rem;font-weight:900}.public-success{background:#fff;border:1px solid var(--ga-line);border-radius:var(--ga-radius);padding:35px;box-shadow:var(--ga-shadow)}.public-success .public-total{font-size:1.45rem;color:#a06f00}.public-alert{padding:14px 16px;border-radius:10px;background:#fff0ee;border:1px solid #efc5c0;color:#8d2e27;margin-bottom:18px}
@media(max-width:900px){.public-order-grid{grid-template-columns:1fr 1fr}.public-steps{grid-template-columns:1fr}.public-product{grid-template-columns:1fr}.public-footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.public-container{width:calc(100% - 22px)}.public-header-inner{min-height:74px}.public-brand img{width:52px;height:52px}.public-brand strong{font-size:1.05rem}.public-brand small{display:none}.public-nav{display:none}.public-main{padding-top:22px}.public-hero{padding:27px 23px}.public-hero h1{font-size:2rem}.public-order-grid{grid-template-columns:1fr}.public-grid{grid-template-columns:1fr}.public-form-card{padding:19px}.public-product{padding:16px}.public-footer-grid{grid-template-columns:1fr;padding:28px 0}.public-command-header{padding:23px}.public-submit{position:sticky;bottom:10px;z-index:10}.public-section-title h2{font-size:1.4rem}}


/* Informations producteur - popup */
.public-info-button{display:inline-grid;place-items:center;width:21px;height:21px;margin-left:5px;padding:0;border:1px solid var(--ga-yellow-dark);border-radius:50%;background:#fff8df;color:#9a6d00;font:inherit;font-size:.78rem;font-weight:900;line-height:1;cursor:pointer;vertical-align:middle}
.public-info-button:hover,.public-info-button:focus{background:var(--ga-yellow);outline:none;box-shadow:0 0 0 3px rgba(247,185,0,.18)}
.public-modal[hidden]{display:none}
.public-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}
.public-modal-backdrop{position:absolute;inset:0;background:rgba(41,37,31,.58)}
.public-modal-dialog{position:relative;z-index:1;width:min(560px,100%);max-height:min(80vh,700px);overflow:auto;background:var(--ga-paper);border:1px solid var(--ga-line);border-top:5px solid var(--ga-yellow);border-radius:var(--ga-radius);padding:34px 34px 30px;box-shadow:0 18px 55px rgba(41,37,31,.25)}
.public-modal-close{position:absolute;right:13px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:var(--ga-muted);font-size:1.9rem;line-height:1;cursor:pointer}
.public-modal-close:hover,.public-modal-close:focus{background:#f4eee3;color:var(--ga-ink);outline:none}
.public-modal-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--ga-yellow);font-weight:900;margin-bottom:12px}
.public-modal-dialog h2{margin:0 35px 15px 0;font-size:1.55rem}
.public-modal-dialog #producer-modal-description{color:#5f584e;white-space:pre-line}
body.modal-open{overflow:hidden}
@media(max-width:650px){.public-modal{padding:12px}.public-modal-dialog{padding:30px 22px 24px;border-radius:14px}.public-modal-dialog h2{font-size:1.35rem}}
