/* Homepage-basis: samengevoegde kopie van tailwind-site.css, site-premium.css, site-base.css
   en candlelight-premium.css, in die volgorde. Alleen index.html en en/index.html laden dit
   bestand, zodat de homepage één stylesheet minder hoeft af te wachten. De losse bestanden
   blijven bestaan voor de andere pagina's. Pas je een van die vier aan, neem de wijziging
   dan ook hier over, op dezelfde plek. */

/* ===== tailwind-site.css ===== */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Poppins,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-top-4{top:-1rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.bottom-5{bottom:1.25rem}.left-0{left:0}.left-1\/2{left:50%}.left-4{left:1rem}.left-5{left:1.25rem}.right-0{right:0}.right-5{right:1.25rem}.top-0{top:0}.top-4{top:1rem}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.my-10{margin-top:2.5rem;margin-bottom:2.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.mb-9{margin-bottom:2.25rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-12{height:3rem}.h-44{height:11rem}.h-48{height:12rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-80{height:20rem}.h-96{height:24rem}.h-auto{height:auto}.h-full{height:100%}.max-h-0{max-height:0}.max-h-96{max-height:24rem}.min-h-\[30vh\]{min-height:30vh}.min-h-\[360px\]{min-height:360px}.min-h-\[60vh\]{min-height:60vh}.min-h-\[64vh\]{min-height:64vh}.min-h-\[70vh\]{min-height:70vh}.min-h-\[calc\(100vh-5rem\)\]{min-height:calc(100vh - 5rem)}.min-h-screen{min-height:100vh}.w-12{width:3rem}.w-96{width:24rem}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-auto{width:auto}.w-full{width:100%}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.scale-105,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-7{gap:1.75rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem*var(--tw-space-x-reverse));margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-700{--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.border-ts-gold{--tw-border-opacity:1;border-color:rgb(212 175 55/var(--tw-border-opacity,1))}.border-ts-gold\/10{border-color:rgba(212,175,55,.1)}.border-ts-gold\/15{border-color:rgba(212,175,55,.15)}.border-ts-gold\/20{border-color:rgba(212,175,55,.2)}.border-ts-gold\/25{border-color:rgba(212,175,55,.25)}.border-ts-gold\/30{border-color:rgba(212,175,55,.3)}.border-ts-gold\/40{border-color:rgba(212,175,55,.4)}.border-ts-gold\/50{border-color:rgba(212,175,55,.5)}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/15{border-color:hsla(0,0%,100%,.15)}.border-white\/5{border-color:hsla(0,0%,100%,.05)}.border-white\/60{border-color:hsla(0,0%,100%,.6)}.border-yellow-200\/40{border-color:hsla(53,98%,77%,.4)}.border-opacity-10{--tw-border-opacity:0.1}.bg-\[\#0d0d0f\]{--tw-bg-opacity:1;background-color:rgb(13 13 15/var(--tw-bg-opacity,1))}.bg-\[\#101014\]{--tw-bg-opacity:1;background-color:rgb(16 16 20/var(--tw-bg-opacity,1))}.bg-\[\#111114\]{--tw-bg-opacity:1;background-color:rgb(17 17 20/var(--tw-bg-opacity,1))}.bg-\[\#141417\]{--tw-bg-opacity:1;background-color:rgb(20 20 23/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-ts-black{--tw-bg-opacity:1;background-color:rgb(10 10 10/var(--tw-bg-opacity,1))}.bg-ts-black\/70{background-color:hsla(0,0%,4%,.7)}.bg-ts-dark{--tw-bg-opacity:1;background-color:rgb(26 26 26/var(--tw-bg-opacity,1))}.bg-ts-dark\/5{background-color:rgba(26,26,26,.05)}.bg-ts-gold{--tw-bg-opacity:1;background-color:rgb(212 175 55/var(--tw-bg-opacity,1))}.bg-ts-gold\/20{background-color:rgba(212,175,55,.2)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/20{background-color:hsla(0,0%,100%,.2)}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-opacity-10{--tw-bg-opacity:0.1}.bg-opacity-5{--tw-bg-opacity:0.05}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-ts-black{--tw-gradient-from:#0a0a0a var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,4%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-ts-black\/85{--tw-gradient-from:hsla(0,0%,4%,.85) var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,4%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-ts-black\/95{--tw-gradient-from:hsla(0,0%,4%,.95) var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,0%,4%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-ts-dark{--tw-gradient-from:#1a1a1a var(--tw-gradient-from-position);--tw-gradient-to:rgba(26,26,26,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-ts-gold{--tw-gradient-from:#d4af37 var(--tw-gradient-from-position);--tw-gradient-to:rgba(212,175,55,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-gray-900{--tw-gradient-to:rgba(17,24,39,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#111827 var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),transparent var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-ts-black{--tw-gradient-to:hsla(0,0%,4%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0a0a0a var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-ts-black\/20{--tw-gradient-to:hsla(0,0%,4%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,4%,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-ts-black\/80{--tw-gradient-to:hsla(0,0%,4%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,4%,.8) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-ts-black\/90{--tw-gradient-to:hsla(0,0%,4%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,4%,.9) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-\[\#241d09\]{--tw-gradient-to:#241d09 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.to-ts-black{--tw-gradient-to:#0a0a0a var(--tw-gradient-to-position)}.to-ts-black\/35{--tw-gradient-to:hsla(0,0%,4%,.35) var(--tw-gradient-to-position)}.to-ts-gold\/10{--tw-gradient-to:rgba(212,175,55,.1) var(--tw-gradient-to-position)}.to-yellow-500{--tw-gradient-to:#eab308 var(--tw-gradient-to-position)}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-cover{-o-object-fit:cover;object-fit:cover}.object-top{-o-object-position:top;object-position:top}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0\.5{padding-bottom:.125rem}.pb-1{padding-bottom:.25rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pl-6{padding-left:1.5rem}.pt-3{padding-top:.75rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-playfair{font-family:Playfair Display,serif}.font-sans{font-family:Poppins,sans-serif}.font-serif{font-family:Playfair Display,serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-\[0\.24em\]{letter-spacing:.24em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[\#151515\]{--tw-text-opacity:1;color:rgb(21 21 21/var(--tw-text-opacity,1))}.text-gray-100{--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity,1))}.text-gray-200{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-ts-black{--tw-text-opacity:1;color:rgb(10 10 10/var(--tw-text-opacity,1))}.text-ts-dark{--tw-text-opacity:1;color:rgb(26 26 26/var(--tw-text-opacity,1))}.text-ts-gold{--tw-text-opacity:1;color:rgb(212 175 55/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-xmas-cream{--tw-text-opacity:1;color:rgb(246 240 228/var(--tw-text-opacity,1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-10{opacity:.1}.opacity-35{opacity:.35}.opacity-40{opacity:.4}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-95{opacity:.95}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.drop-shadow-2xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-2xl{--tw-drop-shadow:drop-shadow(0 25px 25px rgba(0,0,0,.15))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem}.hover\:-translate-y-1:hover,.hover\:scale-105:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.hover\:scale-\[1\.01\]:hover{--tw-scale-x:1.01;--tw-scale-y:1.01;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-ts-gold:hover{--tw-border-opacity:1;border-color:rgb(212 175 55/var(--tw-border-opacity,1))}.hover\:border-ts-gold\/50:hover{border-color:rgba(212,175,55,.5)}.hover\:border-ts-gold\/60:hover{border-color:rgba(212,175,55,.6)}.hover\:border-opacity-40:hover{--tw-border-opacity:0.4}.hover\:bg-gray-800:hover{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.hover\:bg-ts-black:hover{--tw-bg-opacity:1;background-color:rgb(10 10 10/var(--tw-bg-opacity,1))}.hover\:bg-ts-gold:hover{--tw-bg-opacity:1;background-color:rgb(212 175 55/var(--tw-bg-opacity,1))}.hover\:bg-white\/20:hover{background-color:hsla(0,0%,100%,.2)}.hover\:bg-white\/30:hover{background-color:hsla(0,0%,100%,.3)}.hover\:bg-yellow-400:hover{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.hover\:bg-opacity-90:hover{--tw-bg-opacity:0.9}.hover\:text-ts-black:hover{--tw-text-opacity:1;color:rgb(10 10 10/var(--tw-text-opacity,1))}.hover\:text-ts-dark:hover{--tw-text-opacity:1;color:rgb(26 26 26/var(--tw-text-opacity,1))}.hover\:text-ts-gold:hover{--tw-text-opacity:1;color:rgb(212 175 55/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:text-yellow-300:hover{--tw-text-opacity:1;color:rgb(253 224 71/var(--tw-text-opacity,1))}.hover\:text-yellow-400:hover{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-2xl:hover{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.group[open] .group-open\:rotate-180{--tw-rotate:180deg}.group:hover .group-hover\:translate-x-1,.group[open] .group-open\:rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-4{gap:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:col-span-3{grid-column:span 3/span 3}.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:justify-start{justify-content:flex-start}.md\:p-12{padding:3rem}.md\:py-0{padding-top:0;padding-bottom:0}.md\:py-16{padding-top:4rem;padding-bottom:4rem}.md\:py-28{padding-top:7rem;padding-bottom:7rem}.md\:pb-0{padding-bottom:0}.md\:text-left{text-align:left}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[1\.05fr_0\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:px-8{padding-right:2rem}.lg\:pl-8,.lg\:px-8{padding-left:2rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-7xl{font-size:4.5rem;line-height:1}.lg\:text-8xl{font-size:6rem;line-height:1}}

/* ===== site-premium.css ===== */
/* The Suited Singer: gedeelde opmaak voor de herbouwde pagina's.
   Alleen eigen klassen (tsx-). Geen Tailwind-klassen, dus geen build nodig.

   Wereld: het maatpak en het podiumlicht.
   - smokingblauw als basis, ivoor voor tekst en één lichte bewijsband
   - podiumgoud alleen voor acties en cijfers
   - de krijtstreep van het pak als dunne verticale lijn in de hero
   - één spotlight achter de foto
   Kleurparen (tekst op achtergrond), gemeten:
   ivoor #F4EEE2 op #0F1524  ruim boven 12:1
   mist  #AEB7CA op #0F1524  ruim boven 8:1
   goud  #D4AF37 op #0F1524  ruim boven 8:1
   inkt  #0F1524 op goud     ruim boven 8:1
   inkt  #1B1A17 op ivoor    ruim boven 14:1 */

:root {
  --tsx-bg: #0F1524;
  --tsx-bg-2: #151D31;
  --tsx-line: rgba(244, 238, 226, 0.14);
  --tsx-ivory: #F4EEE2;
  --tsx-paper: #FBF7EE;
  --tsx-ink: #1B1A17;
  --tsx-mist: #AEB7CA;
  --tsx-gold: #D4AF37;
  --tsx-gold-hover: #E3C25A;
  --tsx-glow: #E9B76A;
  --tsx-radius: 8px;
  --tsx-serif: 'Playfair Display', Georgia, serif;
  --tsx-sans: 'Poppins', system-ui, sans-serif;
}

body.tsx-page {
  background: var(--tsx-bg);
  color: var(--tsx-ivory);
  font-family: var(--tsx-sans);
}

.tsx-page *, .tsx-page *::before, .tsx-page *::after { box-sizing: border-box; }

.tsx-wrap {
  width: min(1120px, calc(100% - 2rem));
  margin-inline: auto;
}

.tsx-section { padding: clamp(2.75rem, 7vw, 4.75rem) 0; }
.tsx-section--alt { background: var(--tsx-bg-2); }

.tsx-h2 {
  font: 700 clamp(1.75rem, 4.6vw, 2.7rem) / 1.15 var(--tsx-serif);
  color: var(--tsx-ivory);
  margin: 0 0 0.9rem;
  text-wrap: balance;
}

.tsx-lead {
  max-width: 40rem;
  margin: 0 0 1.5rem;
  font-size: 1.05rem;
  line-height: 1.65;
  color: var(--tsx-mist);
}

.tsx-page a:focus-visible,
.tsx-page button:focus-visible,
.tsx-page summary:focus-visible,
.tsx-page input:focus-visible,
.tsx-page select:focus-visible,
.tsx-page textarea:focus-visible {
  outline: 3px solid var(--tsx-glow);
  outline-offset: 3px;
}

.tsx-skip {
  position: absolute;
  left: 0.75rem;
  top: -4rem;
  z-index: 100;
  padding: 0.7rem 1rem;
  border-radius: var(--tsx-radius);
  background: var(--tsx-gold);
  color: var(--tsx-bg);
  font-weight: 600;
  text-decoration: none;
}
.tsx-skip:focus { top: 0.75rem; }

/* ---------- knoppen ---------- */

.tsx-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  min-height: 3.1rem;
  padding: 0.75rem 1.5rem;
  border: 2px solid transparent;
  border-radius: var(--tsx-radius);
  font: 600 1rem / 1.2 var(--tsx-sans);
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}
.tsx-btn--gold { background: var(--tsx-gold); color: var(--tsx-bg); }
.tsx-btn--gold:hover { background: var(--tsx-gold-hover); }
.tsx-btn--ghost { border-color: rgba(244, 238, 226, 0.6); color: var(--tsx-ivory); background: rgba(15, 21, 36, 0.55); }
.tsx-btn--ghost:hover { border-color: var(--tsx-gold); color: var(--tsx-gold); }
.tsx-btn[disabled] { opacity: 0.7; cursor: progress; }

/* ---------- hero ---------- */

.tsx-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: flex-end;
  min-height: min(46rem, calc(100svh - 5.1rem));
  overflow: hidden;
  background: var(--tsx-bg);
}

.tsx-hero__media { position: absolute; inset: 0; z-index: -3; }
.tsx-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; }

/* de spotlight */
.tsx-hero::before {
  content: "";
  position: absolute;
  z-index: -2;
  top: -20%;
  left: 55%;
  width: 70%;
  height: 90%;
  background: radial-gradient(ellipse at 50% 0%, rgba(233, 183, 106, 0.30), rgba(233, 183, 106, 0) 62%);
  pointer-events: none;
}

/* de krijtstreep en de schaduw voor de tekst */
.tsx-hero__shade {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    repeating-linear-gradient(90deg, rgba(244, 238, 226, 0.035) 0 1px, transparent 1px 26px),
    linear-gradient(to top, var(--tsx-bg) 0%, rgba(15, 21, 36, 0.93) 40%, rgba(15, 21, 36, 0.4) 72%, rgba(15, 21, 36, 0.12) 100%);
}

.tsx-hero__inner { padding: 5.5rem 0 1.75rem; }

.tsx-hero h1 {
  max-width: 14ch;
  margin: 0 0 1rem;
  font: 800 clamp(2.15rem, 9.2vw, 3.3rem) / 1.08 var(--tsx-serif);
  color: var(--tsx-gold);
  text-wrap: balance;
}

.tsx-hero__lead {
  max-width: 32rem;
  margin: 0 0 0.85rem;
  font-size: 1.05rem;
  line-height: 1.55;
  color: var(--tsx-ivory);
}

.tsx-hero__proof {
  margin: 0 0 1.4rem;
  font-size: 0.95rem;
  color: var(--tsx-mist);
}
.tsx-hero__proof strong { color: var(--tsx-ivory); font-weight: 600; }

.tsx-hero__actions { display: grid; gap: 0.6rem; max-width: 22rem; }

@media (min-width: 768px) {
  .tsx-hero { align-items: center; min-height: min(40rem, calc(100vh - 5.1rem)); }
  .tsx-hero__media { left: 34%; -webkit-mask-image: linear-gradient(to right, transparent 0, #000 34%); mask-image: linear-gradient(to right, transparent 0, #000 34%); }
  .tsx-hero__media img { object-position: 76% center; }
  .tsx-hero__shade {
    background:
      repeating-linear-gradient(90deg, rgba(244, 238, 226, 0.035) 0 1px, transparent 1px 26px),
      linear-gradient(90deg, var(--tsx-bg) 0%, rgba(15, 21, 36, 0.96) 30%, rgba(15, 21, 36, 0.4) 58%, rgba(15, 21, 36, 0.05) 100%);
  }
  .tsx-hero__inner { padding: 3rem 0; }
  .tsx-hero h1 { max-width: 15ch; font-size: clamp(3rem, 5.2vw, 4.4rem); }
  .tsx-hero__actions { display: flex; max-width: none; }
}

/* dienstenpagina's: kortere hero, met de foto als achtergrond */
.tsx-hero--page { min-height: min(32rem, calc(100svh - 5.1rem)); }
.tsx-hero--page h1 { max-width: 18ch; }
@media (min-width: 768px) {
  .tsx-hero--page { min-height: min(30rem, calc(100vh - 5.1rem)); }
  .tsx-hero--page .tsx-hero__media { left: 40%; }
  .tsx-hero--page h1 { font-size: clamp(2.6rem, 4.4vw, 3.8rem); }
}

@media (max-width: 767px) {
  /* telefoon: de foto als strook bovenaan, de tekst eronder op een rustige achtergrond */
  .tsx-hero--page { display: block; min-height: 0; }
  .tsx-hero--page .tsx-hero__media { inset: 0 0 auto 0; height: 19rem; }
  .tsx-hero--page .tsx-hero__shade {
    background:
      repeating-linear-gradient(90deg, rgba(244, 238, 226, 0.035) 0 1px, transparent 1px 26px),
      linear-gradient(to bottom, rgba(15, 21, 36, 0) 0, rgba(15, 21, 36, 0) 8rem, var(--tsx-bg) 19rem);
  }
  .tsx-hero--page .tsx-hero__inner { padding-top: 15rem; }
}

/* ---------- bewijs: de lichte band ---------- */

.tsx-proof { background: var(--tsx-paper); color: var(--tsx-ink); padding: clamp(2.5rem, 6vw, 4rem) 0; }
.tsx-proof .tsx-h2 { color: var(--tsx-ink); }
.tsx-score { margin: 0 0 1.6rem; font-size: 1.05rem; color: #3B3A35; }
.tsx-score strong { font: 700 1.5rem var(--tsx-serif); color: var(--tsx-ink); }

.tsx-reviews {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: min(84%, 22rem);
  align-items: start;
  gap: 1rem;
  margin: 0 -1rem;
  padding: 0.25rem 1rem 1rem;
  list-style: none;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
}
.tsx-reviews:focus-visible { outline: 3px solid #8A6A12; outline-offset: -3px; }

.tsx-review {
  display: flex;
  flex-direction: column;
  scroll-snap-align: start;
  padding: 1.25rem;
  background: #fff;
  border: 1px solid rgba(27, 26, 23, 0.14);
  border-radius: var(--tsx-radius);
  box-shadow: 0 10px 30px rgba(27, 26, 23, 0.07);
}
.tsx-stars { color: #8A6A12; font-size: 1.05rem; letter-spacing: 0.1em; margin-bottom: 0.6rem; }
.tsx-stars .off { color: #C9C2B0; }
.tsx-review blockquote { margin: 0 0 1rem; }
.tsx-review blockquote p { margin: 0; font-size: 0.96rem; line-height: 1.6; color: #2A2925; }
.tsx-review__by { margin: auto 0 0; font-size: 0.9rem; color: #4A483F; }
.tsx-review__by strong { color: var(--tsx-ink); }

.tsx-proof__links { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; margin: 0.5rem 0 0.75rem; }
.tsx-proof__links a { display: inline-block; padding: 0.7rem 0; color: #6F5410; font-weight: 600; text-underline-offset: 3px; }
.tsx-proof__links a:hover { color: var(--tsx-ink); }
.tsx-fine { margin: 0; font-size: 0.85rem; color: #55534A; }

@media (min-width: 900px) {
  .tsx-reviews { grid-auto-flow: row; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-columns: auto; align-items: stretch; margin: 0; padding: 0.25rem 0 1rem; overflow: visible; }
}

/* de reviewspagina toont alle reviews onder elkaar in plaats van in een rij */
.tsx-reviews--all { grid-auto-flow: row; grid-auto-columns: auto; grid-template-columns: minmax(0, 1fr); margin: 0; padding: 0.25rem 0 1rem; overflow: visible; align-items: start; }
@media (min-width: 760px) { .tsx-reviews--all { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .tsx-reviews--all { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* ---------- kies je feest ---------- */

.tsx-moments { margin: 1.5rem 0 0; padding: 0; list-style: none; border-top: 1px solid var(--tsx-line); }
.tsx-moments li { border-bottom: 1px solid var(--tsx-line); }
.tsx-moments a {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 0.25rem 1rem;
  padding: 1.15rem 0.25rem;
  text-decoration: none;
  transition: background-color 0.2s;
}
.tsx-moments a:hover { background: rgba(244, 238, 226, 0.04); }
.tsx-moments strong { font: 700 1.3rem / 1.2 var(--tsx-serif); color: var(--tsx-ivory); }
.tsx-moments span { grid-column: 1; color: var(--tsx-mist); font-size: 0.97rem; line-height: 1.5; }
.tsx-moments i { grid-column: 2; grid-row: 1 / span 2; color: var(--tsx-gold); }
.tsx-moments--plain .tsx-moment { display: grid; gap: 0.25rem; padding: 1.1rem 0.25rem; }
.tsx-moments--plain strong { font: 700 1.25rem / 1.2 var(--tsx-serif); color: var(--tsx-ivory); }
.tsx-moments--plain span { color: var(--tsx-mist); line-height: 1.6; max-width: 46rem; }

/* video's op de dienstenpagina's */
.tsx-videos { display: grid; gap: 1.25rem; margin-top: 1.5rem; }
.tsx-video p { margin: 0.6rem 0 0; font-size: 0.93rem; color: var(--tsx-mist); }
.tsx-video .video-lite { border-radius: var(--tsx-radius); overflow: hidden; border: 1px solid var(--tsx-line); }
@media (min-width: 760px) { .tsx-videos { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.tsx-moments-note { margin: 1.1rem 0 0; color: var(--tsx-mist); font-size: 0.97rem; line-height: 1.6; }
.tsx-moments-note a { color: var(--tsx-gold); text-underline-offset: 3px; }

/* ---------- wie ---------- */

.tsx-about { display: grid; gap: 1.75rem; align-items: center; }
.tsx-about img { width: 100%; max-width: 22rem; height: auto; border-radius: var(--tsx-radius); border: 1px solid var(--tsx-line); }
.tsx-about p { margin: 0 0 1rem; line-height: 1.7; color: var(--tsx-mist); }
.tsx-about a { color: var(--tsx-gold); font-weight: 600; text-underline-offset: 3px; }
@media (min-width: 800px) { .tsx-about { grid-template-columns: minmax(0, 20rem) minmax(0, 1fr); gap: 3rem; } }

/* ---------- pakketten ---------- */

.tsx-packs { display: grid; gap: 1.25rem; margin: 1.75rem 0 1.25rem; }
@media (min-width: 760px) { .tsx-packs { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 52rem; } }

.tsx-pack {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 1.6rem;
  background: var(--tsx-bg-2);
  border: 1px solid var(--tsx-line);
  border-radius: var(--tsx-radius);
}
.tsx-pack--pick { border: 2px solid var(--tsx-gold); }
.tsx-pack__tag {
  position: absolute;
  top: -0.8rem;
  left: 1.4rem;
  padding: 0.2rem 0.8rem;
  border-radius: 999px;
  background: var(--tsx-gold);
  color: var(--tsx-bg);
  font-size: 0.85rem;
  font-weight: 600;
}
.tsx-pack h3 { margin: 0 0 0.2rem; font: 700 1.5rem var(--tsx-serif); color: var(--tsx-ivory); }
.tsx-pack__time { margin: 0 0 1rem; color: var(--tsx-mist); }
.tsx-pack__price { margin: 0 0 1.1rem; font: 700 2.2rem / 1 var(--tsx-serif); color: var(--tsx-gold); }
.tsx-pack__price small { font: 400 0.95rem var(--tsx-sans); color: var(--tsx-mist); margin-right: 0.35rem; }
.tsx-pack ul { margin: 0 0 1rem; padding: 0; list-style: none; display: grid; gap: 0.55rem; }
.tsx-pack li { position: relative; padding-left: 1.5rem; color: var(--tsx-ivory); font-size: 0.97rem; line-height: 1.45; }
.tsx-pack li::before { content: ""; position: absolute; left: 0.1rem; top: 0.45rem; width: 0.55rem; height: 0.3rem; border-left: 2px solid var(--tsx-gold); border-bottom: 2px solid var(--tsx-gold); transform: rotate(-45deg); }
.tsx-pack__fine { margin: 0 0 1.1rem; font-size: 0.88rem; color: var(--tsx-mist); }
.tsx-pack .tsx-btn { margin-top: auto; }
.tsx-packs-note { margin: 0; max-width: 40rem; color: var(--tsx-mist); line-height: 1.6; }

/* ---------- zo werkt het ---------- */

.tsx-steps { display: grid; gap: 1.25rem; margin: 1.5rem 0 0; padding: 0; list-style: none; counter-reset: stap; }
.tsx-steps li { position: relative; padding-left: 3.1rem; counter-increment: stap; line-height: 1.6; color: var(--tsx-mist); }
.tsx-steps li strong { display: block; color: var(--tsx-ivory); font: 700 1.15rem var(--tsx-serif); margin-bottom: 0.15rem; }
.tsx-steps li::before {
  content: counter(stap);
  position: absolute;
  left: 0;
  top: 0;
  display: grid;
  place-items: center;
  width: 2.2rem;
  height: 2.2rem;
  border: 1px solid var(--tsx-gold);
  border-radius: 50%;
  color: var(--tsx-gold);
  font: 700 1rem var(--tsx-serif);
}
@media (min-width: 800px) { .tsx-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; } }

/* ---------- veelgestelde vragen ---------- */

.tsx-faq { margin: 1.5rem 0 0; max-width: 46rem; }
.tsx-faq details { border-bottom: 1px solid var(--tsx-line); }
.tsx-faq details:first-child { border-top: 1px solid var(--tsx-line); }
.tsx-faq summary { cursor: pointer; padding: 1rem 0.25rem; font-weight: 600; color: var(--tsx-ivory); list-style-position: outside; }
.tsx-faq p { margin: 0 0 1.1rem; padding: 0 0.25rem; color: var(--tsx-mist); line-height: 1.65; }

/* ---------- aanvraag ---------- */

.tsx-contact-grid { display: grid; gap: 2rem; align-items: start; }
@media (min-width: 900px) { .tsx-contact-grid { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 3rem; } }
.tsx-direct { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.75rem; }
.tsx-direct { gap: 0.1rem; }
.tsx-direct a { display: inline-flex; align-items: center; gap: 0.6rem; padding: 0.7rem 0; color: var(--tsx-ivory); text-underline-offset: 3px; }

/* stadspagina's: de kop was 6rem groot en duwde de knoppen onder de vouw van een laptop */
.location-hero h1 { font-size: clamp(2.2rem, 5.4vw, 4.25rem) !important; line-height: 1.1 !important; }

/* stadspagina's: het gouden label op de lichte sectie haalde maar 1,9 : 1 */
.location-section-warm .location-kicker { color: #6F5410; }
.tsx-direct i { color: var(--tsx-gold); width: 1.2rem; text-align: center; }

.tsx-form { display: grid; gap: 1rem; padding: clamp(1.25rem, 4vw, 2rem); background: var(--tsx-bg-2); border: 1px solid var(--tsx-line); border-radius: var(--tsx-radius); }
.tsx-form__row { display: grid; gap: 1rem; }
@media (min-width: 560px) { .tsx-form__row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.tsx-field label { display: block; margin-bottom: 0.35rem; font-size: 0.93rem; font-weight: 600; color: var(--tsx-ivory); }
.tsx-field input, .tsx-field select, .tsx-field textarea {
  width: 100%;
  min-height: 3rem;
  padding: 0.7rem 0.85rem;
  border: 1px solid rgba(244, 238, 226, 0.3);
  border-radius: 6px;
  background: var(--tsx-bg);
  color: var(--tsx-ivory);
  font: 400 1rem var(--tsx-sans);
  color-scheme: dark;
}
.tsx-field textarea { min-height: 7rem; resize: vertical; }
.tsx-field input::placeholder, .tsx-field textarea::placeholder { color: #8791A8; }
.tsx-req { color: var(--tsx-glow); }
.tsx-chosen { margin: 0; padding: 0.7rem 0.9rem; border-left: 3px solid var(--tsx-gold); background: rgba(212, 175, 55, 0.08); font-size: 0.95rem; }

.tsx-more { border: 1px dashed rgba(244, 238, 226, 0.3); border-radius: 6px; padding: 0.15rem 0.9rem; }
.tsx-more[open] { padding-bottom: 1rem; }
.tsx-more summary { cursor: pointer; padding: 0.75rem 0; font-weight: 600; color: var(--tsx-gold); }
.tsx-more .tsx-field + .tsx-field, .tsx-more .tsx-form__row + .tsx-field, .tsx-more .tsx-field + .tsx-form__row, .tsx-more .tsx-form__row + .tsx-form__row { margin-top: 1rem; }

.tsx-form__status { margin: 0; padding: 0.8rem 1rem; border-left: 3px solid #F08A7C; background: rgba(240, 138, 124, 0.1); color: var(--tsx-ivory); line-height: 1.55; }
.tsx-form__status a { color: var(--tsx-gold); }
.tsx-form__fine { margin: 0; font-size: 0.88rem; color: var(--tsx-mist); }

.tsx-thanks { padding: clamp(1.5rem, 5vw, 2.5rem); background: var(--tsx-bg-2); border: 1px solid var(--tsx-gold); border-radius: var(--tsx-radius); }
.tsx-thanks:focus { outline: 3px solid var(--tsx-glow); outline-offset: 3px; }
.tsx-thanks h3 { margin: 0 0 0.6rem; font: 700 1.6rem var(--tsx-serif); color: var(--tsx-gold); }
.tsx-thanks p { margin: 0 0 1rem; line-height: 1.6; color: var(--tsx-ivory); }
.tsx-thanks a { color: var(--tsx-gold); }

/* ---------- vaste contactbalk op de telefoon ---------- */

.tsx-dock { display: none; }
@media (max-width: 767px) {
  body.tsx-page { padding-bottom: 5rem; }
  .tsx-dock {
    position: fixed;
    z-index: 40;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    gap: 0.5rem;
    padding: 0.6rem 0.75rem calc(0.6rem + env(safe-area-inset-bottom, 0px));
    background: rgba(15, 21, 36, 0.96);
    border-top: 1px solid var(--tsx-line);
    transition: transform 0.25s ease;
  }
  .tsx-dock[data-ready]:not(.is-visible) { transform: translateY(110%); }
  .tsx-dock a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 2.9rem;
    border-radius: var(--tsx-radius);
    border: 2px solid rgba(244, 238, 226, 0.5);
    color: var(--tsx-ivory);
    text-decoration: none;
    font-weight: 600;
  }
  .tsx-dock a[aria-label] { width: 3.2rem; flex: none; }
  .tsx-dock .tsx-dock__main { flex: 1; background: var(--tsx-gold); border-color: var(--tsx-gold); color: var(--tsx-bg); }
}

/* ---------- Candlelight-strook onderaan ---------- */

.cl-prices > .cl-card:only-child { grid-column: 1 / -1; max-width: 34rem; }

@media (prefers-reduced-motion: reduce) {
  .tsx-dock { transition: none; }
  .tsx-btn { transition: none; }
}

/* ===== site-base.css ===== */
/* Gedeeld op alle pagina's.
   1. Cookiebot als balk onderaan op de telefoon, in plaats van over het hele scherm.
   De tekst en de knoppen blijven van Cookiebot; alleen de plaatsing en de maat
   veranderen. De :not(#a):not(#b) verhoogt de specificiteit boven die van Cookiebot. */
@media (max-width: 767px) {
  #CybotCookiebotDialog:not(#a):not(#b) {
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    max-height: 46vh !important;
    border-radius: 14px 14px 0 0 !important;
  }

  #CybotCookiebotDialog:not(#a):not(#b) #CybotCookiebotDialogHeader {
    padding: 6px 16px !important;
  }

  #CybotCookiebotDialog:not(#a):not(#b) #CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink {
    padding: 10px 0 !important;
  }

  #CybotCookiebotDialog:not(#a):not(#b) #CybotCookiebotDialogBodyContent {
    padding-top: 8px !important;
  }

  #CybotCookiebotDialog:not(#a):not(#b) #CybotCookiebotDialogFooter,
  #CybotCookiebotDialog:not(#a):not(#b) #CybotCookiebotDialogBodyButtons {
    padding-top: 8px !important;
    padding-bottom: 10px !important;
  }

  #CybotCookiebotDialog:not(#a):not(#b) button {
    min-height: 44px !important;
    padding: 8px 12px !important;
    margin: 3px 0 !important;
    font-size: 15px !important;
  }

  /* Het kleine cookie-icoon blijft bereikbaar boven de contactbalk. */
  #CookiebotWidget {
    bottom: 84px !important;
  }
}

/* 2. Het uitklapmenu op de telefoon was begrensd op 24rem. Met acht of meer links
   werd de knop "Check datum" afgeknipt. Nu past het menu zich aan het scherm aan. */
#mobileMenu.max-h-96 {
  max-height: calc(100vh - 5.5rem);
  overflow-y: auto;
}

/* 3. Het volledige menu (negen links en een knop) past vanaf ongeveer 1024 pixels.
   Daaronder viel het logo over drie regels en verdween "Check datum" buiten beeld.
   Tussen 768 en 1024 pixels gebruiken we daarom ook het uitklapmenu. */
#site-header nav > a:first-child { white-space: nowrap; font-size: clamp(1.35rem, 1rem + 1.6vw, 1.875rem); }
@media (min-width: 768px) and (max-width: 1023px) {
  #site-header nav > div.hidden { display: none !important; }
  #mobileMenuBtn { display: block !important; }
  #mobileMenu { display: block !important; }
}
/* open menu: hamburger wordt een kruisje */
#mobileMenuBtn[aria-expanded="true"] .fa-bars::before { content: "\f00d"; }
@media (min-width: 1024px) and (max-width: 1180px) {
  #site-header nav > div.hidden > a { padding-left: 0.55rem; padding-right: 0.55rem; }
}
/* taalknop NL / EN */
#site-header .show-lang { margin-left: 0.25rem; border: 1px solid rgba(212, 175, 55, 0.55); border-radius: 99px; padding: 0.3rem 0.7rem !important; font-size: 0.75rem !important; font-weight: 700 !important; letter-spacing: 0.08em; }

/* menulinks breken nooit over twee regels */
#site-header nav > div.hidden > a { white-space: nowrap; }

/* 4. "Boeken voor": de diensten in een uitklapmenu, zodat de menubalk rustig blijft */
#site-header .menu-drop { position: relative; }
#site-header .menu-drop > summary { display: flex; align-items: center; gap: 0.4rem; list-style: none; cursor: pointer; white-space: nowrap; }
#site-header .menu-drop > summary::-webkit-details-marker { display: none; }
#site-header .menu-drop > summary i { font-size: 0.6rem; transition: transform 0.2s ease; }
#site-header .menu-drop[open] > summary { color: #D4AF37; }
#site-header .menu-drop[open] > summary i { transform: rotate(180deg); }
#site-header .menu-drop__panel {
  position: absolute;
  top: calc(100% + 0.7rem);
  left: 0;
  z-index: 60;
  display: grid;
  min-width: 15rem;
  padding: 0.5rem;
  border: 1px solid rgba(212, 175, 55, 0.35);
  border-radius: 10px;
  background: #0B0F1C;
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.55);
}
#site-header .menu-drop__panel a { display: block; padding: 0.6rem 0.85rem; border-radius: 6px; color: #F4EEE2; font-size: 0.92rem; font-weight: 500; white-space: nowrap; text-decoration: none; }
#site-header .menu-drop__panel a:hover, #site-header .menu-drop__panel a:focus-visible { background: rgba(212, 175, 55, 0.12); color: #D4AF37; }
/* kopjes in het uitklapmenu op de telefoon */
#mobileMenu .menu-group { margin: 0.9rem 0 0.2rem; padding: 0 0.2rem; color: #D4AF37; font-size: 0.7rem; font-weight: 800; letter-spacing: 0.2em; text-transform: uppercase; }
#mobileMenu .menu-group:first-child { margin-top: 0; }

/* ===== candlelight-premium.css ===== */
/* Candlelight: standalone styling; all content is visible without JavaScript. */
.cl-feature,
.cl-page {
    --cl-ivory: #fff7e9;
    --cl-muted: #dfcdbf;
    --cl-gold: #e8c583;
    --cl-border: rgba(232, 197, 131, .25);
    color: var(--cl-ivory);
    background: #211017;
    font-family: "Poppins", sans-serif;
    line-height: 1.75;
    overflow-wrap: break-word;
}
.cl-feature *, .cl-page * { box-sizing: border-box; }
.cl-feature, .cl-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: radial-gradient(ellipse at 83% 75%, #72412b55, transparent 55%),
        linear-gradient(125deg, #211017, #451c2a 65%, #271217);
    padding: clamp(3.5rem, 8vw, 7rem) 0;
    border-block: 1px solid var(--cl-border);
}
.cl-wrap { position: relative; z-index: 1; width: min(1180px, calc(100% - 3rem)); margin-inline: auto; }
.cl-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.cl-grid > *, .cl-copy { min-width: 0; }
.cl-eyebrow { color: var(--cl-gold); font-size: .74rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; margin: 0 0 1rem; }
.cl-title { font-family: "Playfair Display", Georgia, serif; color: var(--cl-ivory); font-size: clamp(2.35rem, 4.7vw, 4.65rem); font-weight: 600; line-height: 1.12; letter-spacing: -.025em; margin: 0 0 1.4rem; text-wrap: balance; }
.cl-title em { font-weight: inherit; color: var(--cl-gold); }
.cl-lead { color: var(--cl-muted); font-size: clamp(1rem, 1.4vw, 1.15rem); line-height: 1.85; max-width: 42rem; margin: 0 0 1.5rem; }
.cl-copy > p:not([class]) { color: var(--cl-muted); margin: 0 0 1.25rem; }
.cl-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .85rem; margin-top: 1.8rem; }
.cl-button { display: inline-flex; justify-content: center; align-items: center; text-align: center; min-height: 48px; max-width: 100%; padding: .8rem 1.4rem; border: 1px solid var(--cl-gold); border-radius: 5px; background: var(--cl-gold); color: #29141a; font: 600 .875rem/1.5 "Poppins", sans-serif; text-decoration: none; transition: background-color .2s, border-color .2s; cursor: pointer; }
.cl-button:hover { background: #f6dca8; border-color: #f6dca8; }
.cl-button--secondary { background: transparent; color: var(--cl-ivory); border-color: #b59572; }
.cl-button--secondary:hover { background: #fff7e912; border-color: var(--cl-gold); }
.cl-button:focus-visible, .cl-motion-toggle:focus-visible, .cl-faq summary:focus-visible,
.cl-page a:focus-visible, .cl-feature a:focus-visible { outline: 3px solid #fff0b5; outline-offset: 5px; }
.cl-visual { position: relative; margin: 0; min-width: 0; }
.cl-visual .cl-sparkles { bottom: auto; aspect-ratio: 16 / 9; z-index: 1; border-radius: 8px; }
.cl-portrait img { display: block; width: 100%; height: auto; max-height: 660px; object-fit: cover; border-radius: 8px; }
.cl-poster img { display: block; width: 100%; height: auto; border-radius: 8px; }
.cl-section p + p { margin-top: 1.15rem; }
.cl-section p + .cl-button { margin-top: 1.25rem; }
.cl-page { padding-top: 5rem; }
.cl-skip { position: fixed; top: -100px; left: 1rem; z-index: 100; background: #fff7e9; color: #211017; padding: 1rem; }
.cl-skip:focus { top: 1rem; }
.cl-visual img { display: block; width: 100%; height: auto; border-radius: 8px; border: 1px solid var(--cl-border); box-shadow: 0 22px 65px #08030566; }
.cl-caption { color: var(--cl-muted); font-size: .74rem; line-height: 1.6; margin-top: .7rem; }
.cl-portrait { width: 100%; max-height: 660px; object-fit: cover; object-position: center 30%; }
.cl-poster { display: block; width: min(100%, 480px); height: auto; margin-inline: auto; border-radius: 6px; }
.cl-section { padding: clamp(3rem, 6vw, 5.5rem) 0; border-bottom: 1px solid var(--cl-border); }
.cl-section:nth-of-type(even) { background: #2b151d; }
.cl-section h2:not(.cl-title) { font-family: "Playfair Display", Georgia, serif; font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.25; font-weight: 600; margin: 0 0 1.2rem; color: var(--cl-ivory); }
.cl-section h3 { color: var(--cl-ivory); font-size: 1.15rem; font-weight: 600; margin: 0 0 .75rem; }
.cl-section p { margin-top: 0; }
.cl-card { padding: clamp(1.4rem, 3vw, 2.5rem); border: 1px solid var(--cl-border); border-radius: 8px; background: #fff7e906; }
.cl-card p, .cl-card li { color: var(--cl-muted); }
.cl-card ul { padding-left: 1.2rem; margin-bottom: 0; }
.cl-prices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin-top: 2rem; }
.cl-prices > .cl-card:only-child { grid-column: 1 / -1; max-width: 34rem; }
.cl-price { font-family: "Playfair Display", Georgia, serif; color: var(--cl-gold); font-size: clamp(2.3rem, 4vw, 3.5rem); line-height: 1.2; margin: 1rem 0; }
.cl-card .cl-price { color: var(--cl-gold); }
.cl-price small { display: block; font-family: "Poppins", sans-serif; color: var(--cl-muted); font-size: .8rem; line-height: 1.7; margin-top: .65rem; }
.cl-note { font-size: .85rem; line-height: 1.8; color: var(--cl-muted); margin: 1.4rem 0 0; }
.cl-facts { display: flex; flex-wrap: wrap; gap: .65rem 1.25rem; padding: 0; margin: 1.5rem 0; list-style: none; color: var(--cl-gold); font-size: .8rem; }
.cl-facts > * { margin: 0; }
.cl-facts li::before { content: ""; display: inline-block; width: 4px; height: 4px; border-radius: 50%; background: currentColor; margin: 0 .6rem .2rem 0; }
.cl-faq { max-width: 860px; }
.cl-faq details { border-bottom: 1px solid var(--cl-border); padding: 1.2rem 0; }
.cl-faq summary { color: var(--cl-ivory); cursor: pointer; font-weight: 500; padding-right: .5rem; }
.cl-faq details p { color: var(--cl-muted); margin: .85rem 0 0; }
.cl-sparkles { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
.cl-sparkle { position: absolute; left: var(--cl-x); top: var(--cl-y); width: var(--cl-size); height: var(--cl-size); border-radius: 50%; background: #ffdf9e; box-shadow: 0 0 13px 3px #efbc6340; opacity: .24; animation: cl-float var(--cl-duration) ease-in-out var(--cl-delay) infinite alternate; }
@keyframes cl-float { from { transform: translate3d(0, 12px, 0); opacity: .35; } to { transform: translate3d(18px, -48px, 0); opacity: .95; } }
.cl-motion-toggle { display: none; margin-top: 1.2rem; min-height: 44px; padding: .45rem .2rem; border: 0; background: none; color: var(--cl-muted); font: inherit; font-size: .75rem; text-decoration: underline; text-underline-offset: .25em; cursor: pointer; }
.cl-motion-ready .cl-motion-toggle { display: inline-block; }
.cl-motion-toggle:hover { color: var(--cl-ivory); }
.cl-motion-paused .cl-sparkle { animation-play-state: paused; }
@media (max-width: 760px) {
    .cl-wrap { width: calc(100% - 2rem); }
    .cl-grid, .cl-prices { grid-template-columns: minmax(0, 1fr); }
    .cl-title { font-size: clamp(2.2rem, 9vw, 3.6rem); }
    .cl-visual { max-width: 580px; width: 100%; margin-inline: auto; }
    .cl-portrait { max-height: 570px; }
}
@media (max-width: 380px) { .cl-actions { align-items: stretch; flex-direction: column; } .cl-button { width: 100%; } }
@media (prefers-reduced-motion: reduce) {
    :root:not(.cl-motion-opt-in) .cl-sparkle { animation-play-state: paused; }
    .cl-button { transition: none; }
}


/* Visible, slow amber movement stays inside the concert photograph. */
.cl-sparkles::before {
    content: "";
    position: absolute;
    inset: -30%;
    background: radial-gradient(ellipse at 28% 65%, rgba(255, 175, 65, .32), transparent 42%), radial-gradient(ellipse at 80% 40%, rgba(255, 218, 143, .18), transparent 35%);
    animation: cl-amber-drift 7s ease-in-out infinite alternate;
    pointer-events: none;
}
.cl-sparkle { box-shadow: 0 0 7px 2px #ffdb9a99; }
@keyframes cl-amber-drift {
    from { transform: translate3d(-8%, 3%, 0); opacity: .45; }
    to { transform: translate3d(10%, -3%, 0); opacity: 1; }
}
.cl-motion-paused .cl-sparkles::before { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
    :root:not(.cl-motion-opt-in) .cl-sparkles::before { animation-play-state: paused; }
}

.cl-hero > .cl-sparkles, .cl-feature > .cl-sparkles { z-index: 0; }

.cl-page .cl-pilot-spotlight { background: #f4e7d0; color: #321b23; border-block: 3px solid #d2a65e; scroll-margin-top: 6rem; }
.cl-pilot-spotlight .cl-title, .cl-pilot-spotlight h3 { color: #321b23; }
.cl-pilot-spotlight .cl-lead, .cl-pilot-spotlight .cl-note, .cl-pilot-spotlight .cl-card p { color: #594236; }
.cl-pilot-badge { display: inline-block; padding: .4rem .8rem; border-radius: 4px; background: #542239; color: #fff4df; font-weight: 600; font-size: .8rem; margin-bottom: 1.4rem; }
.cl-pilot-offer { font-weight: 600; font-size: 1.1rem; margin-bottom: 2rem; }
.cl-pilot-spotlight .cl-card { background: #fff9ed; border-color: #b59572; box-shadow: 0 12px 35px #321b2312; }
.cl-pilot-spotlight .cl-button { background: #542239; border-color: #542239; color: #fff4df; }
.cl-pilot-spotlight .cl-button:hover { background: #71314d; }
.cl-request-notice:not([hidden]) { padding: 1rem; border: 1px solid #e8c583; border-radius: 6px; background: #351923; color: #fff3dc; line-height: 1.7; }
