/* GJMENSENtuning — Gedeelde stijlen */
:root{--o:#e87722;--ol:#ff9a45;--d:#0d0d0d;--d2:#161616;--d4:#2a2a2a;--t:#e8e8e8;--m:#888}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Segoe UI',Arial,sans-serif;background:var(--d);color:var(--t);overflow-x:hidden}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;transition:background .3s,box-shadow .3s}
nav.scrolled{background:rgba(13,13,13,.97);box-shadow:0 2px 0 var(--o)}
.logo{font-size:21px;font-weight:900;color:#fff;letter-spacing:2px;text-decoration:none}
.logo em{color:var(--o);font-style:normal}
.nav-links{display:flex;gap:2.5rem;list-style:none;align-items:center}
.nav-links a{color:#bbb;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;transition:color .2s}
.nav-links a:hover{color:var(--o)}
.nav-cta{background:var(--o)!important;color:#111!important;padding:9px 22px;border-radius:4px}
.nav-cta:hover{background:var(--ol)!important}
@media(max-width:768px){
  nav{padding:0 1.2rem}
  .nav-links{gap:1.2rem}
  .nav-links a{font-size:12px}
}
@media(max-width:540px){
  .nav-links .hide-mobile{display:none}
}

/* SECTIES */
.sectie{padding:6rem 2rem;max-width:1060px;margin:0 auto}
.sectie-kop{margin-bottom:3rem}
.sl2{font-size:11px;font-weight:700;color:var(--o);text-transform:uppercase;letter-spacing:3px;margin-bottom:.6rem;display:flex;align-items:center;gap:8px}
.sl2::before{content:'';width:24px;height:2px;background:var(--o)}
.st{font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:900;color:#fff;letter-spacing:-.5px}
.ss{color:var(--m);font-size:15px;line-height:1.8;max-width:520px;margin-top:.8rem}
.divider{border:none;border-top:1px solid #1a1a1a}

/* KNOPPEN */
.btn-p{background:var(--o);color:#111;font-weight:800;padding:15px 34px;border-radius:5px;text-decoration:none;font-size:14px;letter-spacing:.5px;transition:background .2s,transform .15s;display:inline-block}
.btn-p:hover{background:var(--ol);transform:translateY(-2px)}
.btn-g{background:transparent;color:#fff;font-weight:700;padding:14px 32px;border-radius:5px;text-decoration:none;font-size:14px;border:1.5px solid rgba(255,255,255,.25);transition:border-color .2s,color .2s;display:inline-block}
.btn-g:hover{border-color:var(--o);color:var(--o)}
.tag{background:rgba(232,119,34,.1);color:var(--o);font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;letter-spacing:.5px}

/* FOOTER */
footer{background:#080808;border-top:2px solid var(--o);padding:2.5rem 3rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.fl{font-size:17px;font-weight:900;color:#fff;letter-spacing:2px}
.fl em{color:var(--o);font-style:normal}
footer p{color:#3a3a3a;font-size:13px}

/* MERKEN BALK */
.merken{background:var(--d2);border-top:1px solid #1e1e1e;border-bottom:1px solid #1e1e1e;padding:1.2rem 3rem;display:flex;align-items:center;justify-content:center;gap:3rem;flex-wrap:wrap}
.mk{font-size:13px;font-weight:700;color:#444;letter-spacing:3px;text-transform:uppercase;transition:color .2s;cursor:default}
.mk:hover{color:var(--o)}
.ms{color:#2a2a2a;font-size:18px}

/* FORMULIER */
.form-veld{display:flex;flex-direction:column;gap:5px}
.form-veld.full{grid-column:1/-1}
label{font-size:11px;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.8px}
input,select,textarea{background:#111;border:1px solid #2a2a2a;border-radius:7px;color:#eee;font-size:14px;padding:11px 14px;font-family:inherit;transition:border-color .2s;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--o)}
select option{background:#111}
textarea{resize:vertical;min-height:110px}

/* PAGINA HERO (diensten, contact) */
.page-hero{background:var(--d2);border-bottom:2px solid var(--o);padding:8rem 2rem 3rem;text-align:center}
.page-hero h1{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;color:#fff;margin-bottom:.8rem}
.page-hero h1 em{color:var(--o);font-style:normal}
.page-hero p{color:#888;font-size:15px;max-width:520px;margin:0 auto}

/* KAARTEN */
.kaart{background:var(--d2);border:1px solid var(--d4);border-radius:12px;padding:2.5rem;position:relative;overflow:hidden;transition:border-color .25s,transform .25s}
.kaart:hover{border-color:var(--o);transform:translateY(-4px)}
.kaart::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--o);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.kaart:hover::before{transform:scaleX(1)}
.kaart-nr{font-size:48px;font-weight:900;color:#1e1e1e;position:absolute;top:1.5rem;right:1.8rem;line-height:1}
.kaart-icon{width:52px;height:52px;background:rgba(232,119,34,.1);border:1px solid rgba(232,119,34,.25);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:1.5rem}
.kaart h3{font-size:20px;font-weight:800;color:#fff;margin-bottom:.7rem}
.kaart p{font-size:14px;color:#888;line-height:1.8;margin-bottom:1.4rem}
.tags{display:flex;flex-wrap:wrap;gap:6px}

/* GRID HELPERS */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media(max-width:700px){.grid-2,.grid-3{grid-template-columns:1fr}}

/* CONTACT ITEMS */
.ci{display:flex;align-items:flex-start;gap:14px;margin-bottom:.9rem}
.ci-dot{width:36px;height:36px;min-width:36px;background:rgba(232,119,34,.1);border:1px solid rgba(232,119,34,.2);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px}
.ci-info strong{display:block;font-size:11px;font-weight:700;color:var(--o);text-transform:uppercase;letter-spacing:1px;margin-bottom:2px}
.ci-info span{font-size:14px;color:#ccc;line-height:1.6}

/* OPENINGSTIJDEN */
.ot-tabel{width:100%;border-collapse:collapse;margin-top:1rem}
.ot-tabel tr{border-bottom:1px solid #1e1e1e}
.ot-tabel td{padding:7px 0;font-size:13px}
.ot-tabel td:first-child{color:#666}
.ot-tabel td:last-child{color:#ccc;text-align:right;font-weight:600}
.ot-gesloten{color:#3a3a3a!important;font-style:italic;font-weight:400!important}

/* USP LIJST */
.usps{list-style:none;margin-top:1.5rem;display:flex;flex-direction:column;gap:.6rem}
.usps li{display:flex;align-items:center;gap:12px;font-size:14px;color:#ccc}
.usps li::before{content:'';width:20px;height:20px;min-width:20px;background:rgba(232,119,34,.15) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10'%3E%3Cpath d='M2 5l2.5 2.5L8 3' stroke='%23e87722' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center;border:1px solid rgba(232,119,34,.4);border-radius:50%}
