/* Four information pages: dark editorial content within the existing black brand shell. */
html body.page-information {background:#111!important}
html body.page-information #main {--ink:#f5f5f5;--muted:#bfc3c7;--line:#383838;--paper:#111;--mist:#171717;background:#111!important;color-scheme:dark}
html body.page-information #main,html body.page-information #main * {color:#f5f5f5!important}
html body.page-information #main :is(section,article,aside,.purpose-statements,.values-grid,.about-content,.security-layout,.security-layout>div) {background-color:transparent!important}
html body.page-information #main p {color:#bfc3c7!important;line-height:1.8}
html body.page-information #main :is(.eyebrow,.service-no,.purpose-number) {color:#ef4050!important}
html body.page-information #main .eyebrow {font-size:.875rem;letter-spacing:.13em;font-weight:600}
html body.page-information #main .page-heading {max-width:1440px;margin:0 auto;padding:65px 6vw 45px;text-align:left;border:0}
html body.page-information #main h1 {font-size:clamp(2.6rem,4.4vw,4.8rem);max-width:1050px;white-space:normal;letter-spacing:-.045em;line-height:1.12!important}
html body.page-information #main h2 {font-size:clamp(1.8rem,2.5vw,2.8rem);line-height:1.2!important}
html body.page-information #main :is(.button,.button.light) {background:#be1e2d!important;border-color:#be1e2d!important;border-radius:3px;min-height:48px}
html body.page-information #main :is(.button,.button.light),html body.page-information #main :is(.button,.button.light) * {color:white!important}
html body.page-information #main :is(.button,.button.light):hover {background:#991823!important;border-color:#991823!important;box-shadow:none}
html body.page-information #main .text-link {border-color:#777!important;padding:10px 0;min-height:44px}
html body.page-information #main :is(a,button,input):focus-visible {outline:2px solid #ef4050!important;outline-offset:4px}
html body.page-information #main .cta {background:#171717!important;padding:48px 6vw;max-width:none;border-top:1px solid #383838}
html body.page-information #main .cta h2 {max-width:780px;font-size:clamp(1.8rem,3vw,3rem)}
/* Projects: photographs lead, with quiet white captions. */
html body.page-journal #main .page-heading {display:block;padding-bottom:30px}
html body.page-journal #main .gallery-intro {max-width:620px;font-size:1.0625rem;margin:22px 0 0}
html body.page-journal #main .gallery-controls {border-color:#383838!important;gap:12px;margin-top:25px;padding-top:18px}
html body.page-journal #main .gallery-controls button {background:#111!important;color:#f5f5f5!important;border:1px solid #484848!important;padding:12px 18px;min-height:46px;box-shadow:none}
html body.page-journal #main .gallery-controls button[aria-pressed=true] {background:#303030!important;border-color:#777!important;color:#f5f5f5!important}
html body.page-journal #main .gallery-controls button[aria-pressed=true] * {color:#f5f5f5!important}
html body.page-journal #main .gallery-grid {background:#111!important;padding:30px 6vw 60px;max-width:none;gap:32px 24px;grid-template-columns:repeat(3,minmax(0,1fr))}
html body.page-journal #main .gallery-item {padding:0;margin:0;grid-column:auto;min-width:0;max-width:none}
html body.page-journal #main .gallery-item button {border-radius:4px;background:#1b1b1b!important;overflow:hidden}
html body.page-journal #main .gallery-item button img {aspect-ratio:3/4;object-fit:cover;filter:none;border-radius:4px}
html body.page-journal #main .gallery-item figcaption {padding:17px 0 0;border-top:0}
html body.page-journal #main .gallery-item h2 {font-size:1.35rem;line-height:1.35!important}
html body.page-journal #main .gallery-item p {font-size:.9375rem;margin:8px 0 0}
html body.page-journal #main .gallery-item button span {color:#f5f5f5!important}
html body.page-journal #main .lightbox,html body.page-journal #main .lightbox * {color:#f5f5f5!important}
html body.page-journal #main .lightbox {background:#111!important}
/* Protection: technical information separated from the actual sample photography. */
html body.page-protection #main .security-heading {background:#171717!important;max-width:none;padding-bottom:38px}
html body.page-protection #main .security-heading h1 {max-width:1050px}
html body.page-protection #main .contact-lead {max-width:760px;margin-top:25px;font-size:1.0625rem}
html body.page-protection #main .technical-rule {border-color:#484848!important;margin-top:35px;font-size:.875rem}
html body.page-protection #main .technical-rule span {color:#bfc3c7!important}
html body.page-protection #main .security-layout {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5vw;padding:55px 6vw;align-items:start}
html body.page-protection #main .security-layout figure {margin:0;padding:20px;background:#171717!important;border-radius:4px}
html body.page-protection #main .security-layout img {height:auto;max-height:600px;width:100%;object-fit:contain;filter:none}
html body.page-protection #main .security-layout figcaption {color:#bfc3c7!important;font-size:.875rem;line-height:1.7;margin-top:15px}
html body.page-protection #main .security-layout article {padding:28px;border:1px solid #383838!important;margin:0 0 20px;background:#111!important;border-radius:4px;border-top:3px solid #ef4050!important}
html body.page-protection #main .security-layout article h2 {font-size:clamp(1.6rem,2vw,2.2rem)}
html body.page-protection #main .sample-study {background:#171717!important;padding:55px 6vw;gap:5vw}
html body.page-protection #main .sample-study img {background:#111!important;border-radius:4px;filter:none}
html body.page-protection #main .sample-study figcaption {font-size:.875rem;color:#bfc3c7!important}
/* About: architecture, company story, services and values have distinct sections. */
html body.page-brand #main .brand-editorial {display:grid;grid-template-columns:1fr 1fr;background:#171717!important;align-items:stretch}
html body.page-brand #main .brand-editorial .page-heading {display:flex;flex-direction:column;justify-content:center;padding:65px 6vw;max-width:none;min-height:440px}
html body.page-brand #main .brand-editorial h1 {font-size:clamp(2.7rem,4vw,4.6rem);white-space:pre-line}
html body.page-brand #main .brand-editorial figure {margin:0;min-height:440px;height:100%}
html body.page-brand #main .brand-editorial img {height:100%;width:100%;object-fit:cover}
html body.page-brand #main .about-photo {display:none}
html body.page-brand #main .about-content {display:grid;grid-template-columns:1fr 2fr;gap:6vw;padding:65px 6vw;max-width:1440px;margin:auto}
html body.page-brand #main .about-content aside {border-left:3px solid #ef4050;padding-left:25px;align-self:start}
html body.page-brand #main .about-content strong {color:#ef4050!important;font-size:clamp(3rem,5vw,5.5rem);line-height:1.2}
html body.page-brand #main .about-content article {max-width:780px}
html body.page-brand #main .intro {background:#171717!important;max-width:none;padding:55px 6vw;border:0}
html body.page-brand #main .service {padding:55px 6vw;max-width:1440px;margin:auto}
html body.page-brand #main .service-grid {gap:28px}
html body.page-brand #main .service-grid>div {border-top:1px solid #383838;padding-top:24px}
html body.page-brand #main .service-no {font-size:1rem;display:block;margin-bottom:16px}
html body.page-brand #main .brand-purpose {background:#171717!important;padding:55px 6vw;gap:5vw}
html body.page-brand #main .purpose-statements article {border-color:#383838!important}
html body.page-brand #main .brand-values {background:#111!important;padding:55px 6vw}
html body.page-brand #main .values-grid {gap:24px}
html body.page-brand #main .values-grid article {background:#1b1b1b!important;padding:25px;border:1px solid #383838!important;border-top:3px solid #ef4050!important}
/* Warranty: a real home anchors the warranty number and enquiry information. */
html body.page-warranty #main .warranty-hero {display:grid;grid-template-columns:1.05fr 1fr;align-items:stretch;background:#171717!important}
html body.page-warranty #main .warranty-hero .page-heading {padding:60px 6vw;min-height:440px;display:flex;flex-direction:column;justify-content:center}
html body.page-warranty #main .warranty-hero figure {margin:0;height:440px}
html body.page-warranty #main .warranty-hero img {width:100%;height:100%;object-fit:cover;object-position:center 38%}
html body.page-warranty #main .warranty {display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:40px;background:#111!important;padding:45px 6vw;max-width:1440px;margin:auto}
html body.page-warranty #main .warranty-number {color:#ef4050!important;font-size:clamp(7rem,12vw,12rem);letter-spacing:-.07em;line-height:1}
html body.page-warranty #main .warranty p {max-width:520px}
html body.page-warranty #main .warranty-details {background:#171717!important;margin:0;max-width:none;padding:48px 6vw 60px;border-top:1px solid #383838}
html body.page-warranty #main .warranty-details p {max-width:750px;margin:22px 0 28px}
@media(max-width:1000px){html body.page-journal #main .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html body.page-warranty #main .warranty{grid-template-columns:auto minmax(0,1fr)}html body.page-warranty #main .warranty>.text-link{grid-column:2}}
@media(max-width:760px){
html body.page-information #main .page-heading{padding:38px 24px 30px}html body.page-information #main h1{font-size:clamp(2.4rem,8vw,3.5rem)}html body.page-information #main .cta{padding:36px 24px;flex-direction:column;align-items:flex-start;gap:25px}
html body.page-journal #main .gallery-grid{padding:24px 20px 40px;gap:28px 18px}html body.page-journal #main .gallery-item h2{font-size:1.2rem}
html body.page-protection #main .security-layout{grid-template-columns:1fr;padding:30px 24px;gap:30px}html body.page-protection #main .sample-study{grid-template-columns:1fr;padding:36px 24px}html body.page-protection #main .security-layout article{padding:24px}
html body.page-brand #main .brand-editorial{grid-template-columns:1fr}html body.page-brand #main .brand-editorial .page-heading{padding:38px 24px;min-height:0}html body.page-brand #main .brand-editorial figure{height:340px;min-height:0}html body.page-brand #main .about-content{grid-template-columns:1fr;padding:38px 24px;gap:30px}html body.page-brand #main :is(.intro,.service,.brand-purpose,.brand-values){padding:38px 24px}html body.page-brand #main .brand-purpose{grid-template-columns:1fr}
html body.page-warranty #main .warranty-hero{grid-template-columns:1fr}html body.page-warranty #main .warranty-hero .page-heading{padding:38px 24px;min-height:0}html body.page-warranty #main .warranty-hero figure{height:320px}html body.page-warranty #main .warranty{padding:35px 24px;gap:25px}html body.page-warranty #main .warranty-details{padding:38px 24px}
}
@media(max-width:480px){html body.page-journal #main .gallery-grid{grid-template-columns:1fr}html body.page-brand #main .values-grid{grid-template-columns:1fr}html body.page-warranty #main .warranty{grid-template-columns:1fr}html body.page-warranty #main .warranty>.text-link{grid-column:1}}

/* Selected Product Design concept: Seamless service. */
html body.page-brand #main .service {max-width:none;margin:0;padding:60px 4vw 55px;border:0;background:#111!important}
html body.page-brand #main .service>.eyebrow {text-align:left;margin:0 0 36px;font-size:.875rem;letter-spacing:.13em}
html body.page-brand #main .service-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
html body.page-brand #main .service-grid>div {padding:0;border:0;min-width:0}
html body.page-brand #main .service-no {display:flex;align-items:center;gap:22px;font-size:clamp(2.5rem,3.2vw,3.5rem);font-weight:300;line-height:1.1;margin:0 0 25px}
html body.page-brand #main .service-no:after {content:'';height:1px;flex:1;background:#484848}
html body.page-brand #main .service-grid h3 {font-size:clamp(1.35rem,1.8vw,1.9rem);line-height:1.25!important;margin:0 0 12px;letter-spacing:-.025em}
html body.page-brand #main .service-grid p {font-size:clamp(1rem,1.15vw,1.2rem);line-height:1.6;margin:0}
html body.page-brand #main .brand-purpose {display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:4vw;align-items:center;padding:58px 4vw 65px;background:#171717!important}
html body.page-brand #main .purpose-heading>.eyebrow {display:none}
html body.page-brand #main .purpose-heading h2 {font-size:clamp(2.1rem,3.3vw,3.7rem);line-height:1.16!important;letter-spacing:-.04em;white-space:pre-line;margin:0}
html body.page-brand #main .purpose-statements {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start;min-width:0}
html body.page-brand #main .purpose-statements article {display:block;padding:0 0 0 26px;margin:0;border:0;border-left:3px solid #ef4050!important;min-width:0;background:transparent!important}
html body.page-brand #main .purpose-number {display:none}
html body.page-brand #main .purpose-statements h3 {font-size:clamp(1.35rem,1.8vw,1.9rem);line-height:1.2!important;margin:0 0 18px;letter-spacing:-.025em}
html body.page-brand #main .purpose-statements p {font-size:clamp(1rem,1.05vw,1.125rem);line-height:1.65;margin:0;max-width:34ch}
@media(max-width:1100px){html body.page-brand #main .brand-purpose{grid-template-columns:1fr;gap:35px}html body.page-brand #main .purpose-heading h2{font-size:2.5rem}html body.page-brand #main .purpose-statements p{max-width:50ch}}
@media(max-width:760px){html body.page-brand #main .service{padding:38px 24px}html body.page-brand #main .service>.eyebrow{margin-bottom:28px;line-height:1.6}html body.page-brand #main .service-grid{grid-template-columns:1fr;gap:28px}html body.page-brand #main .service-no{font-size:2.4rem;margin-bottom:16px}html body.page-brand #main .service-grid h3{font-size:1.5rem;margin-bottom:8px}html body.page-brand #main .brand-purpose{padding:38px 24px;gap:32px}html body.page-brand #main .purpose-heading h2{font-size:clamp(1.9rem,6.5vw,2.5rem);white-space:normal}html body.page-brand #main .purpose-statements{grid-template-columns:1fr;gap:28px}html body.page-brand #main .purpose-statements article{padding-left:20px}html body.page-brand #main .purpose-statements h3{font-size:1.5rem;margin-bottom:12px}}
