@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--wine:#7f1229;--wine-dark:#580d20;--cream:#f8f5ef;--paper:#fffcf7;--ink:#28251f;--muted:#706a61;--line:#ded8ce;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #be854b;outline-offset:5px}img{display:block;max-width:100%}button{color:inherit}.wrap{width:min(1240px,calc(100% - 112px));margin-inline:auto}.header{min-height:103px;padding:13px 4%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(248,245,239,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.brand img{width:166px;height:61px;object-fit:contain;mix-blend-mode:multiply}.header nav{display:flex;gap:31px;font-size:13px}.header nav a{padding:8px 0}.header nav a:hover,.text-link:hover{color:var(--wine)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--wine);background:var(--wine);color:white;border-radius:4px;padding:16px 23px;font-weight:600;font-size:14px;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:var(--wine-dark);transform:translateY(-2px)}.button span{font-size:20px;font-weight:400}.button.small{padding:13px 18px;font-size:12px}.button.outline{background:transparent;color:var(--wine)}.button.outline:hover{background:#f2e7e6}.text-link{display:inline-flex;gap:18px;align-items:center;font-size:13px;font-weight:600;padding-block:12px;border-bottom:1px solid currentColor}.text-link span{font-size:21px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;line-height:1.7;margin:0 0 22px}.dot{display:inline-block;width:7px;height:7px;background:var(--wine);border-radius:50%;margin-right:8px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:45px;align-items:center;padding-block:74px 84px}.hero h1{font-family:var(--serif);font-size:clamp(55px,5.6vw,83px);font-weight:400;line-height:1.04;letter-spacing:-3.7px;margin:25px 0}.hero h1 em{color:var(--wine);font-weight:400;font-size:.87em;white-space:nowrap}.intro{font-size:15px;max-width:400px;color:var(--muted);line-height:1.8;margin:25px 0 29px}.hero-actions{display:flex;align-items:center;gap:26px}.hero-note{display:flex;gap:15px;align-items:center;font-size:11px;line-height:1.7;margin-top:37px}.hero-note strong{font-weight:600}.note-icon{display:grid;place-items:center;width:39px;height:39px;border:1px solid #d6cbbc;border-radius:50%;font-size:21px;color:var(--wine)}.hero-visual{position:relative;padding:35px 0 31px 12px}.photo-frame{position:relative;background:#29221f;padding:15px 15px 0;border-radius:160px 160px 4px 4px;overflow:hidden;transform:rotate(2deg);box-shadow:16px 19px 0 #eee6db}.photo-frame>img{width:100%;height:390px;object-fit:cover;object-position:center;border-radius:146px 146px 0 0;filter:brightness(.85) saturate(.75)}.photo-caption{padding:15px 3px 17px;color:#f8f5ef;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px}.photo-caption>span:first-child{letter-spacing:1.5px;font-size:8px}.round-badge{position:absolute;top:0;right:-20px;border-radius:50%;width:126px;height:126px;background:var(--wine);color:#fff5e5;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(10deg);border:6px solid var(--cream);text-align:center}.round-badge span{font-size:11px;line-height:1.35;letter-spacing:1px;font-weight:700}.round-badge b{font-size:25px;line-height:1.1;margin-top:5px}.photo-tag{position:absolute;bottom:0;left:43px;background:#fffdf8;padding:12px 19px;border:1px solid var(--line);font-size:11px;transform:rotate(-3deg)}.photo-tag .dot{width:5px;height:5px}.strip{border-block:1px solid var(--line)}.strip-inner{display:flex;justify-content:space-between;align-items:center;gap:22px;padding-block:20px;font-size:10px;letter-spacing:1.5px}.strip-inner b{color:var(--wine);font-size:24px;font-weight:400;line-height:1}.section{padding-block:94px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px}.section-heading>p{font-size:13px;color:var(--muted);padding-bottom:5px}h2{font-family:var(--serif);font-size:clamp(36px,3.5vw,51px);font-weight:400;line-height:1.15;letter-spacing:-1.9px;margin:0 0 23px}h2 em{color:var(--wine);font-weight:400}.pack-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.pack{background:var(--paper);border:1px solid var(--line);border-radius:6px;overflow:hidden}.pack-image{display:block;border:0;padding:0;width:100%;background:#fff;position:relative;overflow:hidden;aspect-ratio:1.22}.pack-image img{width:100%;height:100%;object-fit:cover;object-position:center 34%;transition:transform .4s}.pack-image:hover img{transform:scale(1.035)}.pack-image>span{position:absolute;bottom:12px;right:12px;background:#fff9efed;border-radius:3px;padding:7px 10px;font-size:10px;color:var(--wine);box-shadow:0 2px 12px #0001}.pack-info{padding:25px 25px 26px}.pack-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.pack-top h3{font-family:var(--serif);font-size:29px;font-weight:400;letter-spacing:-.8px;margin:0}.price{font-size:31px;line-height:1;margin:0;font-weight:600;letter-spacing:-1px}.price span{font-size:19px;margin-left:2px}.pack-info>p{font-size:12px;color:var(--muted);margin:9px 0 20px}.pack-info ul{padding:0;list-style:none;margin:0 0 24px;font-size:11px;line-height:2.3}.pack-info li:before{content:'✓';color:var(--wine);margin-right:8px}.pack-info .button{width:100%;font-size:11px;padding:12px 15px}.bundle{display:flex;justify-content:space-between;gap:20px;align-items:center;background:var(--wine);color:#fff5e5;border-radius:5px;margin-top:25px;padding:25px 31px;transition:background .2s}.bundle:hover{background:var(--wine-dark)}.bundle .eyebrow{display:block;font-size:9px;letter-spacing:1.3px;margin-bottom:3px;color:#e2b9b9}.bundle strong{display:block;font-family:var(--serif);font-size:28px;font-weight:400}.bundle-end{display:flex;gap:30px;align-items:center}.bundle-end>b{font-size:31px;font-weight:500;white-space:nowrap}.circle-arrow{border:1px solid #b57e86;border-radius:50%;height:43px;width:43px;display:grid;place-items:center;font-size:22px}.fine-print{font-size:10px;color:var(--muted);margin-top:14px}.how-section{background:#eee9df;padding-block:87px}.how-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:85px}.how-intro{font-size:13px;color:var(--muted);max-width:335px;margin-bottom:20px}.steps article{display:flex;gap:23px;border-bottom:1px solid #d2c9bb;padding:27px 0}.steps article:first-child{padding-top:0}.steps article:last-child{border-bottom:0;padding-bottom:0}.step-num{font-family:var(--serif);color:var(--wine);font-size:24px;line-height:1.3}.steps h3{font-size:16px;font-weight:500;margin:3px 0 10px}.steps p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.local-section{display:grid;grid-template-columns:1fr 1.08fr;gap:85px;align-items:center}.local-section>div>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.9;max-width:440px}.local-art{position:relative;height:345px;background:#eee6db;border:1px solid #e3d7c8;border-radius:5px;overflow:hidden}.local-top,.local-bottom{position:absolute;left:27px;font-size:11px;letter-spacing:2px;font-weight:600;color:var(--wine)}.local-top{top:25px}.local-bottom{bottom:25px;font-size:9px}.local-orbit{border:1px solid #cdbda8;border-radius:50%;position:absolute;left:50%;top:48%;transform:translate(-50%,-50%)}.orbit-one{width:160px;height:160px}.orbit-two{width:275px;height:275px}.local-pin{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);color:var(--wine);display:flex;align-items:center;flex-direction:column;gap:7px}.local-pin svg{height:45px;width:36px}.local-pin b{letter-spacing:2px;font-size:11px}.city{position:absolute;background:var(--cream);padding:6px 12px;border:1px solid #d8c9b6;font-size:11px;border-radius:30px}.city-one{right:25px;top:155px}.city-two{top:83px;left:25px}.city-three{left:25px;bottom:83px}.delivery-note{display:flex;gap:18px;align-items:flex-start;padding-top:17px;margin-top:22px;border-top:1px solid var(--line);max-width:450px}.delivery-note>span{font-size:28px;color:var(--wine);line-height:1.2}.delivery-note strong{font-size:13px;font-weight:600}.delivery-note p{font-size:11px;color:var(--muted);line-height:1.8;margin:5px 0 0}.request-section{background:var(--wine);color:var(--paper);padding-block:85px}.request-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px}.request-grid>div>.eyebrow{color:#e9bfc5}.request-section h2{font-size:60px}.request-section h2 em{color:#e8c696}.request-grid>div>p:not(.eyebrow){font-size:14px;max-width:330px;color:#f0d9db}.request-grid .request-note{font-size:11px!important;line-height:1.9;margin-top:32px}.mini-brand{font-family:'Manrope',Arial,sans-serif;font-size:30px;font-weight:800;font-style:italic;letter-spacing:-2px;margin-top:55px}.mini-brand>span{font-weight:400;margin-left:4px}.mini-brand i{display:block;font-family:var(--sans);font-style:normal;font-size:10px;letter-spacing:1px;font-weight:400;margin-top:5px}.quote-form{background:var(--paper);color:var(--ink);padding:32px;border-radius:6px;display:flex;flex-direction:column;gap:17px}.quote-form fieldset{padding:0;border:0;margin:0}.quote-form legend{font-size:12px;font-weight:600;margin-bottom:10px}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.choices label{position:relative}.choices input{position:absolute;opacity:0;width:1px;height:1px}.choices label>span{display:flex;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:3px;padding:11px 9px;font-size:10px;cursor:pointer}.choices b{font-weight:500;white-space:nowrap}.choices input:checked+span{background:#f2e1e3;border-color:var(--wine);color:var(--wine)}.choices input:focus-visible+span{outline:3px solid #be854b;outline-offset:2px}.quote-form label{display:block;font-size:11px;font-weight:500}.quote-form label>span:not(:last-child){color:var(--wine)}.quote-form .optional{font-weight:400;color:var(--muted);font-size:10px}.quote-form input:not([type=checkbox]),.quote-form select,.quote-form textarea{display:block;width:100%;border:1px solid var(--line);border-radius:3px;background:#fffdfa;color:var(--ink);padding:10px 11px;margin-top:6px;font-size:12px;min-height:43px}.quote-form textarea{resize:vertical}.quote-form input:focus,.quote-form textarea:focus,.quote-form select:focus{outline:2px solid #b38a8e;outline-offset:1px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-row>*{min-width:0}.total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;font-size:11px}.total output{font-size:24px;font-weight:600;color:var(--wine)}.form-caption{font-size:9px;color:var(--muted);margin:-14px 0 0}.quote-form>.button{width:100%;font-size:12px}.privacy-note{font-size:9px;color:var(--muted);line-height:1.7;margin:-6px 0 0}.error{font-size:11px;color:#a3122a;margin:0}.faq-section{display:grid;grid-template-columns:1fr 1.08fr;gap:85px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:21px 0;font-size:13px;font-weight:500}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:23px;color:var(--wine);line-height:1;transition:transform .2s}.faq details[open] summary>span{transform:rotate(45deg)}.faq details p{font-size:12px;color:var(--muted);line-height:1.9;margin:0 0 23px}.footer{border-top:1px solid var(--line);padding-block:35px 30px;display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:25px}.footer-brand{font-family:'Manrope',Arial,sans-serif;font-size:23px;font-weight:800;font-style:italic;letter-spacing:-1px;color:var(--wine)}.footer-brand span{display:block;font-family:var(--sans);font-style:normal;font-weight:400;letter-spacing:0;font-size:10px;color:var(--muted);margin-top:5px}.footer>div{font-size:11px}.footer p{margin:0 0 7px}.footer-link{display:block;background:none;border:0;padding:8px 0;color:var(--muted);font-size:10px}.footer small{grid-column:1/-1;font-size:9px;color:var(--muted);margin-top:15px}.skip{position:fixed;top:-70px;left:10px;background:var(--wine);color:white;padding:10px;z-index:20}.skip:focus{top:10px}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}dialog{border:0;border-radius:6px;box-shadow:0 30px 80px #0005}dialog::backdrop{background:#221b19bd;backdrop-filter:blur(4px)}.close-dialog{position:absolute;right:10px;top:10px;display:grid;place-items:center;background:var(--cream);border:1px solid var(--line);color:var(--wine);width:35px;height:35px;border-radius:50%;font-size:25px;line-height:1;z-index:2}.image-dialog{padding:0;max-width:min(560px,90vw);max-height:90dvh;background:var(--cream)}.image-dialog img{max-height:87dvh;width:auto;object-fit:contain}.quote-dialog{padding:37px;width:min(560px,calc(100vw - 28px));background:var(--cream);color:var(--ink);max-height:90dvh}.quote-dialog h2{font-size:35px}.quote-dialog>p{font-size:12px;color:var(--muted)}.quote-dialog textarea{width:100%;resize:vertical;border:1px solid var(--line);padding:15px;font-size:12px;line-height:1.8;background:var(--paper);color:var(--ink)}.dialog-actions{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}.dialog-actions .button{font-size:12px;padding:12px 17px}#copy-status{font-size:11px;color:var(--wine);min-height:18px}
@media(min-width:1500px){.hero{gap:85px;padding-block:90px 100px}.photo-frame>img{height:445px}.hero h1{font-size:88px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header nav{gap:20px;font-size:11px}.hero{gap:30px}.hero h1{font-size:65px}.hero-actions{gap:15px}.hero-actions .button{padding:14px 17px;font-size:12px}.hero-actions .text-link{font-size:11px}.photo-frame>img{height:360px}.how-grid,.local-section,.faq-section{gap:45px}.request-grid{gap:50px}.pack-info{padding:20px}.pack-info ul{font-size:10px}.pack-top h3{font-size:25px}.request-section h2{font-size:54px}.quote-form{padding:25px}.choices label>span{flex-direction:column;gap:2px}}
@media(max-width:800px){.header{min-height:83px;padding-inline:24px}.brand img{width:135px;height:50px}.header nav{display:none}.header .button{font-size:11px;padding:11px 14px;gap:14px}.wrap{width:calc(100% - 48px)}.hero{padding-block:45px 55px;grid-template-columns:1fr;gap:30px}.hero-copy{max-width:570px}.hero h1{font-size:72px;letter-spacing:-3.5px}.intro{max-width:435px}.hero-actions .button{padding:16px 21px;font-size:13px}.hero-note{margin-top:25px}.hero-visual{max-width:570px;width:100%;margin-inline:auto;padding-top:15px}.photo-frame{border-radius:120px 120px 4px 4px;transform:rotate(1.5deg)}.photo-frame>img{height:360px;border-radius:105px 105px 0 0;object-position:center}.round-badge{right:-8px;top:-12px}.strip-inner{font-size:8px;gap:15px;padding-block:16px;letter-spacing:1px;flex-wrap:wrap;justify-content:center}.strip-inner b{font-size:17px}.section{padding-block:62px}.section-heading{align-items:start}.section-heading>p{max-width:170px;font-size:11px}.pack-grid{gap:13px}.pack-info{padding:15px}.pack-top{align-items:start}.pack-top h3{font-size:22px}.price{font-size:24px}.price span{font-size:15px}.pack-info>p{min-height:38px;font-size:10px}.pack-info ul{font-size:9px;line-height:1.8;min-height:78px}.pack-info .button{font-size:9px;padding:10px;gap:8px}.how-section{padding-block:60px}.how-grid,.local-section,.faq-section{grid-template-columns:1fr;gap:35px}.how-grid{gap:40px}.how-grid h2 br:last-of-type{display:none}.how-intro{max-width:480px}.local-art{max-width:490px;width:100%;height:320px}.local-section{gap:35px}.local-section>div>p:not(.eyebrow){max-width:none}.delivery-note{max-width:none}.request-section{padding-block:60px}.request-grid{grid-template-columns:1fr;gap:35px}.request-section h2{font-size:50px}.request-section h2 br{display:none}.request-section h2 em{display:block}.request-grid>div>p:not(.eyebrow){max-width:500px}.request-grid .request-note{margin-top:15px}.mini-brand{display:none}.choices label>span{flex-direction:row;font-size:12px}.quote-form{padding:28px}.faq-section{gap:22px}.footer{grid-template-columns:1.5fr 1fr}.footer>div:last-of-type{grid-column:1/-1}.footer small{margin-top:0}}
@media(max-width:540px){.wrap{width:calc(100% - 36px)}.header{padding-inline:18px;gap:12px}.header .button{gap:10px;font-size:10px;padding:10px 11px}.brand img{width:118px;height:44px}.hero h1{font-size:58px;letter-spacing:-2.8px;margin-block:20px}.hero h1 em{font-size:.84em}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero{padding-top:32px}.intro{font-size:13px;line-height:1.8}.hero-actions{gap:17px;flex-wrap:wrap}.hero-actions .button{font-size:12px;padding:14px 18px}.hero-actions .text-link{font-size:11px}.hero-visual{padding-inline:3px 10px;padding-top:19px}.photo-frame{padding:10px 10px 0;box-shadow:10px 13px 0 #eee6db}.photo-frame>img{height:300px}.round-badge{width:103px;height:103px;border-width:5px;right:-2px;top:0}.round-badge span{font-size:9px}.round-badge b{font-size:21px}.photo-caption{font-size:8px}.photo-caption>span:first-child{font-size:7px;letter-spacing:1px}.photo-tag{left:24px;font-size:10px;bottom:3px}.strip-inner{gap:10px 15px}.strip-inner span{font-size:7px}.strip-inner b:last-of-type{display:none}.section-heading{display:block;margin-bottom:25px}.section-heading>p{max-width:none}.section-heading>p br{display:none}h2{font-size:36px;letter-spacing:-1.3px}.eyebrow{font-size:9px;margin-bottom:17px}.pack-grid{grid-template-columns:1fr;gap:23px}.pack-image{aspect-ratio:1.32}.pack-image img{object-position:center 35%}.pack-info{padding:23px}.pack-top h3{font-size:30px}.price{font-size:32px}.price span{font-size:21px}.pack-info>p{font-size:12px;min-height:0;margin-bottom:15px}.pack-info ul{font-size:12px;min-height:0;line-height:2.1}.pack-info .button{font-size:12px;padding:13px 17px}.bundle{padding:20px;gap:10px}.bundle strong{font-size:23px}.bundle .eyebrow{font-size:7px;letter-spacing:1px}.bundle-end{gap:12px}.bundle-end>b{font-size:24px}.circle-arrow{width:33px;height:33px;font-size:18px}.fine-print{font-size:9px}.steps article{gap:18px}.steps h3{font-size:15px}.local-art{height:300px}.city-one{right:15px}.city-two,.city-three{left:15px}.local-top,.local-bottom{left:20px}.local-section>div>p:not(.eyebrow){font-size:12px}.request-section h2{font-size:43px}.quote-form{padding:22px 18px;gap:16px}.form-row{grid-template-columns:1fr;gap:16px}.choices{gap:6px}.choices label>span{font-size:10px;padding:10px 7px}.quote-form input:not([type=checkbox]),.quote-form select,.quote-form textarea{font-size:16px;padding:10px;min-height:45px}.quote-form label,.quote-form legend{font-size:11px}.form-caption{font-size:8px}.faq summary{font-size:12px}.footer{grid-template-columns:1fr;gap:20px}.footer-brand{font-size:25px}.quote-dialog{padding:35px 20px 20px}.quote-dialog h2{font-size:29px}.dialog-actions .button{font-size:11px}.quote-dialog textarea{font-size:13px}}
.pack-image{aspect-ratio:1;background:#fff}.pack-image img{object-fit:contain;object-position:center}.pack-image>span{bottom:8px;right:8px}.phone-link{display:inline-block;margin-top:20px;font-size:12px;color:var(--wine);border-bottom:1px solid #ccb4b8;padding-bottom:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Identité Locavallon : fichiers d’origine avec leur transparence. */
.brand img{width:150px;height:auto;mix-blend-mode:normal}
.hero-mascot{position:absolute;z-index:1;top:-38px;right:110px;width:145px;height:auto;transform-origin:50% 85%;animation:mascot-dance 4s ease-in-out infinite;filter:drop-shadow(0 5px 5px #28251f18);pointer-events:none}
.round-badge{z-index:2}
@keyframes mascot-dance{0%,100%{transform:translateY(0) rotate(-5deg)}25%{transform:translateY(-7px) rotate(3deg)}50%{transform:translateY(0) rotate(5deg)}75%{transform:translateY(-5px) rotate(-3deg)}}
@media(max-width:800px){.brand img{width:120px}.hero-mascot{top:-43px;right:105px;width:135px}}
@media(max-width:540px){.brand img{width:100px}.hero-mascot{top:-24px;right:88px;width:112px}}
@media(prefers-reduced-motion:reduce){.hero-mascot{animation:none}}

.reviews-section{display:grid;grid-template-columns:1fr 1.08fr;gap:85px;border-top:1px solid var(--line);align-items:center}.reviews-section>div>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:420px}.reviews-card{background:var(--paper);padding:35px;border:1px solid var(--line);border-radius:6px}.reviews-source{font-size:10px;letter-spacing:1.8px;color:var(--wine);font-weight:700}.reviews-card h3{font-family:var(--serif);font-size:29px;font-weight:400;line-height:1.25;margin:20px 0 15px}.reviews-card p{font-size:13px;color:var(--muted);margin-bottom:25px}.reviews-card .button{font-size:12px}
@media(max-width:800px){.reviews-section{grid-template-columns:1fr;gap:25px}.reviews-card{padding:25px}}

.reviews-section{grid-template-columns:1fr;gap:28px}.reviews-section>div>p:not(.eyebrow){max-width:630px}.reviews-feed{min-width:0;width:100%}.reviews-fallback{text-align:center;margin:22px 0 0}
