:root { --ink:#14232e; --muted:#64717a; --paper:#f4f5f0; --line:#d8ddd6; --blue:#075f96; --deep:#07283d; --orange:#ae481a; --orange-bright:#ff9a56; --white:#fff; --radius:1.25rem; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:calc(var(--header-height, 5rem) + 12px); }
body { margin:0; color:var(--ink); background:var(--white); font-family:Arial, Helvetica, sans-serif; font-size:16px; line-height:1.55; }
body:has(dialog[open]) { overflow:hidden; }
a { color:inherit; transition:color .2s, opacity .2s, border-color .2s, background-color .2s; }
@media (hover:hover) { a:hover { color:var(--orange); } .brand:hover { color:var(--white); opacity:.8; } }
img { display:block; max-width:100%; height:auto; }
button { font:inherit; }
.shell { width:min(100% - 2.5rem, 76rem); margin:0 auto; }
.site-header { position:sticky; top:0; z-index:5; border-bottom:1px solid rgba(20,35,46,.1); background:rgba(255,255,255,.96); backdrop-filter:blur(12px); }
.header-inner { min-height:4.75rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.brand { display:inline-flex; align-items:center; gap:.6rem; text-decoration:none; letter-spacing:.04em; }
.brand-mark { display:grid; width:2.25rem; height:2.25rem; place-items:center; background:var(--orange); color:var(--white); font:700 1.25rem Georgia, serif; transform:skew(-10deg); }
.brand strong, .brand small { display:block; line-height:1.1; }
.brand strong { font-size:.9rem; letter-spacing:.12em; }
.brand small { margin-top:.25rem; color:var(--muted); font-size:.6rem; letter-spacing:0; }
.menu-button { display:flex; min-height:2.75rem; align-items:center; gap:.65rem; padding:.5rem 0; border:0; color:var(--ink); background:transparent; cursor:pointer; font-size:.8rem; text-transform:uppercase; letter-spacing:.1em; }
.menu-button__icon, .menu-button__icon::before, .menu-button__icon::after { display:block; width:1.45rem; height:2px; background:currentColor; content:""; transition:transform .2s, background-color .2s; }
.menu-button__icon { position:relative; }
.menu-button__icon::before, .menu-button__icon::after { position:absolute; left:0; }
.menu-button__icon::before { top:-.4rem; }
.menu-button__icon::after { top:.4rem; }
.menu-button[aria-expanded="true"] .menu-button__icon { background:transparent; }
.menu-button[aria-expanded="true"] .menu-button__icon::before { transform:translateY(.4rem) rotate(45deg); }
.menu-button[aria-expanded="true"] .menu-button__icon::after { transform:translateY(-.4rem) rotate(-45deg); }
.site-nav { position:absolute; top:100%; left:0; right:0; display:none; padding:1rem 1.25rem 1.5rem; border-bottom:1px solid var(--line); background:var(--white); }
.site-nav.is-open { display:grid; gap:.2rem; }
.site-nav a { padding:.75rem 0; border-bottom:1px solid var(--line); text-decoration:none; text-transform:uppercase; letter-spacing:.06em; font-size:.8rem; }
.header-phone { display:none; color:var(--blue); font-size:.82rem; font-weight:700; text-decoration:none; }
.hero { overflow:hidden; color:var(--white); background:var(--deep); }
.hero .eyebrow, .hero h1 em, .hero h2 em { color:var(--orange-bright); }
.hero-grid { display:grid; gap:2rem; padding:3.5rem 0 0; }
.hero-copy { padding-bottom:2.5rem; }
.eyebrow { margin:0 0 .85rem; color:var(--orange); font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.14em; }
h1, h2, h3, p { margin-top:0; }
h1, h2, h3 { letter-spacing:-.045em; line-height:.98; }
h1 { margin-bottom:1.4rem; font-size:clamp(2.35rem, 5vw, 3.8rem); font-weight:500; }
h1 em, h2 em { color:var(--orange); font-style:normal; }
h2 { margin-bottom:1.2rem; font-size:clamp(1.75rem, 3.4vw, 2.65rem); font-weight:500; }
h3 { font-size:1.4rem; font-weight:500; }
.hero-lead { max-width:35rem; color:#d6e1e5; font-size:1.08rem; }
.button-row { display:flex; flex-wrap:wrap; gap:.8rem; margin:1.6rem 0; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:3rem; padding:.8rem 1.1rem; border:1px solid var(--orange); color:var(--white); background:var(--orange); cursor:pointer; font-size:.75rem; font-weight:700; letter-spacing:.08em; text-align:center; text-decoration:none; text-transform:uppercase; transition:background .2s, color .2s; }
.button:hover { border-color:#8f3512; color:var(--white); background:#8f3512; }
.button--ghost { border-color:rgba(255,255,255,.55); background:transparent; }
.button--ghost:hover { color:var(--white); background:rgba(255,255,255,.12); }
.button--dark { border-color:var(--deep); background:var(--deep); }
.button--dark:hover { border-color:var(--blue); color:var(--white); background:var(--blue); }
.button--light { border-color:var(--white); background:var(--white); color:var(--deep); }
.button--light:hover { border-color:#dce7eb; color:var(--deep); background:#dce7eb; }
.hero-facts { display:grid; gap:.45rem; padding:0; color:#ccd8dc; font-size:.82rem; list-style:none; }
.hero-facts li::before { margin-right:.6rem; color:var(--orange); content:"/"; }
.hero-media { position:relative; margin:0 -1.25rem; min-height:18rem; }
.hero-media::after { position:absolute; inset:0; background:linear-gradient(0deg, rgba(7,40,61,.55), transparent 45%); content:""; }
.hero-media img { width:100%; height:100%; min-height:18rem; object-fit:contain; background:#000; object-position:center; }
.hero-media figcaption { position:absolute; z-index:1; right:1.25rem; bottom:1rem; color:#dce8eb; font-size:.67rem; letter-spacing:.08em; text-transform:uppercase; }
.section { padding:4.5rem 0; }
.section--paper { background:var(--paper); }
.section--dark { color:var(--white); background:var(--deep); }
.section--dark .eyebrow { color:#8cc9e9; }
.section--accent { color:var(--white); background:var(--blue); }
.section--accent .eyebrow { color:var(--white); }
.section-heading { max-width:60rem; margin-bottom:2rem; }
.section-heading p { max-width:35rem; color:var(--muted); }
.product-grid { display:grid; gap:1px; background:var(--line); }
.product-card { display:flex; min-height:19rem; align-items:end; padding:1.5rem; color:var(--white); background-color:var(--deep); background-position:center; background-size:cover; }
.product-card > div { position:relative; z-index:1; }
.product-card { background-image:linear-gradient(180deg, rgba(7,40,61,.15), rgba(7,40,61,.95)), url('/assets/images/mill.jpg'); }
.product-card--separator { background-image:linear-gradient(180deg, rgba(7,40,61,.15), rgba(7,40,61,.95)), url('/assets/images/classifier.png'); }
.product-card--line { background-image:linear-gradient(180deg, rgba(7,40,61,.15), rgba(7,40,61,.95)), url('/assets/images/line.jpg'); }
.product-card h3 { margin-bottom:.6rem; }
.product-card p { max-width:22rem; color:#dae6ea; }
.card-index { color:#95c6db !important; font-size:.78rem; font-weight:700; letter-spacing:.1em; }
.text-link { display:inline-flex; gap:.7rem; align-items:center; color:var(--blue); font-size:.8rem; font-weight:700; letter-spacing:.06em; text-decoration:none; text-transform:uppercase; }
.product-card .text-link { color:var(--white); }
.text-link span { font-size:1.2rem; }
.split-section { display:grid; gap:2rem; }
.split-section > div > p:not(.eyebrow) { max-width:32rem; color:var(--muted); }
.number-list { border-top:1px solid var(--line); }
.number-list > div { display:grid; grid-template-columns:3.2rem 1fr; gap:.75rem; padding:1.1rem 0; border-bottom:1px solid var(--line); }
.number-list strong { color:var(--orange); font-size:.8rem; letter-spacing:.08em; }
.number-list span { font-size:1rem; }
.process { display:grid; gap:2rem; }
.process ol { display:grid; gap:1.25rem; margin:0; padding:0; list-style:none; }
.process li { display:grid; grid-template-columns:2.5rem 1fr; gap:.85rem; }
.process li > span { color:#8cc9e9; font-size:.75rem; font-weight:700; letter-spacing:.08em; }
.process h3 { margin-bottom:.3rem; font-size:1.25rem; }
.process p { margin:0; color:#bfced4; font-size:.9rem; }
.materials { display:grid; gap:1.5rem; }
.materials h2 { margin:0; }
.materials ul { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.35); list-style:none; }
.materials li { padding:.85rem .5rem .85rem 0; border-bottom:1px solid rgba(255,255,255,.35); font-size:.83rem; }
.evidence { display:grid; gap:2rem; }
.evidence-media img { width:100%; min-height:17rem; object-fit:cover; }
.evidence p:not(.eyebrow) { max-width:28rem; color:var(--muted); }
.section--contact { color:var(--white); background:var(--orange); }
.section--contact .eyebrow { color:var(--white); }
.contact-cta { display:grid; gap:1.5rem; }
.contact-cta h2 { margin:0; }
.contact-cta .button { border-color:var(--deep); background:var(--deep); }
.contact-cta .button:hover { border-color:var(--blue); color:var(--white); background:var(--blue); }
.contact-cta p { margin:1rem 0 0; font-size:.9rem; }
.page-hero { padding:5rem 0 4rem; color:var(--white); background:var(--deep); }
.page-hero p:not(.eyebrow) { max-width:39rem; color:#d4e0e3; font-size:1.1rem; }
.hero--inner .hero-media { min-height:16rem; }
.hero--inner .hero-media img { object-fit:contain; background:var(--deep); }
.table-wrap { overflow-x:auto; border:1px solid var(--line); background:var(--white); }
table { width:100%; min-width:43rem; border-collapse:collapse; font-size:.82rem; }
th, td { padding:1rem; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
th { color:var(--muted); font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; }
tbody tr:last-child td { border-bottom:0; }
.method-grid { display:grid; gap:1px; background:var(--line); }
.method-grid article { padding:1.5rem; background:var(--white); }
.method-grid ul { padding-left:1.1rem; color:var(--muted); font-size:.9rem; }
.news-links { display:grid; }
.news-links a { display:grid; grid-template-columns:2.5rem 1fr auto; align-items:center; gap:.5rem; padding:1.25rem 0; border-bottom:1px solid var(--line); text-decoration:none; }
.news-links a:hover { color:var(--blue); }
.news-links span { color:var(--orange); font-size:.75rem; }
.news-links strong { font-size:1.2rem; font-weight:500; }
.news-links small { grid-column:2; color:var(--muted); }
.news-links b { grid-column:3; grid-row:1 / span 2; font-size:1.4rem; }
.content-list { display:grid; gap:1px; background:var(--line); }
.content-card { background:var(--white); }
.content-card > a { display:grid; color:inherit; text-decoration:none; }
.content-card > a:hover h2, .content-card > a:hover .text-link { color:var(--blue); }
.content-card img { width:100%; aspect-ratio:16 / 9; background:var(--paper); object-fit:cover; }
.content-card__body { padding:1.35rem; }
.content-card time { display:block; margin-bottom:.7rem; color:var(--orange); font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.content-card h2 { margin-bottom:.7rem; font-size:1.3rem; }
.content-card p { color:var(--muted); }
.content-card .text-link { margin-top:.6rem; }
.content-card .text-link b { font-size:1.2rem; }
.news-article { max-width:50rem; }
.news-article.section { padding-top:2rem; }
.section-back { margin-bottom:2rem; }
.section-back--standalone { padding-top:2rem; }
.news-article__media { width:100%; max-width:100%; min-width:0; margin:0 0 2rem; overflow:hidden; aspect-ratio:16 / 9; background:var(--deep); }
.news-article__media iframe { display:block; width:100%; max-width:100%; min-width:0; height:100%; border:0; }
.news-article h1 { color:var(--deep); font-size:clamp(2.25rem, 3vw, 3rem); }
.news-article h2 { margin-top:2.6rem; font-size:1.7rem; }
.news-article p { color:var(--muted); }
.news-article__author { margin-top:2rem; color:var(--ink) !important; font-weight:700; }
.legal { max-width:50rem; }
.legal h1 { color:var(--deep); font-size:clamp(2.8rem, 10vw, 5rem); }
.legal h2 { margin-top:2.6rem; font-size:1.7rem; }
.legal p { color:var(--muted); }
.site-footer { padding-top:3rem; color:#c1d0d6; background:#071c2b; }
.footer-grid { display:grid; gap:2rem; padding-bottom:2.5rem; }
.brand--footer { color:var(--white); }
.brand--footer small { color:#c1d0d6; }
.footer-grid h2 { margin-bottom:1rem; color:var(--white); font-size:.8rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.footer-grid a:not(.brand) { display:block; margin:.45rem 0; font-size:.86rem; text-decoration:none; }
.footer-grid p { max-width:18rem; margin-top:1rem; font-size:.82rem; }
.footer-bottom { display:flex; justify-content:space-between; gap:1rem; padding:1.25rem 0; border-top:1px solid rgba(255,255,255,.15); font-size:.7rem; }
.lead-dialog { width:min(calc(100% - 2rem), 33rem); padding:2rem; border:0; box-shadow:0 1.5rem 4rem rgba(0,0,0,.35); }
.lead-dialog::backdrop { background:rgba(7,28,43,.78); }
.lead-dialog h2 { max-width:25rem; font-size:2.25rem; }
.lead-dialog p:not(.eyebrow) { color:var(--muted); }
.lead-dialog .text-link { display:block; margin-top:1rem; }
.lead-dialog { max-height:calc(100dvh - 2rem); overflow-y:auto; }
#lead-form label { display:block; margin:1rem 0 .35rem; font-weight:600; }
#lead-form input { box-sizing:border-box; width:100%; padding:.85rem; border:1px solid #87959e; border-radius:0; background:#fff; color:var(--ink); font:inherit; font-size:1rem; }
#lead-form input:focus { outline:2px solid var(--ink); outline-offset:2px; }
#lead-form input[aria-invalid="true"] { border-color:#a32323; }
#lead-form input[aria-invalid="true"]:focus { outline-color:#a32323; }
.lead-dialog #lead-phone-error { color:#a32323; font-size:.85rem; margin:.4rem 0 0; }
#lead-form small, .lead-optional { color:var(--muted); font-size:.8rem; font-weight:400; }
#lead-form .lead-policy { font-size:.8rem; margin:1rem 0; }
#lead-form .lead-policy a { text-decoration:underline; }
#lead-form .button { width:100%; }
#lead-form .button:disabled { opacity:.65; cursor:wait; }
.lead-honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.lead-dialog #lead-status.is-error { color:#a32323; }
.lead-dialog [hidden] { display:none !important; }
.dialog-close { position:absolute; top:.75rem; right:.9rem; border:0; background:none; color:var(--ink); cursor:pointer; font-size:2rem; line-height:1; }
.not-found { min-height:55vh; }
.home-hero .hero-copy > p:not(.eyebrow):not(.hero-lead) { max-width:32rem; color:#d6e1e5; }
.home-hero .hero-facts { max-width:38rem; }
.home-about, .home-materials, .home-settings, .patent, .home-classifier { display:grid; gap:2rem; }
.home-copy { max-width:50rem; }
.home-copy--wide { max-width:64rem; }
.section--dark .home-copy > p:not(.eyebrow) { color:#bfced4; }
.home-copy p, .home-materials p, .home-settings p, .patent p { color:var(--muted); }
.home-stat-list { border-top:1px solid var(--line); }
.home-stat-list > div { display:grid; grid-template-columns:4.75rem 1fr; gap:1rem; padding:1.2rem 0; border-bottom:1px solid var(--line); }
.home-stat-list strong { color:var(--orange); font-size:1.1rem; }
.home-stat-list span { font-size:.92rem; }
.home-materials ul, .home-classifier ul { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:0; padding:0; border-top:1px solid var(--line); list-style:none; }
.home-materials li, .home-classifier li { padding:.8rem .5rem .8rem 0; border-bottom:1px solid var(--line); font-size:.88rem; }
.home-materials li::before, .home-classifier li::before { margin-right:.55rem; color:var(--orange); content:"/"; }
.home-settings ol { display:grid; gap:.75rem; margin:0; padding:0; list-style:none; counter-reset:setting; }
.home-settings li { display:grid; grid-template-columns:2.5rem 1fr; gap:.75rem; padding:.85rem 0; border-bottom:1px solid var(--line); }
.home-settings li::before { color:var(--orange); content:"0" counter(setting); counter-increment:setting; font-size:.8rem; font-weight:700; letter-spacing:.08em; }
.home-evidence .evidence-media { display:grid; place-items:center; background:var(--paper); }
.home-evidence .evidence-media img, .home-chart img, .home-equipment img { width:100%; height:auto; min-height:0; object-fit:contain; }
.work-stages { display:grid; gap:1px; margin:0; padding:0; background:rgba(255,255,255,.2); list-style:none; }
.work-stages li { display:grid; gap:.45rem; padding:1rem; background:var(--deep); }
.work-stages strong { color:#8cc9e9; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }
.work-stages span { color:#d7e2e5; font-size:.9rem; }
.patent { align-items:start; }
.patent p { color:var(--white); }
.home-results-grid { display:grid; gap:2rem; margin-bottom:2rem; }
.home-chart { margin:0; background:var(--white); }
.home-chart img { background:var(--white); }
.home-table { background:var(--white); }
.home-table th:first-child, .home-table td:first-child { min-width:15rem; }
.home-conclusions { max-width:55rem; margin-top:2rem; }
.home-conclusions h3 { margin-bottom:.8rem; }
.home-conclusions ol { display:grid; gap:.8rem; margin:0; padding-left:1.2rem; color:var(--muted); }
.home-classifier { align-items:center; }
.home-classifier ul { border-color:rgba(255,255,255,.3); }
.home-classifier li { border-color:rgba(255,255,255,.3); color:#d7e2e5; }
.home-classifier li::before { color:#8cc9e9; }
.home-equipment { margin:0; padding:1rem; background:var(--white); }
.home-equipment figcaption { margin-top:.75rem; color:var(--muted); font-size:.72rem; }
@media (min-width: 48rem) { .shell { width:min(100% - 5rem, 76rem); } .menu-button { display:none; } .site-nav { position:static; display:flex; gap:1.2rem; padding:0; border:0; background:transparent; } .site-nav a { padding:0; border:0; font-size:.68rem; } .header-phone { display:block; } .hero-grid { grid-template-columns:minmax(0,1fr) minmax(21rem,.85fr); align-items:end; min-height:39rem; padding-top:5rem; } .hero-copy { padding-bottom:4rem; } .hero-media { height:32rem; margin:0; } .hero-media img { min-height:0; } .section { padding:7rem 0; } .product-grid { grid-template-columns:repeat(3,1fr); } .product-card { min-height:29rem; padding:2rem; } .split-section { grid-template-columns:1.05fr .95fr; gap:5rem; } .process { grid-template-columns:.75fr 1.25fr; } .process .button { grid-column:1 / -1; justify-self:start; } .process ol { grid-template-columns:1fr 1fr; column-gap:2rem; } .materials { grid-template-columns:.85fr 1.15fr; gap:4rem; } .materials ul { grid-template-columns:1fr 1fr; } .evidence { grid-template-columns:1.05fr .95fr; align-items:center; gap:5rem; } .contact-cta { grid-template-columns:1.1fr .9fr; align-items:center; } .method-grid { grid-template-columns:1fr 1fr; } .content-list { grid-template-columns:repeat(3, 1fr); } .footer-grid { grid-template-columns:1.25fr .75fr 1fr; } .hero--inner .hero-grid { min-height:32rem; } }
@media (min-width: 48rem) { .home-about, .home-materials, .home-settings, .patent, .home-classifier { grid-template-columns:1fr 1fr; gap:5rem; } .home-results-grid { grid-template-columns:1fr 1fr; align-items:start; } .work-stages { grid-template-columns:1fr 1fr; } }

/* Restored homepage composition based on the original public site. */
.site-header { border:0; background:rgba(0,0,0,.93); color:var(--white); box-shadow:0 .25rem .8rem rgba(0,0,0,.4); }
.header-inner { min-height:4.4rem; }
.brand { color:var(--white); }
.brand img { width:2.8rem; height:auto; object-fit:contain; }
.brand strong { color:#e0792c; font-size:.78rem; }
.brand small { color:var(--white); font-size:.6rem; text-transform:uppercase; letter-spacing:.1em; }
.site-nav--desktop, .header-contacts { display:none; }
.menu-button { color:var(--white); }
.site-nav { color:var(--ink); }
.site-nav .button { width:100%; margin-top:.75rem; }
.news-ticker { overflow:hidden; padding:.5rem 1.25rem; color:var(--white); background:#d9752b; font-size:.75rem; letter-spacing:.04em; white-space:nowrap; text-overflow:ellipsis; }
.news-ticker a { text-decoration:none; }
.scroll-progress { position:fixed; z-index:7; top:4.4rem; left:0; width:100%; height:2px; background:rgba(217,117,43,.2); }
.scroll-progress span { display:block; width:100%; height:100%; background:#e0792c; transform:scaleX(0); transform-origin:left; }
.home-news { padding:2.5rem 0; background:#f2f2ef; }
.home-news__inner { display:grid; gap:1.5rem; }
.home-news__heading h2 { margin:0; color:var(--blue); font-size:1.85rem; }
.home-news__list { display:grid; gap:0; border-top:1px solid var(--line); }
.home-news__list article { display:grid; grid-template-columns:4.5rem 1fr; column-gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); }
.home-news time { color:var(--orange); font-size:.7rem; font-weight:700; letter-spacing:.05em; }
.home-news a { color:var(--deep); font-size:1rem; font-weight:700; line-height:1.25; text-decoration:none; }
.home-news a:hover { color:var(--orange); }
.home-news p { grid-column:2; margin:.35rem 0 0; color:var(--muted); font-size:.82rem; }
.home-news__all { justify-self:start; }
.home-hero { background:#10191d; }
.home-hero .hero-media img { background:transparent; object-fit:cover; }
.home-hero .hero-media::after { background:linear-gradient(0deg, rgba(0,0,0,.48), transparent 55%); }
.home-about__evidence { display:grid; align-content:start; gap:1.4rem; }
.home-iso { width:min(100%,15rem); max-height:11rem; object-fit:contain; object-position:left; }
.home-video { overflow:hidden; aspect-ratio:16 / 9; background:var(--deep); }
.home-video iframe { display:block; width:100%; height:100%; border:0; }
.home-materials-section, .home-settings-section, .home-classifier-section { position:relative; overflow:hidden; background-color:#132d3a; background-image:linear-gradient(90deg, rgba(5,26,38,.96), rgba(5,26,38,.76)), url('/assets/images/home-industrial-background.jpg'); background-position:center; background-size:cover; }
.home-materials-section, .home-settings-section { color:var(--white); }
.home-materials-section .home-materials p, .home-settings-section .home-settings p { color:#d7e2e5; }
.home-materials-section .home-materials ul, .home-settings-section .home-settings li { border-color:rgba(255,255,255,.35); }
.home-materials-section .button--dark { border-color:#e0792c; background:#e0792c; }
.home-principle { background:#0c202a; }
.home-principle__grid { display:grid; gap:2rem; align-items:center; }
.home-principle figure { margin:0; background:#fff; }
.home-principle figure img { width:100%; height:auto; }
.home-settings-section .home-settings li::before { color:#e0792c; }
.home-rshm-appearance { background:#f6f6f3; }
.home-fineness { position:relative; overflow:hidden; min-height:20rem; background:#071c2b; }
.home-fineness::after { position:absolute; inset:0; background:linear-gradient(90deg, rgba(0,0,0,.22), transparent); content:""; }
.home-fineness img { width:100%; min-height:20rem; object-fit:cover; }
.home-patents { background:#0b5e8e linear-gradient(90deg, rgba(7,95,150,.96), rgba(7,95,150,.73)), url('/assets/images/home-industrial-background.jpg') center / cover; }
.home-patents .patent { grid-template-columns:1fr; }
.home-patents .patent > img { width:min(100%,22rem); justify-self:center; align-self:end; background:var(--white); }
.home-contact-strip { display:grid; gap:1.25rem; align-items:center; margin-top:2rem; padding:1.5rem; color:var(--white); background:#0c2739; }
.home-contact-strip h3, .home-contact-strip p { margin-bottom:.35rem; }
.home-order-strip { padding:4.5rem 0; color:var(--white); background:linear-gradient(90deg, rgba(7,28,43,.92), rgba(7,28,43,.55)), url('/assets/images/home-contact-background.jpg') center / cover; }
.home-order-strip .shell { display:grid; gap:1.5rem; align-items:center; }
.home-order-strip h2 { margin-bottom:.7rem; }
.home-order-strip p:not(.eyebrow) { margin:0; color:#dce7eb; }
.home-comparison-image { position:relative; min-height:20rem; color:var(--white); background:#071c2b; }
.home-comparison-image img { width:100%; min-height:20rem; object-fit:cover; opacity:.7; }
.home-comparison-image .shell { position:absolute; inset:0; display:flex; align-items:end; padding-bottom:2rem; }
.home-comparison-image p { max-width:32rem; margin:0; font-size:clamp(1.8rem,4vw,3.5rem); font-weight:700; letter-spacing:-.04em; line-height:1; }
.home-classifier-section { background-image:linear-gradient(90deg, rgba(5,26,38,.94), rgba(5,26,38,.65)), url('/assets/images/home-industrial-background.jpg'); }
.home-classifier__label { margin:1.5rem 0 .5rem; color:#8cc9e9; font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.home-line-photos { background:#f7f7f5; }
.home-line-photos__grid { display:grid; gap:1rem; }
.home-line-photos__grid img { width:100%; height:17rem; object-fit:cover; }
.home-particle-results { color:var(--ink); background:#f3f3ef; }
.home-particle-results .eyebrow { color:var(--orange); }
.home-particle-results p:not(.eyebrow) { color:var(--muted); }
.home-particle-results__grid { display:grid; gap:2rem; align-items:center; }
.home-particle-results__grid img { width:100%; background:var(--white); }
.home-consultation { color:var(--white); background:linear-gradient(90deg, rgba(7,28,43,.9), rgba(7,28,43,.58)), url('/assets/images/home-contact-background.jpg') center / cover; }
.home-consultation .eyebrow { color:#f7a66d; }
.home-consultation .button { border-color:#e0792c; background:#e0792c; }
.patent-dialog { width:min(calc(100% - 2rem), 70rem); max-height:calc(100vh - 2rem); padding:2.5rem; border:0; color:var(--ink); box-shadow:0 1.5rem 4rem rgba(0,0,0,.45); }
.patent-dialog::backdrop { background:rgba(7,28,43,.8); }
.patent-dialog h2 { max-width:42rem; }
.patent-dialog__images { display:grid; gap:1.5rem; }
.patent-dialog figure { margin:0; padding:1rem; background:var(--paper); }
.patent-dialog img { width:100%; max-height:65vh; object-fit:contain; }
.patent-dialog figcaption { margin-top:.8rem; color:var(--muted); font-size:.84rem; }
.site-footer { background:#060d12; }
.site-footer .brand img { width:3.25rem; height:auto; }
.footer-socials { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1rem; }
.footer-socials a { color:#e0792c; }
.footer-iso { display:block; width:7rem; height:auto; margin-top:1rem; }
.site-map { height:22rem; border-top:1px solid rgba(255,255,255,.15); border-bottom:1px solid rgba(255,255,255,.15); background:#0d1720; }
.site-map iframe { display:block; width:100%; height:100%; border:0; filter:grayscale(1) contrast(.9) brightness(.8); }

@media (min-width: 48rem) {
    .header-inner { min-height:4.8rem; gap:.8rem; }
    .brand { min-width:15rem; }
    .site-nav--desktop { position:static; display:flex; flex:1; gap:.45rem; padding:0; color:var(--white); background:transparent; }
    .site-nav--desktop a { padding:.4rem .65rem; border:1px solid rgba(255,255,255,.65); border-radius:2rem; font-size:.56rem; letter-spacing:.06em; text-transform:uppercase; }
    .site-nav--desktop a:hover { border-color:#e0792c; color:#e0792c; }
    .header-contacts { display:grid; grid-template-columns:repeat(2, auto); column-gap:.7rem; row-gap:.1rem; text-align:right; }
    .header-contacts a { color:#e0792c; font-size:.75rem; font-weight:700; letter-spacing:.04em; text-decoration:none; }
    .header-contacts a:hover { color:var(--white); }
    .menu-button, .site-nav:not(.site-nav--desktop) { display:none; }
    .news-ticker { display:none; }
    .scroll-progress { top:4.8rem; }
    .home-news { padding:4rem 0; }
    .home-news__inner { grid-template-columns:13rem 1fr; column-gap:4rem; }
    .home-news__all { grid-column:2; }
    .home-principle__grid { grid-template-columns:1.05fr .95fr; gap:4rem; }
    .home-patents .patent { grid-template-columns:1fr 1fr .55fr; gap:3rem; }
    .home-contact-strip, .home-order-strip .shell { grid-template-columns:1fr auto; }
    .home-line-photos__grid { grid-template-columns:1.2fr .8fr; }
    .home-line-photos__grid img { height:27rem; }
    .home-particle-results__grid { grid-template-columns:1fr 1fr; gap:4rem; }
    .patent-dialog__images { grid-template-columns:1fr 1fr; }
}

@media (max-width: 63rem) {
    .site-nav--desktop, .header-contacts { display:none; }
}

/* Homepage layout refinements. */
.home-hero { background:#10191d linear-gradient(90deg, rgba(5,18,26,.92) 0%, rgba(5,18,26,.68) 47%, rgba(5,18,26,.16) 100%), url('/assets/images/home-hero-mill.jpg') center / cover; }
.home-hero .hero-grid { display:block; min-height:0; }
.home-hero .hero-copy { max-width:43rem; }
.home-hero .hero-facts { max-width:38rem; }
.home-iso { margin-top:1.5rem; }
.home-principle__grid { grid-template-columns:minmax(0, 1fr); }
.home-principle figure { width:min(100%, 19.5rem); justify-self:center; background:transparent; }
.home-principle figure img { display:block; }
.home-fineness { display:grid; min-height:12rem; align-items:end; background:#071c2b linear-gradient(90deg, rgba(4,18,27,.87), rgba(4,18,27,.25)), url('/assets/images/mill-fineness.jpg') center / cover; }
.home-fineness::after { display:none; }
.home-fineness__copy { padding:2rem 0; }
.home-fineness__copy p { max-width:39rem; margin:0; color:var(--white); font-size:clamp(1.35rem, 3vw, 2.4rem); font-weight:700; letter-spacing:-.04em; line-height:1.05; }
.home-patents .patent { position:relative; z-index:1; }
.home-results-grid { gap:2rem; }
.home-result-card { display:grid; gap:1rem; padding:1.5rem; border:1px solid var(--line); background:var(--white); }
.home-result-card h3 { margin:0; color:var(--deep); font-size:1.55rem; }
.home-result-card p { margin:0; color:var(--muted); }
.home-result-card .home-chart { margin-top:auto; }
.home-comparison-image { min-height:7rem; }
.home-comparison-image img { min-height:7rem; }
.home-comparison-image .shell { padding-bottom:1rem; }
.home-comparison-image p { max-width:25rem; font-size:clamp(1rem, 2vw, 1.4rem); line-height:1.05; }
.home-equipment { padding:0; background:transparent; }
.home-equipment figcaption { color:#cfe0e6; }
.home-line-explanation { max-width:68rem; }
.home-line-explanation > p:not(.eyebrow) { color:var(--muted); }
.home-line-diagram { width:min(100%, 22rem); margin:0 auto 1.5rem; }
.home-line-diagram img { width:100%; height:auto; }

@media (min-width: 48rem) {
    .home-hero .hero-grid { min-height:39rem; padding-top:5rem; }
    .home-hero .hero-copy { padding-bottom:4rem; }
    .home-principle__grid { grid-template-columns:minmax(0, 1fr) 19.5rem; gap:3rem; }
    .home-principle figure { width:19.5rem; justify-self:end; }
    .home-results-grid { grid-template-columns:1fr 1fr; align-items:stretch; gap:2.5rem; }
    .home-comparison-image { min-height:7rem; }
    .home-comparison-image img { min-height:7rem; }
    .home-line-diagram { float:right; width:38%; margin:.35rem 0 1.25rem 2rem; }
}

/* Explicit layers keep the original photography visible in all browsers. */
.home-hero { background-color:#10191d; background-image:linear-gradient(90deg, rgba(5,18,26,.9) 0%, rgba(5,18,26,.6) 47%, rgba(5,18,26,.08) 100%), url('/assets/images/home-hero-mill.jpg'); background-position:center; background-size:cover; }
.home-fineness { min-height:15rem; background-color:#071c2b; background-image:linear-gradient(90deg, rgba(4,18,27,.88), rgba(4,18,27,.16)), url('/assets/images/mill-fineness.jpg'); background-position:center; background-size:cover; }
.home-fineness__copy p { padding:1.35rem 1.5rem; border-left:.25rem solid #e0792c; background:rgba(3,14,22,.62); box-shadow:0 .8rem 2rem rgba(0,0,0,.2); }
.home-patents { background-color:#07283d; background-image:linear-gradient(90deg, rgba(7,28,43,.97), rgba(7,40,61,.84)), url('/assets/images/home-industrial-background.jpg'); background-position:center; background-size:cover; }
.home-patents .patent { grid-template-columns:1fr; gap:2rem; }
.home-patent-media { display:grid; min-height:14rem; margin:0; place-items:center; background:rgba(0,0,0,.12); }
.home-patent-media img { width:min(100%,20rem); max-height:22rem; object-fit:contain; }
.home-patent-copy { max-width:42rem; }
.home-comparison-image { height:5.5rem; min-height:5.5rem; }
.home-comparison-image img { height:5.5rem; min-height:5.5rem; }
.home-comparison-image .shell { padding-bottom:.75rem; }
.home-comparison-image p { max-width:22rem; font-size:clamp(.9rem, 1.6vw, 1.2rem); }

@media (min-width: 48rem) {
    .home-fineness { min-height:18rem; }
    .home-patents .patent { grid-template-columns:minmax(14rem, .65fr) minmax(0, 1fr); align-items:center; gap:4rem; }
    .home-patent-media { min-height:20rem; }
    .home-comparison-image, .home-comparison-image img { height:5.5rem; min-height:5.5rem; }
}

.home-comparison-intro { padding:4rem 0; color:var(--white); background:#0b2431; }
.home-comparison-intro .shell { display:grid; gap:2rem; align-items:center; }
.home-comparison-intro figure { margin:0; }
.home-comparison-intro figure img { width:100%; height:auto; max-height:20rem; aspect-ratio:787 / 534; object-fit:cover; }
.home-comparison-intro .eyebrow { color:#8cc9e9; }
.home-comparison-intro h2 { max-width:32rem; }
.home-comparison-intro p:not(.eyebrow) { max-width:34rem; margin-bottom:0; color:#d0e0e5; }

/* The patent illustration fills its column rather than sitting on a card. */
.home-patents { padding:0; }
.home-patents .patent { min-height:31rem; }
.home-patent-media { align-self:stretch; min-height:0; place-items:stretch end; background:transparent; }
.home-patent-media img { width:auto; height:100%; max-width:100%; max-height:none; object-fit:contain; object-position:right center; }
.home-patent-copy { padding:4rem 0; }
.home-fineness__copy p { font-size:clamp(1.15rem, 2vw, 1.8rem); }

@media (min-width: 48rem) {
    .home-comparison-intro .shell { grid-template-columns:minmax(18rem, .8fr) minmax(0, 1fr); gap:4rem; }
}

@media (max-width: 47.99rem) {
    .home-patents { padding:3.5rem 0; }
    .home-patents .patent { min-height:0; }
    .home-patent-media { min-height:15rem; place-items:center; }
    .home-patent-media img { width:min(100%,20rem); height:auto; max-height:18rem; }
    .home-patent-copy { padding:0; }
}

/* Markdown sections are composed by PHP; content files never carry presentation markup. */
.content-section { padding:4.5rem 0; }
.content-section--paper { background:var(--paper); }
.content-section--dark { color:var(--white); background:var(--deep); }
.content-section--dark .eyebrow, .content-section--industrial .eyebrow { color:var(--orange-bright); }
.content-section--accent { color:var(--white); background:var(--blue); }
.prose { max-width:60rem; }
.prose > :last-child { margin-bottom:0; }
.prose > .eyebrow + :is(h1, h2, h3, h4, h5, h6) { margin-top:0; }
.prose p, .prose li { color:var(--muted); }
.prose h2, .prose h3 { margin-top:2rem; }
.prose h1 + p { max-width:42rem; font-size:1.15rem; }
.prose img { width:100%; margin:2rem 0; background:var(--paper); }
.prose table { margin:1.5rem 0; }
.content-section--table .prose, .content-section--article .prose { overflow-x:auto; }
.content-section--table .prose { max-width:none; }
.content-section--dark .prose p, .content-section--dark .prose li, .content-section--industrial .prose p, .content-section--industrial .prose li, .content-section--accent .prose p, .content-section--accent .prose li { color:rgba(255,255,255,.82); }
.content-section--dark .prose a:not([href="#lead"]), .content-section--industrial .prose a:not([href="#lead"]), .content-section--accent .prose a:not([href="#lead"]) { color:var(--white); }
.content-section__grid { display:grid; gap:2rem; align-items:center; }
.content-section__media { margin:0; overflow:hidden; background:var(--paper); }
.content-section__media img { width:100%; min-height:17rem; object-fit:cover; }
.content-section__video { position:relative; aspect-ratio:16 / 9; background:var(--deep); }
.content-section__video iframe, .content-section__video video { display:block; width:100%; height:100%; border:0; }
.video-preview-play { position:absolute; inset:0; display:grid; place-items:center; width:100%; height:100%; padding:0; border:0; background:transparent; cursor:pointer; }
.video-preview-play[hidden] { display:none; }
.video-preview-play::before { content:"▶"; display:grid; place-items:center; width:72px; height:72px; padding-left:4px; border-radius:50%; background:rgba(0,0,0,.75); color:#fff; font-size:32px; }
.video-preview-play:hover::before { background:#000; }
.video-preview-play:focus-visible { outline:3px solid #fff; outline-offset:-6px; }
.prose .video-channels { margin-top:12px; font-size:16px; }
.video-channels a { display:inline-block; padding:4px 0; }
.content-section__columns { display:grid; gap:2rem; }
.content-section__columns > .prose { max-width:none; }
.content-section__columns > .prose + .prose { align-content:start; }
.content-section__columns > .prose + .prose > ul:not(.list--compact) { display:grid; grid-template-columns:4.75rem minmax(0,1fr); margin:0; padding:0; list-style:none; }
.content-section__columns > .prose + .prose > ul:not(.list--compact) > li { padding:1.2rem 0; border-bottom:1px solid var(--line); color:var(--ink); font-size:.92rem; }
.content-section__columns > .prose + .prose > ul:not(.list--compact) > li:nth-child(even) { padding-left:1rem; }
.content-section__columns > .prose + .prose > ul:not(.list--compact) > li > p { margin:0; color:inherit; }
.content-section__columns > .prose + .prose > ul:not(.list--compact) > li:nth-child(odd) { color:#e0792c; font-size:1.1rem; }
.content-section__columns > .prose + .prose > ul + .content-section__video { margin-top:1em; }
.content-section--paper .content-section__columns img { width:min(100%,15rem); max-height:11rem; object-fit:contain; object-position:left; }
.prose .list--compact { display:grid; gap:.45rem; padding:0; font-size:.82rem; list-style:none; }
.prose .list--compact li::before { margin-right:.6rem; color:var(--orange); content:"/"; }
.content-section__columns > .prose + .prose > .list--compact { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:0; border-top:1px solid var(--compact-list-line, var(--line)); }
.content-section__columns > .prose + .prose > .list--compact li { padding:.85rem .5rem .85rem 0; border-bottom:1px solid var(--compact-list-line, var(--line)); }
.content-section--dark .content-section__columns, .content-section--industrial .content-section__columns, .content-section--accent .content-section__columns { --compact-list-line:rgba(255,255,255,.35); }
.content-section--features .prose > ol { display:grid; gap:1px; margin:0; padding:0; background:rgba(255,255,255,.2); list-style:none; }
.content-section--features .prose > ol > li { padding:1rem; background:var(--deep); }
.content-section--features .prose > ol > li > strong { display:block; margin-bottom:.45rem; color:var(--orange-bright); font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }
.content-section--features .prose > ul { display:grid; gap:.75rem; padding-left:1.25rem; }
.content-section--cards .prose h3 { padding-top:1.5rem; border-top:1px solid var(--line); }
.content-section--news .shell { display:grid; gap:2rem; }
.content-section__news { display:grid; gap:0; border-top:1px solid var(--line); }
.content-section__news-column { display:grid; gap:1.5rem; }
.content-section__news article { padding:1.25rem 0; border-bottom:1px solid var(--line); }
.content-section__news time { color:var(--orange); font-size:.75rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.content-section__news h3 { margin:.4rem 0; font-size:1.2rem; }
.content-section__news h3 a { color:var(--ink); text-decoration:none; }
.content-section__news p { margin:0; color:var(--muted); }
.prose > p > a[href="#lead"]:only-child { display:inline-flex; align-items:center; justify-content:center; min-height:3rem; padding:.8rem 1.1rem; border:1px solid var(--orange); color:var(--white); background:var(--orange); cursor:pointer; font-size:.75rem; font-weight:700; letter-spacing:.08em; text-align:center; text-decoration:none; text-transform:uppercase; }
.prose > p > a[href="#lead"]:only-child:hover { border-color:#8f3512; color:var(--white); background:#8f3512; }
.content-section--dark .prose > p > a[href="#lead"]:only-child, .content-section--industrial .prose > p > a[href="#lead"]:only-child, .content-section--accent .prose > p > a[href="#lead"]:only-child { border-color:var(--white); background:var(--white); color:var(--deep); }
@media (min-width:48rem) { .content-section { padding:7rem 0; } .content-section__grid, .content-section__columns { grid-template-columns:minmax(0,1fr) minmax(20rem,1fr); gap:5rem; } .content-section--grid-2-1 .content-section__columns { grid-template-columns:minmax(0,2fr) minmax(0,1fr); } .content-section--grid-2-1 .content-section__columns > .prose + .prose > p:first-child > img:only-child { width:min(100%,19.5rem); margin-left:auto; margin-right:0; } .content-section--features .prose > ol { grid-template-columns:repeat(2, minmax(0,1fr)); } .content-section--news .shell { grid-template-columns:.75fr 1.25fr; gap:5rem; } .content-section--cards .prose { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:0 3rem; } .content-section--cards .prose > h2, .content-section--cards .prose > p:last-child { grid-column:1 / -1; } }

/* Optional background photography is decorative; theme supplies its base color and overlay. */
.content-section--has-background { position:relative; overflow:hidden; padding:3.5rem 0; }
.content-section__background { position:absolute; inset:0; background-color:var(--section-background-color); background-image:var(--section-background-overlay), var(--section-background-image); background-position:center; background-size:cover; pointer-events:none; }
.content-section--has-background .shell { position:relative; z-index:1; }
.content-section--light.content-section--has-background { --section-background-color:var(--white); --section-background-overlay:linear-gradient(90deg, rgba(255,255,255,.96), rgba(255,255,255,.32)); }
.content-section--paper.content-section--has-background { --section-background-color:var(--paper); --section-background-overlay:linear-gradient(90deg, rgba(244,245,240,.96), rgba(244,245,240,.34)); }
.content-section--dark.content-section--has-background { --section-background-color:#10191d; --section-background-overlay:linear-gradient(90deg, rgba(5,18,26,.92) 0%, rgba(5,18,26,.68) 47%, rgba(5,18,26,.16) 100%); }
.content-section--industrial { color:var(--white); background:#132d3a; }
.content-section--industrial.content-section--has-background { --section-background-color:#132d3a; --section-background-overlay:linear-gradient(90deg, rgba(5,26,38,.96), rgba(5,26,38,.76)); }
.content-section--accent.content-section--has-background { --section-background-color:var(--blue); --section-background-overlay:linear-gradient(90deg, rgba(7,95,150,.95), rgba(7,95,150,.28)); }
.content-section--has-background .eyebrow, .content-section--has-background h1 strong, .content-section--has-background h2 strong { color:var(--orange-bright); }
.content-section--has-background .prose > p:has(> a[href="#lead"]:only-child) { margin:1.6rem 0; }
.content-section--has-background .prose > p > a[href="#lead"]:only-child { border-color:var(--orange); color:var(--white); background:var(--orange); }
.content-section--has-background .prose > p > a[href="#lead"]:only-child:hover { border-color:#8f3512; color:var(--white); background:#8f3512; }
@media (min-width:48rem) { .content-section--has-background { min-height:39rem; padding-top:5rem; } .content-section--has-background .prose { padding-bottom:4rem; } }

/* Keep the iterative homepage news feed as compact as the legacy homepage. */
.content-section--news { padding:2.5rem 0; background:#f2f2ef; }
.content-section--news .shell { gap:1.5rem; }
.content-section--news .prose h2 { margin:0; color:var(--blue); font-size:1.85rem; }
.content-section__news article { display:grid; grid-template-columns:6.8rem minmax(0, 1fr); column-gap:1.25rem; padding:1rem 0; }
.content-section__news time { white-space:nowrap; }
.content-section__news h3 { grid-column:2; margin:0; font-size:1rem; letter-spacing:normal; line-height:1.25; }
.content-section__news h3 a { font-weight:700; }
.content-section__news h3 a:hover { color:var(--orange); }
.content-section__news p { grid-column:2; margin:.35rem 0 0; font-size:.82rem; }
@media (max-width:47.99rem) { .content-section__news p { display:none; } }
@media (min-width:48rem) { .content-section--news { padding:4rem 0; } .content-section--news .shell { grid-template-columns:13rem minmax(0,1fr); column-gap:4rem; } }

/* The structured homepage follows the hand-composed homepage from settings onward. */
.content-section--name-settings .content-section__columns > .prose + .prose > ol { display:grid; gap:.75rem; margin:0; padding:0; list-style:none; counter-reset:setting; }
.content-section--name-settings .content-section__columns > .prose + .prose > ol > li { display:grid; grid-template-columns:2.5rem 1fr; gap:.75rem; padding:.85rem 0; border-bottom:1px solid rgba(255,255,255,.35); color:rgba(255,255,255,.82); }
.content-section--name-settings .content-section__columns > .prose + .prose > ol > li::before { color:#e0792c; content:"0" counter(setting); counter-increment:setting; font-size:.8rem; font-weight:700; letter-spacing:.08em; }

.content-section--name-appearance .content-section__columns > .prose:first-child { order:2; }
.content-section--name-appearance .content-section__columns > .prose + .prose { display:grid; order:1; place-items:center; background:var(--paper); }
.content-section--name-appearance .content-section__columns > .prose + .prose img { width:100%; max-height:none; margin:0; object-fit:contain; }
.content-section--name-appearance .content-section__columns > .prose + .prose > p { margin:0; }
.content-section--name-appearance .prose > p > a[href="#lead"]:only-child { border-color:var(--deep); color:var(--white); background:var(--deep); }
.content-section--name-appearance .prose > p > a[href="#lead"]:only-child:hover { border-color:var(--blue); color:var(--white); background:var(--blue); }

.content-section--name-fineness { display:grid; min-height:15rem; align-items:end; padding:0; }
.content-section--name-fineness .shell { width:min(100% - 2.5rem, 76rem); }
.content-section--name-fineness .prose { padding:2rem 0; }
.content-section--name-fineness .prose p { max-width:39rem; margin:0; padding:1.35rem 1.5rem; border-left:.25rem solid #e0792c; color:var(--white); background:rgba(3,14,22,.62); box-shadow:0 .8rem 2rem rgba(0,0,0,.2); font-size:clamp(1.15rem,2vw,1.8rem); font-weight:700; letter-spacing:-.04em; line-height:1.05; }

.content-section--name-stages .prose { max-width:none; }
.content-section--name-stages.content-section--features .prose > ol > li > strong { color:#8cc9e9; }

.content-section--name-results .home-result-card.prose { align-content:start; }
.content-section--name-results .home-result-card.prose h3 { margin:0; }
.content-section--name-results .home-result-card.prose p { margin:0; }
.content-section--name-results .home-result-card.prose p:has(> img:only-child) { align-self:end; margin-top:auto; background:var(--white); }
.content-section--name-results .home-result-card.prose img { width:100%; margin:0; background:var(--white); object-fit:contain; }
.content-section--name-results .home-contact-strip .button { justify-self:start; }

.content-section--name-order { min-height:0; padding:4.5rem 0; }
.content-section--name-order .content-section__columns { align-items:center; }
.content-section--name-order .content-section__columns > .prose { padding:0; }
.content-section--name-order .content-section__columns > .prose + .prose { justify-self:start; }
.content-section--name-order .prose p:not(.eyebrow) { color:#dce7eb; }

.content-section--name-comparison-intro { padding:4rem 0; background:#0b2431; }
.content-section--name-comparison-intro .content-section__columns > .prose:first-child { order:2; }
.content-section--name-comparison-intro .content-section__columns > .prose + .prose { order:1; }
.content-section--name-comparison-intro .content-section__columns > .prose + .prose > p { margin:0; }
.content-section--name-comparison-intro .content-section__columns img { width:100%; max-height:20rem; margin:0; aspect-ratio:787 / 534; background:transparent; object-fit:cover; }
.content-section--name-comparison-intro .eyebrow { color:#8cc9e9; }

.content-section--table .prose table { border:1px solid var(--line); background:var(--white); }
.content-section--table .prose table th:first-child, .content-section--table .prose table td:first-child { min-width:15rem; }
.content-section--name-efficiency .prose h3 { margin-top:2rem; }
.content-section--name-efficiency .prose ol { display:grid; max-width:55rem; gap:.8rem; padding-left:1.2rem; color:var(--muted); }

.content-section--name-classifier .content-section__columns > .prose:first-child > h3 { margin:1.5rem 0 .5rem; color:#8cc9e9; font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.content-section--name-classifier .content-section__columns > .prose:first-child > .list--compact { grid-template-columns:1fr; gap:0; border-top:1px solid rgba(255,255,255,.3); }
.content-section--name-classifier .content-section__columns > .prose:first-child > .list--compact li { padding:.8rem .5rem .8rem 0; border-bottom:1px solid rgba(255,255,255,.3); color:#d7e2e5; font-size:.88rem; }
.content-section--name-classifier .content-section__columns > .prose:first-child > p > a[href="/separator"]:only-child { display:inline-flex; min-height:3rem; align-items:center; justify-content:center; padding:.8rem 1.1rem; border:1px solid var(--white); color:var(--deep); background:var(--white); font-size:.75rem; font-weight:700; letter-spacing:.08em; text-align:center; text-decoration:none; text-transform:uppercase; }
.content-section--name-classifier .content-section__columns > .prose:first-child > p > a[href="/separator"]:only-child:hover { border-color:#dce7eb; color:var(--deep); background:#dce7eb; }
.content-section--name-classifier .content-section__columns > .prose + .prose > p { margin:0; }
.content-section--name-classifier .content-section__columns > .prose + .prose img { width:100%; max-height:38rem; margin:0; background:transparent; object-fit:contain; }
.content-section--name-classifier .content-section__columns > .prose + .prose > p:last-child { margin-top:.75rem; color:#cfe0e6; font-size:.72rem; }

.content-section--name-classifier-use .prose { max-width:64rem; }

.content-section--name-line-gallery { background:#f7f7f5; }
.content-section--name-line-gallery .prose { max-width:none; }
.content-section--name-line-gallery .prose > p:has(> img:only-child) { margin:1rem 0 0; }
.content-section--name-line-gallery .prose img { width:100%; height:17rem; margin:0; object-fit:cover; }

.content-section--name-line-explanation .prose { max-width:68rem; }
.content-section--name-line-explanation .prose > p:has(> img:only-child) { width:min(100%,22rem); margin:0 auto 1.5rem; }
.content-section--name-line-explanation .prose img { width:100%; height:auto; margin:0; object-fit:contain; }

.content-section--name-particle-results .content-section__columns > .prose + .prose { align-self:center; }
.content-section--name-particle-results .content-section__columns > .prose + .prose > p { margin:0; }
.content-section--name-particle-results .content-section__columns > .prose + .prose img { width:100%; max-height:none; margin:0; background:var(--white); object-fit:contain; }

.content-section--name-consultation { min-height:0; padding:4.5rem 0; }
.content-section--name-consultation .content-section__columns { align-items:center; }
.content-section--name-consultation .content-section__columns > .prose { padding:0; }

@media (min-width:48rem) {
    .content-section--name-appearance .content-section__columns { grid-template-columns:1.05fr .95fr; }
    .content-section--name-fineness { min-height:18rem; padding:0; }
    .content-section--name-fineness .prose { padding:2rem 0; }
    .content-section--name-order { min-height:0; padding:4.5rem 0; }
    .content-section--name-order .content-section__columns { grid-template-columns:1fr auto; }
    .content-section--name-comparison-intro .content-section__columns { grid-template-columns:minmax(18rem,.8fr) minmax(0,1fr); gap:4rem; }
    .content-section--name-classifier .content-section__columns > .prose:first-child > .list--compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .content-section--name-line-gallery .prose { display:grid; grid-template-columns:1.2fr .8fr; gap:0 1rem; }
    .content-section--name-line-gallery .prose > :not(p:has(> img:only-child)) { grid-column:1 / -1; }
    .content-section--name-line-gallery .prose > p:has(> img:only-child) { grid-row:4; }
    .content-section--name-line-gallery .prose img { height:27rem; }
    .content-section--name-line-explanation .prose > p:has(> img:only-child) { float:right; width:38%; margin:.35rem 0 1.25rem 2rem; }
    .content-section--name-consultation { min-height:0; padding:7rem 0; }
    .content-section--name-consultation .content-section__columns { grid-template-columns:1.1fr .9fr; }
    .content-section--name-results .home-contact-strip .button { justify-self:end; }
}
/* Long legal headings must fit narrow screens. */
.legal h1 { overflow-wrap: anywhere; }
.content-card__image { height: auto; }
@media (max-width: 480px) {
    .legal h1 { font-size: 1.75rem; }
}
