/* BooksFirst v10.70 — 30-year identity integration. Original supplied artwork is never redrawn. */

/* Brand stays recognizable at mobile size while the actual anniversary emblem is present. */
.bf6-header-main .bf70-brand{display:flex!important;align-items:center;justify-content:flex-start;gap:6px!important;min-width:0}
.bf6-header-main .bf70-brand img.bf70-wordmark{width:clamp(105px,11vw,145px)!important;height:auto!important;max-height:54px!important;object-fit:contain}
.bf6-header-main .bf70-brand img.bf70-anniversary-seal{display:block!important;width:48px!important;height:48px!important;min-width:48px!important;max-height:48px!important;object-fit:contain!important;background:#fff;border:1px solid #eef0f3;border-radius:8px;padding:2px;box-shadow:0 1px 4px #0c15300d}
@media(min-width:1200px){.bf6-header-main{grid-template-columns:minmax(198px,218px) minmax(240px,1fr) 182px auto!important}}
@media(min-width:901px) and (max-width:1199px){.bf6-header-main .bf70-brand img.bf70-wordmark{width:100px!important}.bf6-header-main .bf70-brand img.bf70-anniversary-seal{width:36px!important;height:36px!important;min-width:36px!important;max-height:36px!important}}
@media(max-width:900px){
 .bf6-header-main .bf70-brand{justify-content:center!important;gap:5px!important}
 .bf6-header-main .bf70-brand img.bf70-wordmark{width:112px!important;max-height:46px!important}
 .bf6-header-main .bf70-brand img.bf70-anniversary-seal{width:43px!important;height:43px!important;min-width:43px!important;max-height:43px!important;border-radius:7px}
}
@media(max-width:360px){.bf6-header-main .bf70-brand img.bf70-wordmark{width:97px!important}.bf6-header-main .bf70-brand img.bf70-anniversary-seal{width:38px!important;height:38px!important;min-width:38px!important;max-height:38px!important}}

/* Bounded 30-years opening ident. White background matches image, no washed-out video. */
.bf64-loader-overlay.bf70-anniversary-loader,.bf66-loader-overlay.bf70-anniversary-loader{
 display:grid!important;place-items:center!important;background:radial-gradient(circle at 50% 43%,#fff 8%,#fff9f8 56%,#f3edf0 100%)!important;
 padding:clamp(16px,3vw,30px);color:#0b1c42!important;isolation:isolate
}
.bf70-anniversary-loader:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(120deg,transparent 42%,#c9002412 100%)}
.bf70-loader-content{width:min(440px,100%);display:flex;flex-direction:column;align-items:center;text-align:center;gap:13px}
.bf70-loader-eyebrow{font-weight:900;letter-spacing:.18em;font-size:clamp(10px,1.1vw,12px);color:#b0052e}
.bf70-loader-content>img{display:block;width:min(360px,70vw,55vh);height:auto;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:20px;box-shadow:0 14px 36px #07173018;animation:bf70-enter .7s cubic-bezier(.2,.8,.2,1) both}
.bf70-loader-content p{margin:0;font-size:clamp(12px,2vw,15px);color:#14254a;font-weight:850;letter-spacing:.01em}
.bf70-loader-progress{width:min(140px,48vw);height:3px;border-radius:999px;background:#e4e5eb;overflow:hidden}
.bf70-loader-progress span{display:block;width:100%;height:100%;background:#da0631;transform:scaleX(0);transform-origin:left;animation:bf70-progress 1.8s linear forwards}
.bf70-anniversary-loader .bf70-loader-skip{color:#192442!important;background:#fff!important;border:1px solid #d3d8e2!important;padding:10px 18px!important;font-size:12px!important;border-radius:999px!important;min-height:42px!important;text-shadow:none!important}
@keyframes bf70-enter{from{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes bf70-progress{to{transform:scaleX(1)}}
@media(max-width:760px){.bf70-loader-content{gap:10px}.bf70-loader-content>img{width:min(310px,75vw,48vh)}.bf70-loader-content p{font-size:12px}.bf70-anniversary-loader .bf70-loader-skip{bottom:max(26px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.bf70-loader-content>img,.bf70-loader-progress span{animation:none!important}.bf64-loader-overlay.bf70-anniversary-loader{display:none!important}}
.bf70-anniversary-loader[hidden]{display:none!important}

/* Compact drawer badge, without obscuring the close button or menu links. */
.mobile-drawer .bf7-drawer-top{position:relative}
.mobile-drawer .bf7-drawer-top img.bf70-drawer-seal{position:absolute;right:64px;bottom:18px;width:66px!important;height:66px!important;border-radius:9px;object-fit:contain;background:white;padding:2px;border:1px solid #ffffff50}
.mobile-drawer .bf7-drawer-top p,.mobile-drawer .bf7-drawer-top span{max-width:calc(100% - 115px)}
@media(max-width:390px){.mobile-drawer .bf7-drawer-top img.bf70-drawer-seal{right:18px;bottom:15px;width:60px!important;height:60px!important}.mobile-drawer .bf7-drawer-top p,.mobile-drawer .bf7-drawer-top span{max-width:calc(100% - 90px)}}

/* Full anniversary emblem in editorial sections where it is large enough to read. */
.bf66-30years .bf70-30years-artmark{margin:0;padding:9px;background:#fff;border-radius:15px;align-self:center;width:min(205px,100%);box-shadow:0 12px 32px #0002}
.bf70-30years-artmark img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
@media(max-width:980px){.bf66-30years .bf70-30years-artmark{width:min(138px,100%)}}
@media(max-width:760px){.bf67-campaign .bf66-30years{display:grid!important;grid-template-columns:1fr!important;gap:0!important;padding:20px 18px 24px!important;text-align:center!important;border-radius:18px!important;max-height:none!important}.bf66-30years .bf70-30years-artmark{width:min(210px,65vw);margin:0 auto 14px;padding:8px}.bf66-30years>div:nth-child(2){max-width:420px;margin:0 auto}.bf66-30years h2{font-size:29px!important}.bf66-30years p{font-size:12px!important}.bf66-30years .bf66-30years-art{display:none!important}}

.bf70-milestone{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(215px,.72fr);align-items:center;gap:clamp(16px,4vw,46px);margin-top:27px;margin-bottom:30px;padding:clamp(22px,4vw,47px);border:1px solid #e8e8ed;border-radius:22px;background:linear-gradient(120deg,#fff 0%,#fff6f7 100%)}
.bf70-milestone .bf70-milestone-copy{min-width:0}
.bf70-milestone .bf70-milestone-copy h2{font-size:clamp(26px,3vw,44px);line-height:1.12;letter-spacing:-.04em;margin:12px 0;color:#0b1c42}
.bf70-milestone .bf70-milestone-copy p{font-size:14px;line-height:1.75;color:#4d596a;max-width:650px}
.bf70-milestone .bf70-milestone-copy a{display:inline-flex;margin-top:15px;padding:12px 17px;border-radius:9px;background:#d00032;color:#fff;text-decoration:none;font-size:13px;font-weight:850}
.bf70-milestone>img{display:block;width:min(315px,100%);justify-self:center;aspect-ratio:1;object-fit:contain;background:#fff;border-radius:15px;box-shadow:0 9px 25px #18214312}
@media(max-width:700px){.bf70-milestone{grid-template-columns:1fr;gap:20px;padding:22px 18px;margin-top:19px;border-radius:16px}.bf70-milestone>img{width:min(255px,75vw);grid-row:1}.bf70-milestone .bf70-milestone-copy h2{font-size:27px}.bf70-milestone .bf70-milestone-copy p{font-size:12px}.bf70-milestone .bf70-milestone-copy a{min-height:44px;align-items:center}}

/* Footer retains the established white wordmark and adds the celebration badge. */
.footer-about .bf70-footer-anniversary{display:inline-flex;margin-top:14px;padding:5px;background:#fff;border-radius:10px;box-shadow:0 6px 22px #0002}
.footer-about .bf70-footer-anniversary img{display:block!important;width:102px!important;height:102px!important;max-height:102px!important;object-fit:contain;border-radius:5px}

/* v10.72 loader lifecycle: avoid legacy 3.4s CSS failsafe dismissing the new ident */
.bf64-loader-overlay.bf70-anniversary-loader{animation:none!important}
.bf70-anniversary-loader .bf70-loader-progress span{animation-duration:3.8s!important}
@media(max-width:760px){.bf70-anniversary-loader .bf70-loader-content>img{width:min(330px,78vw,47vh)}.bf70-anniversary-loader .bf70-loader-content{padding-bottom:36px}}
