/* /services/fractional-coo/ — a warm, photo-led page: Andy's portrait breaks out of the hero grid
   with the fee card across it, a month drawn as a calendar, an example operating plan that runs
   off the left edge, and a fee scale. Scoped under .fc. */
.cof section{padding:0}
.cof h2{font-size:clamp(30px,3.4vw,46px);max-width:18ch;margin:0 0 22px}
.cof p{color:var(--fg2);font-size:17px;line-height:1.6;margin:0 0 16px;max-width:60ch}

/* opening */
.fc-open{background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);border-bottom:1px solid var(--line);overflow:hidden}
.fc-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px;align-items:end;padding-top:88px}
.fc-copy{padding-bottom:96px}
.fc-copy h1{font-size:clamp(46px,5.6vw,80px);max-width:12ch;margin:0 0 30px}
.fc-dek{font-size:19px !important;line-height:1.55 !important;color:var(--ink) !important;max-width:34em !important}
.fc-acts{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 44px}
.fc-terms{display:grid;grid-template-columns:repeat(3,1fr);margin:0;border-top:1px solid var(--ink)}
.fc-terms div{padding:16px 18px 0 0}
.fc-terms div+div{padding-left:18px;border-left:1px solid var(--line)}
.fc-terms dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg3)}
.fc-terms dd{margin:6px 0 0;font-weight:600;color:var(--ink);font-size:15.5px;line-height:1.35}
.fc-photo{position:relative;margin:0 calc(-1 * max(32px,(100vw - 1320px)/2 + 32px)) 0 0;align-self:stretch;min-height:640px}
.fc-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.fc-price{position:absolute;left:-56px;bottom:56px;background:var(--ink);color:#fff;padding:24px 28px 22px;width:300px;
  box-shadow:0 30px 60px -24px rgba(26,24,54,.55)}
.fc-price small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc-br)}
.fc-price b{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:56px;letter-spacing:-.04em;line-height:1;margin:10px 0 8px}
.fc-price span{font-size:14px;color:#CFCBF2}

/* a month */
.fc-month{padding:120px 0 0 !important}
.fc-mhead{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:end;margin-bottom:48px}
.fc-mhead h2{margin:0}
.fc-mhead p{margin:0}
.fc-mgrid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:32px;align-items:stretch}
.fc-cal{background:#fff;border:1px solid var(--line);padding:22px 24px 8px;box-shadow:0 30px 60px -40px rgba(26,24,54,.35)}
.fc-row{display:grid;grid-template-columns:80px repeat(5,1fr);gap:6px}
.fc-row span{min-height:62px;background:var(--bg2)}
.fc-days span{min-height:0;background:none;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg3);padding-bottom:8px}
.fc-row .fc-wk{background:none;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);display:flex;align-items:center}
.fc-row .fc-s{background:var(--acc);color:#fff;display:flex;align-items:flex-end;padding:9px 10px}
.fc-row .fc-r{background:var(--ink);color:#fff;display:flex;align-items:flex-end;padding:9px 10px}
.fc-row b{font-size:12.5px;line-height:1.2;font-weight:600}
.fc-sup{display:grid;grid-template-columns:80px 1fr;gap:6px;margin:6px 0 14px}
.fc-sup i{font-style:normal;font-size:11.5px;color:var(--acc);border-top:2px dotted var(--acc-br);padding-top:5px}
.fc-between{margin:0;position:relative;overflow:hidden;background:var(--ink)}
.fc-between img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block;min-height:420px}
.fc-between figcaption{position:absolute;left:0;right:0;bottom:0;padding:60px 20px 18px;color:#fff;font-size:14px;line-height:1.45;
  background:linear-gradient(180deg,transparent,rgba(26,24,54,.92))}
.fc-note{font-size:13.5px !important;color:var(--fg3) !important;margin-top:14px !important}

/* operating plan */
.fc-plan{padding:120px 0 0 !important}
.fc-plangrid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px;align-items:center;max-width:1320px;margin:0 auto;padding:0 32px}
.fc-mock{margin:0 0 0 calc(-1 * max(32px,(100vw - 1320px)/2 + 32px));background:#fff;border:1px solid var(--line);border-left:0;
  padding:0 0 18px max(32px,(100vw - 1320px)/2 + 32px);box-shadow:0 40px 80px -40px rgba(26,24,54,.4)}
.fc-mbar{display:flex;justify-content:space-between;gap:16px;padding:18px 24px 16px 0;border-bottom:1px solid var(--line);margin-bottom:6px}
.fc-mbar b{font-family:'Bricolage Grotesque',sans-serif;font-size:20px;letter-spacing:-.02em;color:var(--ink)}
.fc-mbar span{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg3);align-self:center}
.fc-pr{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(0,1.3fr) 80px 110px;gap:14px;padding:14px 24px 14px 0;border-bottom:1px solid var(--line);font-size:14.5px;color:var(--ink);align-items:center}
.fc-ph{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg3);padding-top:8px;padding-bottom:8px}
.fc-pr em{font-style:normal;font-size:12px;font-weight:600;padding:4px 9px;display:inline-block}
.fc-pr .done{background:#E3F4EA;color:#1D6B41}
.fc-pr .prog{background:var(--acc-wash);color:var(--acc)}
.fc-pr .next{background:var(--bg2);color:var(--fg2)}
.fc-pr .risk{background:#FCEBDD;color:#A2470F}
.fc-mock figcaption{font-size:13px;color:var(--fg3);margin-top:14px}
.fc-link{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);text-decoration:none;border-bottom:1px solid var(--acc-br);padding-bottom:3px}

/* what it covers */
.fc-covers{padding:120px 0 0 !important}
.fc-cvgrid{display:grid;grid-template-columns:1fr 1fr;column-gap:72px;border-top:1px solid var(--ink);margin-top:10px}
.fc-cv{display:grid;grid-template-columns:76px 1fr;gap:12px;padding:30px 0;border-bottom:1px solid var(--line)}
.fc-n{font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:40px;letter-spacing:-.04em;line-height:1;color:var(--acc)}
.fc-cv h3{font-size:24px;margin:2px 0 10px}
.fc-cv p{font-size:16px;margin:0}

/* fit */
.fc-fit{padding:120px 0 0 !important}
.fc-fitgrid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:72px;background:var(--acc-wash);padding:64px 64px 56px}
.fc-fitgrid h2{margin:0}
.fc-fitp{color:var(--ink) !important;font-size:18px !important}
.fc-scale{margin:34px 0 30px}
.fc-band{margin-left:8.33%;background:linear-gradient(90deg,var(--acc-br),var(--acc));height:46px;display:flex;align-items:center;padding:0 16px}
.fc-band span{color:#fff;font-weight:600;font-size:14px}
.fc-ticks{display:grid;grid-template-columns:repeat(3,1fr) 0;border-top:2px solid var(--ink);margin-top:10px}
.fc-ticks span{font-family:var(--mono);font-size:11px;color:var(--fg2);padding-top:8px;border-left:1px solid var(--ink);padding-left:6px}
.fc-ticks span:last-child{border-left:0;padding-left:0;transform:translateX(-100%);white-space:nowrap;text-align:right;border-right:1px solid var(--ink);padding-right:6px}
.fc-other{font-size:15.5px !important;margin:0 !important}
.fc-other a{color:var(--acc)}

/* faq */
.fc-faq{padding:120px 0 0 !important}
.fc-faqgrid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:72px;align-items:start}
.fc-faqgrid h2{position:sticky;top:110px;margin:0}
.fc-qs{border-top:1px solid var(--ink)}
.fc-qs details{border-bottom:1px solid var(--line);padding:0}
.fc-qs summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:24px 0;
  font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:21px;letter-spacing:-.02em;color:var(--ink)}
.fc-qs summary::-webkit-details-marker{display:none}
.fc-qs summary::after{content:"+";font-family:var(--mono);font-weight:400;color:var(--acc)}
.fc-qs details[open] summary::after{content:"\2212"}
.fc-qs details p{margin:-8px 0 24px}

/* guides */
.fc-guides{padding:120px 0 120px !important}
.fc-glist{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.fc-g{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);transition:box-shadow .2s}
.fc-g:hover{box-shadow:0 30px 60px -36px rgba(26,24,54,.45)}
.fc-g img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.fc-g span{padding:20px 22px 22px;display:flex;flex-direction:column;gap:14px;flex:1}
.fc-g b{font-family:'Bricolage Grotesque',sans-serif;font-size:21px;letter-spacing:-.02em;line-height:1.15}
.fc-g i{font-style:normal;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);margin-top:auto}

@media (max-width:980px){
  .fc-grid,.fc-mhead,.fc-mgrid,.fc-plangrid,.fc-cvgrid,.fc-fitgrid,.fc-faqgrid{grid-template-columns:1fr;gap:28px}
  .fc-grid{padding-top:44px}
  .fc-copy{padding-bottom:0}
  .fc-photo{margin:0 -20px;min-height:460px}
  .fc-price{left:20px;bottom:20px;width:auto;right:20px;padding:18px 20px}
  .fc-price b{font-size:42px}
  .fc-terms{grid-template-columns:1fr}
  .fc-terms div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}
  .fc-terms div{padding:12px 0}
  .fc-month,.fc-plan,.fc-covers,.fc-fit,.fc-faq{padding-top:72px !important}
  .fc-guides{padding:72px 0 !important}
  .fc-cal{padding:14px 12px 4px;overflow-x:auto}
  .fc-row{grid-template-columns:48px repeat(5,minmax(46px,1fr));gap:4px}
  .fc-sup{grid-template-columns:48px 1fr;gap:4px}
  .fc-row span{min-height:48px}
  .fc-row .fc-s,.fc-row .fc-r{padding:6px}
  .fc-row b{font-size:9.5px;overflow-wrap:anywhere;hyphens:auto}
  .fc-between img{min-height:0;aspect-ratio:4/5}
  .fc-plangrid{padding:0 20px}
  .fc-mock{margin:0 -20px;padding-left:20px;overflow-x:auto}
  .fc-pr{grid-template-columns:200px 140px 70px 100px;min-width:540px}
  .fc-mbar{min-width:540px}
  .fc-fitgrid{padding:36px 24px}
  .fc-faqgrid h2{position:static}
  .fc-glist{grid-template-columns:1fr}
}
