/* Cushwake Techbeat - wp-avada-corporate-2014 brochure shell */
:root{
  --canvas:#f2f0ec;
  --surface:#ffffff;
  --ink:#22262b;
  --ink-soft:#4c5359;
  --clay:#a34a2a;
  --rule:#d5d0c8;
  --dark:#22262b;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;background:var(--canvas);color:var(--ink);
  font:17px/1.62 Georgia,"Iowan Old Style","Times New Roman",serif;
}
img,svg{max-width:100%;}
a{color:var(--clay);}
a:focus-visible,button:focus-visible{outline:2px solid var(--clay);outline-offset:2px;}
.inner{max-width:1240px;margin:0 auto;padding:0 24px;}

/* ---- module 1: utility strip ---- */
.utility{background:var(--dark);color:#e7e3dd;}
.utility .inner{
  display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;
  justify-content:space-between;padding-top:9px;padding-bottom:9px;
}
.utility p{margin:0;font:12px/1.5 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;}
.utility ul{list-style:none;display:flex;flex-wrap:wrap;gap:18px;margin:0;padding:0;}
.utility a{color:#f4d9cd;font:12px/1.5 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;text-decoration:none;border-bottom:1px solid rgba(244,217,205,.45);}
.utility a:hover{color:#fff;border-bottom-color:#fff;}

/* ---- module 2: logo / menu ---- */
.masthead{background:var(--surface);border-bottom:1px solid var(--rule);}
.masthead .inner{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:flex-end;
  justify-content:space-between;padding-top:18px;padding-bottom:0;}
.wordmark{display:block;text-decoration:none;color:var(--ink);padding-bottom:18px;}
.wordmark strong{display:block;font:30px/1.1 "Trebuchet MS","Segoe UI",Tahoma,sans-serif;
  letter-spacing:.02em;}
.wordmark span{display:block;margin-top:5px;font:12px/1.4 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);}
.menu{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;}
.menu a{
  display:block;padding:12px 14px 15px;text-decoration:none;color:var(--ink);
  font:13px/1.2 Arial,"Helvetica Neue",sans-serif;text-transform:uppercase;
  letter-spacing:.06em;border-bottom:3px solid transparent;
}
.menu a:hover{background:#f6f4f1;}
.menu a[aria-current="page"]{border-bottom-color:var(--clay);color:var(--clay);}

/* ---- band scaffolding + motif ---- */
.band{padding:44px 0;}
.band.alt{background:var(--surface);}
.band-head{border-top:2px solid var(--ink);padding-top:16px;margin:0 0 22px;position:relative;}
.band-head::before{content:"";position:absolute;top:-2px;left:0;width:24px;height:2px;
  background:var(--clay);box-shadow:0 6px 0 -4px var(--clay),0 11px 0 -4px var(--clay);}
.band-head h2{margin:0;font:22px/1.25 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;
  letter-spacing:.01em;}
.band-head p{margin:6px 0 0;font:12px/1.5 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);}
.panel{background:var(--surface);border:1px solid var(--rule);border-radius:2px;padding:22px;}

/* ---- module 3: banner ---- */
.banner{background:var(--surface);border-bottom:1px solid var(--rule);}
.banner figure{margin:0;position:relative;}
.banner img{display:block;width:100%;height:420px;object-fit:cover;background:#e9e5df;}
.bannercap{background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--clay);
  padding:20px 22px;}
.bannercap h1{margin:0 0 8px;font:28px/1.2 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;}
.bannercap p{margin:0;font-size:15px;color:var(--ink-soft);}

/* ---- module 4: overview ---- */
.overview{display:grid;gap:32px;grid-template-columns:1fr;}
.overview .lede{font-size:19px;}
.factpanel{margin:0;border-top:1px solid var(--rule);}
.factpanel div{display:grid;grid-template-columns:1fr;gap:2px;padding:12px 0;border-bottom:1px solid var(--rule);}
.factpanel dt{font:12px/1.4 Arial,"Helvetica Neue",sans-serif;text-transform:uppercase;
  letter-spacing:.08em;color:var(--clay);}
.factpanel dd{margin:0;font-size:16px;}

/* ---- module 5: alternating rows ---- */
.rowpair{display:grid;gap:26px;grid-template-columns:1fr;align-items:center;
  padding:28px 0;border-bottom:1px solid var(--rule);}
.rowpair:last-child{border-bottom:0;}
.rowpair h3{margin:0 0 10px;font:20px/1.25 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;}
.rowpair p{margin:0 0 12px;}
.rowpair figure{margin:0;}
.rowpair img{display:block;width:100%;height:auto;max-height:320px;border:1px solid var(--rule);background:var(--surface);}
.rowpair figcaption{margin-top:8px;font:12px/1.5 Arial,"Helvetica Neue",sans-serif;color:var(--ink-soft);}
.more{font:12px/1.4 Arial,"Helvetica Neue",sans-serif;text-transform:uppercase;letter-spacing:.08em;}

/* ---- module 6: evidence / walkthrough ---- */
.evidence{display:grid;gap:32px;grid-template-columns:1fr;}
.stages{margin:0;padding:0 0 0 0;list-style:none;counter-reset:stage;}
.stages li{counter-increment:stage;border-bottom:1px solid var(--rule);padding:11px 0 11px 46px;position:relative;}
.stages li::before{content:counter(stage,decimal-leading-zero);position:absolute;left:0;top:12px;
  font:12px/1.4 Arial,"Helvetica Neue",sans-serif;letter-spacing:.08em;color:var(--clay);}
.stages b{font-weight:600;}

/* ---- module 7: reading order band ---- */
.reading{background:var(--clay);color:#fff;}
.reading .band-head{border-top-color:#fff;}
.reading .band-head::before{background:#f4d9cd;box-shadow:0 6px 0 -4px #f4d9cd,0 11px 0 -4px #f4d9cd;}
.reading .band-head p{color:#f6e2d9;}
.reading a{color:#fff;}
.readcols{display:grid;gap:26px;grid-template-columns:1fr;}
.readcols h3{margin:0 0 8px;font:12px/1.4 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;color:#f6e2d9;}
.readcols ul{margin:0;padding-left:18px;}
.readcols li{margin-bottom:6px;}

/* ---- module 8: footer ---- */
.sitefoot{background:var(--dark);color:#cfd3d6;padding:40px 0 0;}
.footcols{display:grid;gap:26px;grid-template-columns:1fr;}
.footcols h2{margin:0 0 10px;font:12px/1.4 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;color:#f4d9cd;}
.footcols ul{list-style:none;margin:0;padding:0;}
.footcols li{margin-bottom:7px;font-size:15px;}
.footcols a{color:#e7e3dd;text-decoration:none;border-bottom:1px solid rgba(231,227,221,.3);}
.footcols a:hover{color:#fff;}
.legal{margin-top:32px;border-top:1px solid rgba(231,227,221,.22);padding:14px 0 20px;
  font:12px/1.5 Arial,"Helvetica Neue",sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#9aa1a6;}

/* ---- inner pages ---- */
.titleband{background:var(--surface);border-bottom:1px solid var(--rule);padding:34px 0 26px;}
.titleband h1{margin:0;font:34px/1.2 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;
  max-width:20ch;}
.titleband .kicker{margin:0 0 10px;font:12px/1.4 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;color:var(--clay);}
.titleband .stand{margin:12px 0 0;font-size:17px;color:var(--ink-soft);max-width:66ch;}
.pagegrid{display:grid;gap:36px;grid-template-columns:1fr;padding:36px 0 8px;}
.prose{max-width:68ch;}
.prose h2{margin:34px 0 10px;padding-top:12px;border-top:1px solid var(--rule);
  font:22px/1.3 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;}
.prose h3{margin:24px 0 8px;font:18px/1.35 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;}
.prose p{margin:0 0 16px;}
.prose ul,.prose ol{margin:0 0 18px;padding-left:22px;}
.prose li{margin-bottom:8px;}
.prose figure{margin:22px 0;}
.prose figure img{display:block;width:100%;height:auto;border:1px solid var(--rule);background:var(--surface);}
.prose figcaption{margin-top:8px;font:12px/1.5 Arial,"Helvetica Neue",sans-serif;color:var(--ink-soft);}
.prose table{border-collapse:collapse;width:100%;margin:0 0 20px;font-size:15px;}
.prose th,.prose td{border-bottom:1px solid var(--rule);padding:9px 10px;text-align:left;vertical-align:top;}
.prose th{font:12px/1.4 Arial,"Helvetica Neue",sans-serif;text-transform:uppercase;
  letter-spacing:.08em;color:var(--ink-soft);}
.tablewrap{overflow-x:auto;}
.prose caption{caption-side:bottom;text-align:left;padding-top:8px;
  font:12px/1.5 Arial,"Helvetica Neue",sans-serif;color:var(--ink-soft);}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.note{background:var(--surface);border:1px solid var(--rule);border-left:4px solid var(--clay);
  padding:16px 18px;margin:22px 0;font-size:16px;}
.note p{margin:0;}
.factrail h2{margin:0 0 12px;font:12px/1.4 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;color:var(--clay);
  border-top:2px solid var(--ink);padding-top:12px;}
.factrail dl{margin:0;}
.factrail div{padding:10px 0;border-bottom:1px solid var(--rule);}
.factrail dt{font:12px/1.4 Arial,"Helvetica Neue",sans-serif;text-transform:uppercase;
  letter-spacing:.08em;color:var(--ink-soft);}
.factrail dd{margin:3px 0 0;font-size:15px;}
.related{border-top:2px solid var(--ink);padding:16px 0 44px;}
.related h2{margin:0 0 10px;font:12px/1.4 Arial,"Helvetica Neue",sans-serif;
  text-transform:uppercase;letter-spacing:.08em;color:var(--clay);}
.related ul{list-style:none;margin:0;padding:0;max-width:68ch;}
.related li{border-bottom:1px solid var(--rule);padding:9px 0;}

/* ---- glossary ---- */
.jumpstrip{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 26px;padding:0;list-style:none;}
.jumpstrip a{display:block;min-width:32px;text-align:center;padding:6px 8px;text-decoration:none;
  border:1px solid var(--rule);background:var(--surface);color:var(--ink);
  font:12px/1.2 Arial,"Helvetica Neue",sans-serif;letter-spacing:.06em;}
.jumpstrip a:hover{border-color:var(--clay);color:var(--clay);}
.gletter{margin:30px 0 8px;padding-top:12px;border-top:2px solid var(--ink);
  font:18px/1.2 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;}
.terms{margin:0;}
.terms div{padding:12px 0;border-bottom:1px solid var(--rule);}
.terms dt{font:16px/1.4 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;}
.terms dd{margin:4px 0 0;font-size:16px;}

/* ---- 404 ---- */
.simple{padding:60px 0 80px;max-width:60ch;}
.simple h1{font:34px/1.2 "Segoe UI Semibold","Helvetica Neue",Arial,sans-serif;margin:0 0 14px;}

/* ---- breakpoints ---- */
@media (min-width:641px){
  .rowpair{grid-template-columns:1fr 1fr;}
  .rowpair:nth-child(even) figure{order:-1;}
  .readcols{grid-template-columns:repeat(3,1fr);}
  .footcols{grid-template-columns:repeat(2,1fr);}
  .factpanel div{grid-template-columns:180px 1fr;gap:14px;align-items:baseline;}
}
@media (min-width:781px){
  .bannercap{position:absolute;left:24px;bottom:24px;max-width:560px;}
  .bannercap h1{font-size:44px;}
  .banner figure{padding-bottom:0;}
}
@media (min-width:1041px){
  .overview{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);}
  .evidence{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);}
  .footcols{grid-template-columns:repeat(4,1fr);}
  .pagegrid{grid-template-columns:minmax(0,1fr) 260px;}
  .titleband h1{font-size:34px;}
}
@media (max-width:780px){
  .utility .inner{justify-content:center;text-align:center;padding-left:12px;padding-right:12px;}
  .utility ul{width:100%;justify-content:center;}
  .banner img{height:250px;}
  .bannercap h1{font-size:26px;}
  .masthead .inner{align-items:flex-start;}
}
@media (max-width:420px){
  .footcols{grid-template-columns:1fr;}
  .menu a{padding:10px 10px 13px;}
}
