/*
Theme Name: Casa Pedro
Theme URI: https://casapedro.fr
Author: Casa Pedro
Description: Thème sur mesure pour Casa Pedro, taverne portugaise à Crécy-la-Chapelle. Porte d'azulejos à franchir au scroll, comptoirs, carte, soirées fado et réservation par e-mail. Textes et photos dans Apparence > Personnaliser > Casa Pedro ; carte, soirées et réservations dans le menu Casa Pedro.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: casapedro
*/
/* Concept : on pousse une porte d'azulejos au scroll, puis on entre dans une maison beige et noire où le bleu ne vit que dans la faïence. */
:root{
  --bone:#EEE7DA;
  --paper:#F8F3EA;
  --faience:#F6F3EC;
  --ink:#141210;
  --ink-soft:#5E574D;
  --azul:#1F3D7A;
  --on-ink:#EEE7DA;
  --on-ink-soft:rgba(238,231,218,.64);
  --line:rgba(20,18,16,.16);
  --line-ink:rgba(238,231,218,.18);
  --alerte:#8C2F1F;
  --display:"Poppins","Helvetica Neue",Arial,sans-serif;
  --text:"Open Sans","Segoe UI",Arial,sans-serif;
  --gutter:clamp(16px,4.4vw,64px);
  --nav-h:76px;
  --grain:none;
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{margin:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{background:var(--bone);color:var(--ink);font-family:var(--text);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body::after{content:"";position:fixed;inset:0;background-image:var(--grain);opacity:.32;mix-blend-mode:multiply;pointer-events:none;z-index:200}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
section{scroll-margin-top:calc(var(--nav-h) + 12px)}
.wrap{max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}
.label{font:500 12px/1.4 var(--display);letter-spacing:.22em;text-transform:uppercase;margin:0}
.soft{color:var(--ink-soft)}
:focus-visible{outline:2px solid var(--azul);outline-offset:3px}

/* Boutons */
.btn{display:inline-flex;align-items:center;gap:14px;padding:17px 28px;background:var(--ink);color:var(--on-ink);border:1px solid var(--ink);font:500 12px/1 var(--display);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.btn .arr{font:300 17px/1 var(--display);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.btn:hover .arr{transform:translateX(5px)}
.btn--ghost{background:transparent;color:var(--ink)}
.btn--ghost:hover{background:var(--ink);color:var(--on-ink)}
.btn--bone{background:var(--on-ink);color:var(--ink);border-color:var(--on-ink)}
.btn--bone:hover{background:transparent;color:var(--on-ink)}
.lien{background:none;border:0;border-bottom:1px solid currentColor;padding:6px 0;color:inherit;font:500 12px/1 var(--display);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;text-decoration:none;white-space:nowrap}

/* Navigation */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;padding-top:env(safe-area-inset-top,0px);background:rgba(238,231,218,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav__in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--nav-h)}
.nav__logo img{height:48px;width:auto}
.nav__links{display:flex;gap:clamp(18px,2.6vw,40px);list-style:none;margin:0;padding:0}
.nav__links a{font:500 12px/1 var(--display);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding-block:8px;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .35s}
.nav__links a:hover{background-size:100% 1px}
.nav .btn{padding:14px 22px}

/* 1. Le seuil */
.seuil{position:relative;height:260vh;height:260svh}
.seuil__scene{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.wordmark{position:absolute;left:0;right:0;bottom:7vh;margin:0;text-align:center;white-space:nowrap;font:300 min(15.4vw,29vh)/.86 var(--display);letter-spacing:-.045em;z-index:1}
.wordmark span{display:inline-block;will-change:transform}
.porte{position:absolute;left:50%;top:19vh;width:min(64vw,46vh);aspect-ratio:.72;transform:translateX(-50%);transform-origin:50% 66%;z-index:2;border-radius:999px 999px 0 0;background:var(--faience) url("assets/img/azulejo.svg") center top/clamp(60px,8vh,92px);box-shadow:0 0 0 12px var(--bone),0 0 0 13px var(--ink);will-change:transform}
.plaque{position:absolute;left:50%;bottom:12%;transform:translateX(-50%);width:76%;padding:14px 10px 12px;background:var(--faience);color:var(--azul);text-align:center;border:1.5px solid var(--azul);box-shadow:inset 0 0 0 4px var(--faience),inset 0 0 0 5px var(--azul),0 10px 26px rgba(20,18,16,.22)}
.plaque b{display:block;font:500 clamp(12px,2vh,19px)/1.2 var(--display);letter-spacing:.26em}
.plaque i{display:block;font:300 italic clamp(12px,1.8vh,16px)/1.4 var(--display);margin-top:4px}
.plaque small{display:block;font:500 9px/1.4 var(--display);letter-spacing:.24em;text-transform:uppercase;margin-top:6px;opacity:.8}
.seuil__cote{position:absolute;top:24vh;width:min(250px,22vw);z-index:3;display:grid;gap:14px}
.seuil__cote--g{left:var(--gutter)}
.seuil__cote--d{right:var(--gutter);text-align:right;justify-items:end}
.seuil__cote p{margin:0;font-size:15px;line-height:1.65;color:var(--ink-soft)}
.seuil__hint{position:absolute;left:0;right:0;bottom:2.2vh;text-align:center;z-index:3;font:500 11px/1 var(--display);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft)}
.statut{display:inline-flex;align-items:center;gap:10px;font:400 15px/1.4 var(--display)}
.statut i{width:8px;height:8px;border-radius:50%;background:var(--ink-soft);flex:none}
.statut.is-open i{background:var(--azul);box-shadow:0 0 0 0 rgba(31,61,122,.5);animation:pouls 2.4s infinite}
@keyframes pouls{70%{box-shadow:0 0 0 9px rgba(31,61,122,0)}100%{box-shadow:0 0 0 0 rgba(31,61,122,0)}}

/* 2. Bem-vindo */
.bemvindo{position:relative;z-index:5;margin-top:-42vh;background:var(--bone);border-radius:50% 50% 0 0/9vw 9vw 0 0;padding-block:clamp(110px,14vw,210px) clamp(80px,10vw,140px)}
.bv{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,6vw,96px);align-items:center}
.bv__h{font:300 clamp(54px,8.2vw,128px)/.94 var(--display);letter-spacing:-.05em;margin:24px 0 34px;text-wrap:balance}
.bv__h em,.h2 em,.casa__txt em,.saude__big em,.lead em,.lieux em{font-style:italic}
.lead{max-width:33em;color:var(--ink-soft);margin:0}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}
.bv__faits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line)}
.bv__faits b{display:block;font:400 17px/1.3 var(--display)}
.bv__faits span{font:300 italic 15px/1.4 var(--display);color:var(--ink-soft)}
.tirages{position:relative;height:clamp(400px,42vw,580px)}
.tirage{position:absolute;margin:0;width:clamp(170px,16vw,230px);background:var(--faience);padding:10px 10px 0;box-shadow:0 22px 44px -10px rgba(20,18,16,.32),0 2px 6px rgba(20,18,16,.12);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.tirage figcaption{font:300 italic 15px/1 var(--display);padding:14px 4px 16px}
.ph{position:relative;overflow:hidden;background:var(--ink)}
.ph img{width:100%;height:100%;object-fit:cover;filter:sepia(.14) contrast(1.05) saturate(.92)}
.ph::after{content:"";position:absolute;inset:0;background-image:var(--grain);mix-blend-mode:overlay;opacity:.9;pointer-events:none}
.tirage .ph{aspect-ratio:4/5}
.t1{left:2%;top:10%;transform:rotate(-7deg)}
.t2{left:31%;top:0;transform:rotate(3deg);z-index:2}
.t3{left:57%;top:18%;transform:rotate(8deg)}
.tirages:hover .t1{transform:rotate(-11deg) translate(-26px,14px)}
.tirages:hover .t2{transform:rotate(0) translateY(-18px)}
.tirages:hover .t3{transform:rotate(12deg) translate(26px,18px)}

/* 3. Défilé */
.defile{background:var(--ink);color:var(--on-ink);overflow:hidden;padding-block:30px}
.defile__track{display:flex;width:max-content;animation:defile 42s linear infinite}
.defile:hover .defile__track{animation-play-state:paused}
.defile__grp{display:flex;align-items:center;gap:44px;padding-right:44px}
.defile__grp span{font:300 clamp(36px,5vw,66px)/1 var(--display);letter-spacing:-.025em;white-space:nowrap}
.defile__grp span:nth-of-type(even){font-style:italic}
.defile__grp i{width:clamp(30px,3.4vw,48px);aspect-ratio:1;background:var(--faience) url("assets/img/azulejo.svg") center/100%;flex:none}
@keyframes defile{to{transform:translateX(-50%)}}

/* 4. A casa */
.casa{padding-block:clamp(100px,12vw,180px)}
.casa__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3.3fr);gap:32px 40px}
.casa__txt{font:300 clamp(30px,4.1vw,60px)/1.16 var(--display);letter-spacing:-.03em;margin:0;text-wrap:pretty}
.casa__txt .w{transition:opacity .5s}
.lieux{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:clamp(64px,8vw,112px);padding-top:28px;border-top:1px solid var(--line)}
.lieux b{display:block;font:400 20px/1.3 var(--display);margin-bottom:6px}
.lieux p{margin:0;color:var(--ink-soft);font-size:15.5px;line-height:1.65}

/* 5. Os balcões */
.balcoes{background:var(--ink);color:var(--on-ink);padding-block:clamp(100px,12vw,170px)}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:28px 64px;margin-bottom:clamp(56px,7vw,96px)}
.sec-head p{max-width:24em;margin:0}
.h2{font:300 clamp(44px,6.4vw,98px)/1 var(--display);letter-spacing:-.045em;margin:18px 0 0;text-wrap:balance}
.balcoes .label,.saude .label{color:var(--on-ink-soft)}
.balcoes__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.6vw,36px)}
.balcao .ph{aspect-ratio:4/5}
.balcao:nth-child(2) .ph{border-radius:999px 999px 0 0}
.balcao .ph img{transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.balcao:hover .ph img{transform:scale(1.06)}
.balcao__t{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:26px}
.balcao h3{font:300 clamp(28px,2.6vw,38px)/1.1 var(--display);letter-spacing:-.025em;margin:0}
.pt{font:300 italic 16px/1 var(--display);color:var(--on-ink-soft);white-space:nowrap}
.balcao>p{color:var(--on-ink-soft);font-size:15.5px;line-height:1.65;margin:12px 0 22px}
.prix{list-style:none;margin:0;padding:18px 0 0;border-top:1px solid var(--line-ink);display:grid;gap:12px;font-variant-numeric:tabular-nums}
.prix li{display:flex;align-items:baseline;gap:10px;font-size:15px}
.prix i,.plat__l i{flex:1;min-width:16px;border-bottom:1.5px dotted currentColor;opacity:.35;transform:translateY(-5px)}

/* 6. A carta */
.carta{position:relative;background:var(--faience) url("assets/img/azulejo.svg") center/clamp(84px,9vw,124px);padding-block:clamp(90px,12vw,180px);overflow:hidden}
.carta::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(20,18,16,0) 35%,rgba(20,18,16,.38) 100%);pointer-events:none}
.menu{position:relative;max-width:820px;margin-inline:auto;background:var(--paper);padding:clamp(44px,7vw,88px) clamp(22px,7vw,96px);box-shadow:0 50px 90px -30px rgba(20,18,16,.6),0 4px 14px rgba(20,18,16,.2);transform:rotate(-1.6deg);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.menu.is-in{transform:rotate(0)}
.menu::before{content:"";position:absolute;inset:14px;border:1px solid var(--line);pointer-events:none}
.menu__head{text-align:center;display:grid;justify-items:center;gap:14px}
.menu__head img{width:150px}
.menu__head .h2{font-size:clamp(40px,5.4vw,66px);margin:4px 0 0}
.menu__head p{margin:0;font-style:italic;color:var(--ink-soft)}
.rub{display:flex;align-items:center;gap:18px;margin:52px 0 24px}
.rub::before,.rub::after{content:"";flex:1;height:1px;background:var(--line)}
.plats{display:grid;gap:18px}
.plat__l{display:flex;align-items:baseline;gap:10px;font:400 18px/1.35 var(--display);font-variant-numeric:tabular-nums}
.plat p{margin:2px 0 0;font-style:italic;color:var(--ink-soft);font-size:14.5px;line-height:1.5}
.menu__pied{text-align:center;margin-top:52px}
.epingle{position:absolute;margin:0;width:clamp(130px,13vw,184px);background:var(--faience);padding:8px 8px 0;box-shadow:0 18px 34px -8px rgba(20,18,16,.38);z-index:2}
.epingle .ph{aspect-ratio:4/5}
.epingle figcaption{font:300 italic 13px/1 var(--display);padding:10px 2px 12px}
.epingle::before{content:"";position:absolute;top:-12px;left:50%;width:72px;height:24px;transform:translateX(-50%) rotate(-4deg);background:rgba(246,243,236,.72);box-shadow:0 1px 3px rgba(20,18,16,.15);z-index:3}
.epingle--a{top:-30px;right:-44px;transform:rotate(7deg)}
.epingle--b{bottom:-30px;left:-110px;transform:rotate(-6deg)}

/* 7. Fado */
.fado{padding-block:clamp(100px,12vw,170px)}
.fado__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,7vw,110px);align-items:center}
.fado__photo{border-radius:999px 999px 0 0;aspect-ratio:.78;max-width:440px;width:100%;box-shadow:0 0 0 12px var(--bone),0 0 0 13px var(--ink);margin:13px}
.fado__photo::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 87% 50%,rgba(255,196,120,.38),rgba(255,196,120,0) 34%);mix-blend-mode:screen;animation:bougie 3.2s ease-in-out infinite;pointer-events:none}
@keyframes bougie{0%,100%{opacity:.85}22%{opacity:.6}48%{opacity:1}71%{opacity:.7}}
.fado p.lead{margin-top:28px}
.soirees{list-style:none;margin:44px 0 0;padding:0;border-top:1px solid var(--line)}
.soiree{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(16px,3vw,36px);align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:padding .4s}
.soiree:hover{padding-inline:12px}
.soiree__d{text-align:center;min-width:64px}
.soiree__d b{display:block;font:300 44px/1 var(--display);letter-spacing:-.04em}
.soiree h3{font:400 20px/1.3 var(--display);margin:0}
.soiree p{margin:2px 0 0;font-size:14.5px;line-height:1.5;color:var(--ink-soft)}

/* 8. Saúde */
.saude{background:var(--ink);color:var(--on-ink);padding-block:clamp(100px,12vw,170px);overflow:hidden}
.saude__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:48px 64px;align-items:center}
.saude__big{font:300 clamp(92px,17vw,280px)/.84 var(--display);letter-spacing:-.065em;margin:22px 0 36px;white-space:nowrap}
.saude p{max-width:30em;color:var(--on-ink-soft);margin:0 0 36px}
.saude .tirage{position:relative;transform:rotate(4deg);width:min(100%,340px);justify-self:center}
.saude .tirage .ph{aspect-ratio:3/2}
.saude .tirage figcaption{color:var(--ink)}
.saude .tirage:hover{transform:rotate(0) scale(1.03)}

/* 9. Reservar */
.reserver{padding-block:clamp(100px,12vw,170px)}
.res__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(48px,7vw,120px);align-items:start}
.infos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:52px;padding-top:28px;border-top:1px solid var(--line)}
.infos p{margin:10px 0 0;font-size:15.5px;line-height:1.7}
.horaires{display:grid;grid-template-columns:auto 1fr;gap:4px 18px;margin-top:10px;font-size:15px;font-variant-numeric:tabular-nums}
.horaires dt{color:var(--ink-soft)}
.horaires dd{margin:0}
.form{display:grid;gap:28px;background:var(--paper);padding:clamp(28px,4vw,52px);box-shadow:0 30px 60px -30px rgba(20,18,16,.35)}
.form__titre{font:300 clamp(28px,2.6vw,36px)/1.15 var(--display);letter-spacing:-.025em;margin:0}
.champ{display:grid;gap:8px;min-width:0}
.champ>label,.champ>.label{color:var(--ink-soft)}
.champ input,.champ select{font:400 18px/1.4 var(--text);color:var(--ink);background:transparent;border:0;border-bottom:1px solid rgba(20,18,16,.35);border-radius:0;padding:10px 0;width:100%;min-width:0;appearance:none;-webkit-appearance:none}
.champ select{background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-size:5px 5px;background-repeat:no-repeat}
.champ input:focus,.champ select:focus{outline:none;border-bottom-color:var(--ink);box-shadow:0 1px 0 var(--ink)}
.rang{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.rang--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.stepper{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(20,18,16,.35);padding:4px 0}
.stepper output{font:400 18px var(--text);font-variant-numeric:tabular-nums}
.stepper button{width:36px;height:36px;border:1px solid var(--line);background:transparent;color:var(--ink);font:300 20px/1 var(--display);cursor:pointer}
.stepper button:hover{border-color:var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:10px;border:0;padding:0;margin:0}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0}
.chip span{display:inline-block;padding:11px 16px;border:1px solid rgba(20,18,16,.3);font:500 11px/1 var(--display);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s}
.chip input:checked+span{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}
.chip input:focus-visible+span{outline:2px solid var(--azul);outline-offset:3px}
.err{color:var(--alerte);font-size:13.5px;margin:0}
.form .btn{justify-content:center;width:100%}
.note{font-size:13px;color:var(--ink-soft);margin:0;text-align:center}
.merci{display:grid;gap:18px;background:var(--paper);padding:clamp(28px,4vw,52px);box-shadow:0 30px 60px -30px rgba(20,18,16,.35)}
.merci h3{font:300 clamp(30px,3vw,42px)/1.1 var(--display);letter-spacing:-.03em;margin:0}
.merci p{margin:0;color:var(--ink-soft)}
.merci .btn{justify-self:start}

/* 10. Pied */
.pied{background:var(--ink);color:var(--on-ink)}
.pied__tiles{height:clamp(56px,7vw,96px);background:var(--faience) url("assets/img/azulejo.svg") left center/auto 100%}
.pied__in{padding-block:clamp(64px,8vw,110px) 28px}
.pied__top{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:40px}
.pied__top img{width:170px}
.pied ul{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px;font-size:15px}
.pied ul a{text-decoration:none}
.pied ul a:hover{text-decoration:underline}
.pied .label{color:var(--on-ink-soft)}
.pied p{margin:16px 0 0;font-size:15px;color:var(--on-ink-soft)}
.pied .pied__wm{font:300 min(14.6vw,212px)/.9 var(--display);letter-spacing:-.05em;margin:clamp(56px,8vw,110px) 0 22px;white-space:nowrap;color:var(--on-ink)}
.pied__bas{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:22px;border-top:1px solid var(--line-ink);font-size:13px;color:var(--on-ink-soft)}

/* Responsive */
@media (max-width:1000px){
  .seuil__cote{display:none}
  .bv,.res__grid,.fado__grid,.saude__grid{grid-template-columns:minmax(0,1fr)}
  .casa__grid{grid-template-columns:minmax(0,1fr)}
  .balcoes__grid{grid-template-columns:minmax(0,1fr);max-width:520px}
  .pied__top{grid-template-columns:repeat(2,minmax(0,1fr))}
  .epingle--b{display:none}
  .epingle--a{right:-6px;top:-44px}
  .fado__photo{max-width:380px}
}
@media (max-width:860px){.nav__links{display:none}}
@media (max-width:640px){
  :root{--nav-h:64px}
  .nav__logo img{height:38px}
  .porte{top:17vh;width:min(70vw,46vh)}
  .wordmark{bottom:21vh}
  .plaque small{letter-spacing:.14em}
  .bemvindo{margin-top:-30vh;border-radius:50% 50% 0 0/14vw 14vw 0 0}
  .bv__faits,.lieux{grid-template-columns:minmax(0,1fr)}
  .tirages{height:400px}
  .t1{left:0}.t2{left:26%}.t3{left:48%}
  .rang{grid-template-columns:minmax(0,1fr)}
  .rang--2{grid-template-columns:minmax(0,1fr)}
  .infos{grid-template-columns:minmax(0,1fr)}
  .soiree{grid-template-columns:auto minmax(0,1fr)}
  .soiree .lien{grid-column:2;justify-self:start}
  .epingle--a{width:110px;right:-4px;top:-56px}
  .menu__head img{width:120px}
  .saude__big{font-size:clamp(76px,24vw,140px)}
}

/* Mouvement réduit */
.rm .seuil{height:auto}
.rm .seuil__scene{position:relative;height:100vh;height:100svh}
.rm .bemvindo{margin-top:0}
.rm .defile__track{animation:none}
.rm .menu{transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* WordPress */
.skip{position:absolute;left:-9999px;top:0;z-index:300;background:var(--ink);color:var(--on-ink);padding:12px 18px;font:500 12px/1 var(--display);letter-spacing:.18em;text-transform:uppercase}
.skip:focus{left:16px;top:16px}
.admin-bar .nav{top:32px}
@media screen and (max-width:782px){.admin-bar .nav{top:46px}}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-msg{margin:0;font-size:14px;color:var(--alerte);text-align:center}
.btn[disabled]{opacity:.6;cursor:progress}
.soirees__vide{margin:40px 0 0;padding-top:24px;border-top:1px solid var(--line);color:var(--ink-soft)}
.page-simple{padding-block:calc(var(--nav-h) + clamp(56px,8vw,110px)) clamp(80px,10vw,140px)}
.page-simple .h2{margin:0 0 40px}
.contenu{max-width:42em}
.contenu a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:3px}
.contenu img{height:auto}
.contenu h2,.contenu h3{font-family:var(--display);font-weight:300;letter-spacing:-.02em;line-height:1.2}
.entree+.entree{margin-top:80px;padding-top:56px;border-top:1px solid var(--line)}

/* Textes modifiables, formulaire complet */
.sec-head__txt{color:var(--on-ink-soft)}
.res__lead{margin-top:28px}
.infos__large{grid-column:1/-1}
.champ--occ{border:0;padding:0;margin:0}
.champ--occ legend{color:var(--ink-soft);margin-bottom:10px;padding:0}
.champ textarea{font:400 17px/1.5 var(--text);color:var(--ink);background:transparent;border:0;border-bottom:1px solid rgba(20,18,16,.35);border-radius:0;padding:10px 0;width:100%;min-width:0;resize:vertical;min-height:48px}
.champ textarea:focus{outline:none;border-bottom-color:var(--ink);box-shadow:0 1px 0 var(--ink)}
.plats__vide{text-align:center;color:var(--ink-soft);margin:40px 0 0}
.customize-partial-edit-shortcut button{z-index:70}
