/* district-bestelsysteem.css — paginalaag voor de werkplaats (bestelsysteem/).
   Altijd laden na css/origami.css en css/origami-district.css. */

/* — Hero: werkbank met de menukaart-telefoon ernaast — */
.district-hero--werkplaats{max-width:none;display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.district-hero--werkplaats h1{max-width:16ch}

/* — De menukaart: telefoonscherm als papieren kaart op de werkbank — */
.menukaart{margin:0;max-width:20rem;justify-self:center;padding:.85rem .85rem 1rem}
.menukaart-strip{display:flex;align-items:center;gap:.45rem;padding:0 .1rem .55rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;color:var(--petrol)}
.menukaart-strip::before{content:"";width:.38rem;height:.38rem;background:var(--crimson);transform:rotate(45deg)}
.menukaart img{width:100%;height:auto;aspect-ratio:540/980;object-fit:cover;object-position:top;border:1px solid var(--line)}
.menukaart figcaption{padding:.65rem .1rem 0;font-size:.8rem;opacity:.82}

/* — De kassabon: de afspraken zwart op wit — */
.kassabon{margin-top:clamp(2.6rem,5vw,4rem);padding:1rem clamp(1rem,3vw,1.8rem) 1.15rem}
.kassabon-kop{margin:0 0 .55rem;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--petrol)}
.kassabon-lijst{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.55rem 1.5rem;font-size:.86rem;font-weight:700}
.kassabon-lijst li{display:flex;align-items:center;gap:.5rem}
.kassabon-lijst i{flex:none;width:.4rem;height:.4rem;background:var(--crimson);transform:rotate(45deg)}

/* — Sectieritme op de werkbank — */
.ws-section{margin-top:clamp(4.2rem,9vw,6.8rem)}
.ws-section h2{font-size:clamp(2.1rem,4.2vw,3.5rem);max-width:18ch}
.ws-intro{max-width:46rem}

/* — Achter de schermen: echte schermen als papieren panelen — */
.schermen-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:2.5rem}
.scherm{margin:0;padding:.85rem .85rem 1.15rem}
.scherm img{width:100%;aspect-ratio:4/3;object-fit:contain;background:rgba(18,82,91,.07);border:1px solid var(--line)}
.scherm figcaption{padding-top:.85rem}
.scherm span{display:block;font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;font-weight:700;color:var(--petrol)}
.scherm h3{font:400 1.35rem/1.05 var(--serif);letter-spacing:-.03em;margin:.35rem 0 .4rem}
.scherm p{margin:0;font-size:.92rem;opacity:.85}

/* — Skins: vijf sferen als kaarten op tafel — */
.skins-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:2.5rem}
.skin{margin:0;padding:.7rem}
.skin img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;border:1px solid var(--line)}
.skin h3{font:400 1.2rem/1.1 var(--serif);letter-spacing:-.03em;margin:.65rem .15rem .15rem}

/* — Prijzen: één crimson prijskaart, één papieren combinatiepaneel — */
.prijs-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(1.4rem,3.5vw,2.6rem);margin-top:2.6rem;align-items:start}
.prijs-grid .price-card{margin:0 1.3rem 1.3rem 0}
.prijs-grid .price-card p{margin-bottom:1.2rem}
.price-card .prijs-per{margin:.15rem 0 1.1rem;font-size:.9rem;opacity:.92}
.prijs-lijst{list-style:none;margin:0 0 1.4rem;padding:0;display:grid;gap:.55rem;font-size:.93rem}
.prijs-lijst li{display:flex;gap:.55rem;align-items:baseline}
.prijs-lijst i{flex:none;width:.38rem;height:.38rem;background:var(--amber);transform:rotate(45deg) translateY(-1px)}
.prijs-voorbeeld{font-size:.88rem;font-weight:700}
/* wit i.p.v. amber: amber op crimson haalt op deze tekstgrootte geen AA (3.66:1) */
.price-card .prijs-voorbeeld b{color:#fff}
.prijs-combi{padding:clamp(1.4rem,3vw,2.2rem)}
.prijs-combi>span{font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;font-weight:700;color:var(--crimson)}
.prijs-combi h3{font:400 clamp(1.7rem,2.6vw,2.3rem)/1 var(--serif);letter-spacing:-.04em;margin:.55rem 0 .2rem}
.prijs-combi .prijs-opmaat{font:400 clamp(2.1rem,3.2vw,2.8rem)/1 var(--serif);letter-spacing:-.05em;margin:.5rem 0 1rem}
.prijs-combi .prijs-lijst i{background:var(--crimson)}
.prijs-combi p{margin-bottom:1.2rem}
.prijs-noot{max-width:42rem;margin:1.8rem auto 0;text-align:center;font-size:.84rem;opacity:.75}

/* — Anders dan de rest: korte stellingen met vouwlijn — */
.anders-lijst{list-style:none;padding:0;margin:2.6rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem 2rem}
.anders-lijst li{border-top:2px solid var(--ink);padding-top:.9rem}
.anders-lijst h3{font:400 1.35rem/1.1 var(--serif);letter-spacing:-.03em;margin:0 0 .45rem}
.anders-lijst p{margin:0;font-size:.95rem;opacity:.88}

/* — FAQ: vragen die openvouwen (native details, geen extra js) — */
.faq-vel{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,5vw,3.5rem);align-items:start;margin-top:0}
.vouw-vraag{border-bottom:1px solid var(--line)}
.vouw-vraag:first-of-type{border-top:1px solid var(--line)}
.vouw-vraag summary{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:1.05rem .15rem;font-weight:700;cursor:pointer;list-style:none}
.vouw-vraag summary::-webkit-details-marker{display:none}
.vouw-vraag summary::after{content:"+";flex:none;font-size:1.25rem;line-height:1;color:var(--crimson);transition:transform .25s var(--ease)}
.vouw-vraag[open] summary::after{transform:rotate(45deg)}
.vouw-vraag p{margin:0;padding:0 .15rem 1.15rem;max-width:38rem;font-size:.95rem}

/* — Slot-CTA met twee vervolgstappen — */
.district-cta .actions{justify-content:center;margin-top:0}

@media (max-width:900px){
  .district-hero--werkplaats{grid-template-columns:1fr}
  .menukaart{justify-self:start;max-width:18rem}
}
@media (max-width:820px){
  .schermen-grid,.skins-grid,.anders-lijst{grid-template-columns:repeat(2,1fr)}
  .prijs-grid{grid-template-columns:1fr}
  .prijs-grid .price-card{margin-right:.9rem}
  .faq-vel{grid-template-columns:1fr}
}
@media (max-width:560px){
  .schermen-grid,.skins-grid,.anders-lijst{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .vouw-vraag summary::after{transition:none}
}
