@charset "UTF-8";
:root{--bg:#0b0b0c;--text:#f6f7fb;--muted:#bfc3d4;--brand:#FFD700;--brand-ink:#2b2b2b;--ring:0 0 0 3px rgba(255,209,0,.35);--shadow:0;--radius:none;}
@media (prefers-color-scheme:light){:root{--bg:#f9fafb;--text:#111317;--muted:#4b5563;--brand:#FFD700;--brand-ink:#1a1a1a;}body{background:linear-gradient(180deg,#fff,#f3f4f6 60%);}}
html{color-scheme:light dark;}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji";background:var(--bg);color:var(--text);line-height:1.5;}
a{color:var(--text);text-decoration:none;font-weight:600;}
header a{color:var(--text);text-decoration:none;font-weight:700;}
.container{width:min(1200px,92%);margin-inline:auto;}
.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden;}
.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;padding:.6rem 1rem;background:var(--brand);color:var(--brand-ink);border-radius:10px;box-shadow:var(--shadow);}
header{position:relative;isolation:isolate;}
.hero{padding:clamp(2rem,4vw + 1rem,5rem) 0 1rem;}
.title{font-weight:800;letter-spacing:-.02em;font-size:clamp(1.8rem,1.1rem + 3.2vw,3.2rem);margin:0;}
.title a{color:inherit;text-decoration:none;}
.title-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;}
.slogan{margin:.4rem 0 0;color:var(--muted);font-size:clamp(1rem,.7rem + 1vw,1.2rem);}
.lang-switcher{display:flex;gap:.35rem;}
.lang-switcher a{padding:.25rem .55rem;border-radius:999px;color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:700;}
.lang-switcher a.active{background:var(--brand);color:var(--brand-ink);}
nav{margin:1rem 0 0rem;}
.menu{display:flex;flex-wrap:wrap;gap:.6rem;}
.menu a{text-decoration:none;color:var(--brand-ink);background:var(--brand);padding:.55rem .9rem;border-radius:999px;font-weight:600;font-size:.95rem;transition:transform .12s ease,filter .12s ease;}
.menu a:focus-visible{outline:none;box-shadow:var(--ring);}
.menu a:hover{transform:translateY(-2px);filter:brightness(1.03);}
.menu a.menu-toggle{background:none;color:black;border-radius:0;font-weight:700;}
.menu a.menu-toggle:hover{transform:none;filter:none;}
.menu a.active{background:transparent;color:var(--text);box-shadow:none;transform:none;filter:none;}
table{width:85%;border-collapse:collapse;}
td{vertical-align:top;padding:5px;}
.date-cell{width:166px;height:166px;font-weight:400;display:flex;align-items:center;padding:20px;justify-content:center;text-align:center;line-height:1.3;font-size:17px;}
.player-cell iframe{width:90%;height:166px;border:none;}
.song-date{font-size:1.1em;text-align:right;margin-bottom:10px;color:#555;font-weight:200;}
#cards{display:grid;gap:1.2rem;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;margin:2rem 0;}
.card-link{display:block;text-decoration:none;color:inherit;font-weight:400;}
.card-link:focus-visible{outline:none;box-shadow:var(--ring);border-radius:18px;}
.card{position:relative;isolation:isolate;min-height:320px;overflow:hidden;width:100%;background:#fff;color:var(--text);display:flex;box-shadow:0 9px 20px rgba(0,0,0,.25);transition:transform .12s ease,filter .12s ease;}
.card:hover{transform:translateY(-2px);filter:brightness(1.02);}
.card::before{content:"";position:absolute;inset:0;background-image:var(--bg-img);background-size:cover;background-position:center;transform:scale(1.03);z-index:-2;}
.card::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(0,0,0,.65);}
.card[data-overlay="light"]::after{background:rgba(255,255,255,.82);}
.card[data-overlay="light"]{color:#0b0b0c;}
.card .text{padding:clamp(1rem,1.2vw + .8rem,1.6rem);display:flex;flex-direction:column;gap:.55rem;align-items:flex-start;}
.card h2{margin:0;font-size:clamp(1.2rem,1rem + .8vw,1.6rem);line-height:1.15;font-weight:700;}
.card:not([data-overlay="light"]) h2{color:#fff;}
.card p{margin:0;color:rgba(255,255,255,.86);max-width:60ch;font-weight:400;}
.card[data-overlay="light"] p{color:rgba(10,10,10,.82);}
.tag{display:inline-flex;align-items:center;gap:.45rem;padding:.25rem .6rem;border-radius:999px;font-weight:700;font-size:.85rem;background:rgba(0,0,0,.50);color:rgba(255,255,255,.92);}
.svg-icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;object-fit:contain;flex:0 0 auto;}
.card:not([data-overlay="light"]) .tag .svg-icon{filter:brightness(0) invert(1);}
.card[data-overlay="light"] .tag .svg-icon{filter:none;}
.card[data-overlay="light"] .tag{background:rgba(255,215,0,.50);color:rgba(0,0,0,.86);}
.btn{display:inline-block;background:var(--brand);color:var(--brand-ink);border-radius:999px;padding:.55rem .9rem;font-weight:700;font-size:.95rem;text-decoration:none;border:0;cursor:pointer;margin:1rem 0;transition:transform .12s ease,filter .12s ease;}
.btn:focus-visible{outline:none;box-shadow:var(--ring);}
.btn:hover{transform:translateY(-2px);filter:brightness(1.03);}
footer .inner{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:1px dashed rgba(127,127,127,.35);padding-bottom:1.5rem;}
.small{font-size:.9rem;}
.social-buttons{margin-top:5px;display:flex;gap:15px;justify-content:center;}
.social-buttons a{display:inline-flex;align-items:center;justify-content:center;font-size:2em;transition:transform .3s ease,color .3s ease;text-decoration:none;color:#000;}
.social-buttons a:hover{color:#FFD700;transform:scale(1.2);}
.btn-tomcollier{color:#000;}
.footer-link{color:#000;font-weight:500;}
.card .sparkles{pointer-events:none;position:absolute;inset:0;overflow:hidden;z-index:10;}
.card .spark{position:absolute;width:8px;height:8px;border-radius:50%;background:rgba(255,215,0,.95);box-shadow:0 0 10px rgba(255,215,0,.85);animation:sparkle-pop 900ms ease-out forwards;}
.card .spark.star{width:10px;height:10px;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);}
@keyframes sparkle-pop{0%{transform:translate(0,0) scale(.4);opacity:0;}10%{opacity:1;}100%{transform:translate(var(--dx),var(--dy)) scale(1.2);opacity:0;}}
a.card-link[href="#"]{cursor:pointer;}
.collection-pills{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:.55rem;margin:1.4rem 0 1.6rem;}
.collection-pills a{display:inline-flex;align-items:center;width:auto;flex:0 0 auto;padding:.5rem .85rem;border-radius:999px;background:#e1e3e5;color:var(--brand-ink);text-decoration:none;font-weight:700;font-size:.92rem;}
.collection-pills a.active{background:transparent;color:var(--text);}
.pill-count{opacity:.65;margin-left:.25rem;font-size:.8em;}
.collection-intro{margin:1.2rem 0;padding:1rem 1.2rem;border-left:4px solid var(--brand);background:rgba(255,255,255,.06);}
.collection-kicker{color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.collections-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0 1.5rem;flex-wrap:wrap;}
.sort-pills{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:.45rem;}
.sort-pills a{display:inline-flex;align-items:center;width:auto;flex:0 0 auto;padding:.42rem .75rem;border-radius:999px;background:rgba(255,255,255,.72);color:var(--brand-ink);border:1px solid rgba(255,215,0,.45);text-decoration:none;font-size:.86rem;font-weight:800;}
.sort-pills a:hover{background:rgba(255,215,0,.45);}
.sort-pills a.active{background:var(--brand);color:var(--brand-ink);}
.collections-count{margin:0;color:var(--muted);font-size:.9rem;white-space:nowrap;}
.collection-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0 2rem;}
.collection-result-card{background:rgba(255,255,255,.72);color:var(--text);border:1.5px solid rgba(255,215,0,.42);border-radius:18px;padding:1rem;box-shadow:0 6px 16px rgba(0,0,0,.06);}
.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;}
.card-header h3{margin:0;line-height:1.15;flex:1;}
.card-header h3 a{color:var(--brand-ink);text-decoration:none;}
.collection-label{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .55rem;background:rgba(255,215,0,.55);color:var(--brand-ink);font-size:.75rem;font-weight:800;white-space:nowrap;flex-shrink:0;}
.collection-result-card p{color:var(--muted);font-size:.92rem;}
.collection-summary{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}
.player-placeholder{margin-top:.6rem;}
.player-placeholder iframe{width:100%;height:20px;border:0;}
.listen-toggle{margin-top:0;}
.collection-more{margin:.5rem 0 0;font-size:.85rem;}
.collection-more a{color:var(--brand-ink);font-weight:700;text-decoration:none;}
@media(max-width:950px){.collection-results{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.collection-results{grid-template-columns:1fr;}.collections-header{align-items:flex-start;}.collection-pills,.sort-pills{flex-direction:row;justify-content:flex-start;}.collection-pills a,.sort-pills a{width:auto;max-width:100%;}}
.adventure-page #loading{min-height:24px;}
.adventure-page .songs-grid{width:100%;display:grid;gap:14px;padding:2em 0 1rem;}
.adventure-page .song-row{display:grid;grid-template-columns:166px 1fr;gap:12px;align-items:stretch;}
.adventure-page .date-cell{min-height:166px;padding:16px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.3;font-size:1.05rem;font-weight:500;}
.adventure-page .player-cell{min-height:166px;overflow:hidden;display:flex;}
.adventure-page .player-cell iframe{width:100%!important;height:166px;border:0;}
.adventure-page .midway-message,.adventure-page .end-message{padding:16px;color:var(--text);text-align:center;min-height:60px;}
.adventure-page .midway-message p,.adventure-page .end-message p{margin:.6rem 0;color:var(--muted);}
.adventure-page .midway-message a,.adventure-page .end-message a{display:inline-block;margin-top:.6rem;color:var(--brand-ink);background:var(--brand);padding:.65rem 1.1rem;border-radius:999px;font-weight:800;font-size:.95rem;text-decoration:none;transition:transform .12s ease,filter .12s ease;}
.adventure-page .midway-message a:hover,.adventure-page .end-message a:hover{transform:translateY(-2px);filter:brightness(1.05);}
.adventure-page .player-controls{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);display:flex;gap:18px;padding:12px 20px;border-radius:999px;background:rgba(0,0,0,.6);backdrop-filter:blur(10px);z-index:9999;}
.adventure-page .player-controls button{background:none;border:none;color:white;font-size:1.4rem;cursor:pointer;transition:transform .15s ease,color .15s ease;}
.adventure-page .player-controls button:hover{transform:scale(1.2);}
.adventure-page .composer-link{color:white;font-size:1.3rem;display:flex;align-items:center;text-decoration:none;transition:transform .15s ease,color .15s ease;}
.adventure-page .composer-link:hover{color:var(--brand);transform:scale(1.2);}
.adventure-page .icon{display:inline-block;width:1.45em;height:1.45em;vertical-align:-.125em;object-fit:contain;flex-shrink:0;}
.adventure-page .player-controls .icon{width:1.4rem;height:1.4rem;filter:brightness(0) invert(1);transition:transform .15s ease,opacity .15s ease;}
.adventure-page .composer-link .icon{width:1.3rem;height:1.3rem;filter:brightness(0) invert(1);}
.bosklanken-page .highlight-yellow{color:var(--brand);font-size:.85em;}
.bosklanken-page blockquote{margin:1.4rem 0;padding:1rem 1.2rem;border-left:4px solid var(--brand);background:rgba(255,255,255,.06);}
.bosklanken-page .mbutton-wrapper{margin:1.5rem 0;}
.bosklanken-page .mbutton{display:inline-flex;align-items:center;gap:.55rem;background:var(--brand);color:var(--brand-ink);border-radius:999px;padding:.7rem 1.1rem;font-weight:800;text-decoration:none;}
.bosklanken-page .mbutton:hover{transform:translateY(-2px);filter:brightness(1.03);}
.bigbench-page .bigbench-hero{position:relative;left:50%;right:50%;width:100vw;margin-left:-50vw;margin-right:-50vw;overflow:hidden;isolation:isolate;background:url("https://www.caricatunes.com/images/Big-Bench.webp") center/cover no-repeat fixed;}
.bigbench-page .bigbench-hero::before{content:"";position:absolute;inset:0;background:rgba(11,11,12,.55);z-index:0;}
.bigbench-page .bigbench-inner{position:relative;z-index:1;box-sizing:border-box;width:min(1200px,92%);margin-inline:auto;padding:clamp(2.5rem,6vw,6rem) 2em;}
.bigbench-page .bigbench-hero h2{margin:0 0 1rem;color:var(--brand);font-size:clamp(1.8rem,1.2rem + 1.4vw,2.5rem);line-height:1.15;font-weight:300;}
.bigbench-page .bigbench-hero p{max-width:70ch;margin:0 0 1.2rem;color:#fff;font-size:clamp(1.08rem,1rem + .35vw,1.25rem);line-height:1.35;}
.bigbench-page .bigbench-hero .btn{margin:0;}
.bigbench-page h2:not(:first-child){margin-top:1.7rem;}
.collab-videos{width:100%;padding:2rem 0}
.video-grid{display:grid;grid-template-columns:1fr;gap:2rem}
.video-card{overflow:hidden;background:rgba(255,255,255,.04);box-shadow:0 10px 25px rgba(0,0,0,.15)}
.video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#000}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.caricodex-preview{width:min(820px,100%);margin:1.5rem auto 1rem;}
.caricodex-video-placeholder{display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,rgba(255,215,0,.92),rgba(255,255,255,.82));color:var(--brand-ink);}
.caricodex-video-placeholder>div{display:grid;gap:.45rem;place-items:center;text-align:center;padding:1.5rem;max-width:540px;}
.caricodex-video-placeholder i{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--brand-ink);color:var(--brand);font-size:1.25rem;}
.caricodex-video-placeholder strong{font-size:1.15rem;}
.caricodex-video-placeholder span{color:rgba(43,43,43,.78);}
		@media (min-width: 768px){
  .video-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:900px){#cards{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:950px){.collection-results{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:768px){body{font-size:1em;}table,tr,td{display:block;width:100%;}.date-cell{height:auto;margin-bottom:10px;font-size:1rem;}.song-date{font-size:1rem;margin-bottom:15px;text-align:center;}.adventure-page .songs-grid{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-inline:12px;box-sizing:border-box;}.adventure-page .song-row{grid-template-columns:1fr;justify-items:center;}.adventure-page .date-cell{width:80%;min-height:auto;font-size:1rem;}.adventure-page .player-cell{width:80%;margin:0;}.adventure-page .player-cell iframe{width:100%!important;max-width:100%;}}
@media (max-width:620px){.collection-results{grid-template-columns:1fr;}.collections-header{align-items:flex-start;}}
@media (max-width:600px){#cards{grid-template-columns:1fr;}}
