/* HEADINGS */
h1, h2, h3, h4, h5, h6{
    font-style: italic !important;
    text-transform: uppercase !important;
}

/* BUTTON 1 */
body .button-01 {
    border-radius: 3px;
    background-color: var(--button-color1);
    min-width: 150px;
    color: #FFF !important;
    font-family: var(--family2);
    font-weight: 400;
    padding-bottom: 2px;
}
body .button-01, body .button-01:link, body .button-01:active, body .button-01:visited {
    color: #FFF !important;
    transition: color ease-in 300ms, background-color ease-in 300ms;
}
body .button-01:hover {
    background-color: var(--button-hover-color1);
    text-decoration: none !important;
}
body .btn-color1.button-01 {
    background-color: var(--button-color1);
}
body .btn-color1.button-01:hover {
    background-color: var(--button-hover-color1);
}
body .btn-color2.button-01 {
    background-color: var(--button-color2);
}
body .btn-color2.button-01:hover {
    background-color: var(--button-hover-color2);
}
body .btn-color3.button-01 {
    background-color: var(--button-color3);
}
body .btn-color3.button-01:hover {
    background-color: var(--button-hover-color3);
}
body .btn-color4.button-01 {
    background-color: var(--button-color4);
}
body .btn-color4.button-01, body .btn-color4.button-01:link, body .btn-color4.button-01:active, body .btn-color4.button-01:visited {
    color: #272727;
    transition: color ease-in 300ms, background-color ease-in 300ms;
}
body .btn-color4.button-01:hover {
    background-color: var(--button-hover-color4);
}
body .btn-color5.button-01 {
    background-color: var(--button-color5);
}
body .btn-color5.button-01, body .btn-color5.button-01:link, body .btn-color5.button-01:active, body .btn-color5.button-01:visited {
    color: var(--accent-color);
}
body .btn-color5.button-01:hover {
    background-color: var(--button-hover-color5);
}
body .btn-color6.button-01 {
    background-image: linear-gradient(to right, var(--accent-color), var(--accent-color2));
    transition: all ease-in 300ms;
}
body .btn-color6.button-01:hover {
    filter: brightness(120%);
}

/* REMOVE MARGIN ON TITLES */
.title-01 {
    margin: 0 0 0px !important;
}

/* Banner Border */
.education-banner-text::before {
    border-top: 26px solid #da2e29 !important;
    border-bottom: 50px solid #da2e29 !important;
}
.education-banner-text::after {
    border: 5px solid #da2e29 !important;
    border-right: 0px !important;
}




/* =========================================================
   PTC SERVICE-AREA HUB PAGES (GLOBAL)
   Usage: wrap each page in <div class="ptc-loc"> ... </div>
   ========================================================= */

.ptc-loc{
  --ptc-ink:#111827;
  --ptc-muted:#6b7280;
  --ptc-border:rgba(17,24,39,.10);
  --ptc-soft:#f6f7f9;
  --ptc-red:#c81e1e;
  --ptc-red2:#a81515;
  --ptc-dark:#0f172a;

  color:var(--ptc-ink);
}

/* Links scoped to location pages only */
.ptc-loc a{color:var(--ptc-red); text-decoration:none;}
.ptc-loc a:hover{color:var(--ptc-red2); text-decoration:underline; text-decoration-color:rgba(200,30,30,.35);}

/* Spacing */
.ptc-loc .ptc-sec{padding:3.25rem 0;}
.ptc-loc .ptc-sec--soft{background:var(--ptc-soft);}
@media (max-width:991.98px){
  .ptc-loc .ptc-sec{padding:2.5rem 0;}
}

/* Typography */
.ptc-loc h1,.ptc-loc h2,.ptc-loc h3{color:var(--ptc-ink); letter-spacing:-.01em;}
.ptc-loc h1{font-weight:900; line-height:1.08; margin:0 0 .75rem;}
.ptc-loc h2{font-weight:900; line-height:1.12; margin:0 0 .75rem;}
.ptc-loc h3{font-weight:900; line-height:1.2; margin:0 0 .5rem;}

.ptc-loc .ptc-eyebrow{
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.8rem;
  color:var(--ptc-muted);
  margin:0 0 .5rem;
}

.ptc-loc .ptc-lead{
  font-size:1.05rem;
  color:#374151;
  max-width:78ch;
  margin:0 0 1rem;
}

.ptc-loc .ptc-mini{
  color:var(--ptc-muted);
  font-size:.95rem;
  margin:0;
}

/* Cards / wrappers */
.ptc-loc .ptc-card{
  border:1px solid var(--ptc-border);
  border-radius:18px;
  background:#fff;
  padding:1.6rem;
  height:100%;
}

.ptc-loc .ptc-wrap{
  border:1px solid var(--ptc-border);
  border-radius:18px;
  background:#fff;
  padding:1.8rem;
}

.ptc-loc .ptc-card p,
.ptc-loc .ptc-wrap p{margin:0 0 1rem;}

/* Image framing */
.ptc-loc .ptc-imgwrap{
  border:1px solid var(--ptc-border);
  border-radius:18px;
  background:#fff;
  padding:.6rem;
}
.ptc-loc img.ptc-img{
  width:100%;
  height:auto;
  border-radius:14px;
  display:block;
}

/* Pill badges */
.ptc-loc .ptc-kv{display:flex; flex-wrap:wrap; gap:.5rem; margin:1rem 0 0;}
.ptc-loc .ptc-kv span{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.5rem .75rem;
  border-radius:999px;
  border:1px solid var(--ptc-border);
  background:#fff;
  font-weight:900;
  font-size:.92rem;
  color:#374151;
}
.ptc-loc .ptc-kv i{color:var(--ptc-red);}

/* Lists */
.ptc-loc .ptc-list{margin:0; padding-left:1.1rem;}
.ptc-loc .ptc-list li{margin:.4rem 0; color:#374151;}

/* Nearby chips */
.ptc-loc .ptc-links{display:flex; flex-wrap:wrap; gap:.5rem;}
.ptc-loc .ptc-chip{
  display:inline-flex;
  align-items:center;
  padding:.5rem .75rem;
  border-radius:999px;
  border:1px solid var(--ptc-border);
  background:#fff;
  text-decoration:none;
  color:var(--ptc-ink);
  font-weight:900;
}
.ptc-loc .ptc-chip:hover{opacity:.92;}

/* Buttons: custom classes to avoid theme/Bootstrap conflicts */
.ptc-loc .ptc-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  border-radius:14px;
  font-weight:900;
  padding:.8rem 1rem;
  text-decoration:none;
  line-height:1;
  white-space:nowrap;
  border:1px solid transparent;
}
.ptc-loc .ptc-btn.w-100{white-space:normal;}

.ptc-loc .ptc-btn-primary{
  background:var(--ptc-red);
  border-color:var(--ptc-red);
  color:#fff !important;
}
.ptc-loc .ptc-btn-primary:hover{
  background:var(--ptc-red2);
  border-color:var(--ptc-red2);
  color:#fff !important;
}

.ptc-loc .ptc-btn-outline{
  background:#fff;
  border-color:rgba(17,24,39,.22);
  color:var(--ptc-ink) !important;
}
.ptc-loc .ptc-btn-outline:hover{
  border-color:rgba(17,24,39,.38);
  color:var(--ptc-ink) !important;
}

.ptc-loc .ptc-btn-dark{
  background:var(--ptc-dark);
  border-color:var(--ptc-dark);
  color:#fff !important;
}
.ptc-loc .ptc-btn-dark:hover{opacity:.92; color:#fff !important;}

.ptc-loc .ptc-btn-light{
  background:#fff;
  border-color:rgba(255,255,255,.85);
  color:#111827 !important;
}
.ptc-loc .ptc-btn-light:hover{opacity:.96; color:#111827 !important;}

.ptc-loc .ptc-btn-outline-light{
  background:transparent;
  border-color:rgba(255,255,255,.70);
  color:#fff !important;
}
.ptc-loc .ptc-btn-outline-light:hover{
  background:rgba(255,255,255,.10);
  color:#fff !important;
}

/* Accordion: prevent Bootstrap primary blue bleed */
.ptc-loc .accordion-item{
  border:1px solid var(--ptc-border) !important;
  border-radius:18px !important;
  overflow:hidden;
  margin-bottom:.75rem;
  background:#fff;
}
.ptc-loc .accordion-button{
  font-weight:900 !important;
  color:var(--ptc-ink) !important;
  background:#fff !important;
  padding:1rem 1.1rem;
}
.ptc-loc .accordion-button:focus{
  border-color:var(--ptc-border) !important;
  box-shadow:none !important;
}
.ptc-loc .accordion-button:not(.collapsed){
  color:var(--ptc-ink) !important;
  background:rgba(200,30,30,.06) !important;
  box-shadow:none !important;
}
.ptc-loc .accordion-button::after{
  filter:grayscale(1);
  opacity:.75;
}
.ptc-loc .accordion-body{
  color:#374151;
  padding:1rem 1.1rem;
}

/* Bottom CTA block */
.ptc-loc .ptc-cta{
  background:#111827;
  color:#fff;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  padding:1.6rem;
}
.ptc-loc .ptc-cta h2,
.ptc-loc .ptc-cta p{color:#fff; margin:0;}
.ptc-loc .ptc-cta p{opacity:.92;}
.ptc-loc .ptc-cta a:not(.ptc-btn){
  color:#fff;
  text-decoration:underline;
  text-decoration-color:rgba(255,255,255,.35);
}
.ptc-loc .ptc-cta a:not(.ptc-btn):hover{opacity:.92;}

/* Mobile: buttons full width */
@media (max-width:991.98px){
  .ptc-loc .ptc-btn{width:100%;}
}

