/* Full-width illustrative banner; copy remains selectable HTML. */
.lw-app-hero{position:relative;isolation:isolate;background:#101a24;color:#fff;width:100%;min-height:420px;aspect-ratio:3/1;text-align:left;display:flex;align-items:center}
.lw-app-hero__art{position:absolute;inset:0;z-index:-2;display:block}
.lw-app-hero__art img{display:block;width:100%;height:100%;object-fit:cover;object-position:right center}
.lw-app-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,12,20,.76),rgba(4,12,20,.52) 30%,rgba(4,12,20,.08) 58%,transparent 75%)}
.lw-app-hero__inner{width:100%;max-width:1250px;margin:auto;padding:38px 24px 62px;box-sizing:border-box}
.lw-app-hero__copy{max-width:44%;min-width:0}
.lw-app-hero__eyebrow{margin:0 0 14px;color:#e1ebf1;font-size:15px;font-weight:700;letter-spacing:.08em}
.lw-application .lw-app-hero h1{margin:0 0 20px;font-size:clamp(30px,3.1vw,48px);line-height:1.35;letter-spacing:-.04em;color:#fff}
.lw-app-hero__lead{margin:0;font-size:16px;line-height:1.9;color:#f1f4f7;text-wrap:pretty}
.lw-app-hero__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.lw-app-hero__links a{display:inline-flex;align-items:center;gap:18px;min-height:46px;box-sizing:border-box;padding:11px 16px;border:1px solid #e0e8ef;border-radius:5px;background:rgba(9,22,33,.7);color:#fff;font-weight:700;text-decoration:none;font-size:15px}
.lw-app-hero__links a:first-child{background:#fff;color:#193347}
.lw-app-hero__links a:hover{background:#dceefb;color:#173a53}
.lw-app-hero__note{position:absolute;bottom:12px;left:max(24px,calc((100% - 1202px)/2));right:18px;margin:0;font-size:11px;line-height:1.7;color:#d9e4eb;text-shadow:0 1px 3px #000}
.lw-application :is(#app-cases-title,#app-materials-title){scroll-margin-top:100px}
.lw-application .lw-app-hero + .lw-common__section{padding-top:30px}
@media(max-width:800px){
 .lw-app-hero{aspect-ratio:auto;min-height:0;display:block}
 .lw-app-hero__art{top:auto;bottom:0;height:auto;width:100%}
 .lw-app-hero__art img{height:auto;width:100%;object-fit:contain}
 .lw-app-hero::before{background:linear-gradient(180deg,#101a24 0%,#101a24 48%,rgba(16,26,36,.75) 58%,transparent 76%)}
 .lw-app-hero__inner{padding:28px 20px calc(51.3vw + 36px);max-width:640px}
 .lw-app-hero__copy{max-width:100%}
 .lw-application .lw-app-hero h1{font-size:clamp(29px,6vw,42px);margin-bottom:16px}
 .lw-app-hero__lead{font-size:15px;line-height:1.85}
 .lw-app-hero__links{gap:10px;margin-top:20px}
 .lw-app-hero__links a{font-size:14px;padding:10px 12px;gap:12px}
 .lw-app-hero__note{left:20px;right:20px;bottom:8px;padding:4px 7px;background:rgba(5,14,22,.78);font-size:10px}
}
/* Application-only layout. All images retain their intrinsic ratio. */
.lw-application .lw-common__section{padding:48px 24px}
.lw-application .lw-common__heading h2{font-size:clamp(25px,3vw,36px);line-height:1.5}
.lw-application [hidden]{display:none!important}
.lw-application button,.lw-application select{font:inherit}
.lw-application button{cursor:pointer}
.lw-application :is(button,a,select,[tabindex]):focus-visible{outline:3px solid #137ad0;outline-offset:4px}
.lw-app-gallery{min-width:0}
.lw-app-slide{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);align-items:center;gap:32px;padding:24px;background:#f4f7f9;border:1px solid #dce3e8;border-radius:16px;margin-bottom:24px}
.lw-app-gallery.is-ready .lw-app-slide{margin-bottom:0;min-height:380px}
.lw-app-slide__visual{position:relative;min-width:0;background:#fff;border-radius:10px;overflow:hidden}
.lw-app-slide img{display:block;max-width:100%;height:auto}
.lw-app-slide__image{width:100%;object-fit:contain}
.lw-app-slide__diagram{position:absolute;left:4%;bottom:3%;width:62%;max-height:65%;object-fit:contain}
.lw-app-slide__copy h2{font-size:clamp(23px,2.2vw,30px);line-height:1.5;margin:0 0 16px}
.lw-app-slide__copy p{font-size:16px;line-height:1.95;margin:0}
.lw-app-gallery__controls{display:flex;align-items:center;justify-content:center;gap:16px;margin:20px auto 0;flex-wrap:wrap}
.lw-app-gallery__controls>button,.lw-app-lightbox__image>button{width:44px;height:44px;border:1px solid #c1cbd4;border-radius:50%;background:#fff;color:#17202a;font-size:30px;line-height:1}
.lw-app-gallery__controls>button:disabled,.lw-app-lightbox__image>button:disabled{opacity:.35;cursor:default}
.lw-app-gallery__controls>.lw-app-autoplay{width:auto;min-height:44px;padding:0 12px;border-radius:6px;font-size:13px;white-space:nowrap}
.lw-app-gallery__dots{display:flex;align-items:center;gap:1px}
.lw-app-gallery__dots button{display:grid;place-items:center;width:34px;height:44px;background:transparent;border:0;padding:0}
.lw-app-gallery__dots span{display:block;width:9px;height:9px;border-radius:50%;background:#9aaab8}
.lw-app-gallery__dots [aria-pressed=true] span{background:#167bce;box-shadow:0 0 0 4px #e0effc}
.lw-app-gallery__status{font-size:14px;color:#4c5b69;min-width:42px}
.lw-app-caption{color:#556575;font-size:14px;line-height:1.85;margin:20px 0 0}
.lw-app-caption a{color:#0861a6;text-decoration:underline}
.lw-app-safety{padding:24px;border-left:4px solid #d98b24;background:#fff9ec;border-radius:8px;margin-bottom:24px}
.lw-app-safety h3{font-size:20px;line-height:1.6;margin:0 0 12px}
.lw-app-safety p{line-height:1.85;margin:10px 0;font-size:15px}
.lw-app-safety strong{color:#933921}
.lw-app-table-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid #cbd5df;border-radius:8px;background:#fff;margin-top:16px}
.lw-app-table{width:100%;min-width:1110px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:14px;line-height:1.65}
.lw-app-table caption{text-align:left;padding:14px 16px;font-weight:700;background:#e8eff5}
.lw-app-table th,.lw-app-table td{padding:14px 12px;vertical-align:top;border-right:1px solid #dce3e8;border-bottom:1px solid #dce3e8;overflow-wrap:anywhere}
.lw-app-table thead th{background:#183249;color:white;font-size:14px;vertical-align:middle}
.lw-app-table thead th:first-child{width:100px}
.lw-app-table thead th:nth-child(2){width:180px}
.lw-app-table th[scope=rowgroup]{background:#e8eff5;font-size:15px;vertical-align:top}
.lw-app-table th[scope=row]{background:#f6f8fa;text-align:left}
.lw-app-table tbody+tbody tr:first-child>*{border-top:2px solid #8095a8}
.lw-app-table tr:nth-child(even) td{background:#fafcfd}
.lw-app-table small{display:block;font-weight:400;color:#784623;margin-top:10px;line-height:1.6}
.lw-app-symbol{display:block;font-size:23px;line-height:1.4;margin-bottom:6px}
.lw-app-symbol--yes{color:#155a83}.lw-app-symbol--no{color:#963c2b}
.lw-app-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.lw-app-links a{padding:10px 16px;border:1px solid #cbd5df;background:white;color:#0861a6;border-radius:6px;text-decoration:none;font-weight:700}
.lw-app-case{margin:0 0 32px}
.lw-app-case>a{display:block;position:relative;width:fit-content;max-width:100%;margin-inline:auto}
.lw-app-case img{display:block;width:auto;height:auto;max-width:100%;max-height:580px;border-radius:12px}
.lw-app-cases.is-ready .lw-app-case img{max-height:clamp(260px,43vw,550px)}
.lw-app-expand-label{position:absolute;right:12px;bottom:12px;padding:8px 12px;border-radius:6px;background:rgb(10 27 39/.82);color:#fff;font-size:14px}
.lw-app-case figcaption{padding:20px 12px 0;text-align:center;min-height:100px}
.lw-app-case h3{margin:0 0 10px;font-size:24px;line-height:1.5}
.lw-app-case p{margin:8px 0;line-height:1.8;white-space:pre-line}
.lw-app-case__note{color:#933921;font-size:14px}
.lw-app-case-index{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:20px}
.lw-app-case-index select{width:min(560px,100%);min-width:0;max-width:100%;padding:12px;background:#fff;border:1px solid #bac8d3;border-radius:6px;color:#17202a}
.lw-app-lightbox{box-sizing:border-box;width:min(1280px,96vw);max-width:96vw;max-height:94dvh;overflow:auto;border:0;border-radius:14px;padding:20px;background:#f6f6f0;color:#17202a}
.lw-app-lightbox::backdrop{background:rgb(5 15 23/.85)}
.lw-app-lightbox__toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.lw-app-lightbox__toolbar button{border:1px solid #bdc8cc;border-radius:6px;background:#fff;padding:10px 16px;color:#17202a;min-height:44px}
.lw-app-lightbox__image{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:14px}
.lw-app-lightbox__image img{width:100%;height:min(62dvh,720px);object-fit:contain}
.lw-app-lightbox [data-app-dialog-caption]{text-align:center;margin-top:16px;line-height:1.8;white-space:pre-line}
.lw-app-lightbox h3{font-size:22px;margin:0 0 8px}
.lw-app-lightbox p{margin:8px 0}
@media(max-width:800px){
 .lw-app-slide{grid-template-columns:minmax(0,1fr);gap:22px;padding:20px}
 .lw-app-gallery.is-ready .lw-app-slide{min-height:0}
 .lw-app-slide__visual{width:min(680px,100%);margin:auto}
 .lw-app-gallery__status{width:100%;text-align:center}
}
@media(max-width:600px){
 .lw-application .lw-common__section{padding:34px 16px}
 .lw-app-slide{padding:14px;gap:20px}
 .lw-app-slide__copy{padding:0 4px 6px}
 .lw-app-slide__copy p{font-size:15px;line-height:1.9}
 .lw-app-gallery__controls{gap:6px}
 .lw-app-gallery__dots button{width:29px}
 .lw-app-safety{padding:18px}
 .lw-app-case h3{font-size:21px}
 .lw-app-case-index{display:grid;gap:8px}
 .lw-app-case-index select{width:100%}
 .lw-app-lightbox{padding:12px;max-height:94dvh}
 .lw-app-lightbox__image{grid-template-columns:32px minmax(0,1fr) 32px;gap:5px}
 .lw-app-lightbox__image>button{width:32px;height:44px;border-radius:6px}
 .lw-app-lightbox__image img{height:48dvh}
}
