:root{--cream:#fff7ec;--ink:#111;--red:#e6392e;--yellow:#ffd35c;--sage:#68bf71;--white:#fff;--line:#e8ded1;--shadow:0 6px 22px rgba(30,20,10,.07)}
body.heymiette-v2{background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}.heymiette-v2 .site-header,.heymiette-v2 .site-footer,.heymiette-v2 .entry-header{display:none!important}.heymiette-v2 .site-content,.heymiette-v2 .content-area,.heymiette-v2 .site-main,.heymiette-v2 article,.heymiette-v2 .inside-article{padding:0!important;margin:0!important;max-width:none!important;background:transparent!important}.hm-site *{box-sizing:border-box}.hm-site a{color:inherit;text-decoration:none}.hm-shell{width:min(1180px,calc(100% - 48px));margin:auto}.hm-header{position:sticky;top:0;z-index:30;background:rgba(255,247,236,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(17,17,17,.07)}.hm-header-in{height:86px;display:flex;align-items:center;gap:44px}.hm-logo{display:flex;flex-direction:column;position:relative;line-height:.88;min-width:190px}.hm-logo strong{font-family:Anton,sans-serif;font-size:34px;letter-spacing:.3px}.hm-logo small{font-size:12px;font-weight:700;margin-top:7px}.hm-logo i{position:absolute;width:22px;height:4px;background:var(--red);right:17px;top:-2px;transform:rotate(52deg);border-radius:8px}.hm-nav{display:flex;gap:32px;margin-left:auto;align-items:center}.hm-nav a,.hm-nav li a{font-family:Anton,sans-serif;font-size:15px;letter-spacing:.3px}.hm-nav ul{display:contents}.hm-head-actions{display:flex;gap:12px}.hm-head-actions button{border:0;background:none;font-size:28px;cursor:pointer}.hm-menu-toggle{display:none}.hm-search-panel{display:none;padding:15px 24px;border-top:1px solid var(--line)}.search-open .hm-search-panel{display:block}.hm-search-panel form{max-width:760px;margin:auto;display:flex}.hm-search-panel input{flex:1;padding:15px 18px;border:1px solid var(--line);border-radius:16px 0 0 16px}.hm-search-panel button{background:var(--red);color:white;border:0;padding:0 24px;border-radius:0 16px 16px 0;font-weight:800}.hm-hero{border-bottom:1px solid var(--line)}.hm-hero-grid{display:grid;grid-template-columns:58% 42%;min-height:580px}.hm-hero-copy{padding:68px 40px 52px 0;position:relative}.hm-note{color:var(--red);font-family:Fraunces,serif;font-size:16px;display:block;margin-bottom:8px}.hm-hero h1,.hm-section h2,.hm-page-hero h1{font-family:Anton,sans-serif;margin:0;line-height:.92}.hm-hero h1{font-size:92px;position:relative;display:inline-block}.hm-hero h1 i,.hm-section h2 i{display:block;height:8px;width:38%;border-radius:20px;background:var(--yellow);margin:8px 0 0 auto;transform:rotate(-2deg)}.hm-hero-copy>p{font-size:20px;font-weight:700;margin:20px 0}.hm-ingredient-box{background:white;border:1px solid var(--line);border-radius:16px;padding:12px;display:flex;gap:8px;align-items:center;box-shadow:var(--shadow);flex-wrap:wrap}.hm-ingredient-box span,.hm-chips span{background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:12px;font-size:13px}.hm-ingredient-box button{border:0;background:transparent;font-weight:700}.hm-btn{display:inline-block;background:var(--red);color:white!important;font-family:Anton,sans-serif;letter-spacing:.7px;padding:15px 38px;border-radius:14px;margin:18px 0}.hm-btn.small{padding:11px 24px}.hm-or{text-align:center;font-size:12px;font-weight:800;letter-spacing:1px;margin:0 0 12px}.hm-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.hm-quick a{background:white;border:1px solid var(--line);border-radius:14px;padding:14px 8px;text-align:center;box-shadow:var(--shadow);font-size:13px}.hm-quick a:first-letter{color:var(--red)}.hm-hero-photo{background-size:cover;background-position:center;position:relative;min-height:580px}.hm-hero-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--cream),transparent 18%)}.hm-hero-photo span{position:absolute;top:35px;left:28px;font-family:Fraunces,serif;font-weight:700;transform:rotate(-7deg)}.hm-section{padding:58px 0;border-bottom:1px solid var(--line)}.hm-section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.hm-section h2{font-size:48px;display:inline-block}.hm-section h2 i.red{background:var(--red)}.hm-section h2 i.yellow{background:var(--yellow)}.hm-section h2 i.sage{background:var(--sage)}.hm-section-head p{margin:8px 0 0}.hm-section-head>a{font-size:13px;font-weight:700}.hm-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.hm-card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.hm-card-img{aspect-ratio:4/3;position:relative;overflow:hidden}.hm-card-img img{width:100%;height:100%;object-fit:cover}.hm-photo-placeholder{width:100%;height:100%;display:grid;place-items:center;background:#f2e9dc;font-family:Anton,sans-serif;font-size:24px}.hm-heart{position:absolute;right:10px;top:10px;width:30px;height:30px;border-radius:50%;background:white;display:grid;place-items:center;font-size:20px}.hm-card-body{padding:14px}.hm-card h3{font-family:Fraunces,serif;font-size:18px;line-height:1.12;margin:0 0 14px}.hm-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:11px}.hm-three{background:#fffaf2}.hm-three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.hm-three-grid article{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.hm-three-grid b,.hm-three-grid span{display:block;padding:0 14px}.hm-three-grid b{font-size:14px;margin-top:12px}.hm-three-grid span{padding-bottom:14px;margin-top:7px}.hm-still{height:150px;background-size:cover;background-position:center}.hm-still.onions{background:linear-gradient(135deg,#f0d5a4,#fff0d4)}.hm-still.tomatoes{background:linear-gradient(135deg,#e6392e,#ffd35c)}.hm-still.bananas{background:linear-gradient(135deg,#ffd35c,#8d5a36)}.hm-fridge{display:grid;grid-template-columns:1.4fr .8fr;gap:40px;align-items:center}.hm-fridge h2{font-family:Anton,sans-serif;font-size:48px;margin:0}.hm-chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.hm-fridge aside{background:var(--yellow);border-radius:18px;padding:28px;display:grid;grid-template-columns:auto 1fr;gap:4px 14px}.hm-fridge aside strong{font-family:Anton,sans-serif;font-size:56px;line-height:1;grid-row:span 2}.hm-fridge aside p,.hm-fridge aside small{grid-column:1/-1}.hm-fridge aside small{font-size:10px;opacity:.7}.hm-budget{background:#fffaf2}.hm-news{background:var(--yellow);padding:38px max(24px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.hm-news h2{font-family:Anton,sans-serif;font-size:34px;margin:0}.hm-news form{display:flex}.hm-news input{flex:1;border:0;padding:16px;border-radius:14px 0 0 14px}.hm-news button{border:0;background:var(--red);color:white;font-weight:800;padding:0 24px;border-radius:0 14px 14px 0}.hm-footer{
    background:#111;
    color:#fff;
}

.hm-foot-grid{
    padding:54px 0;
    display:grid;
    grid-template-columns:2fr repeat(3,1fr);
    gap:50px;
}

.hm-footer .hm-logo{
    color:#fff;
}

.hm-foot-grid>div{
    display:flex;
    flex-direction:column;
    gap:9px;
}

.hm-foot-grid b{
    color:var(--yellow);
    font-size:12px;
}

.hm-foot-grid a{
    color:#fff;
    font-size:13px;
    text-decoration:none;
}

.hm-foot-grid a:visited{
    color:#fff;
}

.hm-foot-grid a:hover{
    color:var(--yellow);
}

.hm-foot-bottom{
    border-top:1px solid #333;
    padding:18px max(24px,calc((100vw - 1180px)/2));
    font-size:11px;
    display:flex;
    justify-content:space-between;
}hm-page-hero{padding:80px 0 54px;border-bottom:1px solid var(--line)}.hm-page-hero h1{font-size:70px}.hm-page-hero p{font-size:19px;max-width:650px}.hm-page-body{padding:48px 0 80px}.hm-filterbar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:30px}.hm-filterbar button{background:white;border:1px solid var(--line);border-radius:999px;padding:10px 15px;font-weight:700}.hm-tool{max-width:850px}.hm-tool h2{font-family:Anton,sans-serif;font-size:44px}.hm-ingredient-box.large{padding:18px}.hm-results-demo{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}.hm-results-demo article{border-radius:16px;padding:22px;background:white;border:1px solid var(--line)}.hm-results-demo strong{font-family:Anton,sans-serif;font-size:44px;display:block;margin-top:10px}.hm-disclaimer{font-size:12px;opacity:.65}.hm-link-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.hm-link-grid a{background:white;border:1px solid var(--line);border-radius:18px;padding:28px;min-height:150px;display:flex;flex-direction:column;justify-content:space-between}.hm-link-grid b{font-family:Anton,sans-serif;font-size:28px}.hm-prose{max-width:760px;font-size:17px;line-height:1.7}
@media(max-width:900px){.hm-shell{width:min(100% - 32px,720px)}.hm-header-in{height:72px}.hm-logo{min-width:150px}.hm-logo strong{font-size:27px}.hm-nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--cream);padding:22px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.menu-open .hm-nav{display:flex}.hm-menu-toggle{display:block}.hm-hero-grid{grid-template-columns:1fr}.hm-hero-copy{padding:46px 0 30px}.hm-hero h1{font-size:70px}.hm-hero-photo{min-height:350px}.hm-cards{grid-template-columns:repeat(2,1fr)}.hm-three-grid{grid-template-columns:1fr}.hm-fridge{grid-template-columns:1fr}.hm-foot-grid{grid-template-columns:1fr 1fr}.hm-news{grid-template-columns:1fr}.hm-page-hero h1{font-size:56px}}
@media(max-width:560px){.hm-shell{width:calc(100% - 28px)}.hm-logo small{font-size:9px}.hm-header-in{gap:10px}.hm-search-toggle{display:none}.hm-hero h1{font-size:58px}.hm-hero-copy>p{font-size:16px}.hm-ingredient-box{align-items:stretch}.hm-ingredient-box button{width:100%;text-align:left;padding:7px}.hm-btn{width:100%;text-align:center}.hm-quick{grid-template-columns:1fr 1fr}.hm-hero-photo{min-height:290px}.hm-section{padding:42px 0}.hm-section h2,.hm-fridge h2{font-size:38px}.hm-section-head{align-items:flex-start}.hm-section-head>a{display:none}.hm-cards{grid-template-columns:1fr}.hm-three-grid{grid-template-columns:1fr}.hm-results-demo{grid-template-columns:1fr}.hm-link-grid{grid-template-columns:1fr}.hm-foot-grid{grid-template-columns:1fr}.hm-foot-bottom{display:block}.hm-page-hero{padding:52px 0 36px}.hm-page-hero h1{font-size:48px}.hm-news form{display:block}.hm-news input,.hm-news button{width:100%;border-radius:12px}.hm-news button{padding:14px;margin-top:8px}}

/* V3: standalone full-width template, compact proportions and robust font fallbacks. */
html{margin:0!important}body.heymiette-v3{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}.hm-site{width:100%;max-width:none;overflow:hidden;background:var(--cream);font-family:'DM Sans',Arial,sans-serif}.hm-shell{width:min(1240px,calc(100% - 48px))}.hm-header{z-index:999}.admin-bar .hm-header{top:32px}.hm-header-in{height:72px;gap:34px}.hm-logo{min-width:178px}.hm-logo strong{font-family:'Anton','Arial Black',Impact,sans-serif;font-size:31px}.hm-logo small{font-size:11px;margin-top:6px}.hm-nav{gap:29px}.hm-nav a,.hm-nav li a{font-family:'Anton','Arial Narrow',Impact,sans-serif;font-size:14px}.hm-hero-grid{grid-template-columns:55% 45%;min-height:510px}.hm-hero-copy{padding:49px 40px 37px 0}.hm-note{font-family:'Fraunces',Georgia,serif;font-size:15px}.hm-hero h1,.hm-section h2,.hm-page-hero h1,.hm-news h2,.hm-fridge h2{font-family:'Anton','Arial Black',Impact,sans-serif}.hm-hero h1{font-size:82px}.hm-hero-photo{min-height:510px;background-position:52% center}.hm-section{padding:44px 0}.hm-card-img{background:#f3eadf}.hm-photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#f4ecdf,#e9ddcc);font-family:'Anton','Arial Black',Impact,sans-serif;font-size:21px;line-height:.88;color:#b9aa98;letter-spacing:1px}.hm-foot-grid{padding:36px 0;gap:42px}.hm-foot-bottom{padding:13px max(24px,calc((100vw - 1240px)/2))}.hm-news{padding-top:30px;padding-bottom:30px}.hm-empty{grid-column:1/-1;text-align:center;padding:40px 0}
@media(max-width:900px){.admin-bar .hm-header{top:46px}.hm-header-in{height:68px}.hm-nav{top:68px}.hm-hero-grid{grid-template-columns:1fr}.hm-hero-copy{padding:40px 0 28px}.hm-hero-photo{min-height:330px}.hm-section{padding:38px 0}}
@media(max-width:782px){.admin-bar .hm-header{top:46px}}
@media(max-width:560px){.admin-bar .hm-header{top:0}.hm-header{position:relative}.hm-header-in{height:64px}.hm-logo strong{font-size:25px}.hm-logo{min-width:145px}.hm-hero h1{font-size:56px}.hm-hero-copy{padding:34px 0 22px}.hm-hero-photo{min-height:260px}.hm-section{padding:34px 0}.hm-card-img{aspect-ratio:16/10}.hm-news{padding-top:26px;padding-bottom:26px}.hm-foot-grid{padding:30px 0}}

/* V3.1: only applies to editorial images selected in the homepage editor. */
.hm-still .hm-editorial-image{display:block;width:100%;height:100%;object-fit:cover}
/* =========================================================
   T'AS QUOI ?
   ========================================================= */

.hm-tas-quoi{
    max-width:1000px;
    margin:0 auto;
}

.hm-tas-quoi > .hm-tas-form{
    max-width:760px;
}

.hm-tas-quoi h2{
    margin:0 0 8px;
    font-family:'Anton','Arial Black',Impact,sans-serif;
    font-size:44px;
    line-height:1;
}

.hm-tas-intro{
    margin:0 0 24px;
    font-size:16px;
    color:#5f5a52;
}


/* Recherche */

.hm-tas-input-row{
    display:flex;
    align-items:flex-start;
    gap:10px;
}

.hm-tas-search{
    position:relative;
    flex:1;
}

#hm-tas-input{
    display:block;
    width:100%;
    height:58px;
    padding:0 20px;
    border:1.5px solid var(--ink);
    border-radius:14px;
    outline:none;
    background:var(--white);
    color:var(--ink);
    font-family:'DM Sans',Arial,sans-serif;
    font-size:16px;
    transition:
        border-color .15s ease,
        box-shadow .15s ease;
}

#hm-tas-input::placeholder{
    color:#999187;
}

#hm-tas-input:focus{
    border-color:var(--red);
    box-shadow:0 0 0 3px rgba(230,57,46,.10);
}

.hm-tas-input-row > .hm-btn{
    flex:none;
    height:58px;
    margin:0;
    padding:0 25px;
    border:0;
    cursor:pointer;
}


/* Suggestions */

.hm-tas-suggestions{
    position:absolute;
    z-index:100;
    top:calc(100% + 7px);
    left:0;
    right:0;
    overflow:hidden;
    padding:6px;
    background:var(--white);
    border:1px solid var(--line);
    border-radius:14px;
    box-shadow:0 14px 35px rgba(30,20,10,.14);
}

.hm-tas-suggestions[hidden]{
    display:none;
}

.hm-tas-suggestion{
    display:block;
    width:100%;
    padding:12px 14px;
    border:0;
    border-radius:9px;
    background:transparent;
    color:var(--ink);
    font-family:'DM Sans',Arial,sans-serif;
    font-size:14px;
    font-weight:600;
    text-align:left;
    cursor:pointer;
}

.hm-tas-suggestion:hover,
.hm-tas-suggestion.is-active{
    background:var(--yellow);
}


/* Ingrédients sélectionnés */

.hm-tas-quoi .hm-ingredient-box.large{
    min-height:0;
    margin-top:13px;
    padding:0;
    gap:8px;
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}

.hm-tas-quoi .hm-tas-chip{
    width:auto;
    padding:9px 13px;
    border:1px solid rgba(230,57,46,.22);
    border-radius:999px;
    background:rgba(230,57,46,.08);
    color:var(--ink);
    font-family:'DM Sans',Arial,sans-serif;
    font-size:13px;
    font-weight:700;
    cursor:pointer;
}

.hm-tas-quoi .hm-tas-chip:hover{
    background:var(--red);
    color:#fff;
}


/* Bouton principal */

.hm-tas-form > .hm-btn{
    margin-top:22px;
    border:0;
    cursor:pointer;
}


/* Résultats */

.hm-tas-results{
    margin-top:64px;
}

.hm-tas-group{
    margin-top:52px;
}

.hm-tas-group:first-child{
    margin-top:0;
}

.hm-tas-group-head{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:20px;
    padding-bottom:12px;
    border-bottom:2px solid var(--ink);
}

.hm-tas-group-head h2{
    margin:0;
    font-size:34px;
}

.hm-tas-group-head > span{
    display:grid;
    place-items:center;
    min-width:34px;
    height:34px;
    padding:0 9px;
    border-radius:999px;
    background:var(--ink);
    color:#fff;
    font-weight:800;
    font-size:13px;
}

.hm-result-all .hm-tas-group-head{
    border-color:var(--sage);
}

.hm-result-all .hm-tas-group-head > span{
    background:var(--sage);
    color:var(--ink);
}

.hm-result-one .hm-tas-group-head{
    border-color:var(--yellow);
}

.hm-result-one .hm-tas-group-head > span{
    background:var(--yellow);
    color:var(--ink);
}

.hm-result-two .hm-tas-group-head{
    border-color:var(--red);
}

.hm-result-two .hm-tas-group-head > span{
    background:var(--red);
}


/* Cartes dans T'AS QUOI */

.hm-tas-results .hm-cards{
    grid-template-columns:repeat(3,1fr);
}

.hm-tas-results .hm-card{
    transition:
        transform .18s ease,
        box-shadow .18s ease;
}

.hm-tas-results .hm-card:hover{
    transform:translateY(-3px);
    box-shadow:0 10px 28px rgba(30,20,10,.11);
}

.hm-tas-results .hm-card-body{
    padding:16px;
}

.hm-tas-results .hm-card h3{
    margin-bottom:10px;
}

.hm-tas-missing,
.hm-tas-ready{
    margin:0;
    font-size:12px;
    line-height:1.45;
}

.hm-tas-missing{
    color:#716a61;
}

.hm-tas-missing strong{
    color:var(--red);
}

.hm-tas-ready{
    color:#3f7946;
    font-weight:800;
}


/* Tablette */

@media(max-width:900px){

    .hm-tas-results .hm-cards{
        grid-template-columns:repeat(2,1fr);
    }

}


/* Mobile */

@media(max-width:560px){

    .hm-tas-quoi h2{
        font-size:36px;
    }

    .hm-tas-input-row{
        display:block;
    }

    #hm-tas-input{
        height:54px;
    }

    .hm-tas-input-row > .hm-btn{
        width:100%;
        height:50px;
        margin-top:9px;
        text-align:center;
    }

    .hm-tas-form > .hm-btn{
        width:100%;
    }

    .hm-tas-results{
        margin-top:48px;
    }

    .hm-tas-group{
        margin-top:42px;
    }

    .hm-tas-group-head{
        justify-content:space-between;
    }

    .hm-tas-group-head h2{
        font-size:28px;
    }

    .hm-tas-results .hm-cards{
        grid-template-columns:1fr;
    }

}

/* T'AS QUOI ? — ajustements de composition */

.hm-page-hero{
    padding:54px 0 36px;
}

.hm-page-hero h1{
    font-size:64px;
    line-height:.95;
}

.hm-page-hero p{
    margin:12px 0 0;
}

.hm-page-body{
    padding-top:46px;
}

.hm-tas-quoi{
    margin:0;
    max-width:1000px;
}

.hm-tas-quoi > .hm-tas-form{
    max-width:950px;
}

.hm-tas-quoi h2{
    font-size:42px;
}

.hm-tas-input-row{
    max-width:950px;
}

.hm-tas-search{
    max-width:720px;
}

.hm-tas-input-row > .hm-btn{
    min-width:180px;
}

.hm-tas-form > .hm-btn{
    padding-left:34px;
    padding-right:34px;
}

@media(max-width:560px){

    .hm-page-hero{
        padding:38px 0 28px;
    }

    .hm-page-hero h1{
        font-size:48px;
    }

    .hm-page-body{
        padding-top:34px;
    }

    .hm-tas-quoi h2{
        font-size:34px;
    }

}

/* T'AS QUOI ? — détail du matching */

.hm-tas-match{
    margin-top:14px;
    padding-top:13px;
    border-top:1px solid var(--line);
}

.hm-tas-found,
.hm-tas-missing{
    margin:0;
    font-size:12px;
    line-height:1.5;
}

.hm-tas-found{
    color:#625d55;
}

.hm-tas-found span,
.hm-tas-missing span{
    display:block;
    margin-bottom:2px;
    font-size:10px;
    font-weight:800;
    letter-spacing:.7px;
}

.hm-tas-found span{
    color:#4f8555;
}

.hm-tas-missing{
    margin-top:10px;
}

.hm-tas-missing span,
.hm-tas-missing strong{
    color:var(--red);
}

.hm-tas-ready{
    margin:0;
    color:#3f7946;
    font-size:11px;
    font-weight:800;
    letter-spacing:.5px;
}

.hm-tas-card-link{
    display:block;
    margin-top:16px;
    padding-top:12px;
    border-top:1px solid var(--line);
    font-family:'Anton','Arial Black',Impact,sans-serif;
    font-size:13px;
    letter-spacing:.4px;
}

.hm-tas-results .hm-card:hover .hm-tas-card-link{
    color:var(--red);
}

/* =========================================================
   RECETTES — ARCHIVE
   ========================================================= */

.hm-recipes-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:34px;
}

.hm-recipes .hm-filterbar{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0;
}

.hm-recipes .hm-filterbar button{
  width:auto;
  min-width:0;
  height:auto;
  padding:11px 18px;
  border:1px solid var(--ink);
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:12px;
  font-weight:800;
  line-height:1;
  letter-spacing:.3px;
  cursor:pointer;
}

.hm-recipes .hm-filterbar button:hover,
.hm-recipes .hm-filterbar button.is-active{
  background:var(--ink);
  color:var(--white);
}

.hm-filter-toggle{
  flex:none;
  padding:12px 20px;
  border:1px solid var(--ink);
  background:var(--yellow);
  color:var(--ink);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.hm-filter-toggle:hover{
  background:var(--ink);
  color:var(--white);
}

.hm-recipe-filters{
  margin:0 0 40px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--white);
}

.hm-recipe-filters[hidden]{
  display:none;
}

.hm-filter-group{
  padding:18px 0;
  border-bottom:1px solid var(--line);
}

.hm-filter-group:first-child{
  padding-top:0;
}

.hm-filter-group strong{
  display:block;
  margin-bottom:11px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:17px;
  font-weight:400;
}

.hm-filter-group label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0 18px 7px 0;
  font-size:13px;
  cursor:pointer;
}

.hm-filter-reset{
  margin-top:20px;
  padding:0;
  border:0;
  background:none;
  color:var(--red);
  font-size:11px;
  font-weight:800;
  text-decoration:underline;
  cursor:pointer;
}

@media(max-width:760px){
  .hm-recipes-toolbar{
    display:block;
  }

  .hm-filter-toggle{
    margin-top:16px;
  }

  .hm-recipe-filters{
    padding:20px;
  }
}

/* RECETTES — état des résultats */

.hm-recipes-status{
  margin:0 0 16px;
  color:#756e65;
  font-size:11px;
  font-weight:800;
  letter-spacing:.7px;
}

.hm-recipe-card[hidden]{
  display:none !important;
}

.hm-recipes-empty{
  margin:28px 0;
  padding:28px;
  border:1px dashed var(--line);
  border-radius:14px;
  text-align:center;
}

/* =========================================================
   RECETTE INDIVIDUELLE — HERO
   ========================================================= */


.hm-single-recipe{
  background:var(--cream);
}

.hm-recipe-hero{
  padding:30px 0 70px;
}

.hm-recipe-back{
  display:inline-block;
  margin-bottom:42px;
  color:var(--ink);
  font-size:11px;
  font-weight:800;
  letter-spacing:.5px;
  text-decoration:none;
}

.hm-recipe-back:hover{
  color:var(--red);
}

/* TITRE */

.hm-recipe-heading{
  width:100%;
  max-width:100%;
  margin-bottom:38px;
}

.hm-recipe-kicker{
  display:inline-block;
  margin-bottom:16px;
  padding:7px 11px;
  background:var(--red);
  color:var(--white);
  font-size:10px;
  font-weight:800;
  line-height:1;
  letter-spacing:1px;
}

.hm-recipe-heading h1{
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:42px;
  font-weight:400;
  line-height:.96;
  letter-spacing:-.5px;
  text-transform:uppercase;

  white-space:normal !important;
  overflow-wrap:anywhere;
  word-break:normal;
}

.hm-recipe-intro{
  max-width:720px;
  margin:22px 0 0;
  font-family:'Fraunces',Georgia,serif;
  font-size:20px;
  line-height:1.45;
}

/* INFOS + PHOTO */

.hm-recipe-hero-grid{
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  gap:32px;
  align-items:stretch;
}

.hm-recipe-facts{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin:0;
  border-top:1px solid var(--ink);
  border-left:1px solid var(--ink);
  align-self:stretch;
}

.hm-recipe-facts > div{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:130px;
  padding:22px;
  border-right:1px solid var(--ink);
  border-bottom:1px solid var(--ink);
}

.hm-recipe-facts span{
  display:block;
  margin-bottom:10px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-recipe-facts strong{
  display:block;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:28px;
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}

.hm-recipe-hero-image{
  position:relative;
  min-height:520px;
  overflow:hidden;
  background:var(--yellow);
}

.hm-recipe-hero-image img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* TABLETTE */

@media(max-width:900px){

  .hm-recipe-heading h1{
    font-size:clamp(54px,9vw,78px);
  }

  .hm-recipe-hero-grid{
    grid-template-columns:1fr;
  }

  .hm-recipe-facts > div{
    min-height:100px;
  }

  .hm-recipe-hero-image{
    min-height:480px;
  }
}

/* MOBILE */

@media(max-width:600px){

  .hm-recipe-hero{
    padding:26px 0 48px;
  }

  .hm-recipe-back{
    margin-bottom:30px;
  }

 .hm-recipe-heading{
  width:100%;
  max-width:100%;
  margin-bottom:28px;
}


  .hm-recipe-intro{
    font-size:18px;
  }

  .hm-recipe-facts > div{
    min-height:82px;
    padding:14px;
  }

  .hm-recipe-facts strong{
    font-size:21px;
  }

  .hm-recipe-hero-image{
    min-height:350px;
  }
}


/* =========================================================
   RECETTE — INGRÉDIENTS + PRÉPARATION
   ========================================================= */

.hm-recipe-main{
  padding:80px 0 100px;
  background:var(--white);
}

.hm-recipe-main-grid{
  display:grid;
  grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);
  gap:90px;
  align-items:start;
}

.hm-recipe-section-head{
  display:flex;
  align-items:flex-end;
  gap:14px;
  padding-bottom:16px;
  border-bottom:2px solid var(--ink);
}

.hm-recipe-section-head span{
  color:var(--red);
  font-family:'Fraunces',Georgia,serif;
  font-size:14px;
  font-weight:700;
}

.hm-recipe-section-head h2{
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:36px;
  font-weight:400;
  line-height:.9;
}

.hm-recipe-ingredients ul{
  margin:20px 0 0;
  padding:0;
  list-style:none;
}

.hm-recipe-ingredients li{
  display:grid;
  grid-template-columns:95px 1fr;
  gap:15px;
  padding:15px 0;
  border-bottom:1px solid var(--line);
}

.hm-ingredient-quantity{
  font-weight:800;
  font-size:13px;
}

.hm-ingredient-name{
  font-size:15px;
}

.hm-ingredient-name small{
  display:block;
  margin-top:3px;
  color:#777067;
  font-size:11px;
}

.hm-recipe-steps{
  margin-top:5px;
}

.hm-recipe-step{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:22px;
  padding:26px 0;
  border-bottom:1px solid var(--line);
}

.hm-recipe-step > strong{
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:38px;
  font-weight:400;
  line-height:.9;
  color:var(--red);
}

.hm-recipe-step > div{
  max-width:570px;
  font-family:'Fraunces',Georgia,serif;
  font-size:18px;
  line-height:1.5;
}

@media(max-width:800px){

  .hm-recipe-main{
    padding:55px 0 70px;
  }

  .hm-recipe-main-grid{
    grid-template-columns:1fr;
    gap:60px;
  }
}

@media(max-width:560px){

  .hm-recipe-main{
    padding:42px 0 55px;
  }

  .hm-recipe-section-head h2{
    font-size:31px;
  }

  .hm-recipe-ingredients li{
    grid-template-columns:80px 1fr;
  }

  .hm-recipe-step{
    grid-template-columns:44px 1fr;
    gap:14px;
    padding:21px 0;
  }

  .hm-recipe-step > strong{
    font-size:30px;
  }

  .hm-recipe-step > div{
    font-size:16px;
  }
}

/* =========================================================
   RECETTE — BON À SAVOIR
   ========================================================= */

.hm-recipe-know{
  padding:68px 0 78px;
  background:var(--yellow);
}

.hm-recipe-know-head{
  margin-bottom:32px;
}

.hm-recipe-know-head > span{
  display:block;
  margin-bottom:8px;
  font-family:'Fraunces',Georgia,serif;
  font-size:13px;
  font-weight:700;
}

.hm-recipe-know-head h2{
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:46px;
  font-weight:400;
  line-height:.95;
}

.hm-recipe-know-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid var(--ink);
  border-left:1px solid var(--ink);
}

.hm-recipe-know-item{
  min-height:165px;
  padding:24px;
  border-right:1px solid var(--ink);
  border-bottom:1px solid var(--ink);
}

.hm-recipe-know-item > span{
  display:block;
  margin-bottom:18px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-recipe-know-item > strong{
  display:block;
  font-family:'Fraunces',Georgia,serif;
  font-size:17px;
  font-weight:600;
  line-height:1.4;
}

.hm-recipe-know-item:nth-child(2) > strong,
.hm-recipe-know-item:nth-child(4) > strong{
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:31px;
  font-weight:400;
  line-height:1;
}

@media(max-width:800px){

  .hm-recipe-know-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){

  .hm-recipe-know{
    padding:48px 0 55px;
  }

  .hm-recipe-know-head h2{
    font-size:38px;
  }

  .hm-recipe-know-grid{
    grid-template-columns:1fr;
  }

  .hm-recipe-know-item{
    min-height:0;
  }
}

/* =========================================================
   RECETTE — SUBSTITUTIONS
   ========================================================= */

.hm-recipe-substitutions{
  padding:78px 0 90px;
  background:var(--cream);
}

.hm-substitutions-head{
  margin-bottom:36px;
}

.hm-substitutions-head > span{
  display:block;
  margin-bottom:8px;
  color:var(--red);
  font-size:11px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-substitutions-head h2{
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:46px;
  font-weight:400;
  line-height:.95;
}

.hm-substitution-item{
  display:grid;
  grid-template-columns:minmax(180px,.7fr) 50px minmax(0,1.3fr);
  align-items:center;
  gap:20px;
  padding:24px 0;
  border-top:1px solid var(--ink);
}

.hm-substitution-item:last-child{
  border-bottom:1px solid var(--ink);
}

.hm-substitution-original span{
  display:block;
  margin-bottom:3px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-substitution-original strong{
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:25px;
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}

.hm-substitution-arrow{
  font-family:'Fraunces',Georgia,serif;
  font-size:28px;
  text-align:center;
}

.hm-substitution-alternative{
  font-family:'Fraunces',Georgia,serif;
  font-size:19px;
  font-weight:600;
  line-height:1.35;
}

@media(max-width:560px){

  .hm-recipe-substitutions{
    padding:50px 0 60px;
  }

  .hm-substitutions-head h2{
    font-size:38px;
  }

  .hm-substitution-item{
    grid-template-columns:1fr;
    gap:8px;
    padding:20px 0;
  }

  .hm-substitution-arrow{
    text-align:left;
  }

  .hm-substitution-alternative{
    font-size:17px;
  }
}

/* =========================================================
   RECETTE — À FAIRE ENSUITE
   ========================================================= */

.hm-recipe-related{
  padding:82px 0 100px;
  background:var(--white);
}

.hm-related-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:30px;
  margin-bottom:35px;
}

.hm-related-head > div > span{
  display:block;
  margin-bottom:7px;
  color:var(--red);
  font-size:11px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-related-head h2{
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:46px;
  font-weight:400;
  line-height:.95;
}

.hm-related-head > a{
  color:var(--ink);
  font-size:11px;
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid var(--ink);
  padding-bottom:3px;
}

.hm-related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}

.hm-related-image{
  display:block;
  aspect-ratio:4 / 3;
  overflow:hidden;
  background:var(--cream);
}

.hm-related-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}

.hm-related-card:hover .hm-related-image img{
  transform:scale(1.025);
}

.hm-related-meta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:13px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.5px;
}

.hm-related-meta span + span:before{
  content:"•";
  margin-right:12px;
  color:var(--red);
}

.hm-related-card h3{
  margin:7px 0 0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:25px;
  font-weight:400;
  line-height:1.02;
  text-transform:uppercase;
}

.hm-related-card h3 a{
  color:var(--ink);
  text-decoration:none;
}

@media(max-width:800px){

  .hm-related-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .hm-related-card:last-child{
    display:none;
  }
}

@media(max-width:560px){

  .hm-recipe-related{
    padding:55px 0 65px;
  }

  .hm-related-head{
    align-items:flex-start;
    flex-direction:column;
    gap:16px;
  }

  .hm-related-head h2{
    font-size:38px;
  }

  .hm-related-grid{
    grid-template-columns:1fr;
    gap:35px;
  }

  .hm-related-card:last-child{
    display:block;
  }
}

/* =========================================================
   SOS CUISINE — PROBLÈME DU JOUR
   ========================================================= */

#hm-sos-solutions{
  scroll-margin-top:40px;
}

.hm-sos-featured{
  padding:95px 0 30px;
}

.hm-sos-featured-head{
  margin-bottom:30px;
}

.hm-sos-featured-head > span{
  display:block;
  margin-bottom:8px;
  color:var(--red);
  font-size:11px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-sos-featured-head h2{
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:46px;
  font-weight:400;
  line-height:.95;
}

.hm-sos-featured-card{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  min-height:390px;
  overflow:hidden;
  background:var(--red);
  color:var(--white);
  text-decoration:none;
}

.hm-sos-featured-image{
  min-height:390px;
  overflow:hidden;
}

.hm-sos-featured-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.hm-sos-featured-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:50px;
}

.hm-sos-featured-copy > span{
  margin-bottom:15px;
  font-size:10px;
  font-weight:800;
  letter-spacing:1px;
}

.hm-sos-featured-copy h3{
  margin:0 0 18px;
  color:inherit;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:42px;
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}

.hm-sos-featured-copy p{
  max-width:460px;
  margin:0 0 28px;
  color:inherit;
  font-family:'Fraunces',Georgia,serif;
  font-size:17px;
  line-height:1.45;
}

.hm-sos-featured-copy strong{
  font-size:11px;
  letter-spacing:.5px;
}

@media(max-width:700px){

  .hm-sos-featured{
    padding-top:65px;
  }

  .hm-sos-featured-card{
    grid-template-columns:1fr;
  }

  .hm-sos-featured-image{
    min-height:260px;
    aspect-ratio:4 / 3;
  }

  .hm-sos-featured-copy{
    padding:32px 25px 38px;
  }

  .hm-sos-featured-copy h3{
    font-size:34px;
  }

}

/* =========================================================
   SOS CUISINE — ARTICLE
   ========================================================= */

.hm-sos-single-hero{
  padding:58px 0 70px;
  background:var(--red);
  color:var(--white);
}

.hm-sos-back{
  display:inline-block;
  margin-bottom:55px;
  color:inherit;
  font-size:10px;
  font-weight:800;
  letter-spacing:.7px;
  text-decoration:none;
}

.hm-sos-single-heading{
  max-width:900px;
}

.hm-sos-single-heading > span{
  display:block;
  margin-bottom:13px;
  font-size:11px;
  font-weight:800;
  letter-spacing:1px;
}

.hm-sos-single-heading h1{
  max-width:900px;
  margin:0;
  color:inherit;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:clamp(48px,7vw,88px);
  font-weight:400;
  line-height:.92;
  text-transform:uppercase;
}

.hm-sos-single-heading p{
  max-width:650px;
  margin:28px 0 0;
  color:inherit;
  font-family:'Fraunces',Georgia,serif;
  font-size:20px;
  line-height:1.45;
}

.hm-sos-single-visual{
  padding:0;
  background:var(--cream);
}

.hm-sos-single-visual .hm-shell{
  padding-top:55px;
}

.hm-sos-single-visual img{
  display:block;
  width:100%;
  max-height:580px;
  object-fit:cover;
}

.hm-sos-single-body{
  padding:75px 0 105px;
  background:var(--cream);
}

.hm-sos-article{
  max-width:760px;
  margin:0 auto;
}

.hm-sos-article p{
  margin:0 0 25px;
  font-family:'DM Sans',Arial,sans-serif;
  font-size:17px;
  line-height:1.7;
}

.hm-sos-article h2{
  margin:60px 0 17px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:36px;
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}

.hm-sos-article h2:first-child{
  margin-top:0;
}

.hm-sos-article h3{
  margin:45px 0 14px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:27px;
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}

.hm-sos-article ul,
.hm-sos-article ol{
  margin:0 0 30px;
  padding-left:22px;
}

.hm-sos-article li{
  margin-bottom:10px;
  font-size:17px;
  line-height:1.6;
}

@media(max-width:560px){

  .hm-sos-single-hero{
    padding:40px 0 50px;
  }

  .hm-sos-back{
    margin-bottom:38px;
  }

  .hm-sos-single-heading h1{
    font-size:44px;
  }

  .hm-sos-single-heading p{
    font-size:17px;
  }

  .hm-sos-single-visual .hm-shell{
    padding-top:30px;
  }

  .hm-sos-single-body{
    padding:50px 0 70px;
  }

  .hm-sos-article h2{
    margin-top:45px;
    font-size:31px;
  }

}

/* =========================================================
   SOS CUISINE — AUTRES SOS
   ========================================================= */

.hm-sos-more{
  padding:85px 0 25px;
}

.hm-sos-more-head{
  margin-bottom:32px;
}

.hm-sos-more-head > span{
  display:block;
  margin-bottom:8px;
  color:var(--red);
  font-size:11px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-sos-more-head h2{
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:46px;
  font-weight:400;
  line-height:.95;
}

.hm-sos-more-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}

.hm-sos-card{
  overflow:hidden;
  border:1px solid var(--line);
  background:var(--white);
}

.hm-sos-card-image{
  display:block;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:var(--cream);
}

.hm-sos-card-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}

.hm-sos-card:hover .hm-sos-card-image img{
  transform:scale(1.025);
}

.hm-sos-card-copy{
  padding:25px;
}

.hm-sos-card-copy > span{
  display:block;
  margin-bottom:10px;
  color:var(--red);
  font-size:9px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-sos-card-copy h3{
  margin:0 0 13px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:28px;
  font-weight:400;
  line-height:1.02;
  text-transform:uppercase;
}

.hm-sos-card-copy h3 a{
  color:var(--ink);
  text-decoration:none;
}

.hm-sos-card-copy p{
  margin:0 0 22px;
  font-family:'Fraunces',Georgia,serif;
  font-size:15px;
  line-height:1.45;
}

.hm-sos-card-link{
  color:var(--ink);
  font-size:10px;
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid var(--ink);
}

@media(max-width:700px){

  .hm-sos-more{
    padding-top:60px;
  }

  .hm-sos-more-head h2{
    font-size:38px;
  }

  .hm-sos-more-grid{
    grid-template-columns:1fr;
  }

}

/* =========================================================
   REMPLACER — OUTIL
   ========================================================= */

.hm-replace-tool{
  padding:35px 0 95px;
}

.hm-replace-intro{
  max-width:720px;
  margin-bottom:38px;
}

.hm-replace-intro > span{
  display:block;
  margin-bottom:8px;
  color:var(--red);
  font-size:11px;
  font-weight:800;
  letter-spacing:.9px;
}

.hm-replace-intro h2{
  margin:0 0 14px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:clamp(38px,5vw,58px);
  font-weight:400;
  line-height:.95;
}

.hm-replace-intro p{
  max-width:560px;
  margin:0;
  font-family:'Fraunces',Georgia,serif;
  font-size:17px;
  line-height:1.45;
}


/* RECHERCHE */

.hm-replace-search{
  position:relative;
  max-width:760px;
  margin-bottom:55px;
}

#hm-replace-input{
  display:block;
  width:100%;
  padding:23px 55px 23px 24px;
  border:2px solid var(--ink);
  border-radius:0;
  outline:none;
  background:var(--white);
  color:var(--ink);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:19px;
  font-weight:600;
  appearance:none;
}

#hm-replace-input::placeholder{
  color:#8f887e;
  font-weight:400;
}

#hm-replace-input:focus{
  border-color:var(--red);
}

.hm-replace-search::after{
  content:'↘';
  position:absolute;
  top:20px;
  right:22px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:25px;
  pointer-events:none;
}


/* AUTOCOMPLÉTION */

.hm-replace-suggestions{
  position:absolute;
  z-index:20;
  top:100%;
  left:0;
  right:0;
  border:2px solid var(--ink);
  border-top:0;
  background:var(--white);
  box-shadow:var(--shadow);
}

.hm-replace-suggestions button{
  display:block;
  width:100%;
  padding:16px 22px;
  border:0;
  border-bottom:1px solid var(--line);
  background:transparent;
  color:var(--ink);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:15px;
  font-weight:700;
  text-align:left;
  cursor:pointer;
}

.hm-replace-suggestions button:last-child{
  border-bottom:0;
}

.hm-replace-suggestions button:hover{
  background:var(--yellow);
}


/* RÉSULTAT */

.hm-replace-result{
  max-width:960px;
  border-top:5px solid var(--red);
}

.hm-replace-result-head{
  padding:32px 0 36px;
}

.hm-replace-result-head > span{
  display:block;
  margin-bottom:6px;
  color:var(--red);
  font-size:10px;
  font-weight:800;
  letter-spacing:1px;
}

.hm-replace-result-head h3{
  margin:0;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:clamp(48px,7vw,78px);
  font-weight:400;
  line-height:.92;
  text-transform:uppercase;
}


/* BLOCS */

.hm-replace-block{
  padding:38px 0;
  border-top:1px solid var(--line);
}

.hm-replace-block h4{
  margin:0 0 24px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:28px;
  font-weight:400;
  line-height:1;
}


/* ALTERNATIVES PRINCIPALES */

.hm-replace-options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.hm-replace-option{
  min-height:175px;
  padding:24px;
  background:var(--yellow);
}

.hm-replace-option strong{
  display:block;
  margin-bottom:20px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:25px;
  font-weight:400;
  line-height:1;
  text-transform:uppercase;
}

.hm-replace-option span{
  display:block;
  margin-top:7px;
  font-size:13px;
  line-height:1.4;
}

.hm-replace-option span + span{
  padding-top:7px;
  border-top:1px solid rgba(0,0,0,.15);
}


/* ALTERNATIVES SECONDAIRES */

.hm-replace-secondary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
}

.hm-replace-secondary p{
  margin:0;
  padding:22px;
  background:var(--white);
}

.hm-replace-secondary strong{
  display:block;
  margin-bottom:7px;
  font-size:14px;
}

.hm-replace-secondary span{
  display:block;
  font-size:13px;
  line-height:1.4;
}


/* WARNING */

.hm-replace-warning{
  margin-top:28px;
  padding:28px 30px;
  background:var(--red);
  color:var(--white);
}

.hm-replace-warning strong,
.hm-replace-tip strong{
  display:block;
  margin-bottom:8px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.8px;
}

.hm-replace-warning p,
.hm-replace-tip p{
  max-width:700px;
  margin:0;
  font-family:'Fraunces',Georgia,serif;
  font-size:16px;
  line-height:1.5;
}


/* CONSEIL MIETTE */

.hm-replace-tip{
  margin-top:12px;
  padding:28px 30px;
  background:var(--sage);
  color:var(--ink);
}


/* AUCUN RÉSULTAT */

.hm-replace-empty{
  max-width:760px;
  padding:30px;
  border:2px solid var(--ink);
}

.hm-replace-empty strong{
  display:block;
  margin-bottom:5px;
  font-family:'Anton','Arial Black',Impact,sans-serif;
  font-size:25px;
  font-weight:400;
}

.hm-replace-empty p{
  margin:0;
  font-size:14px;
}


/* MOBILE */

@media(max-width:700px){

  .hm-replace-tool{
    padding:20px 0 65px;
  }

  .hm-replace-search{
    margin-bottom:40px;
  }

  #hm-replace-input{
    padding:19px 48px 19px 18px;
    font-size:16px;
  }

  .hm-replace-search::after{
    top:16px;
    right:17px;
  }

  .hm-replace-options,
  .hm-replace-secondary{
    grid-template-columns:1fr;
  }

  .hm-replace-option{
    min-height:0;
  }

  .hm-replace-result-head h3{
    font-size:48px;
  }

}

.hm-sos-all-link{
  margin-top:32px;
  text-align:center;
}

.hm-sos-all-link a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 26px;
  border:2px solid var(--ink);
  background:var(--ink);
  color:var(--white);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.5px;
  text-decoration:none;
  transition:.15s ease;
}

.hm-sos-all-link a:hover{
  background:var(--red);
  border-color:var(--red);
  color:var(--white);
}

/* =========================================================
   HEY MIETTE — ARCHIVE SOS
   ========================================================= */

.hm-sos-archive-list{
  padding:60px 0 90px;
}

.hm-sos-archive-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.hm-sos-archive-card{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  min-height:170px;
  background:var(--white);
  border:1px solid var(--line);
  overflow:hidden;
}

.hm-sos-archive-image{
  display:block;
  width:150px;
  height:100%;
  min-height:170px;
  overflow:hidden;
}

.hm-sos-archive-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.hm-sos-archive-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:20px 22px;
}

.hm-sos-archive-copy > span{
  margin-bottom:8px;
  font-family:'DM Sans',Arial,sans-serif;
  font-size:10px;
  font-weight:800;
  letter-spacing:1px;
  color:var(--red);
}

.hm-sos-archive-copy h2{
  margin:0 0 9px;
  font-family:'Anton',Arial,sans-serif;
  font-size:23px;
  line-height:1.05;
  font-weight:400;
}

.hm-sos-archive-copy h2 a{
  color:var(--ink);
  text-decoration:none;
}

.hm-sos-archive-copy p{
  margin:0 0 16px;
  font-size:13px;
  line-height:1.45;
  color:var(--ink);
}

.hm-sos-archive-link{
  margin-top:auto;
  font-size:11px;
  font-weight:800;
  color:var(--ink);
  text-decoration:none;
}

.hm-sos-archive-card:hover .hm-sos-archive-link{
  color:var(--red);
}

@media(max-width:800px){

  .hm-sos-archive-grid{
    grid-template-columns:1fr;
  }

  .hm-sos-archive-card{
    grid-template-columns:120px minmax(0,1fr);
  }

  .hm-sos-archive-image{
    width:120px;
    min-height:150px;
  }

  .hm-sos-archive-copy{
    padding:17px;
  }

  .hm-sos-archive-copy h2{
    font-size:20px;
  }

  .hm-sos-archive-copy p{
    display:none;
  }
}

/* =========================================================
   HEY MIETTE — PETIT BUDGET
   ========================================================= */

.hm-budget{
  padding:0 0 90px;
}

/* INTRO */

.hm-budget-intro{
  padding:34px 38px;
  margin-bottom:18px;
  background:var(--yellow);
  border:2px solid var(--ink);
}

.hm-budget-kicker{
  display:block;
  margin-bottom:8px;
  font-family:'Anton',Arial,sans-serif;
  font-size:28px;
  line-height:1;
}

.hm-budget-intro p{
  margin:0;
  max-width:620px;
  font-size:15px;
  line-height:1.5;
}


/* RACCOURCIS */

.hm-budget-shortcuts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-bottom:55px;
}

.hm-budget-shortcuts a{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:95px;
  padding:18px 22px;
  border:2px solid var(--ink);
  background:var(--white);
  color:var(--ink);
  text-decoration:none;
  transition:.15s ease;
}

.hm-budget-shortcuts strong{
  font-family:'Anton',Arial,sans-serif;
  font-size:24px;
  line-height:1;
  font-weight:400;
}

.hm-budget-shortcuts span{
  margin-top:5px;
  font-size:12px;
  font-weight:600;
}

.hm-budget-shortcuts a:hover{
  background:var(--ink);
  color:var(--white);
}


/* TITRE RECETTES */

.hm-budget-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
  padding-bottom:15px;
  margin-bottom:20px;
  border-bottom:2px solid var(--ink);
}

.hm-budget-heading span{
  display:block;
  margin-bottom:3px;
  font-size:11px;
  font-weight:800;
  letter-spacing:1px;
  color:var(--red);
}

.hm-budget-heading h2{
  margin:0;
  font-family:'Anton',Arial,sans-serif;
  font-size:42px;
  line-height:1;
  font-weight:400;
}

.hm-budget-heading > strong{
  flex:none;
  padding-bottom:3px;
  font-size:12px;
  font-weight:800;
}


/* GRILLE COMPACTE */

.hm-budget-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.hm-budget-card{
  display:grid;
  grid-template-columns:125px minmax(0,1fr);
  min-height:155px;
  overflow:hidden;
  background:var(--white);
  border:1px solid var(--line);
}

.hm-budget-card-image{
  width:125px;
  min-height:155px;
}

.hm-budget-card-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.hm-budget-card-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:19px 21px;
}


/* PRIX = INFORMATION PRINCIPALE */

.hm-budget-price{
  display:inline-block;
  margin-bottom:9px;
  padding:5px 8px;
  background:var(--yellow);
  color:var(--ink);
  font-size:11px;
  line-height:1;
  font-weight:800;
}

.hm-budget-card h3{
  margin:0 0 11px;
  font-family:'Anton',Arial,sans-serif;
  font-size:23px;
  line-height:1.05;
  font-weight:400;
}

.hm-budget-card h3 a{
  color:var(--ink);
  text-decoration:none;
}


/* MÉTADONNÉES */

.hm-budget-meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px 12px;
  margin-bottom:15px;
}

.hm-budget-meta span{
  position:relative;
  font-size:10px;
  line-height:1.25;
  font-weight:700;
  color:#6d685f;
}

.hm-budget-meta span:not(:last-child)::after{
  content:"·";
  position:absolute;
  right:-8px;
}


/* LIEN */

.hm-budget-card-link{
  margin-top:auto;
  color:var(--ink);
  font-size:11px;
  font-weight:800;
  text-decoration:none;
}

.hm-budget-card:hover .hm-budget-card-link{
  color:var(--red);
}


/* MOBILE */

@media(max-width:800px){

  .hm-budget{
    padding-bottom:60px;
  }

  .hm-budget-intro{
    padding:25px 22px;
  }

  .hm-budget-kicker{
    font-size:24px;
  }

  .hm-budget-shortcuts{
    grid-template-columns:1fr;
    gap:8px;
    margin-bottom:42px;
  }

  .hm-budget-shortcuts a{
    min-height:74px;
  }

  .hm-budget-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }

  .hm-budget-heading h2{
    font-size:34px;
  }

  .hm-budget-grid{
    grid-template-columns:1fr;
  }

  .hm-budget-card{
    grid-template-columns:120px minmax(0,1fr);
    min-height:150px;
  }

  .hm-budget-card-image{
    width:120px;
    min-height:150px;
  }

  .hm-budget-card-copy{
    padding:16px;
  }

  .hm-budget-card h3{
    font-size:20px;
  }
}

/* PETIT BUDGET — rapproche le contenu du hero */
.hm-page-hero:has(+ .hm-budget){
  padding-bottom:45px;
}

.hm-page-hero + .hm-budget{
  margin-top:0;
}

.hm-budget-kicker{
  display:block;
  margin-bottom:12px;
  font-family:'Anton',Arial,sans-serif;
  font-size:32px;
  line-height:1;
  font-weight:400;
  text-transform:uppercase;
}
/* =========================================================
   T'AS QUOI ? — RÉSULTATS COMPACTS
   ========================================================= */

.hm-tas-results{
    margin-top:48px;
}

.hm-tas-group{
    margin-top:34px;
}

.hm-tas-group:first-child{
    margin-top:0;
}

/* TITRE DU GROUPE */

.hm-tas-group-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:16px;
    padding-bottom:10px;
    border-bottom:2px solid var(--ink);
}

.hm-tas-group-head h2{
    margin:0;
    font-family:"Anton", sans-serif;
    font-size:28px;
    line-height:1;
    font-weight:400;
}

.hm-tas-group-head > span{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:34px;
    height:34px;
    padding:0 10px;
    border-radius:999px;
    background:var(--ink);
    color:var(--white);
    font-size:13px;
    font-weight:700;
}


/* GRILLE */

.hm-tas-compact-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}


/* CARTE */

.hm-tas-compact-card{
    display:grid;
    grid-template-columns:130px minmax(0,1fr);
    min-height:160px;
    overflow:hidden;
    background:var(--white);
    border:1px solid var(--line);
    border-radius:16px;
    box-shadow:var(--shadow);
}


/* IMAGE */

.hm-tas-compact-image{
    display:block;
    width:130px;
    height:100%;
    min-height:160px;
    overflow:hidden;
}

.hm-tas-compact-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}


/* CONTENU */

.hm-tas-compact-copy{
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:17px 18px 15px;
}

.hm-tas-compact-copy h3{
    margin:0 0 10px;
    font-family:"Anton", sans-serif;
    font-size:21px;
    line-height:1.08;
    font-weight:400;
}

.hm-tas-compact-copy h3 a{
    color:var(--ink);
    text-decoration:none;
}


/* RECETTE FAISABLE */

.hm-tas-compact-ready{
    display:inline-flex;
    align-self:flex-start;
    padding:6px 9px;
    border-radius:7px;
    background:var(--sage);
    color:var(--ink);
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.04em;
}


/* INGRÉDIENTS MANQUANTS */

.hm-tas-compact-missing{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:3px;
}

.hm-tas-compact-missing span{
    font-size:10px;
    line-height:1;
    font-weight:800;
    letter-spacing:.08em;
}

.hm-tas-compact-missing strong{
    font-size:14px;
    line-height:1.25;
}


/* 1 INGRÉDIENT MANQUANT */

.hm-result-one .hm-tas-compact-missing strong{
    display:inline-block;
    padding:5px 8px;
    border-radius:6px;
    background:var(--yellow);
}


/* 2 INGRÉDIENTS MANQUANTS */

.hm-result-two .hm-tas-compact-missing strong{
    display:inline-block;
    padding:5px 8px;
    border-radius:6px;
    background:var(--cream);
    border:1px solid var(--line);
}


/* MÉTADONNÉES */

.hm-tas-compact-meta{
    display:flex;
    flex-wrap:wrap;
    gap:5px 12px;
    margin-top:10px;
    color:#746c62;
    font-size:11px;
    font-weight:700;
}

.hm-tas-compact-meta span + span::before{
    content:"·";
    margin-right:12px;
}


/* LIEN */

.hm-tas-compact-link{
    margin-top:auto;
    padding-top:10px;
    color:var(--ink);
    font-size:11px;
    line-height:1;
    font-weight:800;
    text-decoration:none;
    letter-spacing:.04em;
}

.hm-tas-compact-link:hover,
.hm-tas-compact-copy h3 a:hover{
    color:var(--red);
}


/* ZÉRO RÉSULTAT */

.hm-tas-empty{
    margin-top:28px;
    padding:24px 26px;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--cream);
}

.hm-tas-empty strong{
    display:block;
    margin-bottom:5px;
    font-family:"Anton", sans-serif;
    font-size:24px;
    line-height:1;
    font-weight:400;
}

.hm-tas-empty p{
    max-width:580px;
    margin:0;
    font-size:14px;
    line-height:1.5;
}


/* MOBILE */

@media (max-width:760px){

    .hm-tas-results{
        margin-top:36px;
    }

    .hm-tas-compact-grid{
        grid-template-columns:1fr;
    }

    .hm-tas-compact-card{
        grid-template-columns:110px minmax(0,1fr);
        min-height:145px;
    }

    .hm-tas-compact-image{
        width:110px;
        min-height:145px;
    }

    .hm-tas-compact-copy{
        padding:15px;
    }

    .hm-tas-compact-copy h3{
        font-size:19px;
    }

    .hm-tas-group-head h2{
        font-size:24px;
    }
}

/* =========================================================
   À PROPOS
   ========================================================= */

/* Enlève les contraintes de la page standard */
.hm-page-body-about{
    padding-top:0;
}

.hm-shell-about{
    max-width:none;
    padding:0;
}

.hm-about .hm-wrap{
    width:min(1180px, calc(100% - 48px));
    margin:0 auto;
}


/* HERO */

.hm-about-hero{
    padding:68px 0 64px;
}

.hm-about-kicker{
    margin-bottom:18px;
    font-size:12px;
    line-height:1;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
}

.hm-about-hero h1{
    max-width:850px;
    margin:0;
    font-family:"Anton",sans-serif;
    font-size:clamp(58px,8vw,108px);
    line-height:.9;
    font-weight:400;
    letter-spacing:-.015em;
}

.hm-about-intro{
    max-width:650px;
    margin:28px 0 0;
    font-family:"Fraunces",serif;
    font-size:25px;
    line-height:1.25;
}


/* LE PRINCIPE */

.hm-about-story{
    padding:72px 0 78px;
}

.hm-about-story-grid,
.hm-about-maker-grid{
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:90px;
    align-items:start;
}

.hm-about-story h2,
.hm-about-maker h2{
    margin:0;
    font-family:"Anton",sans-serif;
    font-size:clamp(44px,5vw,70px);
    line-height:.94;
    font-weight:400;
}

.hm-about-story-copy{
    max-width:610px;
    font-size:18px;
    line-height:1.55;
}

.hm-about-story-copy p{
    margin:0 0 20px;
}

.hm-about-story-copy .hm-about-lead{
    margin-bottom:28px;
    font-family:"Fraunces",serif;
    font-size:29px;
    line-height:1.25;
    font-weight:600;
}

.hm-about-question{
    font-family:"Fraunces",serif;
    font-size:27px;
    line-height:1.25;
    font-weight:700;
}


/* LES 4 PRINCIPES */

.hm-about-rules{
    padding:0;
    background:var(--yellow);
    border-top:1px solid var(--ink);
    border-bottom:1px solid var(--ink);
}

.hm-about-rules-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
}

.hm-about-rule{
    min-height:250px;
    padding:30px 26px 32px;
    border-right:1px solid var(--ink);
}

.hm-about-rule:first-child{
    border-left:1px solid var(--ink);
}

.hm-about-rule > span{
    display:block;
    margin-bottom:48px;
    font-size:11px;
    font-weight:800;
}

.hm-about-rule h3{
    margin:0 0 10px;
    font-family:"Anton",sans-serif;
    font-size:29px;
    line-height:1;
    font-weight:400;
}

.hm-about-rule p{
    margin:0;
    max-width:220px;
    font-size:14px;
    line-height:1.45;
}


/* DERRIÈRE MIETTE */

.hm-about-maker{
    padding:100px 0 110px;
    background:var(--cream);
}

.hm-about-maker-copy{
    max-width:600px;
    font-size:18px;
    line-height:1.55;
}

.hm-about-maker-copy p{
    margin:0 0 20px;
}

.hm-about-maker-copy blockquote{
    margin:35px 0;
    padding:0;
    border:0;
    font-family:"Fraunces",serif;
    font-size:clamp(28px,3vw,40px);
    line-height:1.18;
    font-weight:700;
}


/* TABLETTE */

@media (max-width:900px){

    .hm-about-story-grid,
    .hm-about-maker-grid{
        grid-template-columns:1fr;
        gap:42px;
    }

    .hm-about-rules-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .hm-about-rule:nth-child(2){
        border-right:1px solid var(--ink);
    }

    .hm-about-rule:nth-child(3),
    .hm-about-rule:nth-child(4){
        border-top:1px solid var(--ink);
    }
}


/* MOBILE */

@media (max-width:600px){

    .hm-about .hm-wrap{
        width:calc(100% - 32px);
    }

    .hm-about-hero{
        padding:55px 0 62px;
    }

    .hm-about-hero h1{
        font-size:56px;
    }

    .hm-about-intro{
        margin-top:22px;
        font-size:21px;
    }

    .hm-about-story,
    .hm-about-maker{
        padding:65px 0;
    }

    .hm-about-story-grid,
    .hm-about-maker-grid{
        gap:32px;
    }

    .hm-about-story h2,
    .hm-about-maker h2{
        font-size:44px;
    }

    .hm-about-story-copy,
    .hm-about-maker-copy{
        font-size:16px;
    }

    .hm-about-story-copy .hm-about-lead{
        font-size:24px;
    }

    .hm-about-question{
        font-size:23px;
    }

    .hm-about-rules-grid{
        grid-template-columns:1fr;
    }

    .hm-about-rule,
    .hm-about-rule:first-child{
        min-height:auto;
        padding:24px 0 26px;
        border-left:0;
        border-right:0;
        border-top:1px solid var(--ink);
    }

    .hm-about-rule:first-child{
        border-top:0;
    }

    .hm-about-rule > span{
        margin-bottom:28px;
    }

    .hm-about-maker-copy blockquote{
        margin:28px 0;
        font-size:28px;
    }
}

/* =========================================================
   CONTACT
   ========================================================= */

.hm-contact .hm-wrap{
    width:min(1180px, calc(100% - 48px));
    margin:0 auto;
}


/* PAGE PRINCIPALE */

.hm-contact-main{
    padding:82px 0 92px;
    background:var(--cream);
}

.hm-contact-grid{
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:100px;
    align-items:start;
}


/* INTRO */

.hm-contact-kicker{
    margin-bottom:18px;
    font-size:12px;
    line-height:1;
    font-weight:800;
    letter-spacing:.14em;
}

.hm-contact-intro h1{
    margin:0;
    font-family:"Anton",sans-serif;
    font-size:clamp(64px,7vw,100px);
    line-height:.88;
    font-weight:400;
}

.hm-contact-lead{
    max-width:440px;
    margin:32px 0 8px;
    font-family:"Fraunces",serif;
    font-size:25px;
    line-height:1.25;
    font-weight:600;
}

.hm-contact-intro > p:last-child{
    margin:0;
    font-size:16px;
}


/* FLUENT FORMS */

.hm-contact-form .fluentform{
    margin:0;
}

.hm-contact-form .ff-el-group{
    margin-bottom:25px;
}

.hm-contact-form .ff-el-input--label{
    margin-bottom:8px;
}

.hm-contact-form .ff-el-input--label label{
    color:var(--ink);
    font-family:"DM Sans",sans-serif;
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.1em;
}

.hm-contact-form input[type="text"],
.hm-contact-form input[type="email"],
.hm-contact-form textarea{
    width:100% !important;
    padding:15px 0 !important;
    border:0 !important;
    border-bottom:1px solid var(--ink) !important;
    border-radius:0 !important;
    outline:0 !important;
    background:transparent !important;
    color:var(--ink) !important;
    font-family:"DM Sans",sans-serif !important;
    font-size:17px !important;
    box-shadow:none !important;
}

.hm-contact-form textarea{
    min-height:145px !important;
    resize:vertical;
}

.hm-contact-form input:focus,
.hm-contact-form textarea:focus{
    border-bottom-color:var(--red) !important;
    box-shadow:none !important;
}


/* BOUTON */

.hm-contact-form .ff-btn-submit{
    margin-top:8px !important;
    padding:16px 28px !important;
    border:0 !important;
    border-radius:10px !important;
    background:var(--red) !important;
    color:var(--white) !important;
    font-family:"DM Sans",sans-serif !important;
    font-size:14px !important;
    line-height:1 !important;
    font-weight:800 !important;
    letter-spacing:.04em;
    cursor:pointer;
}

.hm-contact-form .ff-btn-submit:hover{
    opacity:.88;
}


/* MESSAGES FLUENT FORMS */

.hm-contact-form .ff-message-success{
    padding:20px !important;
    border:1px solid var(--ink) !important;
    border-radius:0 !important;
    background:var(--sage) !important;
    color:var(--ink) !important;
    box-shadow:none !important;
}

.hm-contact-form .ff-el-is-error input,
.hm-contact-form .ff-el-is-error textarea{
    border-bottom-color:var(--red) !important;
}

.hm-contact-form .error{
    color:var(--red) !important;
    font-size:12px !important;
}


/* BLOC BAS */

.hm-contact-other{
    padding:70px 0 76px;
    border-top:1px solid var(--ink);
    border-bottom:1px solid var(--ink);
    background:var(--red);
    color:var(--white);
}

.hm-contact-other-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,.75fr);
    gap:100px;
    align-items:end;
}

.hm-contact-other span{
    display:block;
    margin-bottom:18px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
}

.hm-contact-other h2{
    margin:0;
    font-family:"Anton",sans-serif;
    font-size:clamp(42px,5vw,68px);
    line-height:.94;
    font-weight:400;
}

.hm-contact-other-copy{
    max-width:470px;
    font-size:17px;
    line-height:1.5;
}

.hm-contact-other-copy p{
    margin:0 0 12px;
}

.hm-contact-other-copy p:last-child{
    margin-bottom:0;
}


/* TABLETTE */

@media (max-width:900px){

    .hm-contact-grid,
    .hm-contact-other-grid{
        grid-template-columns:1fr;
        gap:48px;
    }

    .hm-contact-form{
        max-width:650px;
    }
}


/* MOBILE */

@media (max-width:600px){

    .hm-contact .hm-wrap{
        width:calc(100% - 32px);
    }

    .hm-contact-main{
        padding:55px 0 65px;
    }

    .hm-contact-grid{
        gap:42px;
    }

    .hm-contact-intro h1{
        font-size:60px;
    }

    .hm-contact-lead{
        margin-top:24px;
        font-size:22px;
    }

    .hm-contact-other{
        padding:52px 0 58px;
    }

    .hm-contact-other-grid{
        gap:32px;
    }

    .hm-contact-other h2{
        font-size:43px;
    }

    .hm-contact-other-copy{
        font-size:16px;
    }
}