@font-face{font-family:DarkParadiseBold;src:url('assets/fonts/DarkParadise-Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:DarkParadiseItalic;src:url('assets/fonts/DarkParadise-Italic.otf') format('opentype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:NeueMontreal;src:url('assets/fonts/PPNeueMontreal-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
:root{--sans:NeueMontreal,Arial,sans-serif;--display:DarkParadiseBold,Georgia,serif;--italic:DarkParadiseItalic,Georgia,serif;--gray:#f3f3f3;--black:#020202;--scale:1;}
*{box-sizing:border-box}body{margin:0;background:white;color:#020202;font-family:var(--sans);font-size:14px;line-height:1.08}main{overflow:hidden}.hero{position:relative;height:900px;background:#020202;overflow:hidden}.heroStage{position:absolute;left:50%;top:0;width:1440px;height:900px;transform:translateX(-50%) scale(var(--scale));transform-origin:top center;overflow:hidden}.heroStage::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.20);z-index:2;pointer-events:none}.heroBlack{position:absolute;left:0;top:0;width:654px;height:900px;background:#020202;z-index:0}.heroPhoto{position:absolute;right:-332px;top:-296px;width:1118px;height:1491px;object-fit:cover;object-position:center center;filter:grayscale(1);z-index:1}.kicker{position:absolute;z-index:4;color:#fff;font-size:22px;margin:0}.k1{left:80px;top:166px}.k2{left:80px;top:395px}.k3{left:80px;top:624px}.headline{position:absolute;z-index:4;left:80px;width:883px;height:auto}.h1{top:215px}.h2{top:440px;left:74px;width:883px}.h3{top:670px;width:883px}.band{position:relative;width:min(1440px,100%);margin:0 auto;background:transparent}.band::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);z-index:-1}.white::before{background:#fff}.gray::before{background:var(--gray)}.black{color:#fff}.black::before{background:#020202}.intro{height:178px;display:flex;align-items:center;padding-left:126px;gap:28px}.tri{width:38px;height:15px;object-fit:contain;display:block}.intro p{font-size:12px;font-style:italic;max-width:820px}.leaders{height:760px;padding:118px 0 0 80px}.sideTitle{position:absolute;left:80px;top:120px}.sideTitle h2,.simpleTitle h2,.osTitle h2,.footer h2{font-family:var(--italic);font-weight:400;margin:0}.sideTitle h2{font-size:38px}.sideTitle p{font-size:12px;margin:2px 0 0}.triLeaders{position:absolute;left:342px;top:135px}.leadersList{position:absolute;left:430px;top:118px;width:680px}.leadersList article{display:grid;grid-template-columns:66px 1fr;align-items:start}.num{font-family:var(--italic);font-size:44px;line-height:.85;transform:translateY(-13px)}.leadersList h3{margin:0;font-size:42px;letter-spacing:.21em;text-transform:none;font-weight:400;line-height:.96}.leadersList h3 span{font-family:var(--sans);letter-spacing:.04em;font-size:40px}.leadersList article:nth-of-type(2) h3{font-size:30px}.leadersList article:nth-of-type(2) h3 span{font-size:40px}.leadersList article:nth-of-type(3) h3{font-size:42px}.leadersList article:nth-of-type(3) h3 span{font-size:40px}.leadersList p{margin:10px 0 0;font-size:12px}.leadersList hr,.principles hr,.osList hr{border:0;border-top:1px solid #555;margin:74px 0}.sectionFoot{position:absolute;left:430px;bottom:78px;font-size:12px}.simple{height:1140px;padding:118px 0 0}.simpleTitle{position:absolute;left:80px;top:120px}.simpleTitle>p:first-child{font-family:var(--italic);font-size:34px;margin:0}.simpleTitle h2{font-size:130px;line-height:.75}.simpleTitle p:last-child{font-size:12px;margin:18px 0 0}.triSimple{position:absolute;left:350px;top:330px}.instead{position:absolute;left:430px;top:326px}.instead h3{letter-spacing:.33em;text-transform:uppercase;font-size:18px;font-weight:400;margin:0 0 22px}.instead p{font-size:12px}.principles{position:absolute;left:430px;top:505px;width:560px}.principles article{position:relative}.principles span{position:absolute;left:-24px;top:10px;font-size:18px}.principles h4{font-size:21px;font-weight:400;margin:0}.principles em{font-family:var(--italic);font-size:46px;font-style:italic}.principles p{font-size:12px;margin:8px 0 0}.principles hr{margin:48px 0}.os{height:1080px;padding-top:120px}.osTitle{position:absolute;left:80px;top:120px}.osTitle h2{font-size:43px;line-height:.82}.osTitle p{font-size:12px;margin-top:2px}.triOS{position:absolute;left:292px;top:190px}.osList{position:absolute;left:430px;top:120px;width:650px}.osList h3{display:flex;gap:14px;align-items:flex-start;font-size:22px;letter-spacing:.24em;text-transform:uppercase;font-weight:400;line-height:1.15;margin:0 0 34px;text-align:left}.osList h3 .osNum{letter-spacing:0;min-width:28px;margin-left:-42px}.osList h3 span:last-child{display:block;text-align:left}.osList ul{margin:0;padding:0;list-style:none}.osList li{font-size:12px;margin:0 0 20px;padding-left:0;position:relative}.osList li::before{content:'•';position:absolute;left:-16px}.osList hr{margin:64px 0 64px -42px;width:calc(100% + 42px)}.footer{height:430px;display:grid;grid-template-columns:1fr 100px 1fr;align-items:start;padding:74px 80px 0}.footerLeft p,.footerRight p{font-size:12px;margin:0 0 10px}.footerLeft h2{font-size:42px;margin-bottom:18px}.triFooter{filter:invert(1);justify-self:center;margin-top:65px;transform:translateX(42px)}.footerRight{padding-top:65px}.buttons{display:flex;gap:36px;margin-top:52px}.buttons a{color:#fff;text-decoration:none;border:1px solid #fff;padding:10px 44px;font-size:11px}
@media (max-width:1439px) and (min-width:1200px){:root{--scale:.833}.hero{height:750px}}
@media (max-width:1199px) and (min-width:900px){:root{--scale:.625}.hero{height:562px}.band{width:100%}.leaders,.simple,.os{padding-left:40px}.leadersList,.instead,.principles,.osList{left:360px}.triLeaders,.triSimple,.triOS{left:300px}.sideTitle,.simpleTitle,.osTitle{left:40px}}
@media (max-width:899px){body{font-size:13px}.hero{height:620px;background:#020202}.heroStage{width:390px;height:620px;left:50%;transform:translateX(-50%);}.heroBlack{display:none}.heroPhoto{left:0;right:auto;top:0;width:390px;height:620px;object-position:center top}.kicker{font-size:13px;left:22px}.k1{top:190px}.k2{top:315px}.k3{top:430px}.headline{left:22px;width:340px}.h1{top:210px}.h2{top:335px;left:22px;width:340px}.h3{top:450px;width:340px}.intro{height:100px;padding:0 28px;gap:18px}.intro p{font-size:10px}.tri{width:28px;height:auto}.leaders{height:690px;padding:52px 34px}.sideTitle{position:static}.sideTitle h2{font-size:30px}.sideTitle p{font-size:10px}.triLeaders{display:none}.leadersList{position:static;width:auto;margin-top:50px}.leadersList article{display:block}.leadersList h3{font-size:17px}.leadersList h3 span{font-size:18px}.leadersList article:nth-of-type(2) h3{font-size:16px}.leadersList article:nth-of-type(2) h3 span{font-size:17px}.leadersList p{font-size:9px}.num{font-size:22px;transform:translateY(-6px)}.leadersList hr{margin:34px 0}.sectionFoot{position:static;font-size:9px;margin-top:45px}.simple{height:900px;padding:55px 34px}.simpleTitle{position:static}.simpleTitle>p:first-child{font-size:22px}.simpleTitle h2{font-size:72px}.simpleTitle p:last-child{font-size:9px}.triSimple{display:none}.instead{position:static;margin-top:52px}.instead h3{font-size:14px}.instead p{font-size:9px}.principles{position:static;width:auto;margin-top:48px;padding-left:28px}.principles h4{font-size:14px}.principles em{font-size:31px}.principles p{font-size:9px}.principles hr{margin:31px 0}.os{height:960px;padding:55px 34px}.osTitle{position:static}.osTitle h2{font-size:31px}.osTitle p{font-size:9px}.triOS{display:none}.osList{position:static;width:auto;margin-top:55px}.osList h3{font-size:14px;gap:10px}.osList h3 .osNum{margin-left:0;min-width:auto}.osList li{font-size:9px;margin-bottom:16px}.osList li::before{left:-12px}.osList hr{margin:43px 0}.footer{height:470px;display:block;padding:60px 34px}.footerLeft h2{font-size:34px}.footerLeft p,.footerRight p{font-size:9px}.triFooter{display:none}.footerRight{margin-top:78px;padding-top:0}.buttons{gap:20px;margin-top:44px}.buttons a{padding:9px 32px}}


/* === V9: precise rebuild of desktop "It's common" section from supplied PDF screenshot === */
@media (min-width:900px){
  .leaders.band.gray{
    height:980px !important;
    padding:0 !important;
    position:relative !important;
    width:min(1440px,100%) !important;
    margin:0 auto !important;
    background:transparent !important;
  }

  .leaders .sideTitle{
    position:absolute !important;
    left:80px !important;
    top:188px !important;
    width:230px !important;
  }
  .leaders .sideTitle h2{
    font-family:var(--italic) !important;
    font-weight:400 !important;
    font-size:42px !important;
    line-height:.9 !important;
    letter-spacing:-.025em !important;
    margin:0 0 14px 0 !important;
  }
  .leaders .sideTitle p{
    font-family:var(--sans) !important;
    font-size:12px !important;
    line-height:1.04 !important;
    letter-spacing:-.02em !important;
    margin:0 !important;
  }

  .leaders .triLeaders{
    position:absolute !important;
    left:420px !important;
    top:214px !important;
    width:48px !important;
    height:auto !important;
  }

  .leaders .leadersList{
    position:absolute !important;
    left:508px !important;
    top:204px !important;
    width:720px !important;
    height:620px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .leaders .leadersList article{
    position:absolute !important;
    left:0 !important;
    width:720px !important;
    display:grid !important;
    grid-template-columns:54px 1fr !important;
    align-items:start !important;
    margin:0 !important;
    padding:0 !important;
  }
  .leaders .leadersList article:nth-of-type(1){top:0 !important;}
  .leaders .leadersList article:nth-of-type(2){top:316px !important;}
  .leaders .leadersList article:nth-of-type(3){top:635px !important;}

  .leaders .leadersList .num{
    font-family:var(--italic) !important;
    font-weight:400 !important;
    font-size:50px !important;
    line-height:.8 !important;
    letter-spacing:-.04em !important;
    transform:translateY(-20px) !important;
    margin:0 !important;
  }

  .leaders .leadersList article > div:last-child{
    margin:0 !important;
    padding:0 !important;
  }

  .leaders .leadersList h3{
    font-family:var(--sans) !important;
    font-weight:400 !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
    line-height:.86 !important;
    color:#020202 !important;
  }

  .leaders .leadersList article:nth-of-type(1) h3{
    font-size:51px !important;
    letter-spacing:.30em !important;
  }
  .leaders .leadersList article:nth-of-type(1) h3 span{
    font-family:var(--sans) !important;
    font-size:51px !important;
    letter-spacing:.30em !important;
  }

  .leaders .leadersList article:nth-of-type(2) h3{
    font-size:31px !important;
    letter-spacing:.30em !important;
  }
  .leaders .leadersList article:nth-of-type(2) h3 span{
    font-family:var(--sans) !important;
    font-size:64px !important;
    line-height:.65 !important;
    letter-spacing:0 !important;
    margin-right:30px !important;
    vertical-align:-.10em !important;
  }

  .leaders .leadersList article:nth-of-type(3) h3{
    font-size:43px !important;
    letter-spacing:.30em !important;
  }
  .leaders .leadersList article:nth-of-type(3) h3 span{
    font-family:var(--sans) !important;
    font-size:64px !important;
    line-height:.65 !important;
    letter-spacing:0 !important;
    margin-right:30px !important;
    vertical-align:-.10em !important;
  }

  .leaders .leadersList p{
    font-family:var(--sans) !important;
    font-size:12px !important;
    line-height:1.08 !important;
    letter-spacing:-.02em !important;
    margin:18px 0 0 0 !important;
    width:390px !important;
  }

  .leaders .leadersList hr{
    position:absolute !important;
    left:-42px !important;
    width:560px !important;
    height:0 !important;
    border:0 !important;
    border-top:1px solid #222 !important;
    margin:0 !important;
  }
  .leaders .leadersList hr:nth-of-type(1){top:222px !important;}
  .leaders .leadersList hr:nth-of-type(2){top:540px !important;}

  .leaders .sectionFoot{
    position:absolute !important;
    left:80px !important;
    bottom:112px !important;
    width:505px !important;
    font-family:var(--sans) !important;
    font-size:12px !important;
    line-height:1.08 !important;
    letter-spacing:-.02em !important;
    margin:0 !important;
  }
}

/* preserve original mobile behavior from v6 */
@media (max-width:899px){
  .leaders.band.gray{height:690px !important;padding:52px 34px !important;}
  .leaders .sideTitle{position:static !important;}
  .leaders .triLeaders{display:none !important;}
  .leaders .leadersList{position:static !important;width:auto !important;margin-top:50px !important;height:auto !important;}
  .leaders .leadersList article{position:static !important;display:block !important;width:auto !important;}
  .leaders .leadersList h3{font-size:17px !important;}
  .leaders .leadersList h3 span{font-size:18px !important;}
  .leaders .leadersList article:nth-of-type(2) h3{font-size:16px !important;}
  .leaders .leadersList article:nth-of-type(2) h3 span{font-size:17px !important;}
  .leaders .leadersList p{font-size:9px !important;width:auto !important;}
  .leaders .leadersList .num{font-size:22px !important;transform:translateY(-6px) !important;}
  .leaders .leadersList hr{position:static !important;width:auto !important;margin:34px 0 !important;}
  .leaders .sectionFoot{position:static !important;font-size:9px !important;margin-top:45px !important;width:auto !important;}
}


/* === V10: requested spacing fixes for "It's common" section === */
@media (min-width:900px){
  /* tighter relationship between "It's common" and subcopy */
  .leaders .sideTitle h2{
    margin-bottom: 6px !important;
  }

  /* bring numbers closer to titles */
  .leaders .leadersList{
    left: 510px !important;
  }
  .leaders .leadersList article{
    grid-template-columns: 38px 1fr !important;
  }
  .leaders .leadersList .num{
    transform: translateY(-18px) !important;
  }

  /* move closing copy fully under the list and preserve air before next section */
  .leaders.band.gray{
    height: 1080px !important;
  }
  .leaders .sectionFoot{
    left: 508px !important;
    bottom: 110px !important;
    width: 560px !important;
  }
}


/* === V11: requested corrections to "It's common" section === */
@media (min-width:900px){
  /* Rules left-align with the numbers */
  .leaders .leadersList hr{
    left: 0 !important;
    width: 560px !important;
  }

  /* Bring numbers slightly closer to the titles */
  .leaders .leadersList article{
    grid-template-columns: 30px 1fr !important;
  }

  /* Provocateur: word baseline aligns with the A */
  .leaders .leadersList article:nth-of-type(2) h3{
    display: flex !important;
    align-items: baseline !important;
    gap: 30px !important;
    font-size: 31px !important;
    letter-spacing: .30em !important;
    line-height: 1 !important;
  }
  .leaders .leadersList article:nth-of-type(2) h3 span{
    font-size: 64px !important;
    line-height: 1 !important;
    margin-right: 0 !important;
    vertical-align: baseline !important;
    letter-spacing: 0 !important;
  }

  /* Builder: BUILDER same size and baseline as the A */
  .leaders .leadersList article:nth-of-type(3) h3{
    display: flex !important;
    align-items: baseline !important;
    gap: 30px !important;
    font-size: 64px !important;
    letter-spacing: .24em !important;
    line-height: 1 !important;
  }
  .leaders .leadersList article:nth-of-type(3) h3 span{
    font-size: 64px !important;
    line-height: 1 !important;
    margin-right: 0 !important;
    vertical-align: baseline !important;
    letter-spacing: 0 !important;
  }

  /* Closing copy aligns with the left edge of "It's common" */
  .leaders .sectionFoot{
    left: 80px !important;
    bottom: 112px !important;
    width: 505px !important;
  }

  /* Maintain enough air before the next section */
  .leaders.band.gray{
    height: 1080px !important;
  }
}


/* === V12: final requested adjustments to "It's common" section === */
@media (min-width:900px){
  /* triangle: smaller, aligned horizontally with "It's common" */
  .leaders .triLeaders{
    width: 38px !important;
    left: 420px !important;
    top: 198px !important;
  }

  /* "It's common" slightly bigger, with tight subcopy spacing */
  .leaders .sideTitle h2{
    font-size: 46px !important;
    margin-bottom: 6px !important;
  }
  .leaders .sideTitle{
    top: 188px !important;
  }

  /* move right list down so triangle point hits upper third of 1. */
  .leaders .leadersList{
    top: 225px !important;
    left: 510px !important;
  }

  /* decrease space between numbers and headline words */
  .leaders .leadersList article{
    grid-template-columns: 24px 1fr !important;
  }

  /* keep rules left-justified with numbers */
  .leaders .leadersList hr{
    left: 0 !important;
    width: 560px !important;
  }

  /* account for right list moving down */
  .leaders .leadersList article:nth-of-type(1){top:0 !important;}
  .leaders .leadersList article:nth-of-type(2){top:316px !important;}
  .leaders .leadersList article:nth-of-type(3){top:635px !important;}
  .leaders .leadersList hr:nth-of-type(1){top:222px !important;}
  .leaders .leadersList hr:nth-of-type(2){top:540px !important;}

  /* closing copy: left aligned with "It's common", lower/under the list */
  .leaders.band.gray{
    height: 1120px !important;
  }
  .leaders .sectionFoot{
    left: 80px !important;
    bottom: 96px !important;
    width: 505px !important;
  }
}


/* === V13: website edits from PDF comparison === */
@media (min-width:900px){
  /* 1. Make "It's common" larger */
  .leaders .sideTitle h2{
    font-size: 52px !important;
    margin-bottom: 6px !important;
  }

  /* 2–3. Triangle smaller and slightly lower, aligned with Common */
  .leaders .triLeaders{
    width: 32px !important;
    top: 210px !important;
    left: 420px !important;
  }

  /* 4. Shift right content group left */
  .leaders .leadersList{
    left: 475px !important;
  }

  /* Keep number/title spacing tight after left shift */
  .leaders .leadersList article{
    grid-template-columns: 22px 1fr !important;
  }

  /* 5. Extend horizontal rules */
  .leaders .leadersList hr{
    left: 0 !important;
    width: 700px !important;
  }

  /* 6. Move "These capabilities..." lower and keep aligned with It's common */
  .leaders.band.gray{
    height: 1180px !important;
  }
  .leaders .sectionFoot{
    left: 80px !important;
    bottom: 88px !important;
    width: 520px !important;
  }
}


/* === V15: rebuild footer/generic executive section to match PDF === */
@media (min-width:900px){
  .footer.band.black{
    display:block !important;
    position:relative !important;
    width:min(1440px,100%) !important;
    height:430px !important;
    min-height:0 !important;
    padding:0 !important;
    margin:0 auto !important;
    color:#fff !important;
    overflow:visible !important;
  }

  .footer .footerLeft{
    position:absolute !important;
    left:80px !important;
    top:70px !important;
    width:360px !important;
    transform:none !important;
  }

  .footer .footerLeft p{
    font-size:12px !important;
    line-height:1.08 !important;
    margin:0 0 12px 0 !important;
  }

  .footer .footerLeft h2{
    font-family:var(--italic) !important;
    font-size:42px !important;
    line-height:.9 !important;
    font-weight:400 !important;
    margin:0 0 22px 0 !important;
  }

  .footer .triFooter{
    position:absolute !important;
    left:425px !important;
    top:103px !important;
    width:38px !important;
    height:auto !important;
    margin:0 !important;
    justify-self:auto !important;
    filter:invert(1) !important;
    transform:none !important;
  }

  .footer .footerRight{
    position:absolute !important;
    left:555px !important;
    top:88px !important;
    width:360px !important;
    padding:0 !important;
    margin:0 !important;
    transform:none !important;
  }

  .footer .footerRight p{
    font-size:12px !important;
    line-height:1.08 !important;
    margin:0 !important;
  }

  .footer .buttons{
    display:flex !important;
    position:absolute !important;
    left:0 !important;
    top:110px !important;
    gap:32px !important;
    margin:0 !important;
    transform:none !important;
  }

  .footer .buttons a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:110px !important;
    height:36px !important;
    min-width:0 !important;
    padding:0 !important;
    color:#fff !important;
    text-decoration:none !important;
    border:1px solid #fff !important;
    font-size:11px !important;
    line-height:1 !important;
  }
}


/* === V17: Contact modal form === */
.contactModal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  color:#fff;
  font-family:var(--sans);
}
.contactModal.isOpen{display:block;}
.contactModal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.74);
}
.contactModal__panel{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:min(520px,calc(100vw - 40px));
  background:#020202;
  border:1px solid rgba(255,255,255,.8);
  padding:42px;
  box-sizing:border-box;
}
.contactModal__close{
  position:absolute;
  top:14px;
  right:16px;
  background:transparent;
  color:#fff;
  border:0;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.contactModal__eyebrow{
  margin:0 0 8px;
  font-size:12px;
  line-height:1;
}
.contactModal h2{
  font-family:var(--italic);
  font-weight:400;
  font-size:48px;
  line-height:.9;
  margin:0 0 30px;
}
.contactModal label{
  display:block;
  margin:0 0 18px;
  font-size:12px;
  line-height:1;
}
.contactModal input,
.contactModal textarea{
  display:block;
  width:100%;
  margin-top:8px;
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,.75);
  padding:12px;
  box-sizing:border-box;
  font:inherit;
  font-size:14px;
  outline:none;
}
.contactModal textarea{resize:vertical;}
.contactModal input:focus,
.contactModal textarea:focus{
  border-color:#fff;
}
.contactModal button[type="submit"]{
  width:150px;
  height:42px;
  background:transparent;
  color:#fff;
  border:1px solid #fff;
  font:inherit;
  font-size:12px;
  cursor:pointer;
  margin-top:8px;
}
.contactModal__fine{
  margin:16px 0 0;
  font-size:11px;
  line-height:1.25;
  opacity:.7;
}
@media (max-width:600px){
  .contactModal__panel{
    padding:32px 24px;
  }
  .contactModal h2{
    font-size:40px;
  }
}

.contactModal button[type="submit"]:disabled{
  opacity:.55;
  cursor:default;
}


/* === V20: fix footer buttons; remove empty middle button layout === */
@media (min-width:900px){
  .footer .buttons{
    display:flex !important;
    position:absolute !important;
    left:0 !important;
    top:108px !important;
    gap:36px !important;
    margin:0 !important;
    transform:none !important;
    width:auto !important;
    grid-template-columns:none !important;
  }

  .footer .buttons a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:110px !important;
    min-width:110px !important;
    max-width:110px !important;
    height:36px !important;
    padding:0 !important;
    box-sizing:border-box !important;
    border:1px solid #fff !important;
    color:#fff !important;
    background:transparent !important;
    text-decoration:none !important;
    font-size:11px !important;
    line-height:1 !important;
  }

  .footer .buttons a:empty{
    display:none !important;
  }

  .footer .triFooter{
    width:34px !important;
    left:420px !important;
    top:105px !important;
  }

  .footer .footerRight{
    left:535px !important;
    top:88px !important;
    width:360px !important;
  }
}


/* === V21: lower footer copy block to align with triangle tip === */
@media (min-width:900px){
  .footer .footerRight{
    top: 102px !important;
  }
}


/* === V24: dedicated mobile rebuild against actual v21 HTML. Desktop untouched. === */
@font-face{font-family:PPNeueMontreal;src:url('assets/fonts/PPNeueMontreal-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:DarkParadiseBold;src:url('assets/fonts/DarkParadise-Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:DarkParadiseItalic;src:url('assets/fonts/DarkParadise-Italic.otf') format('opentype');font-weight:400;font-style:italic;font-display:block}
:root{--sans:PPNeueMontreal,Arial,sans-serif;--display:DarkParadiseBold,Georgia,serif;--italic:DarkParadiseItalic,Georgia,serif}
@media (max-width:899px){
  html,body{margin:0;width:100%;overflow-x:hidden!important;background:#fff;color:#020202;font-family:var(--sans)!important;}
  main{overflow:hidden!important;width:100%;}
  img{max-width:none;}

  /* HERO: exact mobile composition, not stacked responsive desktop */
  .hero{height:880px!important;min-height:880px!important;background:#020202!important;position:relative!important;overflow:hidden!important;}
  .heroStage{position:absolute!important;inset:0!important;width:100vw!important;height:880px!important;left:0!important;top:0!important;transform:none!important;overflow:hidden!important;background:#020202!important;}
  .heroStage:after{content:''!important;position:absolute!important;inset:0!important;background:rgba(0,0,0,.10)!important;z-index:3!important;pointer-events:none!important;}
  .heroBlack{display:block!important;position:absolute!important;left:0!important;top:0!important;width:46px!important;height:880px!important;background:#020202!important;z-index:2!important;}
  .heroPhoto{display:block!important;position:absolute!important;left:0!important;top:0!important;width:100vw!important;height:815px!important;object-fit:cover!important;object-position:38% 50%!important;filter:grayscale(1)!important;opacity:.96!important;z-index:1!important;}
  .kicker{position:absolute!important;left:8px!important;z-index:5!important;color:#fff!important;font-family:var(--sans)!important;font-size:28px!important;line-height:1!important;letter-spacing:-.055em!important;width:360px!important;}
  .k1{top:565px!important}.k2{top:685px!important}.k3{top:793px!important}
  .headline{position:absolute!important;left:6px!important;z-index:5!important;display:block!important;height:auto!important;max-width:none!important;}
  .h1{top:600px!important;width:535px!important}.h2{top:717px!important;width:535px!important}.h3{top:825px!important;width:430px!important}

  /* EXECUTIVE STATEMENT */
  .intro.band.white{height:280px!important;min-height:280px!important;padding:0!important;background:#fff!important;display:block!important;position:relative!important;width:100vw!important;margin-left:calc(50% - 50vw)!important;}
  .intro .tri{position:absolute!important;left:42px!important;top:93px!important;width:30px!important;height:auto!important;transform:none!important;}
  .intro p{position:absolute!important;left:140px!important;top:25px!important;margin:0!important;width:240px!important;max-width:240px!important;font-family:var(--sans)!important;font-style:italic!important;font-size:23px!important;line-height:1.08!important;letter-spacing:-.055em!important;}

  /* IT'S COMMON */
  .leaders.band.gray{height:auto!important;min-height:0!important;width:100vw!important;margin-left:calc(50% - 50vw)!important;padding:0 0 92px!important;background:#f3f3f3!important;position:relative!important;overflow:hidden!important;}
  .leaders .sideTitle{position:relative!important;left:43px!important;top:auto!important;width:310px!important;margin:0!important;padding-top:140px!important;}
  .leaders .sideTitle h2{font-family:var(--italic)!important;font-size:56px!important;line-height:.9!important;letter-spacing:-.035em!important;margin:0 0 20px!important;font-weight:400!important;}
  .leaders .sideTitle p{font-family:var(--sans)!important;font-size:22px!important;line-height:1.05!important;letter-spacing:-.045em!important;margin:0!important;width:245px!important;}
  .leaders .triLeaders{display:block!important;position:absolute!important;left:309px!important;top:205px!important;width:18px!important;height:auto!important;transform:rotate(90deg)!important;}
  .leaders .leadersList{position:static!important;width:auto!important;height:auto!important;margin:170px 42px 0!important;padding:0!important;}
  .leaders .leadersList article{position:relative!important;display:block!important;width:100%!important;left:auto!important;top:auto!important;margin:0!important;padding:0!important;}
  .leaders .leadersList article:nth-of-type(1),.leaders .leadersList article:nth-of-type(2),.leaders .leadersList article:nth-of-type(3){top:auto!important;}
  .leaders .leadersList article>div:last-child{margin:0!important;padding:0!important;}
  .leaders .leadersList .num{display:block!important;position:static!important;font-family:var(--italic)!important;font-size:28px!important;line-height:1!important;letter-spacing:-.04em!important;margin:0 0 28px!important;transform:none!important;}
  .leaders .leadersList h3,.leaders .leadersList article:nth-of-type(1) h3,.leaders .leadersList article:nth-of-type(2) h3,.leaders .leadersList article:nth-of-type(3) h3{display:block!important;font-family:var(--sans)!important;font-size:37px!important;line-height:1!important;letter-spacing:.22em!important;font-weight:400!important;white-space:nowrap!important;margin:0 0 26px!important;}
  .leaders .leadersList article:nth-of-type(2) h3,.leaders .leadersList article:nth-of-type(3) h3{font-size:33px!important;letter-spacing:.20em!important;}
  .leaders .leadersList h3 span{font-size:inherit!important;letter-spacing:inherit!important;margin:0!important;vertical-align:baseline!important;}
  .leaders .leadersList p{font-family:var(--sans)!important;font-size:22px!important;line-height:1.08!important;letter-spacing:-.05em!important;width:310px!important;max-width:310px!important;margin:0!important;}
  .leaders .leadersList hr{display:block!important;position:static!important;width:100%!important;margin:72px 0 72px!important;border:0!important;border-top:1px solid #111!important;}
  .leaders .sectionFoot{position:static!important;width:320px!important;margin:105px 42px 0!important;font-family:var(--sans)!important;font-size:22px!important;line-height:1.08!important;letter-spacing:-.05em!important;}
  .leaders .sectionFoot br{display:none!important;}

  /* SIMPLE */
  .simple.band.white{height:auto!important;min-height:0!important;width:100vw!important;margin-left:calc(50% - 50vw)!important;background:#fff!important;padding:185px 0 120px!important;position:relative!important;overflow:hidden!important;}
  .simpleTitle{position:static!important;width:310px!important;margin-left:48px!important;}
  .simpleTitle>p:first-child{font-family:var(--sans)!important;font-size:20px!important;line-height:1.05!important;letter-spacing:-.04em!important;margin:0!important;width:190px!important;}
  .simpleTitle h2{font-family:var(--italic)!important;font-size:100px!important;line-height:.78!important;letter-spacing:-.04em!important;font-weight:400!important;margin:0 0 48px!important;}
  .simpleTitle p:last-child{font-family:var(--sans)!important;font-size:20px!important;line-height:1.08!important;letter-spacing:-.045em!important;width:240px!important;margin:0!important;}
  .triSimple{display:block!important;position:absolute!important;left:308px!important;top:378px!important;width:18px!important;transform:rotate(90deg)!important;}
  .instead{position:static!important;margin:68px 0 0 48px!important;width:320px!important;}
  .instead h3{font-family:var(--sans)!important;font-size:30px!important;line-height:1!important;letter-spacing:.28em!important;text-transform:uppercase!important;margin:0 0 28px!important;font-weight:400!important;}
  .instead p{font-family:var(--sans)!important;font-size:20px!important;line-height:1.08!important;letter-spacing:-.045em!important;width:310px!important;margin:0!important;}
  .principles{position:static!important;width:342px!important;margin:140px 0 0 34px!important;padding:0!important;}
  .principles article{position:static!important;margin:0!important;padding:0!important;display:block!important;}
  .principles article span{display:block!important;font-family:var(--sans)!important;font-size:18px!important;line-height:1!important;margin:0 0 18px!important;}
  .principles h4{font-family:var(--sans)!important;font-size:31px!important;line-height:1.05!important;letter-spacing:-.045em!important;font-weight:400!important;margin:0 0 24px 28px!important;width:285px!important;}
  .principles em{font-family:var(--italic)!important;font-style:italic!important;font-size:54px!important;line-height:.9!important;letter-spacing:-.045em!important;}
  .principles article:nth-of-type(4) h4 em{display:block!important;}
  .principles p{font-family:var(--sans)!important;font-size:16px!important;line-height:1.08!important;letter-spacing:-.035em!important;width:230px!important;margin:0 0 0 28px!important;}
  .principles hr{display:block!important;width:296px!important;margin:78px 0 82px 8px!important;border:0!important;border-top:1px solid #111!important;}

  /* OPERATING SYSTEM */
  .os.band.gray{height:auto!important;min-height:0!important;width:100vw!important;margin-left:calc(50% - 50vw)!important;background:#f3f3f3!important;padding:120px 0 110px!important;position:relative!important;overflow:hidden!important;}
  .osTitle{position:static!important;width:300px!important;margin-left:38px!important;}
  .osTitle h2{font-family:var(--italic)!important;font-size:55px!important;line-height:.86!important;letter-spacing:-.04em!important;font-weight:400!important;margin:0 0 22px!important;}
  .osTitle p{font-family:var(--sans)!important;font-size:14px!important;line-height:1.15!important;letter-spacing:-.025em!important;margin:0!important;width:180px!important;}
  .triOS{display:block!important;position:absolute!important;left:214px!important;top:360px!important;width:18px!important;transform:rotate(90deg)!important;}
  .osList{position:static!important;width:330px!important;margin:85px 0 0 38px!important;padding:0!important;}
  .osList article{margin:0!important;padding:0!important;}
  .osList h3{display:flex!important;align-items:flex-start!important;gap:14px!important;font-family:var(--sans)!important;font-size:24px!important;line-height:1.16!important;letter-spacing:.24em!important;font-weight:400!important;text-transform:uppercase!important;margin:0 0 54px!important;width:330px!important;white-space:normal!important;overflow:visible!important;}
  .osList h3 .osNum{font-size:18px!important;line-height:1.15!important;min-width:auto!important;margin:0!important;letter-spacing:0!important;}
  .osList ul{list-style:none!important;margin:0 0 88px!important;padding:0 0 0 18px!important;width:320px!important;}
  .osList li{position:relative!important;font-family:var(--sans)!important;font-size:14px!important;line-height:1.1!important;letter-spacing:-.02em!important;margin:0 0 30px!important;width:285px!important;}
  .osList li:before{content:'•'!important;position:absolute!important;left:-18px!important;top:0!important;}
  .osList hr{display:none!important;}

  /* FOOTER */
  .footer.band.black{height:780px!important;min-height:780px!important;width:100vw!important;margin-left:calc(50% - 50vw)!important;background:#020202!important;color:#fff!important;padding:96px 36px 0!important;position:relative!important;overflow:hidden!important;display:block!important;}
  .footerLeft{position:static!important;width:330px!important;transform:none!important;}
  .footerLeft p{font-family:var(--sans)!important;font-size:17px!important;line-height:1.1!important;letter-spacing:-.035em!important;margin:0 0 18px!important;}
  .footerLeft h2{font-family:var(--italic)!important;font-size:54px!important;line-height:.9!important;letter-spacing:-.035em!important;font-weight:400!important;margin:0 0 28px!important;}
  .triFooter{display:block!important;position:absolute!important;left:290px!important;top:222px!important;width:18px!important;filter:invert(1)!important;transform:rotate(90deg)!important;}
  .footerRight{position:static!important;width:330px!important;margin:92px 0 0!important;padding:0!important;transform:none!important;}
  .footerRight p{font-family:var(--sans)!important;font-size:17px!important;line-height:1.08!important;letter-spacing:-.035em!important;margin:0!important;}
  .buttons{display:flex!important;gap:30px!important;margin:82px 0 0!important;position:static!important;transform:none!important;width:auto!important;}
  .buttons a{display:flex!important;align-items:center!important;justify-content:center!important;width:145px!important;min-width:145px!important;max-width:145px!important;height:54px!important;padding:0!important;border:1px solid #fff!important;color:#fff!important;background:transparent!important;text-decoration:none!important;font-family:var(--sans)!important;font-size:16px!important;line-height:1!important;}
  .buttons a:empty{display:none!important;}
}


/* === V25 mobile refinement pass: hierarchy, clipping, and spacing === */
@media (max-width:899px){

  /* HERO: reduce headline overrun and keep the editorial crop */
  .hero{
    height:850px!important;
    min-height:850px!important;
  }
  .heroStage{
    height:850px!important;
    width:100vw!important;
    left:0!important;
    transform:none!important;
  }
  .heroBlack{
    width:46px!important;
    height:850px!important;
  }
  .heroPhoto{
    left:0!important;
    top:0!important;
    width:100vw!important;
    height:800px!important;
    object-position:36% 50%!important;
  }
  .kicker{
    left:8px!important;
    font-size:27px!important;
  }
  .k1{top:568px!important;}
  .k2{top:675px!important;}
  .k3{top:780px!important;}

  .headline{
    left:6px!important;
    max-width:none!important;
  }
  .h1{
    top:600px!important;
    width:500px!important;
  }
  .h2{
    top:705px!important;
    width:500px!important;
  }
  .h3{
    top:812px!important;
    width:415px!important;
  }

  /* INTRO: preserve PDF spacing */
  .intro.band.white{
    height:280px!important;
  }
  .intro p{
    left:140px!important;
    top:26px!important;
    width:245px!important;
    max-width:245px!important;
  }

  /* IT'S COMMON: prevent right clipping and give the block more PDF air */
  .leaders.band.gray{
    padding-bottom:105px!important;
  }
  .leaders .sideTitle h2{
    font-size:60px!important;
    margin-bottom:18px!important;
  }
  .leaders .triLeaders{
    left:312px!important;
    top:214px!important;
    width:16px!important;
  }
  .leaders .leadersList{
    margin-left:42px!important;
    margin-right:0!important;
  }
  .leaders .leadersList h3,
  .leaders .leadersList article:nth-of-type(1) h3{
    font-size:35px!important;
    letter-spacing:.20em!important;
  }
  .leaders .leadersList article:nth-of-type(2) h3,
  .leaders .leadersList article:nth-of-type(3) h3{
    font-size:32px!important;
    letter-spacing:.18em!important;
  }
  .leaders .leadersList p,
  .leaders .sectionFoot{
    font-size:21px!important;
  }
  .leaders .leadersList hr{
    margin:70px 0 74px!important;
  }

  /* SIMPLE: restore display scale and stop script words from colliding */
  .simple.band.white{
    padding-top:178px!important;
    padding-bottom:125px!important;
  }
  .simpleTitle{
    margin-left:48px!important;
    width:330px!important;
  }
  .simpleTitle>p:first-child{
    font-size:21px!important;
    width:210px!important;
  }
  .simpleTitle h2{
    font-size:118px!important;
    line-height:.74!important;
    margin-bottom:58px!important;
  }
  .simpleTitle p:last-child{
    font-size:20px!important;
    width:265px!important;
  }
  .triSimple{
    top:388px!important;
    left:315px!important;
    width:16px!important;
  }
  .instead{
    margin-top:70px!important;
    margin-left:48px!important;
  }
  .instead h3{
    font-size:32px!important;
    letter-spacing:.30em!important;
  }
  .instead p{
    width:315px!important;
    font-size:20px!important;
  }

  .principles{
    margin-top:145px!important;
    margin-left:34px!important;
    width:350px!important;
  }
  .principles article{
    position:relative!important;
    min-height:0!important;
  }
  .principles article span{
    font-size:18px!important;
    margin-bottom:20px!important;
  }
  .principles h4{
    font-size:30px!important;
    line-height:1.05!important;
    width:300px!important;
    margin-left:28px!important;
    margin-bottom:26px!important;
  }
  .principles h4 em{
    font-size:66px!important;
    line-height:.88!important;
  }

  /* Force the big script display words to own the line when needed */
  .principles article:nth-of-type(1) h4 em,
  .principles article:nth-of-type(4) h4 em{
    display:block!important;
  }
  .principles article:nth-of-type(1) h4,
  .principles article:nth-of-type(4) h4{
    font-size:30px!important;
    line-height:1.02!important;
  }

  .principles article:nth-of-type(2) h4 em{
    font-size:62px!important;
  }
  .principles article:nth-of-type(3) h4 em{
    font-size:58px!important;
  }

  .principles p{
    font-size:17px!important;
    line-height:1.08!important;
    width:250px!important;
    margin-left:28px!important;
  }
  .principles hr{
    width:296px!important;
    margin:82px 0 86px 8px!important;
  }

  /* OPERATING SYSTEM: stronger hierarchy and dividers restored */
  .os.band.gray{
    padding-top:120px!important;
    padding-bottom:120px!important;
  }
  .osTitle{
    margin-left:38px!important;
  }
  .osTitle h2{
    font-size:64px!important;
    line-height:.84!important;
    margin-bottom:28px!important;
  }
  .osTitle p{
    font-size:15px!important;
  }
  .triOS{
    left:220px!important;
    top:382px!important;
    width:16px!important;
  }
  .osList{
    margin-top:92px!important;
    margin-left:38px!important;
    width:350px!important;
  }
  .osList h3{
    font-size:26px!important;
    letter-spacing:.22em!important;
    width:345px!important;
    margin-bottom:52px!important;
  }
  .osList h3 .osNum{
    font-size:18px!important;
  }
  .osList ul{
    width:330px!important;
    margin-bottom:78px!important;
  }
  .osList li{
    font-size:14px!important;
    width:295px!important;
    margin-bottom:26px!important;
  }
  .osList hr{
    display:block!important;
    width:330px!important;
    margin:76px 0 86px!important;
    border:0!important;
    border-top:1px solid #111!important;
  }

  /* FOOTER: small refinement toward PDF */
  .footer.band.black{
    height:735px!important;
    min-height:735px!important;
    padding-top:96px!important;
  }
  .footerLeft h2{
    font-size:58px!important;
  }
  .triFooter{
    top:226px!important;
    left:292px!important;
    width:16px!important;
  }
  .footerRight{
    margin-top:86px!important;
  }
  .buttons{
    margin-top:74px!important;
    gap:30px!important;
  }
  .buttons a{
    width:146px!important;
    min-width:146px!important;
  }
}


/* === V26: mobile hero/header tuning only === */
@media (max-width:899px){
  .hero{
    height:850px!important;
    min-height:850px!important;
    max-height:none!important;
  }

  .heroStage{
    height:850px!important;
    width:100vw!important;
    left:0!important;
    top:0!important;
    transform:none!important;
    overflow:hidden!important;
  }

  .heroBlack{
    width:44px!important;
    height:850px!important;
  }

  .heroPhoto{
    left:0!important;
    top:0!important;
    width:100vw!important;
    height:805px!important;
    object-fit:cover!important;
    object-position:28% 50%!important;
  }

  .kicker{
    left:14px!important;
    font-size:26px!important;
    line-height:1!important;
    letter-spacing:-.055em!important;
    width:360px!important;
  }

  .headline{
    left:12px!important;
    max-width:none!important;
  }

  .k1{top:565px!important;}
  .h1{top:595px!important;width:420px!important;}

  .k2{top:685px!important;}
  .h2{top:715px!important;width:420px!important;}

  .k3{top:795px!important;}
  .h3{top:825px!important;width:370px!important;}
}


/* === V27: clean mobile HERO pass only. Desktop untouched. === */
@media (max-width:899px){

  .hero{
    position:relative!important;
    height:900px!important;
    min-height:900px!important;
    max-height:none!important;
    background:#020202!important;
    overflow:hidden!important;
  }

  .heroStage{
    position:absolute!important;
    inset:0!important;
    left:0!important;
    top:0!important;
    width:100vw!important;
    height:900px!important;
    transform:none!important;
    transform-origin:unset!important;
    overflow:hidden!important;
    background:#020202!important;
  }

  .heroStage::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:rgba(0,0,0,.12)!important;
    z-index:3!important;
    pointer-events:none!important;
  }

  .heroBlack{
    display:block!important;
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:30px!important;
    height:900px!important;
    background:#020202!important;
    z-index:2!important;
  }

  .heroPhoto{
    display:block!important;
    position:absolute!important;
    left:-18px!important;
    top:0!important;
    right:auto!important;
    width:112vw!important;
    height:825px!important;
    object-fit:cover!important;
    object-position:18% 50%!important;
    filter:grayscale(1)!important;
    opacity:.94!important;
    z-index:1!important;
  }

  .kicker{
    position:absolute!important;
    left:14px!important;
    z-index:5!important;
    color:#fff!important;
    font-family:var(--sans)!important;
    font-size:25px!important;
    line-height:1!important;
    letter-spacing:-.055em!important;
    width:360px!important;
    margin:0!important;
  }

  .headline{
    position:absolute!important;
    left:12px!important;
    z-index:5!important;
    display:block!important;
    height:auto!important;
    max-width:none!important;
  }

  .k1{top:455px!important;}
  .h1{top:488px!important;width:392px!important;}

  .k2{top:610px!important;}
  .h2{top:642px!important;left:12px!important;width:392px!important;}

  .k3{top:750px!important;}
  .h3{top:782px!important;width:365px!important;}
}


/* === V28: mobile hero/header crop + PP Neue Montreal spacing === */
@media (max-width:899px){
  .heroPhoto{
    top:-30px!important;
    height:835px!important;
    left:-40px!important;
    width:118vw!important;
    object-position:40% 50%!important;
  }

  .kicker{
    letter-spacing:-.025em!important;
  }
}


/* V29 mobile hero refinements */
@media (max-width:899px){
  .heroPhoto{
    top:-120px !important;
    left:-95px !important;
    width:128vw !important;
    height:860px !important;
    object-position:58% 50% !important;
  }

  .kicker,
  .hero-kicker,
  .hero-label{
    letter-spacing:0.03em !important;
  }
}


/* V30 mobile hero crop correction: move image visually RIGHT */
@media (max-width:899px){
  .heroPhoto{
    top:-120px !important;
    left:0px !important;
    width:118vw !important;
    height:860px !important;
    object-position:34% 50% !important;
  }
}


/* V31 mobile hero: zoom/crop to match designed file */
@media (max-width:899px){
  .heroPhoto{
    top:-145px !important;
    left:-34px !important;
    width:155vw !important;
    height:875px !important;
    object-fit:cover !important;
    object-position:22% 50% !important;
  }

  .heroBlack{
    width:42px !important;
  }
}


/* V32 mobile hero match */
@media (max-width:899px){
  .heroPhoto{
    top:-265px !important;          /* raise image so bottom cuts through Relentless */
    left:-12px !important;          /* restore film border */
    width:172vw !important;         /* more zoom */
    height:980px !important;
    object-position:22% 50% !important; /* crop black-hat figure harder */
  }

  .heroBlack{
    width:58px !important;          /* ensure film strip remains visible */
  }
}



/* V34 mobile hero final crop - mobile only */
@media (max-width:899px){
  .heroPhoto{
    left:-30px !important;
    top:-105px !important;
    width:146vw !important;
    height:900px !important;
    object-fit:cover !important;
    object-position:22% 50% !important;
  }

  .heroBlack{
    width:42px !important;
  }

  .kicker{
    letter-spacing:0.045em !important;
  }

  .h3{
    width:395px !important;
  }
}


/* V36 mobile hero uses exported Figma crop */
@media (max-width:899px){
  .hero{
    height:1500px !important;
  }
  .heroStage{
    width:100% !important;
    height:1500px !important;
    left:0 !important;
    transform:none !important;
  }
  .heroPhoto{
    content:url('assets/images/mobile-hero-photo.png') !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100% !important;
    height:1500px !important;
    object-fit:cover !important;
    object-position:center top !important;
    right:auto !important;
  }
  .heroBlack{display:none !important;}
}


/* === V37: verified mobile hero module from Figma export ===
   Uses the exact exported mobile hero background image.
   Desktop remains untouched because this is mobile-only. */
@media (max-width:899px){
  .hero{
    position:relative !important;
    width:100vw !important;
    height:calc(100vw * 2.17640808) !important;
    min-height:calc(100vw * 2.17640808) !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#020202 !important;
  }

  .heroStage{
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100vw !important;
    height:100% !important;
    transform:none !important;
    transform-origin:initial !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#020202 !important;
  }

  .heroStage::after{
    content:none !important;
    display:none !important;
  }

  .heroBlack{
    display:none !important;
  }

  .heroPhoto{
    content:url("assets/images/mobile-hero-photo.png") !important;
    display:block !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    right:auto !important;
    bottom:auto !important;
    width:100vw !important;
    height:auto !important;
    max-width:none !important;
    object-fit:contain !important;
    object-position:0 0 !important;
    filter:none !important;
    opacity:1 !important;
    z-index:1 !important;
  }

  .kicker{
    position:absolute !important;
    left:14px !important;
    z-index:5 !important;
    color:#fff !important;
    font-family:var(--sans) !important;
    font-size:25px !important;
    line-height:1 !important;
    letter-spacing:0.045em !important;
    width:auto !important;
    margin:0 !important;
  }

  .headline{
    position:absolute !important;
    left:12px !important;
    z-index:5 !important;
    display:block !important;
    height:auto !important;
    max-width:none !important;
  }

  .k1{ top:36.8vw !important; }
  .h1{ top:39.9vw !important; width:96vw !important; }

  .k2{ top:51.6vw !important; }
  .h2{ top:54.7vw !important; left:12px !important; width:96vw !important; }

  .k3{ top:66.5vw !important; }
  .h3{ top:69.3vw !important; width:94vw !important; }
}


/* === V38: mobile hero text placement over exported Figma background === */
@media (max-width:899px){
  .kicker{
    left:14px !important;
    font-size:25px !important;
    line-height:1 !important;
    letter-spacing:0.045em !important;
  }

  .headline{
    left:12px !important;
    max-width:none !important;
  }

  .k1{ top:112vw !important; }
  .h1{ top:118vw !important; width:96vw !important; }

  .k2{ top:148vw !important; }
  .h2{ top:154vw !important; left:12px !important; width:96vw !important; }

  .k3{ top:184vw !important; }
  .h3{ top:190vw !important; width:94vw !important; }
}


/* V39: tighten mobile hero headline scale so all three lock to same width */
@media (max-width:899px){
  .h1 img,
  .h2 img{
    width:92% !important;
    height:auto !important;
  }

  .h3 img{
    width:92% !important;
    height:auto !important;
  }
}


/* V40: mobile intro statement adjustment */
@media (max-width:899px){
  .intro.band.white{
    height:210px !important;
    min-height:210px !important;
  }

  .intro p{
    left:156px !important;
    top:36px !important;
    width:250px !important;
    max-width:250px !important;
    font-size:19px !important;
    line-height:1.08 !important;
    letter-spacing:-0.045em !important;
  }

  .intro .tri{
    left:88px !important;
    top:46px !important;
    width:30px !important;
  }
}


/* V41: intro section refinement */
@media (max-width:899px){
  .intro p{
    left:122px !important;
    width:235px !important;
    max-width:235px !important;
    font-size:18px !important;
    letter-spacing:0.012em !important;
  }

  .intro .tri{
    left:84px !important;
    width:26px !important;
  }
}


/* V42: intro section final alignment */
@media (max-width:899px){

  .intro .tri{
    left:74px !important;     /* 10px further left */
    top:52px !important;      /* align with first line */
    width:23px !important;    /* ~10% smaller */
  }

  .intro p{
    left:112px !important;    /* 10px further left */
    top:42px !important;      /* slightly lower */
    width:220px !important;   /* force 3-line wrap */
    max-width:220px !important;
    font-size:15.5px !important; /* 2-3pt smaller */
    letter-spacing:0.012em !important;
  }
}


/* V43: intro micro-adjustments */
@media (max-width:899px){

  .intro .tri{
    left:64px !important; /* 10px further left */
  }

  .intro p{
    top:52px !important; /* 10px lower */
    line-height:1.20 !important; /* increase line spacing */
  }
}


/* V44: intro copy nudge */
@media (max-width:899px){
  .intro p{
    top:49px !important; /* move copy up 3px */
  }
}


/* V45: mobile 'It's common' section refinement */
@media (min-width:900px){
  .sectionFoot .footPilot{
    display:inline;
  }
}

@media (max-width:899px){
  .leaders.band.gray{
    padding-top:0 !important;
    padding-bottom:108px !important;
  }

  .leaders .sideTitle{
    left:36px !important;
    width:330px !important;
    padding-top:142px !important;
  }

  .leaders .sideTitle h2{
    font-size:72px !important;
    line-height:.88 !important;
    letter-spacing:-0.035em !important;
    margin-bottom:22px !important;
  }

  .leaders .sideTitle p{
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
    width:238px !important;
  }

  .leaders .triLeaders{
    display:block !important;
    width:23px !important;          /* match previous section triangle */
    left:300px !important;          /* closer to the supporting copy */
    top:224px !important;           /* top aligned with first line of copy */
    transform:rotate(90deg) !important;
  }

  .leaders .leadersList{
    margin:168px 36px 0 !important;
    width:auto !important;
  }

  .leaders .leadersList article{
    display:grid !important;
    grid-template-columns:28px 1fr !important;
    column-gap:0 !important;
    align-items:start !important;
  }

  .leaders .leadersList .num{
    grid-column:1 !important;
    grid-row:1 !important;
    font-size:24px !important;
    line-height:1 !important;
    margin:0 !important;
    transform:translateY(-11px) !important; /* baseline shifted up */
  }

  .leaders .leadersList article > div:last-child{
    grid-column:2 !important;
    grid-row:1 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .leaders .leadersList h3,
  .leaders .leadersList article:nth-of-type(1) h3,
  .leaders .leadersList article:nth-of-type(2) h3,
  .leaders .leadersList article:nth-of-type(3) h3{
    font-size:32px !important;       /* one consistent title size */
    line-height:1 !important;
    letter-spacing:.22em !important;
    white-space:nowrap !important;
    margin:0 0 26px !important;
    font-weight:400 !important;
  }

  .leaders .leadersList h3 span,
  .leaders .leadersList article:nth-of-type(1) h3 span,
  .leaders .leadersList article:nth-of-type(2) h3 span,
  .leaders .leadersList article:nth-of-type(3) h3 span{
    font-size:inherit !important;
    line-height:inherit !important;
    letter-spacing:inherit !important;
    margin:0 !important;
    vertical-align:baseline !important;
  }

  .leaders .leadersList p{
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
    width:320px !important;
    max-width:320px !important;
    margin:0 !important;
  }

  .leaders .leadersList hr{
    width:100% !important;
    margin:74px 0 78px !important;
    border-top:1px solid #111 !important;
  }

  .leaders .sectionFoot{
    margin:112px 36px 0 !important;
    width:320px !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  .leaders .sectionFoot br{
    display:none !important;
  }

  .leaders .sectionFoot .footMain,
  .leaders .sectionFoot .footPilot{
    display:block !important;
  }

  .leaders .sectionFoot .footPilot{
    margin-top:28px !important;
  }
}


/* V46: leaders section alignment tweaks */
@media (max-width:899px){

  .leaders .triLeaders{
    left:268px !important;   /* under the 'o' of common */
    top:239px !important;    /* 15px lower */
  }

  .leaders .leadersList hr{
    width:86% !important;    /* shorter */
    margin-left:0 !important;
    margin-right:auto !important;
  }

  .leaders .sectionFoot{
    margin-left:64px !important;  /* align with numbered copy column */
    width:300px !important;
  }
}


/* V47: move common-section triangle 20px further left */
@media (max-width:899px){
  .leaders .triLeaders{
    left:248px !important;
  }
}


/* V48: mobile 'The reason is SIMPLE' section refinement */
@media (max-width:899px){

  .simple.band.white{
    padding-top:182px !important;
  }

  /* "The reason is" in Dark Paradise */
  .simpleTitle > p:first-child{
    font-family:var(--italic) !important;
    font-size:38px !important;
    line-height:.92 !important;
    letter-spacing:-0.035em !important;
    width:280px !important;
  }

  /* SIMPLE with more character spacing */
  .simpleTitle h2{
    letter-spacing:0.018em !important;
    margin-top:2px !important;
    margin-bottom:54px !important;
  }

  /* Match sans copy system from previous sections */
  .simpleTitle p:last-child,
  .instead p,
  .principles p{
    font-family:var(--sans) !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  .simpleTitle p:last-child{
    width:260px !important;
  }

  /* Triangle same size as other sections, next to 'performing' under SIMPLE */
  .triSimple{
    display:block !important;
    width:23px !important;
    left:276px !important;
    top:411px !important;
    transform:rotate(90deg) !important;
  }

  /* Tighten INSTEAD relationship to supporting copy */
  .instead{
    margin-top:64px !important;
  }

  .instead h3{
    margin-bottom:16px !important;
    letter-spacing:.32em !important;
  }

  .instead p{
    width:318px !important;
  }

  /* Principle layout: numbers closer to titles and shifted up */
  .principles{
    margin-left:38px !important;
    width:350px !important;
  }

  .principles article{
    display:grid !important;
    grid-template-columns:28px 1fr !important;
    column-gap:0 !important;
    align-items:start !important;
  }

  .principles article span{
    grid-column:1 !important;
    grid-row:1 !important;
    font-size:18px !important;
    line-height:1 !important;
    margin:0 !important;
    transform:translateY(-9px) !important;
  }

  .principles h4{
    grid-column:2 !important;
    grid-row:1 !important;
    margin:0 0 24px 0 !important;
    width:292px !important;
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:0.012em !important;
  }

  .principles h4 em{
    letter-spacing:0.012em !important;
  }

  .principles p{
    grid-column:2 !important;
    margin-left:0 !important;
    width:235px !important;
  }

  .principles article:nth-of-type(1) p{
    width:220px !important;
  }

  .principles article:nth-of-type(4) p{
    width:215px !important;
  }

  .principles hr{
    width:296px !important;
    margin-left:10px !important;
  }
}


/* V49: simple/principles requested refinements */
@media (max-width:899px){

  /* move persona copy up 20px */
  .simpleTitle p:last-child{
    transform:translateY(-20px) !important;
  }

  /* move black triangle up 40px */
  .triSimple{
    top:371px !important;
  }

  /* move numbers 20px right, keeping upward baseline shift */
  .principles article span{
    transform:translate(20px, -9px) !important;
  }
}


/* V50 */
@media (max-width:899px){
  .triSimple{
    top:361px !important; /* 10px higher than v49 */
  }
}


/* V51: mobile Operating System section refinement */
@media (max-width:899px){

  /* Larger, airier Dark Paradise title */
  .osTitle h2{
    font-size:66px !important;
    line-height:.84 !important;
    letter-spacing:0.012em !important;
  }

  /* Sans copy matches prior sections */
  .osTitle p,
  .osList li{
    font-family:var(--sans) !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  /* Move "in practice..." block up slightly */
  .osTitle p{
    margin-top:-10px !important;
    width:190px !important;
  }

  /* Match triangle size and move up */
  .triOS{
    width:23px !important;
    top:330px !important;
  }

  /* Heading rows: numbers same size/baseline as headers */
  .osList h3{
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    column-gap:8px !important;
    align-items:baseline !important;
    font-size:26px !important;
    line-height:1.16 !important;
    letter-spacing:.24em !important;
    width:350px !important;
  }

  .osList h3 .osNum{
    font-size:26px !important;
    line-height:1.16 !important;
    letter-spacing:0 !important;
    margin:0 !important;
    min-width:0 !important;
    align-self:baseline !important;
  }

  .osList h3 span:last-child{
    display:block !important;
  }

  /* Copy aligned under headers; bullet hangs left */
  .osList ul{
    padding-left:0 !important;
    margin-left:26px !important;
    width:320px !important;
  }

  .osList li{
    width:300px !important;
    padding-left:0 !important;
    margin-bottom:30px !important;
  }

  .osList li::before{
    left:-18px !important;
  }
}


/* V52: final mobile section refinements */
@media (max-width:899px){

  /* Operating System */
  .triOS{
    top:325px !important; /* 5px up */
  }

  .osList article:nth-of-type(3) h3{
    grid-template-columns:auto 1fr !important;
    column-gap:10px !important;
    width:340px !important;
    font-size:24px !important;
    letter-spacing:.22em !important;
  }

  .osList article:nth-of-type(3) h3 .osNum{
    font-size:24px !important;
    line-height:1.16 !important;
    margin:0 !important;
    transform:none !important;
  }

  .osList article:nth-of-type(3) h3 span:last-child{
    max-width:305px !important;
    overflow:visible !important;
  }

  /* The Reason Is Simple */
  .triSimple{
    top:356px !important; /* 5px up from v50 */
  }

  .principles article:nth-of-type(3) h4 em{
    vertical-align:baseline !important;
    position:relative !important;
    top:8px !important; /* bring gritty down onto baseline */
  }

  /* Generic Executive / footer */
  .footerLeft p,
  .footerRight p{
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  .footerLeft p:first-child{
    margin-bottom:6px !important; /* closer to generic executive */
  }

  .footerLeft h2{
    font-size:54px !important;
    line-height:.9 !important;
    letter-spacing:0.012em !important; /* match Dark Paradise character spacing */
    margin-bottom:18px !important;
  }

  .footerLeft p:last-child{
    transform:translateY(-10px) !important; /* move up 10px */
  }

  .triFooter{
    width:23px !important;       /* match previous section triangles */
    left:285px !important;       /* 5px left */
    top:182px !important;        /* 40px up */
    transform:rotate(90deg) !important;
  }

  .footerRight p{
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }
}


/* V53 */
@media (max-width:899px){
  .triFooter{
    top:152px !important; /* 30px higher */
  }
}


/* V54 */
@media (max-width:899px){

  /* Generic Executive white triangle */
  .triFooter{
    left:282px !important; /* 3px left */
    top:149px !important;  /* 3px up */
  }

  /* Header: Relentless in Commercialization */
  .hero .relentless,
  .hero .commercialization,
  .hero .hero-line-3{
    transform:translateY(-10px) !important;
  }
}


/* V55 */
@media (max-width:899px){

  /* Generic Executive triangle */
  .triFooter{
    left:279px !important; /* 3px further left */
    top:146px !important;  /* 3px further up */
  }

  /* Header: move Relentless in Commercialization up another 20px */
  .hero .relentless,
  .hero .commercialization,
  .hero .hero-line-3{
    transform:translateY(-30px) !important;
  }
}


/* V57: move actual header third line up 20px without separating label from headline */
@media (max-width:899px){
  .k3,
  .h3{
    transform:translateY(-20px) !important;
  }
}


/* V58: reduce Strategic and Dangerous by ~3% on mobile */
@media (max-width:899px){
  .h1,
  .h2{
    transform:scale(0.97) !important;
    transform-origin:left center !important;
  }
}


/* V60: narrow-desktop / tablet hero behavior
   Keeps full desktop and mobile untouched.
   At 900–1199px, the image locks to the right edge of the browser
   while the headline stack floats independently over the black field. */
@media (min-width:900px) and (max-width:1199px){

  .hero{
    height:720px !important;
    min-height:720px !important;
    background:#020202 !important;
    overflow:hidden !important;
    position:relative !important;
  }

  .heroStage{
    position:absolute !important;
    inset:0 !important;
    width:100vw !important;
    height:720px !important;
    left:0 !important;
    top:0 !important;
    transform:none !important;
    transform-origin:initial !important;
    overflow:hidden !important;
    background:#020202 !important;
  }

  .heroStage::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:rgba(0,0,0,.20) !important;
    z-index:2 !important;
    pointer-events:none !important;
  }

  .heroBlack{
    display:block !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:52vw !important;
    height:720px !important;
    background:#020202 !important;
    z-index:0 !important;
  }

  .heroPhoto{
    position:absolute !important;
    right:0 !important;
    top:0 !important;
    left:auto !important;
    width:58vw !important;
    height:720px !important;
    object-fit:cover !important;
    object-position:52% center !important;
    filter:grayscale(1) !important;
    opacity:1 !important;
    z-index:1 !important;
  }

  .kicker{
    position:absolute !important;
    left:clamp(42px,6vw,72px) !important;
    z-index:4 !important;
    color:#fff !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:0 !important;
    margin:0 !important;
  }

  .headline{
    position:absolute !important;
    left:clamp(42px,6vw,72px) !important;
    z-index:4 !important;
    height:auto !important;
    max-width:none !important;
  }

  .k1{top:128px !important;}
  .h1{top:168px !important;width:68vw !important;max-width:760px !important;}

  .k2{top:320px !important;}
  .h2{top:360px !important;width:68vw !important;max-width:760px !important;}

  .k3{top:512px !important;}
  .h3{top:552px !important;width:68vw !important;max-width:760px !important;}
}


/* V61: narrow-desktop hero image locked to right edge with stable crop
   Desktop 1200px+ and mobile <900px remain untouched. */
@media (min-width:900px) and (max-width:1199px){

  .hero{
    height:720px !important;
    min-height:720px !important;
    background:#020202 !important;
    overflow:hidden !important;
    position:relative !important;
  }

  .heroStage{
    position:absolute !important;
    inset:0 !important;
    width:100vw !important;
    height:720px !important;
    left:0 !important;
    top:0 !important;
    transform:none !important;
    overflow:hidden !important;
    background:#020202 !important;
  }

  .heroStage::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:rgba(0,0,0,.20) !important;
    z-index:2 !important;
    pointer-events:none !important;
  }

  .heroBlack{
    display:block !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:58vw !important;
    height:720px !important;
    background:#020202 !important;
    z-index:0 !important;
  }

  .heroPhoto{
    position:absolute !important;
    right:0 !important;
    left:auto !important;
    top:0 !important;
    height:720px !important;
    width:auto !important;
    min-width:760px !important;
    max-width:none !important;
    object-fit:cover !important;
    object-position:right center !important;
    filter:grayscale(1) !important;
    opacity:1 !important;
    z-index:1 !important;
  }

  .kicker{
    position:absolute !important;
    left:clamp(42px,6vw,72px) !important;
    z-index:4 !important;
    color:#fff !important;
    font-size:18px !important;
    line-height:1 !important;
    letter-spacing:0 !important;
    margin:0 !important;
  }

  .headline{
    position:absolute !important;
    left:clamp(42px,6vw,72px) !important;
    z-index:4 !important;
    height:auto !important;
    max-width:none !important;
  }

  .k1{top:128px !important;}
  .h1{top:168px !important;width:68vw !important;max-width:760px !important;}

  .k2{top:320px !important;}
  .h2{top:360px !important;width:68vw !important;max-width:760px !important;}

  .k3{top:512px !important;}
  .h3{top:552px !important;width:68vw !important;max-width:760px !important;}
}


/* V62: desktop/tablet hero image genuinely pinned to browser right.
   Mobile remains untouched. This overrides both original desktop artboard
   behavior and the v60/v61 tablet test. */
@media (min-width:900px){

  .hero{
    position:relative !important;
    background:#020202 !important;
    overflow:hidden !important;
  }

  .heroStage{
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100vw !important;
    transform:none !important;
    transform-origin:initial !important;
    overflow:hidden !important;
    background:#020202 !important;
  }

  .heroBlack{
    display:block !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    background:#020202 !important;
    z-index:0 !important;
  }

  .heroPhoto{
    position:absolute !important;
    right:0 !important;
    left:auto !important;
    max-width:none !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:grayscale(1) !important;
    opacity:1 !important;
    z-index:1 !important;
  }
}

/* Full desktop: keep the original photo crop/scale, but pin its right edge
   to the actual browser edge instead of the centered 1440px stage edge. */
@media (min-width:1200px){

  .hero{
    height:900px !important;
    min-height:900px !important;
  }

  .heroStage{
    height:900px !important;
  }

  .heroBlack{
    width:60vw !important;
    height:900px !important;
  }

  .heroPhoto{
    right:0 !important;
    top:-296px !important;
    width:1118px !important;
    height:1491px !important;
  }
}

/* Narrow desktop/tablet: use a fixed crop size, not vw width,
   so the image does not uncrop as the browser narrows. */
@media (min-width:900px) and (max-width:1199px){

  .hero{
    height:720px !important;
    min-height:720px !important;
  }

  .heroStage{
    height:720px !important;
  }

  .heroBlack{
    width:62vw !important;
    height:720px !important;
  }

  .heroPhoto{
    right:0 !important;
    top:-238px !important;
    width:895px !important;
    height:1193px !important;
  }
}


/* V63: desktop/tablet hero right-lock with preserved crop window
   Adds a crop wrapper so the image pins to the browser edge without revealing more photo.
   Mobile remains governed by the existing mobile hero rules. */

/* Mobile: keep the wrapper from interfering with the exported mobile hero setup */
@media (max-width:899px){
  .heroPhotoCrop{
    position:static !important;
    display:block !important;
    width:auto !important;
    height:auto !important;
    overflow:visible !important;
  }
}

/* Desktop/tablet: crop wrapper pins to browser right edge; image stays cropped inside it */
@media (min-width:900px){
  .heroPhotoCrop{
    position:absolute !important;
    right:0 !important;
    top:0 !important;
    height:100% !important;
    overflow:hidden !important;
    z-index:1 !important;
  }

  .heroPhoto{
    position:absolute !important;
    left:0 !important;
    right:auto !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:grayscale(1) !important;
    opacity:1 !important;
    z-index:1 !important;
  }
}

/* Full desktop: original crop size, pinned to browser right */
@media (min-width:1200px){
  .heroPhotoCrop{
    width:786px !important; /* original visible crop width from the 1440 artboard */
    height:900px !important;
  }

  .heroPhoto{
    left:0 !important;
    top:-296px !important;
    width:1118px !important;
    height:1491px !important;
  }
}

/* Narrow desktop/tablet: proportional version of the original crop */
@media (min-width:900px) and (max-width:1199px){
  .heroPhotoCrop{
    width:calc(100vw - 430px) !important;
    min-width:470px !important;
    max-width:650px !important;
    height:720px !important;
  }

  .heroPhoto{
    left:0 !important;
    top:-236px !important;
    width:895px !important;
    height:1193px !important;
  }
}


/* V64: restore mobile after desktop crop-wrapper experiment.
   Desktop/tablet v63 remains active at 900px+. */
@media (max-width:899px){

  html, body{
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    overflow-x:hidden !important;
    background:#fff !important;
    font-family:var(--sans) !important;
  }

  main{
    overflow:hidden !important;
    width:100% !important;
  }

  /* Mobile hero: use Figma-exported full module background. */
  .hero{
    position:relative !important;
    width:100vw !important;
    height:calc(100vw * 2.17640701) !important;
    min-height:calc(100vw * 2.17640701) !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#020202 !important;
  }

  .heroStage{
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100vw !important;
    height:100% !important;
    transform:none !important;
    transform-origin:initial !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#020202 !important;
  }

  .heroStage::after{
    content:none !important;
    display:none !important;
  }

  .heroBlack{
    display:none !important;
  }

  .heroPhotoCrop{
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100vw !important;
    height:100% !important;
    overflow:visible !important;
    display:block !important;
    z-index:1 !important;
  }

  .heroPhoto{
    content:url("assets/images/mobile-hero-photo.png") !important;
    display:block !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    right:auto !important;
    bottom:auto !important;
    width:100vw !important;
    height:auto !important;
    max-width:none !important;
    object-fit:contain !important;
    object-position:0 0 !important;
    filter:none !important;
    opacity:1 !important;
    z-index:1 !important;
  }

  .kicker{
    position:absolute !important;
    left:14px !important;
    z-index:5 !important;
    color:#fff !important;
    font-family:var(--sans) !important;
    font-size:25px !important;
    line-height:1 !important;
    letter-spacing:0.045em !important;
    width:auto !important;
    margin:0 !important;
  }

  .headline{
    position:absolute !important;
    left:12px !important;
    z-index:5 !important;
    display:block !important;
    height:auto !important;
    max-width:none !important;
  }

  .k1{ top:112vw !important; }
  .h1{
    top:118vw !important;
    width:96vw !important;
    transform:scale(0.97) !important;
    transform-origin:left center !important;
  }

  .k2{ top:148vw !important; }
  .h2{
    top:154vw !important;
    left:12px !important;
    width:96vw !important;
    transform:scale(0.97) !important;
    transform-origin:left center !important;
  }

  .k3{
    top:184vw !important;
    transform:translateY(-20px) !important;
  }
  .h3{
    top:190vw !important;
    width:94vw !important;
    transform:translateY(-20px) !important;
  }

  /* Intro */
  .intro.band.white{
    height:210px !important;
    min-height:210px !important;
    padding:0 !important;
    background:#fff !important;
    display:block !important;
    position:relative !important;
    width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
  }

  .intro .tri{
    position:absolute !important;
    left:64px !important;
    top:52px !important;
    width:23px !important;
    height:auto !important;
    transform:none !important;
  }

  .intro p{
    position:absolute !important;
    left:112px !important;
    top:49px !important;
    margin:0 !important;
    width:220px !important;
    max-width:220px !important;
    font-family:var(--sans) !important;
    font-style:italic !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  /* It's common */
  .leaders.band.gray{
    height:auto !important;
    min-height:0 !important;
    width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    padding:0 0 108px !important;
    background:#f3f3f3 !important;
    position:relative !important;
    overflow:hidden !important;
  }

  .leaders .sideTitle{
    position:relative !important;
    left:36px !important;
    top:auto !important;
    width:330px !important;
    margin:0 !important;
    padding-top:142px !important;
  }

  .leaders .sideTitle h2{
    font-family:var(--italic) !important;
    font-size:72px !important;
    line-height:.88 !important;
    letter-spacing:-0.035em !important;
    margin:0 0 22px !important;
    font-weight:400 !important;
  }

  .leaders .sideTitle p,
  .leaders .leadersList p,
  .leaders .sectionFoot{
    font-family:var(--sans) !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  .leaders .sideTitle p{
    margin:0 !important;
    width:238px !important;
  }

  .leaders .triLeaders{
    display:block !important;
    position:absolute !important;
    left:248px !important;
    top:239px !important;
    width:23px !important;
    height:auto !important;
    transform:rotate(90deg) !important;
  }

  .leaders .leadersList{
    position:static !important;
    height:auto !important;
    margin:168px 36px 0 !important;
    width:auto !important;
    padding:0 !important;
  }

  .leaders .leadersList article{
    position:relative !important;
    display:grid !important;
    grid-template-columns:28px 1fr !important;
    column-gap:0 !important;
    align-items:start !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }

  .leaders .leadersList .num{
    grid-column:1 !important;
    grid-row:1 !important;
    font-family:var(--italic) !important;
    font-size:24px !important;
    line-height:1 !important;
    margin:0 !important;
    transform:translateY(-11px) !important;
  }

  .leaders .leadersList article > div:last-child{
    grid-column:2 !important;
    grid-row:1 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .leaders .leadersList h3,
  .leaders .leadersList article:nth-of-type(1) h3,
  .leaders .leadersList article:nth-of-type(2) h3,
  .leaders .leadersList article:nth-of-type(3) h3{
    display:block !important;
    font-family:var(--sans) !important;
    font-size:32px !important;
    line-height:1 !important;
    letter-spacing:.22em !important;
    white-space:nowrap !important;
    margin:0 0 26px !important;
    font-weight:400 !important;
  }

  .leaders .leadersList h3 span,
  .leaders .leadersList article:nth-of-type(1) h3 span,
  .leaders .leadersList article:nth-of-type(2) h3 span,
  .leaders .leadersList article:nth-of-type(3) h3 span{
    font-size:inherit !important;
    line-height:inherit !important;
    letter-spacing:inherit !important;
    margin:0 !important;
    vertical-align:baseline !important;
  }

  .leaders .leadersList p{
    width:320px !important;
    max-width:320px !important;
    margin:0 !important;
  }

  .leaders .leadersList hr{
    display:block !important;
    position:static !important;
    width:86% !important;
    margin:74px 0 78px !important;
    border:0 !important;
    border-top:1px solid #111 !important;
  }

  .leaders .sectionFoot{
    position:static !important;
    width:300px !important;
    margin:112px 0 0 64px !important;
  }

  .leaders .sectionFoot br{
    display:none !important;
  }

  .leaders .sectionFoot .footMain,
  .leaders .sectionFoot .footPilot{
    display:block !important;
  }

  .leaders .sectionFoot .footPilot{
    margin-top:28px !important;
  }

  /* Simple */
  .simple.band.white{
    height:auto !important;
    min-height:0 !important;
    width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    background:#fff !important;
    padding:182px 0 120px !important;
    position:relative !important;
    overflow:hidden !important;
  }

  .simpleTitle{
    position:static !important;
    width:310px !important;
    margin-left:48px !important;
  }

  .simpleTitle > p:first-child{
    font-family:var(--italic) !important;
    font-size:38px !important;
    line-height:.92 !important;
    letter-spacing:-0.035em !important;
    width:280px !important;
    margin:0 !important;
  }

  .simpleTitle h2{
    font-family:var(--italic) !important;
    font-size:118px !important;
    line-height:.74 !important;
    letter-spacing:0.018em !important;
    font-weight:400 !important;
    margin:2px 0 54px !important;
  }

  .simpleTitle p:last-child,
  .instead p,
  .principles p{
    font-family:var(--sans) !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  .simpleTitle p:last-child{
    width:260px !important;
    margin:0 !important;
    transform:translateY(-20px) !important;
  }

  .triSimple{
    display:block !important;
    width:23px !important;
    left:276px !important;
    top:356px !important;
    transform:rotate(90deg) !important;
  }

  .instead{
    position:static !important;
    margin:64px 0 0 48px !important;
    width:320px !important;
  }

  .instead h3{
    font-family:var(--sans) !important;
    font-size:30px !important;
    line-height:1 !important;
    letter-spacing:.32em !important;
    text-transform:uppercase !important;
    margin:0 0 16px !important;
    font-weight:400 !important;
  }

  .instead p{
    width:318px !important;
    margin:0 !important;
  }

  .principles{
    position:static !important;
    width:350px !important;
    margin:140px 0 0 38px !important;
    padding:0 !important;
  }

  .principles article{
    position:static !important;
    display:grid !important;
    grid-template-columns:28px 1fr !important;
    column-gap:0 !important;
    align-items:start !important;
    margin:0 !important;
    padding:0 !important;
  }

  .principles article span{
    grid-column:1 !important;
    grid-row:1 !important;
    font-size:18px !important;
    line-height:1 !important;
    margin:0 !important;
    transform:translate(20px, -9px) !important;
  }

  .principles h4{
    grid-column:2 !important;
    grid-row:1 !important;
    margin:0 0 24px 0 !important;
    width:292px !important;
    font-family:var(--sans) !important;
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:0.012em !important;
    font-weight:400 !important;
  }

  .principles h4 em{
    font-family:var(--italic) !important;
    font-style:italic !important;
    font-size:66px !important;
    line-height:.88 !important;
    letter-spacing:0.012em !important;
  }

  .principles article:nth-of-type(3) h4 em{
    vertical-align:baseline !important;
    position:relative !important;
    top:8px !important;
  }

  .principles p{
    grid-column:2 !important;
    margin-left:0 !important;
    width:235px !important;
  }

  .principles article:nth-of-type(1) p{ width:220px !important; }
  .principles article:nth-of-type(4) p{ width:215px !important; }

  .principles hr{
    display:block !important;
    width:296px !important;
    margin:78px 0 82px 10px !important;
    border:0 !important;
    border-top:1px solid #111 !important;
  }

  /* Operating System */
  .os.band.gray{
    height:auto !important;
    min-height:0 !important;
    width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    background:#f3f3f3 !important;
    padding:120px 0 110px !important;
    position:relative !important;
    overflow:hidden !important;
  }

  .osTitle{
    position:static !important;
    width:300px !important;
    margin-left:38px !important;
  }

  .osTitle h2{
    font-family:var(--italic) !important;
    font-size:66px !important;
    line-height:.84 !important;
    letter-spacing:0.012em !important;
    font-weight:400 !important;
    margin:0 0 22px !important;
  }

  .osTitle p,
  .osList li{
    font-family:var(--sans) !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  .osTitle p{
    margin-top:-10px !important;
    width:190px !important;
  }

  .triOS{
    display:block !important;
    position:absolute !important;
    left:214px !important;
    top:325px !important;
    width:23px !important;
    transform:rotate(90deg) !important;
  }

  .osList{
    position:static !important;
    width:350px !important;
    margin:85px 0 0 38px !important;
    padding:0 !important;
  }

  .osList h3{
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    column-gap:8px !important;
    align-items:baseline !important;
    font-family:var(--sans) !important;
    font-size:26px !important;
    line-height:1.16 !important;
    letter-spacing:.24em !important;
    font-weight:400 !important;
    text-transform:uppercase !important;
    margin:0 0 54px !important;
    width:350px !important;
    white-space:normal !important;
    overflow:visible !important;
  }

  .osList h3 .osNum{
    font-size:26px !important;
    line-height:1.16 !important;
    min-width:0 !important;
    margin:0 !important;
    letter-spacing:0 !important;
    align-self:baseline !important;
  }

  .osList article:nth-of-type(3) h3{
    column-gap:10px !important;
    width:340px !important;
    font-size:24px !important;
    letter-spacing:.22em !important;
  }

  .osList article:nth-of-type(3) h3 .osNum{
    font-size:24px !important;
  }

  .osList ul{
    list-style:none !important;
    margin:0 0 88px 26px !important;
    padding-left:0 !important;
    width:320px !important;
  }

  .osList li{
    position:relative !important;
    width:300px !important;
    padding-left:0 !important;
    margin:0 0 30px !important;
  }

  .osList li::before{
    content:'•' !important;
    position:absolute !important;
    left:-18px !important;
    top:0 !important;
  }

  .osList hr{
    display:block !important;
    width:330px !important;
    margin:76px 0 86px !important;
    border:0 !important;
    border-top:1px solid #111 !important;
  }

  /* Footer */
  .footer.band.black{
    height:780px !important;
    min-height:780px !important;
    width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    background:#020202 !important;
    color:#fff !important;
    padding:96px 36px 0 !important;
    position:relative !important;
    overflow:hidden !important;
    display:block !important;
  }

  .footerLeft{
    position:static !important;
    width:330px !important;
    transform:none !important;
  }

  .footerLeft p,
  .footerRight p{
    font-family:var(--sans) !important;
    font-size:15.5px !important;
    line-height:1.20 !important;
    letter-spacing:0.012em !important;
  }

  .footerLeft p:first-child{
    margin:0 0 6px !important;
  }

  .footerLeft h2{
    font-family:var(--italic) !important;
    font-size:54px !important;
    line-height:.9 !important;
    letter-spacing:0.012em !important;
    font-weight:400 !important;
    margin:0 0 18px !important;
  }

  .footerLeft p:last-child{
    transform:translateY(-10px) !important;
  }

  .triFooter{
    display:block !important;
    position:absolute !important;
    width:23px !important;
    left:279px !important;
    top:146px !important;
    filter:invert(1) !important;
    transform:rotate(90deg) !important;
  }

  .footerRight{
    position:static !important;
    width:330px !important;
    margin:92px 0 0 !important;
    padding:0 !important;
    transform:none !important;
  }

  .buttons{
    display:flex !important;
    gap:30px !important;
    margin:82px 0 0 !important;
    position:static !important;
    transform:none !important;
    width:auto !important;
  }

  .buttons a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:145px !important;
    min-width:145px !important;
    max-width:145px !important;
    height:54px !important;
    padding:0 !important;
    border:1px solid #fff !important;
    color:#fff !important;
    background:transparent !important;
    text-decoration:none !important;
    font-family:var(--sans) !important;
    font-size:16px !important;
    line-height:1 !important;
  }

  .buttons a:empty{ display:none !important; }
}


/* V65: mobile font hardening.
   The v64 layout rules are still in place; this only makes mobile typography explicit
   and uses WOFF2-first sources for iPhone Safari. */
@font-face{
  font-family:DarkParadiseItalicMobile;
  src:url('assets/fonts/DarkParadise-Italic.woff2') format('woff2'),
      url('assets/fonts/DarkParadise-Italic.otf') format('opentype');
  font-weight:400;
  font-style:normal;
  font-display:block;
}
@font-face{
  font-family:DarkParadiseBoldMobile;
  src:url('assets/fonts/DarkParadise-Bold.woff2') format('woff2'),
      url('assets/fonts/DarkParadise-Bold.otf') format('opentype');
  font-weight:700;
  font-style:normal;
  font-display:block;
}
@font-face{
  font-family:NeueMontrealMobile;
  src:url('assets/fonts/PPNeueMontreal-Regular.woff2') format('woff2'),
      url('assets/fonts/PPNeueMontreal-Regular.otf') format('opentype');
  font-weight:400;
  font-style:normal;
  font-display:block;
}

@media (max-width:899px){

  body,
  .kicker,
  .intro p,
  .leaders .sideTitle p,
  .leaders .leadersList h3,
  .leaders .leadersList h3 span,
  .leaders .leadersList p,
  .leaders .sectionFoot,
  .simpleTitle p:last-child,
  .instead h3,
  .instead p,
  .principles h4,
  .principles p,
  .osTitle p,
  .osList h3,
  .osList li,
  .footerLeft p,
  .footerRight p,
  .buttons a{
    font-family:NeueMontrealMobile, NeueMontreal, Arial, sans-serif !important;
    font-style:normal !important;
  }

  .leaders .sideTitle h2,
  .leaders .leadersList .num,
  .simpleTitle > p:first-child,
  .simpleTitle h2,
  .principles h4 em,
  .osTitle h2,
  .footerLeft h2{
    font-family:DarkParadiseItalicMobile, DarkParadiseItalic, Georgia, serif !important;
    font-style:normal !important;
    font-weight:400 !important;
  }
}


/* V66: mobile crop fixes after font hardening */
@media (max-width:899px){

  /* "It's common" titles: slightly smaller so Provocateur/Builder don't crop */
  .leaders .leadersList h3,
  .leaders .leadersList article:nth-of-type(1) h3,
  .leaders .leadersList article:nth-of-type(2) h3,
  .leaders .leadersList article:nth-of-type(3) h3{
    font-size:28px !important;
    letter-spacing:.20em !important;
  }

  /* Operating System section titles: slightly smaller so long title doesn't crop */
  .osList h3{
    font-size:23px !important;
    letter-spacing:.21em !important;
    width:330px !important;
  }

  .osList h3 .osNum{
    font-size:23px !important;
  }

  .osList article:nth-of-type(3) h3{
    font-size:22px !important;
    letter-spacing:.19em !important;
    width:330px !important;
  }

  .osList article:nth-of-type(3) h3 .osNum{
    font-size:22px !important;
  }

  /* The Reason Is Simple section: reset number positioning so they stay beside each principle */
  .principles article{
    position:relative !important;
    display:grid !important;
    grid-template-columns:48px 1fr !important;
    column-gap:0 !important;
    align-items:start !important;
  }

  .principles article > span{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    grid-column:1 !important;
    grid-row:1 !important;
    display:block !important;
    transform:translate(0, -9px) !important;
    font-family:DarkParadiseItalicMobile, DarkParadiseItalic, Georgia, serif !important;
    font-size:18px !important;
    line-height:1 !important;
    margin:0 !important;
    width:auto !important;
  }

  .principles h4{
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .principles p{
    grid-column:2 !important;
  }
}
