:root{
  --portal-teal:#00aa88;
  --portal-teal-dark:#007f69;
  --portal-teal-soft:#e4f4ef;
  --portal-ink:#132923;
  --portal-body:#52625d;
  --portal-muted:#84918d;
  --portal-taupe:#b39a83;
  --portal-canvas:#f5f7f6;
  --portal-paper:#ffffff;
  --portal-line:#e1e7e4;
  --portal-line-strong:#d5ddda;
  --portal-danger:#c43b32;
  --portal-amber:#c98216;
  --portal-side-width:276px;
  --portal-top-height:72px;
  --portal-radius:12px;
  --portal-shadow:0 1px 2px rgba(19,41,35,.03),0 10px 28px rgba(19,41,35,.055);
}

.portal-shell{
  background:var(--portal-canvas)!important;
  color:var(--portal-body);
}

.portal-shell .bg-icon{
  width:20px;
  height:20px;
  display:block;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.portal-shell .bg-icon.sm{width:17px;height:17px}
.portal-shell .bg-icon.lg{width:22px;height:22px}

/* Product shell */
.portal-shell .portal-side{
  position:fixed;
  inset:0 auto 0 0;
  width:var(--portal-side-width);
  z-index:955;
  background:var(--portal-paper);
  border-right:1px solid var(--portal-line);
}
.portal-shell .portal-side-head{
  height:var(--portal-top-height);
  display:flex;
  align-items:center;
  padding:0 22px;
  border-bottom:1px solid var(--portal-line);
}
.portal-shell .portal-side-head a{display:block}
.portal-shell .portal-side-head .portal-logo{
  display:block;
  width:187px;
  height:auto;
}
.portal-shell .portal-side-head .portal-icon-logo{display:none}
.portal-shell .portal-side-scroll{
  position:absolute;
  inset:var(--portal-top-height) 0 0;
  overflow-y:auto;
  padding:18px 0 28px;
  scrollbar-width:thin;
  scrollbar-color:#d7dfdc transparent;
}
.portal-shell .portal-side-nav a{
  position:relative;
  min-height:46px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:10px 20px;
  color:#586963;
  font-size:12.5px;
  font-weight:500;
  line-height:1.25;
  text-decoration:none;
  cursor:pointer;
  transition:background-color .14s,color .14s;
}
.portal-shell .portal-side-nav a:hover{
  color:var(--portal-ink);
  background:#f4f7f6;
}
.portal-shell .portal-side-nav a.on{
  color:var(--portal-teal-dark);
  background:var(--portal-teal-soft);
  font-weight:650;
}
.portal-shell .portal-side-nav a.on::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:var(--portal-teal);
}
.portal-shell .portal-side-nav a .bg-icon{color:#65756f}
.portal-shell .portal-side-nav a.on .bg-icon{color:var(--portal-teal)}
.portal-shell .portal-nav-group{
  padding:25px 21px 8px;
  color:#8c9995;
  font-size:9.5px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.portal-shell .portal-nav-sub{
  margin-left:24px;
  border-left:1px solid var(--portal-line-strong);
}
.portal-shell .portal-nav-sub a{
  min-height:41px;
  padding:8px 14px 8px 16px;
  gap:11px;
  font-size:11.5px;
}
.portal-shell .portal-nav-sub a.on{
  margin-left:-1px;
  padding-left:16px;
  border-left:2px solid var(--portal-teal);
}
.portal-shell .portal-nav-sub a.on::before{display:none}
.portal-shell .portal-nav-badge{
  min-width:22px;
  height:22px;
  margin-left:auto;
  padding:2px 6px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#edf1ef;
  color:#72817c;
  font-size:9px;
  font-weight:700;
}
.portal-shell .portal-side-nav a.on .portal-nav-badge{
  background:#fff;
  color:var(--portal-teal-dark);
}
.portal-shell .portal-admin-nav[hidden]{display:none!important}

/* Collapsible sidebar sections */
.portal-shell .portal-nav-toggle{
  font-family:inherit;
  cursor:pointer;
}
.portal-shell .portal-nav-group.group-toggle{
  width:100%;
  border:0;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
}
.portal-shell .portal-nav-group.group-toggle:hover{color:var(--portal-ink)}
.portal-shell .portal-nav-caret{
  width:7px;
  height:7px;
  flex:0 0 auto;
  margin:-3px 2px 0 10px;
  border-right:1.6px solid currentColor;
  border-bottom:1.6px solid currentColor;
  transform:rotate(45deg);
  transition:transform .18s ease;
}
.portal-shell .portal-nav-toggle[aria-expanded="true"] .portal-nav-caret{
  margin-top:3px;
  transform:rotate(225deg);
}
.portal-shell .portal-nav-parent{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 38px;
}
.portal-shell .portal-nav-parent>a{
  min-width:0;
  padding-right:8px;
}
.portal-shell .portal-nav-parent>.section-toggle{
  border:0;
  border-left:1px solid transparent;
  background:transparent;
  color:#71807b;
  display:grid;
  place-items:center;
}
.portal-shell .portal-nav-parent:hover>.section-toggle{
  color:var(--portal-ink);
  background:#f4f7f6;
}
.portal-shell .portal-nav-parent>a.on + .section-toggle{
  color:var(--portal-teal-dark);
  background:var(--portal-teal-soft);
}
.portal-shell .portal-nav-collapse{
  max-height:420px;
  opacity:1;
  overflow:hidden;
  transition:max-height .22s ease,opacity .16s ease;
}
.portal-shell .portal-nav-collapse.collapsed{
  max-height:0;
  opacity:0;
  pointer-events:none;
}

.portal-shell .portal-top{
  position:sticky;
  top:0;
  z-index:950;
  height:var(--portal-top-height);
  margin-left:var(--portal-side-width);
  background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--portal-line);
  backdrop-filter:blur(10px);
}
.portal-shell .portal-top-in{
  height:100%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  padding:0 26px;
}
.portal-shell .portal-company{
  width:265px;
  min-width:0;
  height:40px;
  display:flex;
  align-items:center;
  padding:0 13px;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  border:1px solid var(--portal-line);
  border-radius:9px;
  background:#fff;
  color:var(--portal-ink);
  font-size:11.5px;
}
.portal-shell .portal-company .portal-chevron{
  width:7px;
  height:7px;
  margin:-4px 1px 0 auto;
  border-right:1.7px solid currentColor;
  border-bottom:1.7px solid currentColor;
  opacity:.55;
  transform:rotate(45deg);
}
.portal-shell .portal-top-action{
  height:40px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 13px;
  border:1px solid var(--portal-line-strong);
  border-radius:9px;
  background:#fff;
  color:var(--portal-teal-dark);
  box-shadow:none;
  font-size:11px;
  font-weight:650;
  text-decoration:none;
}
.portal-shell .portal-top-action:hover{
  border-color:var(--portal-teal);
  background:var(--portal-teal-soft);
}
.portal-shell .portal-top-icon{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:1px solid var(--portal-line);
  border-radius:9px;
  background:#fff;
  color:#60716b;
  text-decoration:none;
}
.portal-shell .portal-top-icon:hover{
  color:var(--portal-teal-dark);
  border-color:var(--portal-line-strong);
  background:#f5f8f7;
}
.portal-shell .portal-top-icon.note{color:var(--portal-teal)}
.portal-shell .portal-avatar{
  width:auto;
  min-width:74px;
  height:40px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--portal-line-strong);
  border-radius:9px;
  background:#fff;
  color:var(--portal-body);
  font:650 11.5px/1 Poppins,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;
}
.portal-shell .portal-avatar:hover{
  border-color:var(--portal-teal);
  background:var(--portal-teal-soft);
  color:var(--portal-teal-dark);
}

.portal-shell .portal-content{
  min-width:0;
  min-height:calc(100vh - var(--portal-top-height));
  margin-left:var(--portal-side-width);
  display:flex;
  flex-direction:column;
}
.portal-shell.portal-app .portal-content>.nav,
.portal-shell.portal-app .portal-content>.top{display:none!important}
.portal-shell.portal-app .portal-content>.foot{margin-left:0}
.portal-shell:not(.portal-app) .page,
.portal-shell:not(.portal-app) .foot{margin-left:var(--portal-side-width)}
.portal-shell #workspaceTasks,
.portal-shell #workspaceFiles,
.portal-shell #workspaceNotes{scroll-margin-top:92px}

/* Shared product surfaces */
.portal-shell .card,
.portal-shell .panel,
.portal-shell .ph-panel,
.portal-shell .ph-metric,
.portal-shell .stat{
  border-color:var(--portal-line)!important;
  box-shadow:var(--portal-shadow)!important;
}
.portal-shell .btn,
.portal-shell .ph-btn{
  border-radius:9px!important;
  box-shadow:none!important;
}
.portal-shell .btn:not(.out):not(.secondary):not(.danger),
.portal-shell .ph-btn:not(.secondary):not(.taupe){background:var(--portal-teal)!important}
.portal-shell .btn:not(.out):not(.secondary):not(.danger):hover,
.portal-shell .ph-btn:not(.secondary):not(.taupe):hover{background:var(--portal-teal-dark)!important}

/* Home dashboard */
.portal-shell .ph-main{
  min-height:calc(100vh - var(--portal-top-height));
  padding:34px 0 58px!important;
  background:var(--portal-canvas)!important;
}
.portal-shell .ph-wrap{max-width:1540px!important;padding:0 34px!important}
.portal-shell .ph-head{margin-bottom:24px!important}
.portal-shell .ph-eyebrow,
.portal-shell .eyebrow{
  color:var(--portal-teal)!important;
  letter-spacing:.16em!important;
}
.portal-shell .ph-head h1{
  color:var(--portal-ink)!important;
  font-size:32px!important;
  font-weight:700!important;
  letter-spacing:-.03em!important;
}
.portal-shell .ph-head p{color:var(--portal-body)!important;font-size:13px!important}
.portal-shell .ph-panel,
.portal-shell .ph-metric{border-radius:var(--portal-radius)!important}
.portal-shell .ph-panel-head{min-height:66px!important;padding:15px 19px!important}
.portal-shell .ph-panel-head h2{color:var(--portal-ink)!important;font-size:14px!important}
.portal-shell .ph-panel-head p{color:var(--portal-muted)!important;font-size:10.5px!important}
.portal-shell .ph-metrics{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}
.portal-shell .ph-metric{
  min-height:98px!important;
  padding:16px!important;
}
.portal-shell .ph-metric>div:last-child{min-width:0}
.portal-shell .ph-metric.primary{
  border-color:var(--portal-line)!important;
  box-shadow:inset 3px 0 0 var(--portal-teal),var(--portal-shadow)!important;
}
.portal-shell .ph-admin-icon,
.portal-shell .ph-metric-icon,
.portal-shell .ph-quick-icon{
  background:var(--portal-teal-soft)!important;
  color:var(--portal-teal-dark)!important;
  border-radius:10px!important;
}
.portal-shell .ph-metric-icon.orange{background:#fff1d8!important;color:var(--portal-amber)!important}
.portal-shell .ph-metric-icon.taupe{background:#f1ebe5!important;color:#927861!important}
.portal-shell .ph-metric-icon.red{background:#fbe9e7!important;color:var(--portal-danger)!important}
.portal-shell .ph-metric b{color:var(--portal-ink)!important;font-size:22px!important}
.portal-shell .ph-metric span{display:block;color:var(--portal-body)!important;line-height:1.35}
.portal-shell .ph-metric small{color:var(--portal-muted)!important}
.portal-shell .ph-workgrid,
.portal-shell .ph-accessgrid{gap:16px!important}
.portal-shell .ph-quick{background:#fff;transition:background-color .14s}
.portal-shell .ph-quick:hover{background:#f7faf9}

/* Deals board */
.portal-page-deals .portal-content{background:var(--portal-canvas)}
.portal-page-deals main{flex:1}
.portal-page-deals main>.wrap{
  max-width:1580px!important;
  margin:0 auto!important;
  padding:0 30px 50px!important;
}
.portal-page-deals .pagehd{padding:34px 0 24px!important}
.portal-page-deals .pagehd h1{
  margin:6px 0 5px!important;
  color:var(--portal-ink)!important;
  font-size:31px!important;
  font-weight:700!important;
  letter-spacing:-.03em!important;
}
.portal-page-deals .pagehd p{max-width:660px!important;color:var(--portal-muted)!important;font-size:13px!important}
.portal-page-deals .pagehd .hint{margin-top:7px!important;color:var(--portal-teal-dark)!important;font-size:12px!important}
.portal-page-deals .boardwrap{
  overflow-x:auto;
  padding:1px 1px 16px;
  scrollbar-width:thin;
  scrollbar-color:#cbd6d2 transparent;
}
.portal-page-deals .board{
  min-width:1280px;
  grid-template-columns:repeat(var(--stage-count),minmax(210px,1fr))!important;
  gap:12px!important;
  padding:0 0 8px!important;
}
.portal-page-deals .col{
  min-height:250px;
  padding:7px!important;
  border:1px solid var(--portal-line)!important;
  border-radius:12px!important;
  background:#eef2f1!important;
}
.portal-page-deals .col.won{background:#e5f3ee!important}
.portal-page-deals .col.lost{background:#f5eceb!important}
.portal-page-deals .colhd{padding:10px 7px 9px!important}
.portal-page-deals .colhd h3{
  color:var(--portal-teal-dark)!important;
  font-size:10.5px!important;
  line-height:1.35!important;
  letter-spacing:.035em!important;
}
.portal-page-deals .colhd .count{background:#76857f!important}
.portal-page-deals .col.won .colhd .count{background:var(--portal-teal)!important}
.portal-page-deals .col.lost .colhd .count{background:var(--portal-danger)!important}
.portal-page-deals .cardlist{padding:0 2px 3px!important;gap:9px!important}
.portal-page-deals .dcard{
  padding:12px!important;
  border-color:var(--portal-line)!important;
  border-radius:10px!important;
  box-shadow:0 2px 8px rgba(19,41,35,.05)!important;
}
.portal-page-deals .dcard:hover{
  border-color:var(--portal-teal)!important;
  box-shadow:0 7px 18px rgba(19,41,35,.09)!important;
  transform:translateY(-1px)!important;
}
.portal-page-deals .dcard .name{color:var(--portal-ink)!important;font-size:12px!important;line-height:1.4!important}
.portal-page-deals .dcard .row{gap:6px!important}
.portal-page-deals .dcard .amount{font-size:11px!important}
.portal-page-deals .dcard .close{font-size:10px!important}
.portal-page-deals .emptycol{padding:18px 8px!important;font-size:10.5px!important}

/* Workspace and administration */
.portal-page-workspace .portal-content,
.portal-page-admin .portal-content{background:var(--portal-canvas)}
.portal-page-workspace .portal-content>.hero,
.portal-page-admin .portal-content>.hero{
  padding:32px 0 24px!important;
  background:transparent!important;
  color:var(--portal-body)!important;
}
.portal-page-workspace .portal-content>.hero h1,
.portal-page-admin .portal-content>.hero h1{
  color:var(--portal-ink)!important;
  font-size:31px!important;
  font-weight:700!important;
  letter-spacing:-.03em!important;
}
.portal-page-workspace .portal-content>.hero p,
.portal-page-admin .portal-content>.hero p{color:var(--portal-body)!important}
.portal-page-workspace .portal-content>.hero .eyebrow,
.portal-page-admin .portal-content>.hero .eyebrow{color:var(--portal-teal)!important}
.portal-page-workspace .main,
.portal-page-admin .main{padding-top:0!important}
.portal-page-admin .stat,
.portal-page-admin .panel,
.portal-page-workspace .card{border-radius:var(--portal-radius)!important}

/* Clean product footer: no campaign accent strip */
.portal-shell .foot,
.portal-shell.portal-app .portal-content>.foot{
  margin-top:auto!important;
  background:#fff!important;
  color:#77857f!important;
  border-top:1px solid var(--portal-line)!important;
  box-shadow:none!important;
}
.portal-shell .foot .wrap{
  min-height:46px;
  max-width:none!important;
  padding:12px 30px!important;
  color:#77857f!important;
  font-size:10.5px!important;
}
.portal-shell .foot b{color:var(--portal-teal-dark)!important}

@media(max-width:1200px){
  .portal-page-deals .board{min-width:1260px}
  .portal-shell .ph-metrics{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:900px){
  :root{--portal-side-width:76px}
  .portal-shell .portal-side-head{justify-content:center;padding:0}
  .portal-shell .portal-side-head .portal-logo{display:none}
  .portal-shell .portal-side-head .portal-icon-logo{display:block;width:43px}
  .portal-shell .portal-nav-group,
  .portal-shell .portal-side-nav a span,
  .portal-shell .portal-nav-badge{display:none}
  .portal-shell .portal-side-nav a{justify-content:center;padding:11px 8px;gap:0}
  .portal-shell .portal-nav-sub{margin:0;border:0}
  .portal-shell .portal-nav-sub a{padding:10px}
  .portal-shell .portal-nav-sub a.on{margin:0;padding:10px;border:0}
  .portal-shell .portal-nav-parent{display:block}
  .portal-shell .portal-nav-parent>.section-toggle{display:none}
  .portal-shell .portal-nav-library{display:none!important}
  .portal-shell [data-nav-panel="workspace"]{
    max-height:none!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  .portal-shell .portal-side-nav a.on::before{display:block}
  .portal-shell .portal-top-action{display:none}
  .portal-shell .portal-company{width:215px}
  .portal-shell .ph-wrap{padding-left:22px!important;padding-right:22px!important}
  .portal-shell .ph-metrics{grid-template-columns:repeat(2,1fr)!important}
  .portal-page-deals main>.wrap{padding-left:22px!important;padding-right:22px!important}
}
@media(max-width:600px){
  :root{--portal-side-width:62px}
  .portal-shell .portal-top-in{padding:0 12px}
  .portal-shell .portal-company{width:148px}
  .portal-shell .portal-top-icon.contacts{display:none}
  .portal-shell .ph-wrap{padding-left:14px!important;padding-right:14px!important}
  .portal-shell .ph-metrics{grid-template-columns:1fr!important}
  .portal-page-deals main>.wrap{padding-left:14px!important;padding-right:14px!important}
  .portal-page-deals .pagehd h1,
  .portal-page-workspace .portal-content>.hero h1,
  .portal-page-admin .portal-content>.hero h1{font-size:27px!important}
}

/* --------------------------------------------------------------------------
   Complete legacy-screen unification
   The original hub contained a second marketing system inside each view.
   These rules make every remaining page and overlay use the product UI.
   -------------------------------------------------------------------------- */

/* Workspace header and progress */
.portal-page-workspace .hero,
.portal-page-admin .hero{
  padding:32px 0 25px!important;
  background:#fff!important;
  color:var(--portal-body)!important;
  border-bottom:1px solid var(--portal-line)!important;
}
.portal-page-workspace .hero .row,
.portal-page-admin .hero .row{align-items:center!important}
.portal-page-workspace .hero h1,
.portal-page-admin .hero h1{
  margin:5px 0 6px!important;
  color:var(--portal-ink)!important;
  font-size:31px!important;
  font-weight:700!important;
  letter-spacing:-.03em!important;
}
.portal-page-workspace .hero p,
.portal-page-admin .hero p{color:var(--portal-body)!important}
.portal-page-workspace .hero .eyebrow,
.portal-page-admin .hero .eyebrow{color:var(--portal-teal)!important}
.portal-page-workspace .progressbox{
  padding:15px 17px!important;
  border:1px solid var(--portal-line)!important;
  border-radius:11px!important;
  background:var(--portal-canvas)!important;
}
.portal-page-workspace .progressbox b{color:var(--portal-ink)!important;font-size:25px!important}
.portal-page-workspace .progressbox span{color:var(--portal-body)!important}
.portal-page-workspace .progressbox .bar{background:#dfe7e4!important}
.portal-page-workspace .progressbox .bar i{background:var(--portal-teal)!important}
.portal-page-workspace .main{padding:22px 0 56px!important}
.portal-page-workspace .layout{gap:16px!important}
.portal-page-workspace .stack{gap:16px!important}
.portal-page-workspace .ch{padding:16px 18px!important}
.portal-page-workspace .ch h2{font-size:15px!important}
.portal-page-workspace .cb{padding:16px 18px!important}
.portal-page-workspace .task,
.portal-page-workspace .file{border-radius:9px!important;background:#fff!important}
.portal-page-workspace .upload{border-radius:9px!important;background:#f8faf9!important}

/* Modal and form layers must sit above the shell and remain fully usable */
.portal-shell .modal,
.portal-shell .dealmodal,
.portal-shell .taskmodal{
  z-index:1400!important;
  align-items:center!important;
  padding:24px!important;
  background:rgba(19,41,35,.58)!important;
  backdrop-filter:blur(5px)!important;
}
.portal-shell .modalbox,
.portal-shell .dealbox,
.portal-shell .taskbox{
  max-height:calc(100vh - 48px)!important;
  overflow-y:auto!important;
  border:1px solid var(--portal-line)!important;
  border-radius:14px!important;
  box-shadow:0 24px 70px rgba(19,41,35,.22)!important;
}
.portal-page-deals .modalbox{max-width:650px!important;padding:28px 30px!important}
.portal-page-deals .modalbox h3,
.portal-shell .dealbox h3{color:var(--portal-ink)!important;font-size:22px!important;font-weight:700!important}
.portal-page-deals .modalbox .x,
.portal-shell .dealbox .x{color:#687873!important}
.portal-page-deals input,
.portal-page-deals textarea,
.portal-page-deals select,
.portal-shell .dealbox input,
.portal-shell .dealbox textarea,
.portal-shell .dealbox select{
  border-color:var(--portal-line-strong)!important;
  border-radius:9px!important;
  box-shadow:none!important;
}
.portal-page-deals label,
.portal-shell .dealbox label{color:var(--portal-ink)!important}

/* Every information and resource view */
.portal-shell:not(.portal-app) .page{
  min-height:calc(100vh - var(--portal-top-height));
  background:var(--portal-canvas)!important;
}
.portal-shell:not(.portal-app) .page>.hero{
  overflow:visible!important;
  background:#fff!important;
  color:var(--portal-body)!important;
  border-bottom:1px solid var(--portal-line)!important;
}
.portal-shell:not(.portal-app) .page>.hero .wrap{
  max-width:1320px!important;
  grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr)!important;
  gap:40px!important;
  padding:40px 32px!important;
}
.portal-shell:not(.portal-app) .page>.hero h1{
  max-width:820px!important;
  margin:8px 0 12px!important;
  color:var(--portal-ink)!important;
  font-size:36px!important;
  font-weight:700!important;
  line-height:1.15!important;
  letter-spacing:-.035em!important;
}
.portal-shell:not(.portal-app) .page>.hero p.lead{
  max-width:780px!important;
  margin-bottom:19px!important;
  color:var(--portal-body)!important;
  font-size:14px!important;
  line-height:1.65!important;
}
.portal-shell:not(.portal-app) .page>.hero .eyebrow{color:var(--portal-teal)!important}
.portal-shell:not(.portal-app) .page>.hero .pill{
  margin-bottom:11px!important;
  border:1px solid #cce7df!important;
  background:var(--portal-teal-soft)!important;
  color:var(--portal-teal-dark)!important;
}
.portal-shell:not(.portal-app) .page>.hero .pill .d{background:var(--portal-teal)!important}
.portal-shell:not(.portal-app) .page>.hero .btn.ghost{
  border-color:var(--portal-line-strong)!important;
  background:#fff!important;
  color:var(--portal-ink)!important;
}
.portal-shell:not(.portal-app) #partner>.hero img{
  max-width:190px!important;
  filter:none!important;
}
.portal-shell:not(.portal-app) .page>.hero .frame{
  border-color:var(--portal-line)!important;
  box-shadow:var(--portal-shadow)!important;
}

.portal-shell:not(.portal-app) section.band{padding:38px 0!important}
.portal-shell:not(.portal-app) .band.alt{background:#eef2f1!important}
.portal-shell:not(.portal-app) section.band>.wrap,
.portal-shell:not(.portal-app) .page>.hero>.wrap{max-width:1320px!important}
.portal-shell:not(.portal-app) .sechead{max-width:800px!important;margin-bottom:22px!important}
.portal-shell:not(.portal-app) .sechead h2,
.portal-shell:not(.portal-app) .article h2{
  color:var(--portal-ink)!important;
  font-size:27px!important;
  font-weight:700!important;
  letter-spacing:-.025em!important;
}
.portal-shell:not(.portal-app) .sechead p,
.portal-shell:not(.portal-app) .article p,
.portal-shell:not(.portal-app) .lead{color:var(--portal-body)!important}
.portal-shell:not(.portal-app) .article{max-width:980px!important}
.portal-shell:not(.portal-app) .article h3{color:var(--portal-ink)!important;font-size:17px!important}
.portal-shell:not(.portal-app) .article h3::before{background:var(--portal-teal)!important}
.portal-shell:not(.portal-app) .modhero{
  margin-bottom:18px!important;
  padding:18px!important;
  border:1px solid var(--portal-line)!important;
  border-radius:var(--portal-radius)!important;
  background:#fff!important;
}
.portal-shell:not(.portal-app) .modhero img.mi{width:64px!important;height:64px!important}
.portal-shell:not(.portal-app) .backlink{color:var(--portal-teal-dark)!important}

/* Consistent cards instead of a mix of campaign tiles */
.portal-shell:not(.portal-app) .mod,
.portal-shell:not(.portal-app) .pcard,
.portal-shell:not(.portal-app) .card,
.portal-shell:not(.portal-app) .csc,
.portal-shell:not(.portal-app) .raic,
.portal-shell:not(.portal-app) .step,
.portal-shell:not(.portal-app) .mcard,
.portal-shell:not(.portal-app) .dl,
.portal-shell:not(.portal-app) .qa,
.portal-shell:not(.portal-app) .rk-card,
.portal-shell:not(.portal-app) .rk-swatch,
.portal-shell:not(.portal-app) .rk-icocard,
.portal-shell:not(.portal-app) .rk-do .col,
.portal-shell:not(.portal-app) .tm{
  border-color:var(--portal-line)!important;
  border-radius:var(--portal-radius)!important;
  box-shadow:var(--portal-shadow)!important;
}
.portal-shell:not(.portal-app) .mod:hover,
.portal-shell:not(.portal-app) .pcard:hover,
.portal-shell:not(.portal-app) .qa:hover{
  border-color:#b9dcd2!important;
  box-shadow:0 12px 30px rgba(19,41,35,.08)!important;
  transform:translateY(-2px)!important;
}
.portal-shell:not(.portal-app) .engine{
  margin-bottom:16px!important;
  padding:19px!important;
  border:1px solid var(--portal-line)!important;
  border-radius:var(--portal-radius)!important;
  background:#fff!important;
}
.portal-shell:not(.portal-app) .engine .et b{color:var(--portal-ink)!important}
.portal-shell:not(.portal-app) .mod{background:#f8faf9!important;box-shadow:none!important}
.portal-shell:not(.portal-app) .mod::after{color:var(--portal-teal-dark)!important}
.portal-shell:not(.portal-app) .csc .h{
  background:var(--portal-teal-soft)!important;
  color:var(--portal-teal-dark)!important;
}
.portal-shell:not(.portal-app) .trust,
.portal-shell:not(.portal-app) .metricstrip{
  border:1px solid var(--portal-line)!important;
  border-radius:var(--portal-radius)!important;
  background:#fff!important;
  color:var(--portal-ink)!important;
}
.portal-shell:not(.portal-app) .trust .t b,
.portal-shell:not(.portal-app) .metricstrip b{color:var(--portal-ink)!important}
.portal-shell:not(.portal-app) .trust .t span,
.portal-shell:not(.portal-app) .metricstrip span{color:var(--portal-muted)!important}
.portal-shell:not(.portal-app) .mcard .h{
  padding:17px 19px!important;
  border-top:3px solid var(--portal-teal)!important;
  background:#fff!important;
  color:var(--portal-body)!important;
}
.portal-shell:not(.portal-app) .mcard.refer .h{border-top-color:#638b88!important}
.portal-shell:not(.portal-app) .mcard.consult .h{border-top-color:var(--portal-taupe)!important}
.portal-shell:not(.portal-app) .mcard .h h3{color:var(--portal-ink)!important}
.portal-shell:not(.portal-app) .phase .n,
.portal-shell:not(.portal-app) .step .n,
.portal-shell:not(.portal-app) .raic .k{
  background:var(--portal-teal-soft)!important;
  color:var(--portal-teal-dark)!important;
}
.portal-shell:not(.portal-app) .callout{
  border-left-color:var(--portal-teal)!important;
  background:#f1f7f5!important;
  color:var(--portal-body)!important;
}
.portal-shell:not(.portal-app) .tag{background:#e9efed!important;color:#566660!important}
.portal-shell:not(.portal-app) .rk-nav a{
  border-color:var(--portal-line)!important;
  border-radius:8px!important;
  background:#fff!important;
  color:var(--portal-teal-dark)!important;
}
.portal-shell:not(.portal-app) .rk-nav a:hover{background:var(--portal-teal-soft)!important}
.portal-shell:not(.portal-app) .rk-dl a{
  border-color:#cce3dc!important;
  background:#f4f9f7!important;
  color:var(--portal-teal-dark)!important;
}

/* Retain actual supplied images, but present them like the Battleground app */
.portal-shell:not(.portal-app) .shot,
.portal-shell:not(.portal-app) .frame.lite{
  border:1px solid var(--portal-line)!important;
  border-radius:var(--portal-radius)!important;
  box-shadow:var(--portal-shadow)!important;
}
.portal-shell:not(.portal-app) .rk-th{background:#f1f4f3!important}
.portal-shell:not(.portal-app) .rk-th.dark{background:#183c34!important}
.portal-shell:not(.portal-app) .rk-card .rk-th img{object-fit:contain!important}

/* Compact footer on every resource page */
.portal-shell:not(.portal-app) .foot .fmain{display:none!important}
.portal-shell:not(.portal-app) .foot .fbar{
  min-height:46px!important;
  margin:0!important;
  padding:13px 0!important;
  border:0!important;
  color:#77857f!important;
}
.portal-shell:not(.portal-app) .foot .fbar span:last-child{color:var(--portal-teal-dark)!important}

@media(max-width:1000px){
  .portal-shell:not(.portal-app) .page>.hero .wrap{grid-template-columns:1fr!important}
  .portal-shell:not(.portal-app) #partner>.hero img{margin:0!important}
}
@media(max-width:600px){
  .portal-shell .modal,
  .portal-shell .dealmodal,
  .portal-shell .taskmodal{padding:12px!important}
  .portal-shell .modalbox,
  .portal-shell .dealbox,
  .portal-shell .taskbox{max-height:calc(100vh - 24px)!important}
  .portal-shell:not(.portal-app) .page>.hero .wrap{padding:28px 18px!important}
  .portal-shell:not(.portal-app) .page>.hero h1{font-size:29px!important}
  .portal-shell:not(.portal-app) section.band{padding:28px 0!important}
}

/* Command Centre interactive sample */
.portal-shell:not(.portal-app) .article.command-centre-article{max-width:1320px!important}
.portal-shell .cc-inline-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin:16px 0 10px;
  padding:14px 17px;
  border:1px solid var(--portal-line);
  border-radius:11px;
  background:#fff;
}
.portal-shell .cc-inline-toolbar b,
.portal-shell .cc-inline-toolbar span{display:block}
.portal-shell .cc-inline-toolbar b{color:var(--portal-ink);font-size:13px}
.portal-shell .cc-inline-toolbar span{margin-top:2px;color:var(--portal-muted);font-size:10.5px;line-height:1.5}
.portal-shell .cc-inline-toolbar a{
  flex:none;
  padding:9px 12px;
  border-radius:8px;
  background:var(--portal-teal);
  color:#fff;
  font-size:10.5px;
  font-weight:650;
  text-decoration:none;
}
.portal-shell .cc-inline-shell{
  height:min(740px,76vh);
  min-height:620px;
  overflow:hidden;
  border:1px solid var(--portal-line);
  border-radius:12px;
  background:#fff;
  box-shadow:var(--portal-shadow);
}
.portal-shell .cc-inline-shell iframe{display:block;width:100%;height:100%;border:0;background:#fff}
@media(max-width:760px){
  .portal-shell .cc-inline-toolbar{align-items:flex-start;flex-direction:column;gap:10px}
  .portal-shell .cc-inline-shell{height:660px;min-height:660px}
}
