/*
Theme Name: Zero Standard
Theme URI: https://zerostandardsf.com
Author: Zero Standard Consulting LLC
Description: Landing-page theme for Zero Standard Consulting LLC. Compliance
  facilitation and staffed stream sorting, San Francisco. Contact details, the
  facilitator-listing line and the primary call-to-action are editable under
  Appearance > Customize > Zero Standard.
Version: 2.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: zero-standard
*/

/* WordPress core classes the editor may output */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;}
.alignwide,.alignfull{max-width:100%;}
.skip-link{position:absolute;left:-9999px;}
.skip-link:focus{left:16px;top:16px;z-index:99;background:var(--acid);color:var(--slate);padding:12px 18px;}
a:focus-visible,button:focus-visible{outline:3px solid var(--acid);outline-offset:3px;}

  :root{
    --slate:#1C2E3D;
    --acid:#C8E000;
    --off:#F4F4F0;
    --ink:#4A4A40;
    --white:#FFFFFF;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  body{
    font-family:'Barlow',sans-serif;
    background:var(--off);
    color:var(--ink);
    -webkit-font-smoothing:antialiased;
  }
  .wrap{max-width:1040px;margin:0 auto;padding:0 56px;}
  .label{
    font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;
    letter-spacing:.20em;font-size:11.5px;
  }
  h1,h2,h3{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:-0.005em;line-height:.96;}

  /* ---------- NAV ---------- */
  nav{
    background:var(--slate);padding:0;
    border-bottom:1px solid rgba(255,255,255,.10);
  }
  .navin{display:flex;align-items:center;justify-content:space-between;height:104px;}
  .brandlock{display:flex;align-items:center;gap:16px;}
  .brandlock .wm{display:flex;flex-direction:column;line-height:1;}
  .brandlock .wm-1,.brandlock .wm-2{
    font-family:'Barlow Condensed',sans-serif;font-weight:900;text-transform:uppercase;
    font-size:24px;letter-spacing:.03em;
  }
  .brandlock .wm-1{color:var(--acid);}
  .brandlock .wm-2{color:var(--off);}
  .brandlock .wm-3{
    font-family:'Barlow Condensed',sans-serif;font-weight:500;font-size:9.5px;letter-spacing:.36em;
    text-transform:uppercase;margin-top:5px;opacity:.62;color:var(--off);
  }
  .navlinks{display:flex;gap:30px;}
  .navlinks a{color:rgba(255,255,255,.66);text-decoration:none;}
  .navtel{
    font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:17px;letter-spacing:.05em;
    color:var(--slate);background:var(--acid);padding:10px 18px 8px;text-decoration:none;
  }

  /* ---------- HERO ---------- */
  header{background:var(--slate);color:#fff;padding:74px 0 0;}
  .eyebrow{color:var(--acid);margin-bottom:26px;}
  h1{font-size:70px;color:#fff;}
  h1 em{font-style:normal;color:var(--acid);}
  .lede{
    font-size:19.5px;line-height:1.62;color:rgba(255,255,255,.80);
    max-width:60ch;margin-top:30px;font-weight:400;
  }
  .herocols{display:flex;gap:56px;align-items:flex-start;}
  .heroleft{flex:1.62;}
  .penalty{
    flex:1;border:1px solid rgba(255,255,255,.20);padding:26px 26px 22px;margin-top:6px;
  }
  .penalty .pl{color:var(--acid);}
  .prow{margin-top:24px;}
  .pn{
    font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:52px;color:#fff;line-height:.9;
    letter-spacing:.01em;
  }
  .pn.hot{color:var(--acid);}
  .pn span{font-size:22px;font-weight:600;opacity:.55;margin-left:4px;letter-spacing:.04em;}
  .pd{
    font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;
    letter-spacing:.15em;font-size:11px;color:rgba(255,255,255,.55);margin-top:9px;
  }
  .pfoot{
    margin-top:26px;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);
    font-size:13px;line-height:1.55;color:rgba(255,255,255,.45);
  }
  .ctarow{display:flex;align-items:stretch;gap:14px;margin-top:40px;}
  .btn-a{
    background:var(--acid);color:var(--slate);padding:19px 30px 15px;text-decoration:none;
    font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;
    font-size:19px;letter-spacing:.06em;display:block;white-space:nowrap;
  }
  .btn-b{
    border:1.5px solid rgba(255,255,255,.34);color:#fff;padding:19px 30px 15px;text-decoration:none;
    font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;
    font-size:19px;letter-spacing:.06em;display:block;white-space:nowrap;
  }
  .listed{
    margin-top:56px;border-top:1px solid rgba(255,255,255,.14);padding:20px 0 0;
    display:flex;gap:10px;align-items:baseline;
  }
  .listed .label{color:rgba(255,255,255,.40);}
  .listed .v{
    font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;
    letter-spacing:.13em;font-size:12.5px;color:rgba(255,255,255,.80);
  }
  .rule-strip{
    margin-top:46px;background:var(--acid);
  }
  .rule-strip .wrap{padding-top:15px;padding-bottom:11px;}
  .rule-strip p{
    font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;
    font-size:23px;letter-spacing:.22em;color:var(--slate);
  }

  /* ---------- SECTION FRAME ---------- */
  section{padding:82px 0;}
  .sechead{display:flex;gap:20px;align-items:baseline;margin-bottom:8px;}
  .secnum{
    font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;
    color:var(--slate);opacity:.38;
  }
  h2{font-size:46px;color:var(--slate);}
  .secsub{font-size:17.5px;line-height:1.6;max-width:66ch;margin-top:18px;color:var(--ink);}

  /* ---------- FILM ---------- */
  .film{background:var(--white);padding:72px 0 82px;}
  .filmhead{display:flex;justify-content:space-between;align-items:baseline;gap:20px;}
  .filmhead .label{color:var(--slate);opacity:.55;white-space:nowrap;}
  .filmframe{margin:28px 0 0;background:var(--slate);border-bottom:4px solid var(--acid);}
  .filmframe video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:var(--slate);}
  @media (max-width:860px){.film{padding:44px 0 52px;}.filmhead{flex-direction:column;gap:8px;}}

  /* ---------- CLOCK ---------- */
  .clock{background:var(--slate);color:#fff;}
  .clock h2{color:#fff;}
  .clock .secnum{color:var(--acid);opacity:1;}
  .clock .secsub{color:rgba(255,255,255,.72);}
  table{width:100%;border-collapse:collapse;margin-top:42px;}
  th{
    font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.2em;
    font-size:10.5px;color:rgba(255,255,255,.42);text-align:left;
    padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.22);
  }
  th.r{text-align:right;}
  td{
    padding:16px 0 13px;border-bottom:1px solid rgba(255,255,255,.10);
    font-size:16.5px;color:rgba(255,255,255,.86);vertical-align:baseline;
  }
  td.r{
    text-align:right;font-family:'Barlow Condensed',sans-serif;font-weight:700;
    font-size:21px;letter-spacing:.02em;color:#fff;white-space:nowrap;
  }
  tr.hot td.r{color:var(--acid);}
  td .note{display:block;font-size:13.5px;color:rgba(255,255,255,.45);margin-top:3px;}
  .pullquote{
    margin-top:44px;border-left:3px solid var(--acid);padding:4px 0 4px 26px;
    font-size:20px;line-height:1.56;color:#fff;max-width:68ch;font-weight:500;
  }
  .pullquote .attr{
    display:block;margin-top:12px;font-family:'Barlow Condensed',sans-serif;font-weight:600;
    text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:rgba(255,255,255,.42);
  }

  /* ---------- SERVICES ---------- */
  .grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(28,46,61,.16);
        margin-top:44px;border:1px solid rgba(28,46,61,.16);}
  .card{background:var(--white);padding:34px 32px 30px;}
  .card .label{color:var(--slate);opacity:.44;}
  .card h3{font-size:27px;color:var(--slate);margin-top:13px;line-height:1.04;}
  .card p{font-size:15.5px;line-height:1.58;margin-top:13px;color:var(--ink);}
  .price{
    margin-top:22px;padding-top:15px;border-top:1px solid rgba(28,46,61,.14);
    display:flex;justify-content:space-between;align-items:baseline;
  }
  .price .n{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:26px;color:var(--slate);letter-spacing:.01em;}
  .price .d{font-family:'Barlow Condensed',sans-serif;font-weight:600;text-transform:uppercase;
            letter-spacing:.16em;font-size:11px;color:var(--ink);opacity:.6;}
  .ratenote{
    margin-top:26px;font-size:14.5px;color:var(--ink);opacity:.72;
  }

  /* ---------- CREDENTIALS ---------- */
  .creds{background:var(--white);}
  .credgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:44px;}
  .cred{border-top:2px solid var(--slate);padding-top:16px;}
  .cred .big{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:44px;color:var(--slate);line-height:.9;}
  .cred .t{font-size:15px;line-height:1.45;margin-top:11px;color:var(--ink);}
  .offset{margin-top:44px;border-left:3px solid var(--slate);padding:4px 0 4px 26px;font-size:20px;line-height:1.56;color:var(--slate);max-width:64ch;font-weight:500;}
  .offset strong{font-weight:700;}
  .argument{
    margin-top:52px;display:grid;grid-template-columns:1fr 1fr;gap:44px;
  }
  .argument p{font-size:17px;line-height:1.66;}
  .argument p strong{color:var(--slate);font-weight:600;}

  /* ---------- CTA ---------- */
  .cta{background:var(--acid);}
  .cta h2{font-size:46px;color:var(--slate);max-width:19ch;}
  .cta p{font-size:18.5px;line-height:1.6;color:var(--slate);max-width:58ch;margin-top:22px;opacity:.88;}
  .ctacols{display:flex;gap:60px;align-items:flex-start;}
  .ctacols > div:first-child{flex:1.5;}
  .steps{flex:1;border-left:2px solid rgba(28,46,61,.28);padding-left:30px;margin-top:6px;}
  .steps .label{color:var(--slate);opacity:.62;}
  .step{display:flex;gap:16px;margin-top:22px;align-items:baseline;}
  .step .sn{
    font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:17px;color:var(--slate);
    opacity:.45;letter-spacing:.05em;
  }
  .step p{font-size:16px;line-height:1.5;margin-top:0;color:var(--slate);opacity:.9;}
  .mailnote{display:none;margin-top:14px;font-size:14.5px;color:rgba(255,255,255,.72);}
  .mailnote.show{display:block;}
  .mailnote a{color:var(--acid);text-decoration:none;border-bottom:1px solid rgba(200,224,0,.4);}
  .contactrow a.v{display:block;text-decoration:none;}
  .contactrow a.v:hover{text-decoration:underline;text-underline-offset:4px;}
  footer a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.22);}
  footer a:hover{color:#fff;border-bottom-color:var(--acid);}
  .samples{display:flex;gap:48px;align-items:center;margin-top:52px;padding-top:40px;border-top:2px solid rgba(28,46,61,.28);}
  .samples-img{flex:1.35;margin:0;min-width:0;}
  .samples-img img{width:100%;height:auto;display:block;}
  .samples-txt{flex:1;min-width:0;}
  .samples-txt .label{color:var(--slate);opacity:.62;}
  .samples-txt h3{font-size:32px;color:var(--slate);margin-top:12px;max-width:16ch;}
  .cta .samples-txt p{font-size:17px;margin-top:16px;}
  .cta .samples-txt p.fine{font-size:13.5px;opacity:.7;margin-top:12px;}
  @media (max-width:860px){.samples{flex-direction:column;align-items:stretch;gap:24px;}.samples-txt h3{font-size:27px;}}
  .contactrow{display:flex;gap:56px;margin-top:44px;padding-top:30px;border-top:2px solid rgba(28,46,61,.28);}
  .contactrow .label{color:var(--slate);opacity:.55;}
  .contactrow .v{
    font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:33px;color:var(--slate);
    margin-top:8px;line-height:1;letter-spacing:.01em;
  }

  /* ---------- FOOTER ---------- */
  footer{background:var(--slate);color:rgba(255,255,255,.58);padding:52px 0 46px;}
  .footrow{display:flex;justify-content:space-between;align-items:flex-start;gap:50px;}
  .footrow .label{color:rgba(255,255,255,.34);}
  footer p{font-size:14px;line-height:1.62;margin-top:10px;}
  .footlock{display:flex;align-items:center;gap:16px;margin-bottom:42px;}
  .footlock .wm{display:flex;flex-direction:column;line-height:1;}
  .footlock .wm-1,.footlock .wm-2{font-family:'Barlow Condensed',sans-serif;font-weight:900;
    text-transform:uppercase;font-size:24px;letter-spacing:.03em;}
  .footlock .wm-1{color:var(--acid);}
  .footlock .wm-2{color:var(--off);}
  .footlock .wm-3{font-family:'Barlow Condensed',sans-serif;font-weight:500;font-size:10.5px;
    letter-spacing:.36em;text-transform:uppercase;margin-top:6px;opacity:.62;color:var(--off);}
  .disclaim{
    margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);
    font-size:12.5px;line-height:1.6;color:rgba(255,255,255,.40);max-width:88ch;
  }

  /* ---------- HERO FLOW ---------- */
  .flow{list-style:none;counter-reset:f;margin-top:22px;}
  .flow li{
    counter-increment:f;position:relative;padding:0 0 20px 34px;
    border-left:1px solid rgba(255,255,255,.22);margin-left:7px;
  }
  .flow li:last-child{border-left:1px solid transparent;padding-bottom:0;}
  .flow li::before{
    content:counter(f,decimal-leading-zero);position:absolute;left:-8px;top:-2px;
    width:16px;height:16px;border-radius:50%;background:var(--slate);
    box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.34);
    font-family:'Barlow Condensed',sans-serif;font-size:0;
  }
  .flow li.live::before{box-shadow:inset 0 0 0 5px var(--acid);}
  .flow li span{
    font-size:15px;line-height:1.5;color:rgba(255,255,255,.62);display:block;margin-top:-3px;
  }
  .flow li.live span{color:#fff;font-weight:500;}
  .arith{grid-template-columns:repeat(3,1fr)!important;}
  .arith .big{font-size:34px;}
  .secsub + .secsub{margin-top:16px;}
  .secsub em{font-style:italic;color:var(--slate);}
  .clock .secsub em{color:#fff;}

  /* ---------- MOBILE ---------- */
  @media (max-width: 860px){
    .wrap{padding:0 24px;}
    .navin{height:auto;flex-wrap:wrap;gap:14px;padding:18px 0;}
    .navlinks{display:none;}
    header{padding:44px 0 0;}
    h1{font-size:44px;}
    .herocols{flex-direction:column;gap:34px;}
    .lede{font-size:17.5px;}
    .ctarow{flex-direction:column;gap:10px;}
    .btn-a,.btn-b{text-align:center;font-size:18px;}
    .rule-strip p{font-size:17px;letter-spacing:.16em;}
    section{padding:52px 0;}
    h2{font-size:33px;}
    .cta h2{font-size:33px;}
    .sechead{flex-direction:column;gap:6px;}
    table{display:block;}
    tr{display:flex;flex-direction:column;padding:14px 0;
       border-bottom:1px solid rgba(255,255,255,.10);}
    th{display:none;}
    td{border:none;padding:0;}
    td.r{text-align:left;margin-top:6px;font-size:24px;}
    .grid{grid-template-columns:1fr;}
    .credgrid{grid-template-columns:1fr 1fr;gap:24px;}
    .arith{grid-template-columns:1fr!important;}
    .argument{grid-template-columns:1fr;gap:20px;}
    .ctacols{flex-direction:column;gap:34px;}
    .steps{border-left:none;border-top:2px solid rgba(28,46,61,.28);
           padding-left:0;padding-top:22px;}
    .contactrow{flex-direction:column;gap:22px;}
    .contactrow .v{font-size:27px;}
    .footrow{flex-direction:column;gap:28px;}
  }
  .teamhead{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--slate);opacity:.6;margin-top:40px;}
  .teamhead + .credgrid, .teamhead + .team{margin-top:14px;}
  .team{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
  .member{border-top:2px solid var(--slate);padding-top:16px;}
  .member h4{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:30px;color:var(--slate);line-height:1;}
  .member p{font-size:15px;line-height:1.45;margin-top:10px;color:var(--ink);}
  .team-sp{margin-top:52px;}
  @media (max-width:900px){.team{grid-template-columns:1fr;}}

/* ---------- HEADER MENU + INNER PAGES (1.7) ---------- */
.homelink{display:block;text-decoration:none;color:inherit;}
.navlinks a:hover{color:#fff;}
.navlinks a[aria-current="page"]{color:var(--acid);}

.navin{column-gap:32px;}

/* Below 960px the five links no longer fit beside the logo and phone number,
   so they move to their own row. Before 1.7 they were simply hidden on phones,
   leaving no way to reach the inner pages. */
@media (max-width:960px){
  .navin{height:auto;flex-wrap:wrap;row-gap:14px;padding-top:18px;padding-bottom:18px;}
  .navlinks{
    display:flex;order:3;width:100%;flex-wrap:wrap;gap:12px 22px;
    padding-top:14px;border-top:1px solid rgba(255,255,255,.10);
  }
  .navlinks a{padding:4px 0;}
}
@media (max-width:860px){
  .navin{padding-left:24px;padding-right:24px;}  /* .navin's padding was wiping the side gutter on phones */
}

/* Pasted pages (<div class="zs-page">) reuse a few class names that the
   homepage also styles. These lines stop the homepage look leaking in. */
.zs-pagebody{background:var(--slate);}
.zs-pagebody > p:empty{display:none;}
.zs-page .cta,.zs-page .creds,.zs-page .clock{background:transparent;}
.zs-page .cta h2{max-width:none;}
.zs-page .cta p{max-width:none;opacity:1;font-size:inherit;line-height:inherit;}
.zs-page .price{margin-top:0;padding-top:0;border-top:0;display:block;}
.zs-page .steps{flex:none;border:0;padding-left:0;padding-top:0;}
.zs-page .step{display:block;gap:0;margin-top:0;}
.zs-page ul{list-style:disc;}
/* The pasted CSS gives the hero and closing blocks top/bottom padding only,
   which removes their side gutter; restore it. */
.zs-page .wrap.hero,.zs-page .wrap.cta{padding-left:24px;padding-right:24px;}
@media (max-width:520px){.zs-page .wrap.hero,.zs-page .wrap.cta{padding-left:16px;padding-right:16px;}}

/* Pages written in the ordinary WordPress editor */
.zs-pagebody:has(.zs-plain){background:var(--off);}
.zs-plain{padding:72px 0 88px;}
.zs-plain h1{font-size:56px;color:var(--slate);margin-bottom:28px;}
.zs-plain-body{max-width:68ch;font-size:17.5px;line-height:1.65;color:var(--ink);}
.zs-plain-body > * + *{margin-top:1em;}
.zs-plain-body h2{font-size:34px;margin-top:1.4em;}
.zs-plain-body h3{font-size:24px;color:var(--slate);margin-top:1.2em;}
.zs-plain-body ul,.zs-plain-body ol{padding-left:1.4em;}
.zs-plain-body a{color:var(--slate);}
@media (max-width:860px){.zs-plain{padding:44px 0 60px;}.zs-plain h1{font-size:40px;}}

/* Online walk-through booking links (1.8) */
.booknote{margin-top:16px;font-size:15.5px;color:rgba(255,255,255,.78);}
.booknote a{color:var(--acid);text-decoration:none;border-bottom:1px solid rgba(200,224,0,.45);}
.booknote a:hover{border-bottom-color:var(--acid);}
.btn-book{
  display:inline-block;margin-top:28px;background:var(--slate);color:var(--off);text-decoration:none;
  padding:19px 30px 15px;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;
  font-size:19px;letter-spacing:.06em;white-space:nowrap;transition:background .15s;
}
.btn-book:hover{background:#0F1D29;}
.btn-book:focus-visible{outline:3px solid var(--slate);outline-offset:3px;}
.cta p.booksub{font-size:14.5px;margin-top:12px;opacity:.75;}
@media (max-width:860px){
  .btn-book{display:block;text-align:center;font-size:18px;white-space:normal;}
}


/* ---------- 2.0 ---------- */
.heronote{margin-top:18px;font-size:16px;color:rgba(255,255,255,.86);}
.heronote strong{color:#fff;font-weight:600;}
.flow li span strong{color:#fff;font-weight:600;}
.flow li.live span strong{color:var(--acid);}
.latenote{
  margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);
  font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.78);
}
.latenote strong{color:var(--acid);font-weight:600;}
.latenote a{color:#fff;border-bottom:1px solid var(--acid);text-decoration:none;}
.stats{margin-top:36px;}
.stats .big{font-size:58px;}
.statsrc{font-size:12.5px;color:var(--ink);opacity:.62;margin-top:14px;}
.stats + .statsrc + .secsub{margin-top:30px;}
.ratenote a{color:var(--slate);font-weight:600;white-space:nowrap;}
@media (max-width:860px){ .stats .big{font-size:46px;} }
/* Header: keep every link and the phone number on one line (2.0) */
.navlinks{gap:24px;}
.navlinks a{white-space:nowrap;}
.navtel{white-space:nowrap;}
@media (max-width:1180px){
  .navin{height:auto;flex-wrap:wrap;row-gap:14px;padding-top:18px;padding-bottom:18px;}
  .navlinks{
    display:flex;order:3;width:100%;flex-wrap:wrap;gap:12px 22px;
    padding-top:14px;border-top:1px solid rgba(255,255,255,.10);
  }
  .navlinks a{padding:4px 0;}
}
.brandlock .wm-3{white-space:nowrap;}
