:root{--p:#3b1c62;--pd:#28113f;--t:#0097b2;--td:#006f84;--g:#ffd000;--ink:#202124;--muted:#667085;--border:#e6e2ef;--soft:#f7f7fb;--white:#fff;--shadow:0 20px 55px rgba(38,20,60,.12)}
.bm-page,.bm-page *{box-sizing:border-box}.bm-page{color:var(--ink);font:16px/1.6 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;overflow:clip}.bm-page img{display:block;max-width:100%}.bm-page h1,.bm-page h2,.bm-page h3{line-height:1.1}
.bm-shell{width:min(1180px,calc(100% - 32px));margin:auto}
.bm-hero{position:relative;padding:clamp(28px,4.5vw,50px) 0;background:radial-gradient(circle at 84% 12%,rgba(255,208,0,.25),transparent 22rem),radial-gradient(circle at 12% 85%,rgba(0,151,178,.16),transparent 25rem),linear-gradient(145deg,#fff,#fbf9ff 52%,#f1fbfd);border-bottom:1px solid var(--border)}

.bm-hero__grid{display:grid;grid-template-columns:1.08fr .72fr;gap:clamp(42px,6vw,82px);align-items:center}
.bm-language-link{display:inline-block;margin-bottom:28px;color:var(--td);font-weight:850;text-underline-offset:4px}

.bm-eyebrow,.bm-kicker{margin:0 0 10px;color:var(--td);font-size:.8rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.bm-hero h1,.bm-section h2{color:var(--p);letter-spacing:-.035em}.bm-hero h1{margin:0;font-size:clamp(2.7rem,6vw,5.3rem)}.bm-hero__text{max-width:690px;margin:25px 0 0;color:#475467;font-size:clamp(1.05rem,2vw,1.25rem)}.bm-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.bm-actions--center{justify-content:center}.bm-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border:2px solid transparent;border-radius:999px;padding:11px 21px;cursor:pointer;font-weight:850;text-decoration:none}.bm-button--primary{background:var(--p);color:#fff;box-shadow:0 12px 24px rgba(59,28,98,.2)}.bm-button--secondary{border-color:var(--p);background:#fff;color:var(--p)}.bm-button--light{background:#fff;color:var(--p)}.bm-benefits{display:flex;flex-wrap:wrap;gap:10px 22px;margin:28px 0 0;padding:0;color:var(--p);font-weight:750;list-style:none}.bm-benefits li:before{content:"✓";margin-right:8px;color:var(--t)}.bm-hero__visual{display:grid;min-height:500px;place-items:center}.bm-bookmark{position:relative;width:min(320px,78vw);min-height:505px;padding:40px 30px 30px;border:7px solid var(--p);border-radius:24px 24px 12px 12px;background:#fffdf7;box-shadow:var(--shadow);transform:rotate(3deg)}.bm-bookmark:before{content:"";position:absolute;inset:10px;border:2px solid rgba(0,151,178,.28);border-radius:15px}.bm-bookmark>*{position:relative}.bm-bookmark>strong{display:block;color:var(--p);font-size:1.65rem;text-align:center}.bm-bookmark h2{margin:18px 0;color:var(--td);font-size:1.3rem;text-align:center}.bm-bookmark ol{display:grid;gap:8px;padding-left:38px;color:var(--p);font-weight:800}.bm-bookmark>div{margin-top:24px;border-radius:12px;padding:17px;background:var(--p);color:#fff;font-size:.9rem;font-weight:750;text-align:center}.bm-section{padding:clamp(34px,4vw,50px) 0}.bm-section--soft{background:var(--soft);border-block:1px solid var(--border)}.bm-heading{max-width:760px;margin:0 auto 24px;text-align:center}.bm-heading--left{margin-left:0;text-align:left}.bm-heading h2,.bm-feature-row h2,.bm-app-card h2,.bm-educator-card h2,.bm-more-card h2{margin:0;font-size:clamp(2rem,4vw,3.25rem)}.bm-heading p,.bm-feature-row p,.bm-app-card p,.bm-educator-card p,.bm-more-card p{color:var(--muted);font-size:1.05rem}.bm-pill{display:inline-flex;margin-bottom:14px;border-radius:999px;padding:6px 13px;background:rgba(255,208,0,.26);color:var(--p);font-size:.78rem;font-weight:900;text-transform:uppercase}.bm-puzzle{display:grid;grid-template-columns:1fr minmax(250px,.34fr);gap:28px;align-items:start}.bm-puzzle__play,.bm-word-bank{border:1px solid var(--border);border-radius:26px;background:#fff;box-shadow:var(--shadow)}.bm-puzzle__play{padding:clamp(15px,3vw,28px)}.bm-grid{--size:13;display:grid;grid-template-columns:repeat(var(--size),1fr);width:min(100%,710px);margin:auto;border:3px solid var(--p);border-radius:17px;overflow:hidden;background:var(--p);gap:1px;touch-action:none;user-select:none}.bm-cell{display:grid;aspect-ratio:1;place-items:center;border:0;background:#fff;color:var(--ink);cursor:pointer;font-size:clamp(.72rem,2.3vw,1.5rem);font-weight:900}.bm-cell.is-selecting{background:rgba(255,208,0,.62)}.bm-cell.is-found{background:var(--t);color:#fff}.bm-cell.is-solution{background:rgba(59,28,98,.82);color:#fff}.bm-status{min-height:28px;margin:18px 0 0;color:var(--p);font-weight:850;text-align:center}.bm-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:12px}.bm-controls button,.bm-audio button{border:1px solid var(--border);border-radius:999px;padding:8px 14px;background:#fff;color:var(--p);cursor:pointer;font-weight:800}.bm-word-bank{position:sticky;top:24px;padding:24px}.bm-word-bank__top{display:flex;justify-content:space-between;gap:15px}.bm-word-bank h3{margin:0;color:var(--p)}.bm-word-bank ul{display:grid;gap:9px;margin:20px 0 0;padding:0;list-style:none}.bm-word-bank li{display:flex;align-items:center;gap:10px;border-radius:10px;padding:8px 10px;color:var(--p);font-weight:850}.bm-word-bank li span{width:13px;height:13px;border:2px solid var(--t);border-radius:50%}.bm-word-bank li.is-found{background:#e9f8fa;color:var(--td);text-decoration:line-through}.bm-word-bank li.is-found span{background:var(--t);box-shadow:inset 0 0 0 3px #fff}.bm-vocabulary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.bm-word-card{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;border:1px solid var(--border);border-radius:18px;padding:17px;background:#fff}.bm-number{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--t);color:#fff;font-weight:950}.bm-terms{display:flex;flex-wrap:wrap;gap:5px 8px;color:var(--p)}.bm-audio{display:flex;gap:5px}.bm-audio button{border-radius:9px;padding:7px 8px;background:var(--soft);font-size:.78rem}.bm-speech-message{color:#9b2c2c;font-weight:750}.bm-feature-row,.bm-app-card,.bm-educator-card{display:grid;align-items:center;gap:28px}.bm-feature-row{grid-template-columns:1fr auto}.bm-app-card{grid-template-columns:auto 1fr auto;border:1px solid var(--border);border-radius:28px;padding:20px 24px;background:#fff;box-shadow:var(--shadow)}
.bm-app-mark {
  display: grid;
  width: 96px;
  height: 96px;
  place-items: center;
  border-radius: 25px;
  overflow: hidden;
}

.bm-app-mark img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}


/* Tighter Palabritaz spacing */
.bm-section--soft:has(.bm-app-card) {
  padding-top: 18px;
  padding-bottom: 18px;
}

/* Tighter books section */
.bm-section[aria-labelledby="books-title"] {
  padding-top: 20px;
  padding-bottom: 24px;
}

.bm-section[aria-labelledby="books-title"] .bm-heading {
  margin-bottom: 18px;
}

.bm-section[aria-labelledby="books-title"] .bm-actions {
  margin-top: 14px;
}


.bm-book-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.bm-book-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 14px 34px rgba(59,28,98,.08)}


.bm-cover{display:grid;min-height:190px;place-items:center;background:linear-gradient(135deg,rgba(59,28,98,.92),rgba(0,151,178,.86))}.bm-cover img{max-height:215px;width:auto;margin:14px auto;filter:drop-shadow(0 10px 14px rgba(0,0,0,.22))}.bm-cover--placeholder{color:#fff;font-size:2rem;font-weight:950}.bm-book-card__body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:18px}.bm-book-card h3{margin:2px 0 10px;color:var(--p)}.bm-book-card p{color:var(--muted)}.bm-book-card a,.bm-more-card a{margin-top:auto;color:var(--td);font-weight:900;text-decoration:none}.bm-section--educator{padding:16px 0 24px}.bm-educator-card{grid-template-columns:1fr auto;border-radius:28px;padding:24px 30px;background:linear-gradient(135deg,var(--pd),var(--p));color:#fff}.bm-educator-card h2,.bm-educator-card .bm-kicker{color:#fff}.bm-educator-card p{color:rgba(255,255,255,.82)}.bm-more-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.bm-more-card{border:1px solid var(--border);border-radius:26px;padding:clamp(24px,5vw,42px)}.bm-more-card--accent{background:var(--soft)}.bm-disclaimer{border-top:1px solid var(--border);padding:24px 0;background:#fbfbfc;color:var(--muted);font-size:.86rem}.bm-disclaimer p{margin:0}.bm-button:focus-visible,.bm-controls button:focus-visible,.bm-audio button:focus-visible,.bm-cell:focus-visible{outline:4px solid rgba(255,208,0,.75);outline-offset:3px}
@media(max-width:960px){.bm-hero__grid,.bm-puzzle,.bm-feature-row,.bm-app-card,.bm-educator-card{grid-template-columns:1fr}.bm-word-bank{position:static}.bm-vocabulary,.bm-book-grid{grid-template-columns:repeat(2,1fr)}.bm-app-card,.bm-educator-card{text-align:center}

.bm-app-mark{margin:auto}.bm-app-card .bm-button,.bm-educator-card .bm-button{justify-self:center}}

@media(max-width:640px){
    .bm-shell{width:min(100% - 20px,1180px)}.bm-hero h1{font-size:clamp(2.35rem,13vw,3.7rem)}.bm-hero__visual{min-height:470px}.bm-vocabulary,.bm-book-grid,.bm-more-grid{grid-template-columns:1fr}.bm-word-card{grid-template-columns:auto 1fr}.bm-audio{grid-column:1/-1;justify-content:flex-end}.bm-button{width:100%}.bm-grid{border-width:2px}.bm-cell{font-size:clamp(.62rem,5vw,1.05rem)}}

@media(max-width:960px){
  .bm-section--soft:has(.bm-app-card){
    padding-top:34px;
    padding-bottom:34px;
  }

  .bm-section[aria-labelledby="books-title"]{
    padding-top:40px;
    padding-bottom:46px;
  }
}

@media(max-width:640px){
  .bm-hero{
    padding:34px 0 42px;
  }

  .bm-section{
    padding:42px 0;
  }

  .bm-section--soft:has(.bm-app-card),
  .bm-section[aria-labelledby="books-title"]{
    padding-top:34px;
    padding-bottom:38px;
  }

  .bm-section[aria-labelledby="books-title"] .bm-heading {
  margin-bottom: 18px;
}

  .bm-app-card{
    padding:24px 20px;
  }

  .bm-educator-card{
    padding:30px 22px;
  }
}


@media(max-width:960px){
  .bm-section--soft:has(.bm-app-card){
    padding-top:16px;
    padding-bottom:16px;
  }

  .bm-section[aria-labelledby="books-title"]{
    padding-top:20px;
    padding-bottom:24px;
  }

  .bm-section--educator{
    padding-top:14px;
    padding-bottom:22px;
  }
}

@media(max-width:640px){
  .bm-section{
    padding:30px 0;
  }

  .bm-section--soft:has(.bm-app-card){
    padding-top:14px;
    padding-bottom:14px;
  }

  .bm-section[aria-labelledby="books-title"]{
    padding-top:18px;
    padding-bottom:22px;
  }

  .bm-section[aria-labelledby="books-title"] .bm-heading{
    margin-bottom:16px;
  }

  .bm-app-card{
    padding:18px 16px;
  }

  .bm-section--educator{
    padding-top:12px;
    padding-bottom:18px;
  }

  .bm-educator-card{
    padding:22px 18px;
  }
}

@media print {
  @page {
    size: letter portrait;
    margin: 0.4in;
  }

  html,
  body {
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  body {
    color: #000 !important;
  }

  /* Hide common site chrome without hiding the puzzle heading. */
  body > header,
  body > footer,
  nav,
  .site-header,
  .site-footer,
  .navbar,
  .footer,
  .cookie-banner,
  .announcement-bar {
    display: none !important;
  }

  .bm-page {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }

  /* Print only the puzzle section. This prevents blank extra pages. */
  .bm-page > * {
    display: none !important;
  }

  .bm-page > #free-puzzle {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  #free-puzzle .bm-shell {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #free-puzzle .bm-heading {
    display: block !important;
    max-width: none !important;
    margin: 0 0 0.16in !important;
    text-align: center !important;
  }

  #free-puzzle .bm-heading h2 {
    margin: 0 0 0.05in !important;
    color: #000 !important;
    font-size: 22pt !important;
    letter-spacing: 0 !important;
  }

  #free-puzzle .bm-heading > p:not(.bm-puzzle-novelty) {
    margin: 0 auto !important;
    color: #000 !important;
    font-size: 9.5pt !important;
    line-height: 1.3 !important;
  }

  #free-puzzle .bm-pill,
  #free-puzzle .bm-puzzle-novelty,
  #free-puzzle .bm-controls,
  #free-puzzle .bm-status {
    display: none !important;
  }

  #free-puzzle .bm-puzzle {
    display: grid !important;
    grid-template-columns: minmax(0, 5.72in) 1.78in !important;
    gap: 0.16in !important;
    align-items: start !important;
    width: 100% !important;
    margin: 0 !important;
  }

  #free-puzzle .bm-puzzle__play,
  #free-puzzle .bm-word-bank {
    display: block !important;
    margin: 0 !important;
    border: 1px solid #777 !important;
    border-radius: 0.08in !important;
    background: #fff !important;
    box-shadow: none !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  #free-puzzle .bm-puzzle__play {
    padding: 0.12in !important;
  }

  #free-puzzle .bm-word-bank {
    position: static !important;
    top: auto !important;
    padding: 0.14in !important;
  }

  #free-puzzle .bm-grid {
    display: grid !important;
    grid-template-columns: repeat(var(--size), minmax(0, 1fr)) !important;
    width: 100% !important;
    max-width: 5.46in !important;
    margin: 0 auto !important;
    border: 1.5px solid #000 !important;
    border-radius: 0 !important;
    gap: 0 !important;
    overflow: visible !important;
    background: #000 !important;
    box-shadow: none !important;
  }

  #free-puzzle .bm-cell {
    display: grid !important;
    aspect-ratio: 1 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    border: 0.35px solid #aaa !important;
    border-radius: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background: #fff !important;
    color: #000 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11pt !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    print-color-adjust: exact !important;
    -webkit-print-color-adjust: exact !important;
  }

  /* Always print a clean, unsolved activity. */
  #free-puzzle .bm-cell.is-selecting,
  #free-puzzle .bm-cell.is-found,
  #free-puzzle .bm-cell.is-solution {
    background: #fff !important;
    color: #000 !important;
  }

  #free-puzzle .bm-word-bank__top {
    display: block !important;
    margin: 0 0 0.08in !important;
  }

  #free-puzzle .bm-word-bank__top h3 {
    margin: 0 !important;
    color: #000 !important;
    font-size: 12pt !important;
  }

  #free-puzzle .bm-word-bank__top > span {
    display: none !important;
  }

  #free-puzzle .bm-word-bank ul {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  #free-puzzle .bm-word-bank li,
  #free-puzzle .bm-word-bank li.is-found {
    display: flex !important;
    align-items: center !important;
    gap: 0.06in !important;
    margin: 0 !important;
    padding: 0.035in 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #000 !important;
    font-size: 9.5pt !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
  }

  #free-puzzle .bm-word-bank li span,
  #free-puzzle .bm-word-bank li.is-found span {
    flex: 0 0 auto !important;
    width: 0.11in !important;
    height: 0.11in !important;
    border: 1px solid #000 !important;
    border-radius: 50% !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  a[href]::after {
    content: none !important;
  }
}
.bm-hero__bookmark-image {
  display: block;
  width: min(320px, 78vw);
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: rotate(2deg);
}

.bm-puzzle-novelty {
  display: inline-flex;
  margin: 8px auto 0;
  border: 1px solid rgba(0, 151, 178, 0.24);
  border-radius: 999px;
  padding: 7px 13px;
  background: rgba(0, 151, 178, 0.08);
  color: var(--td, #006f84);
  font-size: 0.9rem;
  font-weight: 800;
}

.bm-controls [data-puzzle-new] {
  border-color: var(--t, #0097b2);
  background: rgba(0, 151, 178, 0.08);
  color: var(--td, #006f84);
}

.bm-controls [data-puzzle-new]:hover {
  background: var(--t, #0097b2);
  color: #fff;
}