/* CipCip Fluid Framework
   Structural foundation adapted from the utility framework supplied by the project.
   Brand components remain in main.css. */

:root{
  --min-screen-width:320px;
  --max-screen-width:1220px;
  --primary:#1e3f65;
  --primary-dark:#122a42;
  --secondary:#efbb34;
  --tertiary:#165491;
  --bg-body:#ffffff;
  --bg-surface:#ffffff;
  --text-body:#536879;
  --text-title:#122a42;
  --border-primary:rgba(16,34,56,.11);
  --shadow-primary:rgba(6,42,73,.08);
  --space-4xs:clamp(.28rem,.26rem + .08vw,.34rem);
  --space-3xs:clamp(.4rem,.36rem + .12vw,.48rem);
  --space-2xs:clamp(.56rem,.5rem + .2vw,.7rem);
  --space-xs:clamp(.78rem,.69rem + .28vw,1rem);
  --space-s:clamp(1rem,.87rem + .42vw,1.32rem);
  --space-m:clamp(1.32rem,1.08rem + .74vw,1.86rem);
  --space-l:clamp(1.72rem,1.34rem + 1.12vw,2.56rem);
  --space-xl:clamp(2.24rem,1.62rem + 1.78vw,3.55rem);
  --space-2xl:clamp(2.88rem,1.98rem + 2.62vw,4.8rem);
  --space-3xl:clamp(3.7rem,2.42rem + 3.75vw,6.45rem);
  --space-4xl:clamp(4.8rem,2.95rem + 5.45vw,8.8rem);
  --text-xs:clamp(.76rem,.74rem + .05vw,.8rem);
  --text-s:clamp(.86rem,.83rem + .1vw,.92rem);
  --text-m:clamp(1rem,.97rem + .12vw,1.08rem);
  --text-l:clamp(1.1rem,1.04rem + .22vw,1.26rem);
  --text-xl:clamp(1.28rem,1.16rem + .42vw,1.58rem);
  --text-2xl:clamp(1.52rem,1.34rem + .62vw,1.96rem);
  --text-3xl:clamp(1.86rem,1.62rem + .82vw,2.44rem);
  --text-4xl:clamp(2.38rem,2.02rem + 1.18vw,3.22rem);
  --columns-1:repeat(1,minmax(0,1fr));
  --columns-2:repeat(2,minmax(0,1fr));
  --columns-3:repeat(3,minmax(0,1fr));
  --columns-4:repeat(4,minmax(0,1fr));
  --columns-5:repeat(5,minmax(0,1fr));
  --columns-6:repeat(6,minmax(0,1fr));
  --columns-7:repeat(7,minmax(0,1fr));
  --columns-8:repeat(8,minmax(0,1fr));
  --radius-xs:.32rem;
  --radius-s:clamp(.48rem,.44rem + .12vw,.58rem);
  --radius-m:clamp(.72rem,.64rem + .22vw,.88rem);
  --radius-l:clamp(.95rem,.83rem + .34vw,1.2rem);
  --radius-xl:clamp(1.2rem,1.02rem + .55vw,1.6rem);
  --radius-full:999rem;
  --shadow-xs:0 1px 2px rgba(6,42,73,.05);
  --shadow-s:0 4px 14px rgba(6,42,73,.055);
  --shadow-m:0 12px 34px rgba(6,42,73,.07);
  --shadow-l:0 22px 54px rgba(6,42,73,.085);
  --shadow-xl:0 30px 78px rgba(6,42,73,.10);
}
.max-site-width{width:min(calc(100% - (var(--space-m) * 2)),var(--max-screen-width));margin-inline:auto}
.row{display:grid;grid-auto-flow:column;justify-content:start}
.column{display:grid;grid-auto-flow:row;justify-items:start;align-content:start}
.columns-2{display:grid;grid-template-columns:var(--columns-2)}
.columns-3{display:grid;grid-template-columns:var(--columns-3)}
.columns-4{display:grid;grid-template-columns:var(--columns-4)}
.columns-5{display:grid;grid-template-columns:var(--columns-5)}
.columns-6{display:grid;grid-template-columns:var(--columns-6)}
.columns-7{display:grid;grid-template-columns:var(--columns-7)}
.columns-8{display:grid;grid-template-columns:var(--columns-8)}
.columns-min-10{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr))}
.columns-min-15{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr))}
.columns-min-20{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr))}
.columns-min-25{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(25rem,100%),1fr))}
.columns-min-30{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(30rem,100%),1fr))}
.columns-min-35{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(35rem,100%),1fr))}
.columns-min-40{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(40rem,100%),1fr))}
.flex-row{display:flex;flex-direction:row}.flex-column{display:flex;flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-1{flex:1}.flex-2{flex:2}.flex-3{flex:3}
.col-span-2{grid-column:auto / span 2}
.col-span-3{grid-column:auto / span 3}
.col-span-4{grid-column:auto / span 4}
.col-span-5{grid-column:auto / span 5}
.col-span-6{grid-column:auto / span 6}
.col-span-7{grid-column:auto / span 7}
.col-span-8{grid-column:auto / span 8}
.col-start-1{grid-column-start:1}
.col-start-2{grid-column-start:2}
.col-start-3{grid-column-start:3}
.col-start-4{grid-column-start:4}
.col-start-5{grid-column-start:5}
.col-start-6{grid-column-start:6}
.col-start-7{grid-column-start:7}
.col-start-8{grid-column-start:8}
.items-left{justify-items:start}.items-center{justify-items:center}.items-right{justify-items:end}.items-top{align-items:start}.items-middle{align-items:center}.items-bottom{align-items:end}.items-stretch{align-items:stretch}.content-left{justify-content:start}.content-center{justify-content:center}.content-right{justify-content:end}.content-top{align-content:start}.content-middle{align-content:center}.content-bottom{align-content:end}.space-between{justify-content:space-between}.self-left{margin-right:auto;place-self:start}.self-center{margin-inline:auto;place-self:center}.self-right{margin-left:auto;place-self:end}.self-top{margin-bottom:auto;align-self:start}.self-middle{margin-block:auto;align-self:center}.self-bottom{margin-top:auto;align-self:end}.full-width{width:100%}.full-height{height:100%}.auto-width{width:auto}.auto-height{height:auto}
.gap-4xs{gap:var(--space-4xs)}
.padding-4xs{padding:var(--space-4xs)}
.padding-block-4xs{padding-block:var(--space-4xs)}
.padding-inline-4xs{padding-inline:var(--space-4xs)}
.margin-top-4xs{margin-top:var(--space-4xs)}
.margin-bottom-4xs{margin-bottom:var(--space-4xs)}
.gap-3xs{gap:var(--space-3xs)}
.padding-3xs{padding:var(--space-3xs)}
.padding-block-3xs{padding-block:var(--space-3xs)}
.padding-inline-3xs{padding-inline:var(--space-3xs)}
.margin-top-3xs{margin-top:var(--space-3xs)}
.margin-bottom-3xs{margin-bottom:var(--space-3xs)}
.gap-2xs{gap:var(--space-2xs)}
.padding-2xs{padding:var(--space-2xs)}
.padding-block-2xs{padding-block:var(--space-2xs)}
.padding-inline-2xs{padding-inline:var(--space-2xs)}
.margin-top-2xs{margin-top:var(--space-2xs)}
.margin-bottom-2xs{margin-bottom:var(--space-2xs)}
.gap-xs{gap:var(--space-xs)}
.padding-xs{padding:var(--space-xs)}
.padding-block-xs{padding-block:var(--space-xs)}
.padding-inline-xs{padding-inline:var(--space-xs)}
.margin-top-xs{margin-top:var(--space-xs)}
.margin-bottom-xs{margin-bottom:var(--space-xs)}
.gap-s{gap:var(--space-s)}
.padding-s{padding:var(--space-s)}
.padding-block-s{padding-block:var(--space-s)}
.padding-inline-s{padding-inline:var(--space-s)}
.margin-top-s{margin-top:var(--space-s)}
.margin-bottom-s{margin-bottom:var(--space-s)}
.gap-m{gap:var(--space-m)}
.padding-m{padding:var(--space-m)}
.padding-block-m{padding-block:var(--space-m)}
.padding-inline-m{padding-inline:var(--space-m)}
.margin-top-m{margin-top:var(--space-m)}
.margin-bottom-m{margin-bottom:var(--space-m)}
.gap-l{gap:var(--space-l)}
.padding-l{padding:var(--space-l)}
.padding-block-l{padding-block:var(--space-l)}
.padding-inline-l{padding-inline:var(--space-l)}
.margin-top-l{margin-top:var(--space-l)}
.margin-bottom-l{margin-bottom:var(--space-l)}
.gap-xl{gap:var(--space-xl)}
.padding-xl{padding:var(--space-xl)}
.padding-block-xl{padding-block:var(--space-xl)}
.padding-inline-xl{padding-inline:var(--space-xl)}
.margin-top-xl{margin-top:var(--space-xl)}
.margin-bottom-xl{margin-bottom:var(--space-xl)}
.gap-2xl{gap:var(--space-2xl)}
.padding-2xl{padding:var(--space-2xl)}
.padding-block-2xl{padding-block:var(--space-2xl)}
.padding-inline-2xl{padding-inline:var(--space-2xl)}
.margin-top-2xl{margin-top:var(--space-2xl)}
.margin-bottom-2xl{margin-bottom:var(--space-2xl)}
.gap-3xl{gap:var(--space-3xl)}
.padding-3xl{padding:var(--space-3xl)}
.padding-block-3xl{padding-block:var(--space-3xl)}
.padding-inline-3xl{padding-inline:var(--space-3xl)}
.margin-top-3xl{margin-top:var(--space-3xl)}
.margin-bottom-3xl{margin-bottom:var(--space-3xl)}
.gap-4xl{gap:var(--space-4xl)}
.padding-4xl{padding:var(--space-4xl)}
.padding-block-4xl{padding-block:var(--space-4xl)}
.padding-inline-4xl{padding-inline:var(--space-4xl)}
.margin-top-4xl{margin-top:var(--space-4xl)}
.margin-bottom-4xl{margin-bottom:var(--space-4xl)}
.text-xs{font-size:var(--text-xs)}
.text-s{font-size:var(--text-s)}
.text-m{font-size:var(--text-m)}
.text-l{font-size:var(--text-l)}
.text-xl{font-size:var(--text-xl)}
.text-2xl{font-size:var(--text-2xl)}
.text-3xl{font-size:var(--text-3xl)}
.text-4xl{font-size:var(--text-4xl)}
.font-100{font-weight:100}
.font-200{font-weight:200}
.font-300{font-weight:300}
.font-400{font-weight:400}
.font-500{font-weight:500}
.font-600{font-weight:600}
.font-700{font-weight:700}
.font-800{font-weight:800}
.font-900{font-weight:900}
.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}
.width-90{width:90%}
.width-80{width:80%}
.width-70{width:70%}
.width-60{width:60%}
.width-50{width:50%}
.width-40{width:40%}
.width-30{width:30%}
.width-20{width:20%}
.width-10{width:10%}
.max-width-70{max-width:70rem}
.max-width-60{max-width:60rem}
.max-width-50{max-width:50rem}
.max-width-40{max-width:40rem}
.max-width-30{max-width:30rem}
.max-width-20{max-width:20rem}
.max-width-10{max-width:10rem}
.radius-xs{border-radius:var(--radius-xs)}
.radius-s{border-radius:var(--radius-s)}
.radius-m{border-radius:var(--radius-m)}
.radius-l{border-radius:var(--radius-l)}
.radius-xl{border-radius:var(--radius-xl)}
.radius-full{border-radius:var(--radius-full)}
.shadow-xs{box-shadow:var(--shadow-xs)}
.shadow-s{box-shadow:var(--shadow-s)}
.shadow-m{box-shadow:var(--shadow-m)}
.shadow-l{box-shadow:var(--shadow-l)}
.shadow-xl{box-shadow:var(--shadow-xl)}
@media(max-width:1050px){.tablet-columns-1{grid-template-columns:1fr!important}.tablet-col-span-full{grid-column:1/-1!important}}
@media(max-width:700px){.mobile-columns-1{grid-template-columns:1fr!important}.mobile-col-span-full{grid-column:1/-1!important}.mobile-full-width{width:100%!important}}
