/* ============================================================
   Morienco AR · decoratie per stijlpreset
   Alleen merkdecoratie. Kleuren en fonts komen uit het theme.
   Een prospect-demo erft de decoratie van zijn basisstijl.
   ============================================================ */

/* ---------- Fine dining: rust, haarlijnen, strakke hoeken ---------- */
.theme-fine{background:var(--bg) radial-gradient(120% 80% at 70% 0%,color-mix(in srgb,var(--accent) 7%,var(--bg)) 0%,var(--bg) 60%) fixed}
.theme-fine .btn,.theme-fine .modes,.theme-fine .modes button,.theme-fine .chip,.theme-fine .search,.theme-fine .pill-s,.theme-fine .s-bar button,.theme-fine .tray .go,.theme-fine .pairc .mini{border-radius:2px}
.theme-fine .tile,.theme-fine .dcard .ph,.theme-fine .pairc,.theme-fine .pairc .th,.theme-fine .row .th{border-radius:3px}
.theme-fine .tile::before{content:"";position:absolute;inset:7px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);z-index:2;pointer-events:none}
.theme-fine .sec-h h3,.theme-fine .cat-h{letter-spacing:.01em}
.theme-fine .sec-h{border-bottom:1px solid var(--line);margin:0 18px 12px;padding-left:0;padding-right:0}
.theme-fine .s-block{border-top:0;position:relative;padding-top:20px}
.theme-fine .s-block::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.55}
.theme-fine .deco-hero::before{content:"";position:absolute;inset:-26px -22px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);pointer-events:none}
.theme-fine .hero-inner h1{font-weight:500}
.theme-fine .tray{border-radius:4px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}
.theme-fine .pick{border-radius:2px}

/* ---------- Brasserie: messing, lijstwerk, klassiek ---------- */
.theme-brasserie{background:var(--bg) radial-gradient(110% 80% at 80% 0%,color-mix(in srgb,var(--accent) 9%,var(--bg)) 0%,var(--bg) 58%) fixed}
.theme-brasserie .cat-h{flex-direction:column;align-items:flex-start;gap:6px}
.theme-brasserie .cat-h::after{content:"";width:64px;height:2px;background:var(--accent)}
.theme-brasserie .tile{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent)}
.theme-brasserie .tile b{font-size:24px}
.theme-brasserie .sec-h h3::after{content:"";display:block;width:36px;height:2px;background:var(--accent);margin-top:8px}
.theme-brasserie .btn-ghost{border-color:color-mix(in srgb,var(--accent) 60%,transparent)}
.theme-brasserie .deco-hero::before{content:"";position:absolute;inset:-24px -20px;border-top:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-bottom:1px solid color-mix(in srgb,var(--accent) 45%,transparent);pointer-events:none}

/* ---------- Shared dining: warm, rond, uitnodigend ---------- */
.theme-sharing{background:var(--bg) radial-gradient(120% 80% at 80% 0%,color-mix(in srgb,var(--highlight) 45%,var(--bg)) 0%,var(--bg) 60%) fixed}
.theme-sharing .tile,.theme-sharing .dcard .ph{border-radius:18px}
.theme-sharing .pairc{border-radius:16px}
.theme-sharing .btn-ghost{border:1px solid var(--accent);box-shadow:0 0 0 3px var(--bg),0 0 0 4px color-mix(in srgb,var(--accent) 40%,transparent)}
.theme-sharing .sec-h h3{padding:3px 14px 5px;border:1px solid color-mix(in srgb,var(--accent) 70%,transparent);border-radius:999px;font-size:21px}
.theme-sharing .surprise{border-radius:18px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}
.theme-sharing .pick{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--accent),0 6px 16px rgba(0,0,0,.4)}

/* ---------- Café: licht, zacht, speels ---------- */
.theme-cafe{background:var(--bg)}
.theme-cafe .tile,.theme-cafe .dcard .ph{border-radius:20px}
.theme-cafe .pairc,.theme-cafe .info,.theme-cafe .warnbox{border-radius:16px}
.theme-cafe .row .th{border-radius:14px}
.theme-cafe .sec-h h3{font-size:24px;letter-spacing:-.01em}
.theme-cafe .a-title h2,.theme-cafe .s-title h2{letter-spacing:-.02em}
.theme-cafe .hero-inner h1{letter-spacing:-.02em}
.theme-cafe .chip{background:var(--paper)}
.theme-cafe .chip[aria-pressed="true"]{background:var(--accent)}
.theme-cafe .search{background:var(--paper)}
.theme-cafe .tray{background:color-mix(in srgb,var(--paper) 94%,transparent)}
.theme-cafe .dcard .ph{box-shadow:0 8px 20px rgba(60,40,20,.12)}
.theme-cafe .s-close{background:rgba(255,255,255,.85);color:var(--text)}
.theme-cafe .deco-hero::before{content:"";position:absolute;inset:-26px -22px;border-radius:32px;background:color-mix(in srgb,var(--bg) 55%,transparent);z-index:-1;pointer-events:none}

/* ---------- Prospect: IKIGAI (zwart, goud, strak) ---------- */
.theme-ikigai{background:var(--bg) radial-gradient(110% 80% at 80% 0%,color-mix(in srgb,var(--highlight) 55%,var(--bg)) 0%,var(--bg) 60%) fixed}
.theme-ikigai .hero-inner h1,.theme-ikigai .narr h2,.theme-ikigai .a-title h2,.theme-ikigai .s-title h2{letter-spacing:-.02em}
.theme-ikigai .hero-inner h1{font-size:clamp(34px,5.2vw,64px)}
.theme-ikigai .sec-h h3,.theme-ikigai .cat-h{text-transform:uppercase;letter-spacing:.08em;font-size:17px}
.theme-ikigai .tile b{text-transform:uppercase;letter-spacing:.06em;font-size:16px}
.theme-ikigai .tile,.theme-ikigai .dcard .ph{border-radius:4px}
.theme-ikigai .tile::before{content:"";position:absolute;inset:6px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);z-index:2;pointer-events:none}
.theme-ikigai .hero-logo{height:clamp(64px,9vw,104px)}
.theme-ikigai .tagline{margin:0;font-size:clamp(16px,1.8vw,20px);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.theme-ikigai .deco-hero::before{content:"";position:absolute;inset:-26px -22px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);pointer-events:none}

/* ---------- 't Zusje (prospect): merkdecoratie, afgeleid van zusje.nl ---------- */
.theme-zusje{background:var(--bg) radial-gradient(120% 80% at 80% 0%,#221519 0%,var(--bg) 55%) fixed}
.theme-zusje .canvas{background:radial-gradient(90% 70% at 60% 30%,#24161a 0%,var(--bg) 70%)}

/* dubbele gouden pil-knoppen zoals op zusje.nl */
.theme-zusje .btn-ghost{border:1px solid var(--accent);box-shadow:0 0 0 3px var(--bg),0 0 0 4px color-mix(in srgb,var(--accent) 55%,transparent);color:var(--text)}
.theme-zusje .btn-accent{box-shadow:0 0 0 3px var(--bg),0 0 0 4px var(--accent)}
.theme-zusje .modes button[aria-pressed="true"]{box-shadow:none}

/* sectietitels in een dubbel omlijnde pil */
.theme-zusje .sec-h h3{padding:4px 16px 6px;border:1px solid var(--accent);border-radius:999px;box-shadow:0 0 0 3px var(--bg),0 0 0 4px color-mix(in srgb,var(--accent) 45%,transparent);font-size:22px}
.theme-zusje .cat-h{justify-content:center;flex-direction:column;align-items:center;gap:4px;text-align:center}
.theme-zusje .cat-h::after{content:"";width:180px;height:9px;background:linear-gradient(var(--accent),var(--accent)) center/100% 1px no-repeat,linear-gradient(45deg,transparent 45%,var(--accent) 45% 55%,transparent 55%) center/9px 9px no-repeat}

/* gouden ornament-scheiding */
.theme-zusje .s-block{border-top:0;position:relative;padding-top:22px}
.theme-zusje .s-block::before{content:"";position:absolute;top:0;left:0;right:0;height:9px;background:linear-gradient(color-mix(in srgb,var(--accent) 50%,transparent),color-mix(in srgb,var(--accent) 50%,transparent)) center/100% 1px no-repeat,linear-gradient(45deg,transparent 42%,var(--accent) 42% 58%,transparent 58%) center/9px 9px no-repeat}

/* kaders rond foto's, zoals de gouden lijsten op zusje.nl */
.theme-zusje .dcard .ph,.theme-zusje .tile{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}
.theme-zusje .tile::before{content:"";position:absolute;inset:6px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:8px;z-index:2;pointer-events:none}
.theme-zusje .pick{box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--accent),0 6px 16px rgba(0,0,0,.4)}
.theme-zusje .tray{border:1px solid color-mix(in srgb,var(--accent) 50%,transparent)}
.theme-zusje .surprise{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 50%,transparent)}

/* hero */
.theme-zusje .hero-logo{height:96px;width:auto}
.theme-zusje .tagline{margin:0;font-family:var(--f-display);font-style:italic;font-size:clamp(20px,2.4vw,26px);color:var(--accent)}
.theme-zusje .tagline::after{content:" ♥"}
.theme-zusje .deco-hero::before{content:"";position:absolute;inset:-28px -24px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:28px;pointer-events:none}
@media (max-width:760px){
  .theme-zusje .deco-hero::before{display:none}
  .theme-zusje .hero-logo{height:70px}
}

/* ---------- Maison Rubens (prospect): salon-groen met cognac, fijne lijnen ---------- */
.theme-rubens{background:var(--bg) radial-gradient(110% 80% at 20% 0%,#2a3a35 0%,var(--bg) 58%) fixed}
.theme-rubens .canvas{background:radial-gradient(90% 70% at 60% 30%,#26332f 0%,var(--bg) 70%)}
.theme-rubens .hero-logo{height:120px;width:auto}
.theme-rubens .a-head .logo{max-height:46px}
.theme-rubens .narr .step-no,.theme-rubens .narr .layer,.theme-rubens .eyebrow{letter-spacing:.2em}
.theme-rubens .sec-h h3{letter-spacing:-.005em}
.theme-rubens .deco-hero::before{content:"";position:absolute;inset:-26px -22px;border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);pointer-events:none}
.theme-rubens .tile::before{content:"";position:absolute;inset:6px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);z-index:2;pointer-events:none}
@media (max-width:760px){.theme-rubens .deco-hero::before{display:none}.theme-rubens .hero-logo{height:86px}}
/* D'n Hertog: donker eikenhout, goud van het logo, rood van de dinerkaart */
.theme-hertog{background:var(--bg) radial-gradient(110% 80% at 20% 0%,#2c2118 0%,var(--bg) 58%) fixed}
.theme-hertog .canvas{background:radial-gradient(90% 70% at 60% 30%,#2a2019 0%,var(--bg) 70%)}
.theme-hertog .hero-logo{height:110px;width:auto}
.theme-hertog .a-head .logo{max-height:42px}
.theme-hertog .narr .step-no,.theme-hertog .narr .layer,.theme-hertog .eyebrow{letter-spacing:.2em;text-transform:uppercase}
.theme-hertog .deco-hero::before{content:"";position:absolute;inset:-26px -22px;border:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline:1px solid color-mix(in srgb,var(--accent) 30%,transparent);outline-offset:5px;clip-path:polygon(16px 0,calc(100% - 16px) 0,100% 16px,100% calc(100% - 16px),calc(100% - 16px) 100%,16px 100%,0 calc(100% - 16px),0 16px);pointer-events:none}
.theme-hertog .tile::before{content:"";position:absolute;inset:6px;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);z-index:2;pointer-events:none}
@media (max-width:760px){.theme-hertog .deco-hero::before{display:none}.theme-hertog .hero-logo{height:80px}}

/* ---------- MOOD (prospect): petrol, goud, licht en luchtig ---------- */
.theme-mood{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#0a4a5e 0%,var(--bg) 60%) fixed}
.theme-mood .canvas{background:radial-gradient(90% 70% at 60% 30%,#07485b 0%,var(--bg) 70%)}
.theme-mood .hero-logo{height:104px;width:auto}
.theme-mood .a-head .logo{max-height:34px}
.theme-mood .hero-inner h1,.theme-mood .narr h2,.theme-mood .a-title h2,.theme-mood .s-title h2{letter-spacing:-.01em}
.theme-mood .sec-h h3,.theme-mood .cat-h,.theme-mood .tile b{text-transform:uppercase;letter-spacing:.12em;font-weight:500}
.theme-mood .sec-h h3{font-size:16px}
.theme-mood .tile b{font-size:15px}
.theme-mood .btn,.theme-mood .modes button,.theme-mood .chip,.theme-mood .pill-s{border-radius:15px}
.theme-mood .btn-ghost{border:1px solid rgba(255,255,255,.85)}
.theme-mood .tile,.theme-mood .dcard .ph,.theme-mood .pairc{border-radius:12px}
.theme-mood .tile::before{content:"";position:absolute;inset:7px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:8px;z-index:2;pointer-events:none}
.theme-mood .deco-hero::before{content:"";position:absolute;inset:-30px -26px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:28px;pointer-events:none}
@media (max-width:760px){.theme-mood .deco-hero::before{display:none}.theme-mood .hero-logo{height:76px}}

/* ---------- Berlage (prospect): licht, stadstuin-groen, koraal accent ---------- */
.theme-berlage{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#e4ecdf 0%,var(--bg) 60%) fixed}
.theme-berlage .canvas{background:radial-gradient(90% 70% at 60% 30%,#e7eee2 0%,var(--bg) 70%)}
.theme-berlage .hero-logo{height:120px;width:auto}
.theme-berlage .a-head .logo{max-height:40px}
.theme-berlage .narr .step-no,.theme-berlage .narr .layer,.theme-berlage .eyebrow{letter-spacing:.24em}
.theme-berlage .tile,.theme-berlage .dcard .ph,.theme-berlage .pairc{border-radius:14px}
.theme-berlage .tile b{color:#fff}
.theme-berlage .sec-h h3::after{content:"";display:block;width:28px;height:2px;background:#E07A5F;margin-top:7px}
.theme-berlage .btn-accent{box-shadow:0 0 0 3px var(--bg),0 0 0 4px color-mix(in srgb,var(--accent) 50%,transparent)}
.theme-berlage .deco-hero::before{content:"";position:absolute;inset:-28px -24px;border-radius:26px;background:color-mix(in srgb,var(--bg) 82%,transparent);z-index:-1;pointer-events:none}
@media (max-width:760px){.theme-berlage .hero-logo{height:84px}}

/* ---------- Luzt (prospect): nacht, olijf, goud en koper ---------- */
.theme-luzt{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#2a2f27 0%,var(--bg) 60%) fixed}
.theme-luzt .canvas{background:radial-gradient(90% 70% at 60% 30%,#262c25 0%,var(--bg) 70%)}
.theme-luzt .hero-logo{height:78px;width:auto}
.theme-luzt .a-head .logo{max-height:26px}
.theme-luzt .sec-h h3,.theme-luzt .cat-h,.theme-luzt .tile b{text-transform:uppercase;letter-spacing:.06em}
.theme-luzt .hero-inner h1{text-transform:uppercase;letter-spacing:.01em}
.theme-luzt .tile,.theme-luzt .dcard .ph,.theme-luzt .pairc{border-radius:16px}
.theme-luzt .btn,.theme-luzt .modes button,.theme-luzt .chip,.theme-luzt .pill-s{border-radius:999px}
.theme-luzt .sec-h h3::after{content:"";display:block;width:36px;height:2px;background:var(--highlight);margin-top:8px}
.theme-luzt .deco-hero::before{content:"";position:absolute;inset:-28px -24px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:30px;pointer-events:none}
@media (max-width:760px){.theme-luzt .deco-hero::before{display:none}.theme-luzt .hero-logo{height:58px}}

/* ---------- No.12 (prospect): nacht, No.12-rood, oranje, tiki ---------- */
.theme-no12{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#3a1a14 0%,var(--bg) 60%) fixed}
.theme-no12 .canvas{background:radial-gradient(90% 70% at 60% 30%,#34170f 0%,var(--bg) 70%)}
.theme-no12 .hero-logo{height:96px;width:auto}
.theme-no12 .a-head .logo{max-height:30px}
.theme-no12 .hero-inner h1,.theme-no12 .narr h2,.theme-no12 .sec-h h3,.theme-no12 .tile b{text-transform:uppercase;letter-spacing:-.01em}
.theme-no12 .sec-h h3,.theme-no12 .cat-h{font-size:19px}
.theme-no12 .tile,.theme-no12 .dcard .ph,.theme-no12 .pairc{border-radius:6px}
.theme-no12 .tile::before{content:"";position:absolute;inset:0;border-bottom:4px solid var(--highlight);z-index:2;pointer-events:none}
.theme-no12 .btn,.theme-no12 .modes button,.theme-no12 .chip,.theme-no12 .pill-s{border-radius:6px}
.theme-no12 .deco-hero::before{content:"";position:absolute;inset:-26px -22px;border:2px solid var(--highlight);border-radius:10px;pointer-events:none}
@media (max-width:760px){.theme-no12 .deco-hero::before{display:none}.theme-no12 .hero-logo{height:70px}}

/* ---------- VANE (prospect): antraciet, brons, strak en licht ---------- */
.theme-vane{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#2b2925 0%,var(--bg) 60%) fixed}
.theme-vane .canvas{background:radial-gradient(90% 70% at 60% 30%,#292725 0%,var(--bg) 70%)}
.theme-vane .hero-logo{height:84px;width:auto}
.theme-vane .a-head .logo{max-height:30px}
.theme-vane .hero-inner h1,.theme-vane .narr h2{letter-spacing:.01em}
.theme-vane .sec-h h3,.theme-vane .cat-h,.theme-vane .tile b{text-transform:uppercase;letter-spacing:.14em;font-weight:500}
.theme-vane .sec-h h3{font-size:15px}
.theme-vane .tile b{font-size:14px}
.theme-vane .tile,.theme-vane .dcard .ph,.theme-vane .pairc,.theme-vane .btn,.theme-vane .chip,.theme-vane .pill-s,.theme-vane .modes button{border-radius:2px}
.theme-vane .tile::before{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);z-index:2;pointer-events:none}
.theme-vane .deco-hero::before{content:"";position:absolute;inset:-26px -22px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);pointer-events:none}
@media (max-width:760px){.theme-vane .deco-hero::before{display:none}.theme-vane .hero-logo{height:62px}}

/* ---------- Casa Savór (prospect): bordeaux, oranje en zand ---------- */
.theme-casa{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#5a2a3a 0%,var(--bg) 60%) fixed}
.theme-casa .canvas{background:radial-gradient(90% 70% at 60% 30%,#552838 0%,var(--bg) 70%)}
.theme-casa .hero-logo{height:96px;width:auto}
.theme-casa .a-head .logo{max-height:34px}
.theme-casa .narr .step-no,.theme-casa .narr .layer,.theme-casa .eyebrow{letter-spacing:.2em}
.theme-casa .tile,.theme-casa .dcard .ph,.theme-casa .pairc{border-radius:18px}
.theme-casa .btn,.theme-casa .modes button,.theme-casa .chip,.theme-casa .pill-s{border-radius:999px}
.theme-casa .sec-h h3::after{content:"";display:block;width:30px;height:2px;background:var(--accent);margin-top:8px}
.theme-casa .deco-hero::before{content:"";position:absolute;inset:-28px -24px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:32px;pointer-events:none}
@media (max-width:760px){.theme-casa .deco-hero::before{display:none}.theme-casa .hero-logo{height:70px}}
/* Dommel 18: krijtbord, vuur-oranje */
.theme-dommel{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#2a1c0a 0%,var(--bg) 60%) fixed}
.theme-dommel .canvas{background:radial-gradient(90% 70% at 60% 30%,#241808 0%,var(--bg) 70%)}
.theme-dommel .hero-logo{height:120px;width:auto}
.theme-dommel .a-head .logo{max-height:44px}
.theme-dommel .narr .step-no,.theme-dommel .narr .layer,.theme-dommel .eyebrow{letter-spacing:.18em;text-transform:uppercase}
.theme-dommel h1,.theme-dommel h2,.theme-dommel h3{text-transform:uppercase;letter-spacing:.01em}
@media (max-width:760px){.theme-dommel .hero-logo{height:86px}}
.theme-roast{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#2a0f0e 0%,var(--bg) 60%) fixed}
.theme-roast .canvas{background:radial-gradient(90% 70% at 60% 30%,#241010 0%,var(--bg) 70%)}
.theme-roast .hero-logo{height:130px;width:auto}
.theme-roast .a-head .logo{max-height:46px}
.theme-roast .narr .step-no,.theme-roast .narr .layer,.theme-roast .eyebrow{letter-spacing:.18em;text-transform:uppercase}
.theme-roast h1,.theme-roast h2,.theme-roast h3{text-transform:uppercase;letter-spacing:.02em}
@media (max-width:760px){.theme-roast .hero-logo{height:92px}}
.theme-matsu{background:var(--bg) radial-gradient(110% 80% at 80% 0%,#2a1f12 0%,var(--bg) 60%) fixed}
.theme-matsu .canvas{background:radial-gradient(90% 70% at 60% 30%,#211a10 0%,var(--bg) 70%)}
.theme-matsu .hero-logo{height:96px;width:auto}
.theme-matsu .a-head .logo{max-height:34px}
.theme-matsu .narr .step-no,.theme-matsu .narr .layer,.theme-matsu .eyebrow{letter-spacing:.2em;text-transform:uppercase}
.theme-matsu h1,.theme-matsu h2,.theme-matsu h3{text-transform:uppercase;letter-spacing:.02em}
@media (max-width:760px){.theme-matsu .hero-logo{height:72px}}
