/* Recherche : même palette et même rythme que l'accueil gourmand. */
body.r64-search-page {
    --r64-search-ink:#242723;
    --r64-search-muted:#65685f;
    --r64-search-orange:#c44720;
    --r64-search-paper:#fffdf9;
    --r64-search-soft:#f5f1e9;
    --r64-search-line:#e6e3d9;
    margin:0;
    background:var(--r64-search-paper);
    color:var(--r64-search-ink);
    font-family:'DM Sans',system-ui,sans-serif;
    -webkit-font-smoothing:antialiased;
}
.r64-search-page *, .r64-search-page *::before, .r64-search-page *::after { box-sizing:border-box; }
.r64-search-page :is(a,button,input,select):focus-visible { outline:3px solid var(--r64-search-orange); outline-offset:3px; }
.r64-search-page .r64-site-header { border-bottom:1px solid var(--r64-search-line); box-shadow:none; }
.r64-search-page main.r64-search-main { width:min(1240px,calc(100% - 48px)); max-width:none; margin-inline:auto; padding:34px 0 80px; }

.r64-search-page .r64-search-hero {
    position:relative;
    overflow:hidden;
    padding:42px 46px 38px;
    border:1px solid var(--r64-search-line);
    border-radius:22px;
    background:var(--r64-search-soft);
    color:var(--r64-search-ink);
    box-shadow:none;
}
.r64-search-page .r64-search-hero::before {
    content:"";
    position:absolute;
    top:0;
    left:46px;
    width:62px;
    height:4px;
    border-radius:0 0 4px 4px;
    background:var(--r64-search-orange);
}
.r64-search-page .r64-search-eyebrow {
    margin:0;
    color:var(--r64-search-orange);
    font-size:11px;
    font-weight:800;
    letter-spacing:.13em;
}
.r64-search-page .r64-search-hero h1 {
    max-width:790px;
    margin:12px 0 0;
    color:var(--r64-search-ink);
    font-family:Manrope,'DM Sans',sans-serif;
    font-size:clamp(34px,4vw,54px);
    font-weight:800;
    letter-spacing:-.055em;
    line-height:1.12;
    text-wrap:balance;
}
.r64-search-page .r64-search-hero h1 span { color:var(--r64-search-orange); }
.r64-search-page .r64-search-intro { max-width:680px; margin:14px 0 0; color:var(--r64-search-muted); font-size:15px; line-height:1.65; }

.r64-search-page .r64-search-form {
    border:1px solid #dedbd1;
    border-radius:15px;
    background:#fff;
    color:var(--r64-search-ink);
    box-shadow:0 9px 26px #28271e0b;
}
.r64-search-page .r64-search-form--desktop {
    display:none;
    gap:8px;
    margin-top:28px;
    padding:8px;
}
.r64-search-page .r64-search-form label { min-width:0; }
.r64-search-page .r64-search-form--desktop > label {
    padding:12px 14px;
    border:1px solid transparent;
    border-radius:10px;
    background:#f8f7f2;
}
.r64-search-page .r64-search-form :is(label):focus-within { border-color:#dca68c; box-shadow:0 0 0 3px #c4472018; }
.r64-search-page .r64-search-form label span:not([aria-hidden]) { color:var(--r64-search-muted); font-size:10px; font-weight:700; letter-spacing:.03em; }
.r64-search-page .r64-search-form :is(input,select) {
    min-width:0;
    color:var(--r64-search-ink);
    font-family:'DM Sans',sans-serif;
    font-size:13px;
    font-weight:600;
}
.r64-search-page .r64-search-form input::placeholder { color:#888b80; opacity:1; }
.r64-search-page .r64-search-form select:disabled { color:#898c84; opacity:1; }
.r64-search-page .r64-search-submit {
    min-height:54px;
    border:0;
    border-radius:10px;
    background:var(--r64-search-orange);
    color:#fff;
    font-family:'DM Sans',sans-serif;
    font-size:12px;
    font-weight:800;
    letter-spacing:.04em;
    box-shadow:none;
    cursor:pointer;
}
.r64-search-page .r64-search-submit:hover { background:#a73a18; }

.r64-search-page .r64-search-results { margin-top:42px; }
.r64-search-page .r64-search-results-head { align-items:end; gap:16px; padding-bottom:18px; border-bottom:1px solid var(--r64-search-line); }
.r64-search-page .r64-search-results-head p { margin:0 0 8px; color:var(--r64-search-orange); font-size:10px; font-weight:800; letter-spacing:.13em; }
.r64-search-page .r64-search-results h2,
.r64-search-page .r64-search-results h3 {
    margin:0;
    color:var(--r64-search-ink);
    font-family:Manrope,'DM Sans',sans-serif;
    font-weight:800;
    letter-spacing:-.045em;
    line-height:1.2;
}
.r64-search-page .r64-search-results h2 { font-size:clamp(26px,2.7vw,34px); }
.r64-search-page .r64-search-results h3 { margin-top:28px; font-size:21px; }
.r64-search-page .r64-search-reset {
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 16px;
    border:1px solid var(--r64-search-line);
    border-radius:10px;
    background:#fff;
    color:var(--r64-search-ink);
    font-size:12px;
    font-weight:750;
    text-decoration:none;
}
.r64-search-page .r64-search-reset:hover { border-color:var(--r64-search-orange); color:var(--r64-search-orange); }
.r64-search-page .r64-search-empty { margin-top:26px; border-color:#d6d3c9; border-radius:15px; color:var(--r64-search-muted); }
.r64-search-page .r64-search-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:18px; }
.r64-search-page .r64-search-card {
    display:flex;
    min-width:0;
    flex-direction:column;
    border:1px solid var(--r64-search-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 5px 20px #24272309;
    transition:border-color .2s,box-shadow .2s,transform .2s;
}
.r64-search-page .r64-search-card:hover { transform:translateY(-3px); border-color:#e6b596; box-shadow:0 12px 28px #24272317; }
.r64-search-page .r64-search-card-media { display:block; width:100%; height:170px; overflow:hidden; padding:0; background:#f5f1e9; }
.r64-search-page .r64-search-card-media img { display:block; width:100%; height:100%; max-width:none; object-fit:cover; }
.r64-search-page .r64-search-card-media--logo { background:#fff; }
.r64-search-page .r64-search-card-media--logo img { padding:14px; object-fit:contain; }
.r64-search-page .r64-search-card-body { display:flex; flex:1; flex-direction:column; min-width:0; padding:17px 18px 0; }
.r64-search-page .r64-search-card-body > p:first-child { margin:0 0 6px; color:var(--r64-search-orange); font-size:10px; font-weight:800; letter-spacing:.09em; }
.r64-search-page .r64-search-card h4 { min-height:0; margin:0; color:var(--r64-search-ink); font-family:Manrope,'DM Sans',sans-serif; font-size:17px; font-weight:800; letter-spacing:-.025em; line-height:1.3; }
.r64-search-page .r64-search-card-body > p.r64-result-meta { margin:7px 0 0; color:var(--r64-search-muted); font-size:11px; font-weight:600; }
.r64-search-page .r64-search-card-body > div { margin-top:10px; }
.r64-search-page .r64-search-card-body > div > span { max-width:100%; border-radius:6px; background:#fff0e5; color:#a64220; font-size:10px; font-weight:700; }
.r64-search-page .r64-search-card-link {
    display:flex;
    width:100%;
    min-height:49px;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:auto;
    padding:12px 0;
    border-top:1px solid var(--r64-search-line);
    border-radius:0;
    background:transparent;
    color:var(--r64-search-ink);
    font-size:12px;
    font-weight:800;
    letter-spacing:0;
    text-decoration:none;
}
.r64-search-page .r64-search-card-link span { color:var(--r64-search-orange); font-size:21px; font-weight:500; }
.r64-search-page .r64-search-card-link:hover { background:transparent; color:var(--r64-search-orange); }

@media (min-width:768px) {
    .r64-search-page .r64-search-mobile-wrap { display:none; }
    .r64-search-page .r64-search-form--desktop { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .r64-search-page .r64-search-form--desktop .r64-search-submit { grid-column:1/-1; }
}
@media (min-width:1100px) {
    .r64-search-page .r64-search-form--desktop { grid-template-columns:1.2fr .9fr .9fr .8fr auto; }
    .r64-search-page .r64-search-form--desktop .r64-search-submit { grid-column:auto; padding-inline:22px; }
}
@media (max-width:1000px) {
    .r64-search-page .r64-search-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:767px) {
    .r64-search-page main.r64-search-main { width:min(100% - 32px,1240px); padding:22px 0 64px; }
    .r64-search-page .r64-search-hero { padding:30px 22px 22px; }
    .r64-search-page .r64-search-hero::before { left:22px; }
    .r64-search-page .r64-search-intro { font-size:13px; }
    .r64-search-page .r64-search-mobile-wrap { display:block; margin-top:22px; }
    .r64-search-page .r64-search-form--mobile { padding:10px; border-color:var(--r64-search-line); }
    .r64-search-page .r64-search-form--mobile > label { border:1px solid var(--r64-search-line); border-radius:10px; background:#fbfaf6; box-shadow:none; }
    .r64-search-page .r64-search-form--mobile > label > span:first-child { background:#fff0e5; color:var(--r64-search-orange); }
    .r64-search-page .r64-search-form--mobile [data-r64-filter-panel] { border:1px solid var(--r64-search-line); border-radius:10px; background:#fbfaf6; box-shadow:none; }
    .r64-search-page .r64-search-form--mobile [data-r64-filter-panel] label { border:1px solid var(--r64-search-line); border-radius:10px; background:#fff; }
    .r64-search-page .r64-search-filter-toggle { border:1px solid var(--r64-search-line); border-radius:10px; background:#fff; color:var(--r64-search-ink); box-shadow:none; }
    .r64-search-page .r64-search-filter-toggle:hover { background:#fff8f2; border-color:var(--r64-search-orange); }
    .r64-search-page .r64-search-results { margin-top:34px; }
    .r64-search-page .r64-search-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
}
@media (max-width:550px) {
    .r64-search-page .r64-search-hero h1 { font-size:34px; }
    .r64-search-page .r64-search-results-head { align-items:start; }
    .r64-search-page .r64-search-grid { grid-template-columns:1fr; gap:16px; }
    .r64-search-page .r64-search-card-media { height:180px; }
}
