/* Brand detail pages — shared WES typography, colour and photographic treatment. */
.brand-page{--brand-navy:#162530}
.brand-page main{padding-top:var(--header-height)}
.brand-breadcrumb{display:flex;align-items:center;gap:13px;min-height:58px;color:var(--muted);font-size:11px;line-height:1.4}
.brand-breadcrumb a:hover{color:var(--red)}
.brand-breadcrumb span[aria-hidden]{color:#9b9892}
.brand-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--brand-navy);color:var(--paper)}
.brand-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.brand-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(22,37,48,.95) 0%,rgba(22,37,48,.87) 35%,rgba(22,37,48,.45) 64%,rgba(22,37,48,.07) 100%)}
.brand-hero--wes .brand-hero-photo{object-position:42% 45%}
.brand-hero--sterna .brand-hero-photo{object-position:center 58%}
.brand-hero-inner{min-height:490px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:62px 66px}
.brand-hero .eyebrow{font-size:11px;color:var(--stone);font-weight:400;display:flex;align-items:center;gap:12px}
.brand-hero .eyebrow::before{content:'';width:6px;height:6px;background:var(--red);border-radius:50%;flex:0 0 auto}
.brand-hero h1{font-size:clamp(48px,4.7vw,68px);line-height:1.08;font-weight:400;max-width:690px;letter-spacing:-.035em;margin:25px 0 22px;text-shadow:none}
.brand-hero-copy{max-width:545px;font-size:15px;line-height:1.8;color:var(--paper)}
.brand-hero .button{margin-top:29px;min-width:170px}
.brand-section{padding:78px 0}
.brand-section--stone{background:var(--stone)}
.brand-section--ruled{border-top:1px solid var(--line)}
.brand-intro{display:grid;grid-template-columns:1fr 1.08fr;gap:100px}
.brand-intro .eyebrow,.brand-heading .eyebrow{color:var(--red);margin-bottom:19px}
.brand-page h2{font-size:44px;line-height:1.12;letter-spacing:-.025em;font-weight:400}
.brand-page h3{font-weight:400}
.brand-intro-copy{padding-top:5px}
.brand-intro-copy p{font-size:15px;line-height:1.85;color:var(--muted)}
.brand-intro-copy p+p{margin-top:18px}
.brand-intro-copy .brand-lead{font-size:19px;line-height:1.6;color:var(--ink)}
.brand-audiences{margin-top:44px;padding-top:24px;border-top:1px solid var(--line)}
.brand-label{font:700 10px/1.5 var(--sans);letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.brand-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:21px}
.brand-audience{padding-right:25px;border-right:1px solid var(--line)}
.brand-audience:last-child{border-right:0;padding-right:0}
.brand-audience h3{font-family:var(--sans);font-size:15px;line-height:1.45;letter-spacing:0;font-weight:500;margin-bottom:9px}
.brand-audience p{font-size:13px;line-height:1.75;color:var(--muted);max-width:350px}
.brand-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:end;margin-bottom:36px}
.brand-heading>p{max-width:430px;justify-self:end;font-size:14px;line-height:1.85;color:var(--muted)}
.brand-feature{background:var(--brand-navy);color:var(--paper);padding:35px 38px;display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:start;margin-bottom:22px}
.brand-feature .brand-label{color:var(--stone);margin-bottom:15px}
.brand-feature h3{font-size:32px;line-height:1.18;max-width:370px}
.brand-feature-copy>p{font-size:14px;line-height:1.85;color:var(--stone)}
.brand-feature .brand-scope{border-color:#ffffff25;color:var(--stone)}
.brand-feature .brand-scope strong{color:var(--paper)}
.brand-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.brand-card{background:var(--paper);padding:31px 33px 29px;min-width:0}
.brand-card-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:23px}
.brand-card-head .brand-label{font-weight:400}
.brand-code{color:var(--red);font:700 10px/1.5 var(--sans);letter-spacing:.03em}
.brand-card h3{font-size:29px;line-height:1.15;margin-bottom:15px;letter-spacing:-.025em}
.brand-card>p{font-size:14px;line-height:1.85;color:var(--muted)}
.brand-scope{font-size:12px;line-height:1.8;border-top:1px solid var(--line);margin-top:23px;padding-top:17px;color:var(--muted)}
.brand-scope strong{font-weight:500;color:var(--ink);display:block;margin-bottom:3px}
.brand-approach{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.brand-approach li{padding-top:22px;border-top:1px solid var(--line)}
.brand-approach .brand-code{display:block;margin-bottom:17px}
.brand-approach h3{font-size:28px;line-height:1.18;margin-bottom:14px}
.brand-approach p{font-size:14px;line-height:1.8;color:var(--muted)}
.brand-language{background:var(--brand-navy);color:var(--paper);padding:44px 46px;display:grid;grid-template-columns:1fr 1.15fr;gap:80px}
.brand-language .eyebrow{color:var(--stone);font-weight:400;margin-bottom:20px}
.brand-language h2{font-size:43px}
.brand-language p{font-size:14px;line-height:1.85;color:var(--stone)}
.brand-language .brand-lead{font-size:19px;line-height:1.55;color:var(--paper);margin-bottom:18px}
.brand-language-list{list-style:none;padding:0;margin:24px 0 0;border-top:1px solid #ffffff25}
.brand-language-list li{font-size:12px;color:var(--paper);padding:11px 0;border-bottom:1px solid #ffffff25}
.brand-contact{background:var(--brand-navy);color:var(--paper);padding:61px 0 65px}
.brand-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.brand-contact .eyebrow{color:var(--stone);font-weight:400;margin-bottom:20px}
.brand-contact h2{font-size:45px}
.brand-contact-copy{max-width:450px;justify-self:end}
.brand-contact-copy p{font-size:14px;line-height:1.85;color:var(--stone)}
.brand-contact-copy .button{margin-top:24px;min-width:170px}
@media(max-width:1100px){.brand-intro,.brand-heading,.brand-feature,.brand-language,.brand-contact-grid{gap:50px}.brand-hero-inner{min-height:470px}.brand-page h2{font-size:40px}.brand-audience-grid{gap:25px}.brand-card{padding:29px}.brand-language{padding:38px}}
@media(max-width:800px){.brand-breadcrumb{min-height:50px;font-size:10px}.brand-hero-inner{min-height:450px;padding-block:49px 52px}.brand-hero::after{background:linear-gradient(90deg,rgba(22,37,48,.94),rgba(22,37,48,.66) 65%,rgba(22,37,48,.38))}.brand-hero h1{font-size:50px;max-width:610px}.brand-hero-copy{max-width:520px;font-size:14px}.brand-section{padding:58px 0}.brand-intro,.brand-heading,.brand-contact-grid{grid-template-columns:1fr;gap:26px}.brand-intro-copy{padding-top:0}.brand-intro-copy p{font-size:14px}.brand-intro-copy .brand-lead{font-size:18px}.brand-heading>p,.brand-contact-copy{justify-self:start;max-width:600px}.brand-page h2{font-size:38px}.brand-audiences{margin-top:32px}.brand-audience-grid{gap:20px}.brand-audience{padding-right:18px}.brand-audience h3{font-size:14px}.brand-audience p{font-size:12px}.brand-feature{gap:30px;padding:29px}.brand-feature h3{font-size:29px}.brand-card-grid{gap:18px}.brand-card{padding:25px}.brand-card h3{font-size:26px}.brand-approach{gap:24px}.brand-approach h3{font-size:25px}.brand-approach p{font-size:13px}.brand-language{grid-template-columns:1fr;gap:27px;padding:32px}.brand-language h2{font-size:39px}.brand-contact{padding:52px 0 55px}}
@media(max-width:540px){.brand-hero-inner{min-height:465px}.brand-hero h1{font-size:44px;line-height:1.1;margin-top:22px}.brand-hero .eyebrow{font-size:9px;letter-spacing:.11em}.brand-hero-copy{font-size:13px;line-height:1.85}.brand-hero::after{background:linear-gradient(90deg,rgba(22,37,48,.93),rgba(22,37,48,.77))}.brand-hero--wes .brand-hero-photo{object-position:61% center}.brand-hero--sterna .brand-hero-photo{object-position:60% center}.brand-section{padding:46px 0}.brand-page h2{font-size:35px}.brand-intro,.brand-heading{gap:21px}.brand-intro .eyebrow,.brand-heading .eyebrow{margin-bottom:15px}.brand-audience-grid,.brand-card-grid,.brand-approach,.brand-feature{grid-template-columns:1fr}.brand-audience-grid{gap:20px}.brand-audience{border-right:0;border-bottom:1px solid var(--line);padding:0 0 20px}.brand-audience:last-child{border-bottom:0;padding:0}.brand-audience h3{font-size:15px}.brand-audience p{font-size:13px;max-width:100%}.brand-feature{padding:25px;gap:21px;margin-bottom:18px}.brand-feature h3{font-size:28px}.brand-card{padding:25px}.brand-card-head{margin-bottom:21px}.brand-card>p,.brand-feature-copy>p{font-size:13px}.brand-card h3{font-size:27px}.brand-approach{gap:26px}.brand-approach h3{font-size:27px}.brand-approach p{font-size:14px}.brand-language{padding:27px 25px}.brand-language .brand-lead{font-size:18px}.brand-language h2{font-size:35px}.brand-language p{font-size:13px}.brand-contact h2{font-size:37px}.brand-contact-grid{gap:27px}.brand-contact-copy p{font-size:13px}}
/* Photographs act as backgrounds within the brand narrative. */
.brand-intro--photographic{grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}
.brand-photo-panel{position:relative;isolation:isolate;overflow:hidden;align-self:stretch;min-height:430px;padding:38px;display:flex;align-items:flex-end;background:#162530;color:#F7F6F2}
.brand-photo-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.brand-photo-panel::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,22,31,.03) 12%,rgba(10,22,31,.2) 40%,rgba(10,22,31,.91) 100%)}
.brand-photo-panel .eyebrow{color:#F7F6F2;font-weight:400}
.brand-photo-panel h2{color:#F7F6F2}
.brand-language--photographic{grid-template-columns:.9fr 1.1fr;gap:0;padding:0}
.brand-language--photographic>.brand-photo-panel{min-height:510px}
.brand-language--photographic>.brand-photo-panel>img{object-position:center 63%}
.brand-language--photographic>div:last-child{padding:42px 40px}
.brand-language--photographic>.brand-photo-panel>div{padding:0}
@media(max-width:1100px){.brand-intro--photographic{gap:38px}.brand-photo-panel{padding:30px}.brand-language--photographic>div:last-child{padding:34px}}
@media(max-width:800px){.brand-intro--photographic{grid-template-columns:1fr;gap:30px}.brand-photo-panel{min-height:350px}.brand-intro--photographic>.brand-photo-panel>img{object-position:center 42%}.brand-language--photographic{grid-template-columns:1fr}.brand-language--photographic>.brand-photo-panel{min-height:380px}.brand-language--photographic>.brand-photo-panel>img{object-position:center 58%}.brand-language--photographic>div:last-child{padding:32px}}
@media(max-width:540px){.brand-photo-panel{min-height:330px;padding:28px}.brand-language--photographic>.brand-photo-panel{min-height:390px}.brand-language--photographic>div:last-child{padding:28px}.brand-hero--wes .brand-hero-photo{object-position:36% center}.brand-hero--sterna .brand-hero-photo{object-position:60% center}}
