/* Atelier Blond: editoriaal, ivoor + inkt + champagnegoud, fijne lijnen, Bodoni */
:root{
  --bg:#f6f3ec;--fg:#141414;--muted:#5f5a52;--surface:#ede7da;--surface-2:#fbf9f4;--line:rgba(20,20,20,.16);
  --accent:#8a6a2f;--accent-fg:#fff;--gold:#c9a96e;--focus:#8a6a2f;
  --radius:0;--radius-sm:0;--radius-btn:0;
  --font-head:"Bodoni Moda","Didot",Georgia,serif;--font-body:"Manrope",system-ui,sans-serif;
  --shadow:none;
  --header-bg:#f6f3ec;--footer-bg:#141414;--footer-fg:#ede7da;
}
h1,h2,h3{font-weight:400}
.logo{font-weight:400;font-size:1.35rem;letter-spacing:.06em;text-transform:uppercase}
.logo i{text-transform:none;color:var(--accent);letter-spacing:0}
.site-header{border-bottom:1px solid var(--fg)}
.nav li a:not(.btn){font-size:.8rem;text-transform:uppercase;letter-spacing:.16em}
.nav li a:not(.btn)::after{height:1px;background:var(--fg)}
.btn{background:var(--fg);border-color:var(--fg);color:#fff;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:500;position:relative;overflow:hidden;z-index:0}
.btn::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#b8935a,#e6cf9f,#b8935a);transform:translateX(-101%);transition:transform .5s var(--ease);z-index:-1}
.btn:hover{color:var(--fg);box-shadow:none;transform:none}
.btn:hover::before{transform:none}
.btn-ghost{background:transparent;color:var(--fg)}
.btn-ghost:hover{background:transparent;color:var(--fg)}
.eyebrow{color:var(--fg);font-weight:500;letter-spacing:.2em;font-size:.72rem;display:flex;align-items:center;gap:.8rem}
.eyebrow::after{content:"";flex:0 0 60px;height:1px;background:var(--fg)}

/* Hero */
.ab-hero{padding:clamp(1.5rem,4vw,2.5rem) 0 clamp(3rem,8vw,6rem);border-bottom:1px solid var(--fg)}
.ab-meta{display:flex;justify-content:space-between;gap:1rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;border-bottom:1px solid var(--fg);padding-bottom:.8rem;margin-bottom:clamp(1.5rem,5vw,3rem)}
.ab-grid{display:grid;gap:2.5rem;align-items:end}
@media (min-width:900px){.ab-grid{grid-template-columns:1.5fr 1fr;gap:4rem}}
.ab-hero h1{margin:0 0 1.5rem;line-height:.85}
.ab-big{display:block;font-size:clamp(5.5rem,26vw,15rem);letter-spacing:-.04em;font-weight:400;background:linear-gradient(100deg,#6b4e33 0%,#c39a5c 25%,#f3e3c0 45%,#c39a5c 60%,#8a6a2f 80%,#d8c09a 100%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:abShimmer 7s ease-in-out infinite alternate}
@keyframes abShimmer{from{background-position:0 0}to{background-position:100% 0}}
.ab-sub{display:block;font-style:italic;font-size:clamp(1.8rem,5vw,3.2rem);margin-top:.2em;padding-left:.15em}
.ab-card{margin:0;border:1px solid var(--fg);padding:1.25rem;background:var(--surface-2)}
.ab-card figcaption{font-size:.72rem;text-transform:uppercase;letter-spacing:.2em;margin-bottom:1rem;display:flex;justify-content:space-between}
.ab-card figcaption::after{content:"06 tinten"}
.ab-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.ab-card li{display:grid;grid-template-columns:auto 3.2rem 1fr;align-items:center;gap:.8rem;font-size:.88rem}
.ab-card .sw{width:0;height:30px;background:var(--c);border:1px solid rgba(0,0,0,.08);animation:abSw .9s var(--ease) forwards;animation-delay:calc(var(--i) * 110ms + .8s)}
.ab-card li:hover .sw{transform:scaleX(1.25);transform-origin:left}
.ab-card .sw{transition:transform .4s var(--ease)}
.ab-card b{font-weight:500;font-variant-numeric:tabular-nums}
@keyframes abSw{to{width:72px}}

/* Secties: editoriaal met nummering */
.sec h2{font-size:clamp(2.6rem,7vw,4.6rem);letter-spacing:-.02em}
.sec-head{max-width:none;display:grid;gap:.5rem 3rem}
@media (min-width:900px){.sec-head:not(.prices-head){grid-template-columns:1fr 1fr;align-items:end}.sec-head .eyebrow{grid-column:1/-1}.sec-head .lead{margin:0}}
.info .sec-head,.contact .sec-head{grid-template-columns:1fr!important}
.svc-grid{gap:0;border-top:1px solid var(--fg)}
.svc{border:0;border-bottom:1px solid var(--line);background:transparent;padding:1.75rem 0;display:grid;grid-template-columns:52px 1fr;gap:.25rem 1.25rem;align-items:start}
@media (min-width:960px){.svc{border-bottom:0;border-right:1px solid var(--line);padding:1.75rem 1.5rem;display:block}.svc:first-child{padding-left:0}.svc:last-child{border-right:0}}
.svc:hover{transform:none;box-shadow:none}
.svc .ico{width:40px;height:40px;grid-row:span 2;color:var(--accent);transition:transform .6s var(--ease)}
.svc:hover .ico{transform:translateY(-4px) rotate(-8deg)}
.svc h3{font-size:1.6rem;font-style:italic}
.prices-head{margin:clamp(3.5rem,8vw,6rem) 0 0}
.h-prices{font-size:clamp(2rem,5vw,3.2rem)}
.ptable caption{font-style:italic;font-weight:400;font-size:1.8rem;border-bottom:1px solid var(--fg);padding-bottom:.5rem}
.ptable tbody th{font-weight:500}
.ptable td{font-family:var(--font-head);font-size:1.05rem}
.ptable tbody tr:hover{background:linear-gradient(90deg,rgba(201,169,110,.18),transparent)}

/* Team */
.sec-alt{background:var(--fg);color:var(--bg);--muted:#b9b2a6;--line:rgba(246,243,236,.2);--surface-2:transparent}
.sec-alt .eyebrow{color:var(--bg)}
.sec-alt .eyebrow::after{background:var(--bg)}
.member{border:0;border-top:1px solid var(--gold);padding:1.5rem 0 0}
.member:hover{transform:none;box-shadow:none}
.avatar{width:100%;height:auto;aspect-ratio:3/4;max-height:260px;filter:grayscale(.2)}
.avatar clipPath rect{rx:0}
.member:hover .avatar{transform:none;filter:none}
.av-t{font-style:italic;font-size:46px}
.member h3{font-size:2.2rem;font-style:italic}
.member .role{color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}
.tags li{border-radius:0;border-color:var(--line);color:var(--bg)}

/* Info */
.hours th{font-family:var(--font-head);font-style:italic;font-size:1.15rem}
.hours tr.is-today th,.hours tr.is-today td{color:var(--accent)}
.map{border:1px solid var(--fg)}
.m-bg{fill:#f1ece1}.m-blk rect{fill:none;stroke:#141414;stroke-width:.8}.m-park{fill:none;stroke:#8a6a2f;stroke-dasharray:3 4}.m-road path{stroke:#141414;stroke-width:1.5;fill:none}
.m-txt{font:italic 14px var(--font-head);fill:#141414}.m-pin path{fill:#141414}.m-dot{fill:var(--gold)}

/* Booking */
.sec-book{background:var(--surface);border-block:1px solid var(--fg)}
.bk{border:1px solid var(--fg);box-shadow:none}
.bk-step legend{font-style:italic;font-size:clamp(1.8rem,5vw,2.4rem)}
.bk-progress li::before{height:1px}
.bk-progress li.is-done::before,.bk-progress li[aria-current]::before{height:3px;top:-1px;background:var(--fg)}
.bk-opt{border-width:1px}
.bk-opt:hover{border-color:var(--fg)}
.bk-opt input{accent-color:var(--fg)}
.bk-opt:has(input:checked){background:#f1e7d3;border-color:var(--fg)}
.chip{border-width:1px}
.chip:has(input:checked){background:var(--fg);color:#fff;border-color:var(--fg)}
.chip .dn{font-weight:400}
.field input,.field select,.field textarea{border-width:1px;border-color:rgba(20,20,20,.35)}
.bk-summary{background:transparent;border:1px solid var(--line);border-left:3px solid var(--gold)}
.bk-done .tick{color:var(--accent)}

.contact-form{border:1px solid var(--fg)}
.contact-form h3{font-style:italic;font-size:1.8rem}
.site-footer h2{font-style:italic;font-size:2.4rem}
.site-footer .btn{background:#ede7da;color:#141414;border-color:#ede7da}
