/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
@font-face{font-family:"Antropos";src:url(/themes/custom/waldorf_songs/fonts/antropos-freefont.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap;}:root{--ws-sky-top:#6ec1e4;--ws-sky-bottom:#c8ecfa;--ws-green:#429654;--ws-green-dark:#357a44;--ws-red:#d64545;--ws-red-dark:#b23030;--ws-gold:#f0a83c;--ws-cream:#fcf7ea;--ws-cream-edge:#c4b084;--ws-card:#fffdf6;--ws-card-edge:#ccba8a;--ws-ink:#3e3222;--ws-ink-dim:#8a7a5c;--ws-link:#3f7fc4;--ws-r-lg:22px;--ws-r-md:16px;--ws-r-sm:12px;--ws-r-pill:999px;--ws-font-display:"Fredoka","Arial Rounded MT Bold","Helvetica Neue",sans-serif;--ws-font-body:"Metropolis","Helvetica Neue",Arial,sans-serif;--ws-font-brand:"Antropos",var(--ws-font-display);}body{font-family:var(--ws-font-body);color:var(--ws-ink);background-color:var(--ws-sky-top);background-image:linear-gradient(rgba(255,249,235,0.40),rgba(255,249,235,0.16)),url(/themes/custom/waldorf_songs/images/fall.webp);background-repeat:no-repeat;background-position:center center;background-size:cover;background-attachment:fixed;min-height:100vh;}@media (max-width:768px){body{background-attachment:scroll;}}#page-wrapper{background:transparent;max-width:none;}.social-bar{display:none;}.main-content__container{margin-inline:auto;}.site-header{background:#ffffff;box-shadow:0 2px 14px rgba(30,60,30,0.10);position:relative;z-index:10;border-block-end:0;min-height:0;}.site-header__initial{display:none;}.site-header__fixable{align-items:center;}.site-header__inner{width:100%;}.site-header__inner__container{align-items:center;}.site-branding{display:flex;align-items:center;min-width:0;min-height:0;margin:0;padding:0.85rem 0;background:none;background-image:none;}.site-branding__inner{display:flex;align-items:center;gap:0;height:auto;padding:0;}.site-branding__logo{display:none;}.site-branding__text{display:block;color:inherit;}.site-branding__name{font-size:inherit;font-weight:inherit;line-height:normal;letter-spacing:normal;}.site-branding__name a{display:inline-block;background:var(--ws-green);color:#fff;font-family:var(--ws-font-brand);font-weight:400;font-size:1.4rem;letter-spacing:0.02em;padding:0.6rem 1.8rem;border-radius:var(--ws-r-pill);text-decoration:none;box-shadow:0 3px 0 var(--ws-green-dark);transition:transform 0.12s ease;}.site-branding__name a:hover{transform:translateY(-2px);}.primary-nav__menu-link{font-family:var(--ws-font-display);font-weight:500;color:var(--ws-ink);border-radius:var(--ws-r-pill);padding:0.4rem 1rem;}.primary-nav__menu-link:hover,.primary-nav__menu-link.is-active{background:var(--ws-cream);color:var(--ws-green-dark);text-decoration:none;}.mobile-buttons{margin:0;}.mobile-nav-button{border:none;background:transparent;padding:0.5rem 0;color:var(--ws-ink);font-family:var(--ws-font-display);font-weight:600;font-size:1rem;letter-spacing:0.02em;}.mobile-nav-button__label{margin-inline-end:0.6rem;}.mobile-nav-button__icon,.mobile-nav-button__icon::before,.mobile-nav-button__icon::after{border-top-color:var(--ws-ink-dim);}.ws-hero{padding-block:1.5rem 1rem;}.main-content__container:has(> .ws-hero){padding-block-start:1.25rem;}.page-title{font-family:var(--ws-font-brand);font-weight:400;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.02;text-wrap:balance;color:var(--ws-ink);margin:0;text-shadow:0 3px 0 rgba(255,255,255,0.28);}.view-song-search .view-filters{background:var(--ws-cream);border:3px solid var(--ws-cream-edge);border-radius:var(--ws-r-lg);padding:1.6rem 1.75rem;box-shadow:0 5px 0 rgba(0,0,0,0.05);}.view-song-search .view-filters form{display:grid;grid-template-columns:repeat(12,1fr);gap:1.1rem 1.4rem;align-items:end;}.view-song-search .form-item{margin:0;}.view-song-search .form-item__label{display:block;font-weight:600;font-size:0.95rem;color:var(--ws-ink);margin-bottom:0.45rem;}.view-song-search .form-text,.view-song-search .form-select{width:100%;border:3px solid #9a8a64;border-radius:var(--ws-r-sm);background:#fff;padding:0.65rem 1rem;font-size:1.05rem;font-family:var(--ws-font-body);color:var(--ws-ink);}.view-song-search .form-text:focus,.view-song-search .form-select:focus{outline:none;border-color:var(--ws-green);box-shadow:0 0 0 3px rgba(66,150,84,0.25);}.view-song-search .form-item-search-api-fulltext{grid-column:1 / span 6;}.view-song-search .form-item-name{grid-column:7 / span 3;}.view-song-search .form-item-field-curriculum-topics{grid-column:10 / span 3;}.view-song-search .form-item-field-festival{grid-column:1 / span 4;}.view-song-search .form-item-field-pentatonic{grid-column:5 / span 2;}.view-song-search .form-actions{grid-column:7 / span 2;margin:0;display:flex;align-items:center;gap:0.75rem;}.view-song-search .form-actions:has(.form-submit + .form-submit){grid-column:7 / span 4;}.view-song-search .form-actions .form-submit{flex:1 1 0;}.view-song-search .form-item-field-pentatonic{display:flex;align-items:stretch;align-self:stretch;position:relative;}.view-song-search .form-item-field-pentatonic .form-item__label{display:flex;flex:1;flex-direction:column;align-items:flex-start;margin:0;padding:0 0 2rem;cursor:pointer;font-family:var(--ws-font-display);font-weight:600;font-size:1rem;color:var(--ws-ink);user-select:none;position:relative;}.view-song-search .form-item-field-pentatonic .form-select{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none;}.view-song-search .form-item-field-pentatonic .form-item__label::before{content:"";position:absolute;left:0;bottom:0;width:2.8rem;height:1.5rem;border-radius:var(--ws-r-pill);background:#d9d3c5;box-shadow:inset 0 1px 3px rgba(0,0,0,0.12);transition:background 0.2s ease;}.view-song-search .form-item-field-pentatonic .form-item__label::after{content:"";position:absolute;left:0.2rem;bottom:0.2rem;width:1.1rem;height:1.1rem;border-radius:50%;background:#fff;border:2px solid #d9d3c5;box-shadow:0 1px 3px rgba(0,0,0,0.2);transition:left 0.2s ease,border-color 0.2s ease;}.view-song-search .form-item-field-pentatonic.is-on .form-item__label::before{background:var(--ws-green);}.view-song-search .form-item-field-pentatonic.is-on .form-item__label::after{left:1.5rem;border-color:var(--ws-green);}.view-song-search .form-submit{width:100%;background:var(--ws-red);color:#fff;border:none;border-radius:var(--ws-r-sm);padding:0.8rem 1rem;font-family:var(--ws-font-display);font-weight:600;font-size:1.15rem;cursor:pointer;box-shadow:0 4px 0 var(--ws-red-dark);transition:transform 0.1s ease,box-shadow 0.1s ease;}.view-song-search .form-submit:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--ws-red-dark);}.view-song-search .form-submit:active{transform:translateY(2px);box-shadow:0 2px 0 var(--ws-red-dark);}.view-song-search .form-actions .form-submit + .form-submit{background:#fff;color:var(--ws-ink);box-shadow:inset 0 0 0 3px #9a8a64,0 4px 0 var(--ws-cream-edge);font-weight:500;}.view-song-search .form-actions .form-submit + .form-submit:hover{box-shadow:inset 0 0 0 3px #9a8a64,0 6px 0 var(--ws-cream-edge);}.view-song-search .form-actions .form-submit + .form-submit:active{box-shadow:inset 0 0 0 3px #9a8a64,0 2px 0 var(--ws-cream-edge);}.view-song-search .view-content{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.6rem;}.view-song-search .view-header{font-family:var(--ws-font-display);font-weight:500;font-size:1.15rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,0.25);margin-top:1.6rem;}.song-card{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"disc main audio"
    "disc main audio";align-items:center;column-gap:1.2rem;background:var(--ws-card);border:2px solid var(--ws-card-edge);border-radius:var(--ws-r-md);padding:0.9rem 1.2rem;box-shadow:0 3px 0 rgba(0,0,0,0.06);}.song-card__disc{grid-area:disc;display:flex;align-items:center;justify-content:center;}.song-card__main{grid-area:main;min-width:0;}.song-card__title{font-family:var(--ws-font-display);font-weight:600;font-size:1.2rem;color:var(--ws-ink);line-height:1.2;}.song-card__song{margin-top:0.15rem;}.song-card__song a{color:var(--ws-link);font-size:1.05rem;text-decoration:underline;text-underline-offset:3px;}.song-card__song a:hover{color:var(--ws-green-dark);}.song-card__title .views-field,.song-card__song .views-field{display:contents;}.song-card__actions{grid-area:audio;display:flex;align-items:center;justify-content:flex-end;gap:0.75rem;}.song-card__player{display:flex;align-items:center;}.song-card__audio-el{display:none;}.song-card__play-btn{width:52px;height:52px;border-radius:50%;border:3px solid #d8cba0;background:#fff7e6;color:#429654;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 0 rgba(0,0,0,0.10);transition:transform 0.12s ease,background 0.12s ease;}.song-card__play-btn:hover{transform:scale(1.07);background:#fffdf6;}.song-card__play-btn:focus-visible{outline:3px solid var(--ws-green);outline-offset:2px;}.song-card__play-btn .icon-pause{display:none;}.song-card__play-btn.is-playing .icon-play{display:none;}.song-card__play-btn.is-playing .icon-pause{display:block;}.song-card__sheet{display:block;flex-shrink:0;width:80px;height:52px;border:2px solid var(--ws-card-edge);border-radius:4px;overflow:hidden;background:#fff;transition:border-color 0.12s ease;}.song-card__sheet:hover{border-color:var(--ws-green);}.song-card__sheet:focus-visible{outline:3px solid var(--ws-green);outline-offset:2px;}.song-card__sheet img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;}.song-card__sheet-btn{display:inline-flex;align-items:center;gap:0.35rem;padding:0.5rem 0.8rem;border:2px solid var(--ws-card-edge);border-radius:var(--ws-r-pill);background:#fff;color:var(--ws-ink);font-family:var(--ws-font-display);font-size:0.8rem;font-weight:500;text-decoration:none;white-space:nowrap;transition:background 0.12s ease,border-color 0.12s ease;}.song-card__sheet-btn:hover{background:var(--ws-cream);border-color:var(--ws-green);}.song-card__sheet-btn:focus-visible{outline:3px solid var(--ws-green);outline-offset:2px;}.song-card__sheet-icon{flex-shrink:0;}.pager{margin:2rem 0;display:flex;justify-content:center;}.pager__items{display:flex;align-items:center;gap:0.5rem;}.pager__item{display:flex;align-items:center;justify-content:center;width:auto;height:auto;background:none;}.pager__item--control a{display:flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:0.45rem;background:#fff;border:0;border-radius:var(--ws-r-pill);box-shadow:inset 0 0 0 2px var(--ws-card-edge),0 4px 0 var(--ws-cream-edge);color:var(--ws-ink);text-decoration:none;transition:transform 0.1s ease,box-shadow 0.1s ease;}.pager__item--control a:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 2px var(--ws-green),0 6px 0 var(--ws-green-dark);color:var(--ws-green-dark);}.pager__item--control a:active{transform:translateY(2px);box-shadow:inset 0 0 0 2px var(--ws-green),0 2px 0 var(--ws-green-dark);}.pager__item--control a:focus-visible{outline:3px solid var(--ws-green);outline-offset:3px;}.pager__item--active{display:flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:0.45rem 1rem;background:var(--ws-green);border-radius:var(--ws-r-pill);color:#fff;font-weight:600;line-height:1;}.site-footer{display:none;background:#22262b;color:#c9cdd3;margin-top:3rem;}.site-footer a{color:#9ec7f0;}.site-footer__inner{padding:2rem 0;}:is(.page-node-type-song,.page-node-type-song-version) .breadcrumb{font-size:0.85rem;color:var(--ws-ink-dim);}:is(.page-node-type-song,.page-node-type-song-version) .breadcrumb__item:nth-child(n + 2)::before{width:auto;height:auto;margin-inline:0.5rem;transform:none;border:0;content:"—";color:var(--ws-ink-dim);}:is(.page-node-type-song,.page-node-type-song-version) .breadcrumb__link{color:var(--ws-link);}:is(.page-node-type-song,.page-node-type-song-version) .breadcrumb__list{white-space:normal;}:is(.page-node-type-song,.page-node-type-song-version) .breadcrumb::after{content:none;}.main-content__container:has(:is(.song-page,.version-page)) .ws-hero{padding-block-end:2rem;}.section{margin-bottom:2.5rem;}.section__header{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem;}.section__badge{width:32px;height:32px;border-radius:var(--ws-r-sm);background:var(--ws-cream);border:2px solid var(--ws-cream-edge);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ws-green);}.section__badge svg{width:16px;height:16px;}.section__title{font-family:var(--ws-font-display);font-weight:600;font-size:1.05rem;color:var(--ws-ink);margin:0;}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));background:var(--ws-card);border:2px solid var(--ws-card-edge);border-radius:var(--ws-r-lg);overflow:hidden;box-shadow:0 4px 20px rgba(62,50,34,0.08);}.info-cell{display:flex;align-items:center;gap:0.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--ws-cream);border-right:1px solid var(--ws-cream);transition:background 0.1s ease;}.info-cell:hover{background:var(--ws-cream);}.info-cell__icon{width:32px;height:32px;border-radius:var(--ws-r-sm);background:#fff;border:1.5px solid var(--ws-cream-edge);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--ws-green);}.info-cell__icon svg{width:14px;height:14px;}.info-cell__text{min-width:0;}.info-cell__label{font-size:0.7rem;color:var(--ws-ink-dim);text-transform:uppercase;letter-spacing:0.04em;font-weight:500;margin-bottom:0.1rem;}.info-cell__value{font-size:0.9rem;font-weight:600;color:var(--ws-ink);}.info-cell__value .yes{color:var(--ws-green);}.info-cell__value .no{color:var(--ws-ink-dim);}.tag-row{display:flex;flex-wrap:wrap;gap:0.5rem;}.tag{display:inline-flex;align-items:center;gap:0.3rem;padding:0.4rem 0.85rem;border-radius:var(--ws-r-pill);font-size:0.8rem;font-weight:500;background:var(--ws-card);color:var(--ws-green-dark);border:2px solid var(--ws-card-edge);}.version-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem;}.version-card{--version-accent:var(--ws-green);--version-accent-dark:var(--ws-green-dark);display:flex;flex-direction:column;background:var(--ws-card);border:2px solid var(--ws-card-edge);border-radius:var(--ws-r-lg);overflow:hidden;box-shadow:0 4px 20px rgba(62,50,34,0.08);transition:box-shadow 0.15s ease,transform 0.15s ease;}.version-card:nth-child(4n + 2){--version-accent:var(--ws-gold);--version-accent-dark:#d18f28;}.version-card:nth-child(4n + 3){--version-accent:var(--ws-red);--version-accent-dark:var(--ws-red-dark);}.version-card:nth-child(4n + 4){--version-accent:var(--ws-link);--version-accent-dark:#2f639b;}.version-card:hover{box-shadow:0 8px 30px rgba(62,50,34,0.14);transform:translateY(-3px);}.version-card__top{padding:1.25rem 1.25rem 1rem;display:flex;align-items:center;gap:1rem;}.version-card__disc{width:48px;height:48px;flex-shrink:0;color:var(--version-accent);}.version-card__meta{min-width:0;}.version-card__key{font-family:var(--ws-font-display);font-weight:500;font-size:0.7rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--version-accent);margin-bottom:0.15rem;}.version-card__name{font-family:var(--ws-font-display);font-weight:600;font-size:1rem;color:var(--ws-ink);line-height:1.3;}.version-card__score{margin-inline-start:auto;flex-shrink:0;width:48px;height:64px;border:2px solid var(--ws-card-edge);border-radius:4px;overflow:hidden;background:#fff;transition:border-color 0.12s ease;}.version-card__score:hover{border-color:var(--version-accent);}.version-card__score:focus-visible{outline:3px solid var(--ws-ink);outline-offset:2px;}.version-card__score img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;}.version-card__player{padding:0.75rem 1.25rem;background:var(--ws-cream);border-top:1px solid var(--ws-cream-edge);border-bottom:1px solid var(--ws-cream-edge);}.version-card__player-row{display:flex;align-items:center;gap:0.6rem;}.version-card__audio{display:none;}.version-card__play{width:32px;height:32px;border-radius:50%;border:none;background:var(--version-accent);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:background 0.12s ease;}.version-card__play:hover{background:var(--version-accent-dark);}.version-card__play:focus-visible{outline:3px solid var(--ws-ink);outline-offset:2px;}.version-card__play .icon-pause{display:none;}.version-card__play.is-playing .icon-play{display:none;}.version-card__play.is-playing .icon-pause{display:block;}.version-card__wave{flex:1;display:flex;align-items:center;gap:2px;height:24px;}.version-card__wave span{flex:1;border-radius:1px;background:var(--version-accent);opacity:0.4;}.version-card__wave span:nth-child(1){height:30%;}.version-card__wave span:nth-child(2){height:60%;}.version-card__wave span:nth-child(3){height:90%;}.version-card__wave span:nth-child(4){height:70%;}.version-card__wave span:nth-child(5){height:100%;}.version-card__wave span:nth-child(6){height:50%;}.version-card__wave span:nth-child(7){height:80%;}.version-card__wave span:nth-child(8){height:40%;}.version-card__footer{padding:0.85rem 1.25rem;display:flex;gap:0.5rem;margin-top:auto;}.version-card__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:0.35rem;padding:0.5rem 0.75rem;border-radius:var(--ws-r-pill);font-family:var(--ws-font-display);font-size:0.8rem;font-weight:500;text-decoration:none;white-space:nowrap;cursor:pointer;border:2px solid var(--ws-card-edge);background:#fff;color:var(--ws-ink);transition:background 0.12s ease;}.version-card__btn:hover{background:var(--ws-cream);}.version-card__btn--primary{background:var(--version-accent);border-color:var(--version-accent);color:#fff;}.version-card__btn--primary:hover{background:var(--version-accent-dark);}.page-title__subtitle{margin:0.5rem 0 0;font-family:var(--ws-font-display);font-weight:500;font-size:clamp(0.9rem,1.5vw,1.15rem);text-transform:uppercase;letter-spacing:0.08em;color:var(--ws-green);}.version-page{--version-accent:var(--ws-green);--version-accent-dark:var(--ws-green-dark);}.single-version{background:var(--ws-card);border:2px solid var(--ws-card-edge);border-radius:var(--ws-r-lg);overflow:hidden;box-shadow:0 4px 20px rgba(62,50,34,0.08);}.single-version__content{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));}.single-version__panel{padding:1.25rem;}.single-version__panel + .single-version__panel{border-inline-start:2px solid var(--ws-cream-edge);}.single-version__label{font-size:0.7rem;color:var(--ws-ink-dim);text-transform:uppercase;letter-spacing:0.04em;font-weight:500;margin-bottom:0.75rem;}.single-version__score{display:block;margin-bottom:0.85rem;border:2px solid var(--ws-card-edge);border-radius:var(--ws-r-sm);overflow:hidden;background:#fff;transition:border-color 0.12s ease;}.single-version__score:hover{border-color:var(--version-accent);}.single-version__score:focus-visible{outline:3px solid var(--ws-ink);outline-offset:2px;}.single-version__score img{display:block;width:100%;max-height:340px;object-fit:contain;object-position:center top;}.single-version__sheet .version-card__btn{align-self:flex-start;flex:0 0 auto;padding-inline:1.1rem;}.single-version__audio{background:var(--ws-cream);}.single-version__audio{display:flex;flex-direction:column;}.single-version__audio .version-card__player{margin-block:auto;padding:0;border:0;background:none;}.single-version__audio .version-card__play{width:40px;height:40px;}.single-version__audio .version-card__wave{height:32px;}.single-version__audio .version-card__audio{display:block;width:100%;margin-top:0.75rem;}.version-page__flag{padding:0.2rem 0.65rem;font-size:0.7rem;text-transform:uppercase;letter-spacing:0.04em;}@media (max-width:900px){.view-song-search .view-filters form{grid-template-columns:1fr 1fr;}.view-song-search .form-item-search-api-fulltext,.view-song-search .form-item-name,.view-song-search .form-item-field-curriculum-topics,.view-song-search .form-item-field-festival,.view-song-search .form-item-field-pentatonic,.view-song-search .form-actions{grid-column:auto;}.view-song-search .form-actions:has(.form-submit + .form-submit){grid-column:auto;}}@media (max-width:640px){.view-song-search .view-filters form{grid-template-columns:1fr;}.song-card{grid-template-columns:auto 1fr;grid-template-areas:"disc title"
      "disc song"
      "audio audio";}.song-card__actions{justify-content:flex-start;margin-top:0.4rem;}}@media (max-width:640px){.info-grid{grid-template-columns:1fr 1fr;}.version-grid{grid-template-columns:1fr;}}@media (max-width:640px){.single-version__content{grid-template-columns:1fr;}.single-version__panel + .single-version__panel{border-inline-start:0;border-block-start:2px solid var(--ws-cream-edge);}}
