/* UCI article template v1: one continuous editorial path for technical and application articles. */
.article-page--narrative{padding-bottom:0;background:#f5f4ef;color:#17221e}
.feature-article{font-size:17px;line-height:1.76}
.reading-progress{position:fixed;z-index:110;top:var(--uci-header);right:0;left:0;height:3px;pointer-events:none}
.reading-progress span{display:block;width:0;height:100%;background:#bda975;transform-origin:left center}
.reading-column{width:min(calc(100% - 48px),780px);margin-inline:auto}
.feature-header{padding:38px 0 34px;border-bottom:1px solid #d7d4ca}
.feature-header .reading-column{width:min(calc(100% - 48px),1040px)}
.feature-breadcrumbs{display:flex;flex-wrap:wrap;gap:7px 10px;margin-bottom:28px;color:#747a77;font-size:13px;line-height:1.4}
.eyebrow{margin:0 0 10px;color:#1c6a5c;font-size:13px;font-weight:800;letter-spacing:.1em}
.feature-header>.reading-column>.eyebrow{display:flex;align-items:center;gap:15px;margin-bottom:17px}
.feature-header>.reading-column>.eyebrow::after{content:"";width:74px;height:1px;background:#bda975}
.feature-heading-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:42px 68px;align-items:end}
.feature-header h1{margin:0;max-width:920px;color:#14201c;font-size:clamp(40px,4.8vw,56px);font-weight:690;line-height:1.15;letter-spacing:-.045em}
.feature-header h1 span{display:block;margin-top:10px;font-size:.68em;line-height:1.32;letter-spacing:-.035em}
.feature-intro{padding-left:24px;border-left:1px solid #bda975}
.standfirst{max-width:880px;margin:0 0 17px;color:#4c5652;font-size:18px;line-height:1.72}
.feature-meta{display:flex;flex-wrap:wrap;gap:7px 22px;color:#747a77;font-size:13px}
.lead-photo,.evidence-photo{width:min(calc(100% - 48px),1040px);margin-inline:auto}
.lead-photo{margin-top:0;margin-bottom:0}
.lead-photo img,.evidence-photo img{display:block;width:100%;height:auto;object-fit:cover}
.lead-photo img{aspect-ratio:2.1/1;object-position:center 58%}
.uci-page-pdl-ii-semiconductor-particle-inspection .lead-photo img{aspect-ratio:auto;object-fit:contain}
.evidence-photo img{aspect-ratio:16/9;object-position:center}
.lead-photo figcaption,.evidence-photo figcaption{width:100%;margin:0 auto;padding:9px 0 0;color:#717673;font-size:13px;line-height:1.55}
.lead-photo figcaption strong,.evidence-photo figcaption strong{margin-right:11px;color:#1c6255}
.article-layout{display:grid;grid-template-columns:170px minmax(0,1006px);gap:56px;width:min(calc(100% - 48px),1232px);margin:0 auto}
.article-main{min-width:0}
.article-main>.reading-column{width:min(100%,780px);margin-inline:auto}
.article-rail{align-self:start;position:sticky;top:96px;margin-top:40px;padding-top:13px;border-top:2px solid #193f35}
.article-rail>p{margin:0 0 16px;color:#193f35;font-size:16px;font-weight:850;letter-spacing:.06em}
.article-rail nav{display:grid;gap:7px}
.article-rail a{display:grid;grid-template-columns:28px 1fr;color:#424d48;font-size:16px;font-weight:560;line-height:1.55}
.article-rail a span{color:#af9964;font-weight:800}
.article-rail a:hover,.article-rail a.is-active{color:#173d34;font-weight:750}
.article-rail a.is-active{transform:translateX(4px)}
.article-rail--note strong{display:block;color:#47524e;font-size:14px;font-weight:600;line-height:1.72}
.mobile-article-nav{display:none}
.narrative-flow{padding-top:38px}
.narrative-flow>p,.chapter>p{margin:0 0 16px;color:#404a46}
.narrative-flow>p.opening{color:#202d28;font-size:20px;font-weight:580;line-height:1.68}
.narrative-flow>p.opening::first-letter{float:left;margin:10px 12px 0 0;color:#174b41;font-size:64px;font-weight:720;line-height:.78}
.chapter{padding-top:42px}
.chapter-heading{display:grid;grid-template-columns:39px 1fr;gap:14px;align-items:start;margin-bottom:18px}
.chapter-heading>span{padding-top:8px;color:#1c6a5c;font-size:12px;font-weight:850;letter-spacing:.08em}
.chapter-heading h2,.field-case h2,.equipment-panel h2,.faq h2{margin:0;color:#15211d;font-size:30px;font-weight:700;line-height:1.36;letter-spacing:-.03em}
.chapter blockquote{width:calc(100% + 36px);margin:29px 0 28px -36px;padding:22px 28px 22px 32px;border-left:4px solid #bda975;background:#ebe9e1;color:#19483e;font-size:22px;font-weight:620;line-height:1.5;letter-spacing:-.015em}
.diagnostic-types,.evidence-questions{margin:22px 0 0;border-top:1px solid #c8c6bb}
.diagnostic-types>div,.evidence-questions>div{display:grid;grid-template-columns:140px 1fr;gap:22px;padding:13px 0;border-bottom:1px solid #d4d2c8}
.diagnostic-types dt,.evidence-questions dt{color:#174b41;font-size:16px;font-weight:780;line-height:1.65}
.diagnostic-types dd,.evidence-questions dd{margin:0;color:#4a5550;font-size:15px;line-height:1.76}
.evidence-photo{margin-top:50px}
.evidence-photo--inline{width:100%;margin:34px 0 0}
.evidence-photo--inline figcaption{width:100%}
.evidence-photo--editorial img{aspect-ratio:3/2;object-position:center}
.evidence-photo--product img{aspect-ratio:auto;object-fit:contain}
.continuation{padding-top:22px}
.field-case{width:100%;margin:44px auto 0;border-top:2px solid #bda975;background:#e8e6de}
.field-case-inner{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);width:100%}
.case-story{padding:38px 42px 36px}
.case-story .eyebrow{margin-bottom:13px}
.field-case h2{font-size:29px}
.case-story .case-lede{margin:20px 0 16px;color:#20302a;font-size:19px;font-weight:620;line-height:1.65}
.case-story>p:not(.eyebrow):not(.case-lede){margin:0 0 14px;color:#4a5550;font-size:16px;line-height:1.76}
.case-editor-note{padding:38px 34px;background:#102b24;color:#edf1ed}
.case-editor-note .eyebrow{color:#d2bd86}
.case-editor-note h3{margin:0 0 20px;color:#fff;font-size:22px;line-height:1.48}
.case-editor-note dl{margin:0;border-top:1px solid rgba(255,255,255,.18)}
.case-editor-note dl>div{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.case-editor-note dt{color:#fff;font-size:15px;font-weight:750}
.case-editor-note dd{margin:3px 0 0;color:rgba(255,255,255,.7);font-size:14px;line-height:1.65}
.case-outcome{margin:20px 0 0;color:rgba(255,255,255,.72);font-size:14px;line-height:1.7}
.comparison-section{padding-top:42px}
.comparison-section>p{margin:0 0 20px;color:#404a46}
.feature-article [id]{scroll-margin-top:104px}
.article-page--narrative .comparison-scroll{margin-top:0;overflow-x:auto;border:0;background:#fff}
.article-page--narrative .comparison-scroll table{width:100%;min-width:680px;border-collapse:collapse}
.article-page--narrative .comparison-scroll th,.article-page--narrative .comparison-scroll td{padding:12px 15px;border:0;border-bottom:1px solid #deddd6;border-left:1px solid #deddd6;text-align:left;vertical-align:top;font-size:15px;line-height:1.55}
.article-page--narrative .comparison-scroll th:first-child,.article-page--narrative .comparison-scroll td:first-child{border-left:0}
.article-page--narrative .comparison-scroll thead th{background:#17352d;color:#f3f0e8}
.article-page--narrative .comparison-scroll tbody th{width:126px;color:#174b41}
.article-page--narrative .comparison-scroll tbody td{color:#404a46}
.scene-title{margin:30px 0 0;color:#17231f;font-size:21px;line-height:1.5}
.scene-rows{margin-top:22px;border-top:1px solid #c8c6bb}
.scene-rows>div{display:grid;grid-template-columns:238px 1fr;gap:26px;padding:17px 0;border-bottom:1px solid #c8c6bb}
.scene-rows h3{margin:0;color:#17231f;font-size:18px;line-height:1.55}
.scene-rows p{margin:0;color:#4b5551;font-size:15px;line-height:1.75}
.limitations{padding-bottom:8px}
.equipment-panel{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,58px);align-items:center;width:min(calc(100% - 48px),1040px);margin:48px auto 0;padding:34px 36px;background:#e4e2da}
.equipment-panel figure{margin:0}
.equipment-panel img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.equipment-panel--field img{aspect-ratio:3/2;object-position:center}
.equipment-panel--product img{aspect-ratio:auto;max-height:460px;object-fit:contain;background:#fff}
.equipment-panel h2{font-size:29px}
.equipment-panel>div>p:not(.eyebrow){margin:18px 0 0;color:#4b5551;font-size:16px;line-height:1.78}
.panel-actions{display:flex;align-items:center;gap:18px;margin-top:27px}
.panel-actions>a:not(.button){color:#175b4f;font-size:14px;font-weight:750}
.closing-column{padding-top:46px;padding-bottom:56px}
.editorial-note{margin-bottom:42px;padding:18px 20px;border-left:3px solid #bda975;background:#ebe9e1}
.editorial-note strong{display:block;margin-bottom:5px;color:#193f35;font-size:14px}
.editorial-note p{margin:0;color:#59625e;font-size:14px;line-height:1.7}
.faq h2{margin-bottom:19px;font-size:29px}
.faq details{border-top:1px solid #c8c6bb}
.faq details:last-child{border-bottom:1px solid #c8c6bb}
.faq summary{padding:14px 0;color:#17231f;font-size:17px;font-weight:700;cursor:pointer}
.faq details p{margin:0 0 19px;color:#4b5551;font-size:16px}
.related{margin-top:42px}
.related a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid #c8c6bb}
.related a:last-child{border-bottom:1px solid #c8c6bb}
.related span{font-weight:700}.related small{color:#1c6a5c;font-size:13px;font-weight:750}
@media(max-width:1099.98px){
  .article-layout{display:block;width:auto}
  .article-main>.reading-column{width:min(calc(100% - 36px),780px);margin-inline:auto}
  .article-rail{display:none}
  .mobile-article-nav{display:block;width:min(calc(100% - 48px),780px);margin:22px auto 0;border-top:1px solid #c8c6bb;border-bottom:1px solid #c8c6bb}
  .mobile-article-nav summary{padding:13px 0;color:#193f35;font-size:15px;font-weight:780;cursor:pointer}
  .mobile-article-nav nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;padding:0 0 13px}
  .mobile-article-nav a{display:grid;grid-template-columns:27px 1fr;padding:7px 0;color:#46514c;font-size:15px}
  .mobile-article-nav a span{color:#9c8550;font-weight:800}
}
@media(min-width:1024px) and (max-width:1099.98px){
  .article-layout{width:min(calc(100% - 48px),1040px);margin-inline:auto}
  .article-main>.reading-column{width:min(100%,850px);margin-right:auto;margin-left:max(0px,calc((100% - 820px)/2 - 30px))}
}
@media(min-width:1024px){
  .closing-column{width:min(calc(100% - 48px),1040px)}
}
/* Compact desktop: keeps the full magazine rail at common 125%/150% display scaling. */
@media(min-width:1100px) and (max-width:1599.98px){
  .feature-article{font-size:clamp(15px,1.05vw,16.5px);line-height:1.72}
  .feature-header{padding:28px 0 25px}
  .feature-header .reading-column,.lead-photo,.evidence-photo,.equipment-panel,.closing-column{width:min(calc(100% - 48px),clamp(720px,60vw,960px))}
  .feature-breadcrumbs{margin-bottom:20px;font-size:12px}
  .feature-header>.reading-column>.eyebrow{margin-bottom:13px}
  .feature-heading-grid{grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);gap:30px;align-items:end}
  .feature-header h1{max-width:720px;font-size:clamp(35px,3vw,48px);line-height:1.16}
  .feature-header h1 span{margin-top:7px}
  .feature-intro{padding-left:18px}
  .standfirst{margin-bottom:13px;font-size:clamp(15px,1.05vw,17px);line-height:1.66}
  .feature-meta{gap:5px 15px;font-size:12px}
  .lead-photo figcaption,.evidence-photo figcaption{font-size:12px}
  .article-layout{display:grid;grid-template-columns:100px minmax(0,900px);gap:24px;width:min(calc(100% - 48px),1024px);margin-inline:auto}
  .article-main>.reading-column{width:clamp(560px,42vw,650px);margin-right:auto;margin-left:40px}
  .article-rail{display:block;top:88px;margin-top:30px;padding-top:10px}
  .article-rail>p{margin-bottom:12px;font-size:13px}
  .article-rail nav{gap:5px}
  .article-rail a{grid-template-columns:22px 1fr;font-size:13px;line-height:1.5}
  .mobile-article-nav{display:none}
  .narrative-flow{padding-top:30px}
  .narrative-flow>p,.chapter>p{margin-bottom:13px}
  .narrative-flow>p.opening{font-size:17px;line-height:1.65}
  .narrative-flow>p.opening::first-letter{margin-top:8px;font-size:52px}
  .chapter{padding-top:34px}
  .chapter-heading{grid-template-columns:32px 1fr;gap:11px;margin-bottom:15px}
  .chapter-heading>span{padding-top:6px;font-size:11px}
  .chapter-heading h2,.field-case h2,.equipment-panel h2,.faq h2{font-size:25px;line-height:1.38}
  .chapter blockquote{width:calc(100% + 26px);margin:23px 0 22px -26px;padding:17px 22px 17px 25px;font-size:18px}
  .diagnostic-types,.evidence-questions{margin-top:17px}
  .diagnostic-types>div,.evidence-questions>div{grid-template-columns:112px 1fr;gap:17px;padding:10px 0}
  .diagnostic-types dt,.evidence-questions dt{font-size:14px}
  .diagnostic-types dd,.evidence-questions dd{font-size:14px;line-height:1.68}
  .evidence-photo{margin-top:38px}
  .evidence-photo--inline{width:clamp(650px,50vw,760px);margin-left:-45px}
  .continuation{padding-top:17px}
  .field-case,.comparison-section{width:clamp(720px,54vw,820px);margin-left:0}
  .field-case{margin-top:36px}
  .field-case-inner{grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr)}
  .case-story{padding:28px 31px 27px}
  .case-story .case-lede{margin:15px 0 12px;font-size:16px;line-height:1.62}
  .case-story>p:not(.eyebrow):not(.case-lede){margin-bottom:11px;font-size:14px;line-height:1.7}
  .case-editor-note{padding:28px 27px}
  .case-editor-note h3{margin-bottom:15px;font-size:18px}
  .case-editor-note dl>div{padding:10px 0}
  .case-editor-note dt{font-size:13px}
  .case-editor-note dd,.case-outcome{font-size:12px}
  .comparison-section{padding-top:34px}
  .article-page--narrative .comparison-scroll th,.article-page--narrative .comparison-scroll td{padding:10px 12px;font-size:13px}
  .scene-title{margin-top:24px;font-size:18px}
  .scene-rows{margin-top:16px}
  .scene-rows>div{grid-template-columns:190px 1fr;gap:20px;padding:13px 0}
  .scene-rows h3{font-size:16px}
  .scene-rows p{font-size:14px;line-height:1.68}
  .equipment-panel{gap:30px;margin-top:40px;padding:27px 29px}
  .equipment-panel>div>p:not(.eyebrow){margin-top:13px;font-size:14px;line-height:1.7}
  .panel-actions{gap:14px;margin-top:21px}
  .closing-column{padding-top:38px;padding-bottom:46px}
  .editorial-note{margin-bottom:31px;padding:15px 17px}
  .faq h2{margin-bottom:15px}
  .faq summary{padding:11px 0;font-size:15px}
  .faq details p{margin-bottom:15px;font-size:14px}
  .related{margin-top:31px}
  .related a{padding:12px 0}
}
@media(min-width:1600px){
  .article-layout{grid-template-columns:140px minmax(0,1040px);gap:28px;width:1208px;margin-right:0;margin-left:calc((100% - 1040px)/2 - 168px)}
  .article-main>.reading-column{width:min(100%,850px);margin-right:auto;margin-left:max(0px,calc((100% - 820px)/2 - 30px))}
}
@media(min-width:600px) and (max-width:900.98px){
  .feature-heading-grid{grid-template-columns:minmax(0,1.12fr) minmax(220px,.88fr);gap:clamp(24px,3.4vw,30px);align-items:center}
  .feature-intro{padding-left:20px;border-left:1px solid #bda975}
  .feature-header h1{font-size:clamp(34px,5vw,44px);line-height:1.18}
  .feature-header h1 span{font-size:.64em;line-height:1.42}
  .standfirst{font-size:16px;line-height:1.72}
  .feature-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;font-size:12px}
}
@media(min-width:600px) and (max-width:1023.98px){
  .lead-photo{width:calc(100% - 36px)}
  .narrative-flow>p.opening::first-letter{font-size:58px}
}
@media(max-width:760.98px){
  .reading-column{width:min(calc(100% - 36px),730px)}
  .feature-header .reading-column{width:calc(100% - 36px)}
  .feature-header{padding:23px 0 25px}
  .feature-breadcrumbs{margin-bottom:18px;font-size:12px}
  .feature-header>.reading-column>.eyebrow{margin-bottom:15px}
  .feature-heading-grid{grid-template-columns:1fr;gap:17px}
  .feature-intro{padding:17px 0 0;border-top:1px solid #bda975;border-left:0}
  .feature-header h1{font-size:clamp(30px,8.2vw,35px);line-height:1.2}
  .feature-header h1 span{font-size:.72em;line-height:1.4}
  .standfirst{font-size:17px;line-height:1.72}
  .feature-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;font-size:12px}
  .lead-photo{width:100%}
  .lead-photo img{aspect-ratio:3/2;object-position:center 56%}
  .lead-photo figcaption,.evidence-photo figcaption{width:calc(100% - 36px);padding-top:9px}
  .lead-photo figcaption{font-size:12px;line-height:1.6}
  .evidence-photo--inline{width:calc(100% + 36px);margin:27px 0 0 -18px}
  .evidence-photo--inline figcaption{width:calc(100% - 36px);margin-inline:auto}
  .article-shell .reading-column{width:calc(100% - 36px)}
  .article-main>.reading-column,.mobile-article-nav{width:calc(100% - 36px)}
  .feature-article{font-size:17px;line-height:1.78}
  .mobile-article-nav{margin-top:18px}
  .mobile-article-nav summary{font-size:16px}
  .narrative-flow{padding-top:24px}
  .narrative-flow>p,.chapter>p{margin-bottom:13px}
  .narrative-flow>p.opening{font-size:17px;font-weight:520;line-height:1.82}
  .narrative-flow>p.opening::first-letter{margin:9px 10px 0 0;font-size:56px}
  .chapter{padding-top:34px}
  .chapter-heading{grid-template-columns:25px 1fr;gap:8px;margin-bottom:14px}
  .chapter-heading>span{padding-top:6px}
  .chapter-heading h2{font-size:24px;line-height:1.4}
  .chapter blockquote{width:calc(100% + 36px);margin:22px 0 23px -18px;padding:19px 18px 19px 22px;font-size:19px;line-height:1.58}
  .diagnostic-types,.evidence-questions{margin-top:18px}
  .diagnostic-types>div,.evidence-questions>div{grid-template-columns:1fr;gap:3px;padding:13px 0}
  .diagnostic-types dd,.evidence-questions dd{font-size:16px;line-height:1.72}
  .continuation{padding-top:19px}
  .field-case{width:100%;margin-top:34px}
  .field-case-inner{grid-template-columns:1fr}
  .case-story,.case-editor-note{padding:25px 18px}
  .field-case h2{font-size:24px;line-height:1.4}
  .case-story .case-lede{margin:17px 0 14px;font-size:18px;line-height:1.68}
  .case-story>p:not(.eyebrow):not(.case-lede){font-size:16px;line-height:1.74}
  .case-editor-note h3{font-size:20px}
  .comparison-section{padding-top:34px}
  .article-page--narrative .comparison-scroll{overflow:visible;background:transparent}
  .article-page--narrative .comparison-scroll table,.article-page--narrative .comparison-scroll tbody,.article-page--narrative .comparison-scroll tr,.article-page--narrative .comparison-scroll th,.article-page--narrative .comparison-scroll td{display:block;width:100%;min-width:0}
  .article-page--narrative .comparison-scroll thead{display:none}
  .article-page--narrative .comparison-scroll tbody{display:grid;gap:10px}
  .article-page--narrative .comparison-scroll tr{padding:12px 14px;background:#fff;border-top:3px solid #17352d}
  .article-page--narrative .comparison-scroll tbody th{width:auto;padding:0 0 9px;border:0;font-size:17px}
  .article-page--narrative .comparison-scroll td{display:grid;grid-template-columns:108px 1fr;gap:10px;padding:8px 0;border:0;border-top:1px solid #deddd6}
  .article-page--narrative .comparison-scroll td::before{content:attr(data-label);color:#174b41;font-size:13px;font-weight:800}
  .scene-rows>div{grid-template-columns:1fr;gap:4px;padding:15px 0}
  .scene-title{margin-top:26px;font-size:20px}
  .scene-rows{margin-top:17px}
  .scene-rows p{font-size:16px;line-height:1.72}
  .equipment-panel{grid-template-columns:1fr;width:100%;margin-top:38px;padding:0 0 28px;gap:0}
  .equipment-panel>div{padding:23px 18px 0}
  .equipment-panel h2{font-size:25px;line-height:1.42}
  .equipment-panel>div>p:not(.eyebrow){margin-top:14px;font-size:16px;line-height:1.74}
  .panel-actions{align-items:stretch;flex-direction:column;margin-top:22px}
  .panel-actions>a:not(.button){text-align:center}
  .closing-column{padding-top:38px;padding-bottom:44px}
  .editorial-note{margin-bottom:30px;padding:16px 17px}
  .faq h2{font-size:25px}
  .faq summary{font-size:16px;line-height:1.55}
  .related a{align-items:flex-start;flex-direction:column;gap:2px}
}
@media(max-width:390.98px){.feature-header h1{font-size:29px}.chapter-heading h2{font-size:23px}.feature-article{font-size:17px}.article-page--narrative .comparison-scroll td{grid-template-columns:1fr;gap:2px}}
