.oreilly-news-detail{--nd-ink:var(--oreilly-color-ink,#11152f);--nd-purple:var(--oreilly-color-primary,#2a1676);--nd-violet:var(--oreilly-color-violet,#6f55cf);--nd-line:rgba(42,22,118,.14);color:#565d6c}.oreilly-news-detail__article{padding:clamp(76px,8vw,126px) 0}.oreilly-news-detail__container{width:min(100% - 48px,1000px)}.oreilly-news-detail__back,.oreilly-news-detail__footer a{display:inline-flex;align-items:center;gap:12px;color:var(--nd-purple);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.oreilly-news-detail__header{max-width:880px;margin:42px 0 48px}.oreilly-news-detail__meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;margin-bottom:20px;color:#777e8d;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.oreilly-news-detail__meta span:first-child{color:var(--nd-violet)}.oreilly-news-detail__header h1{margin:0;color:var(--nd-ink);font-size:clamp(3.5rem,6vw,6.8rem);font-weight:400;letter-spacing:-.05em;line-height:.96;text-wrap:balance}.oreilly-news-detail__lead{max-width:760px;margin:28px 0 0;color:#626979;font-size:clamp(17px,1.45vw,20px);line-height:1.7}.oreilly-news-detail__featured{height:clamp(380px,48vw,620px);margin:0 0 clamp(50px,6vw,82px);overflow:hidden;border-radius:20px 90px 20px 20px;background:#eef0f7}.oreilly-news-detail__featured img{display:block;width:100%;height:100%;object-fit:cover}.oreilly-news-detail__body p{margin:0 0 24px}.oreilly-news-detail__archive-note{padding:28px 30px;border-left:3px solid var(--nd-violet);background:#f7f6fb;color:#606777;line-height:1.75}.oreilly-news-detail__footer{margin-top:58px;padding-top:28px;border-top:1px solid var(--nd-line)}
@media(max-width:767px){.oreilly-news-detail__article{padding:68px 0}.oreilly-news-detail__container{width:calc(100% - 32px)}.oreilly-news-detail__header{margin:32px 0 38px}.oreilly-news-detail__header h1{font-size:clamp(3rem,13vw,4.6rem)}.oreilly-news-detail__featured{height:auto;aspect-ratio:3/2;border-radius:16px 62px 16px 16px}.oreilly-news-detail__body{font-size:16px;line-height:1.78}.oreilly-news-detail__archive-note{padding:23px 21px}.oreilly-news-detail__footer{margin-top:44px}}
.oreilly-news-detail__body h2{margin:0 0 24px;color:var(--nd-ink);font-family:var(--font-secondary);font-size:clamp(2.5rem,4vw,4rem);font-weight:400;line-height:1.05}.oreilly-news-detail__body a{display:inline-flex;align-items:center;gap:10px;color:var(--nd-purple);font-weight:700;text-decoration:underline;text-underline-offset:5px}.oreilly-news-detail__body a:hover{color:var(--nd-violet)}
.oreilly-news-detail__legacy-copy img{display:block;width:100%;height:auto;margin:38px 0;border-radius:12px}

.oreilly-news-detail__body .wp-block-gallery {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 38px 0;
}
.oreilly-news-detail__body .wp-block-gallery figure { margin: 0; }
.oreilly-news-detail__body .wp-block-gallery img {
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 12px;
}
.oreilly-news-detail__body .wp-block-embed { margin: 0 0 32px; }
.oreilly-news-detail__body .wp-block-embed iframe {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: 12px;
}
@media (max-width: 767px) {
    .oreilly-news-detail__body .wp-block-gallery { grid-template-columns: 1fr; }
}
.oreilly-news-detail__container{width:min(calc(100% - 48px),1200px)}
.oreilly-news-detail__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);grid-template-areas:"content toc";justify-content:space-between;align-items:start;gap:clamp(32px,4vw,56px)}
.oreilly-news-detail__content{grid-area:content;min-width:0}
.oreilly-news-detail__toc{grid-area:toc;position:sticky;top:110px;margin-top:42px;padding:24px 0 24px 24px;border-left:1px solid var(--nd-line)}
.oreilly-news-detail__toc[hidden]{display:none}
.oreilly-news-detail__toc-title{margin:0 0 18px;color:var(--nd-ink);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.oreilly-news-detail__toc ol{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.oreilly-news-detail__toc li{margin:0;padding:0}
.oreilly-news-detail__toc .oreilly-news-detail__toc-item--nested{padding-left:14px}
.oreilly-news-detail__toc a{color:#565d6c;font-size:14px;line-height:1.5;text-decoration:none}
.oreilly-news-detail__toc a:hover,.oreilly-news-detail__toc a:focus-visible{color:var(--nd-purple);text-decoration:underline;text-underline-offset:4px}
.oreilly-news-detail__body h2,.oreilly-news-detail__body h4{scroll-margin-top:110px}
@media(max-width:991px){.oreilly-news-detail__layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"toc" "content";gap:24px}.oreilly-news-detail__content{grid-area:content}.oreilly-news-detail__toc{position:sticky;top:80px;z-index:2;grid-area:toc;margin-top:32px;padding:20px 0 0;border-top:1px solid var(--nd-line);border-left:0;background:#fff}}
@media(max-width:767px){.oreilly-news-detail__container{width:calc(100% - 32px)}.oreilly-news-detail__toc{position:static;top:auto;z-index:auto;margin-top:18px}}

body.oreilly-public{overflow-x:clip!important;overflow-y:visible!important}
.oreilly-news-detail__body h2{margin:0 0 24px;color:var(--nd-ink);font-family:var(--font-secondary);font-size:clamp(2.5rem,4vw,4rem);font-weight:400;line-height:1.05}
.oreilly-news-detail__body h4{margin:0 0 18px;color:var(--nd-ink);font-family:var(--font-secondary);font-size:clamp(1.5rem,2.4vw,2.4rem);font-weight:400;line-height:1.15}
.oreilly-news-detail__header{margin-top:0}
.oreilly-news-detail__meta{margin-bottom:0}
.oreilly-news-detail__meta i{margin-right:6px}

.oreilly-news-comments{margin-top:64px;scroll-margin-top:110px}
.oreilly-news-comments h2{color:var(--nd-ink);font-family:var(--font-secondary);font-size:clamp(2.5rem,4vw,4rem);font-weight:400}
.oreilly-news-comments h3{margin:42px 0 12px;color:var(--nd-ink);font-size:24px}
.oreilly-news-comments__item{padding:20px 0;border-bottom:1px solid var(--nd-line);overflow-wrap:anywhere}
.oreilly-news-comments__item p{margin:0}
.oreilly-news-comments__byline{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:8px!important;color:var(--nd-ink)}
.oreilly-news-comments__byline time{color:#777e8d;font-size:13px}
.oreilly-news-comments__form{display:grid;gap:20px;margin-top:24px}
.oreilly-news-comments__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.oreilly-news-comments__form label{display:block;margin-bottom:8px;color:var(--nd-ink);font-weight:700}
.oreilly-news-comments__form input,.oreilly-news-comments__form textarea{width:100%;padding:12px 14px;border:1px solid #a5a9b2;border-radius:4px;background:#fff;color:var(--nd-ink)}
.oreilly-news-comments__form input:focus-visible,.oreilly-news-comments__form textarea:focus-visible,.oreilly-news-comments__form button:focus-visible{outline:3px solid var(--nd-violet);outline-offset:2px}
.oreilly-news-comments__form textarea{resize:vertical}
.oreilly-news-comments__form button{justify-self:start;padding:14px 24px;border:0;border-radius:4px;background:var(--nd-purple);color:#fff;font-weight:700}
.oreilly-news-comments__error{margin:6px 0 0;color:#a21c26}
.oreilly-news-comments__success{color:#176638}
@media(max-width:767px){.oreilly-news-comments__fields{grid-template-columns:1fr}}

.oreilly-news-share{margin-top:48px;padding:24px 0;border-top:1px solid var(--nd-line);border-bottom:1px solid var(--nd-line)}
.oreilly-news-share__label{display:block;margin-bottom:14px;color:var(--nd-ink);font-weight:700}
.oreilly-news-share__actions{display:flex;flex-wrap:wrap;gap:10px}
.oreilly-news-share__actions a,.oreilly-news-share__actions button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--nd-line);border-radius:50%;background:#fff;color:var(--nd-purple);font-size:18px}
.oreilly-news-share__actions button[hidden]{display:none}
.oreilly-news-share__actions a:hover,.oreilly-news-share__actions button:hover{background:var(--nd-purple);color:#fff}
.oreilly-news-share__actions a:focus-visible,.oreilly-news-share__actions button:focus-visible{outline:3px solid var(--nd-violet);outline-offset:2px}
.oreilly-news-share__status{margin:10px 0 0;font-size:14px}
.oreilly-news-share__status:empty{display:none}
