/* Type */

/*
font-family: "canada-type-gibson", sans-serif;
font-weight: 400;
font-weight: 400; font-style: italic;
font-weight: 500;
font-weight: 600;
font-weight: 700;
font-weight: 700; font-style: italic;

*/

html {
  font-size: 16px; /* 16 is default for most browsers*/
  font-size: clamp(16px, 4vw, 20px); /* never go below 16px, never above 24px, and scale with the viewport width in between */
}

/*
@media screen and (min-width: 320px) {
  html { font-size: 110%; }
}
@media screen and (min-width: 992px) {
  html { font-size: 114%; }
}
@media screen and (min-width: 1200px) {
  html { font-size: 116%; }
}
@media screen and (min-width: 1400px) {
  html { font-size: 118%; }
}
*/

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-family: 'canada-type-gibson', sans-serif;
  font-optical-sizing: auto; 
  line-height:1.5;
}

.text-condensed { font-family: 'canada-type-gibson',sans-serif; }
.text-serif { font-family:serif; }

/* global typography */

h1,h2,h3,h4,h5,h6 { text-wrap:balance; color:inherit; }

h1 { font-size: 2.56rem; line-height:1.25; font-weight:600; margin-top:0px; margin-bottom: 1rem; letter-spacing:-0.050rem; }
h2 { font-size: 1.618rem; line-height:1.36; font-weight:600; margin-top:1rem; margin-bottom: 1rem; letter-spacing:-0.050rem; }
h3 { font-size: 1.1rem; line-height:1.5; font-weight:600; letter-spacing:-0.050rem; text-transform:uppercase; } 

h2.on-detail { color:inherit; }
h2.on-detail { font-size: 0.85rem; font-weight:600; margin-top:1.5rem; margin-bottom: 1rem; text-transform:uppercase; letter-spacing:0.050rem; }

p, li { font-size:1rem; }
li { margin-bottom:0.25rem; } /* I like to differentiate between line height and items */
p.intro,p.lead { font-weight:inherit; font-size:1.2rem; }

b,strong,label { font-weight:600; }
ul.site-search li span.solr_type {
font-weight:600!important;
}
ul.site-search li span.solr_highlight em {
  font-weight:600!important;
}

label { color:inherit; }

hr { margin-top: 1.5rem; margin-bottom: 1.5rem; border: 0; border-top-color: currentcolor; border-top-style: none; border-top-width: 0px; opacity:1; }
hr { border-top: 1px solid var(--cty-black); }

hr.clearing-spacer { clear:both; background-color:inherit; border:0px; opacity:1; }

a { color:inherit; text-decoration:underline; }
a:hover { color:inherit; text-decoration:underline; }


.rx-content blockquote p { color: inherit; font-size: inherit; line-height: inherit; }

blockquote, .rx-content blockquote {
  position: relative;
  background:transparent;
  margin-top:1.5rem;
  margin-bottom:1.5rem;
  padding:1rem 1rem 1rem 2rem;
  font-size: 1.25rem;
  font-style:italic;
  border:1px solid white;
  border-width:0px 0px 1px 12px;
  border-radius:0px 0px 0px 24px;
}


blockquote cite {
  font-style: normal;
  font-weight: 500;
  margin-top: 0.5rem;
}


/* buttons */

.btn-brand { 
  background-color:var(--cty-blue); 
  border:1px solid var(--cty-blue); 
  color:white; 
  font-size:0.8rem; font-weight:600; text-transform:uppercase; letter-spacing:0.010rem; 
  margin: 4px 2px 4px 0px; 
  padding: .375rem .75rem; 
  transition:var(--cty-transition-hover); 
  text-decoration:none; 
}
.btn-brand:hover { 
  background-color:var(--cty-blue-light); 
  border-color:var(--cty-blue-light); 
  color:white; 
  text-decoration:none; 
}

.btn-outline-brand { 
  background-color:inherit; 
  border:1px solid var(--cty-blue); 
  color:var(--cty-blue); 
  font-size:0.8rem; font-weight:600; text-transform:uppercase; letter-spacing:0.010rem; 
  margin: 4px 2px 4px 0px; 
  padding: .375rem .75rem; 
  transition:var(--cty-transition-hover);  
  text-decoration:none; 
}
.btn-outline-brand:hover { 
  background-color:var(--cty-blue-light); 
  border-color:var(--cty-blue-light); 
  color:white; 
  text-decoration:none; 
}

.btn-brand-pill { 
  background-color:var(--cty-blue); 
  border:1px solid var(--cty-blue);  
  color:white; 
  font-size:0.8rem; font-weight:600; text-transform:uppercase; letter-spacing:0.010rem; 
  border-radius:20px; 
  margin: 4px 2px 4px 0px; 
  padding: .275rem 1rem; 
  transition:var(--cty-transition-hover);  
  text-decoration:none; 
}
.btn-brand-pill:hover {  
  background-color:var(--cty-blue-light); 
  border-color:var(--cty-blue-light); 
  color:white; 
  text-decoration:none; 
}

.btn-outline-brand-pill { 
  background-color:inherit; 
  border:1px solid var(--cty-blue); 
  color:var(--cty-blue); 
  font-size:0.8rem; font-weight:600; text-transform:uppercase; letter-spacing:0.010rem; 
  border-radius:20px; 
  margin: 4px 2px 4px 0px; 
  padding: .275rem 1rem; 
  transition:var(--cty-transition-hover);  
  text-decoration:none; 
}
.btn-outline-brand-pill:hover { 
  background-color:var(--cty-blue-light); 
  border-color:var(--cty-blue-light); 
  color:white; 
  text-decoration:none; 
}

.btn-naked { 
  color:var(--cty-blue); 
  text-transform:uppercase; 
  letter-spacing:0.050rem; 
  margin: 4px 2px 4px 0px; 
  padding: .375rem 0rem; 
  transition:var(--cty-transition-hover);  
}
.btn-naked:hover { 
  color:var(--cty-blue-light); 
}


.btn-brand-domino { 
  background-color:var(--cty-blue); 
  border:1px solid var(--cty-blue);  
  color:white; 
  font-size:0.8rem; font-weight:600; text-transform:uppercase; letter-spacing:0.010rem; 
  border-radius:20px; 
  margin: 4px 2px 4px 0px; 
  padding: .275rem 1rem; 
  transition:var(--cty-transition-hover);  
  text-decoration:none; 
}
.btn-brand-domino:hover {  
  background-color:var(--cty-blue-light); 
  border-color:var(--cty-blue-light); 
  color:white; 
  text-decoration:none; 
}







.add-arrow::after {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  content: "\f178";
  padding-left:8px;
}
.add-angle::after {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  content: "\203a";
  padding-left:8px;
}


/* section filters */

.btn-section-filters { margin:1rem 0; }
.btn-section-filters ul { list-style:none; margin:0; padding:0; text-wrap:balance; }
.btn-section-filters li { display:inline; margin:0; padding:0; }
.btn-section-filters a {
  display:inline-block;
  text-decoration: none;
  font-size:  0.7rem;
  line-height: 1;
  font-weight:600; 
  text-transform:uppercase; 
  letter-spacing:0.010rem; 
  color:var(--cty-black);
  background-color:transparent;
  border:1px solid var(--cty-blue);
  transition:var(--cty-transition-hover); 
  border-radius:36px;
  padding:0.5rem 0.75rem;
  white-space: nowrap;
  margin:4px 3px;
}
.btn-section-filters a:hover { 
  background-color:var(--cty-blue); 
  border-color:var(--cty-blue); 
  color:white; 
  text-decoration: none; 
}
.btn-section-filters a.selected { 
  background-color:var(--cty-blue);
  border-color:var(--cty-blue); 
  color:white; 
}


/* button group */

.op-button-group { margin:1rem 0; }
.op-button-group button { 
  text-decoration:none; 
  font-size:0.8rem;
  line-height:1;
  font-weight:700;
  text-transform:none;
  letter-spacing: 0rem;
  color:var(--cty-filterlink);
  background-color:inherit; 
  border:1px solid var(--cty-filterlink); 
  transition:var(--cty-transition-hover); 
  border-radius:2px;
  padding:0.5rem 0.75rem;
  white-space: nowrap;
  margin:4px 3px; 
}
.op-button-group button:hover { 
  background-color:var(--cty-filterhover); 
  border-color:var(--cty-filterhover); 
  color:white; 
  text-decoration:none; 
}
.op-button-group button.button-selected { 
  background-color:var(--cty-filterlink); 
  border-color:var(--cty-filterlink); 
  color:white; 
  text-decoration:none; 
}


/* link box */


.lk { display:table; width:100%; margin-bottom:0.75rem; background-color:white; padding:1rem 1rem 0.75rem 1rem; border-radius:24px; }
.lk a { text-decoration:none; color:inherit; }
.lk a:hover { text-decoration:none; color:inherit; }
.lk-arrow { display:table-cell; width:36px; vertical-align:top; font-size:1rem; line-height:1.5; color:var(--cty-green); }
.lk-content { display:table-cell; width:auto; vertical-align:top; }
.lk-content-primary { font-size:1rem; font-weight:600; margin-bottom:0.2rem; }
.lk-content-secondary { font-size:0.9rem; }

