:root{font-synthesis:none}dialog{width:min(430px,calc(100vw - 30px));border:0;border-radius:14px;padding:24px;box-shadow:0 20px 70px #0008}dialog::backdrop{background:#0009}dialog label{display:block;font-weight:700;margin:16px 0}dialog select{width:100%;padding:12px;border:1px solid #bbc3bf;border-radius:7px;margin-top:6px}
:root{font-family:'DM Sans',Arial,sans-serif;color:#172023;background:#faf9f6;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e51d1d;outline-offset:3px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:white;z-index:50}.top{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,20px);background:#15191a;color:#fff;position:relative;z-index:4}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-family:Outfit,sans-serif;font-weight:800;letter-spacing:.04em;line-height:.92;font-size:19px}.brand small{display:block;color:#ff6666;font-size:9px;margin-top:7px;letter-spacing:.19em}.brand-mark{border:2px solid #e51d1d;border-radius:50%;height:48px;width:48px;display:grid;place-content:center;position:relative;font-size:18px}.brand-mark span{position:absolute;right:5px;top:6px;color:#e51d1d}.top nav{display:flex;align-items:center;gap:32px}.top nav a{text-decoration:none;font-weight:700;font-size:14px}.top nav a:hover,footer a:hover{color:#e51d1d}.top .call{border:1px solid #777;padding:11px 17px;border-radius:999px}.intro{background:#15191a;color:white;min-height:530px;padding:64px max(5vw,20px) 70px;display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:5vw}.eyebrow{color:#ff6969;font-size:12px;font-weight:800;letter-spacing:.2em;margin:0 0 16px}.intro h1{font:800 clamp(42px,6vw,84px)/1.04 Outfit,sans-serif;letter-spacing:-.05em;margin:0 0 20px}.intro h1 em{font-style:normal;color:#ff5555}.lead{font-size:clamp(17px,2vw,21px);color:#dadbd8;line-height:1.5}.intro-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:15px 22px;font-weight:800;text-decoration:none;border:1px solid transparent;min-height:50px}.primary{background:#e51d1d;color:#1b1b1b}.primary:hover{background:#bf141b}.ghost{border-color:#686f70;color:white}.ghost:hover{background:#303839}.address-inline{font-size:14px;color:#b6bcba;margin-top:30px}.food-visual{height:380px;position:relative;border-radius:16px;background:#604229 url('/assets/baguette.webp') center / cover no-repeat;box-shadow:0 26px 70px #0008;overflow:hidden}.food-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#15191a88,transparent 70%)}.food-label{position:absolute;z-index:1;left:28px;bottom:28px;font:700 25px/1.25 Outfit,sans-serif;letter-spacing:.04em}.food-label strong{font-size:13px;color:#ff8383;letter-spacing:.1em}.menu-wrap{max-width:1300px;margin:auto;padding:76px max(5vw,20px)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px}.section-head h2,.contact h2{font:800 clamp(34px,4vw,54px)/1.1 Outfit,sans-serif;letter-spacing:-.04em;margin:0}.section-head>p{max-width:310px;font-size:13px;color:#67706e}.categories{display:flex;gap:8px;overflow-x:auto;padding:28px 0 22px;scrollbar-width:thin}.categories button{border:1px solid #d7dad7;background:#fff;border-radius:99px;padding:11px 17px;white-space:nowrap;font-weight:700}.categories button[aria-selected=true]{background:#172023;border-color:#172023;color:white}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.item{background:white;border:1px solid #e5e4df;border-radius:12px;padding:20px;display:flex;justify-content:space-between;gap:14px}.item h3{font:700 18px/1.2 Outfit,sans-serif;margin:0 0 6px}.item p{color:#6a706e;font-size:14px;line-height:1.4;margin:0 0 10px}.item small{font-weight:800;color:#202626}.item .add{background:#f4f0e9;border:0;border-radius:8px;width:42px;height:42px;flex:0 0 42px;font-size:26px}.item .add:hover{background:#ffd2d3}.menu-note{color:#5b6361;font-size:14px;margin-top:26px}.contact{background:#e8e2d8;padding:65px max(5vw,20px);display:flex;justify-content:space-between;gap:30px}.contact p:not(.eyebrow){margin:18px 0 25px}.contact address{font-style:normal;line-height:1.9;background:white;border-radius:12px;padding:26px;min-width:300px}.contact address a{color:#b31820}.cart-fab{position:fixed;right:20px;bottom:20px;z-index:8;background:#e51d1d;border:0;border-radius:9px;padding:16px 22px;font-weight:800;box-shadow:0 8px 30px #0005}.shade{position:fixed;inset:0;background:#0009;z-index:9}.cart{position:fixed;z-index:10;top:0;right:0;height:100dvh;width:min(440px,100vw);background:#fff;transform:translateX(105%);transition:transform .2s;overflow-y:auto;padding:24px;box-shadow:-12px 0 35px #0002}.cart.open{transform:translateX(0)}.cart-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ddd}.cart-head h2{font:700 26px Outfit}.cart-head button{border:0;background:none;font-size:22px}.cart-row{padding:15px 0;border-bottom:1px solid #eee;display:flex;justify-content:space-between;gap:10px}.cart-row button{border:0;background:#f4f0e9;border-radius:5px;margin:3px;padding:5px 9px}.cart-row small{display:block;color:#667}.cart-row strong{white-space:nowrap}.cart label{display:block;font-weight:700;font-size:14px;margin:15px 0}.cart input:not([type=radio]),.cart select,.cart textarea,.admin input{width:100%;border:1px solid #cbd0ce;border-radius:7px;padding:11px;margin-top:5px}.cart fieldset{border:0;padding:0;margin:20px 0}.cart legend{font-weight:800}.cart .radio{display:inline-flex;gap:7px;margin-right:16px}.cart .radio input{width:auto}.checkout-line{display:flex;justify-content:space-between;border-top:1px solid #ddd;padding-top:18px;font-size:19px}.fineprint{font-size:13px;line-height:1.5;color:#59625f}.wide{width:100%}.honeypot{position:absolute;left:-9999px}.order-state{color:#8b471a;font-weight:700;line-height:1.5}.order-state.success{color:#116545}footer{background:#15191a;color:#d3d6d4;padding:32px max(5vw,20px);display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;font-size:14px}footer div{display:flex;flex-wrap:wrap;gap:19px}footer a{text-decoration:none}.legal{max-width:800px;margin:50px auto 100px;padding:0 20px;line-height:1.65}.legal h1,.legal h2{font-family:Outfit}.legal section{padding-top:20px;border-top:1px solid #ddd;margin-top:30px}.legal .notice{background:#ffe5e6;padding:16px;border-radius:8px}.admin{max-width:950px;padding:30px 20px;margin:auto}.admin header{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin .order{background:white;border:1px solid #ddd;padding:20px;border-radius:10px;margin:12px 0}.admin .order.new{border-left:6px solid #e51d1d}.admin .order button{padding:10px;margin:3px;border:1px solid #bbb;border-radius:6px;background:white}.admin .order button.current{background:#192527;color:white}.admin .order-meta{color:#58605c;font-size:14px}.admin #orders{margin-top:20px}@media(max-width:750px){.top{height:72px}.top nav>a:not(.call){display:none}.top .call{padding:10px}.top .call span{display:none}.intro{grid-template-columns:1fr;padding-top:48px;gap:26px}.food-visual{height:190px}.menu-wrap{padding-top:48px}.section-head{display:block}.menu-grid{grid-template-columns:1fr}.contact{display:block}.contact address{min-width:0;margin-top:30px}.cart-fab{left:16px;right:16px}footer{display:block}footer div{margin-top:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

.ordering-control{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid #e5e4df;border-radius:12px;padding:20px;margin:20px 0}.ordering-control h2{margin:0 0 7px;font:700 22px Outfit,sans-serif}.ordering-control p{margin:0 0 8px;font-weight:700}.ordering-control small{color:#56615c;line-height:1.4}.ordering-control .button{flex-shrink:0}.ordering-control .button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:650px){.ordering-control{display:block}.ordering-control .button{margin-top:18px;width:100%}}

.brand-logo{gap:14px}.brand-logo img{display:block;width:72px;height:72px;object-fit:contain;flex:none}.brand-locality{color:#ff6666;font-size:11px;letter-spacing:.13em;line-height:1.3;font-weight:800}@media(max-width:700px){.brand-logo{gap:8px}.brand-logo img{width:64px;height:64px}.brand-locality{display:none}}

/* French Connection red identity */
.top{height:152px;background:#220d12;border-bottom:4px solid #e51d1d}
.brand-logo{gap:24px}.brand-logo img{width:132px;height:132px;object-fit:contain}.brand-locality{font-size:13px;color:#fff;letter-spacing:.2em}
.top nav a:hover,footer a:hover{color:#ff7171}.top .call{border-color:#aa5055;background:#3b171c}.top .call:hover{background:#e51d1d;color:#fff}
.intro{background:radial-gradient(circle at 85% 10%,#8a151f 0%,transparent 43%),linear-gradient(135deg,#390e14 0%,#180f12 78%);border-bottom:6px solid #e51d1d}
.intro h1 em{color:#ff565d}.eyebrow{color:#ff6b71}.lead{color:#f1ddde}.address-inline{color:#efc7c9}
.primary,.cart-fab{background:#e51d1d;color:#fff}.primary:hover,.cart-fab:hover{background:#b9161d}.ghost{border-color:#b98286}.ghost:hover{background:#66212a}
.food-visual{box-shadow:0 26px 70px #0c0209a8}.food-visual:after{background:linear-gradient(0deg,#30080dba,transparent 75%)}.food-label strong{color:#ff777e}
body{background:#fffafa}.menu-wrap{background:#fffafa}.categories button[aria-selected=true]{background:#b9161d;border-color:#b9161d}.categories button:hover{border-color:#e51d1d}.item{border-color:#f0dada}.item .add{background:#ffe5e6;color:#a20e16}.item .add:hover{background:#ffc3c7}
.contact{background:#b9161d;color:#fff}.contact .eyebrow{color:#ffe3e4}.contact address{color:#23191b;box-shadow:0 14px 32px #580d1640}.contact address a{color:#aa101b}.contact .button.primary{background:#fff;color:#b9161d}.contact .button.primary:hover{background:#ffe5e6}
footer{background:#220d12}.admin .order.new{border-left-color:#e51d1d}.legal .notice{background:#ffe5e6}.order-state{color:#a71920}
@media(max-width:750px){.top{height:116px;padding-left:16px;padding-right:16px}.brand-logo{gap:8px}.brand-logo img{width:100px;height:100px}.brand-locality{display:none}.intro{padding-top:48px}}
