/* Font Size Switcher container */
#font-size-switcher {
  float: right;
  margin: 0;
  padding: 0;
  line-height: 1;
  display: flex;
  gap: 5px;
  background: transparent !important;
}

/* Buttons */
#font-size-switcher button {
  font-size: 0.85rem;      /* smaller size */
  padding: 0.15rem 0.4rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #f4f4f4;
  cursor: pointer;
}

#font-size-switcher button:hover {
  background: #ddd;
}

/* Inline placement after locator */
.out-fontsize {
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
}

/* Small (A−) */
/* Body text shrink (exclude headers) */
body.font-small p,
body.font-small li,
body.font-small td,
body.font-small span,
body.font-small a,
body.font-small code,
body.font-small div {
  font-size: 0.95rem !important;
  line-height: 1.15 !important;
}
/* Small (A−) */
/* Headers shrink slightly, just a little smaller than normal */
body.font-small h1 {  font-size: 1.7rem !important;  line-height: 1.2 !important; }
body.font-small h2 {  font-size: 1.6rem !important;  line-height: 1.2 !important; }
body.font-small h3 {  font-size: 1.5rem !important;  line-height: 1.2 !important; }
body.font-small h4 {  font-size: 1.4rem !important;  line-height: 1.2 !important; }
body.font-small h5 {  font-size: 1.35rem !important;  line-height: 1.2 !important; }
body.font-small h6 {  font-size: 1.3rem !important;  line-height: 1.2 !important; }

/* Normal (A) – base browser font (1rem) */

/* Large (A+) */
body.font-large p,
body.font-large li,
body.font-large td,
body.font-large span,
body.font-large a,
body.font-large code,
body.font-large div {
  font-size: 1.2rem !important;
  line-height: 1.4 !important;
}

/* Extra Large (A++) */
body.font-xlarge p,
body.font-xlarge li,
body.font-xlarge td,
body.font-xlarge span,
body.font-xlarge a,
body.font-xlarge code,
body.font-xlarge div {
  font-size: 1.4rem !important;
  line-height: 1.5 !important;
}
