/* Levi Beers — RyanCV, using Keystone's blue, cyan, navy and warm white. */
:root{--lb-blue:#127EBF;--lb-cyan:#2AC2EE;--lb-navy:#1B2956;--lb-surface:#1A2F5A;--lb-white:#FAF9F7;--lb-ink:#1B2956;--lb-muted:#53627a;--lb-link:#127EBF;--lb-line:rgba(27,41,86,.16);--lb-panel:rgba(18,126,191,.055)}
.body-style-dark{--lb-ink:#FAF9F7;--lb-muted:#bed0e2;--lb-link:#2AC2EE;--lb-line:rgba(42,194,238,.21);--lb-panel:rgba(18,126,191,.105)}
.body-style-dark .card-inner,.body-style-dark .content-sidebar{background:#1A2F5A}
.body-style-dark .card-inner:before,.body-style-dark .card-inner:after{background-color:#1A2F5A}
.body-style-dark .custom-footer,.body-style-dark .header:before,.body-style-dark .header:after{background-color:#1B2956}
.body-style-dark .header .top-menu,.body-style-dark .header .menu-btn,.body-style-dark .header .mode-switch-btn{background:#1B2956}
.body-style-dark .styled-gradient .service-item,.body-style-dark .styled-gradient .resume-item,.body-style-dark .styled-gradient .box-item{background:linear-gradient(145deg,rgba(18,126,191,.14),rgba(27,41,86,.6));border-color:var(--lb-line)}
.body-style-dark .card-started:before{background:linear-gradient(135deg,#127EBF,#1B2956)}
.card-started .profile.full-style .slide .slide-img{object-position:50% 35%}
.card-started .profile.full-style .slide:before{background:linear-gradient(180deg,rgba(27,41,86,0),rgba(27,41,86,.94))!important;height:42%}
.card-started .profile.full-style .profile-content{padding-bottom:116px}
.card-started .profile.full-style .title{font-weight:700;letter-spacing:-.7px}
.card-started .profile.full-style .subtitle{color:#2AC2EE}
.card-started .profile.full-style .lnks{background:rgba(27,41,86,.62);backdrop-filter:blur(12px)}
.card-started .profile.full-style .lnks .lnk:hover{color:#2AC2EE}
.card-started .profile .social a{min-width:36px;min-height:38px;display:inline-flex;align-items:center;justify-content:center}
.lb-intro h1,.lb-contact-intro h2{font-size:clamp(32px,3.05vw,44px);font-weight:700;line-height:1.15;letter-spacing:-1px;margin:15px 0 24px;color:var(--lb-ink)}
.lb-intro h1:after{content:'';display:block;width:64px;height:3px;margin-top:25px;background:linear-gradient(90deg,#127EBF,#2AC2EE)}
.lb-eyebrow{display:block;color:var(--lb-link)!important;font-size:11px!important;font-weight:700;letter-spacing:1.65px;line-height:1.7;text-transform:uppercase;margin:0 0 12px!important}
.content .lb-lead{font-size:18px;line-height:1.65;color:var(--lb-ink)}
.lb-meta-line{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;padding:20px 0 4px;border-top:1px solid var(--lb-line);margin-top:25px;color:var(--lb-muted)}
.lb-meta-line a,.lb-text-link{color:var(--lb-link);font-size:13px;font-weight:700;text-decoration:none!important}
.lb-meta-line a:hover,.lb-text-link:hover{text-decoration:underline!important;text-underline-offset:5px}
.lb-principles{display:grid;gap:0}
.lb-principles>div{display:flex;align-items:flex-start;gap:20px;padding:23px 0;border-bottom:1px solid var(--lb-line)}
.lb-principles>div:first-child{padding-top:0}
.lb-principles>div:last-child{border-bottom:0;padding-bottom:0}
.lb-step{color:var(--lb-link);font-size:14px;line-height:29px;flex:0 0 28px}
.content .lb-principles h3{font-size:20px;line-height:1.4;margin:0 0 6px;color:var(--lb-ink)}
.content .lb-principles p{margin:0;color:var(--lb-muted);font-size:16px;line-height:1.6}
.lb-keystone{padding:27px;border:1px solid var(--lb-line);border-radius:16px;background:var(--lb-panel);position:relative;overflow:hidden}
.lb-keystone:before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(#2AC2EE,#127EBF)}
.content .lb-keystone h3{margin:0 0 14px;font-size:25px;color:var(--lb-ink)}
.lb-partner{padding-top:16px;border-top:1px solid var(--lb-line);font-size:14px!important;color:var(--lb-muted)}
.lb-experience .resume-item .name{line-height:1.45}
.lb-experience .resume-item .company{line-height:1.5}
.lb-experience .resume-item p{font-size:15px;line-height:1.65}
.lb-capabilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lb-capabilities>div{padding:24px 20px;background:var(--lb-panel);border:1px solid var(--lb-line);border-radius:14px}
.content .lb-capabilities h3{font-size:19px;line-height:1.4;margin:0 0 16px;color:var(--lb-ink)}
.content .lb-capabilities p{font-size:14px;line-height:1.9;margin:0;color:var(--lb-muted)}
.lb-capabilities .lb-eyebrow{font-size:10px!important;letter-spacing:1px}
.works .box-item .image{border-radius:12px 12px 0 0;overflow:hidden}
.works .box-item .image img{aspect-ratio:3/2;object-fit:cover;width:100%}
.works .box-item .desc .name{line-height:1.35}
.works .lb-project-stage{display:block;color:var(--lb-link);font-size:11px;font-weight:700;letter-spacing:.75px;text-transform:uppercase;margin:13px 0 10px}
.works .lb-project-excerpt{font-size:14px;line-height:1.6;margin:0 0 10px;color:var(--lb-muted)}
.works .lb-project-more{font-size:12px;color:var(--lb-link);font-weight:700;margin-top:10px;display:inline-block}
.lb-writing-card{display:block;padding:27px 28px;color:var(--lb-ink)!important;border:1px solid var(--lb-line);border-radius:16px;background:var(--lb-panel);text-decoration:none!important;transition:border-color .2s,transform .2s,background-color .2s}
.lb-writing-card:hover{transform:translateY(-3px);border-color:var(--lb-link);background:rgba(18,126,191,.15)}
.content .lb-writing-card h3{font-size:24px;line-height:1.4;letter-spacing:-.2px;margin:0 0 14px;color:var(--lb-ink)}
.content .lb-writing-card p{font-size:16px;line-height:1.65;color:var(--lb-muted);margin-bottom:20px}
.lb-contact-intro h2{font-size:40px;margin:18px 0 24px}
.lb-contact-links{display:grid;gap:14px}
.lb-contact-links>a{display:block;position:relative;padding:24px 55px 24px 24px;border:1px solid var(--lb-line);border-radius:14px;background:var(--lb-panel);text-decoration:none!important;color:var(--lb-ink);transition:border-color .2s}
.lb-contact-links>a:hover{border-color:var(--lb-link)}
.lb-contact-links .lb-eyebrow{margin-bottom:7px!important}
.lb-contact-links strong{font-size:19px;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.lb-link-arrow{position:absolute;right:24px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--lb-link)}
.lb-location{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--lb-muted);margin:28px 0 0}
.lb-location-dot{width:8px;height:8px;background:var(--lb-link);border-radius:50%;box-shadow:0 0 0 5px var(--lb-panel)}
.lb-caption{color:var(--lb-muted);font-size:13px!important;line-height:1.65!important;margin-top:24px!important;padding-top:16px;border-top:1px solid var(--lb-line)}
.lb-case h3{font-size:22px;margin:28px 0 12px}
.lb-case p{line-height:1.75}
.lb-case-source{display:inline-block;margin-top:16px;color:var(--lb-link)!important;text-decoration:underline;text-underline-offset:5px}
.footer .copy{font-size:12px;color:var(--lb-muted)}
.lb-skip-link{position:fixed;left:16px;top:-100px;z-index:100000;padding:14px 20px;background:#FAF9F7;color:#1B2956;border-radius:8px}
.lb-skip-link:focus{top:16px}
.lb-media-context .content>.title{font-size:28px;line-height:1.35}
.lb-media-context .lb-media-statement p{font-size:17px;line-height:1.8;margin-bottom:22px;color:var(--lb-ink)}
.lb-media-reference{border-top:1px solid var(--lb-line);padding-top:24px;margin-top:30px}
.lb-media-reference a{color:var(--lb-link);text-decoration:underline;text-underline-offset:4px}
.lb-media-date{font-size:13px!important;line-height:1.6;color:var(--lb-muted)}
.lb-media-note{border-top:1px solid var(--lb-line);padding-top:18px;margin-top:0!important}
.lb-media-note a{font-size:14px;color:var(--lb-link);text-decoration:underline;text-underline-offset:4px}
.custom-footer .lb-footer-context{white-space:nowrap}
/* Featured public-policy writing and the preserved July 2026 report. */
.lb-writing-feature{position:relative;overflow:hidden;padding:30px;background:linear-gradient(145deg,rgba(18,126,191,.2),var(--lb-panel));border-color:rgba(42,194,238,.5)}
.lb-writing-feature:before{content:'';position:absolute;top:0;left:0;bottom:0;width:4px;background:linear-gradient(#2AC2EE,#127EBF)}
.lb-feature-mark{display:block;font-size:clamp(44px,5vw,66px);font-weight:700;line-height:1.1;letter-spacing:-2px;color:var(--lb-link);margin:18px 0 20px}
.content .lb-writing-feature h3{font-size:28px;line-height:1.25;max-width:440px;margin-bottom:18px}
.lb-feature-meta{display:block;font-size:12px;line-height:1.7;color:var(--lb-muted);margin:0 0 17px;padding-top:17px;border-top:1px solid var(--lb-line)}
.lb-policy-hero .content>.title{font-size:30px;line-height:1.3;letter-spacing:-.4px}
.lb-policy-page .lb-lead{font-size:18px;line-height:1.75}
.lb-publication-meta{font-size:12px!important;line-height:1.8!important;color:var(--lb-muted);margin:20px 0 0!important}
.lb-report-panel{padding:28px;border:1px solid var(--lb-line);border-radius:16px;background:var(--lb-panel)}
.content .lb-report-panel h3{font-size:24px;line-height:1.35;margin:4px 0 18px;color:var(--lb-ink)}
.lb-report-panel>p{font-size:15px;line-height:1.7}
.lb-report-facts{color:var(--lb-muted);font-size:12px!important;letter-spacing:.3px;margin:22px 0 18px!important}
.lb-report-facts span{padding:0 6px}
.lb-report-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.lb-report-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 16px;border:1px solid var(--lb-line);border-radius:9px;font-size:13px;line-height:1.45;font-weight:700;text-decoration:none!important;color:var(--lb-ink)!important}
.lb-report-action:hover{border-color:var(--lb-link)}
.lb-report-action.lb-report-primary{background:#2AC2EE;color:#1B2956!important;border-color:#2AC2EE}
.lb-report-action.lb-report-primary:hover{background:#DDF5FF;border-color:#DDF5FF}
.lb-record-link{font-size:14px;font-weight:700;line-height:1.7;color:var(--lb-link);text-decoration:underline!important;text-underline-offset:4px;overflow-wrap:anywhere}
.lb-record-id{font-size:11px!important;line-height:1.6!important;color:var(--lb-muted);overflow-wrap:anywhere;margin:9px 0 0!important}
.lb-policy-prose p{font-size:17px;line-height:1.85;margin:0 0 24px;color:var(--lb-ink)}
.lb-policy-prose a,.lb-policy-references a{color:var(--lb-link);text-decoration:underline;text-underline-offset:4px}
.lb-policy-prose blockquote.lb-policy-quote{padding:24px 26px;margin:26px 0 0;background:var(--lb-panel);border:0;border-left:3px solid var(--lb-link);border-radius:0 12px 12px 0;font-style:normal}
.lb-policy-quote:before,.lb-policy-quote:after{display:none!important}
.lb-policy-prose .lb-policy-quote p{font-size:21px;line-height:1.6;font-weight:400;margin:0;color:var(--lb-ink)}
.lb-policy-references p{font-size:14px;line-height:1.85;color:var(--lb-muted)}
.lb-policy-references a{display:inline-block;padding:4px 0}
.lb-policy-about p{font-size:16px;line-height:1.75}
.lb-family-hero .content>.title{font-size:30px;line-height:1.3;letter-spacing:-.4px}
.lb-family-opening{margin-top:28px}
.lb-family-recovery{padding:25px 26px;border:1px solid var(--lb-line);border-left:3px solid var(--lb-link);border-radius:0 13px 13px 0;background:var(--lb-panel);margin:26px 0}
.lb-family-recovery p:last-child{font-size:18px;line-height:1.75;margin-bottom:0;color:var(--lb-ink)}
.lb-family-note{padding-top:20px;border-top:1px solid var(--lb-line);margin-top:26px}
.lb-family-note p{font-size:14px;line-height:1.8;color:var(--lb-muted);margin:0}
.lb-family-resources{padding:25px;border:1px solid var(--lb-line);border-radius:14px;background:var(--lb-panel);margin:28px 0}
.lb-family-resources>p{font-size:15px;line-height:1.75}
.lb-family-resources .lb-report-actions{margin:20px 0 0}
.lb-family-card{border-top:3px solid var(--lb-link)}
.lb-family-about-link{margin:14px 0 0!important}
@media(max-width:680px){.lb-family-hero .content>.title{font-size:26px}.lb-family-recovery,.lb-family-resources{padding:22px 20px}.lb-family-recovery p:last-child{font-size:17px}}
@media(max-width:680px){.lb-writing-feature,.lb-report-panel{padding:25px 21px}.content .lb-writing-feature h3{font-size:25px}.lb-policy-hero .content>.title{font-size:26px}.lb-policy-prose p{font-size:16px}.lb-policy-prose blockquote.lb-policy-quote{padding:20px}.lb-policy-prose .lb-policy-quote p{font-size:19px}.lb-report-actions{flex-direction:column}.lb-report-action{width:100%;box-sizing:border-box}}
@media(max-width:680px){.lb-media-context .content>.title{font-size:24px}.lb-media-context .lb-media-statement p{font-size:16px}}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--lb-link);outline-offset:5px}
@media(max-width:1120px){.lb-intro h1{font-size:40px}.card-started .profile.full-style .slide .slide-img{object-position:50% 30%}}
@media(max-width:680px){.lb-intro h1,.lb-contact-intro h2{font-size:34px;letter-spacing:-.65px}.content .lb-lead{font-size:17px}.lb-capabilities{grid-template-columns:1fr}.lb-writing-card,.lb-keystone{padding:24px 21px}.content .lb-writing-card h3{font-size:22px}.lb-contact-links>a{padding:22px 45px 22px 20px}.lb-contact-links strong{font-size:17px}.lb-link-arrow{right:18px}.lb-meta-line{align-items:flex-start;flex-direction:column}.card-started .profile.full-style .slide:before{height:44%}.lb-principles>div{gap:13px}.lb-eyebrow{font-size:10px!important;letter-spacing:1.2px}.lb-experience .col{width:100%}}
@media(prefers-reduced-motion:reduce){.lb-writing-card{transition:none}.lb-writing-card:hover{transform:none}#abstract-bg-js canvas{display:none}html{scroll-behavior:auto!important}}
