/* Public landing and remembered library share the site's brand tokens. */
.resource-library{padding:64px 0 95px;min-height:80vh;scroll-margin-top:120px}
.resource-library [hidden]{display:none!important}
.library-kicker{display:flex;justify-content:center;align-items:center;gap:10px;font-size:10px;letter-spacing:.15em;color:#b8b8c0}
.library-kicker>span{width:6px;height:6px;border-radius:50%;background:var(--orange)}
.library-hero{text-align:center;max-width:960px;margin:0 auto 58px;position:relative}
.library-hero::before{content:'';position:absolute;z-index:-1;inset:-70px -80px 20%;background:radial-gradient(ellipse at 50% 30%,#ff60000c,transparent 65%);pointer-events:none}
.library-hero h1{font-size:clamp(48px,5.9vw,78px);line-height:1.04;letter-spacing:-.06em;margin:23px 0}
.library-hero h1 em,.library-welcome h1 em{color:var(--orange);font-style:normal}
.library-lede{font-size:18px;line-height:1.7;color:#bebec6;max-width:700px;margin:auto}
.library-hero-actions{display:flex;justify-content:center;align-items:center;gap:27px;margin:27px 0 36px}
.library-hero-actions .button{font-size:14px;padding:14px 23px;gap:25px}
.library-preview-link{font-size:13px;color:#dddde2;display:inline-flex;gap:13px;align-items:center}
.library-preview-link span{color:var(--orange)}
.library-proof{display:grid;grid-template-columns:repeat(3,1fr);max-width:720px;margin:0 auto;border-block:1px solid #ffffff16;padding:24px 0}
.library-proof>span{font-size:12px;line-height:1.5;color:#a3a3af}
.library-proof>span+span{border-left:1px solid #ffffff16}
.library-proof strong{display:block;font-size:36px;font-weight:600;letter-spacing:-.04em;color:#f4f4f5;margin-bottom:2px;line-height:1.25}
.library-landing{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.85fr);gap:58px;align-items:start}
.library-preview{scroll-margin-top:125px;min-width:0}
.library-preview-heading h2{font-size:33px;letter-spacing:-.04em;margin:12px 0}
.library-preview-heading>p{font-size:13px;line-height:1.8;max-width:540px;margin-bottom:24px}
.library-preview-list{list-style:none;margin:0;padding:0;border-top:1px solid #ffffff16}
.library-preview-list li{display:flex;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #ffffff12;scroll-margin-top:125px}
.preview-number{font:11px monospace;color:var(--orange);flex:none}
.library-preview-list h3{font-size:16px;line-height:1.35;font-weight:500;letter-spacing:-.02em}
.preview-format{display:block;font-size:10px;color:#9494a1;margin-top:6px}
.preview-included{margin-left:auto;font-size:12px;color:var(--orange);width:24px;height:24px;border:1px solid #ff600033;border-radius:50%;display:grid;place-items:center;flex:none}
.library-creator{font-size:11px;line-height:1.8;color:#9494a1;margin-top:22px;max-width:470px}
.library-creator a{color:#d0d0d8;text-decoration:underline;text-underline-offset:3px}
.library-signup{position:sticky;top:115px;scroll-margin-top:120px;background:linear-gradient(145deg,#ff600008,transparent 60%),var(--panel);border:1px solid #ffffff20;border-top:2px solid var(--orange);border-radius:13px;padding:27px;box-shadow:0 22px 60px #0003}
.library-form-step{font-size:9px;letter-spacing:.12em;color:var(--orange)}
.library-signup h2{font-size:33px;letter-spacing:-.04em;margin:12px 0}
.library-signup>p{font-size:13px;line-height:1.7}
.library-signup form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;margin-top:5px;min-width:0}
.library-signup,.library-signup .resource-field{min-width:0}
.library-signup .resource-field:nth-child(-n+2){grid-column:1/-1}
.library-signup .resource-field{margin-top:15px}
.library-signup .resource-field label{font-size:12px}
.library-signup .resource-field input{padding:11px;font-size:16px;background:#0c0c0e}
.library-signup .resource-submit{grid-column:1/-1;margin-top:23px;border-radius:7px;padding:13px 18px;box-shadow:none}
.library-signup .resource-consent{grid-column:1/-1;margin-top:15px;font-size:11px;line-height:1.7}
.library-signup .library-form-footnote{font-size:10px;color:#9595a0;margin-top:16px;border-top:1px solid #ffffff10;padding-top:14px}
.library-faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;border-top:1px solid #ffffff16;margin-top:64px;padding-top:43px}
.library-faq h2{font-size:31px;letter-spacing:-.04em;margin-top:14px}
.library-faq details{border-bottom:1px solid #ffffff16}
.library-faq summary{font-size:14px;line-height:1.5;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:17px 0}
.library-faq summary::after{content:'+';font-size:19px;color:var(--orange);flex:none}
.library-faq details[open] summary::after{content:'−'}
.library-faq details p{font-size:13px;line-height:1.85;padding:0 20px 20px 0}
.library-mobile-cta{display:none}
.library-welcome{text-align:center;margin:9px auto 48px;max-width:1000px}
.library-welcome h1{font-size:clamp(38px,4.6vw,62px);line-height:1.12;letter-spacing:-.055em;margin:23px 0 16px;text-wrap:balance}
.library-welcome h1 em{white-space:nowrap}
.library-welcome p{font-size:16px;max-width:650px;margin:auto;line-height:1.8}
.library-welcome .resource-forget{margin:17px auto 0;font-size:11px}
.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #ffffff18;padding-top:24px;margin-bottom:25px}
.library-toolbar>p{font-size:12px;color:#aaaab5}.library-toolbar strong{color:#eeeef1}
.library-filters{display:flex;gap:6px;flex-wrap:wrap}
.library-filters button{background:transparent;border:1px solid #ffffff20;border-radius:6px;font-size:11px;color:#aaaab5;padding:7px 13px}
.library-filters button[aria-pressed=true]{background:#ff600012;color:var(--orange);border-color:#ff600066}
.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.library-card{display:flex;flex-direction:column;min-width:0;background:var(--panel);border:1px solid #ffffff15;border-radius:11px;overflow:hidden;transition:border-color .2s}
.library-card:hover{border-color:#ff600055}
.library-card-cover{position:relative;height:285px;overflow:hidden;border-bottom:1px solid #ffffff12;background:radial-gradient(ellipse at 50% 95%,#ff600018,transparent 75%),#111113;display:flex;justify-content:center;align-items:center}
.library-card-cover::before{content:'';position:absolute;inset:25px;border:1px solid #ffffff05;border-radius:50%;pointer-events:none}
.library-card-cover img{position:relative;display:block;max-width:100%;height:auto;object-fit:contain}
.library-card-cover.is-publication img{width:auto;height:249px;max-width:80%;border:1px solid #ffffff20;border-radius:2px;box-shadow:7px 12px 0 #0003,0 14px 25px #0009;transform:rotate(-7deg);transition:transform .3s}
.library-card:nth-child(even) .is-publication img{transform:rotate(6deg)}
.library-card:hover .is-publication img{transform:rotate(0) translateY(-3px)}
.library-card-cover.is-assessment img{width:91%;max-height:240px;box-shadow:0 10px 30px #0005;border:1px solid #ffffff15;border-radius:8px;transform:perspective(800px) rotateY(7deg)}
.library-card-number{position:absolute;right:13px;bottom:12px;color:#92929f;font:10px monospace;letter-spacing:.1em}
.library-card-body{display:flex;flex-direction:column;align-items:start;flex:1;padding:23px}
.library-card-type{font-size:9px;letter-spacing:.12em;color:var(--orange);text-transform:uppercase;margin-bottom:12px}
.library-card h2{font-size:22px;line-height:1.25;letter-spacing:-.035em}
.library-card-body>p{font-size:13px;line-height:1.75;margin:14px 0 25px}
.library-card-button{display:inline-flex;gap:14px;align-items:center;padding:11px 15px;background:var(--orange);color:#0c0c0e;font-size:12px;font-weight:600;border:1px solid var(--orange);border-radius:6px;margin-top:auto}
.library-card-button:hover{background:#ff7624}.library-card-button>span{font-size:19px;line-height:1}
.library-card-location{font-size:10px;color:#9494a1;margin-top:12px}
.library-browser-note{font-size:11px;margin-top:32px;color:#9494a1}.library-noscript{padding:20px;border:1px solid #ff600050;margin-top:25px}
@media(max-width:1000px){.library-landing{gap:30px;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr)}.library-signup{padding:23px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-faq{gap:30px}.library-preview-list h3{font-size:15px}}
@media(max-width:700px){.resource-library{padding-top:40px;padding-bottom:95px}.library-hero{margin-bottom:38px}.library-hero::before{inset:-30px 0 20%}.library-kicker{font-size:8px;letter-spacing:.11em}.library-hero h1{font-size:clamp(37px,9.6vw,54px);margin:22px 0;line-height:1.08}.library-lede{font-size:15px;line-height:1.8}.desktop-break{display:none}.library-hero-actions{gap:18px;margin:24px 0 30px;flex-wrap:wrap}.library-hero-actions .button{font-size:13px;padding:13px 17px;gap:14px}.library-preview-link{font-size:11px;gap:8px}.library-proof{padding:20px 0}.library-proof strong{font-size:28px;letter-spacing:-.05em}.library-proof>span{font-size:10px;padding:0 5px}.library-landing{grid-template-columns:minmax(0,1fr);gap:35px}.library-preview-heading h2{font-size:30px}.library-preview-heading>p{font-size:12px}.library-preview-list li{gap:13px;padding:16px 0}.library-preview-list h3{font-size:15px}.preview-format{font-size:9px}.library-signup{position:static;padding:24px}.library-faq{grid-template-columns:1fr;gap:20px;margin-top:40px;padding-top:30px}.library-faq h2{font-size:29px}.library-faq summary{font-size:13px}.library-welcome{margin-bottom:32px}.library-welcome h1{font-size:40px}.library-welcome p{font-size:14px;max-width:320px}.library-grid{grid-template-columns:1fr}.library-card h2{font-size:24px}.library-card-cover{height:290px}.library-card-cover.is-publication img{height:255px}.library-mobile-cta{display:flex;position:fixed;z-index:28;bottom:0;left:0;right:0;align-items:center;justify-content:space-between;gap:15px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #ffffff20;background:#151517f2;backdrop-filter:blur(15px)}.library-mobile-cta>span{font-size:10px;line-height:1.5;color:#a9a9af}.library-mobile-cta strong{font-weight:500;color:#e0e0e5}.library-mobile-cta .button{font-size:12px;padding:11px 15px;gap:12px}.library-signup .resource-field label>span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.library-card,.library-card-cover.is-publication img{transition:none}.library-card:hover .is-publication img{transform:rotate(0)}}
.library-preview-list h3>a:hover{color:var(--orange)}
.library-preview-list h3>a:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
