@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/outfit-400.ttf) format('truetype');
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/outfit-500.ttf) format('truetype');
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/outfit-600.ttf) format('truetype');
}

:root{--paper:#f4efe8;--ink:#272824;--muted:#62645c;--line:#d7d0c6;--green:#282e27;--accent:#954b35;--white:#fffdf9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Outfit","Montserrat",Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;left:20px;top:-80px;background:white;padding:14px;z-index:50}.skip:focus{top:10px}.topline{background:var(--green);color:var(--paper);text-align:center;font-size:.875rem;padding:9px 18px;letter-spacing:.06em}.header{display:flex;align-items:center;justify-content:space-between;width:min(1400px,calc(100% - 80px));margin:auto;min-height:108px;gap:25px}.wordmark{display:flex;flex-direction:column;line-height:1.2}.wordmark>span{font-size:1.6rem;letter-spacing:-.04em;font-weight:600}.brand-dot{color:var(--accent)}.wordmark small{font-size:.75rem;letter-spacing:.13em;margin-top:8px;font-weight:400}nav{display:flex;gap:28px;align-items:center;font-size:.9rem}nav>a:not(.button){border-bottom:1px solid transparent}nav>a:not(.button):hover{border-color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:var(--white);padding:15px 23px;border:1px solid var(--green);border-radius:3px;font-weight:500;font-size:.95rem;cursor:pointer;line-height:1.5;transition:background .2s,transform .2s;text-align:center}.button:hover{background:#42483a;transform:translateY(-2px)}.button-small{padding:11px 19px}.outline{background:transparent;color:var(--ink)}.outline:hover{color:var(--white)}.light{background:var(--paper);color:var(--green);border-color:var(--paper)}.light:hover{background:white}.text-link{padding:0;background:none;border:0;border-bottom:1px solid currentColor;font-size:.95rem;line-height:1.6;cursor:pointer;color:inherit;width:fit-content}.text-link:hover{color:var(--accent)}.menu-toggle{display:none}.eyebrow{font-size:.78rem;letter-spacing:.14em;font-weight:500;margin:0 0 24px;color:var(--accent);line-height:1.6}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.3rem,5.6vw,5.3rem);line-height:1.03;letter-spacing:-.055em;font-weight:500;margin:0 0 29px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400}h2{font-size:clamp(2.1rem,3.3vw,3rem);letter-spacing:-.045em;line-height:1.12;font-weight:500;margin-bottom:0}h3{font-weight:500;letter-spacing:-.025em}.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;padding-block:30px 76px;align-items:center}.hero-description{max-width:440px;color:var(--muted);line-height:1.75;font-size:1.04rem;margin-bottom:30px}.hero .actions{display:flex;align-items:flex-start;gap:22px;flex-direction:column}.hero-visual{margin:0;position:relative;align-self:stretch;min-height:555px;max-height:680px;border-radius:160px 5px 5px 5px;overflow:hidden;background:#c9a672}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:52% 50%}.hero-visual:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(21,24,18,.7))}.hero-visual figcaption{position:absolute;bottom:28px;left:28px;right:28px;color:white;display:flex;flex-direction:column;z-index:1}.hero-visual figcaption span{font-size:1.05rem}.hero-visual figcaption small{letter-spacing:.16em;font-size:.75rem;margin-top:10px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:44px}.section-top>.eyebrow{margin-bottom:18px}.section-top>p{margin:0;color:var(--muted);line-height:1.7;max-width:350px}.markets{border-top:1px solid var(--line);padding-block:56px 65px}.markets .eyebrow{margin-bottom:14px}.market-grid{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.market-grid article{padding:30px 30px 25px 0}.market-grid article+article{border-left:1px solid var(--line);padding-left:36px}.day{font-size:.875rem;color:var(--accent)}.market-grid h3{font-size:2rem;margin:9px 0 2px}.market-grid p{color:var(--muted);margin-bottom:0}.market-note{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:24px}.market-note p{margin:0;color:var(--muted);font-size:.94rem}.market-note a{font-weight:500;white-space:nowrap}.cuisine{padding-block:55px 86px}.dish-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 36px}.dish-grid article{padding:28px 0;border-top:1px solid var(--line)}.dish-head{display:flex;flex-direction:column;gap:3px;margin-bottom:14px}.dish-head h3{font-size:1.45rem;margin:0}.dish-head span{color:var(--accent);font-size:.81rem}.dish-grid p{color:var(--muted);font-size:.98rem;max-width:340px;margin-bottom:0}.card-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:18px;padding-top:28px;border-top:1px solid var(--line)}.card-footer p{color:var(--muted);margin:0;max-width:460px}.buffets{background:var(--green);color:var(--paper);padding-block:80px 40px}.buffets .eyebrow{color:#cfb59d}.buffet-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.buffet-intro h2{font-size:clamp(2.8rem,4.4vw,4.1rem);line-height:1.1}.buffet-copy{max-width:480px}.buffet-copy p{font-size:1.1rem;line-height:1.8;color:#d1d4ca;margin-bottom:30px}.buffet-details{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px;padding-block:32px;border-top:1px solid #555b50}.buffet-details span{font-family:Georgia,serif;font-size:1.6rem;color:#cfb59d;display:block;margin-bottom:15px}.buffet-details h3{font-size:1.25rem;margin-bottom:12px}.buffet-details p{color:#d1d4ca;font-size:.96rem;line-height:1.75;margin:0}.buffet-note{border-top:1px solid #555b50;padding-top:28px;color:#d1d4ca;font-size:.9rem;margin:0}.boxes{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-block:95px}.box-heading h2{margin-bottom:24px}.box-heading>p:not(.eyebrow){color:var(--muted);max-width:400px;margin-bottom:25px}.box-options article{padding-block:20px;border-bottom:1px solid var(--line)}.box-options article:first-child{padding-top:0}.box-options span{font-size:.75rem;letter-spacing:.09em;color:var(--accent)}.box-options h3{font-size:1.65rem;margin:6px 0}.box-options p{color:var(--muted);margin:0;max-width:480px}.order-band{background:#e3d9cc;padding-block:43px}.order-band>.wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.order-band .eyebrow{margin-bottom:12px}.order-band h2{font-size:2.1rem}.order-band p:last-child{color:var(--muted);margin:16px 0 0}.order-band .button{flex-shrink:0}.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding-block:95px}.contact-copy h2{font-size:3.3rem;margin-bottom:28px}.contact-copy>p:not(.eyebrow){color:var(--muted);max-width:350px}.phone{font-size:1.8rem;letter-spacing:-.02em;display:inline-block;margin:6px 0 24px}.contact-small{font-size:.9rem;line-height:1.8}form{background:var(--white);padding:36px;border:1px solid var(--line);border-radius:4px;scroll-margin-top:30px}form h3{font-size:1.6rem;margin-bottom:7px}.form-intro,.form-help{color:var(--muted);font-size:.875rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:.875rem;display:block;margin-bottom:18px}input,textarea{display:block;width:100%;margin-top:7px;border:1px solid #c7c7bd;border-radius:2px;padding:12px;background:white;color:var(--ink);font-size:1rem;min-width:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#77796f}form .button{width:100%}.form-help{line-height:1.6;margin:16px 0 0}#sms-preview{border-top:1px solid var(--line);margin-top:22px;padding-top:20px;font-size:.9rem}#sms-preview .actions{display:flex;gap:25px;flex-wrap:wrap;margin-top:16px}#copy-status{margin-bottom:0}footer{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;border-top:1px solid var(--line);padding-block:38px}footer p{font-size:.82rem;color:var(--muted);margin:16px 0 0}.footer-links{display:flex;gap:23px;align-items:center;flex-wrap:wrap;font-size:.875rem}.footer-links button{font-size:.875rem}#site-info{flex-basis:100%;border-top:1px solid var(--line);padding-top:20px}#site-info h3{margin-bottom:8px}#site-info p{margin-top:0;margin-bottom:12px;max-width:900px}#site-info>a{font-size:.875rem;text-decoration:underline}
@media(min-width:1500px){.hero-visual{min-height:625px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{width:calc(100% - 64px)}nav{gap:18px;font-size:.85rem}.wordmark>span{font-size:1.4rem}.wordmark small{font-size:.65rem}.hero{gap:35px}.hero-visual{min-height:525px}.contact{gap:50px}.buffet-intro{gap:45px}.boxes{gap:50px}.dish-grid{gap:0 25px}}@media(max-width:850px){html{scroll-padding-top:30px}.header{min-height:90px;position:relative;flex-wrap:wrap}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:3px;cursor:pointer;padding:10px}.menu-toggle span{height:1px;width:100%;background:var(--ink)}nav{display:none;width:100%;padding:5px 0 25px;flex-wrap:wrap;gap:20px}nav.open{display:flex}.hero{gap:30px}.hero-visual{min-height:460px;border-top-left-radius:100px}h1{font-size:3.7rem}.hero-description{font-size:.98rem}.hero .button{font-size:.875rem}.hero .text-link{font-size:.85rem}.section-top{align-items:start}.section-top>p{font-size:.9rem}.market-grid article+article{padding-left:20px}.market-grid h3{font-size:1.7rem}.day{font-size:.8rem}.dish-grid{grid-template-columns:repeat(2,1fr)}.buffet-details{gap:25px}.boxes{gap:30px}.contact{grid-template-columns:1fr 1.2fr;gap:30px}form{padding:25px}.phone{font-size:1.5rem}.order-band>.wrap{align-items:start;flex-direction:column}.footer-links{gap:18px}}@media(max-width:620px){.wrap,.header{width:calc(100% - 40px)}.topline{font-size:.75rem;letter-spacing:.01em;padding-block:10px}.wordmark>span{font-size:1.45rem}.wordmark small{font-size:.62rem;letter-spacing:.12em}.hero{grid-template-columns:1fr;padding-block:24px 44px;gap:34px}.hero-copy>.eyebrow{font-size:.7rem;margin-bottom:20px}h1{font-size:3.8rem;line-height:1.03;margin-bottom:23px}.hero-description{font-size:1rem;max-width:450px;margin-bottom:24px}.hero .actions{gap:19px}.hero-visual{height:365px;min-height:0;border-radius:105px 3px 3px 3px}.hero-visual figcaption{bottom:22px;left:22px}.hero-visual figcaption span{font-size:.95rem}.section-top{flex-direction:column;gap:20px;margin-bottom:28px}.section-top>p br{display:none}.section-top>p{font-size:1rem}.eyebrow{font-size:.7rem;margin-bottom:17px}.markets{padding-block:37px 45px}.market-grid{grid-template-columns:1fr}.market-grid article,.market-grid article+article{border-left:0;padding:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:5px 10px;align-items:center}.market-grid article+article{border-top:1px solid var(--line)}.market-grid h3{grid-column:1;font-size:1.65rem;margin:3px 0}.market-grid .day{grid-column:1 / -1;font-size:.875rem}.market-grid p{grid-row:2;grid-column:2;text-align:right;font-size:.9rem}.market-note{align-items:start;flex-direction:column;gap:16px}.cuisine{padding-block:30px 50px}.dish-grid{gap:0 22px}.dish-grid article{padding-block:23px}.dish-head h3{font-size:1.15rem;line-height:1.3}.dish-head span{font-size:.75rem}.dish-grid p{font-size:.9rem;line-height:1.7}.card-footer{align-items:start;flex-direction:column;gap:20px}.card-footer p{font-size:.95rem}.card-footer .button{width:100%}.buffets{padding-block:48px 30px}.buffet-intro{grid-template-columns:1fr;gap:30px}.buffet-intro h2{font-size:3rem}.buffet-copy p{font-size:1rem;margin-bottom:23px}.buffet-details{grid-template-columns:1fr;gap:25px;margin-top:40px;padding-top:28px}.buffet-details article{position:relative;padding-left:45px}.buffet-details span{position:absolute;left:0;top:0;font-size:1.35rem}.buffet-details h3{font-size:1.2rem;margin-bottom:8px}.buffet-note{font-size:.875rem}.boxes{grid-template-columns:1fr;gap:35px;padding-block:48px}.box-heading h2{font-size:2.5rem;margin-bottom:20px}.box-heading>p:not(.eyebrow){margin-bottom:20px}.box-options article{padding-block:20px}.box-options h3{font-size:1.5rem}.box-options p{font-size:.96rem}.order-band{padding-block:35px}.order-band h2{font-size:2rem}.order-band .button{width:100%}.contact{grid-template-columns:1fr;gap:35px;padding-block:48px}.contact-copy h2{font-size:2.7rem;margin-bottom:22px}.phone{font-size:1.8rem;margin-bottom:18px}.contact-copy .contact-small{margin-bottom:19px}.form-grid{gap:15px;grid-template-columns:1fr}form{padding:25px 20px}.form-grid label{margin-bottom:0}.form-grid{margin-bottom:18px}form h3{font-size:1.35rem}footer{padding-block:28px;gap:28px}.footer-links{align-items:start;gap:15px 24px}.footer-links a,.footer-links button{font-size:.85rem}.footer-links button{flex-basis:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.food-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:36px}.food-gallery figure{margin:0;position:relative;height:280px;overflow:hidden;border-radius:3px}.food-gallery img{width:100%;height:100%;object-fit:cover;object-position:center 52%}.food-gallery figcaption{position:absolute;bottom:18px;left:18px;padding:8px 15px;background:var(--paper);color:var(--ink);font-size:.95rem;border-radius:2px}@media(max-width:620px){.food-gallery{gap:16px;margin-bottom:20px}.food-gallery figure{height:195px}.food-gallery figcaption{font-size:.8rem;left:10px;bottom:10px;padding:6px 10px}}

.catering-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:40px 0 12px}.catering-gallery figure{margin:0}.catering-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px}.catering-gallery figcaption{font-size:1rem;margin-top:12px}.catering-caption{font-size:.875rem;opacity:.8;margin-bottom:32px}@media(max-width:700px){.catering-gallery{grid-template-columns:1fr;gap:24px}}

.market-gallery{grid-template-columns:1fr}.market-gallery img{object-fit:contain}

.reservation{display:grid;grid-template-columns:1fr 1.25fr;gap:70px;padding-block:25px 65px}.reservation-copy>p{max-width:430px}.reservation-copy h2{margin-bottom:25px}select{display:block;width:100%;margin-top:7px;border:1px solid #c7c7bd;border-radius:2px;padding:12px;background:white;color:var(--ink);font:inherit;font-size:1rem;min-width:0}select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.message-preview{border-top:1px solid var(--line);margin-top:22px;padding-top:20px;font-size:1rem}.message-preview .actions{margin-top:16px;flex-wrap:wrap}.message-preview button{border:0;background:none;cursor:pointer;padding:0}.order-band .text-link{color:inherit}@media(max-width:900px){.reservation{gap:30px}}@media(max-width:620px){.reservation{grid-template-columns:1fr;padding-block:15px 45px;gap:25px}}

.hero-buffet-link{display:inline-block;margin-top:20px}

.hero-reservation-help{font-size:.875rem;color:var(--muted);margin:12px 0 0}

.dish-grid article{min-width:0}.dish-photo{position:relative;width:100%;aspect-ratio:8/5;overflow:hidden;border-radius:3px;margin-bottom:20px;background:var(--line)}.dish-photo img{display:block;width:100%;height:100%;object-fit:cover}.dish-photo-crop img{position:absolute;width:var(--photo-width);height:auto;max-width:none;left:var(--photo-left);top:var(--photo-top)}
@media(max-width:620px){.dish-photo{margin-bottom:14px}}

/* Les photos de présentation suivent le format des fiches de plats. */
.food-gallery{gap:36px}.food-gallery figure{height:auto;overflow:visible;position:static;border-radius:0}.food-gallery img{display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;border-radius:3px}.food-gallery figcaption{position:static;background:none;padding:0;margin-top:20px;border-radius:0;font-size:1.45rem;font-weight:500;letter-spacing:-.025em;line-height:1.6}@media(max-width:620px){.food-gallery{gap:22px}.food-gallery figure{height:auto}.food-gallery figcaption{position:static;font-size:1.45rem;padding:0;margin-top:14px}}

.food-gallery .dish-photo{margin-bottom:0}.food-gallery .dish-photo-crop img{width:var(--photo-width);height:auto;aspect-ratio:auto}

.restaurant-payments{border-top:1px solid var(--line);padding-block:40px 45px;display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:center}.restaurant-payments h2{font-size:clamp(1.7rem,3vw,2.5rem);margin-bottom:15px}.restaurant-payments .eyebrow{margin-bottom:15px}.payment-partners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:center}.payment-logo{background:var(--white);border:1px solid var(--line);padding:20px 14px;border-radius:4px;height:112px;display:flex;align-items:center;justify-content:center}.payment-logo img{display:block;width:100%;max-width:130px;height:58px;object-fit:contain}.payment-logo img.edenred-logo{height:76px;width:100%;max-width:120px}@media(max-width:900px){.restaurant-payments{grid-template-columns:1fr;gap:25px}}@media(max-width:620px){.payment-partners{gap:8px}.payment-logo{height:100px;padding:12px 8px}.payment-logo img{height:42px}.payment-logo img.edenred-logo{height:68px}}

.contact-channels{display:flex;flex-wrap:wrap;gap:16px 24px}.contact-email{margin-top:16px;font-size:1rem;overflow-wrap:anywhere}.contact-email a{text-decoration:underline;text-underline-offset:4px}



/* Small food visuals beside the discovery offers. */
.box-options .box-option{display:flex;align-items:center;gap:20px}.box-option-copy{flex:1;min-width:0}.box-thumbs{display:flex;flex-direction:column;gap:8px;flex:none}.box-thumbs>img,.mini-thumb{width:88px;height:88px;border-radius:12px;object-fit:cover;overflow:hidden}.box-thumbs>img:first-child{object-position:center 65%}.mini-thumb{position:relative}.mini-thumb img{position:absolute;width:264px;height:176px;max-width:none}.mini-nems img{left:0;top:-68px}.mini-samoussas img{left:-94px;top:-45px}.box-options .box-image-note{font-size:.8125rem;margin-top:14px;color:var(--muted)}
@media(max-width:620px){.box-options .box-option{gap:14px}.box-thumbs>img,.mini-thumb{width:72px;height:72px}.mini-thumb img{width:216px;height:144px}.mini-nems img{top:-56px}.mini-samoussas img{left:-77px;top:-37px}.box-options h3{font-size:1.35rem}}

/* Food, installation and serving thumbnails beside catering details. */
.buffet-details article{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 80px;align-items:start;gap:12px}.buffet-details article>span{grid-column:1 / -1}.buffet-detail-copy{min-width:0}.buffet-detail-photo{width:80px;height:80px;object-fit:cover;object-position:center 65%;border-radius:10px;margin-top:6px}
@media(max-width:900px) and (min-width:621px){.buffet-details{grid-template-columns:1fr}.buffet-details article{grid-template-columns:minmax(0,1fr) 88px;padding-left:45px}.buffet-details article>span{position:absolute;left:0;top:0}.buffet-detail-photo{width:88px;height:88px}}
@media(max-width:620px){.buffet-details article{grid-template-columns:minmax(0,1fr) 72px;gap:14px;padding-left:36px}.buffet-details article>span{position:absolute;left:0;top:0}.buffet-detail-photo{width:72px;height:72px}.buffet-detail-copy h3{margin-top:0}}

/* Keep each catering number in its own column at every viewport. */
.buffet-details article{display:grid;grid-template-columns:32px minmax(0,1fr) 80px;gap:12px;align-items:start;padding-left:0}
.buffet-details article>span{position:static;grid-column:1;grid-row:1;margin:0;line-height:1.4}
.buffet-detail-copy{grid-column:2;grid-row:1}
.buffet-detail-copy h3{margin-top:0}
.buffet-detail-photo{grid-column:3;grid-row:1}
@media(max-width:900px) and (min-width:621px){.buffet-details article{grid-template-columns:32px minmax(0,1fr) 88px;padding-left:0}}
@media(max-width:620px){.buffet-details article{grid-template-columns:26px minmax(0,1fr) 72px;gap:10px;padding-left:0}.buffet-details article>span{position:static;line-height:1.4}}

/* Décor thaïlandais validé : éléphants, lotus et ornement doré. */
:root{--paper:#f8f0e4;--ink:#24231f;--muted:#60574d;--line:#dfccb4;--accent:#ae542f;--white:#fffbf5}
body{background-color:var(--paper);background-image:url('assets/decor-thailand.webp');background-size:100% auto;background-repeat:repeat-y;background-position:center top}
.header{background:rgba(255,251,245,.18);padding-inline:24px;border-radius:0 0 12px 12px}
.hero-copy{background:rgba(255,251,245,.18);padding:30px;border-radius:12px}
.hero-visual{border-radius:16px;box-shadow:0 16px 44px rgba(94,61,31,.12)}
.hero .button,nav .button,.order-band .button{background:var(--accent);border-color:var(--accent)}
.hero .button:hover,nav .button:hover,.order-band .button:hover{background:#8b4024}
.market-grid{border:0;gap:22px}
.market-grid article,.market-grid article+article{background:rgba(255,251,245,.28);border:1px solid var(--line);padding:26px;border-radius:10px}
.section-top,.restaurant-payments>div:first-child,.reservation-copy,.box-heading,.contact-copy{background:rgba(255,251,245,.08);padding:24px;border-radius:12px}
.section-top{align-items:center}
.market-note{background:rgba(255,251,245,.08);padding:20px;border-radius:10px;margin-top:18px}
.dish-grid{gap:24px}
.dish-grid article{background:rgba(255,251,245,.24);border:1px solid var(--line);padding:18px;border-radius:12px}
.food-gallery figure{background:rgba(255,251,245,.24);padding:18px;border:1px solid var(--line);border-radius:12px}
.card-footer{background:rgba(255,251,245,.18);padding:24px;border:1px solid var(--line);border-radius:12px}
.box-options .box-option{background:rgba(255,251,245,.28);padding:20px;border:1px solid var(--line);border-radius:12px;margin-bottom:14px}
.box-options .box-image-note{background:rgba(255,251,245,.18);padding:10px;border-radius:6px}
.order-band{background:rgba(232,209,178,.35)}
form{border-radius:12px;box-shadow:0 8px 28px rgba(94,61,31,.06)}
footer{background:rgba(255,251,245,.24);padding-inline:24px;border-radius:12px 12px 0 0}
@media(min-width:1500px){body{background-size:1600px auto}}
@media(max-width:850px){.header{padding-inline:16px}.hero-copy{padding:22px}.hero{gap:26px}.market-grid{gap:14px}.market-grid article,.market-grid article+article{padding:20px}}
@media(max-width:620px){body{background-size:760px auto}.header{padding-inline:12px}.hero-copy{padding:24px 20px}h1{font-size:clamp(2.5rem,11vw,3.8rem)}.hero-visual{border-radius:12px}.section-top,.restaurant-payments>div:first-child,.reservation-copy,.box-heading,.contact-copy{padding:20px}.market-grid article,.market-grid article+article{padding:20px;border:1px solid var(--line)}.food-gallery{gap:14px}.food-gallery figure{padding:10px}.food-gallery figcaption h3{font-size:1.2rem}.dish-grid{gap:14px}.dish-grid article{padding:12px}.card-footer{padding:20px}.box-options .box-option{padding:16px}.market-note{padding:16px}footer{padding-inline:20px}}

/* Relief léger des lettres : le décor reste visible sous les textes. */
.hero-copy,.section-top,.reservation-copy,.box-heading,.contact-copy,.market-grid article,.market-note,.dish-grid article,.food-gallery figcaption,.card-footer,.box-options,.order-band,footer{text-shadow:0 1px 2px #fffbf5,0 0 8px rgba(255,251,245,.9)}
form{background:rgba(255,251,245,.72)}
.button,.payment-logo,input,select,textarea{text-shadow:none}

/* Un décor différent au fil des sections, sans répétition en mosaïque. */
body{background-repeat:no-repeat;background-size:100% auto}
.markets,.restaurant-payments,.reservation,.cuisine,.boxes,.contact{background-image:url('assets/decor-thailand-varie.webp');background-size:100% auto;background-repeat:no-repeat}
.markets{background-position:center 30%}
.restaurant-payments{background-position:center 42%}
.reservation{background-position:center 46%}
.cuisine{background-position:center 66%}
.boxes{background-position:center 83%}
.contact{background-position:center bottom}
@media(min-width:1500px){body{background-size:100% auto}}
@media(max-width:620px){body{background-size:760px auto}.markets,.restaurant-payments,.reservation,.cuisine,.boxes,.contact{background-size:760px auto}.markets{background-position:center 28%}.cuisine{background-position:center 66%}.contact{background-position:center bottom}}

/* Motifs à fond perdu, éclaircis sans modifier l’opacité des textes. */
body{background-image:linear-gradient(rgba(248,240,228,.16),rgba(248,240,228,.16)),url('assets/decor-thailand.webp');background-size:100% 100%,100% auto;background-repeat:no-repeat;color:#24231f}
.markets,.restaurant-payments,.reservation,.cuisine,.boxes,.contact{position:relative;isolation:isolate;background-image:none}
.markets::before,.restaurant-payments::before,.reservation::before,.cuisine::before,.boxes::before,.contact::before{content:"";position:absolute;z-index:-1;inset-block:0;left:50%;transform:translateX(-50%);width:100vw;pointer-events:none;background-image:linear-gradient(rgba(248,240,228,.22),rgba(248,240,228,.22)),url('assets/decor-thailand-varie.webp');background-repeat:no-repeat;background-size:100% 100%,100% auto;background-position:center,var(--decor-position,center)}
.markets{--decor-position:center 30%}.restaurant-payments{--decor-position:center 42%}.reservation{--decor-position:center 46%}.cuisine{--decor-position:center 66%}.boxes{--decor-position:center 83%}.contact{--decor-position:center bottom}
.hero-copy,.section-top,.reservation-copy,.box-heading,.contact-copy,.market-note{background:transparent}
.hero-copy,.section-top,.reservation-copy,.box-heading,.contact-copy,.market-grid article,.market-note,.dish-grid article,.food-gallery figcaption,.card-footer,.box-options,.order-band,footer{text-shadow:none}
@media(min-width:1500px){body{background-size:100% 100%,100% auto}}
@media(max-width:620px){body{background-size:100% 100%,760px auto}.markets::before,.restaurant-payments::before,.reservation::before,.cuisine::before,.boxes::before,.contact::before{background-size:100% 100%,760px auto}.markets{--decor-position:center 28%}}

body{overflow-x:clip}

.payment-logo-pluxee{background:#001e5a;border-color:#001e5a}



.payment-logo{height:128px;padding:12px}.payment-logo>img{width:min(100%,130px);max-width:130px;height:auto}.partner-mark{display:block;position:relative;overflow:hidden;flex-shrink:1}.pluxee-mark{width:min(100%,150px);aspect-ratio:448/127;--logo-left:0%;--logo-top:-12.598425%;--logo-width:188.392857%;--logo-height:125.984252%}.up-mark{width:min(100%,170px);aspect-ratio:2057/591;--logo-left:-9.577054%;--logo-top:-33.333333%;--logo-width:119.105493%;--logo-height:166.666667%}.edenred-mark{width:min(100%,150px);aspect-ratio:1147/704;--logo-left:-3.74891%;--logo-top:-36.221591%;--logo-width:107.323452%;--logo-height:174.857955%}.payment-logo .partner-mark img{position:absolute;left:var(--logo-left);top:var(--logo-top);width:var(--logo-width);height:var(--logo-height);max-width:none;object-fit:fill}@media(max-width:620px){.payment-logo{height:120px;padding:10px}}

.market-grid .market-directions{margin-top:16px;min-height:44px;justify-self:start;grid-column:1 / -1}.market-grid article p{grid-row:auto;grid-column:auto;text-align:left}

.market-grid article,.market-grid article+article{display:flex;flex-direction:column;align-items:flex-start;gap:0}.market-grid article h3{margin:9px 0 4px}.market-grid article p{align-self:stretch;text-align:left;margin:0;grid-column:auto;grid-row:auto}.market-grid .market-directions{align-self:flex-start;gap:8px;margin-top:16px}.directions-pin{display:block;color:#d32f2f;flex:0 0 20px}

.restoflash-name{font-family:Arial,sans-serif;font-size:clamp(22px,3vw,28px);font-weight:600;letter-spacing:-1px;color:#d82432}

/* Un seul décor continu, présent sur toute la hauteur de la page. */
body{position:relative;isolation:isolate;background-image:none}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(rgba(248,240,228,.16),rgba(248,240,228,.16)),url('assets/decor-thailand.webp') center / cover no-repeat}
.markets::before,.restaurant-payments::before,.reservation::before,.cuisine::before,.boxes::before,.contact::before{content:none}
@media(max-width:620px){body::before{background-image:linear-gradient(rgba(248,240,228,.22),rgba(248,240,228,.22)),url('assets/decor-thailand-varie.webp')}}

.preparation-workshop{margin:24px 0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.preparation-workshop h3{font-size:1.2rem;margin:0 0 8px}.preparation-workshop p{margin:0 0 12px;color:var(--muted)}

@media(min-width:1101px){.market-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:621px) and (max-width:1100px){.market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.reservation-access{padding:32px;background:rgba(255,251,245,.88);border:1px solid var(--line);border-radius:12px;align-self:center;box-shadow:0 8px 28px rgba(94,61,31,.06)}.reservation-access h3{font-size:1.5rem}.reservation-access .button{margin-block:12px;max-width:100%}@media(max-width:620px){.reservation-access{padding:24px 20px}}

/* Intro without portrait */
.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{max-width:780px}

/* Kaleidoscope of Thai market photographs */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:36px}
.thai-market-collage{margin:0;min-width:0;position:relative}
.thai-market-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:180px 145px 140px;gap:9px;border-radius:45% 18px 35% 18px;overflow:hidden;box-shadow:0 18px 45px #593c2326;transform:rotate(-2deg)}
.thai-market-tile{overflow:hidden;grid-column:span 3;background:#56452e}
.thai-market-tile:first-child{grid-column:span 4;grid-row:span 2}
.thai-market-tile:nth-child(2),.thai-market-tile:nth-child(3){grid-column:span 2}
.thai-market-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.thai-market-tile:hover img{transform:scale(1.06)}
.thai-market-collage figcaption{font-size:.85rem;text-align:center;margin-top:20px;color:var(--muted);letter-spacing:.04em}
@media(max-width:850px){.hero{grid-template-columns:1fr}.thai-market-collage{width:100%;max-width:650px;margin:0 auto}.thai-market-grid{grid-template-rows:160px 130px 120px;transform:none}}
@media(max-width:480px){.thai-market-grid{grid-template-rows:120px 100px 100px;gap:6px;border-radius:28% 12px 24% 12px}.thai-market-collage figcaption{margin-top:12px}}

.thai-market-tile:nth-child(2) img{object-position:center 65%}.thai-market-tile:nth-child(3) img{object-position:center 80%}

/* Weekly specialty SMS subscription */
.weekly-signup{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);padding-top:64px;padding-bottom:64px;border-top:1px solid var(--line)}.weekly-copy{align-self:center}.weekly-copy h2{font-size:clamp(2rem,3.5vw,3.4rem)}.weekly-copy>p:last-child{max-width:440px}.weekly-signup form{min-width:0;background:#fffaf2;border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,36px)}.weekly-signup label{display:block;font-weight:600;margin:12px 0 8px}.weekly-signup label>span{font-weight:400}.weekly-signup input:not([type=checkbox]),.weekly-signup textarea{box-sizing:border-box;width:100%;padding:13px;border:1px solid #aaa493;border-radius:6px;background:#fff;font:inherit;color:inherit}.weekly-signup .weekly-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.55;margin:20px 0}.weekly-consent input{flex:0 0 auto;width:20px;height:20px;margin-top:3px;accent-color:#225941}.weekly-help{font-size:.85rem;line-height:1.5;margin:10px 0;color:var(--muted)}#weekly-error{color:#9e2727;font-size:.9rem;margin:6px 0}#weekly-preview{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}#weekly-preview h3{font-size:1.3rem}#weekly-preview .actions{flex-wrap:wrap;margin-top:14px}.weekly-signup :focus-visible{outline:3px solid #a77d41;outline-offset:4px}@media(max-width:760px){.weekly-signup{grid-template-columns:1fr;gap:24px;padding-top:40px;padding-bottom:40px}}

/* Focused sections and an explicit dropdown on every screen size. */
.header{position:sticky;top:0;z-index:30;background:#f8f4ed;overflow:visible}
.navigation-tools{position:relative;display:flex;align-items:center;gap:12px}
.navigation-tools .menu-toggle{display:flex;position:relative;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:76px;height:52px;padding:7px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--green);cursor:pointer}
.menu-toggle b{font-size:13px;font-weight:500;line-height:1;margin-bottom:3px}
.navigation-tools .menu-toggle span{position:static;display:block;width:19px;height:2px;background:currentColor;transform:none;margin:0}
.navigation-tools #navigation{display:none;position:absolute;top:calc(100% + 12px);right:0;left:auto;width:min(330px,calc(100vw - 40px));max-height:calc(100dvh - 130px);overflow:auto;flex-direction:column;align-items:stretch;gap:0;padding:9px;background:#fffdf9;border:1px solid var(--line);border-radius:9px;box-shadow:0 15px 40px #27282426}
.navigation-tools #navigation.open{display:flex}
.navigation-tools #navigation a{padding:13px 16px;border:0;border-radius:5px;font-size:15px;line-height:1.4}
.navigation-tools #navigation a:hover,.navigation-tools #navigation a[aria-current="page"]{background:#e9eee5;color:#153e2f}
main#contenu{min-height:45vh}
@media(max-width:620px){.navigation-tools{gap:8px}.quick-reserve{padding:10px 12px;font-size:13px}.header{gap:10px}.wordmark>span{font-size:1.2rem}.wordmark small{font-size:.54rem;letter-spacing:.06em}.navigation-tools .menu-toggle{width:60px}}
