/* Compact cookie bar on mobile so it does not cover the lead form */
@media (max-width: 767px) {
  .cookie-consent.cookie-consent-full-width { padding: 8px 10px !important; }
  .cookie-consent-full-width .cookie-consent-body { padding: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important; flex-wrap: nowrap !important; }
  .cookie-consent__message { font-size: 11px !important; line-height: 1.3 !important; text-align: left !important; }
  .cookie-consent__agree { flex: 0 0 auto !important; white-space: nowrap !important; margin: 0 !important; }
}
/* Inner-page heading: theme ships 48px uppercase, too shouty for a page title */
.section--page-banner .banner__title.page__title {
  font-size: 32px !important;
  line-height: 1.25 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
@media (max-width: 767px) {
  .section--page-banner .banner__title.page__title { font-size: 24px !important; }
}

/* ---- Home page blocks (services / process / principles) ---- */
.pc-section{padding:56px 0;}
.pc-section .pc-eyebrow,.pc-section .pc-h2,.pc-section .pc-lead,.pc-svc-list,.pc-steps,.pc-prin-list{max-width:1180px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px;}
.pc-eyebrow{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#0e3ab0;font-weight:600;margin-bottom:10px;}
.pc-h2{font-size:34px;line-height:1.2;font-weight:700;margin:0 0 12px;color:#12151c;}
.pc-lead{font-size:16px;line-height:1.6;color:#5a6272;margin:0 0 28px;max-width:640px;}
.pc-svc-list{display:flex;flex-direction:column;gap:16px;margin-top:24px;}
.pc-svc{display:flex;align-items:flex-start;gap:20px;background:#fff;border:1px solid #e6e9ef;border-left:4px solid #0e3ab0;border-radius:12px;padding:24px 26px;}
.pc-svc__num{font-size:20px;font-weight:700;color:#b9c0cf;flex:0 0 auto;min-width:34px;}
.pc-svc__body{flex:1 1 auto;min-width:0;}
.pc-svc__title{font-size:21px;font-weight:700;margin:0 0 8px;color:#12151c;}
.pc-svc__desc{font-size:15px;line-height:1.6;color:#5a6272;margin:0 0 14px;max-width:720px;}
.pc-svc__tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;}
.pc-svc__tags li.pc-tag{display:inline-block;font-size:13px;color:#3a4152;background:#f1f3f7;border-radius:999px;padding:6px 12px;list-style:none;margin:0;}
.pc-svc__tags li.pc-tag::marker{content:"";}
.pc-svc__more{flex:0 0 auto;align-self:center;}
.pc-svc__more a{font-size:15px;font-weight:600;color:#0e3ab0;text-decoration:none;border-bottom:1px solid currentColor;white-space:nowrap;}
.pc-section--process{background:#0e2a4d;}
.pc-section--process .pc-eyebrow{color:#ffd24a;}
.pc-section--process .pc-h2{color:#fff;}
.pc-section--process .pc-lead{color:#b9c6d8;}
.pc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:12px;}
.pc-step__num{width:38px;height:38px;border-radius:50%;border:1px solid #ffd24a;color:#ffd24a;display:flex;align-items:center;justify-content:center;font-size:15px;margin-bottom:16px;}
.pc-step__title{font-size:17px;font-weight:700;margin:0 0 8px;color:#fff;}
.pc-step__desc{font-size:14px;line-height:1.6;color:#b9c6d8;margin:0;}
.pc-prin-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:24px;}
.pc-prin{background:#f6f7fa;border:1px solid #e6e9ef;border-radius:12px;padding:24px;}
.pc-prin__title{font-size:18px;font-weight:700;margin:0 0 10px;color:#12151c;}
.pc-prin__desc{font-size:14px;line-height:1.6;color:#5a6272;margin:0;}
@media(max-width:900px){.pc-steps{grid-template-columns:repeat(2,1fr);}.pc-prin-list{grid-template-columns:1fr;}}
@media(max-width:767px){.pc-section{padding:40px 0;}.pc-h2{font-size:25px;}.pc-svc{flex-direction:column;gap:12px;padding:20px;}.pc-svc__more{align-self:flex-start;}.pc-steps{grid-template-columns:1fr;gap:22px;}}
/* ---- Service page content (unclassed tags only, so home page blocks are untouched) ---- */
.ck-content h2:not([class]) { font-size: 30px; line-height: 1.22; font-weight: 700; margin: 38px 0 14px; letter-spacing: -0.01em; }
.ck-content h3:not([class]) { font-size: 20px; line-height: 1.32; font-weight: 700; margin: 26px 0 8px; }
.ck-content p:not([class]) { font-size: 16.5px; line-height: 1.7; margin: 0 0 14px; }
.ck-content ul:not([class]), .ck-content ol:not([class]) { margin: 0 0 18px; padding-left: 22px; }
.ck-content li:not([class]) { font-size: 16.5px; line-height: 1.7; margin-bottom: 8px; }
.ck-content blockquote { background: #F6F8FC; border: 1px solid #E6EAF1; border-radius: 12px; padding: 24px 28px; margin: 0 0 24px; font-style: normal; quotes: none; }
.ck-content blockquote::before, .ck-content blockquote::after { content: none; }
.ck-content blockquote p:last-child, .ck-content blockquote ul:last-child { margin-bottom: 0; }
@media (max-width: 767px) {
  .ck-content h2:not([class]) { font-size: 24px; margin: 30px 0 12px; }
  .ck-content h3:not([class]) { font-size: 18px; }
  .ck-content p:not([class]), .ck-content li:not([class]) { font-size: 16px; }
  .ck-content blockquote { padding: 20px; }
}
/* ---- Articles block on the home page ---- */
.pc-section--articles { background: #F6F8FC; }
.pc-art-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 24px; }
.pc-art { background: #FFFFFF; border: 1px solid #E6EAF1; border-radius: 12px; padding: 26px; display: flex; flex-direction: column; gap: 12px; }
.pc-art__cat { align-self: flex-start; font-size: 12px; font-weight: 700; color: #0530AD; background: #EEF3FE; border-radius: 999px; padding: 6px 12px; }
.pc-art__title { font-size: 19px; line-height: 1.32; font-weight: 700; margin: 0; color: #101828; }
.pc-art__desc { font-size: 14.5px; line-height: 1.6; color: #5A6474; margin: 0; }
.pc-art__more { margin-top: auto; }
.pc-art__more a { font-size: 14.5px; font-weight: 700; color: #0530AD; text-decoration: none; }
.pc-art-all { max-width: 1180px; margin: 24px auto 0; padding: 0 20px; }
.pc-art-all a { font-size: 15px; font-weight: 700; color: #0530AD; text-decoration: none; border-bottom: 1px solid currentColor; }
@media (max-width: 900px) { .pc-art-list { grid-template-columns: 1fr; } }

/* Footer nav overflowed on narrow desktops */
.footer__nav ul { flex-wrap: wrap; max-width: 100%; padding-left: 0; list-style: none; }
/* ================= TRUST STRIP (home) ================= */
.pc-trust { padding: 32px 0 8px; }
.pc-trust__row { max-width: 1180px; margin: 0 auto; padding: 0 20px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid #E6EAF1; border-radius: 14px; overflow: hidden; background: #fff; }
.pc-trust__item { display: flex; align-items: center; gap: 13px; padding: 22px 24px; border-right: 1px solid #E6EAF1; }
.pc-trust__item:last-child { border-right: 0; }
.pc-trust__item svg { flex: 0 0 auto; }
.pc-trust__t { font-size: 15.5px; font-weight: 700; color: #101828; }
.pc-trust__d { font-size: 13px; color: #7A8496; margin-top: 2px; }
@media (max-width: 900px) {
  .pc-trust__row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pc-trust__item:nth-child(2) { border-right: 0; }
  .pc-trust__item:nth-child(-n+2) { border-bottom: 1px solid #E6EAF1; }
}
@media (max-width: 560px) {
  .pc-trust__row { grid-template-columns: 1fr; }
  .pc-trust__item { border-right: 0; border-bottom: 1px solid #E6EAF1; }
  .pc-trust__item:last-child { border-bottom: 0; }
}

/* ================= SERVICE PAGE CONTENT ================= */
.ck-content h2:not([class]) { position: relative; padding-top: 16px; }
.ck-content h2:not([class])::before { content: ""; position: absolute; top: 0; left: 0; width: 34px; height: 3px; border-radius: 2px; background: linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); }
.ck-content ul:not([class]) { list-style: none; padding-left: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ck-content ul:not([class]) li { position: relative; background: #F6F8FC; border: 1px solid #E6EAF1; border-radius: 10px; padding: 16px 18px 16px 46px; margin: 0; font-size: 15.5px; line-height: 1.55; }
.ck-content ul:not([class]) li::before { content: ""; position: absolute; left: 18px; top: 20px; width: 14px; height: 8px; border-left: 2px solid #0530AD; border-bottom: 2px solid #0530AD; transform: rotate(-45deg); }
.ck-content ol:not([class]) { list-style: none; padding-left: 0; counter-reset: pcstep; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ck-content ol:not([class]) li { counter-increment: pcstep; position: relative; background: #FFFFFF; border: 1px solid #E6EAF1; border-radius: 12px; padding: 20px 22px 20px 62px; margin: 0; }
.ck-content ol:not([class]) li::before { content: counter(pcstep); position: absolute; left: 20px; top: 18px; width: 28px; height: 28px; border-radius: 50%; background: #0530AD; color: #fff; font-size: 13px; font-weight: 800; display: flex; align-items: center; justify-content: center; }
.ck-content blockquote.pc-legal { background: linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); border: 0; border-radius: 14px; padding: 28px 32px; }
.ck-content blockquote.pc-legal p, .ck-content blockquote.pc-legal li { color: #FFFFFF; }
.ck-content blockquote.pc-legal ul { list-style: none; padding-left: 0; display: block; }
.ck-content blockquote.pc-legal ul li { background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.3); border-radius: 10px; color: #FFFFFF; padding: 13px 16px 13px 44px; margin-bottom: 8px; }
.ck-content blockquote.pc-legal ul li::before { border-color: #FFFFFF; top: 17px; left: 16px; }
@media (max-width: 767px) {
  .ck-content ul:not([class]), .ck-content ol:not([class]) { grid-template-columns: 1fr; }
  .ck-content blockquote.pc-legal { padding: 22px; }
}
/* — paragraphs that open with a bold lead become cards — */
.ck-content p:not([class]):has(> strong:first-child) { background: #FFFFFF; border: 1px solid #E6EAF1; border-radius: 12px; padding: 20px 22px; margin: 0 0 12px; }
.ck-content p:not([class]):has(> strong:first-child) > strong { display: block; margin-bottom: 6px; font-size: 17px; color: #101828; }
.ck-content blockquote p:has(> strong:first-child) { background: transparent; border: 0; padding: 0; }

/* — FAQ questions — */
.ck-content h3:not([class]) { padding: 18px 22px 0; background: #F6F8FC; border: 1px solid #E6EAF1; border-bottom: 0; border-radius: 12px 12px 0 0; margin-bottom: 0; }
.ck-content h3:not([class]) + p:not([class]) { background: #F6F8FC; border: 1px solid #E6EAF1; border-top: 0; border-radius: 0 0 12px 12px; padding: 8px 22px 20px; margin: 0 0 12px; }

/* ================= STICKY CALL BAR (mobile) ================= */
.pc-callbar { display: none; }
@media (max-width: 767px) {
  .pc-callbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 10px; padding: 10px 14px 14px; background: #FFFFFF; border-top: 1px solid #E6EAF1; box-shadow: 0 -8px 24px rgba(11,27,58,.1); }
  .pc-callbar a { display: flex; align-items: center; justify-content: center; height: 50px; border-radius: 8px; text-decoration: none; font-size: 15.5px; font-weight: 700; }
  .pc-callbar__tel { border: 1px solid #0530AD; }
  .pc-callbar__cta { background: #0530AD; color: #FFFFFF; }
  body { padding-bottom: 78px; }
}

/* cookie sits above the call bar on phones */
@media (max-width: 767px) {
  .cookie-consent.cookie-consent-full-width { bottom: 74px; }
}
/* ================= BLOG FIXES ================= */
/* the page banner already shows the title — drop the duplicate H1 */
.post__title.pc-dup { display: none; }
/* admin account name should not be the public byline */
.post__meta .post-author { display: none; }
/* posts have no cover images: the placeholder block is hidden by JS,
   this keeps the layout tidy while it loads */
.post__thumbnail.pc-empty { display: none; }
.post__horizontal.pc-nothumb .post__content, .post.pc-nothumb .post__content { width: 100%; max-width: 100%; float: none; padding-left: 0; }
.post.pc-nothumb { display: block; }
/* cards without a cover: the theme paints text white for dark images */
.post.pc-nothumb { background: #FFFFFF; border: 1px solid #E6EAF1; border-radius: 14px; padding: 26px 28px; margin-bottom: 18px; }
.post.pc-nothumb .post__title { font-size: 22px; line-height: 1.32; margin: 0 0 10px; }
.post.pc-nothumb .post__title a { color: #101828; text-decoration: none; }
.post.pc-nothumb .post__title a:hover { color: #0530AD; }
.post.pc-nothumb .post__meta, .post.pc-nothumb .post__meta * { color: #7A8496; font-size: 13.5px; }
.post.pc-nothumb .post__meta svg { stroke: #7A8496; }
.post.pc-nothumb .post__description, .post.pc-nothumb .post__excerpt, .post.pc-nothumb .post__content-wrap p { color: #5A6474; font-size: 15.5px; line-height: 1.6; }
.post.pc-nothumb .post__content-wrap a:not(.btn) { color: #0530AD; }
/* ================= CONTACTS ================= */
.pc-cont { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.pc-cont__card { border: 1px solid #E6EAF1; border-radius: 14px; padding: 26px 28px; }
.pc-cont__lbl { font-size: 12px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; color: #0530AD; margin-bottom: 18px; }
.pc-cont__row { display: flex; align-items: flex-start; gap: 13px; margin-bottom: 14px; }
.pc-cont__row svg { flex: 0 0 auto; margin-top: 3px; }
.pc-cont__row:last-child { margin-bottom: 0; }
.pc-cont__tel { font-size: 19px; font-weight: 800; letter-spacing: -0.01em; color: #101828; text-decoration: none; }
.pc-cont__tel:hover { color: #0530AD; }
.pc-cont__sub { font-size: 13px; color: #8A93A5; margin-top: 2px; }
.pc-cont__addr { font-size: 15.5px; line-height: 1.55; color: #3D4757; }
.pc-cont__day { display: flex; align-items: center; justify-content: space-between; padding: 11px 0; border-bottom: 1px solid #EEF1F6; font-size: 15px; color: #3D4757; }
.pc-cont__day:last-child { border-bottom: 0; }
.pc-cont__day b { color: #101828; }
.pc-cont__off { color: #8A93A5 !important; }
@media (max-width: 900px) { .pc-cont { grid-template-columns: 1fr; } }
/* ================= BRAND GRADIENT PASS ================= */
/* header: gradient strip on top and a gradient rule underneath */
.header { position: relative; }
.header::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); z-index: 2; }
.header::after { content: ""; position: absolute; bottom: 0; left: 0; right: 0; height: 2px; background: linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); z-index: 2; }

/* process block moves from flat navy to the brand gradient */
.pc-section--process { background: linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%) !important; }
.pc-section--process .pc-eyebrow { color: #FFFFFF !important; }
.pc-section--process .pc-h2 { color: #FFFFFF !important; }
.pc-section--process .pc-lead { color: #FFFFFF !important; }
.pc-section--process .pc-step { background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28); border-radius: 12px; padding: 24px; }
.pc-section--process .pc-step__num { width: 34px; height: 34px; border: 0; border-radius: 50%; background: #FFFFFF; color: #0530AD; font-size: 14px; font-weight: 800; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.pc-section--process .pc-step__title { color: #FFFFFF !important; }
.pc-section--process .pc-step__desc { color: #FFFFFF !important; }
.pc-section--process .pc-steps { gap: 22px; }
/* ================= GRADIENT HIGHLIGHT ON CARDS ================= */
.pc-svc, .pc-art, .pc-prin { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; border: 2px solid #E6EAF1; }
.pc-svc:hover, .pc-art:hover, .pc-prin:hover,
.pc-svc.is-active, .pc-art.is-active, .pc-prin.is-active {
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(6,18,45,.14);
  border-color: transparent;
  background-origin: border-box;
  background-clip: padding-box, border-box;
}
.pc-svc:hover, .pc-svc.is-active, .pc-art:hover, .pc-art.is-active {
  background-image: linear-gradient(#FFFFFF, #FFFFFF), linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%);
}
.pc-prin:hover, .pc-prin.is-active {
  background-image: linear-gradient(#F6F8FC, #F6F8FC), linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%);
}
.pc-svc:hover .pc-svc__num, .pc-svc.is-active .pc-svc__num { color: #0530AD; }
@media (hover: none) {
  .pc-svc:active, .pc-art:active, .pc-prin:active { border-color: transparent; background-origin: border-box; background-clip: padding-box, border-box; }
  .pc-svc:active, .pc-art:active { background-image: linear-gradient(#FFFFFF, #FFFFFF), linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); }
  .pc-prin:active { background-image: linear-gradient(#F6F8FC, #F6F8FC), linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); }
}
/* ================= CTA BANDS ================= */
.pc-cta { border-radius: 16px; padding: 40px 44px; display: flex; align-items: center; justify-content: space-between; gap: 40px; margin: 8px 0 32px; }
.pc-cta--grad { background: linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); }
.pc-cta--light { background: #F6F8FC; border: 1px solid #E6EAF1; }
.pc-cta__h { font-size: 28px; line-height: 1.18; font-weight: 800; margin: 0 0 8px; letter-spacing: -0.01em; }
.pc-cta--grad .pc-cta__h { color: #FFFFFF; }
.pc-cta__p { font-size: 16.5px; line-height: 1.6; margin: 0; max-width: 62ch; }
.pc-cta--grad .pc-cta__p { color: #FFFFFF; }
.pc-cta--light .pc-cta__p { color: #5A6474; }
.pc-cta__side { display: flex; flex-direction: column; align-items: stretch; gap: 12px; flex: 0 0 auto; }
.pc-cta__btn { display: block; text-align: center; font-size: 16px; font-weight: 700; padding: 17px 32px; border-radius: 8px; text-decoration: none; white-space: nowrap; }
.pc-cta--grad .pc-cta__btn { background: #FFFFFF; color: #0530AD; }
.pc-cta--light .pc-cta__btn { background: #0530AD; color: #FFFFFF; }
.pc-cta__tel { text-align: center; font-size: 16px; font-weight: 800; text-decoration: none; }
.pc-cta--grad .pc-cta__tel { color: #FFFFFF; }
.pc-cta--light .pc-cta__tel { color: #101828; }
@media (max-width: 767px) { .pc-cta { flex-direction: column; align-items: stretch; padding: 26px 22px; gap: 20px; } .pc-cta__h { font-size: 23px; } }

/* home FAQ block */
.pc-faq { background: #FFFFFF; }
.pc-faq .pc-h2 { margin-bottom: 18px; }
/* ================= FAQ ACCORDION ================= */
.ck-content h3.pc-q { position: relative; cursor: pointer; user-select: none; background: #F6F8FC; border: 1px solid #E6EAF1; border-radius: 12px; padding: 18px 56px 18px 22px; margin: 0 0 10px; font-size: 18px; line-height: 1.4; transition: background .18s ease, border-color .18s ease; }
.ck-content h3.pc-q:hover { border-color: #C7D6F5; background: #EEF3FE; }
.ck-content h3.pc-q::after { content: ""; position: absolute; right: 24px; top: 50%; width: 9px; height: 9px; border-right: 2px solid #0530AD; border-bottom: 2px solid #0530AD; transform: translateY(-70%) rotate(45deg); transition: transform .22s ease; }
.ck-content h3.pc-q.pc-open { border-radius: 12px 12px 0 0; border-bottom-color: transparent; margin-bottom: 0; background: #EEF3FE; }
.ck-content h3.pc-q.pc-open::after { transform: translateY(-20%) rotate(-135deg); }
.ck-content p.pc-a { background: #EEF3FE; border: 1px solid #E6EAF1; border-top: 0; border-radius: 0 0 12px 12px; margin: 0 0 10px; padding: 0 22px; max-height: 0; overflow: hidden; opacity: 0; transition: max-height .26s ease, opacity .2s ease, padding .26s ease; }
.ck-content p.pc-a.pc-open { max-height: 460px; opacity: 1; padding: 2px 22px 20px; }

/* ================= BLOG META ================= */
.post__meta .created_at { display: none; }
.post__meta .post-category a { color: #0530AD; text-decoration: none; font-weight: 600; }
.post.pc-nothumb .post__meta { margin-top: 4px; }
.post__meta .post-category svg { width: 16px; height: 16px; stroke: #0530AD; fill: none; }
/* ================= ARTICLE FOOTER ================= */
.created_at { display: none !important; }
.new-item-shar { margin: 30px 0 10px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.new-item-shar > span { font-size: 14px; font-weight: 600; color: #5A6474; }
.bb-social-sharing { list-style: none; margin: 0; padding: 0; display: flex; gap: 8px; }
.bb-social-sharing__item { margin: 0; }
.bb-social-sharing__item a { width: 40px; height: 40px; border: 1px solid #DDE2EB; border-radius: 8px; display: flex; align-items: center; justify-content: center; color: #0530AD; }
.bb-social-sharing__item a:hover { border-color: #0530AD; background: #EEF3FE; }
.bb-social-sharing__item svg { width: 18px; height: 18px; }
.relate__title { font-size: 22px; font-weight: 800; letter-spacing: -0.01em; margin: 34px 0 16px; }

/* ================= SERVICE CARD: COLLAPSIBLE TAGS ================= */
.pc-svc__tags { transition: max-height .26s ease, opacity .2s ease, margin .26s ease; }
.pc-svc__tags.pc-tags-collapsed { max-height: 0; overflow: hidden; opacity: 0; margin: 0; }
.pc-svc__tags.pc-tags-open { max-height: 240px; opacity: 1; margin-top: 12px; }
.pc-more-btn { background: none; border: 0; padding: 0; margin-top: 8px; font-family: inherit; font-size: 14px; font-weight: 700; color: #0530AD; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; }
.pc-more-btn::after { content: ""; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .2s ease; }
.pc-more-btn.pc-open::after { transform: rotate(-135deg) translateY(1px); }
/* ================= ARTICLE FOOTER, TAKE 2 ================= */
/* theme paints body links white for dark covers — restore them */
.ck-content p:not([class]) a, .ck-content li:not([class]) a, .ck-content blockquote a { color: #0530AD; text-decoration: none; border-bottom: 1px solid rgba(5,48,173,.35); }
.ck-content p:not([class]) a:hover, .ck-content li:not([class]) a:hover { border-bottom-color: #0530AD; }
/* social sharing is not wanted */
.new-item-shar { display: none !important; }
/* dates off everywhere */
.post__created-at, .created_at { display: none !important; }
/* related posts */
.post__relate-group { margin-top: 6px; }
.post__relate-group .relate__title { font-size: 22px; font-weight: 800; letter-spacing: -0.01em; margin: 30px 0 14px; }
.post--related { background: #FFFFFF; border: 1px solid #E6EAF1; border-radius: 14px; padding: 22px 24px; margin-bottom: 14px; }
.post--related .post__title { font-size: 18px; line-height: 1.35; margin: 0; }
.post--related .post__title a { color: #101828; text-decoration: none; }
.post--related .post__title a:hover { color: #0530AD; }
.post--related .post__meta { margin-top: 6px; }
/* related card title is a plain , not .post__title */
.post--related .post__header p { margin: 0; }
.post--related .post__header p a { color: #101828; text-decoration: none; font-size: 18px; line-height: 1.35; font-weight: 700; }
.post--related .post__header p a:hover { color: #0530AD; }
.post--related { padding: 20px 24px; }
/* ================= FOOTER FOUR COLUMNS ================= */
.pc-foot { display: grid; grid-template-columns: 320px repeat(3, minmax(0, 1fr)); gap: 40px; width: 100%; }
.pc-foot__brand .footer__logo { display: inline-block; margin-bottom: 16px; }
.pc-foot__brand .footer__logo img { width: auto; height: 56px; }
.pc-foot__about { font-size: 14.5px; line-height: 1.6; color: #FFFFFF; margin: 0 0 18px; max-width: 34ch; }
.pc-foot__lbl { font-size: 12px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; color: #FFFFFF; margin-bottom: 16px; }
.pc-foot__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 11px; }
.pc-foot__list a { font-size: 14.5px; color: #FFFFFF; text-decoration: none; }
.pc-foot__list a:hover { text-decoration: underline; }
.pc-foot__tel { display: block; font-size: 18px; font-weight: 800; color: #FFFFFF; text-decoration: none; margin-bottom: 10px; }
.pc-foot__mail { display: block; font-size: 14.5px; color: #FFFFFF; text-decoration: none; margin-bottom: 12px; }
.pc-foot__addr { font-size: 14.5px; line-height: 1.55; color: #FFFFFF; margin-bottom: 12px; }
.pc-foot__hours { font-size: 13.5px; line-height: 1.55; color: #FFFFFF; }
.pc-foot .footer__social { display: flex; gap: 8px; }
@media (max-width: 1100px) { .pc-foot { grid-template-columns: 1fr 1fr; gap: 32px; } }
@media (max-width: 640px) { .pc-foot { grid-template-columns: 1fr; gap: 28px; } }
/* home FAQ section width */
.pc-section--faq { background: #F6F8FC; }
.pc-section--faq h3, .pc-section--faq p { max-width: 1180px; margin-left: auto; margin-right: auto; }
.pc-section--faq h3.pc-q { background: #FFFFFF; }
.pc-section--faq p.pc-a { background: #FFFFFF; }

/* ================= MODAL FORM ================= */
.pc-modal { position: fixed; inset: 0; z-index: 200; display: none; align-items: center; justify-content: center; padding: 20px; }
.pc-modal.is-open { display: flex; }
.pc-modal__dim { position: absolute; inset: 0; background: rgba(9,22,48,.62); }
.pc-modal__box { position: relative; width: 100%; max-width: 460px; background: #FFFFFF; border-radius: 14px; box-shadow: 0 26px 70px rgba(6,18,45,.4); overflow: hidden; max-height: 92vh; overflow-y: auto; }
.pc-modal__bar { height: 5px; background: linear-gradient(79deg, rgba(5,48,173,1) 0%, rgba(24,119,242,1) 39%, rgba(255,199,44,1) 84%); }
.pc-modal__in { padding: 26px 30px 28px; }
.pc-modal__h { font-size: 23px; font-weight: 800; letter-spacing: -0.01em; margin: 0 0 6px; padding-right: 36px; color: #101828; }
.pc-modal__p { font-size: 14.5px; line-height: 1.55; color: #5A6474; margin: 0 0 16px; }
.pc-modal__x { position: absolute; top: 16px; right: 18px; width: 34px; height: 34px; border: 0; background: none; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 8px; }
.pc-modal__x:hover { background: #F1F4F9; }
.pc-modal__x::before, .pc-modal__x::after { content: ""; position: absolute; width: 17px; height: 2px; background: #98A1B1; border-radius: 2px; }
.pc-modal__x::before { transform: rotate(45deg); }
.pc-modal__x::after { transform: rotate(-45deg); }
.pc-modal .form__footer { margin-top: 12px; }
.pc-modal .banner__form { display: block; }
.pc-modal .input { display: block; margin-bottom: 10px; }
.pc-modal .input__cell { width: 100%; }
.pc-modal .btn { width: 100%; }
.pc-modal__note { font-size: 11.5px; line-height: 1.5; color: #98A1B1; margin-top: 12px; }
body.pc-modal-open { overflow: hidden; }
/* pc-foot mobile tuning */
@media (max-width: 640px) {
  .pc-foot__brand .footer__logo img { height: 48px; }
  .pc-foot__about { max-width: none; }
  .pc-foot .footer__social { flex-wrap: wrap; }
  .pc-foot__lbl { margin-bottom: 12px; }
  .pc-foot__list { gap: 9px; }
}