.camper-main{padding-block:30px 44px}.back-link{color:var(--studio-muted)!important;font-size:14px}.back-link:hover{color:var(--studio-green)!important}
.camper-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:28px 0}.camper-heading h1{font-size:clamp(40px,5vw,64px)}.camper-heading h1 span{color:var(--studio-green)}.camper-heading>p{color:var(--studio-muted);font-size:16px}
.tour-layout{display:grid;grid-template-columns:minmax(0,1fr) 254px;gap:18px}.camper-stage{position:relative;overflow:hidden;border:1px solid #384037;border-radius:12px;min-width:0;height:640px;background:radial-gradient(ellipse at 50% 60%,#23362b,#0d1510 68%);isolation:isolate}
#camper-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#camper-canvas:active{cursor:grabbing}.stage-heading{position:absolute;top:22px;left:22px;display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:.04em;pointer-events:none;background:#071008b8;border-radius:20px;padding:9px 13px}.live-dot{width:6px;height:6px;background:var(--studio-green);border-radius:50%}
.stage-actions{position:absolute;right:20px;bottom:20px;display:flex;gap:8px}.stage-reset,.stage-download{padding:10px 14px;border:1px solid #4b654b;border-radius:8px;background:#071008d9;color:#e8f1e5;cursor:pointer;font-size:13px;line-height:1.2;text-decoration:none}.stage-reset:disabled{opacity:.45}.stage-download{border-color:var(--studio-green);color:var(--studio-green) !important}.stage-download:hover{background:#163016}
.hotspots{position:absolute;inset:0;pointer-events:none;overflow:hidden}.hotspot{position:absolute;top:0;left:0;pointer-events:auto;border:1px solid #71cf59;border-radius:20px;padding:8px 12px;background:#071008eb;color:#f0f6ee;display:flex;gap:8px;align-items:center;font-size:12px;white-space:nowrap;cursor:pointer;box-shadow:0 3px 12px #0008}.hotspot::before{content:'+';display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--studio-green);color:#071008;font-size:16px}.hotspot:hover{border-color:var(--studio-green);background:#183719}
.tour-panel{border:1px solid #29382d;border-radius:12px;background:#0b100dd9;padding:22px 18px}.tour-panel fieldset{border:0;margin:0;padding:0;min-width:0}.tour-panel .eyebrow{font-size:10px;letter-spacing:.17em}.view-buttons{display:grid;gap:5px}.view-buttons button{display:flex;align-items:center;gap:13px;padding:11px 12px;border:1px solid transparent;border-radius:7px;background:transparent;color:#c5cec3;text-align:left;font-size:14px;cursor:pointer}.view-buttons button>span{font-size:10px;color:#7e967b}.view-buttons button[aria-pressed=true]{border-color:#4c9d3e;background:#213e2266;color:#eeffe9}.view-buttons button[aria-pressed=true]>span{color:var(--studio-green)}.view-buttons button:hover{background:#17321b88}
.door-controls{border-top:1px solid #29382d;margin-top:22px;padding-top:22px}.door-controls button{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:10px 0;border:0;border-bottom:1px solid #202d23;background:none;color:#c5cec3;text-align:left;font-size:12px;cursor:pointer}.door-state{color:#97a592;border:1px solid #3a4b38;border-radius:20px;padding:4px 9px;font-size:10px}.door-controls [aria-pressed=true] .door-state{color:var(--studio-green);border-color:#4e923c;background:#152c15}.tour-panel fieldset:disabled{opacity:.45}
.tour-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:18px;color:var(--studio-muted);font-size:13px}.tour-note{margin-top:10px!important;color:#879780;font-size:12px}.loading-panel,.tour-error{position:absolute;inset:0;background:#0b120ff5;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;text-align:center}.loading-panel img{display:block;max-width:85%;width:540px;height:auto;max-height:70%;object-fit:contain;border-radius:8px;opacity:.8}.loading-panel>div{max-width:320px;width:100%}.loading-panel p{font-size:15px}progress{display:block;width:100%;height:5px;margin:15px 0;accent-color:var(--studio-green)}#load-label{font-size:12px;color:var(--studio-muted)}.tour-error p{max-width:420px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}
@media(min-width:1600px){.camper-stage{height:710px}}
@media(max-width:900px){.tour-layout{grid-template-columns:1fr}.camper-stage{height:560px}.tour-panel fieldset{display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.tour-panel fieldset>.eyebrow{grid-column:1}.view-buttons{grid-column:1}.door-controls{grid-column:2;grid-row:1/3;border:0;border-left:1px solid #29382d;padding:0 0 0 22px;margin:0}.camper-heading>p{font-size:14px}}
@media(max-width:550px){.camper-heading{align-items:start;flex-direction:column;gap:14px;margin-block:24px}.camper-heading>p br{display:none}.camper-stage{height:440px;max-height:65svh;min-height:330px}.tour-panel{padding:18px 12px}.tour-panel fieldset{column-gap:12px}.door-controls{padding-left:12px}.view-buttons button{font-size:12px;gap:8px;padding:10px 5px}.tour-panel .eyebrow{font-size:9px;letter-spacing:.1em}.door-controls button{font-size:11px}.stage-heading{top:14px;left:12px;font-size:10px}.stage-actions{right:12px;bottom:12px;gap:6px}.stage-reset,.stage-download{font-size:11px;padding:8px 10px}.hotspot{font-size:10px;padding:5px 8px;gap:5px}.hotspot::before{width:17px;height:17px}.camper-main{padding-top:24px}}

/* Eigen logo-accent voor deze beleving (gebouwd door scripts/build_logo_variants.py) */
.camper-page .site-header .brand::after { -webkit-mask-image: url("images/logo-kamper.png"); mask-image: url("images/logo-kamper.png"); }

/* Groot, zacht watermerk van het eigen logo-icoon naast de koptekst */
.camper-main { position:relative; isolation:isolate; overflow-x:clip; overflow-clip-margin:0; }
.camper-main::before { content:""; position:absolute; z-index:-1; pointer-events:none; top:6px; right:33%; width:clamp(170px, 16vw, 250px); aspect-ratio:424 / 336; background:url("images/logo-icoon-kamper.png") center / contain no-repeat; opacity:.08; }
@media (max-width:550px) { .camper-main::before { width:210px; top:-6px; right:-14%; opacity:.07; } }
/* Laadscherm: het eigen logo-icoon met een kleine animatie */
.camper-page .brand-loader { display:block; width:clamp(110px, 14vw, 150px); height:auto; overflow:visible; }
.camper-page .bl-glass { fill:#d9ffd0; opacity:.14; }
.camper-page .bl-glint { fill:#fff; opacity:.75; animation:bl-glint 2.2s ease-in-out infinite; }
@keyframes bl-glint { 0%, 20% { transform:translateX(-40px); } 70%, 100% { transform:translateX(200px); } }
@media (prefers-reduced-motion:reduce) { .camper-page .brand-loader * { animation:none !important; } }
/* Render-voorbeeld: wat de configurator straks oplevert */
.render-preview{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:clamp(24px,4vw,56px);align-items:center;margin-top:clamp(48px,7vw,88px);padding-top:clamp(36px,5vw,56px);border-top:1px solid #29382d}
.render-copy h2{font-size:clamp(28px,3.2vw,42px);line-height:1.1}.render-copy>p:not(.eyebrow):not(.render-soon){color:var(--studio-muted);font-size:16px;margin-block:18px 22px;max-width:440px}
.render-steps{list-style:none;margin:0;padding:0;display:grid;gap:0;max-width:400px}.render-steps li{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #202d23;color:#d7e0d4;font-size:14px}.render-steps li span{font-size:10px;color:var(--studio-green);letter-spacing:.08em}
.render-soon{display:inline-flex;align-items:center;gap:9px;margin-top:22px!important;padding:8px 13px;border:1px solid #2f4a2d;border-radius:20px;color:#c5cec3;font-size:12px}
.render-figure{margin:0}.render-figure img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #384037;box-shadow:0 18px 50px #0009}.render-figure figcaption{margin-top:10px;color:#879780;font-size:12px}
@media(max-width:900px){.render-preview{grid-template-columns:1fr}}
