/* Mediators internal pages | matching the approved V10 editorial brand system */
.interior-page{background:#fff;min-height:65vh}
.interior-hero{position:relative;overflow:hidden}
.interior-hero--dark{background:#111923;color:#fff}
.interior-hero--light{background:#f3f2ee;color:#10151d}
.interior-hero-grid{min-height:565px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);gap:65px;align-items:center}
.interior-hero-text{padding:92px 0 105px;z-index:1;position:relative}
.interior-hero-text h1{font-size:clamp(56px,5.2vw,91px);line-height:1.02;letter-spacing:-.075em;font-weight:760;margin:28px 0 27px;max-width:1000px}
.interior-hero-text h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}
.interior-hero--dark .interior-hero-text h1 em{color:#f44a57}
.interior-hero--light .interior-hero-text h1 em{color:#e52235}
.interior-hero-text>p{font-size:16px;max-width:600px;line-height:1.85;margin:0 0 30px;opacity:.82}
.interior-hero--dark .text-link{color:white}
.interior-hero--dark .section-label{color:#f88892}
.interior-hero-visual{height:440px;position:relative;display:flex;justify-content:center;align-items:center;isolation:isolate}
.interior-ring{position:absolute;border:1px solid;opacity:.4;border-radius:50%;width:430px;height:430px}
.interior-hero--dark .interior-ring{border-color:#647180}
.interior-hero--light .interior-ring{border-color:#bac1c7}
.interior-ring-b{height:320px;width:320px;transform:translate(30px,-17px)}
.interior-visual-mark{font-family:Georgia,serif;font-size:clamp(110px,14vw,235px);color:#d62236;font-weight:700;letter-spacing:-.12em;opacity:.9;z-index:-1}
.interior-hero--dark .interior-visual-mark{color:#718394;opacity:.28}
.interior-hero--light .interior-visual-mark{color:#10151d;opacity:.1}
.interior-visual-rule{position:absolute;height:4px;background:#ed1c2e;width:160px;right:0;top:34%;transform:rotate(-54deg)}
.interior-visual-caption{position:absolute;bottom:18px;left:8px;letter-spacing:.2em;font-size:10px;text-transform:uppercase;font-weight:700}
.interior-hero--dark .interior-visual-caption{color:#aebcc8}
.interior-hero--light .interior-visual-caption{color:#67717a}
.interior-main{padding:94px 0 120px}
.interior-editor-content{font-size:15px;line-height:1.85;color:#5d6873}
.interior-editor-content :is(h2,h3,h4){color:#10151d;letter-spacing:-.048em;line-height:1.17}
.interior-editor-content h2{font-size:clamp(33px,3.15vw,52px);margin:0 0 24px}
.interior-editor-content h3{font-size:24px;margin:0 0 15px}
.interior-editor-content p{margin:0 0 17px}
.interior-editor-content a:not(.btn){color:#bb1429}
.interior-editor-content :is(.mpl-card,.mpl-panel,.mpl-fact,.mpl-timeline-item){box-sizing:border-box}
.mpl-section{margin:0 0 98px}
.mpl-section:last-child{margin-bottom:0}
.mpl-section-label{font-size:11px;font-weight:800;color:#e52235;text-transform:uppercase;letter-spacing:.16em;margin:0 0 16px}
.mpl-section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:28px}
.mpl-section-heading>p{max-width:470px;margin:0;color:#65717c}
.mpl-split{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:start}
.mpl-split-wide{grid-template-columns:1.2fr .8fr}
.mpl-copy-lead{font-size:clamp(20px,2vw,28px);line-height:1.55;color:#263241;letter-spacing:-.025em;font-weight:500}
.mpl-panel{padding:42px 39px;background:#f3f2ee;min-height:240px;position:relative;overflow:hidden}
.mpl-panel--dark{background:#141e2a;color:#fff}
.mpl-panel--dark :is(h2,h3,p){color:#fff}
.mpl-panel--accent{background:#fce9e9}
.mpl-panel-number{font-family:Georgia,serif;font-size:75px;line-height:1;font-weight:700;letter-spacing:-.08em;color:#ed1c2e;margin-bottom:16px}
.mpl-quote{border-left:4px solid #ed1c2e;padding:16px 0 16px 26px;font-family:Georgia,serif;font-size:clamp(22px,2.5vw,34px);line-height:1.4;color:#172330}
.mpl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mpl-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.mpl-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.mpl-card{background:#f6f5f2;border:1px solid #e0e0dc;min-width:0;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,border-color .25s,box-shadow .25s}
.mpl-card:hover{transform:translateY(-4px);border-color:#e9b5b9;box-shadow:0 17px 30px rgba(13,18,27,.06)}
.mpl-card-art{aspect-ratio:1.8;background:#15202c;overflow:hidden}
.mpl-card-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.mpl-card:hover .mpl-card-art img{transform:scale(1.035)}
.mpl-card-inner{padding:28px 27px 30px;flex:1}
.mpl-card-index{font-size:10px;color:#ec1d34;letter-spacing:.11em;font-weight:800;text-transform:uppercase;margin-bottom:16px}
.mpl-card h3{font-size:23px;line-height:1.14;margin:0 0 12px}
.mpl-card p{font-size:13px;line-height:1.75;margin:0;color:#65717c}
.mpl-card-list{list-style:none;margin:19px 0 0;padding:0;font-size:11px;color:#8b939b;text-transform:uppercase;letter-spacing:.04em}
.mpl-chip{border:1px solid #d8dcdd;padding:8px 11px;display:inline-flex;align-items:center;margin:5px 7px 0 0;font-size:11px;color:#5b6772}
.mpl-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.mpl-timeline-item{border-top:3px solid #ed1c2e;padding:23px 22px 26px;background:#f6f5f2}
.mpl-timeline-item b{font-size:26px;color:#111923;display:block;letter-spacing:-.05em;margin-bottom:12px}
.mpl-timeline-item h3{font-size:19px;margin:0 0 9px}
.mpl-timeline-item p{font-size:13px;margin:0}
.mpl-group-row{display:grid;grid-template-columns:220px 1fr;gap:42px;border-top:1px solid #e0e3e4;padding:36px 0}
.mpl-group-row:last-child{border-bottom:1px solid #e0e3e4}
.mpl-group-visual{min-height:155px;background:#121b27;display:grid;place-items:center;padding:25px}
.mpl-group-visual:nth-child(1){background:#121b27}
.mpl-group-visual img{max-height:138px;width:100%;object-fit:contain}
.mpl-group-row h3{font-size:27px;margin:0 0 13px}
.mpl-group-row p{max-width:780px;margin:0}
.mpl-group-row .mpl-card-index{margin-bottom:12px}
.mpl-editorial-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:17px}
.mpl-editorial-card{background:#f3f2ee;border-top:4px solid #ed1c2e;min-height:235px;padding:33px 27px}
.mpl-editorial-card:first-child{background:#141e2a;color:#fff}
.mpl-editorial-card:first-child h3{color:#fff}
.mpl-editorial-card h3{margin:0 0 16px;font-size:27px}
.mpl-editorial-card p{font-size:13px}
.mpl-availability{font-size:11px;text-transform:uppercase;color:#c21b30;font-weight:750;letter-spacing:.12em}
.mpl-contact-entries{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.mpl-contact-entry{background:#f3f2ee;border-left:3px solid #e82239;padding:35px 29px;min-height:196px}
.mpl-contact-entry h3{font-size:27px;margin:0 0 20px}
.mpl-contact-entry a{color:#111923!important;font-size:17px}
.mpl-message-form{max-width:690px;border:1px solid #e4e4e0;background:#fff;padding:34px}
.mpl-message-form label{display:block;font-size:12px;color:#293443;font-weight:750;margin-bottom:17px}
.mpl-message-form input,.mpl-message-form select,.mpl-message-form textarea{display:block;max-width:100%;width:100%;padding:13px 14px;border:1px solid #ccd1d5;background:#f9f9f7;border-radius:0;margin-top:6px;font:inherit;color:#1b2633}
.mpl-message-form textarea{min-height:135px;resize:vertical}
.mpl-message-form .honeypot{display:none;position:absolute;left:-9999px}
.mpl-message-form button{background:#ed1c2e;border:0;color:#fff;padding:15px 25px;font-size:13px;font-weight:800;cursor:pointer}
.mpl-message-form button:hover{background:#bc1527}
.mpl-form-status{border-left:3px solid #e62238;background:#f6f5f2;padding:13px 16px;margin-bottom:22px}
.mpl-form-status.success{border-left-color:#16805b}
.mpl-note{font-size:12px;color:#7b8692;margin-top:18px}
.interior-cta{background:#f3f2ee;border-top:1px solid #e1e2df}
.interior-cta-row{padding:75px 0;display:flex;align-items:end;justify-content:space-between;gap:28px}
.interior-cta h2{font-size:clamp(30px,3.7vw,53px);letter-spacing:-.055em;margin:18px 0 0;line-height:1.1}
.interior-cta h2 em{font-family:Georgia,serif;font-weight:400}
@media(max-width:1080px){.interior-hero-grid{grid-template-columns:1fr 300px;gap:25px}.interior-hero-text h1{font-size:65px}.mpl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mpl-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:790px){.interior-hero-grid{grid-template-columns:1fr;min-height:auto;gap:0}.interior-hero-text{padding:84px 0 36px}.interior-hero-text h1{font-size:clamp(50px,8vw,77px)}.interior-hero-visual{height:245px;margin:0 auto 34px;width:100%;max-width:460px}.interior-ring{width:300px;height:300px}.interior-ring-b{width:205px;height:205px}.interior-visual-mark{font-size:136px}.interior-main{padding:67px 0 86px}.mpl-section{margin-bottom:65px}.mpl-split,.mpl-split-wide{grid-template-columns:1fr}.mpl-timeline{grid-template-columns:1fr}.mpl-group-row{grid-template-columns:155px 1fr;gap:24px}.mpl-editorial-grid{grid-template-columns:1fr 1fr}.mpl-editorial-card:first-child{grid-column:span 2}.interior-cta-row{padding:65px 0;align-items:start;flex-direction:column}}
@media(max-width:530px){.interior-hero-text{padding:65px 0 24px}.interior-hero-text h1{font-size:clamp(47px,12vw,66px)}.interior-hero-text>p{font-size:14px}.interior-hero-visual{height:185px;margin-bottom:30px}.interior-ring{width:240px;height:240px}.interior-ring-b{width:165px;height:165px}.interior-visual-mark{font-size:106px}.interior-main{padding:54px 0 72px}.mpl-grid,.mpl-grid--two,.mpl-grid--four,.mpl-editorial-grid,.mpl-contact-entries{grid-template-columns:1fr}.mpl-section-heading{display:block}.mpl-section-heading>p{margin-top:13px}.mpl-card-inner{padding:25px 23px}.mpl-panel{padding:30px 25px}.mpl-group-row{grid-template-columns:1fr;gap:17px;padding:26px 0}.mpl-group-visual{min-height:150px}.mpl-editorial-card:first-child{grid-column:span 1}.mpl-message-form{padding:23px}.interior-cta-row{padding:55px 0}}
@media(prefers-reduced-motion:reduce){.mpl-card,.mpl-card-art img{transition:none!important}}

/* V12 usability / reduced motion / accessible focus */
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #ed1c2e;outline-offset:4px}
:where(.service-arrow,.btn,.nav-cta,.group-cta):focus-visible{outline-color:#fd6371}
.hero-identity-monogram{object-fit:contain}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.marquee-track{animation:none!important;transform:none!important}.hero-mark-motion,.hero-identity-monogram,.hero-identity-monogram-arrival,.hero-identity-ring,.hero-identity-field::before{animation:none!important;transition:none!important}.service-illustration,.work-card img,.mpl-card-art img{transition:none!important;transform:none!important}}

/* V13 — unified client names and future project imagery. */
.mpl-major-clients{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #dededa;border-left:1px solid #dededa}
.mpl-major-client{display:flex;align-items:center;gap:16px;padding:22px 20px;border-right:1px solid #dededa;border-bottom:1px solid #dededa;background:#fff;min-width:0}
.mpl-major-client-index{font-size:11px;color:#e52135;font-weight:800;flex:0 0 30px}
.mpl-major-client strong{font-size:clamp(14px,1.25vw,18px);line-height:1.3;letter-spacing:-.025em;overflow-wrap:anywhere;flex:1}
.mpl-major-client-mark{font-size:18px;color:#e52135;flex:0 0 auto}
.mpl-project-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.mpl-project-slot{margin:0;min-width:0;background:#f5f5f2;border:1px solid #dededa}
.mpl-project-slot img{display:block;width:100%;aspect-ratio:1.4;object-fit:cover}
.mpl-project-slot figcaption{padding:17px 20px;font-size:12px;font-weight:700;color:#152130}
.mpl-project-placeholder{aspect-ratio:1.4;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;background:linear-gradient(145deg,#152130,#26374b);color:#e3ebf2;gap:10px;text-align:center;font-size:10px;letter-spacing:.15em;font-weight:800}
.mpl-project-placeholder-no{position:absolute;left:20px;top:15px;color:#fd354c;font-size:13px}
.mpl-project-placeholder-icon{font-size:32px;color:#c2cbd5;font-weight:300}
.mpl-project-placeholder small{font-size:11px;font-weight:400;color:#aeb8c4;letter-spacing:normal}
@media(max-width:790px){.mpl-project-slots{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:530px){.mpl-project-slots,.mpl-major-clients{grid-template-columns:1fr}}


/* V14: logo-led major clients and searchable project-based client tables. */
.mpl-major-client-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:0;gap:17px}
.mpl-major-client-card{min-width:0;min-height:233px;padding:20px 20px 24px;display:flex;flex-direction:column;align-items:stretch;border:1px solid #e1e3e3;background:#fff;transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}
.mpl-major-client-card:hover{border-color:#e8b0b6;box-shadow:0 13px 26px rgba(13,18,27,.08);transform:translateY(-3px)}
.mpl-client-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid #ececed;padding-bottom:10px;margin-bottom:13px}
.mpl-client-card-top .mpl-major-client-index{font-size:10px;flex:0 0 auto;color:#ee2538}
.mpl-client-card-tag{font-size:8px;letter-spacing:.09em;color:#929ca7;font-weight:750;white-space:nowrap}
.mpl-client-logo-slot{height:105px;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:4px 8px;background:#fff}
.mpl-client-logo-image{max-width:100%;width:auto;max-height:94px;height:auto;object-fit:contain;display:block;mix-blend-mode:multiply}
.mpl-client-wordmark{font-size:clamp(19px,1.7vw,28px);font-family:Georgia,serif;font-weight:700;color:#273449;letter-spacing:-.035em;text-align:center;line-height:1.2}
.mpl-client-card-name{font-size:13px!important;letter-spacing:-.01em!important;line-height:1.36!important;font-weight:710;margin:13px 0 0!important;color:#162234!important;text-align:center;overflow-wrap:anywhere;min-height:35px}
.mpl-client-card-name::before{content:'';display:block;width:32px;height:2px;background:#e42135;margin:0 auto 11px}
.mpl-other-clients{margin-top:22px}
.mpl-other-controls{display:flex;align-items:end;justify-content:space-between;gap:18px;background:#f3f3f0;border:1px solid #e3e4e1;padding:20px 24px;margin-bottom:15px;flex-wrap:wrap}
.mpl-other-controls label{font-size:12px;font-weight:800;color:#202d3d}
.mpl-other-controls input{min-width:260px;max-width:420px;width:42%;background:white;border:1px solid #cfd5d7;padding:12px 15px;color:#16202d;font:inherit;font-size:14px}
.mpl-other-controls input:focus-visible{outline:2px solid #ed1c2e;outline-offset:2px}
.mpl-client-count{font-size:12px!important;white-space:nowrap;color:#5b6878!important;margin:0!important}
.mpl-client-count b{color:#d52337}
.mpl-other-table-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.mpl-other-table-wrap{min-width:0}
.mpl-other-table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.5;background:#fff;table-layout:fixed}
.mpl-other-table th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.13em;background:#131e2b;color:#fff;padding:15px 16px}
.mpl-other-table th:first-child,.mpl-other-table td:first-child{width:62px;text-align:center}
.mpl-other-table td{border:1px solid #e5e5e3;padding:14px 14px;color:#263444;word-break:normal;overflow-wrap:anywhere;vertical-align:top}
.mpl-other-table td:first-child{font-size:11px;font-weight:750;color:#e52135}
.mpl-other-table tbody tr:nth-child(even){background:#f7f7f5}
.mpl-other-table tbody tr:hover{background:#fff1f2}
.mpl-empty-clients{padding:22px;font-size:14px;color:#788390;background:#f6f6f4}
@media(max-width:1200px){.mpl-major-client-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.mpl-major-client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mpl-other-table-grid{grid-template-columns:1fr}.mpl-other-table-wrap{max-width:none}}
@media(max-width:530px){.mpl-major-client-logo-grid{grid-template-columns:1fr 1fr;gap:9px}.mpl-major-client-card{padding:12px;min-height:220px}.mpl-client-card-tag{display:none}.mpl-client-logo-slot{height:91px}.mpl-client-logo-image{max-height:82px}.mpl-client-card-name{font-size:11px!important}.mpl-other-controls{padding:17px;align-items:stretch;flex-direction:column;gap:10px}.mpl-other-controls input{width:100%;min-width:0}.mpl-client-count{white-space:normal}.mpl-other-table th:first-child,.mpl-other-table td:first-child{width:46px}.mpl-other-table td{font-size:12px;padding:11px}}

/* V14 visibility for filtered rows regardless of table striping */
.mpl-other-table tbody tr[hidden]{display:none!important}

/* V16: dedicated expertise pages, card-to-detail navigation */
.interior-expertise .mpl-card-inner{display:flex;flex-direction:column}
.interior-expertise .mpl-card-inner h3 a{color:#132235;text-decoration:none}
.interior-expertise .mpl-card-inner h3 a:hover{color:#d52037}
.interior-expertise .mpl-card-details-link{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:20px;border-top:1px solid #dddeda;color:#d52136;font-size:12px;font-weight:800;text-decoration:none}
.interior-expertise .mpl-card-details-link:hover{color:#8f1020}
.interior-expertise .mpl-card-inner>p{margin-bottom:26px}


/* Editorial posts and helpful 404: compatible with Mediators interior visual system. */
.generic-page{background:#f6f5f2;min-height:65vh;padding:110px 0 125px;color:#111823}
.generic-page .wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.generic-page-head{max-width:860px;margin:0 auto 70px;text-align:left}
.generic-page-head h1{font-size:clamp(42px,6vw,78px);letter-spacing:-.065em;line-height:1.08;margin:20px 0 20px}
.generic-page-head p{color:#576474;font-size:18px;line-height:1.85}
.generic-page-content{max-width:830px;background:#fff;margin:auto;padding:clamp(28px,5vw,72px);border:1px solid #e7e3dd;box-shadow:0 12px 40px rgba(11,17,25,.035)}
.generic-page-content .generic-page-head{margin-bottom:42px}
.generic-page-content h1{font-size:clamp(37px,5vw,58px)}
.generic-page-content h2{font-size:clamp(25px,3vw,35px);line-height:1.24;letter-spacing:-.035em;margin:42px 0 18px}
.generic-page-content p,.generic-page-content li{color:#4a596a;font-size:16px;line-height:1.95;margin:0 0 21px}
.generic-page-content .insights-lead{font-size:19px;color:#28374a;font-weight:500}
.generic-page-content a:not(.nav-cta){color:#b7192e;text-decoration:underline;text-underline-offset:4px}
.generic-post{padding:25px 0;border-bottom:1px solid #dcdad5}
.generic-post h2{font-size:26px;line-height:1.25}
.generic-post-excerpt{font-size:16px;color:#52606d;line-height:1.8}
.not-found-page .generic-page-head{margin-inline:0}
.not-found-page .not-found-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.not-found-page .not-found-link{display:flex;justify-content:space-between;align-items:center;padding:24px;background:#fff;border:1px solid #dcdad5;font-weight:750;transition:border-color .2s}
.not-found-page .not-found-link:hover,.not-found-page .not-found-link:focus-visible{border-color:#ed1d31}
.not-found-page .not-found-link span{color:#ed1d31}
@media(max-width:720px){.generic-page{padding:55px 0 75px}.generic-page .wrap{width:min(100% - 30px,1180px)}.generic-page-content{padding:26px 20px}.not-found-page .not-found-links{grid-template-columns:1fr}.generic-page-head{margin-bottom:35px}}
