@font-face{font-family:"Cal Sans";src:url("assets/cal-sans-400.woff2") format("woff2");font-display:swap;font-weight:400}
:root{--ink:#07131c;--navy:#090f1b;--bone:#f3efe8;--paper:#faf8f4;--white:#fff;--lav:#8f87c9;--lav-light:#b8b1df;--copper:#bc6c52;--titanium:#87909a;--line:rgba(7,19,28,.2);--shell:min(88vw,1280px);--display:"Cal Sans",sans-serif;--body:"Helvetica Neue",Aptos,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bone)}body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--body);font-weight:300}body.menu-open{overflow:hidden}a{color:inherit}button,input,textarea{font:inherit}::selection{background:var(--lav);color:var(--ink)}:focus-visible{outline:2px solid var(--lav);outline-offset:5px}.shell{width:var(--shell);margin-inline:auto}.display{font-family:var(--display);font-weight:400;letter-spacing:-.025em}.skip{position:fixed;z-index:60;top:10px;left:10px;transform:translateY(-160%);padding:10px 15px;background:var(--bone)}.skip:focus{transform:none}
.hero{position:relative;min-height:100svh;overflow:hidden;background:var(--navy);color:var(--white)}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,#07131c 0 46%,#090f1b 72%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(390px,.9fr) minmax(430px,1.1fr);gap:7vw;align-items:center;min-height:100svh;padding-top:92px}.hero-copy{padding-block:48px}.hero h1{max-width:10ch;margin:0;font-size:clamp(4.2rem,6.5vw,7rem);line-height:.9}.hero-intro{max-width:37rem;margin:30px 0 0;color:#d3d1d9;font-size:1.12rem;line-height:1.55}.hero-note{max-width:38rem;margin:18px 0 0;color:#8f96a0;font-size:.9rem;line-height:1.55}.hero-actions{display:flex;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid rgba(255,255,255,.55);border-radius:4px;color:var(--white);font-family:var(--display);font-size:.72rem;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.button.primary{border-color:transparent;background:linear-gradient(135deg,#756cad,#9389cf);color:var(--white)}
.placeholder{position:relative;width:min(100%,470px);aspect-ratio:1;justify-self:end;border:1px solid rgba(184,177,223,.3);background:#0b1421}.placeholder::after{content:"";position:absolute;inset:18px;border:1px solid rgba(184,177,223,.08)}
.hero-art{position:relative;width:min(100%,720px);aspect-ratio:16/9;justify-self:end;overflow:hidden;isolation:isolate}.hero-art::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--navy),transparent 18% 82%,var(--navy));opacity:.48}.hero-art img{display:block;width:100%;height:100%;object-fit:contain;mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%)}
.section{padding-block:clamp(76px,8vw,124px)}.section.dark{background:var(--navy);color:var(--white)}.section-head{display:grid;grid-template-columns:1fr .8fr;gap:10%;align-items:end;margin-bottom:58px}.section-head h2{max-width:12ch;margin:0;font-size:clamp(3rem,5vw,5.3rem);line-height:.95}.section-head p{max-width:46ch;margin:0;color:#515963;font-size:1.08rem;line-height:1.65}.dark .section-head p{color:#b8b7c1}.rule-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.rule-list>li{display:grid;grid-template-columns:minmax(170px,.55fr) 1.45fr;gap:8%;padding:32px 0;border-bottom:1px solid var(--line)}.rule-list h3{margin:0;font-family:var(--display);font-size:1.55rem;font-weight:400}.rule-list p{max-width:66ch;margin:0;color:#515963;line-height:1.65}.dark .rule-list{border-color:rgba(243,239,232,.22)}.dark .rule-list>li{border-color:rgba(243,239,232,.22)}.dark .rule-list p{color:#b8b7c1}.meta{display:block;margin-bottom:8px;color:var(--lav);font-family:var(--display);font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}
.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.industry{min-height:300px;padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.industry h3{max-width:12ch;margin:0;font-family:var(--display);font-size:2rem;font-weight:400;line-height:1}.industry p{margin:26px 0 0;color:#515963;line-height:1.55}.industry small{display:block;margin-top:28px;color:#6b7077;font-size:.72rem;line-height:1.5;text-transform:uppercase;letter-spacing:.08em}
.case{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;padding:64px 0;border-top:1px solid rgba(243,239,232,.22)}.case:last-child{border-bottom:1px solid rgba(243,239,232,.22)}.case h3{max-width:14ch;margin:0;font-family:var(--display);font-size:clamp(2.2rem,3.6vw,4rem);font-weight:400;line-height:.98}.case-copy>p{max-width:65ch;margin:0 0 24px;color:#b8b7c1;line-height:1.6}.metrics{display:flex;flex-wrap:wrap;gap:0;margin-top:30px;border-top:1px solid rgba(184,177,223,.3)}.metric{min-width:155px;padding:24px 24px 0 0;margin-right:24px}.metric strong{display:block;color:var(--lav-light);font-family:var(--display);font-size:2rem;font-weight:400}.metric span{color:#9399a3;font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}.disclaimer{max-width:75ch;margin:-24px 0 56px;color:#858c96;font-size:.8rem;line-height:1.55}
.principles{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line)}.principle{padding:32px 22px 24px 0;border-bottom:1px solid var(--line)}.principle+.principle{padding-left:22px;border-left:1px solid var(--line)}.principle h3{margin:0;font-family:var(--display);font-size:1.4rem;font-weight:400}.principle p{margin:18px 0 0;color:#515963;font-size:.9rem;line-height:1.55}.leadership{display:grid;grid-template-columns:.75fr 1.25fr;gap:8%;align-items:start}.portrait-placeholder{aspect-ratio:4/5;border:1px solid var(--line);background:#ebe6de}.leadership-copy h3{margin:0;font-family:var(--display);font-size:2.6rem;font-weight:400}.pending{margin-top:26px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#666d75;line-height:1.6}
.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:10%}.contact-copy h2{margin:0;font-size:clamp(3rem,5vw,5.2rem);line-height:.95}.contact-copy p{margin:28px 0 0;color:#515963;line-height:1.65}.response{margin-top:38px;padding-top:24px;border-top:1px solid var(--line);font-family:var(--display)}form{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:grid;gap:9px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.full{grid-column:1/-1}input,textarea{width:100%;border:0;border-bottom:1px solid #8d9298;border-radius:0;background:transparent;padding:12px 2px;color:var(--ink);font-size:1rem}textarea{min-height:132px;resize:vertical}.helper{margin:0;color:#6a7179;font-size:.76rem;line-height:1.5;text-transform:none;letter-spacing:0}.checkbox{display:flex;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;line-height:1.5}.checkbox input{width:18px;margin-top:2px}.submit{justify-self:start;border:0;background:linear-gradient(135deg,#756cad,#9389cf);cursor:pointer}.form-status{min-height:1.5em;margin:0;color:#4f5660;font-size:.85rem}.closing{background:var(--paper)}.closing-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:end}.closing h2{max-width:12ch;margin:0;font-size:clamp(3.2rem,5.5vw,6rem);line-height:.93}.closing p{max-width:40ch;margin:0 0 28px;color:#515963;line-height:1.6}.closing .button{border-color:var(--ink);color:var(--ink)}.footer{padding-block:38px;background:var(--ink);color:#a7a6b2}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer .brand{color:var(--white);font-size:1.7rem}.footer p{margin:0;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
@media(min-width:901px) and (max-height:800px){.hero-grid{padding-top:68px;gap:5vw}.hero-copy{padding-block:24px}.hero h1{font-size:clamp(3.3rem,4.5vw,4.45rem)}.hero-intro{margin-top:20px;font-size:1rem;line-height:1.42}.hero-note{margin-top:12px;font-size:.8rem}.hero-actions{margin-top:24px}.button{min-height:44px}.placeholder{max-height:470px;justify-self:end}.hero-art{max-height:420px}}
@media(max-width:900px){:root{--shell:calc(100vw - 40px)}.hero-grid{grid-template-columns:1fr;gap:10px;min-height:100svh;padding-top:68px}.hero-copy{padding:20px 0 8px}.hero h1{font-size:clamp(2.8rem,12vw,4rem)}.hero-intro{margin-top:18px;font-size:.94rem}.hero-note{display:none}.hero-actions{margin-top:20px}.button{min-height:42px;padding-inline:15px;font-size:.64rem}.placeholder{width:min(62vw,250px);height:auto;aspect-ratio:1;justify-self:center;margin-bottom:20px}.hero-art{width:min(100%,560px);justify-self:center;margin-bottom:18px}.section-head,.contact-layout,.leadership,.closing-grid{grid-template-columns:1fr;gap:32px}.industry-grid{grid-template-columns:1fr}.industry{min-height:0}.rule-list>li,.case{grid-template-columns:1fr;gap:24px}.principles{grid-template-columns:1fr}.principle+.principle{padding-left:0;border-left:0}.case{padding:48px 0}.footer-grid{display:block}.footer p{margin-top:14px}form{grid-template-columns:1fr}.full{grid-column:auto}}
@media(max-width:360px){:root{--shell:calc(100vw - 28px)}.hero h1{font-size:2.55rem}.hero-actions{flex-wrap:wrap}.button{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Contact: the form is the opening task, not a below-fold destination. */
.contact-hero .hero-grid{grid-template-columns:1fr 1fr;gap:6%;padding-bottom:24px}
.contact-hero h1{max-width:15ch;font-size:clamp(2.8rem,4vw,4.5rem);line-height:1.02}
.contact-hero .response{color:var(--lav-light);border-color:rgba(184,177,223,.3);margin-top:24px;padding-top:20px;line-height:1.5}
.contact-hero form{gap:16px 24px;padding-block:24px;color:var(--white)}
.contact-hero label{font-size:.875rem;letter-spacing:0;text-transform:none}
.contact-hero input,.contact-hero textarea{color:var(--white);border-color:#9297a1;padding:8px 2px;min-height:40px;caret-color:var(--lav-light)}
.contact-hero textarea{min-height:76px}
.contact-hero .helper,.contact-hero .form-status{color:#c6c8d1;font-size:.8125rem}
.contact-hero .checkbox{font-size:.8125rem;line-height:1.4}
.contact-hero .checkbox input{min-height:0;width:18px;flex-shrink:0;accent-color:var(--lav-light)}
.contact-hero .submit:disabled{opacity:.65;cursor:not-allowed}
.contact-hero .form-status{min-height:0}
/* Industries: editorial rows, one approved asset per sector. */
.industry-rows{border-top:1px solid var(--line)}
.industry-row{display:grid;grid-template-columns:1.05fr 1fr;gap:8%;align-items:center;padding-block:48px;border-bottom:1px solid var(--line)}
.industry-image{aspect-ratio:16/9;background:#e7e2da;min-width:0;overflow:hidden}
.industry-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.industry-row:nth-child(even) .industry-image{grid-column:2;grid-row:1}
.industry-row:nth-child(even) .industry-copy{grid-column:1;grid-row:1}
.industry-copy h3{max-width:22ch;margin:0;font:400 clamp(1.8rem,2.8vw,2.8rem)/1.08 var(--display);letter-spacing:-.02em}
.industry-copy p{max-width:48ch;margin:24px 0;color:#515963;font-size:1.0625rem;line-height:1.6}
.industry-copy small{display:block;padding-top:20px;border-top:1px solid var(--line);color:#62616a;font-size:.8125rem;line-height:1.6}
@media(min-width:901px) and (max-height:800px){.contact-hero .hero-grid{padding-top:68px}.contact-hero h1{font-size:3.35rem}.contact-hero form{padding-block:16px;gap:12px 24px}.contact-hero .hero-intro{font-size:1rem}.contact-hero .hero-note{font-size:.875rem}}
@media(max-width:900px){.contact-hero .hero-grid{grid-template-columns:1fr;gap:8px;align-items:start;padding-bottom:32px}.contact-hero .hero-copy{padding-bottom:0}.contact-hero h1{max-width:18ch;font-size:clamp(2.4rem,9vw,3.4rem)}.contact-hero .response{margin-top:16px;padding-top:16px}.contact-hero form{padding-top:16px}.industry-row{grid-template-columns:1fr;gap:28px;padding-block:32px}.industry-row:nth-child(even) .industry-image,.industry-row:nth-child(even) .industry-copy{grid-column:auto;grid-row:auto}.industry-copy p{margin-block:16px}}
