:root { --type-78: 4.875rem; --type-55: 3.4375rem; --type-26: 1.625rem; --type-16: var(--size-16); --type-20: var(--size-20); --type-14: 0.875rem; --type-22: 1.375rem; --type-15: 0.9375rem; --type-30: 1.875rem; --type-28: var(--size-28); --type-40: var(--size-40); --type-12: var(--size-12); --type-11: 0.6875rem; --type-13: 0.8125rem; --type-18: 1.125rem; --type-24: var(--size-24); --type-36: 2.25rem; --type-17: 1.0625rem; --type-19: 1.1875rem; --type-32: var(--size-32); --type-34: 2.125rem; --type-10: 0.625rem; --type-60: 3.75rem; --type-35: 2.1875rem; }
:root { --size-4: 0.25rem; --size-8: 0.5rem; --size-12: 0.75rem; --size-16: 1rem; --size-20: 1.25rem; --size-24: 1.5rem; --size-28: 1.75rem; --size-32: 2rem; --size-40: 2.5rem; --size-48: 3rem; --size-56: 3.5rem; --size-64: 4rem; --size-80: 5rem; }
/* Mafatlal — canonical shared styles. Generated catalogue: style-guide.html. */
@font-face { font-family:"Bauer Bodoni Std 1";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/bauer-bodoni-roman.otf") format("opentype"); }
@font-face { font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/lato-regular.ttf") format("truetype"); }
@font-face { font-family:"Lato";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/lato-bold.ttf") format("truetype"); }
:root { --red: #ED1C24; --red-dark: #dc1820; --cream: #F6F0EC; --ink: #000; --body: #6C6C6C; --footer: #1B1B1B; --line: #DED8D4; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 1.875rem; }
body { margin: 0; min-width: 90rem; color: var(--ink); background: #fff; font: 400 var(--size-16)/1.3 'Lato',sans-serif; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; border: 0; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
h1, h2, h3, h4, p, figure { margin: 0; }
h1, h2, h3 { font-family: 'Bauer Bodoni Std 1',serif; font-weight: 400; text-box-trim: trim-both; text-box-edge: cap alphabetic; }
h1 { font-size: var(--type-78); line-height: 1; letter-spacing: -.025em; }
h2 { font-size: var(--type-55); line-height: 1.1; letter-spacing: -.03em; }
h3 { font-size: var(--type-26); line-height: 1.1; letter-spacing: -.02em; }
h4 { font-size: var(--type-16); }
svg { display: block; flex: none; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 0.125rem solid var(--red); outline-offset: 0.3125rem; }
[hidden] { display: none!important; }
.mf-inner { width: 78.5rem; margin-inline: auto; }
.section { padding-block: var(--section-space); }
.cream { background: var(--cream); }
.accent { color: var(--red); }
.lead { font-size: var(--type-20); line-height: 1.4; }
.muted { color: var(--body); }
.section-head { display: grid; grid-template-columns: 1fr 1fr; gap: 5.625rem; align-items: end; margin-bottom: var(--size-56); }
.section-head>p { color: var(--body); max-width: 32.5rem; justify-self: end; }
.mf-pill { display: inline-flex; align-items: center; justify-content: center; gap: var(--size-20); padding: 0.625rem 0.625rem 0.625rem 1.375rem; min-height: 3.375rem; border-radius: var(--size-80); background: var(--red); color: #fff; line-height: 1.1875rem; font-size: var(--type-16); white-space: nowrap; flex: none; transition: background .18s; }
.mf-pill:hover { background: var(--red-dark); }
.mf-icon { width: 2.125rem; height: 2.125rem; border-radius: var(--size-80); display: flex; align-items: center; justify-content: center; background: #fff; color: var(--red); flex: none; transition: transform .25s; }
.mf-icon svg { width: 0.875rem; height: 0.875rem; }
.mf-pill:hover .mf-icon { transform: translateX(0.1875rem); }
.mf-pill-white { background: #fff; color: var(--red); }
.mf-pill-white:hover { background: var(--cream); }
.mf-pill-white .mf-icon { background: var(--red); color: #fff; }
.mf-pill-ghost { background: transparent; color: #fff; border: 0.0625rem solid #ffffff66; padding-right: 1.375rem; }
.mf-pill-ghost:hover { background: #ffffff1a; }
.arrow-btn { width: 2.75rem; height: 2.75rem; border-radius: 50%; display: grid; place-items: center; border: 0.0625rem solid var(--line); color: var(--ink); flex: none; transition: background .2s,color .2s,border-color .2s,transform .25s; }
.arrow-btn svg { width: var(--size-16); height: var(--size-16); }
.tag { display: inline-flex; align-items: center; height: 2.25rem; padding: 0 var(--size-16); border-radius: var(--size-80); border: 0.0625rem solid var(--line); font-size: var(--type-14); color: var(--ink); background: #fff; }
.mf-header { position: absolute; top: 0; left: 0; right: 0; z-index: 10; display: flex; align-items: flex-start; justify-content: space-between; gap: var(--size-28); color: #fff; padding-top: 1.625rem; }
.mf-logo-wrap { width: 11.5rem; flex: none; margin-top: calc(-1 * var(--size-4)); }
.mf-logo { width: 11.5rem; height: 6.875rem; object-fit: contain; object-position: left top; }
.mf-nav { display: flex; align-items: center; gap: 0.375rem; white-space: nowrap; padding: 0.375rem; border-radius: var(--size-80); background: #ffffff14; border: 0.0625rem solid #ffffff2e; backdrop-filter: blur(0.875rem); -webkit-backdrop-filter: blur(0.875rem); }
.mf-nav-item, .mf-nav-trigger { display: flex; align-items: center; gap: var(--size-8); padding: var(--size-12) var(--size-16); border-radius: var(--size-80); color: inherit; background: transparent; transition: background .18s; }
.mf-nav-item:hover, .mf-nav-trigger:hover, .mf-nav-trigger[aria-expanded=true] { background: #ffffff1f; }
.mf-nav-item svg, .mf-nav-trigger svg { width: 0.625rem; height: 0.625rem; }
.mf-dropdown { position: relative; }
.mf-menu { position: absolute; left: 0; top: calc(100% + var(--size-12)); width: 15rem; background: #fff; color: #000; border-radius: var(--size-16); box-shadow: 0 0.875rem var(--size-40) #0003; padding: 0.625rem; }
.mf-menu a { display: block; padding: var(--size-12) 0.875rem; border-radius: 0.625rem; white-space: normal; }
.mf-menu a:hover, .mf-menu a[aria-current] { background: var(--cream); color: var(--red); }
.mf-header .mf-pill { margin-top: 0.125rem; }
.hero { height: 56.25rem; position: relative; isolation: isolate; display: flex; align-items: flex-end; color: #fff; background: #202020; }
.hero-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -3; }
.hero:after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,#000c 0%,#0006 45%,#0000 80%),linear-gradient(180deg,#0006 0%,#0000 25%,#0000 55%,#000a 100%); z-index: -2; }
.hero-content { padding-bottom: 9.375rem; }
.hero h1 { max-width: 56.25rem; }
.hero h1 .accent { display: inline-block; }
.hero-description { max-width: 37.5rem; font-size: var(--type-20); line-height: 1.45; margin-top: 2.25rem; color: #ffffffd9; }
.hero-actions { display: flex; align-items: center; gap: var(--size-16); margin-top: var(--size-40); }
.capabilities { position: relative; z-index: 2; margin-top: calc(-1 * var(--size-80)); }
.capabilities ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,1fr); background: #fff; border-radius: var(--size-20); box-shadow: 0 var(--size-24) 3.75rem #0000001f; overflow: hidden; }
.capabilities li { display: flex; gap: 1.125rem; align-items: flex-start; padding: 2.125rem var(--size-32); }
.capabilities li+li { border-left: 0.0625rem solid var(--line); }
.capabilities h3 { font-size: var(--type-22); margin: var(--size-4) 0 var(--size-12); }
.capabilities p { color: var(--body); font-size: var(--type-15); line-height: 1.4; }
.about { padding-top: var(--section-space); }
.legacy-mark { font-family: 'Bauer Bodoni Std 1',serif; font-size: var(--size-64); line-height: 1; color: var(--red); letter-spacing: -.03em; }
.cat-tile { position: relative; overflow: hidden; border-radius: var(--size-20); background: #292c28; color: #fff; display: block; }
.cat-tile img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.cat-tile:hover img { transform: scale(1.04); }
.cat-tile:after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#000c,#0000 55%); }
.cat-tile figcaption { position: absolute; left: 2.25rem; right: 2.25rem; bottom: 2.25rem; z-index: 1; display: flex; align-items: flex-end; justify-content: space-between; gap: var(--size-24); }
.cat-tile .cat-label { display: block; font-size: var(--type-14); letter-spacing: .14em; text-transform: uppercase; color: #ffffffb3; margin-bottom: var(--size-16); }
.cat-tile h3 { font-size: 2.375rem; }
.cat-tile .arrow-btn { border-color: #ffffff66; color: #fff; }
.cat-tile:hover .arrow-btn { background: var(--red); border-color: var(--red); }
.cat-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-24); }
.process-flow { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--size-20); counter-reset: s; }
.p-card { position: relative; isolation: isolate; display: flex; flex-direction: column; min-height: 25rem; padding: var(--size-32); background: var(--cream); border-radius: var(--size-20); overflow: hidden; transition: transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,opacity .7s,translate .7s; }
.p-card:hover { transform: translateY(calc(-1 * var(--size-8))); box-shadow: 0 1.625rem 3.125rem #0000001a; }
.p-card h3 { font-size: var(--type-26); min-height: 3.625rem; margin-bottom: 0.875rem; max-width: 12.5rem; }
.p-card p { color: var(--body); max-width: 14.375rem; }
.process-flow.reveal .p-card { opacity: 0; translate: 0 var(--size-24); }
.process-flow.reveal .p-card.in { opacity: 1; translate: 0 0; }
@media(prefers-reduced-motion:reduce) {
  .process-flow.reveal .p-card { opacity: 1; translate: none; }
}
.b2b { display: grid; grid-template-columns: 1.05fr .95fr; gap: 6.25rem; align-items: center; }
.b2b-media { position: relative; padding-bottom: 4.375rem; }
.b2b-photo { height: 38.75rem; border-radius: var(--size-20); overflow: hidden; }
.b2b-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 48% center; }
.school-card { position: absolute; right: -3.125rem; bottom: 0; width: 23.75rem; background: #fff; border-radius: var(--size-20); padding: 2.125rem; box-shadow: 0 var(--size-24) 3.75rem #0000001f; }
.school-card h3 { font-size: var(--type-30); margin-bottom: 1.125rem; }
.school-card p { color: var(--body); }
.b2b-copy h2 { margin-bottom: 2.25rem; }
.b2b-copy .lead { max-width: 32.5rem; }
.b2b-copy .muted { margin-top: 1.375rem; max-width: 32.5rem; }
.b2b-copy .tag { background: transparent; border-color: #D3CBC5; }
.b2b-copy .mf-pill { margin-top: 2.75rem; }
.why-grid { display: grid; grid-template-columns: 5fr 7fr; gap: 6.25rem; align-items: start; }
.why-intro { position: sticky; top: 3.75rem; }
.why-intro .lead { color: var(--body); margin-top: 2.25rem; max-width: 26.25rem; }
.why-list { list-style: none; margin: 0; padding: 0; border-top: 0.0625rem solid var(--line); }
.why-row { position: relative; display: grid; grid-template-columns: var(--size-56) 1.15fr 1fr; gap: var(--size-32); align-items: center; padding: 1.875rem 0; border-bottom: 0.0625rem solid var(--line); transition: padding .35s cubic-bezier(.2,.7,.2,1); }
.why-row:before { content: ''; position: absolute; left: 0; bottom: -0.0625rem; height: 0.0625rem; width: 100%; background: var(--red); transform: scaleX(0); transform-origin: left; transition: transform .5s cubic-bezier(.2,.7,.2,1); }
.why-row:hover { padding-left: 0.875rem; }
.why-row:hover:before { transform: scaleX(1); }
.why-icon { width: var(--size-56); height: var(--size-56); border-radius: 50%; border: 0.0625rem solid #E8C9C6; color: var(--red); display: grid; place-items: center; transition: background .3s,color .3s,border-color .3s; }
.why-icon svg { width: 1.375rem; height: 1.375rem; stroke-width: 1.6; }
.why-row:hover .why-icon { background: var(--red); border-color: var(--red); color: #fff; }
.why-row h3 { font-size: var(--type-28); transition: color .3s; }
.why-row:hover h3 { color: var(--red); }
.why-row p { color: var(--body); font-size: var(--type-15); line-height: 1.45; }
.enquiry { position: relative; isolation: isolate; overflow: hidden; background-color: var(--red); color: #fff; padding-block: var(--section-space); }
/* Supplied vector artwork; staggered SVG columns create a seamless travelling wave. */
.enquiry::before { content: ""; position: absolute; z-index: -1; pointer-events: none; right: 0; top: calc(-1 * var(--size-8)); width: min(48.4375rem,80%); aspect-ratio: 775 / 245; background: url("../brand/dots-wave.svg") right top / 100% 100% no-repeat; }
@media(max-width:47.5rem) { .enquiry::before { width: 115%; right: -25%; opacity: .8; } }
.enquiry .mf-inner { display: grid; grid-template-columns: 1.15fr .85fr; gap: 5.625rem; align-items: center; }
.enquiry p.lead { max-width: 37.5rem; margin-top: var(--size-32); color: #ffffffe0; }
.mf-footer { background: var(--footer); color: #fff; padding-top: 3.75rem; border-top: 0.0625rem solid #2c2c2c; }
.mf-footer-top { display: grid; grid-template-columns: 25.8% 65.1%; justify-content: space-between; padding-bottom: 3.75rem; }
.mf-footer-logo { width: 12.5625rem; height: 7.5rem; object-fit: contain; object-position: left; display: block; margin-bottom: 1.1875rem; }
.mf-footer-brand p { font-size: var(--type-16); line-height: 1.45; color: #ffffffb3; }
.mf-socials-source { display: block; width: 17.3125rem; max-width: 100%; height: auto; margin-top: var(--size-40); }
.mf-footer-nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 2.25rem; padding-top: 3.3125rem; }
.mf-footer-col h4 { font-family: 'Lato',sans-serif; font-weight: 700; font-size: var(--type-14); letter-spacing: .14em; line-height: 1.1875rem; text-transform: uppercase; margin-bottom: var(--size-28); }
.mf-footer-col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 1.125rem; }
.mf-footer-col li { font-size: var(--type-16); line-height: 1.1875rem; color: #ffffff80; }
.mf-footer-col a:hover { color: #fff; }
.mf-footer-bottom { border-top: 0.0625rem solid #434343; display: flex; justify-content: space-between; align-items: center; gap: 1.875rem; padding-block: 1.875rem 2.125rem; color: #A1A1A1; font-size: var(--type-15); }
.mf-legal { display: flex; gap: var(--size-24); color: #8D8D8D; }
.enquiry-dialog { border: 0; border-radius: var(--size-20); color: var(--ink); font-family: 'Lato',sans-serif; box-shadow: 0 var(--size-20) var(--size-80) #0004; }
.enquiry-dialog::backdrop { background: #0009; backdrop-filter: blur(0.1875rem); }
.dialog-close { position: absolute; right: 1.5625rem; top: 1.5625rem; display: grid; place-items: center; width: 2.375rem; height: 2.375rem; background: var(--cream); border-radius: 50%; }
.dialog-close svg { width: 1.125rem; height: 1.125rem; }
.enquiry-dialog h2 { font-size: var(--type-40); margin-bottom: 1.5625rem; }
.enquiry-dialog>p { color: var(--body); margin-bottom: var(--size-28); }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--size-20); }
.form-field { display: flex; flex-direction: column; gap: 0.5625rem; font-size: var(--type-14); }
.form-field.full { grid-column: 1/-1; }
.form-field input, .form-field textarea, .form-field select { width: 100%; border: 0.0625rem solid #D8D1CC; border-radius: 0.625rem; padding: 0.8125rem 0.875rem; color: var(--ink); background: #fff; font-size: var(--type-16); }
.form-field input:focus, .form-field textarea:focus, .form-field select:focus { border-color: var(--red); outline: 0; }
.form-field textarea { resize: vertical; min-height: 6rem; }
.form-status { padding: 0.9375rem; background: var(--cream); border-radius: 0.625rem; margin-top: var(--size-20); }
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  * { transition: none!important; }
}
.ph { position: relative; width: 100%; height: 100%; background-color: #2a2421; background-image: repeating-linear-gradient(135deg,#ffffff07 0 0.0625rem,transparent 0.0625rem var(--size-16)),radial-gradient(circle at 70% 30%,#4a3d35 0,#2a2421 70%); overflow: hidden; }
.ph.light { background-color: #E9E0D8; background-image: repeating-linear-gradient(135deg,#0000000a 0 0.0625rem,transparent 0.0625rem var(--size-16)),radial-gradient(circle at 70% 30%,#F3ECE6 0,#E4D9D0 75%); }
.ph-tag { position: absolute; right: var(--size-20); top: var(--size-20); display: inline-flex; align-items: center; gap: 0.625rem; max-width: calc(100% - var(--size-40)); padding: var(--size-8) 0.875rem var(--size-8) var(--size-8); border-radius: var(--size-80); background: #fffffff0; color: var(--ink); font-size: var(--type-12); line-height: 1.2; letter-spacing: .02em; box-shadow: 0 0.375rem 1.125rem #0000001f; z-index: 2; }
.ph-tag b { background: var(--red); color: #fff; border-radius: var(--size-80); padding: var(--size-4) 0.5625rem; font-weight: 700; font-size: var(--type-11); letter-spacing: .06em; white-space: nowrap; }
.hero>.ph { position: absolute; inset: 0; z-index: -3; }
.hero>.ph .ph-tag { top: 8.75rem; right: calc((100% - 78.5rem)/2); }
.hero-description+.hero-description { margin-top: var(--size-16); }
.copy p { color: var(--body); }
.copy p+p { margin-top: var(--size-20); }
.copy .lead { color: var(--ink); }
.media { display: grid; grid-template-columns: 1fr 1fr; gap: 6rem; align-items: center; }
.media.rev>.media-img { order: 2; }
.media-img { height: 38.75rem; border-radius: var(--size-20); overflow: hidden; position: relative; }
.media-img img { width: 100%; height: 100%; object-fit: cover; }
.media h2 { margin-bottom: 2.125rem; }
.wide-img { height: 35rem; border-radius: var(--size-20); overflow: hidden; margin-top: var(--size-64); }
.shop-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-24) var(--size-24); }
.tabs-bar { display: grid; grid-template-columns: repeat(var(--n),1fr); gap: var(--size-24); border-bottom: 0.0625rem solid var(--line); margin-bottom: var(--size-56); }
.tab { background: none; text-align: left; padding: 0 0.625rem 1.625rem 0; position: relative; display: flex; flex-direction: column; gap: var(--size-12); color: var(--body); }
.tab .tn { font-size: var(--type-13); letter-spacing: .16em; text-transform: uppercase; color: var(--red); }
.tab .tt { font: 400 var(--size-24)/1.15 'Bauer Bodoni Std 1',serif; letter-spacing: -.02em; color: #9a918b; transition: color .25s; }
.tabs-bar[style*="--n:6"] .tt { font-size: var(--type-20); }
.tab:hover .tt { color: var(--ink); }
.tab:after { content: ''; position: absolute; left: 0; right: 0; bottom: -0.0625rem; height: 0.125rem; background: var(--red); transform: scaleX(0); transform-origin: left; transition: transform .45s cubic-bezier(.2,.7,.2,1); }
.tab[aria-selected=true] .tt { color: var(--ink); }
.tab[aria-selected=true]:after { transform: scaleX(1); }
.tab-panel { display: grid; grid-template-columns: 1.1fr .9fr; gap: var(--size-80); align-items: center; animation: fadeUp .5s cubic-bezier(.2,.7,.2,1); }
.tab-panel .media-img { height: 32.5rem; }
.tab-panel h3 { font-size: var(--type-40); line-height: 1.1; letter-spacing: -.03em; margin-bottom: 1.625rem; }
.tab-panel .copy p:first-of-type { color: var(--ink); font-size: var(--type-18); line-height: 1.45; }
.tab-panel .mf-pill, .tab-panel .chips { margin-top: 2.125rem; }
@keyframes fadeUp { from{opacity:0;transform:translateY(0.875rem)}to{opacity:1;transform:none}; }
.chips { display: flex; flex-wrap: wrap; gap: 0.625rem; }
.chips .tag { height: 2.625rem; padding: 0 var(--size-20); font-size: var(--type-15); }
.cream .tag { background: #fff; border-color: #fff; }
.cream .p-card { background: #fff; }
.cards-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--size-20); }
.cards-5 { display: grid; grid-template-columns: repeat(5,1fr); gap: var(--size-16); }
.sub-label { font-size: var(--type-13); letter-spacing: .16em; text-transform: uppercase; color: var(--body); margin: var(--size-64) 0 var(--size-24); }
.prop-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-16); }
.split-2 { display: grid; grid-template-columns: 5fr 7fr; gap: 5.625rem; align-items: start; }
.row-list { list-style: none; margin: 2.25rem 0 0; padding: 0; border-top: 0.0625rem solid #D3CBC5; }
.row-list li { display: grid; grid-template-columns: 1fr 1.2fr; gap: 1.875rem; padding: var(--size-24) 0; border-bottom: 0.0625rem solid #D3CBC5; }
.row-list h3 { font-size: var(--type-24); }
.row-list p { color: var(--body); }
.markets { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-16); }
.tile-pair { display: grid; grid-template-columns: 1fr 1fr; gap: var(--size-24); }
.tile-pair .cat-tile { height: 32.5rem; }
.brands { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-24); }
.brand { position: relative; border-radius: var(--size-20); background: var(--cream); display: flex; flex-direction: column; overflow: hidden; transition: transform .3s,box-shadow .3s; }
.brand:hover { transform: translateY(-0.375rem); box-shadow: 0 var(--size-24) 3.125rem #0000001a; }
.brand:after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: var(--size-4); background: var(--red); transform: scaleX(.18); transform-origin: left; transition: transform .5s; }
.brand:hover:after { transform: scaleX(1); }
.brand .tag { align-self: flex-start; background: #fff; border-color: #fff; color: var(--red); }
.brand strong { font: 400 2.875rem/1 'Bauer Bodoni Std 1',serif; letter-spacing: -.03em; margin: auto 0 var(--size-20); }
.brand p { color: var(--body); }
.compare { width: 100%; table-layout: fixed; border-collapse: collapse; background: #fff; border-radius: var(--size-20); overflow: hidden; }
.compare th, .compare td { text-align: left; padding: 1.625rem 1.875rem; vertical-align: top; border-bottom: 0.0625rem solid var(--line); }
.compare thead th { font: 400 1.875rem/1.1 'Bauer Bodoni Std 1',serif; letter-spacing: -.02em; padding-block: 2.125rem; background: #fff; }
.compare thead th:first-child { width: 19%; }
.compare tbody th { font-size: var(--type-13); letter-spacing: .16em; text-transform: uppercase; color: var(--red); font-weight: 400; }
.compare td { color: var(--body); line-height: 1.45; }
.compare tbody tr:last-child>* { border-bottom: 0; }
.compare tbody tr:hover td { background: #FBF8F6; color: var(--ink); }
.amb-row { display: grid; grid-template-columns: 1.25fr 1fr; gap: var(--size-24); margin-top: var(--size-56); }
.amb { display: grid; grid-template-columns: 15rem 1fr; gap: 2.125rem; background: var(--cream); border-radius: var(--size-20); padding: var(--size-24); align-items: center; }
.cream .amb, .cream .shop-panel { background: #fff; }
.amb .portrait { height: 18.75rem; border-radius: 0.875rem; overflow: hidden; }
.amb h3 { font-size: var(--type-36); margin: var(--size-4) 0 var(--size-16); }
.amb em { display: block; font: 400 var(--size-20)/1.3 'Bauer Bodoni Std 1',serif; color: var(--red); font-style: normal; margin-bottom: var(--size-16); }
.amb p { color: var(--body); font-size: var(--type-15); line-height: 1.45; }
.amb p+p { margin-top: var(--size-12); }
.shop-panel { background: var(--cream); border-radius: var(--size-20); padding: 2.25rem; display: flex; flex-direction: column; }
.shop-panel h3 { font-size: var(--type-30); margin-bottom: 1.125rem; }
.shop-panel p { color: var(--body); font-size: var(--type-15); line-height: 1.45; }
.shop-panel p+p { margin-top: var(--size-12); }
.shop-panel .chips { margin-top: auto; padding-top: 1.625rem; }
.shop-panel .chips .tag { height: 2.375rem; font-size: var(--type-14); }
.cream .shop-panel .tag { background: var(--cream); border-color: var(--cream); }
.enq2 { display: grid!important; grid-template-columns: 1.3fr .7fr; gap: var(--size-80); align-items: end; }
.enquiry .lead { max-width: 40rem; margin-top: 1.875rem; color: #ffffffe0; }
.cta-stack { display: flex; flex-direction: column; align-items: flex-end; gap: 0.875rem; }
.closing-note { color: var(--body); max-width: 40rem; margin-top: var(--size-40); }
.tagline { font-size: var(--type-13); letter-spacing: .2em; text-transform: uppercase; color: var(--red); margin-top: var(--size-40); }
.hero .hero-description { max-width: 40rem; }
.hero-label { font-size: var(--type-20); line-height: var(--size-24); text-transform: uppercase; color: #fff; margin-bottom: 1.875rem; }
.card-label { font-size: var(--type-12); letter-spacing: .14em; text-transform: uppercase; color: var(--body); margin-bottom: 0.875rem; }
.stat { background: #fff; border-radius: var(--size-16); padding: 1.875rem var(--size-28); min-height: 10.625rem; display: flex; flex-direction: column; justify-content: space-between; gap: 1.125rem; }
.stat strong { font: 400 1.875rem/1.12 'Bauer Bodoni Std 1',serif; letter-spacing: -.02em; font-weight: 400; }
.stat span { font-size: var(--type-14); line-height: 1.4; color: var(--body); }
.stat p { font-size: var(--type-14); line-height: 1.4; color: var(--body); }
.section:not(.cream) :is(.cat-card,.mini,.market,.amb,.shop-panel,.stat) { background: var(--cream); }
.cream :is(.cat-card,.mini,.prop,.market,.brand,.amb,.shop-panel,.big-num,.stat) { background: #fff; }
.section:not(.cream) .mini .mi, .section:not(.cream) .stat .mi { background: #fff; }
.cream .brand .tag, .cream .shop-panel .tag { background: var(--cream); border-color: var(--cream); }
.section:not(.cream) .shop-panel .tag { background: #fff; border-color: #fff; }
.section:not(.cream) .compare { border: 0.0625rem solid var(--line); }
.section:not(.cream) .cat-card:hover { background: var(--red); }
.section:not(.cream) .p-card:not(.final) { background: var(--cream); }
.cream .p-card:not(.final) { background: #fff; }
.process-flow .p-card { min-height: 26.875rem; }
.intro-c { display: grid; grid-template-columns: 1fr 1fr; gap: 6.25rem; align-items: center; }
.intro-c .copy { margin-top: 2.125rem; }
.intro-c .copy p { color: var(--body); }
.intro-c .copy p:first-child { color: var(--ink); font-size: var(--type-18); line-height: 1.45; }
.collage { position: relative; padding-left: 4.375rem; padding-bottom: var(--size-56); }
.collage .c-img { height: 35rem; border-radius: var(--size-20); overflow: hidden; position: relative; }
.collage .c-img img { width: 100%; height: 100%; object-fit: cover; }
.facts { position: absolute; left: 0; bottom: 0; width: 20.625rem; list-style: none; margin: 0; background: #fff; border-radius: var(--size-16); padding: var(--size-8) 1.625rem; box-shadow: 0 var(--size-24) 3.75rem #00000024; }
.facts li { padding: var(--size-16) 0; border-bottom: 0.0625rem solid var(--line); }
.facts li:last-child { border-bottom: 0; }
.facts span { display: block; font-size: var(--type-11); letter-spacing: .16em; text-transform: uppercase; color: var(--red); margin-bottom: 0.375rem; }
.facts strong { font-weight: 400; font-size: var(--type-17); line-height: 1.3; color: var(--ink); }
.journey { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--size-24); }
.j-img { height: 16.875rem; border-radius: var(--size-16); overflow: hidden; position: relative; }
.j-img>* { transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.j-step:hover .j-img>* { transform: scale(1.04); }
.j-line { display: flex; align-items: center; gap: var(--size-12); margin: 1.625rem 0 1.125rem; font-size: var(--type-12); letter-spacing: .16em; text-transform: uppercase; color: var(--red); }
.j-line:after { content: ''; flex: 1; height: 0.0625rem; background: var(--line); transition: background .4s; }
.j-step:hover .j-line:after { background: var(--red); }
.j-step h3 { font-size: var(--type-24); margin-bottom: var(--size-12); }
.j-step p { color: var(--body); font-size: var(--type-15); line-height: 1.5; }
.section.flush { padding: 0; }
.band { display: grid; grid-template-columns: 1fr 1fr; min-height: 41.25rem; }
.band-img { position: relative; min-height: 41.25rem; overflow: hidden; }
.band-img>* { position: absolute!important; inset: 0; width: 100%; height: 100%; }
.band-img img { object-fit: cover; }
.band-text { padding: var(--section-space) calc(100% - 39.25rem) var(--section-space) 5.625rem; display: flex; flex-direction: column; justify-content: center; }
.band.rev .band-img { order: 2; }
.band.rev .band-text { padding: var(--section-space) 5.625rem var(--section-space) calc(100% - 39.25rem); }
.band-text h2 { margin-bottom: 2.125rem; }
.band-text .copy p { color: var(--body); }
.band-text .copy p:first-child { color: var(--ink); font-size: var(--type-18); line-height: 1.45; }
.band-text .mf-pill { align-self: flex-start; margin-top: 2.25rem; }
.over { position: relative; height: 40rem; border-radius: var(--size-20); overflow: hidden; }
.over-card { position: absolute; right: 2.25rem; top: 2.25rem; bottom: 2.25rem; width: 25rem; background: #fff; border-radius: var(--size-16); padding: 2.125rem 2.125rem var(--size-20); display: flex; flex-direction: column; }
.over-card .card-label { margin-bottom: 0.625rem; }
.mk-list { list-style: none; margin: 0; padding: 0; margin-top: auto; }
.mk-list li { display: flex; justify-content: space-between; align-items: center; padding: 0.9375rem 0; border-bottom: 0.0625rem solid var(--line); font: 400 var(--size-24)/1.1 'Bauer Bodoni Std 1',serif; letter-spacing: -.02em; }
.mk-list li:last-child { border-bottom: 0; }
.mk-list li svg { width: var(--size-16); height: var(--size-16); color: var(--red); }
.prop-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--size-40); border-top: 0.0625rem solid var(--line); }
.prop-list li { display: flex; gap: 1.125rem; align-items: center; padding: var(--size-24) 0; border-bottom: 0.0625rem solid var(--line); }
.prop-list .mi { width: var(--size-48); height: var(--size-48); border-radius: 50%; background: var(--cream); color: var(--red); display: grid; place-items: center; flex: none; transition: background .25s,color .25s; }
.prop-list .mi svg { width: var(--size-20); height: var(--size-20); stroke-width: 1.6; }
.cream .prop-list .mi { background: #fff; }
.prop-list li:hover .mi { background: var(--red); color: #fff; }
.prop-list h3 { font-size: var(--type-22); }
.side-img { height: 23.75rem; border-radius: var(--size-20); overflow: hidden; margin-top: 2.75rem; position: relative; }
.side-img img { width: 100%; height: 100%; object-fit: cover; }
.cat-tile figcaption p { color: #ffffffcc; max-width: 28.75rem; margin-top: 0.875rem; font-size: var(--type-15); line-height: 1.5; }
.tile-pair.tall .cat-tile { height: 37.5rem; }
.ic-grid { display: grid; grid-template-columns: repeat(var(--c,3),1fr); gap: var(--size-28) var(--size-24); }
.ic-card { display: block; }
.ic-img { height: var(--h,16.25rem); border-radius: var(--size-16); overflow: hidden; position: relative; }
.ic-img>* { transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.ic-card:hover .ic-img>* { transform: scale(1.04); }
.ic-img img { width: 100%; height: 100%; object-fit: cover; }
.ic-body { padding: 1.375rem 0.125rem 0.375rem; }
.ic-body .t { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--size-16); margin-bottom: 0.625rem; }
.ic-body h3 { font-size: var(--type-24); }
.ic-body p { color: var(--body); font-size: var(--type-15); line-height: 1.5; }
.ic-body .arrow-btn { width: 2.25rem; height: 2.25rem; }
.ic-card:hover .arrow-btn { background: var(--red); border-color: var(--red); color: #fff; }
.why-img { height: 22.5rem; border-radius: var(--size-20); overflow: hidden; margin-top: 2.75rem; position: relative; }
.frow { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5,1fr); border-top: 0.0625rem solid var(--line); border-bottom: 0.0625rem solid var(--line); }
.frow li { padding: 1.875rem 1.625rem 2.125rem; }
.frow li+li { border-left: 0.0625rem solid var(--line); }
.frow li:first-child { padding-left: 0; }
.frow .mi { width: 2.75rem; height: 2.75rem; border-radius: 50%; background: #fff; color: var(--red); display: grid; place-items: center; margin-bottom: 1.375rem; }
.frow .mi svg { width: 1.1875rem; height: 1.1875rem; stroke-width: 1.6; }
.section:not(.cream) .frow .mi { background: var(--cream); }
.frow h3 { font-size: 1.3125rem; margin-bottom: 0.625rem; }
.frow p { color: var(--body); font-size: var(--type-14); line-height: 1.5; }
.vgrid { display: grid; grid-template-columns: .85fr 1.15fr; gap: var(--size-64); align-items: stretch; }
.vgrid .v-img { border-radius: var(--size-20); overflow: hidden; position: relative; min-height: 35rem; }
.vlist { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--size-40); align-content: center; }
.vlist li { padding: 1.625rem 0; border-top: 0.0625rem solid var(--line); }
.vlist .vh { display: flex; align-items: center; gap: 0.875rem; margin-bottom: var(--size-12); }
.vlist .mi { width: var(--size-40); height: var(--size-40); border-radius: 50%; background: #fff; color: var(--red); display: grid; place-items: center; }
.vlist .mi svg { width: 1.125rem; height: 1.125rem; stroke-width: 1.6; }
.section:not(.cream) .vlist .mi { background: var(--cream); }
.vlist h3 { font-size: var(--type-26); }
.vlist p { color: var(--body); font-size: var(--type-15); line-height: 1.5; }
.brand { min-height: 0!important; padding: var(--size-16) var(--size-16) 2.125rem!important; }
.brand .b-img { height: 15rem; border-radius: var(--size-12); overflow: hidden; position: relative; margin-bottom: 1.625rem; }
.brand .tag, .brand strong, .brand p { margin-left: 1.125rem; margin-right: 1.125rem; }
.brand strong { margin-top: 1.125rem!important; margin-bottom: 0.875rem!important; font-size: var(--type-36)!important; }
.brand p { min-height: 0!important; }
.over .ph-tag { left: var(--size-20); right: auto; }
.tab:focus { outline: none; }
.tab:focus-visible { outline: 0.125rem solid var(--red); outline-offset: var(--size-4); border-radius: var(--size-4); }
.school-card .card-label { margin-bottom: 0.875rem; }
.mf-dropdown.mega { position: static; }
.mega-panel { position: absolute; top: 7.625rem; width: auto!important; display: grid; grid-template-columns: 25rem 1fr; gap: var(--size-12); padding: var(--size-12)!important; border-radius: var(--size-20)!important; background: #fff; box-shadow: 0 1.875rem var(--size-80) #00000038!important; color: var(--ink); animation: mmIn .28s cubic-bezier(.2,.7,.2,1); white-space: normal; }
@keyframes mmIn { from{opacity:0;transform:translateY(calc(-1 * var(--size-8)))}to{opacity:1;transform:none}; }
.mega-panel a { padding: 0; border-radius: 0; }
.mega-panel a:hover { background: none; color: inherit; }
.mm-list { padding: 1.375rem 0.875rem 1.125rem; }
.mm-label { font-size: var(--type-12); letter-spacing: .14em; text-transform: uppercase; color: var(--body); margin: 0 var(--size-12) 0.875rem; }
.mega-panel .mm-item { display: grid; grid-template-columns: 2.75rem 1fr var(--size-32); align-items: center; gap: var(--size-16); padding: var(--size-12)!important; border-radius: 0.875rem!important; transition: background .2s; }
.mm-ic { width: 2.75rem; height: 2.75rem; border-radius: 50%; background: var(--cream); color: var(--red); display: grid; place-items: center; transition: background .2s,color .2s; }
.mm-ic svg { width: 1.1875rem; height: 1.1875rem; stroke-width: 1.6; }
.mm-name { font: 400 var(--size-24)/1.1 'Bauer Bodoni Std 1',serif; letter-spacing: -.02em; }
.mm-go { width: var(--size-32); height: var(--size-32); border-radius: 50%; display: grid; place-items: center; color: var(--red); opacity: 0; transform: translateX(-0.375rem); transition: opacity .2s,transform .2s; }
.mm-go svg { width: 0.875rem; height: 0.875rem; }
.mega-panel .mm-item.on, .mega-panel .mm-item:hover { background: var(--cream); }
.mm-item.on .mm-ic { background: var(--red); color: #fff; }
.mm-item.on .mm-go { opacity: 1; transform: none; }
.mega-panel .mm-item[aria-current] { background: var(--cream); }
.mm-body { background: var(--cream); border-radius: 0.875rem; padding: var(--size-40) 2.75rem; min-height: 0; display: flex; }
.mm-prev { display: flex; flex-direction: column; width: 100%; animation: mmIn .3s cubic-bezier(.2,.7,.2,1); }
.mm-prev[hidden] { display: none; }
.mm-kicker { display: block; font-size: var(--type-12); letter-spacing: .14em; text-transform: uppercase; color: var(--red); margin-bottom: var(--size-16); }
.mm-head strong { display: block; font: 400 2.375rem/1.08 'Bauer Bodoni Std 1',serif; letter-spacing: -.03em; font-weight: 400; max-width: 35rem; }
.mm-head p { color: var(--body); margin-top: var(--size-16); max-width: 32.5rem; }
.mm-links { list-style: none; margin: 1.875rem 0 var(--size-32); padding: 0; display: grid; grid-template-columns: 1fr 1fr; column-gap: 2.25rem; border-top: 0.0625rem solid var(--line); }
.mega-panel .mm-links a { display: flex; justify-content: space-between; align-items: center; padding: 0.9375rem 0!important; border-bottom: 0.0625rem solid var(--line); transition: color .2s,padding .25s; }
.mega-panel .mm-links a span { color: var(--red); opacity: .5; transition: opacity .2s,transform .2s; }
.mm-links a span svg { width: 0.875rem; height: 0.875rem; }
.mega-panel .mm-links a:hover { color: var(--red); padding-left: 0.375rem!important; }
.mm-links a:hover span { opacity: 1; transform: translateX(0.1875rem); }
.mega-panel .mm-prev .mf-pill { display: inline-flex!important; align-self: flex-start; white-space: nowrap; margin-top: auto; padding: 0.625rem 0.625rem 0.625rem 1.375rem!important; border-radius: var(--size-80)!important; }
.mega-panel .mm-prev .mf-pill:hover { background: var(--red-dark); color: #fff; }
.ph.contain { background: var(--cream); }
.ph.has-img.contain>img { object-fit: contain; padding: 0.875rem; }
.chan .ph.contain { background: transparent; }
.chan .ph.contain>img { padding: 0; }
.brand-logo .ph.contain { position: absolute; inset: 0; background: transparent; }
.brand-logo .ph.contain>img { padding: 1.375rem; }
.ph.sust { background: #eedfd6; }
.ph.sust>img { padding: var(--size-24); }
.ph.portrait { background: #f3f3f3; }
.ph.portrait>img { object-position: center top; }
.ph.no-photo { background: #fbfbfb; }
.ph.no-photo>img { object-fit: contain; padding: 6.875rem 4.375rem; opacity: .9; }
.news-card .ph>img, .press-row .ph>img { object-position: center 18%; }
.news-card .outlet .pub { height: var(--size-24); width: auto; max-width: 12.5rem; object-fit: contain; object-position: left; }
.ph.has-img { background: #e9e0d8; }
.ph.has-img>img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ph.has-img .ph-tag { display: none; }
.mf-nav a.mf-nav-item { color: inherit; }
.mf-nav .is-current { background: #ffffff26; }
.mf-header.light { color: var(--ink); }
.mf-header.light .mf-nav { background: #ffffffb3; border-color: var(--line); }
.mf-header.light .mf-nav-item:hover, .mf-header.light .mf-nav-trigger:hover, .mf-header.light .mf-nav .is-current { background: #0000000d; }
.mf-footer-col a { color: inherit; }
.mega-panel { left: 0; right: 0; }
.cream.dots-top { background-image: radial-gradient(#e6dad1 0.06875rem,transparent 0.08125rem); background-size: 1.125rem 1.125rem; background-repeat: repeat-x; }
.center-head { text-align: center; margin-bottom: var(--size-56); }
.center-head h2 { display: inline-block; }
.inline-h2 .accent { display: inline; }
.red-sq { width: var(--size-48); height: var(--size-48); border-radius: var(--size-12); background: var(--red); color: #fff; display: grid; place-items: center; flex: none; }
.red-sq svg { width: 1.375rem; height: 1.375rem; stroke-width: 1.7; }
.view-all { display: flex; justify-content: space-between; align-items: end; margin-bottom: var(--size-48); }
.pill-sm { min-height: 2.75rem; padding: 0.375rem 0.375rem 0.375rem 1.125rem; font-size: var(--type-15); }
.pill-sm .mf-icon { width: 1.875rem; height: 1.875rem; }
.meta { display: flex; align-items: center; gap: 0.625rem; font-size: var(--type-12); letter-spacing: .08em; text-transform: uppercase; color: var(--body); }
.meta b { font-weight: 400; color: var(--red); }
.meta i { width: 0.1875rem; height: 0.1875rem; border-radius: 50%; background: currentColor; display: block; }
.hero-slides { position: absolute; inset: 0; z-index: -3; }
.hero-slides .ph { position: absolute; inset: 0; opacity: 0; transition: opacity 1.2s ease; }
.hero-slides .ph.on { opacity: 1; }
.hero-dots { display: flex; gap: 0.625rem; margin-top: var(--size-56); }
.hero-dots button { width: 2.125rem; height: 0.1875rem; border-radius: 0.1875rem; background: #ffffff59; padding: 0; transition: background .3s,width .3s; }
.hero-dots button.on { background: var(--red); width: var(--size-56); }
.stat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.875rem; }
.fstat { background: #fff; border-radius: var(--size-16); padding: 2.125rem 2.125rem 1.875rem; min-height: 11.125rem; display: flex; flex-direction: column; justify-content: space-between; gap: var(--size-20); }
.fstat strong { font: 400 3.25rem/1 'Bauer Bodoni Std 1',serif; letter-spacing: -.03em; }
.fstat span { color: #929292; font-size: var(--type-15); line-height: 1.4; }
.section:not(.cream) .fstat { background: var(--cream); }
.split-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 5.625rem; align-items: center; }
.split-intro .copy { margin-top: 2.125rem; }
.split-intro .copy p { color: var(--body); }
.split-intro .copy p:first-child { color: #404040; font-size: var(--type-19); line-height: 1.45; }
.split-intro .mf-pill { margin-top: 2.375rem; }
.brand-head { display: flex; justify-content: space-between; align-items: end; margin-bottom: var(--size-48); }
.car-btns { display: flex; gap: var(--size-12); }
.car-btn { width: 3.25rem; height: 3.25rem; border-radius: 50%; border: 0.0625rem solid var(--line); background: #fff; display: grid; place-items: center; color: var(--ink); transition: background .2s,color .2s,border-color .2s; }
.car-btn svg { width: 1.125rem; height: 1.125rem; }
.car-btn:hover { background: var(--ink); border-color: var(--ink); color: #fff; }
.car-btn.prev svg { transform: rotate(180deg); }
.brand-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc(50% - 0.625rem); grid-template-rows: 1fr 1fr; gap: var(--size-20); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; scroll-behavior: smooth; }
.brand-track::-webkit-scrollbar { display: none; }
.brand-card { scroll-snap-align: start; display: grid; grid-template-columns: 12.5rem 1fr 3.25rem; align-items: center; gap: var(--size-28); padding: var(--size-12) var(--size-28) var(--size-12) var(--size-12); border: 0.0625rem solid var(--line); border-radius: var(--size-16); background: #fff; transition: box-shadow .3s,border-color .3s; }
.brand-card:hover { box-shadow: 0 1.125rem var(--size-40) #0000001a; border-color: transparent; }
.brand-logo { height: 9.375rem; border-radius: var(--size-12); background: var(--cream); position: relative; overflow: hidden; display: grid; place-items: center; }
.brand-logo .wm { font: 400 1.625rem/1.1 'Bauer Bodoni Std 1',serif; color: var(--red); text-align: center; padding: 0 var(--size-12); }
.brand-card h3 { font-size: var(--type-26); }
.brand-card p { color: var(--body); font-size: var(--type-14); margin-top: var(--size-8); }
.red-arrow { width: 2.75rem; height: 2.75rem; border-radius: 50%; background: var(--red); color: #fff; display: grid; place-items: center; transition: transform .25s; }
.red-arrow svg { width: var(--size-16); height: var(--size-16); }
.brand-card:hover .red-arrow { transform: rotate(-45deg); }
.biz-switch { position: relative; isolation: isolate; min-height: 47.5rem; color: #fff; display: flex; align-items: flex-end; padding-block: var(--section-space); background: #1b1b1b; overflow: hidden; }
.biz-bg { position: absolute; inset: 0; z-index: -2; }
.biz-bg .ph { position: absolute; inset: 0; opacity: 0; transition: opacity .8s; }
.biz-bg .ph.on { opacity: 1; }
.biz-switch:after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#000d 0%,#0008 50%,#0007 100%),linear-gradient(0deg,#000a,#0000 50%); }
.biz-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 5.625rem; align-items: end; }
.biz-copy h2 { font-size: var(--type-78); letter-spacing: -.03em; }
.biz-copy p { max-width: 32.5rem; margin: var(--size-28) 0 2.25rem; color: #ffffffd9; font-size: var(--type-18); line-height: 1.5; }
.biz-panel[hidden] { display: none; }
.biz-panel { animation: fadeUp .5s cubic-bezier(.2,.7,.2,1); }
.biz-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.biz-list li { border-bottom: 0.0625rem solid #ffffff2e; }
.biz-list button { display: flex; align-items: center; width: 100%; height: 5.375rem; text-align: left; background: none; color: #ffffff59; font: 400 1.875rem/1 'Lato',sans-serif; letter-spacing: -.01em; padding: 0 0 0 var(--size-32); position: relative; transition: color .25s; }
.biz-list button:before, .biz-list button:after { content: ''; position: absolute; left: 0; background: var(--red); transition: transform .4s cubic-bezier(.2,.7,.2,1); }
.biz-list button:before { top: calc(-1 * var(--size-4)); bottom: -0.0625rem; width: 0.1875rem; transform: scaleY(0); transform-origin: bottom; }
.biz-list button:after { bottom: -0.125rem; height: 0.1875rem; width: 6.25rem; transform: scaleX(0); transform-origin: left; }
.biz-list button:hover { color: #ffffffa6; }
.biz-list button[aria-selected=true] { color: #fff; font-family: 'Bauer Bodoni Std 1',serif; letter-spacing: -.02em; }
.biz-list button[aria-selected=true]:before { transform: scaleY(1); }
.biz-list button[aria-selected=true]:after { transform: scaleX(1); }
.check-list { list-style: none; margin: 2.125rem 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--size-24); }
.check-list li { display: grid; grid-template-columns: var(--size-48) 1fr; gap: 1.125rem; align-items: start; }
.check-list h3 { font-size: var(--type-22); margin: var(--size-4) 0 var(--size-8); }
.check-list p { color: var(--body); font-size: var(--type-15); }
.media-home { display: grid; grid-template-columns: 1.05fr .95fr; gap: var(--size-24); }
.press-feature { position: relative; border-radius: var(--size-20); overflow: hidden; min-height: 33.75rem; color: #fff; display: flex; align-items: flex-end; isolation: isolate; }
.press-feature>.ph { position: absolute; inset: 0; z-index: -2; }
.press-feature:after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,#000e 0%,#0006 45%,#0000 75%); }
.press-feature .pf-body { padding: var(--size-40); }
.press-feature .meta { color: #ffffffb3; }
.press-feature .meta b { color: #fff; }
.press-feature h3 { font-size: var(--type-30); margin: 1.125rem 0 0.875rem; max-width: 32.5rem; }
.press-feature p { color: #ffffffc7; max-width: 32.5rem; font-size: var(--type-15); line-height: 1.5; }
.press-list { background: var(--cream); border-radius: var(--size-20); padding: 0.875rem 1.375rem; display: flex; flex-direction: column; }
.press-row { display: grid; grid-template-columns: 9.375rem 1fr; gap: 1.375rem; align-items: center; padding: 0.875rem 0; border-bottom: 0.0625rem solid var(--line); }
.press-row:last-child { border-bottom: 0; }
.press-row .ph { height: 7rem; border-radius: 0.625rem; overflow: hidden; }
.press-row h4 { font: 400 1.0625rem/1.3 'Lato',sans-serif; margin-bottom: 0.625rem; transition: color .2s; }
.press-row:hover h4 { color: var(--red); }
.post-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-24); }
.post-card { background: #fff; border-radius: var(--size-20); overflow: hidden; display: flex; flex-direction: column; transition: transform .3s,box-shadow .3s; }
.section:not(.cream) .post-card { background: var(--cream); }
.post-card:hover { transform: translateY(-0.375rem); box-shadow: 0 1.375rem 2.75rem #00000014; }
.post-card .ph { height: 14.375rem; }
.post-card .pc-body { padding: 1.625rem 1.625rem 1.375rem; display: flex; flex-direction: column; flex: 1; }
.post-card h3 { font: 400 1.375rem/1.25 'Lato',sans-serif; letter-spacing: -.01em; margin: var(--size-16) 0 var(--size-12); }
.post-card p { color: var(--body); font-size: var(--type-15); line-height: 1.5; }
.post-card .pc-foot { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: 1.375rem; font-size: var(--type-13); color: var(--body); }
.post-card .red-arrow { width: var(--size-40); height: var(--size-40); }
.post-card:hover .red-arrow { transform: rotate(-45deg); }
.inv-card { background: #1b1b1b; color: #fff; border-radius: var(--size-24); padding: var(--size-64); display: grid; grid-template-columns: 1fr 1fr; gap: var(--size-80); align-items: center; background-image: radial-gradient(#ffffff10 0.0625rem,transparent 0.075rem); background-size: 1.125rem 1.125rem; }
.inv-card p.lead { color: #ffffffb3; margin: var(--size-28) 0 2.375rem; font-size: var(--type-18); }
.inv-stats { display: grid; grid-template-columns: 1fr 1fr; border-radius: var(--size-16); overflow: hidden; }
.inv-stats div { background: #1b1b1b; padding: 1.875rem; }
.inv-stats span { display: block; font-size: var(--type-12); letter-spacing: .14em; color: #ffffff8c; margin-bottom: 0.875rem; }
.inv-stats strong { display: block; font: 400 2.625rem/1 'Bauer Bodoni Std 1',serif; letter-spacing: -.02em; }
.inv-stats small { display: block; color: #ffffff8c; margin-top: 0.625rem; font-size: var(--type-13); }
.feat-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-20); }
.feat-card { background: #fff; border-radius: var(--size-20); padding: var(--size-40) 2.25rem; display: flex; flex-direction: column; gap: 1.375rem; transition: transform .3s,box-shadow .3s; }
.section:not(.cream) .feat-card { background: var(--cream); }
.feat-card:hover { transform: translateY(-0.375rem); box-shadow: 0 1.375rem 2.75rem #00000012; }
.feat-card h3 { font-size: var(--type-24); }
.feat-card p { color: var(--body); font-size: var(--type-15); line-height: 1.5; }
.leader { background: #1b1b1b; color: #fff; border-radius: var(--size-24); padding: 0.875rem; display: grid; grid-template-columns: 1fr 1fr; gap: var(--size-64); align-items: center; }
.leader-photo { position: relative; height: 38.75rem; border-radius: var(--size-16); overflow: hidden; }
.leader-photo .ph { position: absolute; inset: 0; }
.leader-name { position: absolute; left: var(--size-20); bottom: var(--size-20); z-index: 2; background: #000000b3; backdrop-filter: blur(var(--size-8)); border-radius: var(--size-12); padding: var(--size-16) var(--size-20); }
.leader-name strong { display: block; font: 400 1.375rem 'Bauer Bodoni Std 1',serif; }
.leader-name span { font-size: var(--type-13); color: #ffffffb3; }
.leader-copy { padding: var(--size-40) 3.75rem var(--size-40) 0; }
.leader-copy h2 { margin-bottom: 1.875rem; }
.leader-copy p { color: #ffffffbf; font-size: var(--type-15); line-height: 1.6; }
.leader-copy p+p { margin-top: var(--size-16); }
.leader-copy .mf-pill { margin-top: 2.125rem; }
.chan-list { display: flex; flex-direction: column; gap: var(--size-20); }
.chan { background: var(--cream); border-radius: var(--size-20); padding: 0.875rem 0.875rem 0.875rem 2.75rem; display: grid; grid-template-columns: 1fr 22.5rem; gap: var(--size-40); align-items: center; transition: box-shadow .3s; }
.chan:hover { box-shadow: 0 var(--size-20) var(--size-40) #00000012; }
.chan .num { font-size: var(--type-13); letter-spacing: .16em; color: var(--red); display: block; margin-bottom: 0.875rem; }
.chan h3 { font-size: var(--type-32); margin-bottom: var(--size-12); }
.chan p { color: var(--body); max-width: 32.5rem; }
.chan .chips { margin-top: 1.375rem; }
.chan .tag { height: 2.25rem; font-size: var(--type-13); gap: var(--size-8); }
.chan .tag svg { width: 0.875rem; height: 0.875rem; color: var(--red); }
.chan .ph { height: 15rem; border-radius: 0.875rem; overflow: hidden; }
.tl { display: grid; grid-template-columns: 16.25rem 1fr; gap: var(--size-80); align-items: start; }
.tl-nav { position: sticky; top: var(--size-40); list-style: none; margin: 0; padding: 0; border-left: 0.0625rem solid var(--line); }
.tl-nav a { display: block; padding: 0.875rem 0 0.875rem var(--size-24); position: relative; color: var(--body); transition: color .25s; }
.tl-nav a small { display: block; font-size: var(--type-12); letter-spacing: .12em; color: inherit; margin-bottom: var(--size-4); }
.tl-nav a span { font: 400 1.375rem/1.1 'Bauer Bodoni Std 1',serif; }
.tl-nav a:before { content: ''; position: absolute; left: -0.0625rem; top: 0; bottom: 0; width: 0.125rem; background: var(--red); transform: scaleY(0); transition: transform .3s; }
.tl-nav a.on { color: var(--ink); }
.tl-nav a.on small { color: var(--red); }
.tl-nav a.on:before { transform: scaleY(1); }
.era { border-bottom: 0.0625rem solid var(--line); scroll-margin-top: var(--size-40); }
.era:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.era-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1.875rem; margin-bottom: 2.125rem; }
.era-head small { font-size: var(--type-13); letter-spacing: .16em; color: var(--red); }
.era-img { height: 26.25rem; border-radius: var(--size-20); overflow: hidden; margin-bottom: var(--size-40); position: relative; }
.ev { display: grid; grid-template-columns: 9.375rem 1fr; gap: 1.875rem; padding: 1.625rem 0; border-top: 0.0625rem solid var(--line); }
.ev .yr { font: 400 var(--size-28)/1 'Bauer Bodoni Std 1',serif; color: var(--red); letter-spacing: -.02em; }
.ev h3 { font-size: var(--type-24); margin-bottom: var(--size-12); }
.ev p { color: var(--body); line-height: 1.55; max-width: 40rem; }
.today { background: var(--red); color: #fff; border-radius: var(--size-20); padding: 2.75rem; display: flex; justify-content: space-between; align-items: center; gap: var(--size-40); }
.today h3 { font-size: var(--type-34); }
.today p { max-width: 32.5rem; color: #ffffffd9; }
.lead-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--size-20); }
.lead-card { background: var(--cream); border-radius: 0.875rem; padding: 0.625rem; display: grid; grid-template-columns: 17.5rem 1fr; }
.lead-card .ph { height: 20rem; border-radius: 0.625rem; overflow: hidden; }
.lead-card .lc-body { padding: var(--size-28) 1.625rem; display: flex; flex-direction: column; justify-content: space-between; gap: var(--size-20); }
.lead-card h3 { font-size: var(--type-26); margin-bottom: 0.625rem; }
.lead-card .role { font-size: var(--type-15); line-height: 1.4; }
.lead-card p { color: var(--body); font-size: var(--type-15); line-height: 1.5; }
.dir-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--size-20); }
.dir-card { width: calc(25% - 0.9375rem); background: var(--cream); border-radius: 0.875rem; padding: 0.625rem; transition: transform .3s; }
.dir-card:hover { transform: translateY(-0.375rem); }
.dir-card .ph { height: 18.75rem; border-radius: 0.625rem; overflow: hidden; }
.dir-card .dc-body { padding: var(--size-20) 0.625rem var(--size-12); }
.dir-card h3 { font-size: var(--type-22); margin-bottom: var(--size-8); }
.dir-card span { font-size: var(--type-14); color: var(--body); }
.ticker { border-bottom: 0.0625rem solid var(--line); background: #fff; }
.ticker .mf-inner { display: flex; align-items: center; gap: var(--size-40); height: 6.25rem; }
.tk { display: flex; align-items: center; gap: var(--size-16); }
.tk small { font-size: var(--type-12); color: var(--body); }
.tk strong { font-size: var(--type-22); font-weight: 400; letter-spacing: .02em; }
.tk .px { display: inline-flex; align-items: center; gap: 0.375rem; padding: var(--size-8) 0.875rem; border-radius: var(--size-8); font-size: var(--type-20); }
.px.up { background: #e7f6ea; color: #1c8a3a; }
.px.down { background: #fde8e8; color: var(--red); }
.tk-note { margin-left: auto; font-size: var(--type-12); color: var(--body); text-align: right; line-height: 1.5; }
.kpi-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--size-16); }
.kpi { background: #fff; border-radius: var(--size-16); padding: var(--size-32) 1.875rem; min-height: 12.5rem; }
.kpi strong { display: block; font: 400 2.875rem/1 'Bauer Bodoni Std 1',serif; color: var(--red); letter-spacing: -.03em; }
.kpi span { display: block; margin: var(--size-12) 0 1.125rem; font-size: var(--type-15); letter-spacing: .04em; }
.kpi p { color: #929292; font-size: var(--type-14); line-height: 1.45; }
.ir { background: var(--cream); border-radius: var(--size-20); padding: var(--size-16); display: grid; gap: var(--size-20); }
.ir-nav { background: #000; border-radius: var(--size-12); padding: var(--size-12); display: flex; flex-direction: column; gap: var(--size-4); }
.ir-nav button { text-align: left; color: #fff; background: transparent; padding: 0.9375rem 1.125rem; border-radius: var(--size-8); font-size: var(--type-15); transition: background .2s; }
.ir-nav button:hover { background: #ffffff1a; }
.ir-nav button[aria-selected=true] { background: var(--red); }
.ir-body { padding: 0.625rem 0.375rem; }
.ir-top { display: flex; justify-content: space-between; align-items: center; gap: var(--size-20); margin-bottom: var(--size-20); }
.ir-top h3 { font-size: var(--type-28); }
.ir-search { display: flex; align-items: center; gap: 0.625rem; background: #fff; border-radius: 0.625rem; padding: 0 var(--size-16); height: var(--size-48); width: 18.75rem; color: #929292; }
.ir-search svg { width: var(--size-16); height: var(--size-16); }
.ir-search input { border: 0; outline: 0; flex: 1; background: transparent; font-size: var(--type-15); }
.ir-table { width: 100%; background: #fff; border-radius: var(--size-12); border-collapse: separate; border-spacing: 0; padding: var(--size-12); font-size: var(--type-15); }
.ir-table th { background: var(--cream); text-align: left; font-weight: 400; font-size: var(--type-13); letter-spacing: .06em; padding: 0.875rem 1.125rem; }
.ir-table th:first-child { border-radius: var(--size-8) 0 0 var(--size-8); }
.ir-table th:last-child { border-radius: 0 var(--size-8) var(--size-8) 0; }
.ir-table td { padding: 0.875rem 1.125rem; border-bottom: 0.0625rem solid #f1ece8; }
.ir-table tr:last-child td { border-bottom: 0; }
.badge { display: inline-block; margin-left: var(--size-8); background: var(--red); color: #fff; border-radius: var(--size-20); font-size: var(--type-10); padding: 0.125rem var(--size-8); vertical-align: middle; }
.dl { display: inline-flex; align-items: center; gap: var(--size-8); border: 0.0625rem solid var(--line); border-radius: var(--size-8); padding: 0.4375rem var(--size-12); font-size: var(--type-14); background: #fff; transition: border-color .2s,color .2s; }
.dl svg { width: 0.875rem; height: 0.875rem; }
.dl:hover { border-color: var(--red); color: var(--red); }
.doc-list { background: #fff; border-radius: var(--size-12); padding: 0.375rem 1.375rem; }
.doc-list li { display: flex; justify-content: space-between; align-items: center; padding: 1.125rem 0; border-bottom: 0.0625rem solid #f1ece8; }
.doc-list li:last-child { border-bottom: 0; }
.doc-list { list-style: none; margin: 0; }
.job-list { display: flex; flex-direction: column; gap: var(--size-16); }
.job { background: #f9f9f9; border-radius: var(--size-12); padding: var(--size-28) var(--size-28) var(--size-28) var(--size-32); display: grid; grid-template-columns: 1fr auto; gap: 1.875rem; align-items: center; border: 0.0625rem solid transparent; transition: border-color .25s,background .25s; }
.job:hover { border-color: var(--line); background: #fff; }
.job h3 { font: 400 var(--size-24)/1.15 'Lato',sans-serif; margin-bottom: var(--size-12); }
.job p { color: var(--body); max-width: 47.5rem; }
.chip-row { display: flex; gap: var(--size-12); margin-top: 1.375rem; }
.chip { display: inline-flex; align-items: center; gap: var(--size-8); border: 0.0625rem solid var(--ink); border-radius: 1.875rem; padding: 0.4375rem 0.875rem; font-size: var(--type-11); letter-spacing: .06em; text-transform: uppercase; }
.chip svg { width: 0.8125rem; height: 0.8125rem; }
.job-hero { background: #000; color: #fff; padding: 14.375rem 0 5.625rem; background-image: radial-gradient(#ffffff14 0.0625rem,transparent 0.075rem); background-size: 1.125rem 1.125rem; }
.job-hero h1 { font-size: var(--type-60); max-width: 56.25rem; }
.job-hero .chip { border-color: #fff; }
.job-hero .back { display: inline-flex; align-items: center; gap: 0.625rem; color: #ffffffb3; margin-bottom: 2.125rem; font-size: var(--type-14); }
.job-hero .back svg { width: 0.875rem; height: 0.875rem; transform: rotate(180deg); }
.job-body { display: grid; grid-template-columns: 48rem 1fr; gap: var(--size-56); align-items: start; }
.job-body h2 { font-size: var(--type-35); margin: 0 0 var(--size-24); }
.job-body section+section { margin-top: var(--size-48); }
.job-body p { color: #404040; line-height: 1.55; }
.dash-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--size-16); }
.dash-list li { display: grid; grid-template-columns: 1.1875rem 1fr; gap: 0.875rem; color: #404040; line-height: 1.45; }
.dash-list li:before { content: ''; height: 0.0625rem; background: var(--red); margin-top: 0.6875rem; }
.apply { position: sticky; top: 1.875rem; background: #f9f9f9; border: 0.0625rem solid #0000001a; border-radius: var(--size-12); padding: 2.25rem; }
.apply h2 { font-size: var(--type-35); margin-bottom: 0.875rem; }
.apply>p { color: #404040; margin-bottom: 2.125rem; }
.apply label { display: flex; flex-direction: column; gap: 0.625rem; font-size: var(--type-12); letter-spacing: .06em; margin-bottom: var(--size-20); }
.apply input[type=text], .apply input[type=email], .apply input[type=tel] { border: 0.0625rem solid #0000001a; border-radius: 0.375rem; padding: 0.9375rem; font-size: var(--type-16); background: #fff; }
.apply input:focus { outline: 0; border-color: var(--red); }
.upload { border: 0.0625rem dashed #00000033; border-radius: 0.375rem; background: #fff; padding: 1.625rem; text-align: center; cursor: pointer; display: block; transition: border-color .2s; }
.upload:hover { border-color: var(--red); }
.upload svg { width: 1.125rem; height: 1.125rem; margin: 0 auto 0.875rem; color: var(--red); }
.upload b { display: block; font-weight: 400; font-size: var(--type-12); letter-spacing: .06em; }
.upload small { color: var(--body); font-size: var(--type-11); }
.upload input { display: none; }
.apply .mf-pill { width: 100%; margin-top: 0.375rem; }
.prog { display: grid; grid-template-columns: 1fr 1fr; gap: 5.625rem; align-items: center; }
.prog.rev>.prog-img { order: -1; }
.prog-img { height: 28.75rem; border-radius: var(--size-20); overflow: hidden; position: relative; }
.prog small { font-size: var(--type-13); color: var(--body); display: block; margin-bottom: 1.375rem; }
.prog h2 { font-size: 3.25rem; letter-spacing: .04em; }
.prog .sub { font: 400 1.625rem/1.2 'Bauer Bodoni Std 1',serif; color: var(--red); margin: 1.125rem 0 1.625rem; }
.prog p { color: var(--body); line-height: 1.55; }
.prog p+p { margin-top: 0.875rem; }
.stage-title { font: 400 1.625rem/1.1 'Bauer Bodoni Std 1',serif; margin: 4.5rem 0 1.625rem; }
.stages { display: grid; grid-template-columns: repeat(4,1fr); gap: var(--size-16); counter-reset: st; }
.stage { background: #fff; border-radius: var(--size-16); padding: 1.875rem var(--size-28) 2.125rem; transition: transform .3s,box-shadow .3s; }
.section:not(.cream) .stage { background: var(--cream); }
.stage:hover { transform: translateY(-0.375rem); box-shadow: 0 var(--size-20) var(--size-40) #00000012; }
.stage small { font-size: var(--type-13); color: var(--red); letter-spacing: .1em; }
.stage h3 { font-size: var(--type-26); margin: var(--size-20) 0 0.625rem; }
.stage b { display: block; font-weight: 700; font-size: var(--type-13); margin-bottom: 1.375rem; }
.stage p { color: var(--body); font-size: var(--type-14); line-height: 1.5; }
.grow-row { display: flex; justify-content: space-between; align-items: center; gap: 3.75rem; }
.grow-row h2 { margin-bottom: 1.125rem; }
.grow-row p { color: var(--body); max-width: 35rem; }
.filters { display: flex; gap: var(--size-12); margin-bottom: var(--size-40); flex-wrap: wrap; }
.filters button { height: 2.625rem; padding: 0 var(--size-24); border-radius: var(--size-80); border: 0.0625rem solid var(--red); color: var(--red); background: #fff; transition: background .2s,color .2s; }
.filters button[aria-pressed=true], .filters button:hover { background: var(--red); color: #fff; }
.news-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-16); }
.news-card { background: var(--cream); border-radius: var(--size-20); padding: 1.125rem 1.125rem var(--size-28); display: flex; flex-direction: column; gap: var(--size-24); transition: transform .3s,box-shadow .3s; }
.news-card:hover { transform: translateY(-0.375rem); box-shadow: 0 1.375rem 2.75rem #00000012; }
.news-card .ph { height: 14.9375rem; border-radius: 0.625rem; overflow: hidden; }
.news-card .outlet { display: flex; justify-content: space-between; align-items: center; }
.news-card .outlet span { display: inline-flex; align-items: center; height: var(--size-28); padding: 0 var(--size-12); border-radius: 0.375rem; background: #fff; font-size: var(--type-12); letter-spacing: .08em; text-transform: uppercase; color: var(--body); }
.news-card h3 { font: 500 var(--size-20)/1.3 'Lato',sans-serif; letter-spacing: -.01em; }
.news-card[hidden], .post-card[hidden] { display: none; }
.post-head { background: var(--cream); padding: 12.5rem 0 5.625rem; background-image: radial-gradient(#e4d8cf 0.06875rem,transparent 0.08125rem); background-size: 1.125rem 1.125rem; }
.post-head .mf-inner { display: grid; grid-template-columns: 30.25rem 1fr; gap: 6.875rem; align-items: center; }
.post-head h1 { font-size: var(--type-55); line-height: 1.1; letter-spacing: -.03em; }
.post-meta { display: flex; align-items: center; gap: 1.375rem; margin-top: 3.75rem; color: #929292; font-size: var(--type-14); }
.author { display: inline-flex; align-items: center; gap: 0.625rem; background: #bdb4af; color: #fff; border-radius: 0.625rem; padding: 0.4375rem 0.875rem 0.4375rem var(--size-8); }
.author i { width: var(--size-24); height: var(--size-24); border-radius: 50%; background: #fff; display: block; }
.share { width: var(--size-40); height: var(--size-40); border-radius: 50%; border: 0.0625rem solid var(--line); display: grid; place-items: center; background: #fff; }
.share svg { width: var(--size-16); height: var(--size-16); }
.post-head .ph { height: 27.3125rem; border-radius: var(--size-20); overflow: hidden; }
.article { width: 49rem; margin: 0 auto; padding: var(--size-80) 0 6.875rem; }
.article p { font-size: var(--type-17); line-height: 1.75; color: #262626; }
.article p+p { margin-top: 1.125rem; }
.article h2 { font-size: var(--type-34); line-height: 1.1; margin: var(--size-48) 0 var(--size-20); }
.article .lede { font-size: var(--type-20); line-height: 1.6; color: #000; }
.pillars { background: var(--cream); border-radius: 1.5625rem; display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; min-height: 33.75rem; }
.pillars .acc { padding: 1.875rem; display: flex; flex-direction: column; gap: 0.375rem; }
.pill-item { border-radius: var(--size-12); padding: 1.625rem 1.875rem; cursor: pointer; transition: background .3s; }
.pill-item.open { background: #fff; cursor: default; }
.pill-item small { font-size: var(--type-13); letter-spacing: .12em; color: #00000080; }
.pill-item h3 { font-size: var(--type-26); margin-top: 0.875rem; transition: color .3s; }
.pill-item.open h3 { color: var(--red); }
.pill-item ul { margin: var(--size-20) 0 0; padding-left: 1.125rem; color: #00000080; line-height: 1.65; display: none; }
.pill-item.open ul { display: block; }
.pill-item li::marker { color: var(--red); }
.pillars>.ph { position: relative; height: auto; }
.done-track { display: grid; grid-auto-flow: column; grid-auto-columns: 25.5625rem; gap: var(--size-24); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 0.375rem; scroll-behavior: smooth; }
.done-track::-webkit-scrollbar { display: none; }
.done { scroll-snap-align: start; background: #fff; border-radius: var(--size-20); overflow: hidden; display: flex; flex-direction: column; }
.done .ph { height: 17rem; }
.done .d-body { padding: 1.875rem; }
.done h3 { font-size: var(--type-24); margin-bottom: var(--size-16); }
.done p { color: var(--body); line-height: 1.45; font-size: var(--type-15); }
.hw:not(.on), .hd:not(.on) { display: none; }
.hw.on, .hd.on { animation: hwIn .7s cubic-bezier(.2,.7,.2,1); }
@keyframes hwIn { from{opacity:0;transform:translateY(var(--size-12))}to{opacity:1;transform:none}; }
.hw.on { display: inline-block; }
.hd.on { display: block; }
.mf-header.is-fixed { position: fixed; top: 0.875rem; left: 0; right: 0; width: 85rem; margin-inline: auto; align-items: center; padding: var(--size-12) var(--size-28) var(--size-12) var(--size-40); background: #fff; color: var(--ink); border-radius: var(--size-80); box-shadow: 0 0.625rem 2.125rem #00000014; border: 0.0625rem solid #0000000d; transform: translateY(calc(-100% - 1.875rem)); transition: transform .35s cubic-bezier(.2,.7,.2,1); z-index: 60; }
.mf-header.is-fixed.is-shown { transform: none; }
.mf-header.is-fixed .mf-logo { width: 7.5rem; height: var(--size-56); object-position: left center; }
.mf-header.is-fixed .mf-nav { background: none; border-color: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; }
.mf-header.is-fixed .mf-nav-item:hover, .mf-header.is-fixed .mf-nav-trigger:hover, .mf-header.is-fixed .mf-nav .is-current { background: #0000000d; }
.mf-header.is-fixed .mf-pill { margin-top: 0; }
.enquiry-dialog { width: 40rem; max-height: 92vh; padding: var(--size-40) 2.75rem; }
.enq-form { display: flex; flex-direction: column; gap: var(--size-24); }
.enq-form .form-field small { color: var(--body); font-size: var(--type-12); }
.enq-head h2 { font-size: var(--type-36); margin-bottom: 0.625rem; }
.enq-head p { color: var(--body); max-width: 38.75rem; }
.form-field select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 0.875rem center; padding-right: 2.25rem; }
.enq-form .form-field { position: relative; }
.form-field .err { display: none; position: absolute; left: 0; top: 100%; margin-top: 0.1875rem; font-style: normal; font-size: var(--type-12); line-height: 1.2; color: var(--red); }
.enq-form .form-grid { row-gap: var(--size-24); column-gap: var(--size-16); }
.form-field.invalid input, .form-field.invalid select, .form-field.invalid textarea { border-color: var(--red); }
.form-field.invalid .err { display: block; }
.consent { display: grid; grid-template-columns: var(--size-20) 1fr; gap: var(--size-12); font-size: var(--type-14); line-height: 1.45; color: var(--body); cursor: pointer; }
.consent input { width: 1.125rem; height: 1.125rem; accent-color: var(--red); margin: 0.0625rem 0 0; }
.consent.invalid span { color: var(--red); }
.enq-foot { display: flex; align-items: center; gap: 1.375rem; }
.enq-done { text-align: center; padding: var(--size-40) var(--size-20); }
.enq-done .tick { width: var(--size-64); height: var(--size-64); border-radius: 50%; background: var(--red); color: #fff; display: grid; place-items: center; margin: 0 auto var(--size-24); }
.enq-done .tick svg { width: var(--size-28); height: var(--size-28); }
.enq-done h3 { font-size: var(--type-34); margin-bottom: 0.875rem; }
.enq-done p { color: var(--body); max-width: 30rem; margin: 0 auto var(--size-28); }
.enq-done .mf-pill-white { border: 0.0625rem solid var(--red); }
.enq-form.sent>*:not(.enq-done) { display: none; }
.enq-form.sent .enq-done { display: block; }
.contact-wrap { display: grid; grid-template-columns: 1fr 25rem; gap: var(--size-40); align-items: start; }
.contact-form { background: #fff; border-radius: var(--size-24); padding: var(--size-48) 3.25rem; box-shadow: 0 var(--size-24) 3.75rem #0000000f; }
.contact-side { position: sticky; top: 1.875rem; display: flex; flex-direction: column; gap: var(--size-16); }
.side-card { background: #fff; border-radius: var(--size-20); padding: 1.875rem; }
.side-card h3 { font-size: var(--type-24); margin-bottom: 1.125rem; }
.route { display: grid; grid-template-columns: 2.75rem 1fr; gap: 0.875rem; padding: var(--size-16) 0; border-top: 0.0625rem solid var(--line); }
.route:first-of-type { border-top: 0; padding-top: 0; }
.route .mi { width: 2.75rem; height: 2.75rem; border-radius: 50%; background: var(--cream); color: var(--red); display: grid; place-items: center; }
.route .mi svg { width: 1.125rem; height: 1.125rem; stroke-width: 1.6; }
.route b { display: block; font-weight: 400; font-size: var(--type-16); margin-bottom: var(--size-4); }
.route span { font-size: var(--type-14); color: var(--body); }
.route a { color: var(--red); }
.side-card.dark { background: #1b1b1b; color: #fff; }
.side-card.dark p { color: #ffffffb3; font-size: var(--type-15); line-height: 1.5; margin-bottom: 1.375rem; }
.offices { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-20); }
.office { border-radius: var(--size-20); overflow: hidden; background: var(--cream); display: flex; flex-direction: column; }
.office .ph { height: 13.75rem; }
.o-lines { list-style: none; margin: var(--size-16) 0 0; padding: 0.875rem 0 0; border-top: 0.0625rem solid var(--line); display: flex; flex-direction: column; gap: var(--size-8); font-size: var(--type-14); }
.o-lines span { display: inline-block; width: 3.25rem; color: var(--body); }
.o-lines a { color: var(--red); }
.office .o-body { padding: var(--size-28); }
.office small { font-size: var(--type-12); letter-spacing: .14em; text-transform: uppercase; color: var(--red); }
.office h3 { font-size: var(--type-26); margin: var(--size-12) 0 var(--size-12); }
.office p { color: var(--body); font-size: var(--type-15); line-height: 1.5; }
.biz-pick { display: grid; grid-template-columns: repeat(5,1fr); gap: 0.875rem; }
.pick { position: relative; border-radius: var(--size-16); overflow: hidden; height: 18.75rem; color: #fff; display: flex; align-items: flex-end; isolation: isolate; text-align: left; background: #1b1b1b; padding: 0; }
.pick .ph { position: absolute; inset: 0; z-index: -2; }
.pick .ph img { transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.pick:hover .ph img { transform: scale(1.05); }
.pick:after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,#000d,#0000 60%); }
.pick div { padding: 1.375rem; width: 100%; }
.pick strong { display: block; font: 400 var(--size-24)/1.1 'Bauer Bodoni Std 1',serif; margin-bottom: 0.625rem; }
.pick span { font-size: var(--type-13); color: #ffffffcc; display: inline-flex; align-items: center; gap: var(--size-8); }
.pick span svg { width: 0.8125rem; height: 0.8125rem; }
.ir { grid-template-columns: 16.875rem 1fr; height: 85svh; min-height: 35rem; align-items: stretch; }
.ir-body { min-width: 0; min-height: 0; display: flex; flex-direction: column; }
.ir-nav { height: 100%; min-height: 0; overflow-y: auto; }
.ir-pane { display: flex; flex-direction: column; min-height: 0; flex: 1; }
.ir-pane[hidden] { display: none; }
.ir-head { flex: none; }
.ir-scroll { flex: 1; min-height: 0; padding-right: 0.375rem; scrollbar-width: thin; }
.sp-label { display: none; font-size: var(--type-12); letter-spacing: .12em; text-transform: uppercase; color: var(--body); margin: 1.125rem 0 0.625rem; }
.ir-pane.searching .sub-pane { display: block!important; }
.ir-pane.searching .sp-label { display: block; }
.ir-pane.searching .sub-pane.nomatch, .ir-pane.searching .sub-tabs { display: none!important; }
.ir-pane.searching .sub-pane:first-of-type .sp-label { margin-top: 0; }
.ir-results { font-size: var(--type-14); color: var(--body); margin: 0 0 0.875rem; }
.ir-results b { color: var(--ink); font-weight: 400; }
.ir-none { padding: 1.875rem; text-align: center; color: var(--body); background: #fff; border-radius: var(--size-12); }
.sub-tabs { display: flex; gap: var(--size-8); margin-bottom: 1.125rem; }
.sub-tabs button { height: 2.375rem; padding: 0 var(--size-16); border-radius: var(--size-80); background: #fff; border: 0.0625rem solid #fff; font-size: var(--type-14); color: var(--ink); transition: background .2s,color .2s,border-color .2s; }
.sub-tabs button:hover { border-color: var(--red); }
.sub-tabs button[aria-selected=true] { background: var(--red); border-color: var(--red); color: #fff; }
.tbl-wrap { background: none; border: 0; border-radius: 0; padding: 0.875rem 0 0.375rem; }
.tbl-wrap .ir-table { border-collapse: separate; border-spacing: 0; }
.tbl-wrap .ir-table thead th { position: sticky; top: 0.875rem; z-index: 2; background: var(--cream); box-shadow: 0 -0.9375rem 0 #fff; border: 0; text-transform: uppercase; font-weight: 400; letter-spacing: .02em; padding-top: var(--size-16); padding-bottom: var(--size-16); }
.tbl-wrap .ir-table thead th:first-child { border-radius: 0.625rem 0 0 0.625rem!important; padding-left: 2.125rem; }
.tbl-wrap .ir-table thead th:last-child { border-radius: 0 0.625rem 0.625rem 0!important; }
.tbl-wrap .ir-table td:first-child { padding-left: 2.125rem; }
.doc-wrap { background: none; border: 0; border-radius: 0; padding: 0.875rem 0 0.375rem; }
.doc-head { position: sticky; top: 0.875rem; z-index: 2; display: flex; justify-content: space-between; background: var(--cream); margin: 0; padding: var(--size-16) 2.125rem; border-radius: 0.625rem; font-size: var(--type-14); letter-spacing: .02em; text-transform: uppercase; font-weight: 400; box-shadow: 0 -0.9375rem 0 #fff; }
.doc-wrap .doc-list li { padding-left: 2.125rem; padding-right: 2.125rem; }
.doc-wrap .doc-list { padding: 0; background: none; }
.ir-scroll { padding-top: 0; }
.sub-tabs { flex-wrap: nowrap!important; overflow-x: auto; scrollbar-width: none; scroll-behavior: smooth; -webkit-mask-image: linear-gradient(90deg,transparent 0,#000 var(--size-28),#000 calc(100% - var(--size-28)),transparent 100%); mask-image: linear-gradient(90deg,transparent 0,#000 var(--size-28),#000 calc(100% - var(--size-28)),transparent 100%); padding: 0 var(--size-28); margin-left: calc(-1 * var(--size-28)); margin-right: calc(-1 * var(--size-28)); }
.sub-tabs::-webkit-scrollbar { display: none; }
.sub-tabs button { flex: none; white-space: nowrap; }
.tbl-wrap .ir-table { padding: 0; border-radius: 0; }
.ir-table.q td:first-child { white-space: nowrap; font-weight: 700; }
.ir-table .nil { color: #c9c1bb; }
.ir-table td .dl+.dl { margin-left: 0.375rem; }
.doc-list li { gap: var(--size-24); }
.doc-list li>span:first-child { line-height: 1.4; }
.doc-list .dls { display: flex; gap: var(--size-8); flex-wrap: wrap; justify-content: flex-end; flex: none; }
.doc-list li[hidden], .ir-table tr[hidden] { display: none; }
.dl { white-space: nowrap; }
.ir-more { margin-top: 0.875rem; font-size: var(--type-14); color: var(--body); }
.ir-more a { color: var(--red); }
.ir-empty { padding: 1.875rem; text-align: center; color: var(--body); background: #fff; border-radius: var(--size-12); margin-top: 0.625rem; }
.ir-source { margin-top: 0.875rem; font-size: var(--type-13); color: var(--body); }
.facts-dl { background: #fff; border-radius: var(--size-12); padding: 0.375rem 1.625rem; margin: 0; }
.facts-dl div { display: grid; grid-template-columns: 16.25rem 1fr; gap: var(--size-24); padding: var(--size-16) 0; border-bottom: 0.0625rem solid #f1ece8; }
.facts-dl div:last-child { border-bottom: 0; }
.facts-dl dt { font-size: var(--type-13); letter-spacing: .06em; text-transform: uppercase; color: var(--body); }
.facts-dl dd { margin: 0; line-height: 1.5; }
.ic-contacts { display: grid; grid-template-columns: repeat(3,1fr); gap: 0.875rem; }
.ic-contact { background: #fff; border-radius: var(--size-12); padding: var(--size-24); }
.ic-contact h4 { font: 400 1.125rem/1.3 'Bauer Bodoni Std 1',serif; margin-bottom: var(--size-16); }
.ic-contact ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.625rem; font-size: var(--type-14); line-height: 1.45; }
.ic-contact li span { display: block; font-size: var(--type-11); letter-spacing: .12em; text-transform: uppercase; color: var(--body); margin-bottom: 0.125rem; }
.ic-contact a { color: var(--red); word-break: break-all; }
.rta { background: #fff; border-radius: var(--size-12); padding: var(--size-24) 1.625rem; margin-top: 0.875rem; }
.rta-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: var(--size-24); }
.rta b { font: 400 var(--size-20) 'Bauer Bodoni Std 1',serif; display: block; margin-bottom: var(--size-8); }
.rta p { font-size: var(--type-14); line-height: 1.5; color: var(--body); }
.ir-scroll { background: #fff; border-radius: 0.875rem; border: 0.0625rem solid rgba(0,0,0,.08); padding: 0 1.625rem 0.625rem; overflow-y: auto; overscroll-behavior: contain; }
.mf-burger, .mf-drawer, .mcar-btn { display: none; }
img, video { max-width: 100%; }
.era { padding-bottom: var(--size-64); margin-bottom: var(--size-64); }
.era:has(+.today) { border-bottom: 0; padding-bottom: 0; }
.section-head:last-child { margin-bottom: 0!important; }
@media (max-width:89.9375rem) {
  body { min-width: 0; overflow-x: clip; }
  .mf-inner { width: auto; max-width: 78.5rem; margin-inline: max(var(--size-32),calc((100% - 78.5rem)/2)); }
  .mf-header.is-fixed { width: auto; left: var(--size-16); right: var(--size-16); }
}
@media (max-width:74.9375rem) {
  body { min-width: 0; overflow-x: clip; }
  .mf-inner { width: auto; margin-inline: var(--size-32); }
  h1 { font-size: var(--type-60); }
  h2 { font-size: 2.75rem; }
  .mf-nav, .mf-header>.mf-pill, .mega-panel, #business-menu, #about-menu { display: none!important; }
  .mf-header { align-items: center; padding-top: 1.125rem; }
  .mf-logo { width: 8.125rem; height: 4.5rem; }
  .mf-burger { display: inline-flex; flex-direction: column; justify-content: center; gap: 0.3125rem; width: 3.125rem; height: 3.125rem; border-radius: 50%; border: 0.0625rem solid #ffffff4d; background: #ffffff1f; backdrop-filter: blur(var(--size-12)); -webkit-backdrop-filter: blur(var(--size-12)); cursor: pointer; padding: 0 0.9375rem; align-items: stretch; }
  .mf-burger span { display: block; height: 0.125rem; border-radius: 0.125rem; background: currentColor; }
  .mf-header.light .mf-burger, .mf-header.is-fixed .mf-burger { border-color: var(--line); background: #fff; }
  .mf-header.is-fixed { width: auto; left: var(--size-12); right: var(--size-12); top: 0.625rem; padding: var(--size-8) var(--size-8) var(--size-8) 1.375rem; }
  .mf-header.is-fixed .mf-logo { width: 6rem; height: 2.875rem; }
  .mf-drawer { display: block; position: fixed; inset: 0; z-index: 200; }
  .mf-drawer[hidden] { display: none; }
  .dr-scrim { position: absolute; inset: 0; background: #0007; animation: drFade .25s ease; }
  .dr-panel { position: absolute; top: 0; right: 0; bottom: 0; width: min(26.25rem,100%); background: #fff; color: var(--ink); display: flex; flex-direction: column; padding: 1.125rem 1.375rem 1.625rem; overflow-y: auto; animation: drIn .32s cubic-bezier(.2,.7,.2,1); }
  @keyframes drIn { from{transform:translateX(100%)}to{transform:none}; }
  @keyframes drFade { from{opacity:0}; }
  .dr-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.125rem; }
  .dr-top img { width: 6.875rem; height: var(--size-56); object-fit: contain; object-position: left center; }
  .dr-close { position: relative; width: 2.875rem; height: 2.875rem; border-radius: 50%; border: 0.0625rem solid var(--line); background: #fff; cursor: pointer; }
  .dr-close span { position: absolute; left: 0.875rem; right: 0.875rem; top: 50%; height: 0.125rem; background: var(--ink); transform: rotate(45deg); }
  .dr-close span+span { transform: rotate(-45deg); }
  .dr-links { display: flex; flex-direction: column; flex: 1; }
  .dr-link, .dr-acc { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 1.125rem 0.125rem; border: 0; border-bottom: 0.0625rem solid var(--line); background: none; font: 400 1.875rem/1.1 'Bauer Bodoni Std 1',serif; color: var(--ink); text-decoration: none; text-align: left; cursor: pointer; }
  .dr-link[aria-current], .dr-sub a[aria-current] { color: var(--red); }
  .dr-plus { position: relative; width: var(--size-16); height: var(--size-16); }
  .dr-plus:before, .dr-plus:after { content: ""; position: absolute; left: 0; right: 0; top: 0.4375rem; height: 0.125rem; background: var(--red); transition: transform .25s; }
  .dr-plus:after { transform: rotate(90deg); }
  .dr-acc[aria-expanded=true] .dr-plus:after { transform: rotate(0); }
  .dr-sub[hidden] { display: none!important; }
  .dr-sub { display: flex; flex-direction: column; padding: 0.375rem 0 var(--size-12); border-bottom: 0.0625rem solid var(--line); }
  .dr-sub a { padding: 0.6875rem var(--size-4); font-size: var(--type-17); color: var(--body); text-decoration: none; }
  .dr-cta { margin-top: 1.625rem; justify-content: space-between; width: 100%; box-sizing: border-box; }
  html.dr-open { overflow: hidden; }
  .cat-grid, .shop-grid, .cards-4, .cards-5, .prop-grid, .markets, .brands, .ic-grid, .post-grid, .feat-grid, .news-grid, .offices, .rta-grid, .ic-contacts, .capabilities ul, .process-flow, .journey, .kpi-grid, .stages, .frow, .biz-pick { grid-template-columns: repeat(2,minmax(0,1fr))!important; }
  .section { padding-block: var(--section-space); }
  .mf-footer-top { grid-template-columns: 1fr; gap: var(--size-48); }
  .contact-wrap { grid-template-columns: 1fr; }
  .ir { display: flex!important; flex-direction: column; height: auto!important; min-height: 0!important; padding: 0.625rem; gap: var(--size-12); }
  .ir-nav { flex-direction: row!important; overflow-x: auto; overflow-y: hidden; height: auto!important; padding: 0.375rem; gap: var(--size-4); scrollbar-width: none; flex: none; }
  .ir-nav::-webkit-scrollbar { display: none; }
  .ir-nav button { flex: 0 0 auto; white-space: nowrap; padding: var(--size-12) var(--size-16); width: auto; }
  .ir-body { height: 78svh; min-height: 32.5rem; padding: var(--size-4) 0.125rem; }
  .ir-top { flex-wrap: wrap; }
  .job-body { grid-template-columns: 1fr; }
  .school-card { position: relative!important; right: auto!important; bottom: auto!important; width: auto!important; max-width: 28.75rem; margin: -4.375rem var(--size-24) 0; }
  .section-head>p { margin-left: 0!important; max-width: 40rem; justify-self: start!important; }
  .dir-card .ph, .portrait { height: auto!important; aspect-ratio: 4/5; }
  .lead-grid, .split-intro, .why-grid, .b2b, .intro-c, .vgrid, .biz-grid, .media-home, .enquiry .mf-inner, .enq2, .tab-panel, .split-2, .amb-row, .leader, .prog, .post-head .mf-inner, .section-head { grid-template-columns: minmax(0,1fr)!important; gap: 2.25rem; }
  .article { width: auto; max-width: 49rem; padding: var(--size-64) var(--size-32) 5.625rem; }
  .leader { gap: var(--size-24)!important; }
  .leader-copy { padding: 0 var(--size-24) var(--size-32); }
  .leader-photo { height: auto!important; aspect-ratio: 4/3; }
  .inv-card { grid-template-columns: 1fr!important; gap: var(--size-40); padding: 2.75rem; }
  .inv-stats strong { white-space: nowrap; }
  .tl { grid-template-columns: 1fr!important; gap: var(--size-32); }
  .tl-nav { position: static; display: flex; overflow-x: auto; border-left: 0; border-bottom: 0.0625rem solid var(--line); gap: var(--size-4); scrollbar-width: none; }
  .tl-nav::-webkit-scrollbar { display: none; }
  .tl-nav li { flex: none; }
  .tl-nav a { padding: 0.625rem var(--size-16) var(--size-12); }
  .tl-nav a:before { left: 0; right: 0; top: auto; bottom: -0.0625rem; width: auto; height: 0.125rem; transform: scaleX(0); }
  .tl-nav a.on:before { transform: scaleX(1); }
  .tl-nav a span { font-size: var(--type-18); }
  .era { padding-bottom: var(--size-64); margin-bottom: var(--size-64); }
  .grow-row { flex-direction: column; align-items: flex-start; gap: var(--size-28); }
  .dir-card { width: calc(33.33% - 0.875rem); }
  .band-text, .band.rev .band-text { padding: var(--section-space) var(--size-40); }
  .enquiry-dialog { width: min(53.75rem,calc(100vw - var(--size-32))); }
}
@media (max-width:47.5rem) {
  .mf-inner { margin-inline: 1.125rem; }
  h1, .hero h1, .biz-copy h2, .job-hero h1 { font-size: var(--type-40)!important; line-height: 1.08; }
  h2, .post-head h1, .prog h2 { font-size: var(--type-32)!important; line-height: 1.12; }
  .enquiry-dialog h2, .tab-panel h3, .enq-head h2 { font-size: var(--type-28)!important; }
  .legacy-mark { font-size: var(--type-40); }
  .brand strong, .fstat strong, .kpi strong, .inv-stats strong { font-size: var(--type-30); }
  .section-head, .cat-grid, .b2b, .why-grid, .enquiry .mf-inner, .mf-footer-top, .form-grid, .media, .shop-grid, .tab-panel, .cards-4, .cards-5, .prop-grid, .split-2, .row-list li, .markets, .tile-pair, .brands, .amb-row, .enq2, .intro-c, .band, .prop-list, .ic-grid, .vgrid, .vlist, .split-intro, .biz-grid, .media-home, .post-grid, .inv-card, .feat-grid, .leader, .chan, .lead-grid, .lead-card, .job-body, .prog, .news-grid, .post-head .mf-inner, .pillars, .contact-wrap, .offices, .rta-grid, .ic-contacts, .facts-dl div, .ir, .why-row, .amb, .tl { grid-template-columns: minmax(0,1fr)!important; gap: var(--size-28); }
  .capabilities ul, .process-flow, .journey, .kpi-grid, .stages, .frow, .stat-grid, .biz-pick, .mf-footer-nav, .mm-links { grid-template-columns: repeat(2,minmax(0,1fr))!important; gap: 0.875rem; }
  .why-row { gap: var(--size-8); }
  .mf-footer-nav { grid-template-columns: 1fr 1fr!important; gap: var(--size-32) 1.125rem; }
  .mf-footer-bottom { flex-direction: column; align-items: flex-start; gap: 0.875rem; }
  .mf-legal { flex-wrap: wrap; gap: 0.875rem; }
  .hero { height: auto; min-height: 100svh; }
  .b2b-photo, .media-img, .wide-img, .tab-panel .media-img, .tile-pair .cat-tile, .tile-pair.tall .cat-tile, .collage .c-img, .over, .side-img, .why-img, .vgrid .v-img, .press-feature, .leader-photo, .era-img, .prog-img, .post-head .ph, .band-img { height: auto!important; min-height: 0!important; aspect-ratio: 4/3; }
  .over { aspect-ratio: auto!important; }
  .band, .biz-switch, .pillars, .brand, .p-card, .process-flow .p-card, .ir-nav { min-height: 0!important; }
  .over-card, .school-card { width: auto!important; max-width: 100%; }
  [class*=max-width], .hero h1, .hero-description { max-width: 100%; }
  .mf-pill { max-width: 100%; }
  .hero .mf-pill, .hero .mf-pill-ghost { font-size: var(--type-15); }
  .tabs-bar { display: flex!important; overflow-x: auto; scrollbar-width: none; gap: var(--size-8); }
  .tabs-bar::-webkit-scrollbar { display: none; }
  .tabs-bar>* { flex: 0 0 auto; }
  table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .enquiry-dialog { width: 100vw; max-width: 100vw; max-height: 100svh; height: 100svh; margin: 0; border-radius: 0; }
  .mf-header { padding-top: var(--size-12); }
  .mf-logo { width: 6.5rem; height: 3.75rem; }
  .mf-burger { width: 2.875rem; height: 2.875rem; padding: 0 0.875rem; }
  .hero-actions { flex-wrap: wrap; gap: var(--size-12); margin-top: var(--size-28); }
  .hero-label { margin-bottom: var(--size-16); }
  .hero-description { font-size: var(--type-16)!important; line-height: 1.5; }
  .hero-dots { margin-top: var(--size-32); }
  .press-feature { min-height: 27.5rem!important; aspect-ratio: auto!important; }
  .press-feature .pf-body { padding: var(--size-24); }
  .press-feature h3 { font-size: var(--type-24); }
  .press-row { grid-template-columns: 6.5rem minmax(0,1fr); gap: 0.875rem; }
  .press-row .ph { height: 5.25rem; }
  .press-row h4 { font-size: var(--type-15); }
  .meta, .meta * { white-space: nowrap; }
  .meta { flex-wrap: wrap; }
  .inv-stats { gap: 0.0625rem!important; grid-template-columns: 1fr 1fr!important; }
  .inv-stats strong { white-space: nowrap; }
  .inv-stats span { font-size: var(--type-10); letter-spacing: .1em; }
  .section-head { gap: var(--size-16)!important; }
  .collage { padding: 0; }
  .collage .c-img { aspect-ratio: 4/5; }
  .facts, .school-card, .over-card { position: relative!important; inset: auto!important; width: auto!important; margin: calc(-1 * var(--size-56)) 0.875rem 0; z-index: 2; box-shadow: 0 1.125rem 2.75rem #0000001f; }
  .school-card { padding: var(--size-24); }
  .school-card h3 { font-size: var(--type-24); }
  .b2b-media { padding-bottom: 0; }
  .over { height: auto!important; overflow: visible; border-radius: 0; }
  .over>.ph { position: relative!important; inset: auto!important; height: auto; aspect-ratio: 4/3; border-radius: 1.125rem; overflow: hidden; }
  .over-card { padding: var(--size-24); }
  .band-text, .band.rev .band-text { padding: var(--section-space) 1.125rem!important; }
  .band.rev .band-img { order: 0; }
  .tile-pair .cat-tile, .tile-pair.tall .cat-tile { aspect-ratio: auto!important; min-height: 27.5rem!important; }
  .cta-stack { align-items: flex-start!important; justify-content: flex-start!important; flex-direction: row; flex-wrap: wrap; gap: var(--size-12); }
  .enquiry .mf-inner>*, .enq2>* { justify-self: start; text-align: left; }
  .enquiry .mf-pill { margin-left: 0; }
  .dir-grid { gap: 0.875rem; }
  .dir-card { width: calc(50% - 0.4375rem); }
  .dir-card h3 { font-size: var(--type-19); }
  .ev { grid-template-columns: 1fr!important; gap: var(--size-8)!important; }
  .job { grid-template-columns: 1fr!important; padding: 1.375rem!important; gap: 1.125rem!important; }
  .job h3 { font-size: var(--type-20); }
  .job>.mf-pill, .job>a.mf-pill { justify-self: start; }
  .chip-row { flex-wrap: wrap; }
  .tag { white-space: nowrap; }
  .view-all { flex-wrap: nowrap!important; align-items: center!important; gap: var(--size-16); margin-bottom: var(--size-28); }
  .view-all h2 { min-width: 0; flex: 1; }
  .view-all .mf-pill { flex: none; min-height: var(--size-40); padding: 0.3125rem 0.3125rem 0.3125rem var(--size-16); font-size: var(--type-14); gap: 0.625rem; }
  .view-all .mf-pill .mf-icon { width: 1.875rem; height: 1.875rem; }
  .view-all>.muted { flex: none; font-size: var(--type-13); }
  .post-grid.m-track { display: flex!important; overflow-x: auto; scroll-snap-type: x mandatory; gap: var(--size-12)!important; scrollbar-width: none; scroll-behavior: smooth; }
  .post-grid.m-track::-webkit-scrollbar { display: none; }
  .post-grid.m-track>.post-card { flex: 0 0 86%; scroll-snap-align: start; }
  .done-track { grid-auto-columns: 86%!important; gap: var(--size-12)!important; }
  .mcar { position: relative; }
  .mcar-btn { display: grid; place-items: center; position: absolute; top: var(--mid,50%); transform: translateY(-50%); z-index: 5; width: 2.375rem; height: 2.375rem; border-radius: 50%; border: 0; background: #fff; color: var(--ink); box-shadow: 0 0.375rem 1.125rem #00000026; cursor: pointer; transition: opacity .2s; }
  .mcar-btn svg { width: var(--size-16); height: var(--size-16); }
  .mcar-btn.prev { left: calc(-1 * var(--size-8)); }
  .mcar-btn.prev svg { transform: rotate(180deg); }
  .mcar-btn.next { right: calc(-1 * var(--size-8)); }
  .mcar-btn:disabled { opacity: 0; pointer-events: none; }
  .car-btns { display: none!important; }
  .post-card p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .news-card .outlet { flex-wrap: wrap; gap: 0.625rem var(--size-8); justify-content: flex-start; }
  .news-card .outlet .pub { flex: 0 0 100%; max-width: 60%; object-fit: contain; object-position: left; }
  .news-card .outlet span { white-space: nowrap; }
  .news-card .ph { height: auto!important; aspect-ratio: 4/3; }
  .contact-form { padding: var(--size-28) var(--size-20)!important; border-radius: var(--size-20); }
  .enq-foot { flex-direction: column; align-items: flex-start; gap: var(--size-12); }
  .ticker .mf-inner { display: grid!important; grid-template-columns: 1fr 1fr; gap: 0.625rem; height: auto!important; padding: var(--size-16) 0; }
  .tk { flex-direction: column; align-items: flex-start; gap: 0.375rem; border: 0.0625rem solid var(--line); border-radius: 0.875rem; padding: var(--size-12) 0.875rem; }
  .tk strong { font-size: var(--type-17); }
  .tk-note { grid-column: 1/-1; margin-left: 0; text-align: left; }
  .ir-top { flex-direction: column; align-items: stretch; gap: var(--size-12); margin-bottom: 0.875rem; }
  .ir-top h3 { font-size: var(--type-26); }
  .ir-search { width: auto!important; }
  .ir-body { height: 80svh; }
  .ir-scroll { padding: 0 var(--size-12) var(--size-8)!important; overflow: auto!important; }
  table.ir-table { display: table!important; overflow: visible; }
  .tbl-wrap .ir-table { min-width: 35rem; }
  .tbl-wrap .ir-table th:first-child, .tbl-wrap .ir-table td:first-child { position: sticky; left: 0; background: #fff; z-index: 1; padding-left: var(--size-16)!important; }
  .tbl-wrap .ir-table thead th:first-child { background: var(--cream); z-index: 3; }
  .doc-head { padding: 0.875rem var(--size-16)!important; }
  .doc-wrap .doc-list li { padding-left: var(--size-16)!important; padding-right: var(--size-16)!important; gap: 0.875rem; }
  .article { padding: 2.75rem 1.125rem var(--size-64); }
  .article .lede { font-size: var(--type-19); }
  .post-meta { flex-wrap: wrap; gap: 0.625rem 0.875rem; margin-top: var(--size-28); }
  .post-meta span { white-space: nowrap; }
  .meta b, .meta i, .news-card .outlet span:not(:last-child) { display: none!important; }
  .meta { font-size: var(--type-12); }
  .press-row h4, .post-card h3, .news-card h3 { font-size: var(--type-16)!important; line-height: 1.35; }
  .press-row h4 { margin-bottom: var(--size-8); }
  .brand-track { grid-auto-flow: column!important; grid-template-rows: none!important; grid-auto-columns: calc(50% - 0.375rem)!important; gap: var(--size-12)!important; }
  .brand-card { display: flex!important; flex-direction: column; align-items: stretch!important; gap: var(--size-12)!important; padding: var(--size-8) var(--size-8) var(--size-16)!important; border-radius: 0.875rem; }
  .brand-logo { height: auto!important; aspect-ratio: 1/1; border-radius: 0.625rem; }
  .brand-logo .ph.contain>img { padding: var(--size-16); }
  .brand-logo .wm { font-size: var(--type-18); }
  .brand-card>div:not(.brand-logo) { padding: 0 0.375rem; }
  .brand-card h3 { font-size: var(--type-16)!important; line-height: 1.2; }
  .brand-card p { font-size: 0.78125rem!important; margin-top: var(--size-4); }
  .brand-card .red-arrow { display: none; }
  .leader { padding: 0.625rem; gap: var(--size-20)!important; }
  .leader-photo { aspect-ratio: 4/5!important; }
  .leader-photo .ph img { object-position: center 20%; }
  .leader-name { left: 0.625rem; right: 0.625rem; bottom: 0.625rem; padding: var(--size-12) 0.875rem; }
  .leader-name strong { font-size: var(--type-19); }
  .leader-copy { padding: var(--size-4) 0.625rem 1.375rem; }
  .inv-stats div { padding: 1.125rem 0.875rem!important; min-width: 0; }
  .inv-stats span { white-space: normal; }
  body { font-size: var(--type-14); }
  p, li, dd { font-size: var(--type-14); line-height: 1.55; }
  .lead, p.lead, .hero-description, .section-head>p, .copy p:first-child, .intro-c .copy p:first-child, .band-text .copy p:first-child, .split-intro .copy p:first-child, .tab-panel .copy p:first-of-type, .inv-card p.lead, .enquiry p.lead { font-size: 0.96875rem!important; line-height: 1.55!important; }
  h1, .hero h1, .biz-copy h2, .job-hero h1, .post-head h1 { font-size: var(--type-34)!important; line-height: 1.1!important; }
  h2, .prog h2, .enq-head h2, .enquiry-dialog h2 { font-size: var(--type-26)!important; line-height: 1.15!important; }
  h3 { font-size: var(--type-19); }
  .p-card h3, .why-row h3, .cat-tile h3, .tab-panel h3, .lead-card h3, .office h3, .chan h3, .dir-card h3, .school-card h3, .press-feature h3, .side-card h3, .ev h3, .era h3, .stage h3, .pill-item h3 { font-size: var(--type-19)!important; line-height: 1.2; }
  .tab .tt { font-size: var(--type-17)!important; }
  .kpi strong, .fstat strong, .stat strong { font-size: var(--type-26)!important; }
  .inv-stats strong { font-size: var(--type-20)!important; }
  .brand strong { font-size: var(--type-26)!important; }
  .hero-label { font-size: var(--type-12)!important; letter-spacing: .12em; }
  .card-label, .facts span, .meta { font-size: var(--type-11)!important; }
  .facts strong { font-size: var(--type-15); }
  .section { padding-block: var(--section-space)!important; }
  .section.flush { padding-block: 0!important; }
  .section-head { margin-bottom: var(--size-28)!important; }
  .mf-pill, .mf-pill-ghost, .mf-pill-white { font-size: var(--type-14)!important; min-height: 2.625rem!important; padding: 0.3125rem 0.3125rem 0.3125rem 1.125rem!important; gap: var(--size-12)!important; }
  .mf-pill-ghost:not(:has(.mf-icon)), .mf-pill:not(:has(.mf-icon)) { padding: 0 var(--size-20)!important; }
  .mf-pill .mf-icon { width: var(--size-32)!important; height: var(--size-32)!important; }
  .mf-pill .mf-icon svg { width: 0.875rem; height: 0.875rem; }
  .red-arrow, .car-btn { width: var(--size-40)!important; height: var(--size-40)!important; }
  .tag { height: var(--size-32)!important; font-size: var(--type-12)!important; padding: 0 var(--size-12)!important; }
  .dr-link, .dr-acc { font-size: var(--type-24); padding: 0.9375rem 0.125rem; }
  .dr-sub a { font-size: var(--type-15); padding: 0.5625rem var(--size-4); }
  .mf-footer p, .mf-footer a, .mf-footer li { font-size: var(--type-14); }
  .hero-content { padding-top: 6.875rem; padding-bottom: var(--size-56); }
  .pillars>.ph { aspect-ratio: 4/3; height: auto; }
  .pillars { gap: 0!important; }
  .chan>.ph, .pillars>.ph { order: -1; }
  .biz-grid { display: flex!important; flex-direction: column; gap: 1.375rem!important; min-width: 0; max-width: calc(100vw - 2.25rem); }
  .biz-copy { min-width: 0; }
  .biz-list { order: -1; flex-direction: row!important; overflow-x: auto; scrollbar-width: none; gap: var(--size-8); margin-inline: -1.125rem; padding: 0 1.125rem; }
  .biz-list::-webkit-scrollbar { display: none; }
  .biz-list li { border: 0; flex: none; }
  .biz-list button { height: 2.375rem!important; width: auto!important; padding: 0 var(--size-16)!important; font: 400 0.875rem/1 'Lato',sans-serif!important; border: 0.0625rem solid #ffffff40; border-radius: var(--size-40); color: #ffffffb3; }
  .biz-list button:before, .biz-list button:after { display: none; }
  .biz-list button[aria-selected=true] { background: var(--red); border-color: var(--red); color: #fff; }
  .biz-switch { padding-block: var(--section-space)!important; }
  .stat, .fstat, .kpi { min-height: 0!important; padding: var(--size-20) 1.125rem!important; justify-content: flex-start!important; gap: 0.625rem!important; }
  .kpi span { margin: var(--size-8) 0 var(--size-8); }
  .feat-card { padding: var(--size-24) 1.375rem!important; gap: 0.875rem!important; }
  .era { padding-bottom: 2.75rem!important; margin-bottom: 2.75rem!important; }
  .era-head { margin-bottom: 1.125rem; }
  .era-img { margin-bottom: 1.375rem; }
  .ev { padding: 1.125rem 0; }
  .tl-nav a span { font-size: var(--type-16); }
  .inv-card { padding: var(--size-28) var(--size-20)!important; gap: var(--size-28)!important; }
  .side-card { padding: var(--size-24) var(--size-20); }
  .contact-side { gap: 0.875rem; }
  .today { flex-direction: column; align-items: flex-start; padding: 1.625rem 1.375rem; gap: var(--size-12); }
  .today h3 { font-size: var(--type-24)!important; }
  :is(.media,.intro-c,.prog,.b2b) { display: flex!important; flex-direction: column; gap: 0!important; height: auto!important; align-items: stretch!important; text-align: left; }
  :is(.media,.intro-c,.prog,.b2b) * { flex-shrink: 0; }
  :is(.media,.intro-c,.prog,.b2b)>div:has(>h2) { display: contents; }
  :is(.media,.intro-c,.prog,.b2b)>div:has(>h2)>* { order: 2; }
  :is(.media,.intro-c,.prog,.b2b)>div:has(>h2)>:is(h2,:has(+h2),h2+h3,h2+.sub) { order: 0; }
  :is(.media,.intro-c,.prog,.b2b)>:not(:has(>h2)) { order: 1!important; margin: 1.375rem 0 1.625rem!important; flex: none!important; width: 100%; }
  :is(.media,.prog)>:is(.media-img,.prog-img) { height: calc((100vw - 2.25rem)*.75)!important; aspect-ratio: auto!important; }
  div:has(>h2):has(>:is(.side-img,.why-img)) { display: flex; flex-direction: column; }
  div:has(>h2):has(>:is(.side-img,.why-img))>* { order: 2; }
  div:has(>h2):has(>:is(.side-img,.why-img))>:is(h2,:has(+h2)) { order: 0; }
  div:has(>h2):has(>:is(.side-img,.why-img))>:is(.side-img,.why-img) { order: 1; margin: 1.375rem 0 1.625rem; }
  .chan { padding: 1.625rem 1.375rem 0.875rem; gap: 1.125rem; }
  .chan h3 { font-size: var(--type-26); }
  .chan .ph { height: 12.5rem!important; aspect-ratio: auto!important; }
}
.mf-pill .mf-icon svg { transition: transform .35s cubic-bezier(.2,.7,.2,1); }
.mf-pill:hover .mf-icon svg { transform: translateX(0.1875rem); }
.post-card .ph img, .news-card .ph img, .cat-tile img, .office .ph img { transition: transform .9s cubic-bezier(.2,.7,.2,1); }
.post-card:hover .ph img, .news-card:hover .ph img, .office:hover .ph img { transform: scale(1.05); }
.hero, .job-hero, .post-head { height: 100svh!important; min-height: 100svh!important; max-height: 100svh; box-sizing: border-box; overflow-y: auto; }
.hero-content { max-height: 100%; overflow-y: auto; box-sizing: border-box; }
.mf-footer-col ul[hidden] { display: none!important; }
.footer-toggle { font: inherit; letter-spacing: inherit; text-transform: inherit; color: inherit; background: none; padding: 0; text-align: left; }
.footer-toggle:disabled { cursor: default; }
.footer-toggle span { display: none; }
@media(max-width:74.9375rem) {
  .dr-top { justify-content: flex-end; margin-bottom: var(--size-8); }
  .dr-link, .dr-acc { font: 400 var(--size-16)/1.4 Lato,sans-serif; padding: 0.8125rem 0; min-height: 2.875rem; }
  .dr-sub a { font-size: var(--type-14); }
  .dr-cta { justify-content: center; font-size: var(--type-16); }
  .dr-link:hover, .dr-acc:hover, .dr-acc[aria-expanded=true], .dr-sub a:hover { color: var(--red); }
}
@media(max-width:47.5rem) {
  .mf-footer { padding-top: 1.875rem; }
  .mf-footer-brand { width: 100%; text-align: center; }
  .mf-footer-logo { width: 7.5rem; height: 4.5rem; margin: 0 auto var(--size-16); object-position: center; }
  .mf-footer-brand p { font-size: var(--type-14); line-height: 1.5; }
  .mf-socials-source { width: 11.875rem; height: auto; margin: 1.375rem auto 0; }
  .mf-footer-top { gap: 1.625rem; padding-bottom: var(--size-20); }
  .mf-footer-nav { display: block; padding-top: 0; }
  .mf-footer-col { border-top: 0.0625rem solid #ffffff26; }
  .mf-footer-col:last-child { border-bottom: 0.0625rem solid #ffffff26; }
  .mf-footer-col h4 { margin: 0; }
  .footer-toggle { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 3.375rem; padding: 0.875rem 0; font: 700 var(--size-16)/1.4 Lato,sans-serif; letter-spacing: 0; text-transform: none; }
  .footer-toggle span { display: block; font-size: var(--type-22); color: #aaa; }
  .mf-footer-col ul { gap: 0; padding-bottom: 0.875rem; }
  .mf-footer-col a { display: block; padding: 0.625rem 0; font-size: var(--type-14); min-height: var(--size-40); }
  .mf-footer-bottom { align-items: center; justify-content: center; text-align: center; gap: var(--size-16); padding-block: 1.375rem; font-size: var(--type-12); }
  .mf-legal { justify-content: center; flex-wrap: wrap; font-size: var(--type-12); gap: 0.875rem; }
  .inv-card { padding: var(--size-24) var(--size-20)!important; gap: var(--size-24)!important; }
  .inv-card p.lead { margin: var(--size-16) 0 var(--size-20); }
  .inv-stats div { padding: 1.125rem var(--size-12)!important; }
  .inv-stats span { line-height: 1.4; margin-bottom: 0.625rem; min-height: var(--size-28); }
  .inv-stats small { font-size: var(--type-12); line-height: 1.4; margin-top: var(--size-8); }
}
:is(.mf-icon,.arrow-btn,.red-arrow,.car-btn,.mcar-btn,.mm-go,.mm-links,.mf-nav-trigger,.dl,.red-sq) svg, :is(.mf-icon,.arrow-btn,.red-arrow,.car-btn,.mcar-btn,.mm-go,.mm-links,.mf-nav-trigger,.dl,.red-sq) svg * { stroke-width: 0.0625rem; vector-effect: non-scaling-stroke; }
.dr-plus::before, .dr-plus::after { height: 0.0625rem; }
.footer-toggle>span { position: relative; width: var(--size-16); height: var(--size-16); flex: none; font-size: 0!important; }
.footer-toggle>span::before, .footer-toggle>span::after { content: ''; position: absolute; left: 0; right: 0; top: 0.4375rem; height: 0.0625rem; background: currentColor; }
.footer-toggle>span::after { transform: rotate(90deg); }
.footer-toggle[aria-expanded=true]>span::after { transform: rotate(0); }
.dr-plus, .footer-toggle>span { width: var(--size-12); height: var(--size-12); flex: none; }
.dr-plus::before, .dr-plus::after, .footer-toggle>span::before, .footer-toggle>span::after { top: 0.34375rem; }
:is(.mf-icon,.arrow-btn,.red-arrow,.car-btn,.mcar-btn,.mm-go,.mm-links,.mf-nav-trigger,.dl,.red-sq) svg { width: var(--size-16)!important; height: var(--size-16)!important; flex-shrink: 0; }
@media(max-width:74.9375rem) {
  .mf-header .mf-burger { width: 2.75rem; height: 2.75rem; padding: 0; align-items: center; justify-content: center; gap: var(--size-4); border: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
  .mf-header .mf-burger span { width: 1.125rem; height: 0.0625rem; border-radius: 0; flex: none; }
  .dr-close { width: 2.75rem; height: 2.75rem; flex: none; border: 0; background: transparent; box-shadow: none; }
  .dr-close span { left: 0.875rem; right: auto; top: 1.34375rem; width: var(--size-16); height: 0.0625rem; border-radius: 0; }
  .mf-burger:hover, .dr-close:hover { color: var(--red); }
  .dr-close span { background: currentColor; }
  .mf-burger:focus-visible, .dr-close:focus-visible { outline: 0.0625rem solid var(--red); outline-offset: 0.125rem; }
}
@media(max-width:74.9375rem) {
  .mf-header:not(.light):not(.is-fixed) .mf-burger { color: #fff; }
  .mf-header.light .mf-burger, .mf-header.is-fixed .mf-burger { color: var(--ink); }
  .mf-header .mf-burger:hover { color: var(--red); }
}
.inv-stats { background: transparent; gap: 0!important; }
.inv-stats>div { background: transparent; }
.inv-stats>div:nth-child(odd) { border-right: 0.0625rem solid #ffffff26; }
.inv-stats>div:nth-child(-n+2) { border-bottom: 0.0625rem solid #ffffff26; }
.hero h1 { text-box-trim: none; line-height: 1.12; }
.hero-content { padding-top: max(var(--size-24),2svh); }
@media(max-width:47.5rem) {
  .hero-content { padding-top: 6.875rem; }
}
.metric-counter { font-variant-numeric: tabular-nums; }

/* Shared section rhythm. Hero and footer retain their own layout responsibilities. */
:root { --section-space: 6.875rem; --content-gap: var(--size-56); --card-gap: var(--size-24); }
html { font-size: 100%; }
.section-head, .center-head { margin-bottom: var(--content-gap); }
main > .section:not(.cream):not(.flush) + .section:not(.cream):not(.flush) { padding-top: 0!important; }
.motion-word { display: inline-block; }
@media(max-width:75rem) { :root { --section-space: 5.625rem; --content-gap: 2.25rem; } }
@media(max-width:47.5rem) {
 :root { --section-space: 3.25rem; --content-gap: var(--size-28); --card-gap: var(--size-16); }
 .job-hero, .post-head { padding-top: 7.5rem; padding-bottom: var(--section-space); }
 .section-head, .center-head { margin-bottom: var(--content-gap)!important; }
}
