/*
 Theme Name: Divi Child
 Theme URI: https://divi5demo.ca/
 Description: A custom Divi 5 child theme for extended functionality
 Author: Kent Lacroix (Cyberwip)
 Author URI: https://cyberwip.com/
 Template: Divi
 Version: 1.0.0
*/
/* Custom CSS goes here */
:root {
    --font_body: "Poppins", system-ui, _apple-system, sans-serif;
    --font_head: "Outfit", system-ui, _apple-system, sans-serif;
    --font_ui: "Poppins", system-ui, _apple-system, sans-serif;
    --font_code: "Google Sans Code", "Lucida Console", "Consolas", "Courier New", monospace;
    /* base font and header sizes */
    --font_base: clamp(16px, calc(0.8vw + 14px), 22px);
    --f_lh: 1.5;  /* interline spacing */
    --f_hscale: 1.25;  /* scale ratio for headings */
}
body {
    font: 400 var(--font_base)/var(--f_lh) var(--font_body);
}
p, ol, ul, button, td, dt, dd {
    font-family: var(--font_body);
    font-weight: 400;
/* problem with theme defined CSS vars Dec 4, 2025
	font-size: var(--font_base);
	// calc() didn't work, testing syntax
*/
	font-size: clamp(16px, 1.4vw, 22px);
    line-height: var(--f_lh);
}

.drop_cap2 p:first-of-type::first-letter {
    float: left;
    font-family: var(--font_head);
    font-size: calc(var(--font_base) * var(--f_lh) * 2.18);
    line-height: 0.9;
    margin:0.08em 0.05em 0 0;
    font-weight: 400;
    color: #03A8F4;
}

.drop_cap3 p:first-of-type::first-letter {
    float: left;
    font-family: var(--font_head);
    font-size: calc(var(--font_base) * var(--f_lh) * 3.43);
    line-height: 0.9;
    margin:0.08em 0.05em 0 0;
    font-weight: 400;
    color: #03A8F4;
}

h1,h2,h3,h4,h5,h6 {
    font-family: var(--font_head);
    color:#03A8F4; /* #0288D1 darker, #03A8F4 lighter */
}

/** HEADERS **/
/* Headings: proportional scaling + line-height that tightens gracefully */
h1{font-size: clamp(calc(var(--font_base)*1.8), calc(var(--font_base)*1.2 + 2.2vw), calc(var(--font_base)*2.8)); line-height: 1.15; font-weight:300}
h2{font-size: clamp(calc(var(--font_base)*1.6), calc(var(--font_base)*1.15 + 1.6vw), calc(var(--font_base)*2.2)); line-height: 1.18; font-weight:300}
h3{font-size: clamp(calc(var(--font_base)*1.4), calc(var(--font_base)*1.1  + 1.0vw), calc(var(--font_base)*1.9)); line-height: 1.22; font-weight:300}
h4{font-size: clamp(calc(var(--font_base)*1.2), calc(var(--font_base)*1.05 + 0.6vw), calc(var(--font_base)*1.6)); line-height: 1.28; font-weight:400}
h5{font-size: clamp(calc(var(--font_base)*1.1), calc(var(--font_base)*1.02 + 0.4vw), calc(var(--font_base)*1.4)); line-height: 1.32; font-weight:400}
h6{font-size: clamp(calc(var(--font_base)*1.0), calc(var(--font_base)*1.00 + 0.2vw), calc(var(--font_base)*1.2)); line-height: 1.38; font-weight:400}

h1.hrup, h2.hrup, h3.hrup {
    border-top:2px solid #bbb;
    padding-top:0.25em;
    margin-top:1.25em;
}
h1 small, h2 small, h3 small, h4 small, h5 small h6 small {
  font-size: 60%;
}


mark {
	background-color:#ffff66;
	color:#212121;
}
pre, code {
    background-color:#f3f3f3;
    border:1px solid #e0e0e0;
    color:#639;
}
pre {
    line-height:1.25em;
    padding:0.6em 0 0.6em 1.25em;
    margin-bottom:1em;
    border-radius:7px;
}
code {
    font-family: var(--font_code);
    padding:1px 0.35em;
    border-radius:3px;
}

/*
 * OL/UL Lists
 */

ol.indented {
    margin-left:2.5em;
    list-style-position: outside;
}
ul.indented {
    margin-left:1.5em;
}

table.data {
  font-size: 90%;
  border-bottom: 4px solid #888;
  border-right: 2px solid #888;
}
table.data th, table.data td {
  padding: 0.5em 0.8em;
  line-height: 1.15em;
  font-weight: 500;
}
table.data thead th, table.data tbody th {
  font-weight: bold;
  font-size: 110%;
  color: #fff !important;
}
table.data thead th {
  background-color: #0288D1;
  text-align: center;
  border-left: 1px solid #ccc;
}
table.data thead th:first {
border-left:none;
}
table.data tbody th {
  background-color: #B3E5FC;
  text-align: left;
  border-top: 1px solid #ccc;
  padding-left: 1em;
}
table.data th a {
  text-decoration: underline;
  border-bottom: 1px solid #03A9F4;
  cursor: pointer !important;
  color: #00f !important;
  font-weight:500;
}
table.data td {
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
blockquote {
  padding: 1em 1.5em;
  border-left: 3px solid #0288D1;
  background-color: #f3f3f3;
  color: #484848;
  border-top-right-radius: 7px;
  border-bottom-right-radius: 7px;
}
blockquote.msgbox {
  border: 1px solid #ff0;
}
blockquote.msg_warning {
  background-color: #FFDDCF;
  border-left-color: indianred;
}
.legal_doc {
background-color:#f3f3ef;
border:1px solid #ccc;
padding: 2.5em 3em;
}
.legal_doc h1,.legal_doc h2,.legal_doc h3,.legal_doc h4,.legal_doc h5,.legal_doc h6 {
color:#333;
} 
.legal_doc h1 {
font-size:40px;
font-weight:500;
}
.legal_doc h2 {
margin-top:1em;
margin-bottom:0.2em;
}
.legal_doc .dates {
  /*font-family:Courier New,Couries,monospace;*/
  font-family: var(--font_code);
  font-size:95%;
  line-height:1.4em;
  margin-bottom:1em;
}

