/* Greenwire Lab — editorial layouts, using the approved Greenwire palette. */
.lab-page{background:#fff}.lab-page a:focus-visible{outline:3px solid var(--gw-graphite);outline-offset:5px}.lab-label{display:flex;align-items:center;gap:10px;font:500 13px/1.5 'IBM Plex Sans','Avenir Next',sans-serif;letter-spacing:.025em}.lab-label:before{content:'';width:9px;height:9px;background:var(--gw-green);flex:none}.lab-page>.lab-hero{padding-top:64px;padding-bottom:48px}.lab-hero h1{font-size:clamp(64px,9vw,120px);font-weight:500;letter-spacing:-.055em;line-height:1.02;margin:28px 0 36px}.lab-hero h1 span{display:inline-block;background:var(--gw-green);color:#fff;padding:0 .13em .04em;line-height:1.03}.lab-hero-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:start}.lab-hero-bottom p:first-child{font-size:28px;line-height:1.3;letter-spacing:-.6px;color:var(--gw-graphite);margin:0}.lab-hero-bottom p:last-child{font-size:16px;max-width:470px;margin:3px 0 0}.lab-section-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--gw-line);padding-top:25px;margin-bottom:25px}.lab-section-heading h2{font-size:24px;letter-spacing:-.5px;margin:0}.lab-section-heading>span{font-size:12px;color:var(--gw-muted)}.lab-feature{display:grid;grid-template-columns:1.05fr 1fr;min-height:450px;text-decoration:none;background:var(--gw-paper);overflow:hidden}.lab-feature-photo{position:relative;overflow:hidden;min-height:340px}.lab-feature-photo img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0;transition:transform .65s ease}.lab-feature-photo>span{position:absolute;left:25px;bottom:25px;background:#fff;padding:7px 14px;font-size:12px}.lab-feature-copy{padding:42px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.lab-feature h3{font-size:clamp(29px,3.1vw,43px);font-weight:500;letter-spacing:-1.3px;line-height:1.13;margin:25px 0 16px}.lab-feature-copy p{font-size:16px;line-height:1.65;margin:0 0 20px;max-width:420px}.lab-feature-languages{font-size:11px;letter-spacing:.02em;color:var(--gw-muted)}.lab-read{display:flex;align-items:center;gap:22px;margin-top:30px;font-weight:600;font-size:15px;border-bottom:2px solid var(--gw-green);padding-bottom:7px}.lab-read>span{transition:transform .3s}.lab-photo-note{font-size:11px;margin:10px 0 0}.lab-page>.lab-purpose{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding-top:70px;padding-bottom:70px}.lab-purpose h2{font-size:37px;max-width:420px;letter-spacing:-1px;line-height:1.2;margin-top:22px}.lab-purpose-items>div{display:grid;grid-template-columns:36px 1fr;border-top:1px solid var(--gw-line);padding:22px 0;column-gap:20px}.lab-purpose-items span{grid-row:span 2;color:var(--gw-muted);font-size:12px;padding-top:5px}.lab-purpose h3{font-size:20px;margin:0 0 8px}.lab-purpose p{font-size:15px;margin:0}.lab-page>.lab-contact-section{max-width:none;background:var(--gw-graphite);color:#fff;padding:60px max(40px,calc((100% - 1240px)/2));}.lab-contact-section p{color:#fff;max-width:620px}.lab-contact-section h2{font-size:clamp(30px,4vw,48px);max-width:800px}.lab-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.lab-actions .button{font-size:15px;min-height:48px;padding:15px 22px}.lab-contact-section .outline{color:#fff;border-color:rgba(255,255,255,.5)}
/* Article: readable, server-rendered content in all four languages. */
.lab-page>.lab-article-hero{padding-top:40px;padding-bottom:38px;max-width:1200px}.lab-back{font-size:13px;display:inline-block;text-decoration:none;margin-bottom:36px;border-bottom:1px solid var(--gw-line)}.lab-article-hero h1{max-width:950px;font-size:clamp(39px,5vw,64px);line-height:1.07;letter-spacing:-2px;margin-top:22px}.lab-deck{font-size:19px;line-height:1.6;max-width:800px}.lab-byline{font-size:12px;display:flex;gap:24px;flex-wrap:wrap;margin-top:28px}.lab-byline span{color:var(--gw-muted)}.lab-languages{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}.lab-languages a{font-size:12px!important;display:flex!important;align-items:center;gap:20px;border:1px solid var(--gw-line);padding:9px 14px;border-radius:3px;text-decoration:none!important}.lab-languages a:hover{background:var(--gw-paper)}.lab-reading-layout{max-width:1200px;padding:0 40px 70px;margin:auto;display:grid;grid-template-columns:230px minmax(0,1fr);gap:60px;align-items:start}.lab-sidebar{position:sticky;top:120px;border-top:3px solid var(--gw-green);padding-top:21px}.lab-sidebar ol{padding:0;list-style:none;margin:20px 0}.lab-sidebar li{margin:0 0 18px;font-size:13px;line-height:1.45}.lab-sidebar a{text-decoration:none}.lab-sidebar a:hover{text-decoration:underline;text-underline-offset:4px}.lab-side-cta{display:inline-block;font-size:13px;font-weight:600;border-top:1px solid var(--gw-line);padding-top:20px}.lab-article-body{min-width:0}.lab-language{scroll-margin-top:120px;padding-bottom:40px}.lab-language+.lab-language{padding-top:50px;border-top:1px solid var(--gw-line)}.lab-language>h2{font-size:36px;line-height:1.2;letter-spacing:-1px;margin-top:14px}.lab-translation-label{font-size:13px;display:inline-block;background:var(--gw-graphite);color:#fff;padding:6px 13px}.lab-answer{border-left:4px solid var(--gw-green);background:var(--gw-paper);padding:25px 28px;margin:0 0 35px}.lab-language>h2+.lab-deck+.lab-answer{margin-top:25px}.lab-answer h3{font-size:19px;margin:0 0 12px}.lab-answer p{font-size:17px;line-height:1.75;margin:0;color:var(--gw-graphite)}.lab-advantages-title{font-size:20px;margin:0 0 21px}.lab-advantages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-bottom:32px;border-bottom:1px solid var(--gw-line)}.lab-adv-number{font-size:12px;display:block;border-top:2px solid var(--gw-green);padding-top:12px;margin-bottom:14px}.lab-advantages h4{font-size:17px;line-height:1.25;margin:0 0 12px;font-weight:600}.lab-advantages p{font-size:14px;line-height:1.65;margin:0}.lab-answer-section{padding:29px 0 0;scroll-margin-top:115px}.lab-answer-section h3{font-size:27px;line-height:1.25;letter-spacing:-.65px;margin:0 0 17px;font-weight:600}.lab-answer-section p{font-size:17px;line-height:1.8;color:var(--gw-graphite);margin:0 0 18px}.lab-answer-section sup{font-size:11px;line-height:0;margin-left:3px}.lab-answer-section sup a{text-decoration:none;font-weight:600}.lab-table-wrap{overflow:auto;margin:35px 0}.lab-table-wrap table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.55;min-width:550px}.lab-table-wrap caption{text-align:left;font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-.5px;margin:0 0 20px}.lab-table-wrap th,.lab-table-wrap td{text-align:left;vertical-align:top;border-bottom:1px solid var(--gw-line);padding:17px 15px}.lab-table-wrap thead{background:var(--gw-graphite);color:#fff}.lab-table-wrap tbody th{min-width:140px;font-weight:600}.lab-enquiry{background:var(--gw-paper);border-top:4px solid var(--gw-green);padding:30px;margin:38px 0 20px;scroll-margin-top:115px}.lab-enquiry h3{font-size:27px;letter-spacing:-.7px;margin:0 0 16px}.lab-enquiry p{font-size:15px;margin:0}.lab-editorial{font-size:12px;line-height:1.6}.lab-back-top{font-size:12px;display:inline-block;margin-top:15px;text-underline-offset:4px}.lab-sources{padding-top:35px;border-top:1px solid var(--gw-line);scroll-margin-top:115px}.lab-sources h2{font-size:28px;letter-spacing:-.7px}.lab-sources li{font-size:13px;margin-bottom:15px;scroll-margin-top:115px}.lab-sources a{text-underline-offset:4px;overflow-wrap:anywhere}.lab-visually-hidden{position:absolute!important;clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}.lab-page .lab-reveal{animation:lab-enter .6s ease both}@keyframes lab-enter{from{opacity:.6;transform:translateY(10px)}to{opacity:1;transform:none}}@media(hover:hover){.lab-feature:hover img{transform:scale(1.03)}.lab-feature:hover .lab-read>span{transform:translate(3px,-3px)}}
@media(max-width:1000px){.lab-reading-layout{grid-template-columns:180px minmax(0,1fr);gap:30px}.lab-feature-copy{padding:30px}.lab-page>.lab-purpose{gap:35px}.lab-advantages{gap:15px}.lab-enquiry .lab-actions{flex-direction:column;align-items:flex-start}}
@media(max-width:760px){.lab-page>.lab-hero{padding:38px 22px 25px}.lab-hero h1{font-size:64px;margin:25px 0}.lab-hero-bottom{grid-template-columns:1fr;gap:18px}.lab-hero-bottom p:first-child{font-size:25px}.lab-feature{grid-template-columns:1fr}.lab-feature-photo{min-height:0;aspect-ratio:1.6}.lab-feature-copy{padding:28px}.lab-feature h3{font-size:34px}.lab-section-heading h2{font-size:22px}.lab-section-heading>span{font-size:10px}.lab-feature-section{padding:22px!important}.lab-page>.lab-purpose{grid-template-columns:1fr;gap:15px;padding:35px 22px}.lab-purpose h2{font-size:32px;margin-bottom:5px}.lab-page>.lab-contact-section{padding:40px 22px}.lab-contact-section h2{font-size:33px}.lab-actions{gap:12px}.lab-actions .button{font-size:14px}.lab-page>.lab-article-hero{padding:26px 22px}.lab-back{margin-bottom:25px}.lab-article-hero h1{font-size:40px;letter-spacing:-1.4px}.lab-deck{font-size:17px}.lab-byline{gap:6px;flex-direction:column}.lab-languages{gap:7px}.lab-languages a{gap:12px;padding:9px 11px}.lab-reading-layout{display:block;padding:0 22px 40px}.lab-sidebar{position:static;padding:18px 0 20px;border-top-width:2px}.lab-sidebar ol{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;margin:16px 0 20px}.lab-sidebar li{margin:0;font-size:12px}.lab-side-cta{padding:12px 0}.lab-answer{padding:22px}.lab-answer p{font-size:16px}.lab-advantages{grid-template-columns:1fr;gap:20px}.lab-advantages>div{display:grid;grid-template-columns:30px 1fr;column-gap:14px}.lab-adv-number{grid-row:span 2;margin:0;padding-top:3px}.lab-advantages h4{margin-bottom:8px}.lab-answer-section h3{font-size:25px}.lab-answer-section p{font-size:16px;line-height:1.8}.lab-enquiry{padding:24px}.lab-enquiry h3{font-size:25px}.lab-enquiry .lab-actions{align-items:stretch}.lab-enquiry .button{text-align:center}.lab-language>h2{font-size:31px}.lab-translation-label{font-size:12px}.lab-sources h2{font-size:27px}.lab-table-wrap caption{font-size:23px}}
@media(prefers-reduced-motion:reduce){.lab-page .lab-reveal{animation:none}.lab-feature:hover img{transform:none}}

/* Sourced article figures: retain complete diagrams and readable mobile captions. */
.lab-figure{margin:32px 0 14px;padding:24px;border:1px solid var(--gw-line);background:#fff}.lab-figure h4{font-size:20px;line-height:1.3;letter-spacing:-.4px;margin:0 0 24px}.lab-figure-image{display:block}.lab-figure img{display:block;width:100%;height:auto;max-width:700px;margin:auto;object-fit:contain}.lab-figure figcaption{border-top:1px solid var(--gw-line);margin-top:22px;padding-top:18px}.lab-answer-section .lab-figure figcaption p{font-size:13px;line-height:1.7;margin:0 0 12px}.lab-figure-credit{font-size:11px;line-height:1.8;color:var(--gw-muted)}.lab-figure-credit a{text-underline-offset:3px}.lab-figure-zoom{font-size:12px;display:inline-block;margin-top:12px;text-underline-offset:4px}@media(max-width:760px){.lab-figure{padding:15px;margin:25px 0 12px}.lab-figure h4{font-size:18px;margin-bottom:18px}.lab-figure figcaption{margin-top:16px;padding-top:14px}}

/* Editorial collection and practical buying guides. */
.lab-page>.lab-collection-hero{padding-bottom:32px}.lab-collection-hero h1{font-size:clamp(64px,7vw,96px);margin:24px 0 28px}.lab-collection-intro{font-size:clamp(20px,2.2vw,27px);line-height:1.5;max-width:880px;margin:0 0 16px;letter-spacing:-.4px}.lab-collection-sub{font-size:16px;max-width:790px;margin:0;color:var(--gw-muted)}.lab-page>.lab-library{padding-top:20px;padding-bottom:64px}.lab-filters{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:30px;border-bottom:1px solid var(--gw-line);margin-bottom:30px}.lab-filters[hidden]{display:none}.lab-filters button{font:inherit;font-size:14px;padding:12px 18px;min-height:44px;background:#fff;border:1px solid var(--gw-line);border-radius:999px;color:var(--gw-graphite);cursor:pointer}.lab-filters button[aria-pressed=true]{background:var(--gw-green);color:#fff;border-color:var(--gw-green)}.lab-library-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.lab-library-heading h2{font-size:29px;font-weight:500;letter-spacing:-.8px;margin:0}.lab-library-heading>span{font-size:13px;color:var(--gw-muted)}.lab-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 28px}.lab-card[hidden]{display:none}.lab-card>a{display:block;height:100%;color:var(--gw-graphite);text-decoration:none}.lab-card-photo{height:300px;overflow:hidden;background:var(--gw-paper)}.lab-card-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .5s ease;object-position:center 40%}.lab-card-portrait img{object-fit:contain}.lab-card-copy{padding:24px 0 28px;border-bottom:1px solid var(--gw-line)}.lab-card-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;line-height:1.5;margin-bottom:14px}.lab-card-meta>span:first-child{font-weight:600}.lab-card h3{font-size:28px;line-height:1.25;letter-spacing:-.7px;font-weight:500;margin:0 0 13px;max-width:580px}.lab-card p{font-size:15px;line-height:1.7;margin:0 0 21px;max-width:540px}.lab-card-read{display:inline-flex;align-items:center;gap:24px;font-size:14px;font-weight:600;border-bottom:2px solid var(--gw-green);padding-bottom:5px}.lab-language-note{font-size:12px;margin:25px 0 0}.lab-cover{margin-top:34px;height:400px;overflow:hidden;background:var(--gw-paper)}.lab-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 35%}.lab-cover-portrait{height:340px}.lab-cover-portrait img{object-fit:contain}.lab-image-credit{font-size:11px;line-height:1.6;margin:10px 0 0;color:var(--gw-muted)}.lab-opening{font-size:20px;line-height:1.75;letter-spacing:-.2px;margin:0 0 8px}.lab-sample-link{display:inline-block;font-size:14px;margin-top:22px;text-underline-offset:4px}.lab-sources>p{font-size:12px;line-height:1.7}.lab-infographic{margin:30px 0 5px;padding:28px;background:var(--gw-paper);border-top:3px solid var(--gw-green)}.lab-infographic h4{font-size:22px;font-weight:500;line-height:1.3;letter-spacing:-.5px;margin:0 0 26px}.lab-diagram-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;margin:0;padding:0}.lab-diagram-steps li{border-top:1px solid #a8bcb0;padding-top:16px;position:relative}.lab-step-number{display:block;font:500 13px/1.4 'IBM Plex Sans',sans-serif;margin-bottom:20px;color:var(--gw-muted)}.lab-diagram-steps strong{font-size:20px;display:block;font-weight:500;line-height:1.3}.lab-diagram-steps p{font-size:14px;line-height:1.6;margin:10px 0 0}.lab-infographic figcaption{font-size:12px;line-height:1.7;color:var(--gw-muted);margin-top:25px;padding-top:20px;border-top:1px solid var(--gw-line)}.lab-infographic figcaption a{color:var(--gw-graphite)}.lab-duration-rows{display:grid;gap:19px}.lab-duration-row{display:grid;grid-template-columns:100px 1fr;gap:18px;align-items:center}.lab-duration-row>span{font-size:15px}.lab-duration-track{background:#e0e9e3}.lab-duration-track>div{min-height:42px;background:var(--gw-green);color:#fff;display:flex;align-items:center;justify-content:flex-end;padding:8px 12px;min-width:58px}.lab-duration-track strong{font-size:18px;font-weight:500;white-space:nowrap}.lab-page>.lab-related{padding-top:0;padding-bottom:65px}.lab-related h2{font-size:30px;letter-spacing:-.8px;font-weight:500;margin:0 0 28px}.lab-related .lab-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lab-related .lab-card-photo{height:190px}.lab-related .lab-card h3{font-size:22px}.lab-related .lab-card-meta{font-size:11px}.lab-related .lab-card-copy{padding-top:18px}.lab-filters button:focus-visible{outline:3px solid var(--gw-graphite);outline-offset:3px}@media(hover:hover){.lab-card>a:hover .lab-card-photo img{transform:scale(1.03)}.lab-card>a:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}}@media(max-width:1000px){.lab-card-photo{height:250px}.lab-card h3{font-size:25px}.lab-diagram-steps{gap:13px}.lab-diagram-steps strong{font-size:17px}.lab-diagram-steps p{font-size:13px}.lab-related .lab-card-meta{flex-direction:column;gap:3px}}@media(max-width:760px){.lab-page>.lab-library{padding:16px 22px 38px}.lab-collection-intro{font-size:21px}.lab-collection-sub{font-size:15px}.lab-card-grid,.lab-related .lab-card-grid{grid-template-columns:1fr;gap:26px}.lab-card-photo{height:230px}.lab-card-copy{padding:19px 0 24px}.lab-card h3{font-size:25px}.lab-filters{gap:7px;padding-bottom:22px;margin-bottom:24px}.lab-filters button{font-size:12px;padding:10px 14px}.lab-library-heading h2{font-size:25px}.lab-cover{height:240px;margin-top:26px}.lab-cover-portrait{height:270px}.lab-opening{font-size:18px}.lab-infographic{padding:20px;margin-top:26px}.lab-infographic h4{font-size:21px}.lab-diagram-steps{grid-template-columns:1fr;gap:19px}.lab-diagram-steps li{display:grid;grid-template-columns:32px 1fr;column-gap:12px;padding-top:13px}.lab-step-number{grid-row:span 2;margin:3px 0 0}.lab-diagram-steps strong{font-size:19px}.lab-diagram-steps p{font-size:14px;margin:8px 0 0}.lab-duration-row{grid-template-columns:76px 1fr;gap:10px}.lab-duration-row>span{font-size:13px}.lab-duration-track>div{min-width:45px;padding:8px}.lab-duration-track strong{font-size:16px}.lab-page>.lab-related{padding:0 22px 40px}.lab-related .lab-card-photo{height:220px}.lab-related .lab-card-meta{flex-direction:row}.lab-enquiry .button{font-size:13px;padding:14px}.lab-image-credit{font-size:10px}}@media(prefers-reduced-motion:reduce){.lab-card-photo img{transition:none}.lab-card>a:hover .lab-card-photo img{transform:none}}
