/* ============================================================
   Praesto redesign — designsysteem (fase 1)
   Fundering: tokens, knoppen, eyebrow, sectieritme, reveal.
   Alles geprefixt 'pr-' / '--pr-' zodat het nooit botst met ACSS.
   Sectie-CSS (hero, pijlers, enz.) volgt per latere fase.
   ============================================================ */

:root{
  --pr-ink:#1b1216;
  --pr-ink-soft:#42343a;
  --pr-ink-dim:#6c5b62;
  --pr-wine:#6e0a1b;
  --pr-wine-deep:#430611;
  --pr-red:#d0132e;
  --pr-red-bright:#f0334c;
  --pr-paper:#fbf6f2;
  --pr-sand:#f1e7df;
  --pr-line:rgba(27,18,22,.12);
  --pr-gold:#e0a43b;
  --pr-on-dark:#f7ede9;
  --pr-on-dark-dim:rgba(247,237,233,.66);
  --pr-stretch:6px 84px 6px 84px;       /* signatuur: stretch-tent afronding */
  --pr-stretch-sm:5px 48px 5px 48px;
  --pr-ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- eyebrow ---------- */
.pr-eyebrow{
  font-family:"Manrope",system-ui,sans-serif;
  font-weight:700;
  font-size:.74rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--pr-red);
  display:inline-flex;
  align-items:center;
  gap:.6em;
}
.pr-eyebrow::before{
  content:"";
  width:22px;
  height:2px;
  background:var(--pr-red);
  display:inline-block;
}
.pr-eyebrow--on-dark{ color:#ff8a98; }
.pr-eyebrow--on-dark::before{ background:#ff8a98; }

/* ---------- knoppen: één systeem ---------- */
.pr-btn{
  display:inline-flex;
  align-items:center;
  gap:.55em;
  font-family:"Manrope",system-ui,sans-serif;
  font-weight:700;
  font-size:.98rem;
  line-height:1;
  padding:15px 26px;
  border-radius:999px;
  cursor:pointer;
  border:1.5px solid transparent;
  text-decoration:none;
  transition:transform .25s var(--pr-ease), background .25s, color .25s, border-color .25s;
  white-space:nowrap;
}
.pr-btn:hover{ transform:translateY(-2px); }
.pr-btn--primary{ background:var(--pr-red); color:#fff; }
.pr-btn--primary:hover{ background:var(--pr-red-bright); }
.pr-btn--ghost{ background:transparent; color:var(--pr-ink); border-color:var(--pr-line); }
.pr-btn--ghost:hover{ border-color:var(--pr-ink); }
.pr-btn--ghost-on-dark{ background:transparent; color:var(--pr-on-dark); border-color:rgba(247,237,233,.32); }
.pr-btn--ghost-on-dark:hover{ border-color:var(--pr-on-dark); }
.pr-btn__arrow{ transition:transform .25s var(--pr-ease); }
.pr-btn:hover .pr-btn__arrow{ transform:translateX(3px); }

/* ---------- sectieritme & achtergronden ---------- */
.pr-section{ padding:92px 0; }
.pr-section--sand{ background:var(--pr-sand); }
.pr-section--dark{
  background:linear-gradient(160deg,var(--pr-ink),#241a1e);
  color:var(--pr-on-dark);
}

/* ---------- stretch-afronding helpers ---------- */
.pr-stretch{ border-radius:var(--pr-stretch); overflow:hidden; }
.pr-stretch-sm{ border-radius:var(--pr-stretch-sm); overflow:hidden; }

/* ---------- scroll-reveal ----------
   Alleen verbergen wanneer JS actief is (html.pr-js),
   zodat content nooit onzichtbaar blijft als JS faalt. */
html.pr-js .pr-reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .7s var(--pr-ease), transform .7s var(--pr-ease);
}
html.pr-js .pr-reveal.is-in{
  opacity:1;
  transform:none;
}

@media (prefers-reduced-motion: reduce){
  .pr-btn, .pr-btn__arrow{ transition:none; }
  html.pr-js .pr-reveal{ opacity:1; transform:none; transition:none; }
}

/* ============================================================
   Fase 2 — Header & Footer
   ============================================================ */

/* ---------- Header (concept) ---------- */
#brx-header{ background:transparent; }
.pr-hdr{ position:fixed; top:0; left:0; right:0; z-index:100; padding:26px 0; transition:background .3s var(--pr-ease), box-shadow .3s, padding .3s var(--pr-ease); }
.pr-hdr.is-scrolled{ background:rgba(251,246,242,.92); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); box-shadow:0 1px 0 var(--pr-line); padding:18px 0; }
.pr-hdr.brxe-section{ display:block; }
.pr-hdr > .pr-nav, .pr-nav{ position:relative; display:flex; align-items:center; justify-content:space-between; gap:24px; width:100%; }

.pr-logo{ font-family:"Sora",sans-serif; font-weight:800; font-size:1.5rem; letter-spacing:.04em; color:var(--pr-on-dark); text-decoration:none; transition:color .3s; }
.pr-logo .pr-ae{ color:var(--pr-red-bright); }
.pr-hdr.is-scrolled .pr-logo{ color:var(--pr-ink); }
.pr-hdr.is-scrolled .pr-logo .pr-ae{ color:var(--pr-red); }
/* logo-SVG: wit over hero (interne .cls-1 fill:#fff) -> donker bij scroll */
.pr-hdr .brxe-svg .cls-1{ transition:fill .3s; }
.pr-hdr.is-scrolled .brxe-svg .cls-1{ fill:var(--pr-ink); }

.pr-nav-links{ display:flex; gap:30px; align-items:center; }
.pr-nav-links .brxe-text-link{ font-family:"Manrope",sans-serif; font-weight:600; font-size:.97rem; color:var(--pr-on-dark); position:relative; transition:color .3s; padding:4px 0; text-decoration:none; }
.pr-nav-links .brxe-text-link::after{ content:""; position:absolute; left:0; bottom:0; height:2px; width:0; background:var(--pr-red); transition:width .25s var(--pr-ease); }
.pr-nav-links .brxe-text-link:hover::after{ width:100%; }
.pr-hdr.is-scrolled .pr-nav-links .brxe-text-link{ color:var(--pr-ink-soft); }

.pr-menu-btn{ display:none; flex:none; width:42px; box-sizing:border-box; flex-direction:column; align-items:center; justify-content:center; gap:5px; padding:8px; cursor:pointer; background:none; border:none; }
.pr-menu-btn .pr-bar{ width:26px; height:2px; background:var(--pr-on-dark); transition:.3s; }
.pr-hdr.is-scrolled .pr-menu-btn .pr-bar{ background:var(--pr-ink); }

@media(max-width:920px){
  .pr-nav-links{ position:absolute; top:calc(100% + 8px); left:0; right:0; flex-direction:column; align-items:stretch; gap:0; background:rgba(251,246,242,.98); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); box-shadow:0 24px 48px -24px rgba(27,18,22,.35); border-radius:14px; padding:10px 0; display:none; }
  .pr-nav-links.is-open{ display:flex; }
  .pr-nav-links .brxe-text-link{ color:var(--pr-ink-soft); padding:14px 26px; }
  .pr-nav-links .brxe-text-link::after{ display:none; }
  .pr-nav-links .pr-btn{ margin:10px 26px; }
  .pr-menu-btn{ display:flex; }
}

/* ---------- Footer ---------- */
.pr-footer.brxe-section, .pr-footer{ background:var(--pr-ink); color:var(--pr-on-dark); }
.pr-footer .brxe-heading{ color:var(--pr-on-dark); }
.pr-footer .brxe-block > .brxe-heading:has(+ .brxe-list){
  color:#ff8a98; font-size:.82rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin-bottom:14px;
}
.pr-footer ul, .pr-footer ol{ list-style:none; padding:0; margin:0; }
.pr-footer li{ margin-bottom:9px; }
.pr-footer a{ color:var(--pr-on-dark-dim); transition:color .2s; }
.pr-footer a:hover{ color:var(--pr-on-dark); }
.pr-footer svg .cls-1{ fill:#fff; }
/* ============================================================
   Fase 3 \u2014 Hero (brok 1)
   ============================================================ */
#brxe-kwkkaq.pr-hero{
  background:radial-gradient(120% 120% at 85% 12%, rgba(208,19,46,.45), transparent 55%), linear-gradient(150deg, var(--pr-wine) 0%, var(--pr-wine-deep) 72%);
}
/* rode overlay-lagen neutraliseren zodat wijnrood schoon doorkomt */
#brxe-kwkkaq.pr-hero #brxe-ulqutb,
#brxe-kwkkaq.pr-hero #brxe-ohubev{ background:transparent; background-image:none; mix-blend-mode:normal; }
/* hero-beeld: stretch-frame */
.pr-hero__media{ border-radius:var(--pr-stretch); overflow:hidden; }
/* hulp-balk blijft een witte pil */
.pr-helpbar{ border-radius:18px; }

/* Hero \u2014 hulp-balk knoppen (specificiteit > Bricks-default) */
.pr-helpbar .brxe-button.pr-btn{ background:transparent; color:var(--pr-ink); border:1.5px solid var(--pr-line); border-radius:999px; padding:13px 22px; font-family:"Sora",system-ui,sans-serif; font-weight:600; box-shadow:none; transition:border-color .25s, transform .25s var(--pr-ease); }
.pr-helpbar .brxe-button.pr-btn:hover{ border-color:var(--pr-ink); transform:translateY(-2px); }
/* rating-badge subtiel i.p.v. grijze pil */
#brxe-mtvlgd{ background:transparent; color:var(--pr-on-dark); font-weight:600; padding-left:0; }

/* rating-regel: lichte tekst op wijnrood */
#brxe-oyednt, #brxe-oyednt *, #brxe-mtvlgd, #brxe-mtvlgd *{ color:var(--pr-on-dark); }

/* rating-chip: lichte pil, donkere (inline) tekst blijft leesbaar */
#brxe-oyednt{ background:var(--pr-paper); border-radius:999px; padding:8px 16px; display:inline-flex; align-items:center; width:auto; }
#brxe-oyednt, #brxe-oyednt *{ color:var(--pr-ink); }

/* ============================================================
   Fase 3 — Volledige homepage (native Bricks build)
   ============================================================ */
.pr-wrap{ max-width:1200px; margin:0 auto; padding:0 28px; width:100%; }
.pr-sec{ padding:92px 0; }
.pr-sec--sand{ background:var(--pr-sand); }
.pr-sec--dark{ background:linear-gradient(160deg,var(--pr-ink),#241a1e); color:var(--pr-on-dark); }
.pr-center{ text-align:center; }
.pr-sec__head{ max-width:none; width:100%; margin-bottom:46px; text-align:center; }
.pr-sec__head .pr-eyebrow{ justify-content:center; }
.pr-sec__head .pr-sec__sub{ max-width:640px; margin-left:auto; margin-right:auto; }
.pr-sec__head.pr-center{ margin-left:auto; margin-right:auto; }
.pr-h2{ font-size:clamp(1.9rem,3.5vw,3rem); margin:14px 0 12px; }
.pr-sec__sub{ color:var(--pr-ink-dim); font-size:1.06rem; }
.pr-sec--dark .pr-sec__sub{ color:var(--pr-on-dark-dim); }
.pr-accent{ color:#ff8a98; }

/* buttons (specificiteit > Bricks default) */
.brxe-button.pr-btn, .brxe-text-link.pr-btn{ display:inline-flex; align-items:center; gap:.5em; padding:15px 26px; border-radius:999px; border:1.5px solid transparent; font-family:"Manrope",sans-serif; font-weight:700; font-size:.98rem; text-decoration:none; transition:transform .25s var(--pr-ease), background .25s, color .25s, border-color .25s; }
.brxe-button.pr-btn--primary, .brxe-text-link.pr-btn--primary{ background:var(--pr-red); color:#fff; }
.brxe-button.pr-btn--primary:hover{ background:var(--pr-red-bright); transform:translateY(-2px); }
.brxe-text-link.pr-btn--ghost, .brxe-button.pr-btn--ghost{ background:transparent; color:var(--pr-ink); border-color:var(--pr-line); }
.brxe-text-link.pr-btn--ghost:hover, .brxe-button.pr-btn--ghost:hover{ border-color:var(--pr-ink); transform:translateY(-2px); }
.brxe-text-link.pr-btn--ghost-on-dark, .brxe-button.pr-btn--ghost-on-dark{ background:transparent; color:var(--pr-on-dark); border-color:rgba(247,237,233,.32); }
.brxe-text-link.pr-btn--ghost-on-dark:hover{ border-color:var(--pr-on-dark); transform:translateY(-2px); }

/* image blocks */
.pr-hero__media, .pr-pillar__pic, .pr-project__pic{ background-size:cover; background-position:center; }
.pr-img-hero{ background-image:linear-gradient(140deg,#8a1224,#430611); background-image:url(/wp-content/uploads/2025/01/09682030-e28a-4755-84f5-a4b35876c8a1-1024x683.jpg); }
.pr-img-event{ background-image:url(/wp-content/uploads/2025/07/praesto-event-support-bol-adviseurs-kopie-2-1024x576.webp),linear-gradient(140deg,#d0132e,#6e0a1b); }
.pr-img-verhuur{ background-image:url(/wp-content/uploads/2026/03/IMG_2100-1024x768.jpg),linear-gradient(140deg,#8a1224,#430611); }
.pr-img-stretch{ background-image:url(/wp-content/uploads/2026/03/IMG_1363-1024x768.jpeg),linear-gradient(140deg,#6e0a1b,#241a1e); }
.pr-img-proj1{ background-image:url(/wp-content/uploads/2025/01/IMG_6147-1024x768.jpg),linear-gradient(140deg,#d0132e,#430611); }
.pr-img-proj2{ background-image:url(/wp-content/uploads/2026/03/viceversa-venray-bedrijfsevent-in-venray-praesto.jpg),linear-gradient(140deg,#8a1224,#241a1e); }
.pr-img-proj3{ background-image:url(/wp-content/uploads/2026/03/MVI_1648.00_00_04_42.Still012-1024x576.jpg),linear-gradient(140deg,#6e0a1b,#241a1e); }

/* HERO */
.pr-hero{ background:radial-gradient(120% 120% at 85% 12%, rgba(208,19,46,.45), transparent 55%), linear-gradient(150deg,var(--pr-wine) 0%, var(--pr-wine-deep) 72%); color:var(--pr-on-dark); padding-top:170px; }
.pr-hero__grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:60px; align-items:center; }
.pr-hero__title{ font-size:clamp(3rem,6vw,5.4rem); margin:20px 0 0; color:#fff; }
.pr-hero .pr-lead{ font-size:1.18rem; color:var(--pr-on-dark-dim); max-width:34ch; margin:22px 0 30px; }
.pr-hero__cta{ display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.pr-rating{ display:flex; align-items:center; gap:12px; margin-top:32px; }
.pr-stars{ color:var(--pr-gold); letter-spacing:2px; }
.pr-rating__txt{ color:var(--pr-on-dark-dim); font-size:.92rem; }
.pr-hero__media{ aspect-ratio:4/4.4; border-radius:var(--pr-stretch); box-shadow:0 40px 80px -30px rgba(0,0,0,.6); }

/* TRUST */
.pr-trust{ padding:26px 0; border-bottom:1px solid var(--pr-line); }
.pr-trust__row{ display:flex; align-items:center; gap:30px; flex-wrap:wrap; justify-content:center; }
.pr-trust__lbl{ font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--pr-ink-dim); font-weight:700; }
.pr-trust__logo{ font-family:"Sora",sans-serif; font-weight:600; color:#b7a79f; font-size:1rem; }

/* GRIDS */
.pr-grid-2{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.pr-grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.pr-grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }

/* PIJLERS */
.pr-pillar{ background:#fff; border:1px solid var(--pr-line); border-radius:18px; overflow:hidden; display:flex; flex-direction:column; position:relative; transition:transform .35s var(--pr-ease), box-shadow .35s; }
.pr-pillar::before{ content:""; position:absolute; top:0; left:0; right:0; height:3px; background:var(--pr-red); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--pr-ease); z-index:3; }
.pr-pillar:hover{ transform:translateY(-6px); box-shadow:0 30px 50px -28px rgba(110,10,27,.45); }
.pr-pillar:hover::before{ transform:scaleX(1); }
.pr-pillar__pic{ aspect-ratio:16/10; }
.pr-pillar__body{ padding:26px 24px 28px; display:flex; flex-direction:column; flex:1; }
.pr-pillar__body h3{ font-size:1.4rem; margin-bottom:10px; }
.pr-pillar__txt{ color:var(--pr-ink-dim); font-size:.97rem; flex:1; }
.pr-pillar__foot{ margin-top:18px; }
.pr-go{ font-weight:700; color:var(--pr-red); text-decoration:none; }
.pr-tag-soon{ display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--pr-ink-dim); background:var(--pr-sand); padding:6px 12px; border-radius:999px; }

/* STAPPEN */
.pr-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; counter-reset:step; }
.pr-step{ position:relative; padding-top:20px; border-top:1px solid #d9d9d9; }
.pr-step::before{ counter-increment:step; content:"0" counter(step); font-family:"Sora",sans-serif; font-weight:800; font-size:2.5rem; color:var(--pr-red); display:block; line-height:1; margin-bottom:12px; }
.pr-step h3{ font-size:1.28rem; margin-bottom:8px; }
.pr-step p{ color:var(--pr-ink-dim); font-size:.97rem; }

/* USP */
.pr-usp{ background:#fff; border:1px solid var(--pr-line); border-radius:16px; padding:26px 22px; }
.pr-usp h3{ font-size:1.1rem; margin-bottom:6px; }
.pr-usp p{ color:var(--pr-ink-dim); font-size:.92rem; line-height:1.6; }

/* PROJECTEN */
.pr-project__pic{ aspect-ratio:4/3; border-radius:var(--pr-stretch-sm); box-shadow:0 24px 50px -30px rgba(0,0,0,.6); transition:transform .4s var(--pr-ease); }
.pr-project:hover .pr-project__pic{ transform:translateY(-5px); }
.pr-project__meta{ margin:16px 0 6px; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; color:#ff8a98; font-weight:700; }
.pr-project h3{ font-size:1.2rem; color:var(--pr-on-dark); }
.pr-sec--dark .pr-center{ margin-top:42px; }

/* REVIEWS */
.pr-rev-top{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:42px; flex-wrap:wrap; }
.pr-rev-score{ text-align:right; }
.pr-rev-score__num{ font-size:2.5rem; line-height:1; }
.pr-rev-score__txt{ color:var(--pr-ink-dim); font-size:.88rem; }
.pr-review{ background:#fff; border:1px solid var(--pr-line); border-radius:18px; padding:28px 26px; transition:transform .3s var(--pr-ease), box-shadow .3s var(--pr-ease), border-color .3s var(--pr-ease); }
.pr-review:hover{ transform:translateY(-4px); border-color:rgba(208,19,46,.35); box-shadow:0 18px 40px -22px rgba(27,18,22,.35); }
.pr-review h3{ font-size:1.15rem; margin:12px 0 8px; }
.pr-review p{ color:var(--pr-ink-soft); font-size:.98rem; }
.pr-grid-2 .pr-review{ height:100%; display:flex; flex-direction:column; }
.pr-grid-2 .pr-review .pr-who{ margin-top:auto; }
.pr-who{ margin-top:16px; font-weight:700; font-size:.9rem; color:var(--pr-ink-dim); }

/* FAQ */
.pr-faq{ max-width:820px; margin:0 auto; }
.pr-qa{ border-bottom:1px solid var(--pr-line); }
.brxe-button.pr-qa__q{ width:100%; background:none; border:none; cursor:pointer; text-align:left; padding:24px 0; display:flex; justify-content:space-between; align-items:center; gap:20px; font-family:"Sora",sans-serif; font-weight:700; font-size:1.12rem; color:var(--pr-ink); }
.pr-qa__q::after{ content:"+"; font-size:1.5rem; font-weight:400; color:var(--pr-red); transition:transform .3s; }
.pr-qa.is-open .pr-qa__q::after{ transform:rotate(45deg); }
.pr-qa__ans{ max-height:0; overflow:hidden; transition:max-height .35s var(--pr-ease); }
.pr-qa__ans > *{ color:var(--pr-ink-dim); max-width:64ch; line-height:1.7; }
.pr-qa__ans > *:first-child{ padding-top:4px; }
.pr-qa__ans > *:last-child{ padding-bottom:28px; }
.pr-qa__ans p{ margin:0 0 14px; }
.pr-qa__ans p:last-child{ margin-bottom:0; }

/* FINAL CTA */
.pr-final{ background:radial-gradient(120% 130% at 20% 0%, rgba(208,19,46,.5), transparent 55%), linear-gradient(150deg,var(--pr-wine),var(--pr-wine-deep)); color:var(--pr-on-dark); text-align:center; }
.pr-final .pr-wrap{ max-width:760px; }
.pr-final .pr-h2{ color:#fff; }
.pr-final__sub{ color:var(--pr-on-dark-dim); font-size:1.13rem; margin-bottom:30px; }
.pr-final__row{ display:flex; gap:14px; justify-content:center; align-items:center; flex-wrap:wrap; }
.pr-final__or{ color:var(--pr-on-dark-dim); font-size:.95rem; }
.pr-mail{ font-family:"Sora",sans-serif; font-weight:600; color:#fff; }

/* RESPONSIVE */
@media(max-width:920px){
  .pr-hero__grid, .pr-grid-3, .pr-steps, .pr-grid-2{ grid-template-columns:1fr; }
  .pr-grid-4{ grid-template-columns:1fr 1fr; }
  .pr-hero__media{ aspect-ratio:16/11; }
}
@media(max-width:560px){
  .pr-sec{ padding:60px 0; }
  .pr-grid-4{ grid-template-columns:1fr; }
  .pr-hero__cta, .pr-final__row{ flex-direction:column; align-items:stretch; }
  .pr-hero{ padding-top:130px; }
}
/* ============================================================
   Fase 3 — Inner pages: page-hero + reviews-wall
   ============================================================ */
.pr-page-hero{ background:radial-gradient(120% 130% at 88% 0%, rgba(208,19,46,.5), transparent 58%), linear-gradient(150deg,var(--pr-wine),var(--pr-wine-deep)); color:var(--pr-on-dark); padding:170px 0 80px; }
.pr-page-hero__title{ font-size:clamp(2.4rem,5vw,4rem); margin-top:16px; color:#fff; }
.pr-page-hero__sub{ color:var(--pr-on-dark-dim); font-size:1.15rem; max-width:56ch; margin-top:18px; }
.pr-ph-meta{ display:flex; gap:30px; margin-top:28px; flex-wrap:wrap; }
.pr-ph-meta__lbl{ font-size:.76rem; letter-spacing:.1em; text-transform:uppercase; color:#ff8a98; font-weight:700; }
.pr-ph-meta__val{ font-family:"Sora",sans-serif; font-size:1.05rem; color:#fff; font-weight:700; margin-top:2px; }
.pr-rev-wall{ column-count:3; column-gap:24px; }
.pr-rev-wall .pr-review{ margin-bottom:24px; break-inside:avoid; -webkit-column-break-inside:avoid; display:inline-block; width:100%; }
@media(max-width:920px){ .pr-rev-wall{ column-count:2; } .pr-page-hero{ padding-top:140px; } }
@media(max-width:560px){ .pr-rev-wall{ column-count:1; } }
/* ---------- Contact ---------- */
.pr-contact-grid{ display:grid; grid-template-columns:1fr 1.05fr; gap:56px; align-items:start; }
.pr-contact-info__title{ font-size:1.7rem; margin-bottom:8px; }
.pr-contact-info__intro{ color:var(--pr-ink-dim); margin-bottom:14px; }
.pr-contact-line{ padding:18px 0; border-bottom:1px solid var(--pr-line); }
.pr-contact-line__lbl{ font-family:"Sora",sans-serif; font-weight:700; font-size:1rem; }
.pr-contact-line__val{ color:var(--pr-ink-dim); font-size:.95rem; margin-top:2px; }
.pr-contact-card{ background:#fff; border:1px solid var(--pr-line); border-radius:20px; padding:34px 32px; box-shadow:0 30px 60px -40px rgba(110,10,27,.4); }
.pr-contact-card__title{ font-size:1.4rem; margin-bottom:10px; }
.pr-contact-card__txt{ color:var(--pr-ink-dim); margin-bottom:22px; }
.pr-contact-card__cta{ display:flex; gap:12px; flex-wrap:wrap; }
.pr-contact-card__mail{ margin-top:18px; font-family:"Sora",sans-serif; font-weight:600; color:var(--pr-ink); }
@media(max-width:920px){ .pr-contact-grid{ grid-template-columns:1fr; gap:34px; } }
/* ---------- Verhuur categorie-grid ---------- */
.pr-cat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.pr-cat{ position:relative; border-radius:16px; overflow:hidden; aspect-ratio:4/3; display:flex; align-items:flex-end; color:#fff; box-shadow:0 20px 40px -28px rgba(110,10,27,.5); transition:transform .35s var(--pr-ease); cursor:pointer; text-decoration:none; }
.pr-cat:hover{ transform:translateY(-5px); }
.pr-cat__bg{ position:absolute; inset:0; background-size:cover; background-position:center; transition:transform .5s var(--pr-ease); z-index:0; }
.pr-cat:hover .pr-cat__bg{ transform:scale(1.05); }
.pr-cat::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 30%, rgba(27,18,22,.82)); z-index:1; }
.pr-cat__lbl{ position:relative; z-index:2; padding:22px; width:100%; display:flex; align-items:center; justify-content:space-between; }
.pr-cat__name{ font-size:1.25rem; color:#fff; margin:0; }
.pr-cat__arrow{ color:#fff; font-size:1.1rem; }
.pr-cat__sub{ position:absolute; top:16px; left:16px; z-index:2; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; background:rgba(251,246,242,.92); color:var(--pr-ink); padding:5px 11px; border-radius:999px; font-weight:700; }
.pr-cat__bg.g1{ background-image:linear-gradient(140deg,#d0132e,#6e0a1b); }
.pr-cat__bg.g2{ background-image:linear-gradient(140deg,#8a1224,#430611); }
.pr-cat__bg.g3{ background-image:linear-gradient(140deg,#6e0a1b,#241a1e); }
.pr-cat__bg.g4{ background-image:linear-gradient(140deg,#a01024,#3a0a14); }
.pr-cat__bg.g5{ background-image:linear-gradient(140deg,#b51228,#5a0817); }
.pr-cat__bg.g6{ background-image:linear-gradient(140deg,#7a0f1f,#2a0712); }
.pr-cat__bg.pr-img-meubilair{ background-image:url(/wp-content/uploads/2026/03/IMG_2100-1024x768.jpg); }
.pr-cat__bg.pr-img-aankleding{ background-image:url(/wp-content/uploads/2026/03/By-kimdas-44_websize-683x1024.jpg); }
.pr-cat__bg.pr-img-decoratie{ background-image:url(/wp-content/uploads/2025/07/praesto-event-support-bol-adviseurs-kopie-2-1024x576.webp); }
@media(max-width:920px){ .pr-cat-grid{ grid-template-columns:1fr 1fr; } }
@media(max-width:560px){ .pr-cat-grid{ grid-template-columns:1fr; } }
.pr-cat__link{ position:absolute; inset:0; z-index:3; text-indent:-9999px; overflow:hidden; white-space:nowrap; }

/* ---------- Event op maat — single ---------- */
.pr-narrow{ max-width:780px; }
.pr-ph-cta{ margin-top:30px; }
.pr-prose{ color:var(--pr-ink-soft); font-size:1.08rem; }
.pr-prose p{ margin-bottom:1em; }
.pr-kopjes{ display:flex; flex-direction:column; gap:38px; }
.pr-kopje__title{ font-size:1.5rem; margin-bottom:10px; }
.pr-kopje__txt{ color:var(--pr-ink-dim); }
.pr-trust-band{ background:var(--pr-sand); border-radius:22px; padding:44px 42px; }
.pr-trust-band__title{ font-size:1.7rem; margin-bottom:12px; max-width:26ch; }
.pr-trust-band__txt{ color:var(--pr-ink-dim); max-width:62ch; }
.pr-pic-g{ background-image:linear-gradient(140deg,#8a1224,#430611); }

.pr-project__meta--light{ color:var(--pr-red); }

.pr-project{ position:relative; }
.pr-project__link{ position:absolute; inset:0; z-index:3; text-indent:-9999px; overflow:hidden; white-space:nowrap; }

/* cat-bg fallback */
.pr-cat__bg{ background-image:linear-gradient(140deg,#8a1224,#430611); }

/* ---------- USP iconen (Waarom Praesto) ---------- */
.pr-usp__ic{ width:42px; height:42px; border-radius:12px; background-color:rgba(208,19,46,.1); background-repeat:no-repeat; background-position:center; background-size:22px 22px; margin-bottom:16px; }
.pr-usp:nth-child(1) .pr-usp__ic{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d0132e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-6 9 6v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E"); }
.pr-usp:nth-child(2) .pr-usp__ic{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d0132e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2L3 14h7l-1 8 10-12h-7z'/%3E%3C/svg%3E"); }
.pr-usp:nth-child(3) .pr-usp__ic{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d0132e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.4 5 5.6.7-4 3.9 1 5.4L12 16l-5 2.9 1-5.4-4-3.9 5.6-.7z'/%3E%3C/svg%3E"); }
.pr-usp:nth-child(4) .pr-usp__ic{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d0132e' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); }
/* ---------- diagonale lijnen-overlay (concept) op wijnrode secties ---------- */
.pr-hero, .pr-page-hero, .pr-final{ position:relative; }
.pr-hero::after, .pr-page-hero::after, .pr-final::after{ content:""; position:absolute; inset:0; pointer-events:none; opacity:.06; z-index:1; background-image:repeating-linear-gradient(115deg,#fff 0 1px, transparent 1px 46px); }
.pr-hero > .pr-wrap, .pr-page-hero > .pr-wrap, .pr-final > .pr-wrap{ position:relative; z-index:2; }
/* ---------- Osmo mobiel menu ---------- */
.pr-osmonav{ display:none; }
@media(max-width:920px){
  .pr-osmonav{ display:block; position:fixed; inset:0; z-index:500; pointer-events:none; font-size:16px; }
  .pr-osmonav__backdrop{ position:absolute; inset:0; background:#1b1216; opacity:0; visibility:hidden; pointer-events:auto; transition:opacity .7s cubic-bezier(.5,.5,0,1), visibility .7s cubic-bezier(.5,.5,0,1); }
  [data-navigation-status="active"] .pr-osmonav__backdrop{ opacity:.45; visibility:visible; }
  .pr-osmonav__hn{ position:absolute; top:12px; left:16px; right:16px; border-radius:1.25em; transition:top .3s var(--pr-ease); }
  html.pr-scrolled .pr-osmonav__hn{ top:4px; }
  .pr-osmonav__panelbg{ position:absolute; top:0; right:0; width:3em; height:3em; background:var(--pr-paper); border-radius:1.25em; opacity:0; box-shadow:0 30px 70px -26px rgba(27,18,22,.5); transition:width .7s cubic-bezier(.5,.5,0,1), height .7s cubic-bezier(.5,.5,0,1), opacity .5s cubic-bezier(.5,.5,0,1); }
  [data-navigation-status="active"] .pr-osmonav__panelbg{ width:100%; height:100%; opacity:1; }
  .pr-osmonav__group{ position:relative; width:100%; box-sizing:border-box; pointer-events:none; transform-origin:100% 0; transform:scale(.15); opacity:0; visibility:hidden; display:flex; flex-direction:column; gap:1em; padding:1.6em 1.6em 1.4em; transition:opacity .5s cubic-bezier(.5,.5,0,1), transform .7s cubic-bezier(.5,.5,0,1), visibility .7s; }
  [data-navigation-status="active"] .pr-osmonav__group{ transform:scale(1); opacity:1; visibility:visible; pointer-events:auto; }
  .pr-osmonav__label{ opacity:.6; letter-spacing:.14em; text-transform:uppercase; font-family:"Manrope",sans-serif; font-weight:700; font-size:.72rem; color:var(--pr-ink-dim); margin:0 0 .2em; }
  .pr-osmonav__ul{ display:flex; flex-direction:column; gap:.55em; }
  .pr-osmonav__a{ display:flex; align-items:center; justify-content:space-between; gap:1.4em; text-decoration:none; color:var(--pr-ink); }
  .pr-osmonav__p{ white-space:nowrap; font-family:"Sora",sans-serif; font-weight:800; font-size:1.7rem; line-height:1.1; }
  .pr-osmonav__dot{ display:block; width:.5em; height:.5em; border-radius:50%; background:var(--pr-red); flex-shrink:0; transform:scale(1); opacity:.5; transition:transform .5s cubic-bezier(.5,.5,0,1), opacity .5s; }
  .pr-osmonav__a:hover .pr-osmonav__dot, .pr-osmonav__a:focus .pr-osmonav__dot{ transform:scale(1); opacity:1; }
  .pr-osmonav__ctawrap{ overflow:hidden; border-radius:999px; margin-top:.6em; }
  .pr-osmonav__cta.pr-btn{ width:100%; justify-content:center; opacity:1; transform:translateY(-110%); transition:transform .45s cubic-bezier(.5,.5,0,1); }
  [data-navigation-status="active"] .pr-osmonav__cta.pr-btn{ transform:translateY(0); transition-delay:.35s; }
  .pr-osmonav__toggle{ position:absolute; top:0; right:0; width:3em; height:3em; display:flex; align-items:center; justify-content:center; pointer-events:auto; cursor:pointer; z-index:2; transition:transform .7s cubic-bezier(.5,.5,0,1); }
  [data-navigation-status="active"] .pr-osmonav__toggle{ transform:translate(-.4em,.4em); }
  .pr-osmonav__bar{ position:absolute; width:24px; height:2px; border-radius:2px; background:var(--pr-on-dark); transition:transform .7s cubic-bezier(.5,.5,0,1), background .3s; transform:translateY(-4px); }
  .pr-osmonav__bar:nth-child(2){ transform:translateY(4px); }
  html.pr-scrolled .pr-osmonav__bar{ background:var(--pr-ink); }
  [data-navigation-status="active"] .pr-osmonav__bar{ transform:translateY(0) rotate(45deg); background:var(--pr-ink); }
  [data-navigation-status="active"] .pr-osmonav__bar:nth-child(2){ transform:translateY(0) rotate(-45deg); }
}
html.pr-menu-open{ overflow:hidden; }
/* ---------- Verhuur-categorie template (2135) ---------- */
.pr-page-hero .pr-cathero__grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:56px; align-items:stretch; }
.pr-page-hero .pr-cathero__media{ border-radius:var(--pr-stretch); overflow:hidden; box-shadow:0 40px 80px -30px rgba(0,0,0,.6); min-height:220px; background-size:cover; background-position:center; }
.pr-catopts{ background:var(--pr-sand); }
.pr-catopts__head{ max-width:640px; margin:0 auto 52px; text-align:center; }
.pr-catopts__head .pr-eyebrow{ justify-content:center; }
.pr-catopts__title{ font-size:clamp(2rem,4vw,2.9rem); margin-top:8px; color:var(--pr-ink); }
.pr-catopts__sub{ color:var(--pr-ink-dim); margin:14px 0 0; }
.pr-catgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.pr-catcard{ background:#fff; border:1px solid var(--pr-line); border-radius:18px; overflow:hidden; display:flex; flex-direction:column; transition:transform .3s var(--pr-ease), box-shadow .3s var(--pr-ease), border-color .3s var(--pr-ease); }
.pr-catcard:hover{ transform:translateY(-6px); border-color:rgba(208,19,46,.35); box-shadow:0 26px 50px -26px rgba(27,18,22,.4); }
.pr-catcard__media{ aspect-ratio:4/3; background-size:cover; background-position:center; background-color:var(--pr-sand); }
.pr-catcard__body{ padding:26px 24px 28px; display:flex; flex-direction:column; flex:1; }
.pr-catcard__title{ font-size:1.32rem; }
.pr-catcard__text{ color:var(--pr-ink-soft); font-size:.99rem; margin:10px 0 0; }
@media(max-width:900px){
  .pr-page-hero .pr-cathero__grid{ grid-template-columns:1fr; gap:36px; }
  .pr-page-hero .pr-cathero__media{ aspect-ratio:16/11; min-height:0; border-radius:var(--pr-stretch-sm); }
  .pr-catgrid{ grid-template-columns:1fr 1fr; }
}
@media(max-width:560px){ .pr-catgrid{ grid-template-columns:1fr; } }
.pr-wrap.pr-center{ align-items:center; }

.pr-mail a{ color:inherit; text-decoration:none; transition:opacity .2s; }
.pr-mail a:hover{ text-decoration:underline; }

/* ---------- Project gallery: Osmo draggable slider ---------- */
.pr-project-gallery{ overflow:hidden; }
.pr-project-gallery .pr-sec__head{ margin-bottom:42px; }
.gsap-slider{ grid-column-gap:3em; grid-row-gap:3em; flex-flow:column; align-items:center; width:100%; padding-left:5vw; padding-right:5vw; display:flex; position:relative; overflow:hidden; }
.gsap-slider__collection{ width:100%; max-width:72em; }
.gsap-slider__list{ -webkit-user-select:none; user-select:none; will-change:transform; touch-action:pan-y; backface-visibility:hidden; display:flex; }
.gsap-slider__item{ width:calc(((100% - 1px) - (var(--slider-spv) - 1) * var(--slider-gap)) / var(--slider-spv)); margin-right:var(--slider-gap); flex:none; }
[data-gsap-slider-item]:last-child{ margin-right:0; }
.pr-gal-card{ position:relative; overflow:hidden; width:100%; border-radius:1.25em; border:1px solid var(--pr-line); background-color:var(--pr-sand); background-size:cover; background-position:center; background-repeat:no-repeat; transition:opacity .35s ease, filter .35s ease; }
.pr-gal-card .before__125{ padding-top:125%; }
[data-gsap-slider-list-status=grab] .pr-gal-card{ cursor:grab; }
[data-gsap-slider-list-status=grabbing] .pr-gal-card{ cursor:grabbing; }
[data-gsap-slider-item-status=not-active] .pr-gal-card{ opacity:.5; filter:saturate(.85); }
[data-gsap-slider-init]{ --slider-status:on; --slider-spv:3; --slider-gap:1.5em; }
@media(max-width:991px){ [data-gsap-slider-init]{ --slider-status:on; --slider-spv:2.25; --slider-gap:1.5em; } }
@media(max-width:767px){ [data-gsap-slider-init]{ --slider-status:on; --slider-spv:1.15; --slider-gap:1em; } }
.gsap-slider__controls{ grid-column-gap:.6em; grid-row-gap:.6em; justify-content:center; align-items:center; display:flex; }
[data-gsap-slider-status=not-active] [data-gsap-slider-controls]{ display:none; }
.gsap-slider__control{ font-family:Manrope,sans-serif; font-weight:700; color:var(--pr-on-dark); background:var(--pr-red); border:1.5px solid transparent; border-radius:999px; padding:.7em 1.6em; font-size:.95rem; cursor:pointer; transition:opacity .3s ease, background .25s ease, transform .25s ease; }
.gsap-slider__control:hover{ background:var(--pr-red-bright); transform:translateY(-2px); }
[data-gsap-slider-control-status=not-active]{ opacity:.25; pointer-events:none; }

.gsap-slider__list > .brxe-shortcode{ display:contents; }

/* ---------- Project services (strakke lijst) ---------- */
.pr-services{ background:var(--pr-sand); }
.pr-services .pr-catopts__head{ margin-bottom:34px; }
.pr-svc-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:0 56px; max-width:980px; margin:0 auto; }
.pr-svc-item{ display:flex; align-items:center; gap:.8em; padding:20px 2px; border-top:1px solid var(--pr-line); }
.pr-svc-item::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--pr-red); flex:none; }
.pr-svc-item span{ font-family:Manrope,sans-serif; font-weight:600; font-size:1.05rem; color:var(--pr-ink); letter-spacing:-.01em; line-height:1.3; }
@media(max-width:820px){ .pr-svc-grid{ grid-template-columns:repeat(2,1fr); gap:0 40px; } }
@media(max-width:520px){ .pr-svc-grid{ grid-template-columns:1fr; } }

/* Reviews-kop gecentreerd (alleen homepage, desktop) */
@media(min-width:768px){
  .pr-rev-top--center{ justify-content:center; align-items:center; }
  .pr-rev-top--center > *{ flex:0 0 auto; }
}

/* ============ LOGO MARQUEE (GSAP, js/marquee.js) ============ */
.pr-marquee{
  --pr-marquee-gap:48px;
  position:relative;
  display:flex; flex-direction:row; flex-wrap:nowrap; align-items:center;
  flex:1 1 0; min-width:0; max-width:100%;
  gap:0;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
}
.pr-marquee__track{
  display:flex; flex-direction:row; flex-wrap:nowrap; align-items:center;
  flex:0 0 auto; width:max-content; min-width:0; max-width:none;
  gap:var(--pr-marquee-gap);
  padding-right:var(--pr-marquee-gap); /* zorgt voor de naadloze aansluiting */
  will-change:transform;
}
.pr-marquee__track > *{ flex:0 0 auto; width:auto; max-width:none; }
.pr-marquee__track img,.pr-marquee__track svg{ display:block; max-width:none; }
@media(max-width:767px){ .pr-marquee{ --pr-marquee-gap:32px; } }
@media(prefers-reduced-motion:reduce){ .pr-marquee__track{ transform:none !important; } }
