:root {
  --ink:#142025;
  --muted:#56656a;
  --orange:#ffd200;
  --cream:#f7f4ee;
  --line:#deded8
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth
}
body {
  margin:0;
  font:16px/1.55 Arial,Helvetica,sans-serif;
  background:var(--cream);
  color:var(--ink)
}
a {
  color:inherit
}
button {
  font:inherit
}
.wrap {
  width:min(1160px,calc(100% - 40px));
  margin:auto;
  /*margin-top:400px;*/
}
.top {
  position:absolute;
  inset:0 0 auto;
  z-index:5;
  color:white;
  border-bottom:1px solid #ffffff40
}
.top .wrap {
  height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px
}
.brand {
  font-size:30px;
  font-weight:900;
  letter-spacing:-2px;
  text-decoration:none;
  line-height:1
}
.brand span {
  color:var(--orange)
}
.top nav {
  display:flex;
  gap:28px;
  align-items:center
}
.top nav a {
  text-decoration:none;
  font-weight:700;
  font-size:13px;
  letter-spacing:.04em;
  text-transform:uppercase
}
.top nav a:hover,.footer a:hover {
  color:var(--orange)
}
.top .nav-cta {
  border:1px solid #fff8;
  padding:9px 15px;
  border-radius:100px
}
.hero {
  height:min(750px,90svh);
  min-height:590px;
  position:relative;
  overflow:hidden;
  background:#19282d;
  color:white
}
.slide {
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity .7s ease;
  display:flex;
  align-items:center;
  isolation:isolate
}
.slide.active {
  opacity:1;
  z-index:1
}
.slide:before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,#101b20 3%,#142328ea 43%,#1b25257d 100%),radial-gradient(circle at 77% 46%,#c7a410 0%,#5f5c38 20%,#18272b 60%)
}
.slide:nth-child(2):before {
  background:linear-gradient(90deg,#101b20 3%,#142328e8 43%,#1b252577 100%),radial-gradient(circle at 80% 38%,#8a9ba0,#2b3d44 48%,#142125 80%)
}
.slide:nth-child(3):before {
  background:linear-gradient(90deg,#101b20 3%,#142328e8 43%,#1b252577 100%),radial-gradient(circle at 80% 45%,#ab962c,#344b42 45%,#142125 80%)
}
.slide.has-image:before {
  background:linear-gradient(90deg,#101b20f2 0%,#142328c9 48%,#1423284d 100%),var(--slide-image) center/cover no-repeat
}
.hero-inner {
  padding-top:75px;
  position:relative;
  z-index:1
}
.eyebrow {
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.21em;
  font-weight:800;
  color:#ffe270;
  margin:0 0 23px
}
.hero h1 {
  font-size:clamp(48px,9vw,104px);
  line-height:.89;
  letter-spacing:-.075em;
  text-transform:uppercase;
  margin:0 0 26px;
  font-weight:900;
  max-width:800px
}
.hero h1 span {
  color:var(--orange)
}
.hero p.sub {
  max-width:570px;
  font-size:clamp(18px,2.1vw,23px);
  margin:0 0 30px;
  color:#e3e9e8
}
.actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px
}
.btn {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:49px;
  padding:13px 24px;
  border-radius:4px;
  background:var(--orange);
  color:#162125;
  text-decoration:none;
  font-weight:600;
  border:1px solid var(--orange);
  transition:transform .2s,background .2s
}
.btn:hover {
  background:#ffe15a;
  transform:translateY(-2px)
}
.btn.alt {
  background:transparent;
  color:white;
  border-color:#ffffffa8
}
.btn.alt:hover {
  background:#ffffff1c
}
.slider-controls {
  position:absolute;
  bottom:35px;
  left:50%;
  transform:translateX(-50%);
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px
}
.dots {
  display:flex;
  gap:9px
}
.dot {
  width:35px;
  height:4px;
  border:0;
  border-radius:5px;
  background:#ffffff77;
  cursor:pointer;
  padding:0
}
.dot[aria-current="true"] {
  background:var(--orange)
}
.arrows {
  display:flex;
  gap:8px
}
.arrow {
  width:42px;
  height:42px;
  border:1px solid #ffffff88;
  border-radius:50%;
  background:#1521264d;
  color:white;
  cursor:pointer;
  font-size:23px
}
.arrow:hover {
  background:var(--orange);
  color:var(--ink)
}
.intro {
  padding:87px 0 65px
}
.intro-grid {
  display:grid;
  grid-template-columns:1.3fr .7fr;
  gap:70px;
  align-items:center
}
.kicker {
  margin:0 0 12px;
  color:#222;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:12px;
  font-weight:900
}

.btn-facebook {
  display: inline-block;
  padding: 14px 22px;
  background: #1877f2;
  border: 2px solid #1877f2;
  border-radius: 4px;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s;
}

.btn-facebook:hover,
.btn-facebook:focus-visible {
  background: #166fe5;
  border-color: #166fe5;
  color: #fff;
}
.intro h2,.section-head h2 {
  font-size:clamp(26px,5vw,42px);
  line-height:1.05;
  letter-spacing:-.055em;
  margin:0 0 23px
}
.intro p:not(.kicker) {
  font-size:18px;
  color:var(--muted);
  margin:0
}
.date-card {
  border-left:5px solid var(--orange);
  padding:28px 34px;
  background:white;
  box-shadow:0 14px 50px #1521260d
}
.date-card strong {
  display:block;
  font-size:43px;
  font-weight: 800;
  letter-spacing:-.05em;
  line-height:1.05
}
.date-card span {
  display:block;
  color:var(--muted);
  margin-top:12px
}
.offers {
  background:#eae9e3;
  padding:83px 0 105px
}
.section-head {
  max-width:760px;
  margin-bottom:36px
}
.section-head p:last-child {
  color:var(--muted);
  font-size:17px;
  margin:0
}
.cards {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px
}
.card {
  background:#fff;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  box-shadow:0 10px 35px #1420250c
}
.poster {
  aspect-ratio:4/5;
  position:relative;
  background:linear-gradient(135deg,#25383d,#1d2b30 55%,#70652d);
  display:grid;
  place-items:center;
  text-align:center;
  color:#fff;
  border-bottom:5px solid var(--orange);
  overflow:hidden
}
.poster:before {
  content:"";
  position:absolute;
  width:85%;
  height:70%;
  border:1px solid #ffffff2c;
  transform:rotate(-9deg)
}
.poster img {
  width:100%;
  height:100%;
  object-fit:cover;
  position:absolute;
  inset:0
}
.poster-placeholder {
  position:relative;
  padding:24px
}
.poster-placeholder small {
  display:block;
  color:#ffe270;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:800;
  margin-bottom:12px
}
.poster-placeholder b {
  display:block;
  font-size:clamp(26px,3vw,41px);
  line-height:1.05;
  text-transform:uppercase;
  letter-spacing:-.05em
}
.poster-placeholder em {
  display:block;
  font-style:normal;
  margin-top:15px;
  font-size:13px;
  color:#e1e9e8
}
.card-content {
  padding:25px 26px 28px;
  display:flex;
  flex-direction:column;
  flex:1
}
.card-content h3 {
  font-size:23px;
  line-height:1.2;
  margin:0 0 11px;
  letter-spacing:-.035em
}
.card-content p {
  margin:0 0 24px;
  color:var(--muted);
  flex:1
}
.card-content .btn {
  align-self:flex-start;
  font-size:14px
}
.more {
  background-image:
  linear-gradient(90deg, #0b2d66e8, #1877f29d 55%, #0b2d66d6),
  url("assets/visual fb.png");
  color:white;
  padding:64px 0
}
.more .wrap {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px
}
.more h2 {
  font-size:clamp(24px,4vw,40px);
  line-height:1.08;
  letter-spacing:-.05em;
  margin:0 0 10px
}
.more p {
  margin:0;
  color:#d3dedd
}
.footer {
  background:#101c20;
  color:#e7eeee;
  padding:68px 0 28px
}
.footer-grid {
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr;
  gap:40px
}
.footer h2 {
  font-size:15px;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin:2px 0 20px
}
.footer p {
  margin:12px 0;
  color:#c4cecf
}
.footer a {
  text-decoration:none;
  color:#e7eeee
}
.footer .brand {
  display:inline-block;
  margin-bottom:15px
}
.footer-bottom {
  border-top:1px solid #ffffff26;
  margin-top:55px;
  padding-top:22px;
  font-size:13px;
  color:#a8b7ba;
  display:flex;
  justify-content:space-between;
  gap:20px
}
.footer-bottom a {
  color:#a8b7ba
}
@media(max-width:850px) {
  .top nav {
    gap:12px
  }
  .top nav a:not(.nav-cta) {
    display:none
  }
  .intro-grid {
    grid-template-columns:1fr;
    gap:30px
  }
  .cards {
    grid-template-columns:repeat(2,1fr)
  }
  .footer-grid {
    grid-template-columns:1fr 1fr
  }
  .footer-grid>div:first-child {
    grid-column:1/-1
  }
}
@media(max-width:600px) {
  .wrap {
    width:min(100% - 32px,1160px)
  }
  .top .wrap {
    height:70px
  }
  .brand {
    font-size:26px
  }
  .top .nav-cta {
    font-size:11px;
    padding:8px 10px
  }
  .hero {
    min-height:610px;
    height:88svh
  }
  .hero h1 {
    font-size:clamp(55px,16vw,85px)
  }
  .intro {
    padding:65px 0 55px
  }
  .offers {
    padding:65px 0 75px
  }
  .cards {
    grid-template-columns:1fr
  }
  .more .wrap {
    display:block
  }
  .more .btn {
    margin-top:25px
  }
  .footer-grid {
    grid-template-columns:1fr;
    gap:28px
  }
  .footer-grid>div:first-child {
    grid-column:auto
  }
  .footer-bottom {
    display:block
  }
  .slider-controls {
    bottom:24px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  .slide,.btn {
    transition:none
  }
}
.logo-link img {
  display:block;
  width:168px;
  height:auto
}
.footer-logo img {
  display:block;
  width:110px;
  height:110px;
  object-fit:cover;
  border-radius:3px
}
.parallax {
  min-height:420px;
  display:flex;
  align-items:center;
  position:relative;
  color:#fff;
  background-image:linear-gradient(90deg,#101c20ec,#14252cc4),radial-gradient(circle at 78% 40%,#8d792d,#172a30 58%);
  background-position:center;
  background-size:cover;
  background-attachment:fixed
}
.parallax .wrap {
  position:relative;
  z-index:1;
  padding:85px 0
}
.parallax h2 {
  font-size:clamp(36px,5.5vw,68px);
  line-height:1;
  letter-spacing:-.055em;
  margin:0 0 18px;
  max-width:760px
}
.parallax p:not(.eyebrow) {
  font-size:18px;
  color:#e4e9e8;
  max-width:640px;
  margin:0 0 25px
}
@media(max-width:750px) {
  .parallax {
    background-attachment:scroll;
    min-height:380px
  }
  .logo-link img {
    width:135px
  }
}
.roadshows {
  padding:78px 0 86px;
  background:#fff
}
.roadshows .section-head {
  margin-bottom:32px
}
.roadshow-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px
}
.roadshow-card {
  position:relative;
  min-height:350px;
  padding:39px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  color:#fff;
  background:linear-gradient(145deg,#182a30,#263e45);
  overflow:hidden
}
.roadshow-card:nth-child(2) {
  background:linear-gradient(145deg,#253238,#18262c)
}
.roadshow-card:before {
  content:"";
  position:absolute;
  right:-55px;
  top:-85px;
  width:310px;
  height:310px;
  border:42px solid #ffd20018;
  border-radius:50%
}
.roadshow-card>* {
  position:relative
}
.roadshow-date {
  display:inline-block;
  background:var(--orange);
  color:#142025;
  padding:7px 12px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
  margin-bottom:18px
}
.roadshow-card h3 {
  font-size:clamp(34px,4vw,54px);
  line-height:1.03;
  letter-spacing:-.055em;
  margin:0 0 12px
}
.roadshow-card p {
  font-size:18px;
  margin:0 0 23px;
  color:#e4e9e8
}
.roadshow-card .food {
  display:inline-flex;
  align-items:center;
  gap:9px;
  border-top:1px solid #ffffff55;
  padding-top:16px;
  margin:0;
  font-weight:700;
  color:#fff
}
.roadshow-card .food:before {
  content:"";
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--orange)
}
@media(max-width:700px) {
  .roadshows {
    padding:64px 0
  }
  .roadshow-grid {
    grid-template-columns:1fr
  }
  .roadshow-card {
    min-height:310px;
    padding:30px
  }
}
.roadshow-card:before {
  display:none
}
.slide.has-image:before {
  background-image:linear-gradient(90deg,#0b151ae8 0%,#0d191dc9 42%,#0d191d48 100%),var(--slide-image)
}
.slide:nth-child(2) h1 span,.slide:nth-child(2) .eyebrow {
  color:#34b6d2
}
.slide:nth-child(2) .btn {
  background:#34b6d2;
  border-color:#34b6d2;
  color:#081a20
}
.slide:nth-child(2) .btn:hover {
  background:#6dd4e8
}
.slide:nth-child(3) h1 span,.slide:nth-child(3) .eyebrow {
  color:#f2545c
}
.slide:nth-child(3) .btn {
  background:#f2545c;
  border-color:#f2545c;
  color:#fff
}
.slide:nth-child(3) .btn:hover {
  background:#ff7980
}
.hero[data-current-slide="2"] .dot[aria-current="true"] {
  background:#34b6d2
}
.hero[data-current-slide="3"] .dot[aria-current="true"] {
  background:#f2545c
}
.hero-badge {
  display:inline-block;
  margin:0 0 23px;
  padding:8px 13px;
  border:1px solid currentColor;
  color:#fff;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.1em
}
.foodtruck-banner .wrap {
  padding:64px 0
}
.foodtruck-banner h2 {
  font-size:clamp(38px,5vw,64px);
  line-height:1.03;
  letter-spacing:-.055em;
  max-width:680px;
  margin:0 0 16px
}
.foodtruck-banner p:not(.eyebrow) {
  font-size:18px;
  max-width:560px;
  margin:0 0 25px;
  color:#f1f3ef
}
@media(max-width:600px) {
  .foodtruck-banner {
    min-height:440px;
    background-position:63% center
  }
}
@media(max-width:700px) {
}
.foodtruck-banner {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#111c20;
  background-image:none;
  min-height:440px
}
.foodtruck-banner .wrap {
  position:relative;
  z-index:2
}
.foodtruck-art {
  position:absolute;
  inset:0 0 0 auto;
  width:51%;
  pointer-events:none;
  z-index:1
}
.foodtruck-art .burger-photo {
  position:absolute;
  right:4%;
  bottom:-13%;
  width:min(34vw,330px);
  aspect-ratio:1;
  object-fit:cover;
  border:8px solid #fff;
  border-radius:50%;
  box-shadow:0 14px 50px #0009
}
.foodtruck-art .brafs-logo {
  position:absolute;
  right:13%;
  top:7%;
  width:min(12vw,138px);
  aspect-ratio:1;
  object-fit:cover;
  background:white;
  border:5px solid #fff;
  border-radius:50%;
  box-shadow:0 10px 35px #0009
}
@media(max-width:700px) {
  .foodtruck-banner {
    min-height:520px
  }
  .foodtruck-art {
    width:100%;
    opacity:.85
  }
  .foodtruck-art .burger-photo {
    width:145px;
    right:2%;
    bottom:-25px;
    border-width:5px
  }
  .foodtruck-art .brafs-logo {
    width:76px;
    right:4%;
    top:14px;
    border-width:3px
  }
  .foodtruck-banner .wrap {
    padding-bottom:125px
  }
}
:root {
  --hero-photo:url("assets/visuel-01-b4ca1006a5.jpg");
  --makita-photo:url("assets/visuel-02-0e0ed32650.jpg");
  --facom-photo:url("assets/visuel-03-bfaf1bf040.jpg");
  --truck-photo:none
}
.slide:first-child:before {
  background:linear-gradient(90deg,#0b151ae8,#0d191d9e 44%,#0d191d22),var(--hero-photo) center/cover no-repeat
}
.slide:nth-child(2):before {
  background:linear-gradient(90deg,#0b151ae8,#0d191d9e 44%,#0d191d22),var(--makita-photo) center/cover no-repeat
}
.slide:nth-child(3):before {
  background:linear-gradient(90deg,#0b151ae8,#0d191d9e 44%,#0d191d22),var(--facom-photo) center/cover no-repeat
}
.parallax {
  background:linear-gradient(90deg,#101c20ee,#14252caa),var(--hero-photo) center/cover no-repeat fixed
}
.roadshow-card:first-child {
  background:linear-gradient(90deg,#0b151ae8,#0d191db5 55%,#0d191d3d),var(--makita-photo) center/cover no-repeat
}
.roadshow-card:nth-child(2) {
  background:linear-gradient(90deg,#0b151ae8,#0d191db5 55%,#0d191d3d),var(--facom-photo) center/cover no-repeat
}
.foodtruck-banner {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#101c20;
  min-height:440px
}
.foodtruck-banner:before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,#101c20 0%,#101c20f4 35%,#101c20b4 56%,#101c2022 100%),var(--truck-photo) right center/auto 100% no-repeat
}
@media(max-width:700px) {
  .foodtruck-banner {
    min-height:520px
  }
  .foodtruck-banner:before {
    background:linear-gradient(90deg,#101c20f0,#101c20b9),var(--truck-photo) center/cover no-repeat
  }
  .parallax {
    background-attachment:scroll
  }
}
.program {
  background:#eae9e3
}
.program-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:15px
}
.program-day {
  display:grid;
  grid-template-columns:100px 1fr;
  gap:22px;
  padding:24px;
  background:#fff;
  border-left:5px solid #ffd200;
  min-height:175px
}
.program-day h3 {
  font-size:23px;
  line-height:1.16;
  margin:3px 0 10px;
  letter-spacing:-.03em
}
.program-day p {
  margin:0;
  color:#56656a
}
.day-date {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  align-self:start;
  background:#142025;
  color:#fff;
  text-align:center;
  line-height:1.12;
  text-transform:uppercase;
  font-size:12px;
  font-weight:800;
  padding:11px 5px;
  min-height:98px
}
.day-date strong {
  display:block;
  font-size:38px;
  line-height:1.1;
  color:#ffd200
}
.day-note {
  display:inline-block;
  margin-top:13px;
  font-size:13px;
  color:#2c454b;
  font-weight:800
}
.makita-day {
  border-color:#34b6d2
}
.makita-day .day-date strong {
  color:#34b6d2
}
.facom-day {
  border-color:#f2545c
}
.facom-day .day-date strong {
  color:#f2545c
}
.program-extra {
  margin-top:27px;
  background:#15272d;
  /*color:#fff;*/
  padding:25px 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px
}
.program-extra p {
  font-size:21px;
  font-weight:700;
  margin:0
}
.program-conditions {
  font-size:13px;
  color:#647075;
  margin:18px 0 54px
}
.flyer-heading h3 {
  font-size:33px;
  letter-spacing:-.04em;
  margin:0 0 5px
}
.flyer-heading p {
  color:#56656a;
  margin:0 0 22px
}
.flyers {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:start
}
.flyer-preview {
  border:0;
  background:#fff;
  padding:12px;
  cursor:pointer;
  text-align:left;
  box-shadow:0 10px 30px #14202512
}
.flyer-preview img {
  width:100%;
  height:auto;
  display:block
}
.flyer-preview span {
  display:block;
  padding:12px 4px 3px;
  font-weight:800
}
.flyer-preview:hover span {
  color:#8a6a00
}
.flyer-dialog {
  border:0;
  background:#111c20;
  padding:52px 14px 14px;
  width:min(96vw,980px);
  max-height:96vh;
  box-shadow:0 20px 80px #0009
}
.flyer-dialog::backdrop {
  background:#000c
}
.flyer-dialog img {
  display:block;
  width:100%;
  height:auto
}
.flyer-dialog .dialog-close {
  position:fixed;
  top:14px;
  right:max(3vw,20px);
  z-index:2;
  background:#ffd200;
  border:0;
  padding:9px 15px;
  font-weight:800;
  cursor:pointer
}
@media(max-width:760px) {
  .program-grid,.flyers {
    grid-template-columns:1fr
  }
  .program-day {
    grid-template-columns:76px 1fr;
    gap:15px;
    padding:16px;
    min-height:0
  }
  .day-date {
    min-height:82px
  }
  .day-date strong {
    font-size:30px
  }
  .program-extra {
    display:block
  }
  .program-extra .btn {
    margin-top:15px
  }
}
.program-day {
  color:#fff;
  background:linear-gradient(100deg,#14252df4,#172b33dc),var(--hero-photo) center/cover no-repeat
}
.program-day p {
  color:#e0e8e8
}
.program-day .day-note {
  color:#ffe26a
}
.brand-marks {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin:10px 0 13px
}
.brand-mark {
  display:inline-block;
  flex:none;
  background-image:var(--flyer-front);
  background-repeat:no-repeat;
  background-size:707px 1063px;
  border-radius:3px;
  box-shadow:0 3px 10px #0004
}
.flyer-area {
  margin-top:45px;
  padding:43px;
  background:linear-gradient(90deg,#101c20ef,#101c20dc),var(--hero-photo) center/cover no-repeat
}
.flyer-heading h3 {
  color:#fff
}
.flyer-heading p {
  color:#d9e0df
}
.flyer-preview {
  background:#fff
}
@media(max-width:760px) {
  .flyer-area {
    padding:22px
  }
  .brand-marks {
    gap:5px
  }
}
.brand-levis {
  width:79px;
  height:70px;
  background-position:-268px -131px
}
.brand-mirka {
  width:135px;
  height:49px;
  background-position:-359px -132px
}
.brand-tec7 {
  width:98px;
  height:67px;
  background-position:-508px -131px
}
.brand-spax {
  width:101px;
  height:43px;
  background-position:-172px -252px
}
.brand-fischer {
  width:159px;
  height:47px;
  background-position:-370px -248px
}
.brand-levelfix {
  width:145px;
  height:48px;
  background-position:-172px -358px
}
.brand-wera {
  width:139px;
  height:53px;
  background-position:-179px -452px
}
.brand-alsafix {
  width:149px;
  height:48px;
  background-position:-170px -549px
}
.brand-makita {
  width:108px;
  height:60px;
  background-position:-250px -656px
}
.brand-facom {
  width:103px;
  height:71px;
  background-position:-237px -750px
}
.brand-marks {
  gap:9px;
  margin:13px 0 15px
}
.brand-mark {
  display:block;
  width:auto!important;
  height:52px!important;
  max-width:130px;
  object-fit:contain;
  background:#fff!important;
  background-image:none!important;
  background-position:initial!important;
  padding:4px;
  border-radius:4px;
  box-shadow:0 5px 15px #0005
}
.brand-mirka,.brand-fischer,.brand-wera {
  width:125px!important
}
.brand-levis,.brand-tec7,.brand-spax,.brand-levelfix,.brand-alsafix,.brand-makita,.brand-facom {
  width:66px!important
}
@media(max-width:600px) {
  .brand-mark {
    height:42px!important
  }
  .brand-mirka,.brand-fischer,.brand-wera {
    width:105px!important
  }
  .brand-levis,.brand-tec7,.brand-spax,.brand-levelfix,.brand-alsafix,.brand-makita,.brand-facom {
    width:55px!important
  }
}
.program-extra {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:168px;
  padding:30px 38px;
  /*border:1px solid #f8d53e80;*/
  background:radial-gradient(circle at 80% 25%,#ffe46a55,transparent 28%),linear-gradient(120deg,#19282d 0%,#243b41 50%,#756110 100%);
  box-shadow:0 18px 38px #14202522
}
.program-extra:before {
  content:"TOMBOLA";
  position:absolute;
  z-index:-1;
  right:16px;
  top:-30px;
  font-size:clamp(74px,12vw,175px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.09em;
  color:#ffe26a18;
  transform:rotate(-9deg);
  pointer-events:none
}
.program-extra:after {
  content:"";
  position:absolute;
  inset:10px;
  border:1px dashed #ffe88866;
  pointer-events:none
}
.program-extra p {
  max-width:560px;
  font-size:clamp(21px,2.4vw,29px);
  line-height:1.2
}
.program-extra .btn {
  position:relative;
  z-index:1;
  white-space:nowrap
}
.flyer-area {
  position:relative;
  isolation:isolate;
  background:linear-gradient(to bottom,#eae9e3 0%,#eae9e3d8 10%,#17272d6b 38%,#0d1a20d4 100%),var(--hero-photo) center 43%/cover no-repeat;
  padding:100px 38px 45px;
  margin-top:28px
}
.flyer-heading h3 {
  color:#fff;
  text-shadow:0 2px 10px #0009
}
.flyer-heading p {
  color:#edf2ef
}
.flyer-preview {
  border:0;
  padding:0;
  background:transparent;
  box-shadow:none;
  color:#fff
}
.flyer-preview img {
  display:block;
  border:0;
  box-shadow:0 14px 35px #0005
}
.flyer-preview span {
  padding:14px 2px 2px;
  color:#fff
}
.flyer-preview:hover span {
  color:#ffd200
}
@media(max-width:760px) {
  .program-extra {
    min-height:0;
    padding:26px
  }
  .program-extra:before {
    top:0
  }
  .flyer-area {
    padding:85px 16px 24px
  }
}
.roadshow-logo {
  display:block;
  width:98px;
  height:98px;
  object-fit:contain;
  margin:0 0 15px;
  border-radius:3px
}
.program-extra {
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  gap:18px;
  min-height:245px;
  padding:38px 42px
}
.program-extra p {
  max-width:800px;
  margin:0 auto;
  font-size:clamp(22px,2.6vw,32px)
}
.program-extra .btn {
  margin:0
}
.program-conditions {
  text-align:center;
  max-width:900px;
  margin:20px auto 54px
}
.flyer-heading {
  text-align:center;
  margin:29px auto 0
}
.flyer-heading h3 {
  font-size:25px;
  margin:0 0 3px
}
.flyer-heading p {
  margin:0
}
@media(max-width:760px) {
  .program-extra {
    padding:32px 22px
  }
  .roadshow-logo {
    width:80px;
    height:80px
  }
}
.program-extra {
  width:100vw;
  max-width:none;
  position:relative;
  left:50%;
  transform:translateX(-50%);
  min-height:460px;
  margin:55px 0 0;
  padding:80px max(28px,calc((100vw - 1080px)/2));
  border:0;
  box-shadow:none;
  background-image: linear-gradient(90deg, #7a1010e8, #b719199d 55%, #7a1010d6), url("assets/visuel-04-3b5b00ce0d.jpg");
  background-size:cover;
  background-position:center;
  background-attachment:scroll,fixed
}
.program-extra:before,.program-extra:after {
  display:none
}
.program-extra p {
  max-width:900px;
  font-size:clamp(24px,4vw,50px);
  line-height:1.14;
  text-shadow:0 3px 6px #000b
}
.program-extra .btn {
  margin-top:8px
}
.program-conditions {
  margin:26px auto 52px
}
.foodtruck-banner:before {
  background-image:linear-gradient(90deg,#101c20e7 0%,#101c20bd 36%,#101c2020 75%),var(--brafs-photo);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat
}
.intro,.roadshows,.more {
  position:relative;
  isolation:isolate;
  overflow:hidden
}
.intro:after,.roadshows:after,.more:after {
  content:"";
  position:absolute;
  z-index:-1;
  width:300px;
  height:220px;
  background:var(--decor-tools) center/contain no-repeat;
  opacity:.18;
  pointer-events:none
}
.intro:after {
  right:-25px;
  bottom:8px;
  transform:rotate(-18deg)
}
.roadshows:after {
  left:-50px;
  top:18px;
  transform:rotate(20deg)
}
.more:after {
  right:10px;
  bottom:-50px;
  opacity:.22;
  transform:rotate(-14deg)
}
@media(max-width:700px) {
  .program-extra {
    min-height:390px;
    padding:60px 24px;
    background-attachment:scroll
  }
  .program-extra p {
    font-size:29px
  }
  .foodtruck-banner:before {
    background-image:linear-gradient(90deg,#101c20dc,#101c20a8),var(--brafs-photo);
    background-position:62% center
  }
  .intro:after,.roadshows:after,.more:after {
    width:180px;
    height:140px;
    opacity:.12
  }
}
/* Accents demandés pour Braf’s Burger et la tombola */
.foodtruck-banner h2 {
  color:#ffd200
}
.program-extra p {
  color:#fff
}
.program-extra .btn {
  background:#d7192d;
  border-color:#d7192d;
  color:#fff
}
.program-extra .btn:hover,.program-extra .btn:focus-visible {
  background:#af1021;
  border-color:#af1021;
  color:#fff
}
/* Outils détourés en relief au-dessus des cartes */
.roadshows {
  overflow:visible
}
.roadshows:after {
  display:none
}
.roadshow-grid {
  position:relative;
  isolation:isolate
}
.roadshow-card {
  overflow:visible;
  min-height:420px
}
.roadshow-card:after {
  content:"";
  position:absolute;
  z-index:2;
  right:-30px;
  top:-68px;
  width:250px;
  height:180px;
  background:var(--decor-tools) center/contain no-repeat;
  filter:drop-shadow(5px 17px 12px #071014a8);
  transform:rotate(-13deg);
  pointer-events:none
}
.roadshow-card:nth-child(2):after {
  right:-24px;
  top:-72px;
  transform:scaleX(-1) rotate(-9deg)
}
.roadshow-card>* {
  z-index:3
}
.roadshow-card .food {
  margin-bottom:9px
}
.roadshow-card .roadshow-offer {
  margin:0 0 0 18px;
  font-size:17px;
  line-height:1.35;
  font-weight:700;
  color:#fff;
  text-shadow:0 2px 8px #000b
}
.intro,.more {
  overflow:visible
}
.intro:after,.more:after {
  z-index:2;
  opacity:.82;
  filter:drop-shadow(5px 16px 12px #07101499)
}
.intro:after {
  right:-35px;
  bottom:-45px
}
.more:after {
  right:10px;
  bottom:-70px
}
@media(max-width:700px) {
  .roadshow-card {
    min-height:360px
  }
  .roadshow-card:after {
    width:150px;
    height:115px;
    right:-8px;
    top:-42px
  }
  .roadshow-card:nth-child(2):after {
    right:-8px;
    top:-42px
  }
  .intro:after,.more:after {
    width:145px;
    height:105px;
    opacity:.72
  }
}
/* Décor outillage détouré et poussière diffuse */
:root {
  --wrench-art:url("assets/visuel-05-2f9a122f25.webp");
  --drill-art:url("assets/visuel-06-d9e759923e.webp");
  --fasteners-art:url("assets/visuel-07-39b9112efd.webp")
}
body {
  overflow-x:hidden
}
.intro:after,.roadshows:after,.more:after,.roadshow-card:after {
  display:none!important
}
.intro,.roadshows,.offers,.more {
  position:relative;
  overflow:visible
}
.float-tool {
  position:absolute;
  z-index:4;
  pointer-events:none;
  background-position:center;
  background-size:contain;
  background-repeat:no-repeat;
  filter:drop-shadow(9px 18px 12px #0a141b80)
}
.float-wrench {
  right:-165px;
  top:70px;
  width:360px;
  height:300px;
  background-image:var(--wrench-art);
  transform:rotate(-18deg)
}
.float-drill {
  left:-175px;
  top:350px;
  width:360px;
  height:320px;
  background-image:var(--drill-art);
  transform:rotate(-12deg)
}
.float-fasteners {
  z-index:1;
  width:270px;
  height:180px;
  background-image:var(--fasteners-art);
  opacity:.57;
  filter:drop-shadow(2px 7px 6px #14202555)
}
.float-fasteners.first {
  right:4%;
  top:24px;
  transform:rotate(25deg)
}
.float-fasteners.second {
  left:-80px;
  top:28%;
  transform:rotate(-24deg) scale(.8)
}
.float-fasteners.third {
  right:-60px;
  bottom:35px;
  transform:rotate(16deg) scale(.7)
}
.intro .wrap,.roadshows .wrap,.offers .wrap,.more .wrap {
  position:relative;
  z-index:2
}
.intro:before,.offers:before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background-image:radial-gradient(circle at 11% 26%,#a39a7940 0 1px,transparent 2px),radial-gradient(circle at 72% 68%,#a39a7930 0 1px,transparent 2px),radial-gradient(circle at 38% 82%,#a39a7929 0 1px,transparent 2px);
  background-size:77px 83px,119px 97px,141px 127px;
  opacity:.45
}
@media(max-width:760px) {
  .float-wrench {
    right:-115px;
    top:100px;
    width:230px;
    height:210px
  }
  .float-drill {
    left:-100px;
    top:380px;
    width:215px;
    height:210px
  }
  .float-fasteners {
    width:150px;
    height:110px;
    opacity:.4
  }
  .float-fasteners.second {
    left:-60px
  }
}
/* Présentation du magasin, flyers pleine largeur et décors */
:root {
  --store-interior:url("assets/visuel-08-5cf129c5c6.jpg");
  --store-exterior:url("assets/visuel-09-91f8b8edb4.jpg");
  --roller-art:url("assets/visuel-10-29052a8b47.webp");
  --confetti-art:url("assets/visuel-11-67fec5f805.webp")
}
.parallax {
  background-image:linear-gradient(90deg,#0b181de9 0%,#0b181db9 45%,#0b181d33 100%),var(--store-interior);
  background-position:center;
  background-size:cover
}
.float-drill {
  top:145px;
  left:-170px
}
.float-roller {
  right:-140px;
  top:130px;
  width:330px;
  height:295px;
  background-image:var(--roller-art);
  transform:rotate(18deg)
}
.program-extra {
  isolation:isolate
}
.program-extra>p,.program-extra>.btn {
  position:relative;
  z-index:3
}
.tombola-confetti {
  position:absolute;
  z-index:2;
  pointer-events:none;
  width:380px;
  height:255px;
  background:var(--confetti-art) center/contain no-repeat;
  filter:drop-shadow(2px 8px 6px #0005)
}
.tombola-confetti.left {
  left:-75px;
  top:8px;
  transform:rotate(-13deg)
}
.tombola-confetti.right {
  right:-70px;
  bottom:2px;
  transform:rotate(175deg)
}
.offers.program {
  padding-bottom:0
}
.flyer-area {
  left:50%;
  transform:translateX(-50%);
  width:100vw;
  max-width:none;
  margin:42px 0 0;
  padding:115px max(26px,calc((100vw - 1120px)/2)) 75px;
  background-image:linear-gradient(to bottom,#eae9e3 0%,#eae9e3e8 6%,#eae9e300 26%),linear-gradient(90deg,#101c20c5,#101c20a8),var(--hero-photo);
  background-position:center;
  background-size:cover
}
.flyer-area .flyers,.flyer-area .flyer-heading {
  max-width:1120px;
  margin-left:auto;
  margin-right:auto
}
.footer {
  position:relative;
  /*background-image:linear-gradient(90deg,#101c20f2 0%,#101c20e8 51%,#101c20ab 100%),var(--store-exterior);*/
  background-position:center 52%;
  background-size:cover
}
@media(max-width:760px) {
  .float-drill {
    top:165px;
    left:-98px
  }
  .float-roller {
    right:-105px;
    top:155px;
    width:200px;
    height:190px
  }
  .tombola-confetti {
    width:210px;
    height:150px;
    opacity:.82
  }
  .tombola-confetti.left {
    left:-85px
  }
  .tombola-confetti.right {
    right:-80px
  }
  .flyer-area {
    padding:92px 18px 48px
  }
  .footer {
    background-position:60% center
  }
}
:root {
  --brafs-photo:url("assets/visuel-12-6c3923b1ff.jpg")
}
/* Retouches : visseuse du footer et confettis discrets sur les bords */
.footer {
  overflow:hidden;
  isolation:isolate
}
.footer>.wrap {
  position:relative;
  z-index:2
}
.footer .float-drill {
  left:auto;
  right:-145px;
  top:auto;
  bottom:5px;
  width:355px;
  height:290px;
  transform:scaleX(-1) rotate(-12deg);
  z-index:1
}
.program-extra {
  overflow:visible
}
.tombola-confetti {
  width:280px;
  /*height:125px;*/
  opacity:.9;
  filter:drop-shadow(2px 6px 6px #0005)
}
.tombola-confetti.left {
  left:3%;
  top:-62px;
  transform:rotate(-18deg)
}
.tombola-confetti.right {
  right:3%;
  bottom:-62px;
  transform:rotate(160deg)
}
@media(max-width:760px) {
  .footer .float-drill {
    right:-88px;
    bottom:15px;
    width:210px;
    height:190px;
    opacity:.65
  }
  .tombola-confetti {
    width:110px;
    height:75px
  }
  .tombola-confetti.left {
    left:0;
    top:-34px
  }
  .tombola-confetti.right {
    right:0;
    bottom:-34px
  }
}
/* Roadshow Makita : dégradé bleu */
.roadshow-card:first-child {
  background:
    linear-gradient(
      90deg,
      rgba(0, 47, 91, 0.96) 0%,
      rgba(0, 105, 180, 0.72) 52%,
      rgba(0, 105, 180, 0.08) 100%
    ),
    var(--makita-photo) center / cover no-repeat;
}

/* Camion Facom : dégradé rouge */
.roadshow-card:nth-child(2) {
  background:
    linear-gradient(
      90deg,
      rgba(99, 5, 20, 0.96) 0%,
      rgba(190, 20, 43, 0.72) 52%,
      rgba(190, 20, 43, 0.08) 100%
    ),
    var(--facom-photo) center / cover no-repeat;
}
/* Programme du 16 octobre : Makita */
.program-day.makita-day {
  background:
    linear-gradient(
      90deg,
      rgba(0, 47, 91, 0.96) 0%,
      rgba(0, 105, 180, 0.72) 55%,
      rgba(0, 105, 180, 0.12) 100%
    ),
    var(--makita-photo) center / cover no-repeat;
  color: #fff;
}

/* Programme du 17 octobre : Facom */
.program-day.facom-day {
  background:
    linear-gradient(
      90deg,
      rgba(99, 5, 20, 0.96) 0%,
      rgba(190, 20, 43, 0.72) 55%,
      rgba(190, 20, 43, 0.12) 100%
    ),
    var(--facom-photo) center / cover no-repeat;
  color: #fff;
}

.program-day.makita-day p,
.program-day.facom-day p,
.program-day.makita-day .day-date,
.program-day.facom-day .day-date,
.program-day.makita-day .day-note,
.program-day.facom-day .day-note {
  color: #fff;
}
/* Apparition progressive au défilement. Sans JavaScript, le contenu reste visible. */
html.has-scroll-reveal .scroll-reveal {
  opacity: 0;
  translate: 0 28px;
  transition: opacity 650ms ease, translate 650ms cubic-bezier(.2,.75,.25,1);
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, translate;
}

html.has-scroll-reveal .scroll-reveal.is-visible {
  opacity: 1;
  translate: 0 0;
}

@media (prefers-reduced-motion: reduce) {
  html.has-scroll-reveal .scroll-reveal,
  html.has-scroll-reveal .scroll-reveal.is-visible {
    opacity: 1;
    translate: none;
    transition: none;
    will-change: auto;
  }
}
.color-FB{
   color:#1877F2 !important;
}
.color-arma{
   color:#1877F2 !important;
}
.color-white{
   color:#fff !important;  
}
/* Bandeau des dates, entre le slider et la présentation de l’événement */
.dates-banner {
  background:#ffd200;
  color:#142025;
  padding:22px 20px;
  text-align:center;
}
.dates-banner1 {
  font-size:40px;
  font-weight:800;
  line-height:1.2;
}
.dates-banner2 {
  font-size:40px;
  font-weight:600;
  line-height:1.2;
}
@media (max-width:600px) {
  .dates-banner1 { font-size:28px; padding:18px 16px; }
  .dates-banner2 { font-size:26px; padding:18px 16px; }
}
.parallax {
  margin-top: -1px;
}