/* Complete cinematic homepage sections */
.wordmark img { width: 146px; height: auto; object-fit: contain; }
.dark-nav .wordmark img,.control-footer .wordmark img { filter: invert(1); }
.control-footer .wordmark img { width: 170px; }

.management-intro {
  padding: 10vw 5vw 7vw;
  display: grid;
  grid-template-columns: 2.25fr .75fr;
  gap: 8vw;
  align-items: end;
  background: #0c0d0c;
  color: #f1f2ed;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.management-intro-head > span,
.management-process header > span,
.founder-control > div > span,
.owner-promise header > span,
.seo-faq header > span {
  font-family: var(--mono);
  font-size: 8px;
  letter-spacing: .12em;
}

.management-intro h2,
.management-process h2,
.owner-promise h2,
.seo-faq h2 {
  margin: 35px 0 0;
  font-size: clamp(54px, 6.8vw, 106px);
  font-weight: 300;
  line-height: .92;
  letter-spacing: -.065em;
}

.management-intro h2 em { color: var(--control-accent); font-style: normal; }
.management-intro > p { margin: 0; color: #9c9f98; font-size: 13px; line-height: 1.9; }

.service-matrix {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  background: #0c0d0c;
  color: #f1f2ed;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.service-matrix > a {
  min-height: 350px;
  padding: 30px;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr;
  border-right: 1px solid rgba(255,255,255,.14);
  border-top: 1px solid rgba(255,255,255,.14);
  transition: background .3s, color .3s;
}

.service-matrix > a:nth-child(3n) { border-right: 0; }
.service-matrix > a:hover { background: var(--control-accent); color: #0c0d0c; }
.service-matrix > a > b,
.service-matrix span {
  font-family: var(--mono);
  font-size: 8px;
  font-weight: 400;
  letter-spacing: .1em;
}
.service-matrix > a > i { grid-column: 2; grid-row: 1; font-style: normal; }
.service-matrix > a > div { grid-column: 1 / -1; align-self: end; }
.service-matrix h3 { margin: 13px 0 22px; font-size: 30px; font-weight: 400; letter-spacing: -.035em; }
.service-matrix p { max-width: 410px; margin: 0; color: #999c95; font-size: 12px; line-height: 1.8; }
.service-matrix > a:hover p { color: rgba(12,13,12,.7); }

.management-process {
  padding: 10vw 5vw;
  background: #11130f;
  color: #f1f2ed;
}

.management-process > header { display: grid; grid-template-columns: 1fr 2.5fr; }
.management-process h2 { margin-top: 0; }
.process-track {
  margin: 8vw 0 0 28.5%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(255,255,255,.3);
}
.process-track article { min-height: 330px; padding: 28px 24px; border-right: 1px solid rgba(255,255,255,.16); }
.process-track article:first-child { border-left: 1px solid rgba(255,255,255,.16); }
.process-track b,.process-track span,.management-process aside span { font-family: var(--mono); font-size: 8px; font-weight: 400; letter-spacing: .1em; }
.process-track span { display: block; margin-top: 10px; color: var(--control-accent); }
.process-track h3 { margin: 90px 0 18px; font-size: 24px; font-weight: 400; }
.process-track p { margin: 0; color: #92968d; font-size: 11px; line-height: 1.75; }
.management-process aside { margin: 0 0 0 28.5%; padding: 25px 0; display: grid; grid-template-columns: 1fr 3fr; border-bottom: 1px solid rgba(255,255,255,.3); }
.management-process aside p { margin: 0; color: #b9bbb5; font-size: 11px; }

.property-ledger { margin-top: 70px; border-top: 1px solid rgba(255,255,255,.25); }
.property-ledger > div,.property-ledger > a { min-height: 96px; display: grid; grid-template-columns: 70px 1.5fr 1fr 30px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.17); }
.property-ledger > a { transition: padding .2s,background .2s; }
.property-ledger > a:hover { padding-inline: 18px; background: rgba(212,179,106,.1); }
.property-ledger b,.property-ledger small { font-family: var(--mono); font-size: 8px; font-weight: 400; text-transform: uppercase; }
.property-ledger span { font-size: 24px; }
.property-ledger small { color: #858980; }
.property-ledger i { color: var(--control-accent); font-style: normal; }

.founder-control {
  padding: 10vw 10vw;
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 9vw;
  align-items: center;
  background: #181a16;
  color: #f1f2ed;
}
.founder-control figure { height: 650px; margin: 0; overflow: hidden; }
.founder-control figure img { filter: saturate(.72) contrast(1.05); }
.founder-control blockquote { max-width: 850px; margin: 50px 0 70px; font-size: clamp(44px, 5vw, 76px); font-weight: 300; line-height: 1.03; letter-spacing: -.055em; }
.founder-control blockquote::first-letter { color: var(--control-accent); }
.founder-control h3 { margin: 0; font-size: 20px; font-weight: 500; }
.founder-control p { color: #92968d; font-family: var(--mono); font-size: 8px; text-transform: uppercase; }
.founder-control a { display: inline-flex; gap: 50px; margin-top: 45px; padding-bottom: 7px; border-bottom: 1px solid; font-family: var(--mono); font-size: 8px; text-transform: uppercase; }
.founder-control a b { color: var(--control-accent); }

.owner-promise { padding: 10vw 5vw; background: #eef0e9; color: #111; }
.owner-promise header { display: grid; grid-template-columns: 1fr 2.5fr; }
.owner-promise h2 { margin: 0; }
.owner-promise > div { margin: 8vw 0 0 28.5%; display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #111; }
.owner-promise article { min-height: 220px; padding: 28px 35px 28px 0; border-bottom: 1px solid rgba(17,17,17,.2); }
.owner-promise article:nth-child(even) { padding-left: 35px; border-left: 1px solid rgba(17,17,17,.2); }
.owner-promise b { display: block; margin-bottom: 55px; font-size: 23px; font-weight: 500; }
.owner-promise p { max-width: 440px; margin: 0; color: #666962; font-size: 12px; line-height: 1.8; }

.seo-faq { padding: 10vw 5vw; display: grid; grid-template-columns: .72fr 1.28fr; gap: 8vw; background: #0c0d0c; color: #f1f2ed; }
.seo-faq h2 { font-size: clamp(54px, 6vw, 94px); }
.seo-faq details { border-top: 1px solid rgba(255,255,255,.22); }
.seo-faq details:last-child { border-bottom: 1px solid rgba(255,255,255,.22); }
.seo-faq summary { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 30px; cursor: pointer; font-size: 15px; list-style: none; }
.seo-faq summary::-webkit-details-marker { display: none; }
.seo-faq summary i { color: var(--control-accent); font-size: 20px; font-style: normal; transition: transform .2s; }
.seo-faq details[open] summary i { transform: rotate(45deg); }
.seo-faq details p { max-width: 720px; margin: -8px 50px 30px 0; color: #969990; font-size: 12px; line-height: 1.8; }

#control .control-contact p { max-width: 570px; margin: 30px 0 0; font-size: 13px; line-height: 1.8; }
.control-footer { padding: 75px 5vw 30px; display: grid; grid-template-columns: 1fr 1.2fr .7fr 1fr; gap: 5vw; background: #0c0d0c; color: #f1f2ed; border-top: 1px solid rgba(255,255,255,.16); }
.control-footer > p { margin: 0; color: #8f928b; font-size: 11px; line-height: 1.8; }
.control-footer nav,.control-footer > div:nth-of-type(2) { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; font-family: var(--mono); font-size: 8px; text-transform: uppercase; }
.control-footer nav a,.control-footer > div:nth-of-type(2) a { padding-bottom: 3px; border-bottom: 1px solid transparent; }
.control-footer nav a:hover,.control-footer > div:nth-of-type(2) a:hover { border-color: var(--control-accent); }
#control .control-actions .watch-demo { background: transparent; border-color: rgba(255,255,255,.32); color: #fff; }
.control-footer small { grid-column: 1 / -1; margin-top: 55px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.14); color: #6f726b; font-family: var(--mono); font-size: 7px; }
.owner-view-link { margin: 65px 0 0 auto; width: min(72%, 920px); padding: 25px 0; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.3); border-bottom: 1px solid rgba(255,255,255,.3); font-family: var(--mono); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; transition: color .2s, padding .2s; }
.owner-view-link b { color: var(--control-accent); font-size: 18px; font-weight: 400; }
.owner-view-link:hover { padding-inline: 16px; color: var(--control-accent); }

@media (max-width: 900px) {
  .layout-picker {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    grid-column: 1;
    justify-content: flex-start;
    margin: -35px 0 12px;
    overflow-x: auto;
  }

  .layout-picker > span { display: none; }
  .layout-picker button { flex: 0 0 auto; }

  #control[data-layout="command"] .control-hero,
  #control[data-layout="cinematic"] .control-hero,
  #control[data-layout="reverse"] .control-hero {
    min-height: auto;
    padding: 70px 20px 120px;
    grid-template-columns: 1fr;
  }

  #control[data-layout="command"] .control-copy,
  #control[data-layout="cinematic"] .control-copy,
  #control[data-layout="reverse"] .control-copy {
    grid-column: 1;
    grid-row: auto;
    padding-left: 0;
    text-align: left;
  }

  #control[data-layout="command"] .control-actions { justify-content: flex-start; }

  #control[data-layout="command"] .dashboard-card,
  #control[data-layout="cinematic"] .dashboard-card,
  #control[data-layout="reverse"] .dashboard-card {
    grid-column: 1;
    grid-row: auto;
    width: 100%;
    margin: 0 0 110px;
    justify-self: stretch;
  }

  #control[data-layout="cinematic"] .control-property-photo { display: block; }
  #control[data-layout="cinematic"] .control-property-photo::after { background: rgba(7,8,7,.72); }

  .management-intro,
  .management-process > header,
  .owner-promise header,
  .seo-faq,
  .founder-control {
    grid-template-columns: 1fr;
  }

  .management-intro { padding: 90px 20px 65px; }
  .management-intro h2,.management-process h2,.owner-promise h2,.seo-faq h2 { font-size: 52px; }
  .service-matrix { grid-template-columns: 1fr 1fr; }
  .service-matrix > a { min-height: 310px; padding: 25px 20px; }
  .service-matrix > a:nth-child(3n) { border-right: 1px solid rgba(255,255,255,.14); }
  .service-matrix > a:nth-child(even) { border-right: 0; }
  .management-process,.owner-promise,.seo-faq { padding: 90px 20px; }
  .process-track,.management-process aside,.owner-promise > div { margin-left: 0; }
  .process-track { grid-template-columns: 1fr 1fr; }
  .process-track article:nth-child(3) { border-left: 1px solid rgba(255,255,255,.16); }
  .founder-control { padding: 90px 20px; }
  .founder-control figure { height: 530px; }
  .founder-control blockquote { font-size: 44px; }
  .property-ledger > div,.property-ledger > a { grid-template-columns: 45px 1fr 24px; }
  .property-ledger small { display: none; }
  .control-footer { grid-template-columns: 1fr 1fr; padding: 60px 20px 25px; }
  .owner-view-link { width: 100%; margin-top: 45px; }
}

@media (max-width: 520px) {
  .wordmark img { width: 112px; }
  .service-matrix { grid-template-columns: 1fr; }
  .service-matrix > a { min-height: 280px; border-right: 0 !important; }
  .process-track { grid-template-columns: 1fr; }
  .process-track article,.process-track article:nth-child(3) { min-height: 260px; border-left: 1px solid rgba(255,255,255,.16); }
  .process-track h3 { margin-top: 55px; }
  .management-process aside { grid-template-columns: 1fr; gap: 12px; }
  .owner-promise > div { grid-template-columns: 1fr; }
  .owner-promise article:nth-child(even) { padding-left: 0; border-left: 0; }
  .seo-faq summary { font-size: 13px; }
  .founder-control figure { height: 440px; }
  .control-footer { grid-template-columns: 1fr; }
  .control-footer small { margin-top: 25px; }
}
}

@media (max-width: 520px) {
  .layout-picker { margin-top: -30px; }
  .layout-picker button { padding-inline: 11px; }
}
