*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-x:clip}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;background:0 0;border:none}button:focus{outline-offset:2px;outline:2px solid}img{height:auto}[hidden]{display:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--color-primary:#9c4e42;--color-primary-light:#b86b5e;--color-primary-dark:#7a3d34;--color-primary-transparent:#9c4e421a;--color-secondary:#afac94;--color-secondary-light:#c4c2ae;--color-secondary-dark:#8f8d78;--color-secondary-transparent:#afac9433;--color-cream:#eeece1;--color-cream-dark:#efddcf;--color-white:#fff;--color-black:#2c2c2c;--color-black-light:#4a4a4a;--color-gray:#757575;--color-gray-light:#b0b0b0;--color-gold:#c9a961;--color-gold-light:#e0c78a;--font-heading:"Cinzel", Georgia, serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--text-display:72px;--text-h1:48px;--text-h2:36px;--text-h3:24px;--text-h4:20px;--text-body-large:18px;--text-body:16px;--text-small:14px;--text-tiny:12px;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.7;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.05em;--letter-spacing-wider:.1em;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-8:64px;--space-10:80px;--space-12:96px;--space-16:128px;--section-padding-y:80px;--section-padding-x:40px;--container-max-width:1200px;--content-max-width:800px;--content-narrow:600px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--shadow-sm:0 1px 2px #2c2c2c0d;--shadow-md:0 4px 6px #2c2c2c12;--shadow-lg:0 10px 25px #2c2c2c1a;--shadow-xl:0 20px 40px #2c2c2c26;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-tooltip:600}@media (width<=991px){:root{--text-h1:40px;--text-h2:32px;--text-h3:22px;--section-padding-y:64px;--section-padding-x:24px}}@media (width<=767px){:root{--text-display:48px;--text-h1:36px;--text-h2:28px;--text-h3:20px;--text-h4:18px;--section-padding-y:48px;--section-padding-x:20px}}body{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--line-height-relaxed);color:var(--color-black);background-color:var(--color-cream)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:var(--line-height-tight);color:var(--color-black)}h1{font-size:var(--text-h1);letter-spacing:var(--letter-spacing-tight)}h2{font-size:var(--text-h2);margin-bottom:var(--space-4)}h3{font-family:var(--font-body);font-size:var(--text-h3);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);font-weight:600}p{margin-bottom:var(--space-2)}p:last-child{margin-bottom:0}.italic{color:var(--color-black-light);font-style:italic}.container{width:100%;max-width:var(--container-max-width);padding-left:var(--section-padding-x);padding-right:var(--section-padding-x);margin:0 auto}.section{padding-top:var(--section-padding-y);padding-bottom:var(--section-padding-y);scroll-margin-top:100px}.section-centered{text-align:center}.section-title{font-family:var(--font-heading);font-size:var(--text-h1);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-black);margin-bottom:var(--space-6);font-weight:400}.section-subtitle{font-size:var(--text-body-large);color:var(--color-black-light);margin-top:var(--space-2)}.grid-2{gap:var(--space-6);grid-template-columns:1fr;display:grid}.grid-3,.grid-4{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=768px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width>=992px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}.btn{font-family:var(--font-body);font-size:var(--text-body);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);transition:all var(--transition-normal);cursor:pointer;text-align:center;font-weight:600;display:inline-block}.btn-primary{background-color:var(--color-primary);color:var(--color-white);border:2px solid var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-secondary{color:var(--color-primary);border:2px solid var(--color-primary);background-color:#0000}.btn-secondary:hover{background-color:var(--color-primary);color:var(--color-white)}.btn-white{background-color:var(--color-white);color:var(--color-primary);border:2px solid var(--color-white)}.btn-white:hover{color:var(--color-white);background-color:#0000}.btn-outline-white{color:var(--color-white);border:2px solid var(--color-white);background-color:#0000}.btn-outline-white:hover{background-color:var(--color-white);color:var(--color-primary)}.btn-lg{padding:var(--space-2) var(--space-5);font-size:var(--text-body-large)}.announcement-banner{background-color:var(--color-gold);color:var(--color-black);text-align:center;padding:10px var(--space-4);font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.02em;z-index:10000;font-weight:600;line-height:1.4;display:none;position:fixed;top:0;left:0;right:0}body.banner-active .announcement-banner{display:block}.announcement-banner strong{font-weight:700}body.banner-active .header{top:42px}body.banner-active .section{scroll-margin-top:130px}body.banner-active .hero{padding-top:162px}body.banner-active .reservation-form-section{padding-top:calc(var(--section-padding-y) + 42px)}@media (width<=767px){body.banner-active .header{top:80px}body.banner-active .hero{padding-top:192px}body.banner-active .section{scroll-margin-top:172px}body.banner-active .reservation-form-section{padding-top:calc(var(--section-padding-y) + 80px)}}.header{z-index:var(--z-fixed);background-color:var(--color-white);transition:box-shadow var(--transition-normal);position:fixed;top:0;left:0;right:0}.header.scrolled{box-shadow:var(--shadow-md)}.nav{padding:var(--space-3) 0;justify-content:space-between;align-items:center;display:flex}.nav-left{align-items:center;gap:var(--space-2);min-width:120px;display:flex}.nav-menu-label{font-size:var(--text-small);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-primary);font-weight:500;display:none}.nav-logo{opacity:0;pointer-events:none;transition:opacity var(--transition-normal);position:absolute;left:50%;transform:translate(-50%)}.header.scrolled .nav-logo{opacity:1;pointer-events:auto}.nav-logo-img{width:auto;height:40px}.nav-right{align-items:center;gap:var(--space-1);justify-content:flex-end;min-width:120px;display:flex}.nav-phone{font-size:var(--text-small);color:var(--color-primary);margin-right:var(--space-1);white-space:nowrap;font-weight:600;display:none}.nav-phone:hover{color:var(--color-primary-dark)}.nav-social{border-radius:var(--radius-sm);background-color:var(--color-primary);width:32px;height:32px;color:var(--color-white);transition:all var(--transition-normal);justify-content:center;align-items:center;display:flex}.nav-social:hover{background-color:var(--color-primary-dark);transform:scale(1.05)}.nav-social svg{width:16px;height:16px}.nav-toggle{padding:var(--space-1);z-index:var(--z-modal);flex-direction:column;gap:6px;display:flex}.nav-toggle span{background-color:var(--color-primary);width:24px;height:2px;transition:all var(--transition-normal);display:block}.nav-toggle.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-menu{background-color:var(--color-white);width:80%;max-width:400px;height:100vh;padding:var(--space-10) var(--space-4);transition:left var(--transition-normal);z-index:var(--z-modal);box-shadow:var(--shadow-xl);position:fixed;top:0;left:-100%}.mobile-menu.open{left:0}.mobile-menu-overlay{opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:var(--z-modal-backdrop);background-color:#2c2c2c80;position:fixed;inset:0}.mobile-menu-overlay.open{opacity:1;visibility:visible}.mobile-nav-link{font-size:var(--text-h4);color:var(--color-black);padding:var(--space-2) 0;border-bottom:1px solid var(--color-gray-light);font-weight:500;display:block}.mobile-nav-link:hover{color:var(--color-primary)}.mobile-nav-phone{margin-top:var(--space-4);font-size:var(--text-body-large);color:var(--color-primary);font-weight:600;display:block}.mobile-nav-social{gap:var(--space-2);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-gray-light);display:flex}@media (width<=767px){.nav-social{display:none}.mobile-nav-social .nav-social{display:flex}}@media (width>=768px){.nav-menu-label{display:block}.nav-logo-img{height:50px}.nav-phone{display:block}}@media (width>=992px){.nav-logo-img{height:60px}}.hero{text-align:center;background-color:var(--color-white);min-height:auto;color:var(--color-black);justify-content:center;align-items:center;padding-top:120px;padding-bottom:0;display:flex}.hero-content{max-width:1100px;padding:var(--space-8) var(--section-padding-x);padding-bottom:0}.hero-logo{width:100%;max-width:280px;height:auto;margin:0 auto 60px}.hero-h1{font-family:var(--font-heading);font-size:var(--text-body);color:var(--color-primary);letter-spacing:var(--letter-spacing-wide);text-align:center;margin-bottom:60px;font-weight:400}.hero-address{justify-content:center;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.hero-address-line{background-color:var(--color-primary);width:60px;height:2px;display:block}.hero-address-text{font-family:var(--font-heading);font-size:var(--text-h4);color:var(--color-primary);white-space:nowrap;font-weight:700}.hero-intro{font-style:italic;font-size:var(--text-body);color:var(--color-primary);max-width:1000px;margin:0 auto;line-height:1.9}.hero-image{margin-top:var(--space-10);width:100vw;max-width:none;height:auto;margin-bottom:0;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);display:block}@media (width>=768px){.hero{padding-top:140px}.hero-logo{max-width:320px;margin-bottom:60px}.hero-address-line{width:100px}.hero-address-text{font-size:var(--text-h3)}.hero-intro{font-size:var(--text-body)}.hero-image{margin-top:var(--space-12)}}@media (width>=992px){.hero{padding-top:160px}.hero-logo{max-width:360px}.hero-intro{font-size:17px}}.intro{background-color:var(--color-white)}.intro-grid{gap:var(--space-6);grid-template-columns:1fr;align-items:center;display:grid}.intro-content{max-width:1000px}.intro-content p{margin-bottom:var(--space-3)}.intro-signature{margin-top:var(--space-4);font-family:var(--font-heading);font-size:var(--text-body-large);color:var(--color-primary);font-style:italic}.intro-image{border-radius:var(--radius-md);object-fit:cover;width:100%;height:auto}@media (width>=992px){.intro-grid{gap:var(--space-10);grid-template-columns:1fr 1fr}}.actu-card{max-width:var(--content-max-width);background-color:var(--color-white);padding:var(--space-6);border-radius:var(--radius-lg);border-left:4px solid var(--color-gold);box-shadow:var(--shadow-md);margin:0 auto}.actu-grid{gap:var(--space-5);grid-template-columns:1fr;align-items:center;display:grid}.actu-image{border-radius:var(--radius-md);object-fit:cover;width:100%;height:auto}.actu-eyebrow{font-family:var(--font-body);font-size:var(--text-small);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-gold);margin-bottom:var(--space-2);font-weight:600}.actu-title{font-family:var(--font-heading);font-size:var(--text-h3);color:var(--color-black);margin-bottom:var(--space-3);font-weight:500}.actu-text{color:var(--color-black-light);margin-bottom:var(--space-4)}.actu-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.horaires{background-color:var(--color-primary);padding-top:0;padding-bottom:var(--space-12);margin-top:0}.horaires .container{position:relative}.horaires-grid{gap:var(--space-4);z-index:10;grid-template-columns:1fr;max-width:1000px;margin:-60px auto 0;display:grid;position:relative}.horaires-card{padding:var(--space-5) var(--space-4);border-radius:var(--radius-md);text-align:center;box-shadow:var(--shadow-lg);background-color:#fffffff2;position:relative}.horaires-card-line{background-color:var(--color-primary);border-radius:0 0 2px 2px;width:80px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.horaires-label{font-family:var(--font-heading);font-size:var(--text-h4);text-transform:uppercase;letter-spacing:.04em;color:var(--color-black);margin-top:var(--space-3);margin-bottom:var(--space-4);font-weight:700}@media (width>=768px){.horaires-label{letter-spacing:var(--letter-spacing-wider)}}.horaires-note{font-style:italic;font-size:var(--text-small);color:var(--color-black-light);margin-bottom:var(--space-2);line-height:1.6}.horaires-day{font-family:var(--font-heading);font-size:var(--text-small);margin-bottom:var(--space-2);font-weight:700}.horaires-time{font-size:var(--text-body);color:var(--color-black-light);margin-bottom:var(--space-1)}.horaires-time+.horaires-day{margin-top:var(--space-4)}.reservation-back-link{font-size:var(--text-small);color:var(--color-primary);letter-spacing:var(--letter-spacing-wide);font-weight:600;text-decoration:none}.reservation-back-link:hover{text-decoration:underline}.reservation-page-footer{background-color:var(--color-black);color:var(--color-cream);text-align:center;padding:var(--space-4);font-size:var(--text-small)}.reservation-page-footer a{color:var(--color-cream);text-decoration:underline}.reservation-form-section{background-color:var(--color-cream);padding-top:var(--section-padding-y)}.reservation-same-day-banner{border:2px solid var(--color-primary);color:var(--color-black);text-align:center;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-5);font-size:var(--text-body);background-color:#f0e8d5}.reservation-same-day-banner a{color:var(--color-primary);font-weight:700;text-decoration:underline}.reservation-newsletter-opt{margin-top:var(--space-4)}.reservation-newsletter-label{align-items:flex-start;gap:var(--space-3);cursor:pointer;font-family:var(--font-body);color:var(--color-black);font-size:var(--text-body);display:flex}.reservation-newsletter-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;margin-top:3px}.reservation-newsletter-legal{color:var(--color-black-light);margin-top:var(--space-2);margin-left:calc(18px + var(--space-3));font-size:.8rem}.reservation-newsletter-legal a{color:var(--color-primary);text-decoration:underline}.reservation-same-day-alert{color:#7d5a00;text-align:center;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-5);font-size:var(--text-body);background-color:#fff3cd;border:1px solid #ffc107}.reservation-same-day-alert a{color:#7d5a00;font-weight:700;text-decoration:underline}.reservation-form-intro{text-align:center;color:var(--color-black-light);margin-bottom:var(--space-6);max-width:560px;margin-left:auto;margin-right:auto}.reservation-form{gap:var(--space-4);flex-direction:column;max-width:720px;margin:0 auto;display:flex}.reservation-form-row{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=600px){.reservation-form-row{grid-template-columns:1fr 1fr}}.reservation-form-group{gap:var(--space-1);flex-direction:column;display:flex}.reservation-form-group--full{grid-column:1/-1}.reservation-form-group label{font-size:var(--text-small);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-black);font-weight:600}.reservation-form-group input,.reservation-form-group select,.reservation-form-group textarea{padding:var(--space-2) var(--space-3);font-family:var(--font-body);font-size:var(--text-body);color:var(--color-black);border-radius:var(--radius-sm);transition:border-color var(--transition-normal);background-color:#fff;border:1px solid #d0c8bc;outline:none}.reservation-form-group input:focus,.reservation-form-group select:focus,.reservation-form-group textarea:focus{border-color:var(--color-primary)}.reservation-form-group textarea{resize:vertical}.reservation-form-submit{text-align:center;align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.reservation-form-note{font-size:var(--text-small);color:var(--color-gray);font-style:italic}.reservation-phone{font-size:var(--text-body-large);color:var(--color-primary);margin:var(--space-2) 0;font-weight:600;display:block}.horaires-note{font-style:italic;font-size:var(--text-small);color:var(--color-gray);margin-top:var(--space-2)}@media (width>=768px){.horaires-grid{gap:var(--space-6);grid-template-columns:repeat(2,1fr);margin-top:-80px}.horaires-card{padding:var(--space-6) var(--space-5)}.horaires-label{font-size:var(--text-h3)}}@media (width>=992px){.horaires-grid{margin-top:-100px}}.menus{background-color:#d4d2c2}.menus-grid{gap:var(--space-6);grid-template-columns:1fr;align-items:center;display:grid}.menus-image-wrapper{justify-content:center;display:flex}.menus-image{width:100%;max-width:450px;height:auto}.menus-content{padding:var(--space-4) 0;text-align:right}.menus-title{color:var(--color-primary-dark)}.menus-list{margin:0;padding:0;list-style:none}.menus-list-item{border-top:1px solid var(--color-primary-dark)}.menus-list-item:last-child{border-bottom:1px solid var(--color-primary-dark)}.menus-link{padding:var(--space-3) 0;color:var(--color-primary-dark);font-family:var(--font-body);font-size:var(--text-small);letter-spacing:.15em;text-transform:uppercase;transition:all var(--transition-normal);font-weight:500;display:block}.menus-link:hover{opacity:.7}@media (width>=768px){.menus-grid{gap:var(--space-10);grid-template-columns:1fr 1fr}.menus-content{padding:var(--space-6) 0}.menus-link{font-size:var(--text-body)}}@media (width>=992px){.menus-link{font-size:var(--text-body);padding:var(--space-3) 0}}.valeurs{background-color:var(--color-primary-light);padding:var(--space-6) var(--space-4)}.valeurs-header{max-width:1000px;margin:0 auto var(--space-10);text-align:center}.valeurs-main-title{color:var(--color-white)}.valeurs-intro{font-style:italic;font-size:var(--text-body);line-height:var(--line-height-relaxed);color:var(--color-white);max-width:1000px;margin:0 auto}.valeurs-grid{gap:var(--space-4);grid-template-columns:1fr;max-width:1200px;margin:0 auto;display:grid}.valeurs-right{justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.valeurs-label-link{justify-content:center;align-items:center;display:flex}.valeurs-label-img{width:260px;height:auto;margin:auto;transition:opacity .2s;display:block}.valeurs-label-link:hover .valeurs-label-img{opacity:.85}.valeurs-label-caption{text-align:center;font-size:var(--text-small);color:var(--color-white);margin-top:var(--space-1)}.valeurs-label-caption a{color:var(--color-white);text-decoration:underline}.valeurs-label-caption a:hover{text-decoration:underline}.valeur-card{background-position:50%;background-repeat:no-repeat;background-size:cover;position:relative;overflow:hidden}.valeur-card--large{background-position:0;min-height:500px}.valeur-card--small{background-position:100%;min-height:300px}.valeur-card-overlay{padding:var(--space-4);background:linear-gradient(#0000 0%,#2c2c2c99 40%,#2c2c2cd9 100%);flex-direction:column;justify-content:flex-end;min-height:60%;display:flex;position:absolute;bottom:0;left:0;right:0}.valeur-card-title{font-family:var(--font-heading);font-size:var(--text-h2);color:var(--color-cream);margin-bottom:var(--space-2);letter-spacing:.08em;text-transform:uppercase;font-weight:400;line-height:1.15}.valeur-card-title--small{font-size:var(--text-h3);letter-spacing:.1em}.valeur-card-text{color:var(--color-cream);font-size:var(--text-small);line-height:var(--line-height-relaxed);max-width:400px}.valeur-card-text a{color:var(--color-cream);text-underline-offset:3px;text-decoration:underline}.valeur-card-text a:hover{opacity:.8}@media (width>=768px){.valeurs{padding:var(--space-6)}.valeurs-grid{gap:var(--space-4);grid-template-columns:1fr 1fr}.valeur-card--large{min-height:700px}.valeur-card--small{min-height:338px}.valeur-card-title{font-size:var(--text-h1)}.valeur-card-title--small{font-size:var(--text-h3)}.valeur-card-overlay{padding:var(--space-5)}}@media (width>=992px){.valeur-card--large{min-height:800px}.valeur-card--small{min-height:388px}.valeur-card-title{font-size:52px}}.lieu{background-color:var(--color-white);padding-top:var(--section-padding-y);padding-bottom:var(--section-padding-y)}.lieu-header{max-width:1100px;margin:0 auto var(--space-10);padding:0 var(--section-padding-x);text-align:center}.lieu-title{color:var(--color-primary)}.lieu-intro{font-style:italic;font-size:var(--text-body);line-height:var(--line-height-relaxed);color:var(--color-primary);max-width:1000px;margin:0 auto}.lieu-cta{text-align:center;margin-top:var(--space-5)}.trouver-cta{margin-top:var(--space-5);display:inline-block}.lieu-gallery{grid-template-rows:200px 200px;grid-template-columns:1fr 1fr;gap:8px;display:grid}.lieu-gallery-item{overflow:hidden}.lieu-gallery-item img{object-fit:cover;width:100%;height:100%;display:block}@media (width>=768px){.lieu-gallery{grid-template-rows:280px 320px;grid-template-columns:repeat(12,1fr);gap:8px}.lieu-gallery-item:first-child{grid-area:1/1/auto/6}.lieu-gallery-item:nth-child(2){grid-area:1/6/auto/9}.lieu-gallery-item:nth-child(3){grid-area:1/9/auto/13}.lieu-gallery-item:nth-child(4){grid-area:2/1/auto/4}.lieu-gallery-item:nth-child(5){grid-area:2/4/auto/13}}@media (width>=992px){.lieu-gallery{grid-template-rows:340px 380px}}.producteurs{background-color:var(--color-white)}.producteurs-intro{max-width:1000px;margin:0 auto var(--space-6);text-align:center;color:var(--color-black-light)}.producteurs-grid{gap:var(--space-6);grid-template-columns:1fr;display:grid}.producteurs-column h3{color:var(--color-primary);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-primary)}.producteurs-list{list-style:none}.producteurs-list li{padding:var(--space-1) 0;color:var(--color-black-light)}.producteurs-list li a{color:var(--color-primary);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .3s}.producteurs-list li a:hover{border-bottom-color:var(--color-primary)}.producteurs-list li a:after{content:" ↗";opacity:.6;font-size:.75em}.producteurs-category{color:var(--color-black);margin-top:var(--space-3);margin-bottom:var(--space-1);font-weight:600}@media (width>=768px){.producteurs-grid{grid-template-columns:repeat(2,1fr)}}.avis{background-color:var(--color-cream)}.avis-intro{text-align:center;max-width:600px;margin:0 auto var(--space-8);color:var(--color-text-light);font-style:italic}.testimonial-card{background-color:var(--color-white);padding:var(--space-5);border-radius:var(--radius-md);border-left:4px solid var(--color-gold);box-shadow:var(--shadow-sm)}.testimonial-stars{color:var(--color-gold);font-size:var(--text-h4);margin-bottom:var(--space-2)}.testimonial-quote{color:var(--color-black-light);font-style:italic;line-height:var(--line-height-relaxed);margin-bottom:var(--space-3)}.testimonial-author{font-size:var(--text-small);color:var(--color-gray);font-weight:600}.avis-link{margin-top:var(--space-6);color:var(--color-primary);text-underline-offset:4px;font-weight:600;text-decoration:underline;display:inline-block}.avis-link:hover{color:var(--color-primary-dark)}.trouver{background-color:var(--color-white)}.trouver .section-title{margin-bottom:30px}.trouver-grid{gap:var(--space-8);grid-template-columns:1fr;align-items:center;display:grid}.trouver-illustration{width:120px;height:auto;margin-bottom:var(--space-2);opacity:.7}.trouver-info p{font-size:var(--text-body);color:var(--color-black-light);line-height:var(--line-height-relaxed);margin-bottom:var(--space-1)}.trouver-info strong{color:var(--color-black);font-weight:600}.trouver-info a{color:var(--color-primary);transition:color var(--transition-normal)}.trouver-info a:hover{color:var(--color-primary-dark)}.trouver-info a.btn-primary,a.btn-primary.trouver-cta,.trouver-info a.btn-primary:hover,a.btn-primary.trouver-cta:hover{color:var(--color-white)!important}.trouver-label{color:var(--color-primary);font-weight:500}.trouver-separator{background-color:var(--color-gray-light);width:40px;height:1px;margin:var(--space-4) 0}.trouver-map-wrapper{flex-direction:column;align-items:center;margin-top:30px;display:flex}.trouver-map-circle{border:3px solid var(--color-primary);border-radius:50%;width:320px;height:320px;overflow:hidden}.trouver-map-circle iframe{width:100%;height:100%;display:block}.trouver-directions-btn{margin-top:var(--space-3);font-size:var(--text-small);color:var(--color-primary);text-underline-offset:3px;letter-spacing:var(--letter-spacing-wide);transition:color var(--transition-normal);text-decoration:underline;display:inline-block}.trouver-directions-btn:hover{color:var(--color-primary-dark)}@media (width>=768px){.trouver-grid{gap:var(--space-10);grid-template-columns:1fr 1fr}}@media (width>=992px){.trouver-map-circle{width:380px;height:380px}}.footer{background-color:var(--color-cream);color:var(--color-primary);padding:var(--space-12) 0 var(--space-4)}.footer-grid{gap:var(--space-8);margin-bottom:var(--space-8);grid-template-columns:1fr;display:grid}.footer-column{font-size:var(--text-small);line-height:var(--line-height-relaxed)}.footer-column p{color:var(--color-primary);margin-bottom:0}.footer-column--center{text-align:center;flex-direction:column;align-items:center;display:flex}.footer-logo{width:100%;max-width:100px;height:auto;margin-bottom:var(--space-4)}.footer-tagline{font-style:italic;font-size:var(--text-body);margin-bottom:var(--space-2)}.footer-email{color:var(--color-primary);margin-bottom:var(--space-3);text-underline-offset:3px;font-weight:500;text-decoration:underline;display:block}.footer-email:hover{color:var(--color-primary-dark)}.footer-social{gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.footer-social a{background-color:var(--color-primary);border-radius:var(--radius-full);width:36px;height:36px;color:var(--color-white);transition:all var(--transition-normal);justify-content:center;align-items:center;display:flex}.footer-social a:hover{background-color:var(--color-primary-dark);transform:scale(1.05)}.footer-newsletter-label{margin-bottom:var(--space-2);font-weight:500}.footer-newsletter{gap:var(--space-2);flex-direction:column;display:flex}.footer-newsletter-input{padding:var(--space-2);border:1px solid var(--color-primary);font-size:var(--text-small);color:var(--color-primary);font-family:var(--font-body);background-color:#0000;border-radius:0}.footer-newsletter-input::placeholder{color:var(--color-primary);opacity:.5}.footer-newsletter-input:focus{border-color:var(--color-primary-dark);outline:none}.footer-newsletter-btn{padding:var(--space-2) var(--space-4);background-color:var(--color-primary);color:var(--color-white);font-family:var(--font-body);font-size:var(--text-small);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);cursor:pointer;transition:background-color var(--transition-normal);border:none;font-weight:600}.footer-newsletter-btn:hover{background-color:var(--color-primary-dark)}.footer-label{margin-top:var(--space-3);font-weight:700}.footer-label:first-child{margin-top:0}.footer-contact-link{color:var(--color-primary);margin-bottom:var(--space-1);display:block}.footer-contact-link:hover{color:var(--color-primary-dark)}.footer-spacer{height:var(--space-2)}.footer-legal{margin-top:var(--space-4);gap:var(--space-1);flex-direction:column;display:flex}.footer-legal a{color:var(--color-primary);font-size:var(--text-small);text-underline-offset:3px;text-decoration:underline}.footer-legal a:hover{color:var(--color-primary-dark)}.footer-bottom{padding-top:var(--space-4);border-top:1px solid var(--color-primary);text-align:center;color:var(--color-primary);font-size:var(--text-small);opacity:.7}@media (width>=768px){.footer-grid{gap:var(--space-10);grid-template-columns:1fr 1fr 1fr}.footer-newsletter{flex-direction:column}.footer-logo{max-width:100px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.mb-0{margin-bottom:0}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}
