/* Glam Arcade: scoped to this page; self-contained vector covers. */
body.playground{background:#f5faff;color:#103B63;font-family:Montserrat,sans-serif}
.playground .destination-return{background:white;padding:14px 5%}
.playground .destination-return a{color:#103B63}
.playground .arcade-hero{background:#168FEA;position:relative;overflow:hidden;color:white;border-bottom:7px solid #dbe7f0}
.arcade-hero:before{content:"";position:absolute;width:580px;height:580px;border:1px solid #ffffff38;border-radius:50%;right:-100px;top:-220px;box-shadow:0 0 0 65px #ffffff0a,0 0 0 130px #ffffff0a;pointer-events:none}
.arcade-hero-inner{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:32px;padding:42px 28px 46px;position:relative}
.arcade-kicker{font-size:11px;font-weight:800;letter-spacing:2px;margin:0 0 14px}
.playground .arcade-hero h1{font-family:Montserrat,sans-serif;color:white;background:none;-webkit-text-fill-color:white;font-size:clamp(42px,5vw,68px);font-weight:800;line-height:1.05;letter-spacing:-2.5px;margin:0 0 18px}
.arcade-hero h1 em{font-style:normal;text-decoration:underline;text-decoration-color:#ffffff65;text-underline-offset:8px;text-decoration-thickness:3px}
.arcade-hero p:not(.arcade-kicker){font-size:16px;line-height:1.65;max-width:520px;color:white;margin:0 0 23px}
.hero-controller{transform:rotate(3deg);text-align:center}.hero-controller svg{width:100%;filter:drop-shadow(0 20px 15px #103b6333)}.hero-controller span{font-size:10px;letter-spacing:3px;font-weight:700}
.playground .arcade-button{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #103B63;border-radius:10px;background:#103B63;color:white;padding:13px 18px;text-decoration:none;font-size:13px;font-weight:700;line-height:1.4;transition:background .2s,transform .2s;box-shadow:0 4px 0 #071f36}
.playground .arcade-button:hover{background:#0d4f83;transform:translateY(-2px)}
.playground .arcade-button-white{display:inline-flex;color:#103B63;background:white;border-color:white;box-shadow:0 4px 0 #c5deef}.playground .arcade-button-white:hover{background:#eaf7ff}
.arcade-button span[aria-hidden]{font-size:21px;line-height:1}
.arcade-library{max-width:1200px;margin:auto;padding:36px 28px 64px;scroll-margin-top:90px}
.library-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.library-heading .arcade-kicker{color:#103B63;margin-bottom:7px}
.playground .library-heading h2{font-size:clamp(23px,2.4vw,31px);line-height:1.2;margin:0;font-weight:800;color:#103B63}.library-heading>p{font-size:13px;white-space:nowrap;margin:0 0 3px;color:#365b7b}
.arcade-filters{display:flex;gap:9px;flex-wrap:wrap}.arcade-filters button{font:600 13px Montserrat,sans-serif;border:1px solid #b3ccdf;background:white;color:#103B63;border-radius:30px;padding:11px 20px;cursor:pointer;min-height:44px}.arcade-filters button[aria-pressed=true]{background:#103B63;border-color:#103B63;color:white}.arcade-filters button:hover{border-color:#168FEA}.arcade-result{font-size:12px;color:#47657c;margin:13px 0 20px}
.arcade-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.arcade-card{background:white;border:1px solid #cedfeb;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 7px 0 #e1edf5;transition:transform .22s,box-shadow .22s}.arcade-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px #103b631a}.arcade-card[hidden]{display:none}
.arcade-cover{position:relative;overflow:hidden;background:linear-gradient(125deg,#168FEA,#65b9f6);aspect-ratio:2/1}.arcade-cover svg{display:block;width:100%;height:100%}.cover-label{position:absolute;top:13px;left:14px;font-size:9px;letter-spacing:1.3px;font-weight:800;text-transform:uppercase;color:#103B63;background:#fffffff0;border-radius:5px;padding:6px 8px;z-index:1}.cover-number{position:absolute;bottom:9px;right:13px;color:white;font-weight:800;font-size:11px;letter-spacing:2px}
.cover-piano{background:linear-gradient(145deg,#c6e7ff,#168FEA)}.cover-bible{background:linear-gradient(120deg,#168FEA,#a1d9ff)}.cover-spanish{background:linear-gradient(145deg,#70c6ff,#168FEA)}.cover-hollow{background:linear-gradient(140deg,#168FEA,#7fcbff)}.cover-run{background:linear-gradient(145deg,#a1ddff,#168FEA)}.cover-travel{background:linear-gradient(145deg,#168FEA,#a7dfff)}
.arcade-card-body{padding:21px;display:flex;flex-direction:column;flex:1}.card-category{font-size:9px;letter-spacing:1.8px;font-weight:800;margin:0 0 8px;color:#315a7e}.playground .arcade-card h3{font-size:19px;line-height:1.3;margin:0 0 10px;color:#103B63;font-weight:800}.card-description{font-size:13px;line-height:1.65;margin:0 0 17px;color:#385b78}.card-access{font-size:10px;font-weight:600;color:#365b7b;margin:auto 0 12px;padding-top:5px}
.playground .glam-cta{background:#e7f5ff;border-top:1px solid #cadfeb}.playground .glam-cta h2{color:#103B63}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.playground a:focus-visible,.playground button:focus-visible{outline:3px solid #103B63;outline-offset:5px}.arcade-hero a:focus-visible{outline-color:white}
@media(max-width:900px){.arcade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.arcade-hero-inner{gap:12px}.library-heading{align-items:start;flex-direction:column;gap:10px}}
@media(max-width:600px){.arcade-hero-inner{grid-template-columns:1fr;padding:30px 20px}.hero-controller{display:none}.playground .arcade-hero h1{font-size:46px}.arcade-library{padding:28px 18px 45px}.arcade-grid{grid-template-columns:1fr;gap:22px}.arcade-filters{gap:7px}.arcade-filters button{padding:10px 13px;font-size:11px}.arcade-cover{aspect-ratio:2.15/1}.arcade-card-body{padding:20px}}
@media(prefers-reduced-motion:reduce){.arcade-card,.playground .arcade-button{transition:none}.arcade-card:hover,.playground .arcade-button:hover{transform:none}}

/* Override the shared seasonal page background on the arcade only. */
body.playground.harvest-royale.destination-page{background:#f5faff}
