/* CRS Block Suite Pro — front styles */
:root{
  --crs-bsp-accent:#c6a15b;
  --crs-bsp-accent2:#7b2f2a;
  --crs-bsp-ink:#0f0f10;
  --crs-bsp-paper:#f5f0e6;
  --crs-bsp-radius:18px;
  --crs-bsp-shadow: 0 10px 36px rgba(0,0,0,.32);
  --crs-bsp-border: 1px solid rgba(245,240,230,.14);
  --crs-bsp-muted: rgba(245,240,230,.72);
}

.crs-bsp-section{padding: clamp(26px, 4vw, 64px) 0;}
.crs-bsp-inner{width:min(1160px, calc(100% - 44px)); margin:0 auto;}
.crs-bsp-head{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.crs-bsp-h{font-size:clamp(24px, 3vw, 36px);line-height:1.08;margin:0}
.crs-bsp-sub{margin:0;color:var(--crs-bsp-muted);max-width:72ch}
.crs-bsp-center{margin-top:18px;display:flex;justify-content:center}

.crs-bsp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:12px 16px;border-radius:999px;border:1px solid rgba(245,240,230,.18);
  text-decoration:none;font-weight:900;letter-spacing:.01em;
  transform: translateZ(0);
}
.crs-bsp-btn--primary{background:var(--crs-bsp-accent); color:#111; border-color: rgba(0,0,0,.14);}
.crs-bsp-btn--ghost{background:rgba(17,17,17,.20); color:var(--crs-bsp-paper)}
.crs-bsp-btn:hover{filter:brightness(1.03)}
.crs-bsp-btn:active{transform:translateY(1px)}

.crs-bsp-chip{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;
  border:1px solid rgba(245,240,230,.16);background:rgba(17,17,17,.20);color:var(--crs-bsp-paper);font-size:12px;opacity:.92;
}

.crs-bsp-tiles,.crs-bsp-grid{display:grid;gap:14px}
.crs-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}
.crs-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}
.crs-cols-4{grid-template-columns:repeat(4, minmax(0, 1fr))}
@media (max-width: 920px){.crs-cols-4,.crs-cols-3{grid-template-columns:repeat(2, minmax(0, 1fr))}}
@media (max-width: 620px){.crs-cols-4,.crs-cols-3,.crs-cols-2{grid-template-columns:1fr}}

.crs-bsp-tileLink,.crs-bsp-cardLink{text-decoration:none;color:inherit}
.crs-bsp-tile{border:var(--crs-bsp-border);background:rgba(245,240,230,.04);
  border-radius:var(--crs-bsp-radius);padding:16px;box-shadow: 0 0 0 rgba(0,0,0,0);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  position:relative;overflow:hidden;
}
.crs-bsp-tile::before{
  content:""; position:absolute; inset:-2px; background: radial-gradient(700px 240px at 20% 10%, rgba(198,161,91,.12), transparent 50%),
    radial-gradient(520px 240px at 80% 0%, rgba(123,47,42,.12), transparent 52%);
  opacity:.95; pointer-events:none;
}
.crs-bsp-tile__icon{font-size:24px; line-height:1; margin-bottom:10px}
.crs-bsp-tile__title{font-weight:900;font-size:18px}
.crs-bsp-tile__desc{margin-top:6px; color:var(--crs-bsp-muted)}
.crs-bsp-tile:hover{transform:translateY(-3px); box-shadow: var(--crs-bsp-shadow); border-color: rgba(198,161,91,.32)}

.crs-bsp-card{border:var(--crs-bsp-border);background:rgba(245,240,230,.04);
  border-radius:var(--crs-bsp-radius);overflow:hidden;transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.crs-bsp-card__img{height:200px;background-size:cover;background-position:center;filter:saturate(1.02) contrast(1.02)}
.crs-bsp-card__img--ph{background:
  linear-gradient(135deg, rgba(198,161,91,.16), rgba(123,47,42,.12)),
  radial-gradient(540px 240px at 20% 0%, rgba(245,240,230,.18), transparent 55%);
}
.crs-bsp-card__body{padding:14px}
.crs-bsp-card__title{font-weight:900}
.crs-bsp-card:hover{transform:translateY(-3px); box-shadow: var(--crs-bsp-shadow); border-color: rgba(198,161,91,.32)}

.crs-bsp-reel{display:flex;flex-direction:column;gap:12px}
.crs-bsp-track{border:var(--crs-bsp-border);background:rgba(245,240,230,.04);
  border-radius:var(--crs-bsp-radius);padding:14px;overflow:hidden;
}
.crs-bsp-reel--compact .crs-bsp-track{padding:12px}
.crs-bsp-track__title{font-weight:900}
.crs-bsp-track__artist{color:var(--crs-bsp-muted);font-size:13px;margin-top:2px}
.crs-bsp-audioEl{width:100%; margin-top:10px}
.crs-bsp-track__ph{margin-top:10px;color:var(--crs-bsp-muted);font-size:13px}
.crs-bsp-embed iframe{width:100%;min-height:120px;border:0;border-radius:14px}

.crs-bsp-quotes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(max-width:820px){.crs-bsp-quotes{grid-template-columns:1fr}}
.crs-bsp-quote{border:var(--crs-bsp-border);background:rgba(245,240,230,.04);border-radius:var(--crs-bsp-radius);padding:16px;margin:0}
.crs-bsp-quote blockquote{margin:0;font-size:16px;line-height:1.45}
.crs-bsp-quote figcaption{margin-top:10px;color:var(--crs-bsp-muted)}
.crs-bsp-quote figcaption strong{color:var(--crs-bsp-paper)}
.crs-bsp-quote figcaption span{margin-left:6px}

.crs-bsp-accordion{display:flex;flex-direction:column;gap:10px}
.crs-bsp-qa{border:var(--crs-bsp-border);background:rgba(245,240,230,.04);border-radius:var(--crs-bsp-radius);padding:12px}
.crs-bsp-qa summary{cursor:pointer;font-weight:900;outline:none}
.crs-bsp-qa__a{color:var(--crs-bsp-muted);margin-top:8px}

.crs-bsp-vcard{border:var(--crs-bsp-border);background:rgba(245,240,230,.04);
  border-radius:var(--crs-bsp-radius);padding:0;overflow:hidden;text-align:left;cursor:pointer;
  display:flex;flex-direction:column;min-height:240px;position:relative;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.crs-bsp-vcard__img{height:180px;background-size:cover;background-position:center;display:block;
  background:
    linear-gradient(135deg, rgba(198,161,91,.16), rgba(123,47,42,.12)),
    radial-gradient(540px 240px at 20% 0%, rgba(245,240,230,.18), transparent 55%);
}
.crs-bsp-vcard__title{padding:12px 14px;font-weight:900}
.crs-bsp-vcard__play{position:absolute;right:14px;top:14px;width:40px;height:40px;border-radius:999px;
  background:rgba(15,15,16,.58);border:1px solid rgba(245,240,230,.22);display:grid;place-items:center;
}
.crs-bsp-vcard:hover{transform:translateY(-3px); box-shadow: var(--crs-bsp-shadow); border-color: rgba(198,161,91,.32)}

.crs-bsp-modal{position:fixed;inset:0;display:none;z-index:9999}
.crs-bsp-modal[aria-hidden="false"]{display:block}
.crs-bsp-modal__overlay{position:absolute;inset:0;background:rgba(0,0,0,.68)}
.crs-bsp-modal__panel{position:relative; width:min(980px, calc(100% - 24px)); margin: 8vh auto; 
  border-radius:18px; background:rgba(15,15,16,.96); border:1px solid rgba(245,240,230,.16);
  padding:14px; box-shadow: 0 30px 90px rgba(0,0,0,.7);
}
.crs-bsp-modal__close{position:absolute;right:10px;top:10px;border-radius:999px;width:42px;height:42px;
  border:1px solid rgba(245,240,230,.16);background:rgba(245,240,230,.05);color:var(--crs-bsp-paper);cursor:pointer;
}
.crs-bsp-modal__title{margin:6px 0 12px;font-weight:900}
.crs-bsp-modalOpen{overflow:hidden}

.crs-bsp-sticky{position:sticky;bottom:12px;z-index:10;display:flex;justify-content:center;padding:0 12px}
.crs-bsp-sticky__inner{width:min(1080px, 100%); border:1px solid rgba(245,240,230,.16); border-radius:999px;
  background:rgba(15,15,16,.82); backdrop-filter: blur(8px);
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:10px 12px;
}
.crs-bsp-sticky__note{color:var(--crs-bsp-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46%}
.crs-bsp-sticky__btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:780px){
  .crs-bsp-sticky__inner{border-radius:18px;flex-direction:column;align-items:stretch}
  .crs-bsp-sticky__note{max-width:100%;white-space:normal}
  .crs-bsp-sticky__btns{justify-content:stretch}
  .crs-bsp-sticky__btns a{width:100%}
}
.crs-bsp-sticky--mobileOnly{display:none}
@media(max-width:780px){.crs-bsp-sticky--mobileOnly{display:flex}}

.crs-bsp-hero{position:relative;min-height: clamp(520px, 75vh, 840px);display:grid;place-items:center;overflow:hidden}
.crs-bsp-hero__bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(1.02) contrast(1.05)}
.crs-bsp-hero__bg--gradient{
  background:
    radial-gradient(900px 380px at 22% 10%, rgba(198,161,91,.22), transparent 50%),
    radial-gradient(720px 320px at 76% 0%, rgba(123,47,42,.20), transparent 54%),
    linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.65));
}
.crs-bsp-hero__overlay{position:absolute;inset:0;background:rgba(0,0,0, var(--crs-bsp-hero-ov, .55))}
.crs-bsp-hero__inner{position:relative; width:min(1160px, calc(100% - 44px)); padding: clamp(28px, 5vw, 64px) 0}
.crs-bsp-hero__kicker{color:rgba(245,240,230,.78);text-transform:uppercase;letter-spacing:.14em;font-size:12px}
.crs-bsp-hero__title{margin:10px 0 0;font-size:clamp(40px, 5vw, 68px);line-height:1.02}
.crs-bsp-hero__subtitle{margin-top:10px; font-weight:800; font-size:clamp(16px, 2vw, 20px); color:rgba(245,240,230,.9)}
.crs-bsp-hero__body{margin-top:12px; max-width: 70ch; color:rgba(245,240,230,.82); font-size:clamp(15px, 1.6vw, 18px)}
.crs-bsp-hero__ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}

/* Animations */
.crs-anim{opacity:0; transform: translateY(10px); transition: opacity .65s ease, transform .65s ease}
.crs-in{opacity:1; transform:none}
:root{--crs-bsp-anim-style:premium;}
:root[style*="--crs-bsp-anim-style:bold"] .crs-anim{transform: translateY(16px) scale(.985); transition: opacity .75s ease, transform .75s cubic-bezier(.2,.9,.2,1)}
