

@font-face{
  font-family:'PoliceTitre';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url('police-titre.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,
    U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'PoliceLibelle';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url('police-libelle.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,
    U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{

  --fond:#14100c;
  --nuit:#0d0a07;               /* le creux du mur : bandeau, ombre du sol */
  --encre:#f2ece2;              /* texte courant */
  --encre-douce:#b6ab9b;        /* texte secondaire — jamais plus sombre */
  --creme:#f2ece2;
  --creme-doux:#bdb2a2;
  --marque:#cf9a3e;             /* LAITON PATINÉ : boutons, filets, chiffres */
  --marque-fonce:#e8bf7e;       /* survol : sur fond sombre, on ÉCLAIRE */
  --laiton:#cf9a3e;
  --laiton-clair:#e8bf7e;
  --texte-bouton:#17100a;       /* texte sur laiton — jamais du blanc (2,4:1) */
  --filet:#372c20;              /* filets et bordures : décor, jamais du texte */
  --wa:#25d366;                 /* vert WhatsApp : texte FONCÉ dessus */

  --pole-rouge:#b02231;
  --pole-bleu:#20518c;

  --carreaux:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1440' height='1440' viewBox='0 0 1440 1440'%3E%3Cfilter id='r' filterUnits='userSpaceOnUse' x='-40' y='-40' width='1520' height='1520'%3E%3CfeDropShadow dx='0' dy='2' stdDeviation='2.2' flood-color='%23000000' flood-opacity='0.36'/%3E%3CfeGaussianBlur stdDeviation='2'/%3E%3C/filter%3E%3Cg filter='url(%23r)'%3E%3Cpolygon points='41.7,-129.9 200.7,-96.8 114.9,68.0 -6.3,37.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='203.0,-95.8 281.3,-84.0 271.2,73.7 117.2,68.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='284.8,-85.0 507.9,-183.0 487.2,-3.0 273.9,74.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='510.1,-182.5 611.7,-99.9 596.3,77.3 490.9,-3.4' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='614.8,-99.5 747.7,-98.3 781.6,94.3 598.6,77.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='751.0,-99.4 950.8,-172.3 1164.8,-81.4 1085.6,9.3 907.9,46.3 784.8,94.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1167.5,-79.7 1237.9,-5.4 1293.1,126.9 1304.2,294.4 1169.9,176.1 1089.5,11.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1481.7,-129.9 1640.7,-96.8 1554.9,68.0 1433.7,37.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-143.5,129.6 -8.7,40.3 -7.4,204.1 27.4,320.7 -116.2,375.7 -133.3,294.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-6.3,39.6 116.0,72.3 270.4,76.6 290.0,234.6 150.8,253.5 -3.3,202.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='274.3,76.6 487.7,-0.5 431.8,187.2 293.1,233.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='490.7,-0.5 597.9,81.4 781.0,96.6 798.7,282.1 665.6,234.8 435.5,188.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='784.9,97.2 906.3,50.4 980.4,207.3 801.5,281.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='908.6,49.9 1087.2,12.1 1166.7,178.3 1150.0,416.2 999.9,266.7 984.5,207.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1296.5,129.6 1431.3,40.3 1432.6,204.1 1467.4,320.7 1323.8,375.7 1306.7,294.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1433.7,39.6 1556.0,72.3 1710.4,76.6 1730.0,234.6 1590.8,253.5 1436.7,202.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-3.7,204.8 149.0,256.3 113.8,324.4 30.5,320.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='152.2,257.6 290.9,237.7 302.3,392.3 302.4,530.3 168.7,561.5 117.2,327.2' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='293.8,236.7 432.3,190.7 497.8,316.1 305.7,390.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='435.3,189.9 664.3,237.4 637.4,318.6 501.6,315.2' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='667.6,238.7 798.4,284.3 770.1,431.3 641.4,319.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='802.6,283.8 980.8,209.7 996.6,269.1 772.5,431.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1169.9,180.0 1303.0,297.0 1321.2,376.5 1152.3,416.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1436.3,204.8 1589.0,256.3 1553.8,324.4 1470.5,320.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-115.1,379.0 27.8,324.1 41.9,439.5 -105.1,583.2' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='30.2,324.1 114.6,328.2 167.0,561.6 46.0,438.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='306.6,393.2 498.4,318.2 472.2,434.2 304.8,530.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='501.0,318.6 637.6,321.3 586.3,534.9 476.4,433.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='640.0,321.9 769.1,434.3 799.3,594.4 588.8,535.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='773.2,433.6 997.6,270.4 965.1,504.5 801.8,594.2' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='999.4,270.6 1148.7,418.7 1103.9,572.9 968.8,504.4' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1152.5,419.7 1321.6,379.4 1332.4,583.7 1106.5,573.7' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1324.9,379.0 1467.8,324.1 1481.9,439.5 1334.9,583.2' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1470.2,324.1 1554.6,328.2 1607.0,561.6 1486.0,438.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-104.1,586.2 43.0,441.7 -38.8,622.1 -122.8,795.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='44.8,441.9 165.8,563.8 180.5,663.0 -34.9,622.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='169.8,564.8 302.4,534.2 368.2,735.5 184.0,663.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='305.5,532.8 474.5,436.8 584.8,537.9 661.1,655.6 502.2,590.7 371.0,735.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='588.9,537.9 800.0,598.2 965.1,506.9 944.9,634.7 784.2,791.9 665.3,655.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='968.1,507.6 1102.7,576.0 1113.9,734.3 949.3,634.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1106.3,576.4 1332.2,586.5 1315.1,795.8 1117.0,735.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1335.9,586.2 1483.0,441.7 1401.2,622.1 1317.2,795.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1484.8,441.9 1605.8,563.8 1620.5,663.0 1405.1,622.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-121.4,797.3 -36.3,625.4 180.3,665.8 200.6,862.4 -22.7,806.1 -123.4,935.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='183.3,666.3 367.7,738.0 303.5,877.2 204.0,861.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='371.9,737.3 503.0,593.5 451.5,757.4 305.7,877.4' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='505.5,593.4 662.6,658.6 782.0,793.8 753.1,936.6 632.7,897.8 455.7,758.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='786.3,794.2 947.2,637.1 1113.0,737.0 1142.1,832.4 986.5,849.0 756.2,937.2' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1116.2,738.0 1314.9,799.2 1313.1,936.2 1293.2,1080.4 1122.4,1039.6 1145.8,834.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1318.6,797.3 1403.7,625.4 1620.3,665.8 1640.6,862.4 1417.3,806.1 1316.6,935.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-122.6,937.0 -25.1,809.4 42.9,932.5 -144.8,1080.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-22.8,808.7 200.6,864.1 150.8,1015.2 47.0,931.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='203.6,865.3 303.1,881.0 332.7,1077.4 153.7,1016.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='305.7,880.9 453.0,760.3 476.5,966.2 477.1,1144.9 335.6,1171.8 335.4,1077.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='454.8,760.0 630.6,900.6 684.8,1059.2 480.4,964.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='634.7,900.9 756.0,939.9 985.8,852.1 903.1,1001.3 836.8,1115.3 688.1,1059.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='988.8,852.7 1142.7,834.3 1119.9,1039.6 907.2,1000.7' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1317.4,937.0 1414.9,809.4 1482.9,932.5 1295.2,1080.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1417.2,808.7 1640.6,864.1 1590.8,1015.2 1487.0,931.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-143.8,1082.6 43.8,934.1 25.3,1065.9 -194.4,1274.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='45.9,934.4 150.0,1018.3 135.8,1210.8 29.6,1065.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='153.3,1018.8 332.0,1080.1 332.9,1172.8 138.0,1211.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='479.4,967.3 684.6,1062.3 638.8,1221.6 612.9,1336.6 510.6,1253.6 480.4,1147.2' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='687.4,1062.8 835.4,1118.3 812.6,1247.3 642.4,1221.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='839.3,1118.5 904.6,1003.9 906.4,1169.3 814.9,1247.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='906.9,1003.1 1119.3,1042.5 1154.0,1175.9 909.9,1169.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1122.6,1043.1 1292.2,1083.7 1243.7,1273.9 1157.7,1175.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1296.2,1082.6 1483.8,934.1 1465.3,1065.9 1245.6,1274.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1485.9,934.4 1590.0,1018.3 1575.8,1210.8 1469.6,1065.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-193.9,1277.2 26.6,1067.4 38.7,1308.9 -9.2,1476.3 -144.3,1565.8 -199.6,1431.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='28.8,1067.1 138.0,1214.4 332.8,1174.7 281.2,1352.7 201.9,1340.0 42.7,1307.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='336.5,1175.3 476.7,1148.4 507.2,1254.9 284.3,1352.7' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='642.0,1224.6 811.9,1249.7 747.5,1338.2 615.3,1337.7' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='816.1,1249.4 906.9,1172.6 948.8,1265.2 750.7,1338.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='910.0,1171.8 1155.0,1179.0 1242.1,1276.0 1237.2,1430.8 1165.7,1356.4 953.2,1265.7' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1246.1,1277.2 1466.6,1067.4 1478.7,1308.9 1430.8,1476.3 1295.7,1565.8 1240.4,1431.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1468.8,1067.1 1578.0,1214.4 1772.8,1174.7 1721.2,1352.7 1641.9,1340.0 1482.7,1307.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='41.7,1310.1 200.7,1343.2 114.9,1508.0 -6.3,1477.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='203.0,1344.2 281.3,1356.0 271.2,1513.7 117.2,1508.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='284.8,1355.0 507.9,1257.0 487.2,1437.0 273.9,1514.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='510.1,1257.5 611.7,1340.1 596.3,1517.3 490.9,1436.6' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='614.8,1340.5 747.7,1341.7 781.6,1534.3 598.6,1517.8' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='751.0,1340.6 950.8,1267.7 1164.8,1358.6 1085.6,1449.3 907.9,1486.3 784.8,1534.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1167.5,1360.3 1237.9,1434.6 1293.1,1566.9 1304.2,1734.4 1169.9,1616.1 1089.5,1451.1' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1481.7,1310.1 1640.7,1343.2 1554.9,1508.0 1433.7,1477.0' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-143.5,1569.6 -8.7,1480.3 -7.4,1644.1 27.4,1760.7 -116.2,1815.7 -133.3,1734.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='-6.3,1479.6 116.0,1512.3 270.4,1516.6 290.0,1674.6 150.8,1693.5 -3.3,1642.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='274.3,1516.6 487.7,1439.5 431.8,1627.2 293.1,1673.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='490.7,1439.5 597.9,1521.4 781.0,1536.6 798.7,1722.1 665.6,1674.8 435.5,1628.3' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='784.9,1537.2 906.3,1490.4 980.4,1647.3 801.5,1721.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='908.6,1489.9 1087.2,1452.1 1166.7,1618.3 1150.0,1856.2 999.9,1706.7 984.5,1647.5' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1296.5,1569.6 1431.3,1480.3 1432.6,1644.1 1467.4,1760.7 1323.8,1815.7 1306.7,1734.9' fill='rgba(255,238,214,0.027)'/%3E%3Cpolygon points='1433.7,1479.6 1556.0,1512.3 1710.4,1516.6 1730.0,1674.6 1590.8,1693.5 1436.7,1642.5' fill='rgba(255,238,214,0.027)'/%3E%3C/g%3E%3C/svg%3E");

  --police-texte:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --police-titre:'PoliceTitre',"Arial Narrow","Helvetica Neue Condensed",
    "Oswald",Impact,sans-serif;
  --police-libelle:'PoliceLibelle',"Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;

  --rayon:8px;
  --cadre-ep:4px;                                    /* le cadre du miroir */
  --rayon-bouton:2rem;          /* pilule : un bouton n'est jamais un rectangle brut */
  --largeur:1120px;             /* la colonne de lecture */
  --gouttiere:clamp(1rem,3vw,2rem);
  --hauteur-bandeau:82svh;
  --assise:3px;

  --ombre:0 1px 2px rgba(0,0,0,.34),0 14px 32px rgba(0,0,0,.42);
  --ombre-douce:0 1px 2px rgba(0,0,0,.26),0 10px 24px rgba(0,0,0,.30);
  --ombre-survol:0 1px 2px rgba(0,0,0,.34),0 22px 44px rgba(0,0,0,.50);
}

:root{--cadre-bord:#6d5327}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}

body{
  margin:0;
  position:relative;
  font-family:var(--police-texte);
  font-size:clamp(1rem,.95rem + .2vw,1.08rem);   /* jamais sous 16 px */
  line-height:1.62;
  color:var(--encre);
  background-color:var(--fond);
  background-image:var(--carreaux);
  -webkit-font-smoothing:antialiased;
}
img,svg,video{max-width:100%;height:auto;display:block}
figure{margin:0;max-width:100%}   /* une image cassée ne fait pas déborder la page */
h1,h2,h3{font-family:var(--police-titre);font-weight:500;line-height:1.1;
  margin:0 0 .6em;text-wrap:balance}
h1{font-size:clamp(2.5rem,1.5rem + 4.2vw,4.4rem);letter-spacing:.005em;text-transform:uppercase}
h2{font-size:clamp(1.8rem,1.15rem + 2.5vw,2.8rem);letter-spacing:.01em;text-transform:uppercase}
h3{font-size:clamp(1.05rem,1rem + .38vw,1.22rem);letter-spacing:.02em}
p{margin:0 0 1em}
.hero__intro,.contact__phrase,.poste p,.degrade__phrase{max-width:58ch}
ul,ol{margin:0;padding:0;list-style:none}
a{color:inherit;text-decoration:none}
main a:not(.bouton){text-decoration:underline;text-underline-offset:.15em}
main a[href^="tel:"]:not(.bouton),main a[href^="mailto:"]:not(.bouton){
  display:inline-block;padding-block:.25rem}
:focus-visible{outline:3px solid var(--laiton);outline-offset:2px;border-radius:2px}

.bande{width:100%;max-width:var(--largeur);margin-inline:auto;padding-inline:var(--gouttiere)}

.saut-contenu{position:absolute;top:-6rem;left:.5rem;z-index:50;background:var(--nuit);
  color:var(--encre);padding:.6rem 1rem;border-radius:var(--rayon)}
.saut-contenu:focus{top:.5rem}

.ruban{margin:0;padding:.5rem var(--gouttiere);text-align:center;font-size:.85rem;
  font-family:var(--police-libelle);letter-spacing:.02em;
  background:var(--nuit);color:var(--laiton-clair);       /* 10,99 */
  position:relative;z-index:2}
.ruban a,.pied a{display:inline-block;padding-block:.2rem;text-decoration:underline}

.bouton{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  min-height:46px;padding:.8rem 1.6rem;border:0;border-radius:var(--rayon-bouton);
  font-family:var(--police-libelle);font-size:.92rem;font-weight:500;
  text-transform:uppercase;letter-spacing:.1em;text-align:center;cursor:pointer;
  white-space:nowrap;font-variant-numeric:lining-nums tabular-nums;
  transition:filter .24s ease,box-shadow .24s ease;
}
.bouton--plein{
  background:linear-gradient(180deg,var(--marque-fonce) 0%,var(--marque) 100%);
  color:var(--texte-bouton);                                       /* 7,48 */
  box-shadow:0 1px 0 rgba(255,255,255,.3) inset,var(--ombre-douce)}
.bouton--plein:hover,.bouton--plein:focus-visible{
  filter:brightness(1.08);
  box-shadow:0 1px 0 rgba(255,255,255,.34) inset,var(--ombre-survol)}
.bouton--wa{background:var(--wa);color:#11221a}   /* texte foncé : blanc sur #25d366 = 1,98:1 */
.bouton--wa:hover,.bouton--wa:focus-visible{filter:brightness(.94)}
.bouton--grand{min-height:54px;padding:.95rem 1.9rem;font-size:.98rem}
@media (max-width:30rem){
  .hero__actions{display:grid;grid-template-columns:1fr}
  .hero__actions .bouton{width:100%;padding-inline:1rem}
}
@media (max-width:26rem){.bouton--grand{font-size:.82rem;letter-spacing:.05em;padding:.9rem 1rem}}
@media (max-width:22rem){.bouton--grand{font-size:.76rem;letter-spacing:.03em;padding:.85rem .7rem}}

.mobile-seulement{display:inline-flex}
@media (min-width:48rem){.mobile-seulement{display:none}}

.entete{position:sticky;top:0;z-index:30;
  background:color-mix(in srgb,var(--nuit) 86%,transparent);
  border-bottom:1px solid color-mix(in srgb,var(--creme) 16%,transparent);
  box-shadow:0 14px 34px -22px rgba(0,0,0,.85)}
@supports (backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px)){
  .entete{-webkit-backdrop-filter:blur(16px) saturate(1.15);backdrop-filter:blur(16px) saturate(1.15)}
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;
  flex-wrap:wrap;min-height:66px;padding-block:.5rem}
.marque{display:flex;flex-direction:column;line-height:1.15;min-width:0;flex:1 1 0}
.marque__nom{font-family:var(--police-titre);font-weight:500;
  font-size:clamp(1rem,.86rem + .7vw,1.28rem);
  text-transform:uppercase;letter-spacing:.08em;color:var(--creme);   /* 11,77 au pire cas */
  overflow-wrap:break-word}
.marque__sous{font-family:var(--police-libelle);font-weight:500;font-size:.7rem;
  color:var(--laiton-clair);                                         /* 8,03 au pire cas */
  text-transform:uppercase;letter-spacing:.2em;margin-top:.22rem}

#nav-toggle{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;
  width:46px;height:46px;padding:0 11px;background:none;
  border:1px solid color-mix(in srgb,var(--creme) 16%,transparent);
  border-radius:var(--rayon);cursor:pointer;flex:0 0 auto}
.nav-toggle__trait{display:block;height:2px;background:var(--laiton-clair);border-radius:1px}

#nav-links{display:flex;flex-direction:column;gap:.15rem;width:100%;
  border-top:1px solid color-mix(in srgb,var(--creme) 16%,transparent);
  padding-top:.5rem;margin-top:.35rem;padding-bottom:.6rem;flex-basis:100%}
#nav-links a{display:flex;align-items:center;min-height:46px;padding:.5rem .25rem;
  font-family:var(--police-libelle);font-weight:500;font-size:.82rem;
  text-transform:uppercase;letter-spacing:.14em;
  color:var(--creme-doux);                                           /* 6,62 au pire cas */
  transition:color .2s ease}
#nav-links a:hover,#nav-links a:focus-visible{color:var(--creme)}
#nav-links a.bouton{justify-content:center;letter-spacing:.1em;
  color:var(--texte-bouton);margin-top:.4rem}
.entete :focus-visible{outline-color:var(--laiton-clair)}
/* ⚠ 23.09.2026 : le menu s'ouvrait en poussant la barre, donc en faisant
   sauter toute la page (l'entête est sticky). Il se déploie maintenant EN
   SUPERPOSITION sous la barre, et l'ouverture est animée. Correctif propagé
   depuis le gabarit par outils/menu-fluide.mjs. */
.js #nav-links{
  display:flex;
  position:absolute; top:100%; left:0; right:0;
  width:auto; margin:0;
  padding:.35rem var(--gouttiere,1rem) .9rem;
  background:var(--fond,#fff);
  border-bottom:1px solid var(--filet,rgba(0,0,0,.12));
  box-shadow:0 12px 26px -16px rgba(0,0,0,.4);
  opacity:0; visibility:hidden; transform:translateY(-10px);
  transition:opacity .2s ease,
             transform .26s cubic-bezier(.4,0,.2,1),
             visibility 0s linear .26s;
}
.js #nav-links.is-open{
  opacity:1; visibility:visible; transform:none;
  transition:opacity .2s ease,
             transform .26s cubic-bezier(.4,0,.2,1),
             visibility 0s;
}
/* Mouvement réduit : on retire le DÉPLACEMENT, pas la transition. */
@media (prefers-reduced-motion:reduce){
  .js #nav-links{transform:none;transition:opacity .14s linear,visibility 0s linear .14s}
  .js #nav-links.is-open{transition:opacity .14s linear,visibility 0s}
}
.nav > #nav-toggle{flex:none}

@media (min-width:62rem){
  #nav-toggle{display:none}
  #nav-links,.js #nav-links{display:flex;flex-direction:row;align-items:center;
    gap:clamp(.9rem,2vw,1.9rem);width:auto;flex-basis:auto;padding-bottom:0;
    border-top:0;padding-top:0;margin-top:0;position:static;opacity:1;visibility:visible;transform:none;background:none;border:0;box-shadow:none;padding:0;transition:none}
  .marque{flex:0 1 auto}
  #nav-links a{padding:.5rem .3rem}
  #nav-links a.bouton{margin-top:0;padding:.7rem 1.4rem;min-height:44px}
  #nav-links li:not(:last-child) a{position:relative}
  #nav-links li:not(:last-child) a::after{content:"";position:absolute;
    left:.3rem;right:.3rem;bottom:.5rem;height:2px;background:var(--laiton-clair);
    transform:scaleX(0);transform-origin:left;transition:transform .28s ease}
  #nav-links li:not(:last-child) a:hover::after,
  #nav-links li:not(:last-child) a:focus-visible::after{transform:scaleX(1)}
}

.entete-section{margin-bottom:clamp(1.6rem,3.5vw,2.4rem)}
.entete-section h2{margin:0 0 .85rem}
.entete-section--centre{text-align:center}
.sur{font-family:var(--police-libelle);font-weight:500;font-size:.72rem;
  text-transform:uppercase;letter-spacing:.26em;color:var(--laiton);margin:0 0 .8rem}  /* 5,67 au pire cas */
.assise{display:block;height:var(--assise);width:min(190px,100%);
  background:linear-gradient(90deg,var(--laiton) 0 52px,var(--filet) 52px 100%);
  transform-origin:left;margin-top:.2rem}
.entete-section--centre .assise{margin-inline:auto;transform-origin:center;
  background-image:linear-gradient(var(--laiton),var(--laiton)),
    linear-gradient(var(--filet),var(--filet));
  background-size:52px 100%,100% 100%;
  background-position:center top,left top;
  background-repeat:no-repeat,no-repeat}

.sec{position:relative;padding-block:clamp(3.2rem,7.5vw,5.4rem)}
.sec > .bande{position:relative;z-index:1}
body::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(90deg,
    rgba(0,0,0,.30) 0%,rgba(0,0,0,.10) 15%,
    transparent 34%,transparent 66%,
    rgba(0,0,0,.10) 85%,rgba(0,0,0,.30) 100%);
  background-repeat:no-repeat}
.sec--contact{padding-bottom:clamp(2.4rem,5.5vw,3.6rem)}

.mot-mur{display:none}
@media (min-width:95rem){
  .mot-mur{display:block;position:absolute;top:50%;
    font-family:var(--police-titre);font-weight:500;
    font-size:clamp(2rem,2.3vw,2.9rem);line-height:1;
    text-transform:uppercase;letter-spacing:.24em;
    color:color-mix(in srgb,var(--creme) 9%,transparent);
    writing-mode:vertical-rl;pointer-events:none;user-select:none}
  .mot-mur--gauche{left:clamp(.4rem,1.6vw,2rem);transform:translateY(-50%) rotate(180deg)}
  .mot-mur--droite{right:clamp(.4rem,1.6vw,2rem);transform:translateY(-50%)}
}

.cadre{position:relative;z-index:1;border-radius:var(--rayon);overflow:hidden;
  border:var(--cadre-ep) solid var(--cadre-bord);
  box-shadow:var(--ombre-douce),inset 0 1px 0 rgba(255,255,255,.12)}
.cadre img{width:100%}

.hero{position:relative;display:flex;align-items:flex-end;
  min-height:min(var(--hauteur-bandeau),46rem);
  padding-block:clamp(3rem,9vw,5rem) clamp(4.5rem,11vw,7rem);
  overflow:hidden;background:var(--nuit)}
.hero__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  object-position:center 46%}
.hero__voile{position:absolute;inset:0;
  background:color-mix(in srgb,var(--nuit) 58%,transparent)}
.hero::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(90deg,
      rgba(0,0,0,.20) 0%,rgba(0,0,0,.05) 26%,
      transparent 44%,transparent 56%,
      rgba(0,0,0,.05) 74%,rgba(0,0,0,.20) 100%);
  background-repeat:no-repeat;
}
.hero__bande{position:relative;z-index:2;width:100%}

.hero__verre{
  position:relative;max-width:47rem;
  padding:clamp(1.5rem,4vw,2.6rem);
  padding-left:calc(clamp(1.5rem,4vw,2.6rem) + clamp(2.4rem,5vw,3.2rem));
  border-radius:var(--rayon);
  border:1px solid rgba(255,255,255,.14);
  background:color-mix(in srgb,var(--nuit) 82%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 26px 64px -28px rgba(0,0,0,.8);
  color:var(--creme);
  animation:verre-monte .7s cubic-bezier(.2,.75,.25,1) both;
}
@supports (backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px)){
  .hero__verre{-webkit-backdrop-filter:blur(16px) saturate(1.15);
    backdrop-filter:blur(16px) saturate(1.15)}
}
@keyframes verre-monte{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes paraitre{from{opacity:0}to{opacity:1}}

.hero__etiquette{font-family:var(--police-libelle);font-weight:500;font-size:.74rem;
  text-transform:uppercase;letter-spacing:.26em;
  color:var(--laiton-clair);margin:0 0 1rem}                          /* 6,96 au pire cas */
.hero__titre{color:var(--creme);margin:0;line-height:1.02}            /* 10,21 au pire cas */
.hero__accent{display:block;font-family:var(--police-titre);font-weight:500;
  font-size:clamp(2.5rem,1.5rem + 4.2vw,4.4rem);line-height:1.02;
  text-transform:uppercase;letter-spacing:.005em;
  color:var(--laiton-clair);margin:0 0 1.1rem;text-wrap:balance}      /* 6,96 au pire cas */
@supports (background-clip:text) or (-webkit-background-clip:text){
  .hero__accent{background:linear-gradient(180deg,var(--laiton-clair) 0%,var(--laiton) 100%);
    -webkit-background-clip:text;background-clip:text;color:transparent}
}
.hero__intro{color:var(--creme-doux);font-size:1.05rem;margin:0}       /* 5,75 au pire cas */
.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.7rem}

.poteau{position:absolute;left:clamp(.9rem,2vw,1.15rem);
  top:clamp(1.4rem,3.6vw,2.2rem);bottom:clamp(1.4rem,3.6vw,2.2rem);
  width:clamp(1.5rem,3vw,1.9rem);
  animation:paraitre .9s ease .15s both}
.poteau__tube{position:absolute;inset:0;overflow:hidden;
  border-radius:999px;background:var(--nuit);
  border:1px solid color-mix(in srgb,var(--creme) 22%,transparent);
  box-shadow:0 8px 20px -8px rgba(0,0,0,.8)}
.poteau__helice{position:absolute;left:-40%;right:-40%;top:-70%;height:280%;
  background:repeating-linear-gradient(180deg,
    var(--creme) 0 14px,
    var(--pole-rouge) 14px 28px,
    var(--creme) 28px 42px,
    var(--pole-bleu) 42px 56px);
  transform:skewY(-22deg);
  animation:poteau-monte 3.6s linear infinite}
@keyframes poteau-monte{
  from{transform:skewY(-22deg) translateY(0)}
  to{transform:skewY(-22deg) translateY(-56px)}
}
.poteau__tube::after{content:"";position:absolute;inset:0;border-radius:999px;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.5) 0%,rgba(255,255,255,.3) 30%,
    rgba(0,0,0,.14) 62%,rgba(0,0,0,.45) 100%)}
.poteau::before,.poteau::after{content:"";position:absolute;left:-2px;right:-2px;
  height:9px;border-radius:4px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--creme) 62%,transparent),
    color-mix(in srgb,var(--filet) 90%,transparent))}
.poteau::before{top:-7px}
.poteau::after{bottom:-7px}

.fauteuil{display:grid;gap:clamp(1.6rem,4vw,2.8rem)}
@media (min-width:62rem){
  .fauteuil{grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);align-items:center}
}
.fauteuil__visuel img{aspect-ratio:3/2;object-fit:cover;object-position:center 42%}

.postes{display:grid}
.poste{display:grid;grid-template-columns:auto minmax(0,1fr);
  column-gap:clamp(.8rem,2vw,1.1rem);
  padding-block:clamp(.9rem,2.2vw,1.15rem);
  border-top:1px solid var(--filet)}
.poste:first-child{border-top:0;padding-top:0}
.poste__num{grid-row:1 / span 2;position:relative;padding-left:.95rem;padding-top:.32rem;
  font-family:var(--police-libelle);font-weight:500;font-size:.78rem;letter-spacing:.1em;
  font-variant-numeric:lining-nums tabular-nums;color:var(--laiton)}   /* 5,67 au pire cas */
.poste__num::before{content:"";position:absolute;left:0;top:.78em;width:7px;height:7px;
  background:var(--laiton);opacity:.5;transition:opacity .24s ease}
.poste:hover .poste__num::before{opacity:1}
.poste h3{grid-column:2;margin:0 0 .3rem;color:var(--encre)}
.poste p{grid-column:2;margin:0;color:var(--encre-douce);font-size:.97rem}  /* 6,31 au pire cas */

.degrade__mot{display:grid;gap:0 clamp(1.6rem,4vw,2.6rem)}
@media (min-width:56rem){.degrade__mot{grid-template-columns:repeat(2,minmax(0,1fr))}}
.degrade__phrase{color:var(--creme-doux);margin:0}                     /* 6,83 au pire cas */
.degrade__phrase + .degrade__phrase{margin-top:1em}
@media (min-width:56rem){.degrade__phrase + .degrade__phrase{margin-top:0}}
.degrade__repere{display:flex;flex-wrap:wrap;align-items:baseline;
  gap:.5rem clamp(1rem,3vw,2.4rem);margin:clamp(1.6rem,4vw,2.4rem) 0 0;
  padding-top:clamp(.9rem,2.2vw,1.3rem);
  border-top:1px solid var(--filet)}
.degrade__repere b{font-family:var(--police-libelle);font-weight:600;
  font-size:clamp(1.6rem,1.1rem + 1.6vw,2.4rem);line-height:1;
  color:var(--laiton);letter-spacing:.01em;
  font-variant-numeric:lining-nums tabular-nums}
.degrade__repere span{font-family:var(--police-libelle);font-size:.7rem;
  text-transform:uppercase;letter-spacing:.2em;color:var(--creme-doux)}

.rasage{display:grid;gap:clamp(1.8rem,4vw,2.8rem)}
@media (min-width:62rem){
  .rasage{grid-template-columns:minmax(0,1.32fr) minmax(0,.68fr);align-items:center}
}
.temps{display:grid;gap:clamp(1.3rem,3vw,2rem) clamp(1.4rem,3.5vw,2.4rem)}
@media (min-width:40rem){.temps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.temps__item{position:relative;padding-top:clamp(.7rem,1.8vw,1rem);
  border-top:1px solid var(--filet)}
.temps__num{display:block;font-family:var(--police-libelle);font-weight:600;
  font-size:clamp(1.7rem,1.2rem + 1.5vw,2.3rem);line-height:1;
  letter-spacing:.02em;color:var(--laiton);margin-bottom:.55rem;
  font-variant-numeric:lining-nums tabular-nums}                       /* 5,67 au pire cas */
.temps__nom{margin:0 0 .35rem;color:var(--encre)}
.temps__note{margin:0;font-size:.94rem;line-height:1.5;color:var(--encre-douce)}
.js .temps__item.reveal{transition-delay:calc(var(--i,0) * 90ms)}
.rasage__visuel img{aspect-ratio:3/4;object-fit:cover;object-position:center 45%}
@media (max-width:61.99rem){
  .rasage__visuel{max-width:22rem;margin-inline:auto}
}

.galerie{display:grid;gap:clamp(1rem,2.4vw,1.6rem)}
.galerie img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:center center}
.js .galerie .reveal{transition-delay:calc(var(--i,0) * 110ms)}
@media (min-width:52rem){
  .galerie{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  .galerie__a{grid-column:1}
  .galerie__b{grid-column:2}
}

.salon{position:relative;padding-block:clamp(3rem,7vw,4.6rem) 0}
.salon > .bande{position:relative;z-index:1}
.salon__photo{position:relative;width:100%;margin:clamp(1.8rem,4vw,2.6rem) 0 0;
  background:transparent}
.salon__photo img{width:100%;aspect-ratio:3/2;max-height:34rem;object-fit:cover;object-position:center 56%}
@media (min-width:48rem){.salon__photo img{aspect-ratio:21/9}}
.salon__photo::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.05) 22%,
      transparent 42%,transparent 58%,rgba(0,0,0,.05) 78%,rgba(0,0,0,.20) 100%)}

.contact__interieur{text-align:center}
.contact__phrase{font-size:1.04rem;color:var(--encre);margin:0 auto .4rem;max-width:38ch}
.contact__appel{margin:clamp(1.2rem,3vw,1.8rem) auto 0}

.fiche{max-width:34rem;margin:clamp(1.6rem,3.5vw,2.2rem) auto 0;text-align:left;
  padding-top:clamp(1.2rem,3vw,1.6rem);border-top:1px solid var(--filet)}
.fiche__titre{margin:0 0 .6rem;text-align:center;
  font-family:var(--police-libelle);font-weight:500;font-size:.7rem;
  text-transform:uppercase;letter-spacing:.2em;color:var(--encre-douce)}   /* 6,31 */
.tableau{margin:0;display:grid}
.tableau__ligne{display:grid;grid-template-columns:auto minmax(0,1fr);
  align-items:baseline;gap:0 .9rem;
  padding:clamp(.45rem,1.5vw,.62rem) .5rem;border-radius:var(--rayon)}
.tableau__ligne + .tableau__ligne{border-top:1px solid var(--filet)}
.tableau dt{color:var(--encre-douce);font-family:var(--police-libelle);
  font-weight:500;font-size:.88rem}                                        /* 6,31 */
.tableau dd{margin:0;min-width:0;color:var(--encre);text-align:right;      /* 12,14 */
  font-variant-numeric:lining-nums tabular-nums}
.tableau dd a[href^="tel:"]{display:inline-block;padding-block:.35rem;
  font-family:var(--police-libelle);font-weight:500;font-size:1.16rem;
  color:var(--laiton);text-decoration:none;                                /* 5,67 */
  border-bottom:1px solid color-mix(in srgb,var(--laiton) 40%,transparent);
  transition:color .24s ease,border-color .24s ease}
.tableau dd a[href^="tel:"]:hover,.tableau dd a[href^="tel:"]:focus-visible{
  color:var(--marque-fonce);border-bottom-color:var(--marque-fonce)}
.tableau__ligne--aujourdhui{background:color-mix(in srgb,var(--laiton) 10%,transparent)}
.tableau__ligne--aujourdhui dt{color:var(--laiton)}                        /* 5,67 */
.tableau--horaires .tableau__ligne--ferme dd{color:var(--encre-douce)}     /* 6,31 */
.tableau__aujourdhui{margin-left:.5rem;padding:.12rem .45rem;border-radius:999px;
  background:var(--laiton);color:var(--texte-bouton);                      /* 7,48 */
  font-family:var(--police-libelle);font-weight:500;font-size:.6rem;
  text-transform:uppercase;letter-spacing:.12em;vertical-align:.08em}

.pied{position:relative;padding-block:clamp(2.6rem,6vw,3.8rem);color:var(--creme)}
.pied__interieur{position:relative;z-index:1;text-align:center}
.assise--pied{margin:0 auto clamp(1.2rem,3vw,1.6rem);transform-origin:center;
  background-image:linear-gradient(var(--laiton),var(--laiton)),
    linear-gradient(color-mix(in srgb,var(--laiton) 28%,transparent),
      color-mix(in srgb,var(--laiton) 28%,transparent));
  background-size:52px 100%,100% 100%;
  background-position:center top,left top;
  background-repeat:no-repeat,no-repeat}
.pied__nom{margin:0 0 .45rem;font-family:var(--police-titre);font-weight:500;
  font-size:clamp(1.4rem,1.1rem + 1vw,1.9rem);line-height:1.2;
  text-transform:uppercase;letter-spacing:.14em;color:var(--creme);
  overflow-wrap:break-word}                                                /* 16,11 */
.pied__lieu{margin:0;font-family:var(--police-libelle);font-weight:500;font-size:.7rem;
  text-transform:uppercase;letter-spacing:.22em;color:var(--creme-doux)}    /* 9,06 */
.pied__bas{font-size:.82rem;margin-top:clamp(1.6rem,3.8vw,2.2rem);
  padding-top:clamp(1.1rem,2.5vw,1.5rem);
  border-top:1px solid color-mix(in srgb,var(--laiton) 22%,transparent)}
.pied p{margin:0}
.pied__credit{color:var(--creme-doux)}                                      /* 9,06 */

.js .reveal{opacity:0;transform:translateY(16px);
  transition:opacity .55s ease,transform .55s ease}
.js .assise.reveal{transform:scaleX(0);
  transition:opacity .3s ease,transform .8s cubic-bezier(.22,.8,.25,1) .1s}
.js .reveal.est-vu{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal{transform:none;transition:opacity .55s ease}
  .js .reveal.est-vu{transform:none}
  .js .assise.reveal{transform:none;transition:opacity .8s ease .1s}
  .hero__verre{animation-name:paraitre}
  .poteau__helice{animation:none}
  .bouton{transition:filter .24s ease,box-shadow .24s ease}
  .poste:hover .poste__num::before{opacity:1}
  #nav-links li:not(:last-child) a::after{transform:scaleX(1);opacity:0;
    transition:opacity .25s ease}
  #nav-links li:not(:last-child) a:hover::after,
  #nav-links li:not(:last-child) a:focus-visible::after{opacity:1}
}

@media (max-width:600px){
  .hero{display:block;min-height:0;padding-block:0 clamp(2.6rem,9vw,3.4rem)}
  .hero__photo{position:static;display:block;
    width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
  .hero__voile{display:none}
  .hero__bande{padding-top:clamp(1.4rem,6vw,2rem)}
}

.entete{background-color:rgba(13,10,7,0.76)}
.entete{margin-bottom:-67px}

@media (min-width:900px){
  .hero{align-items:center;padding-top:calc(clamp(4.5rem,11vw,7rem) + 67px)}
}

@media (max-width:600px){
  .tableau__aujourdhui.tableau__aujourdhui.tableau__aujourdhui{font-size:11.6px}
}

:target{scroll-margin-top:0}
html{scroll-padding-top:69px}

@media (max-width:600px){
  div.hero__verre{display:flex;flex-direction:column}
  div.hero__verre > *{order:4}
  div.hero__verre > span.poteau{order:1}
  div.hero__verre > p.hero__etiquette{order:1}
  div.hero__verre > h1.hero__titre{order:2}
  div.hero__verre > span.hero__accent{order:2}
  div.hero__verre > div.hero__actions{order:3;margin-top:10px;margin-bottom:28px}
}
