@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;src:url('./assets/fonts/manrope-variable.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400 700;font-display:swap;src:url('./assets/fonts/source-sans-3-variable.woff2') format('woff2')}
/* Approved visual system, refined typography and quiet contact masthead. */
.coi-ultra{font-family:'Source Sans 3','Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.coi-ultra h1,.coi-ultra h2,.coi-ultra h3,.coi-ultra summary{font-family:'Manrope','Segoe UI',sans-serif;font-weight:700;letter-spacing:-.035em}
.coi-ultra .coi-title{font-family:'Manrope','Segoe UI',sans-serif;font-weight:800;line-height:1.04;letter-spacing:-.055em}
.coi-ultra .coi-h2{font-weight:700;line-height:1.15;letter-spacing:-.04em}
.coi-ultra p,.coi-ultra li,.coi-lead,.coi-subtitle,.coi-feature p,.coi-check span,.coi-service p,.coi-testimonial p,.coi-side-card p{font-weight:400;letter-spacing:0}
.coi-ultra p{line-height:1.8}.coi-subtitle{font-size:19px;line-height:1.85}.coi-ultra .coi-lead{font-size:18px;line-height:1.8}
.coi-ultra .coi-card p,.coi-ultra .coi-grid-card p,.coi-ultra .coi-policy-box p,.coi-ultra .coi-panel p{font-size:17px;line-height:1.85}
.coi-ultra .coi-pill{font-family:'Manrope',sans-serif;font-weight:600;font-size:10px;letter-spacing:.16em;box-shadow:none}
.coi-ultra .coi-nav a{font-family:'Manrope',sans-serif;font-weight:600;font-size:13px;letter-spacing:0;box-shadow:none;border-color:#e1e8ec;transition:color .18s,background .18s}
.coi-ultra .coi-policy-row{font-weight:400;font-size:13px;letter-spacing:.01em}.coi-ultra .coi-policy-row a{font-weight:400}
.coi-ultra .coi-btn,.coi-ultra .coi-btn-light,.coi-ultra .coi-btn-cta{font-family:'Manrope',sans-serif;font-weight:600;font-size:13px;letter-spacing:.005em;box-shadow:none;transition:background .18s,color .18s}
.coi-ultra .coi-btn:hover,.coi-ultra .coi-btn-light:hover{transform:none}
.coi-ultra .coi-header-top{grid-template-columns:minmax(0,1fr) 290px;align-items:center;gap:30px}
.coi-ultra .coi-contact-stack{display:flex;flex-direction:column;gap:0;padding:2px 0 2px 27px;border-left:1px solid #dce6eb;align-self:stretch;justify-content:center}
.coi-contact-row{padding:16px 0;border-bottom:1px solid #e5ecef;min-width:0}.coi-contact-row:first-child{padding-top:0}.coi-contact-row:last-child{padding-bottom:0;border-bottom:0}
.coi-contact-label{font-family:'Manrope',sans-serif;display:block;font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#748896;margin:0 0 7px}
.coi-ultra .coi-contact-stack a{display:inline-block;background:none;border:0;border-radius:0;box-shadow:none;text-align:left;min-height:0;padding:0;font-family:'Source Sans 3',sans-serif;font-size:17px;font-weight:500;line-height:1.45;color:#143149;overflow-wrap:anywhere;text-decoration:none;transition:color .18s}
.coi-ultra .coi-contact-stack a:hover{color:#245f7a;text-decoration:underline;text-underline-offset:4px;transform:none}
.coi-ultra .coi-contact-stack .coi-phone{font-family:'Manrope',sans-serif;font-size:21px;font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.coi-contact-stack address{font-style:normal;font-size:16px;line-height:1.55;font-weight:400;color:#405d70;letter-spacing:0}
.coi-ultra .coi-feature h3,.coi-ultra .coi-person strong{font-family:'Manrope',sans-serif;font-weight:700}.coi-person span{font-weight:400}.coi-ultra .coi-service h3{font-size:23px;line-height:1.3}.coi-footer-box{font-weight:400;line-height:1.7}.coi-contact-item strong{font-weight:600}.coi-contact-item a,.coi-contact-item span{font-weight:400}.coi-check strong{font-family:'Manrope',sans-serif;font-size:16px;font-weight:600}.coi-interior .coi-title{font-size:clamp(36px,4.1vw,60px);line-height:1.12}
@media(max-width:1100px) and (min-width:901px){.coi-ultra .coi-header-top{grid-template-columns:minmax(0,1fr) 250px;gap:22px}.coi-ultra .coi-contact-stack{padding-left:22px}.coi-ultra .coi-contact-stack a{font-size:15px}.coi-contact-stack address{font-size:15px}}
@media(max-width:900px){.coi-ultra .coi-header-top{grid-template-columns:1fr;gap:20px}.coi-ultra .coi-contact-stack{display:grid;grid-template-columns:1fr 1.5fr 1.5fr;border-left:0;border-top:1px solid #e1e8ec;padding:20px 0 0;gap:20px;align-items:start}.coi-contact-row,.coi-contact-row:first-child,.coi-contact-row:last-child{padding:0;border-bottom:0}.coi-ultra .coi-contact-stack .coi-phone{font-size:17px}.coi-ultra .coi-contact-stack a{font-size:15px}.coi-contact-stack address{font-size:14px}.coi-contact-label{font-size:8px;letter-spacing:.13em}.coi-ultra .coi-title{line-height:1.09}}
@media(max-width:560px){.coi-ultra .coi-contact-stack{grid-template-columns:1fr 1fr;gap:20px 14px;padding:18px 4px 2px}.coi-contact-row:last-child{grid-column:1/-1;padding-top:15px;border-top:1px solid #e5ecef}.coi-ultra .coi-contact-stack a{font-size:14px}.coi-ultra .coi-contact-stack .coi-phone{font-size:16px}.coi-contact-stack address{font-size:14px;line-height:1.6}.coi-ultra .coi-contact-stack .coi-email{overflow-wrap:anywhere}.coi-ultra .coi-nav a{font-size:11px;padding:11px 12px}.coi-ultra .coi-policy-row{font-size:11px}.coi-ultra .coi-title{font-size:clamp(37px,10.8vw,56px);line-height:1.1}.coi-ultra .coi-interior .coi-title{font-size:36px;line-height:1.15}.coi-ultra .coi-h2{font-size:29px;line-height:1.22}.coi-ultra .coi-card p,.coi-ultra .coi-grid-card p,.coi-ultra .coi-policy-box p,.coi-ultra .coi-panel p{font-size:16px;line-height:1.8}.coi-ultra .coi-lead{font-size:17px}.coi-ultra .coi-subtitle{font-size:17px;line-height:1.8}}
