@charset "UTF-8";

/* ── CSS Variables ── */
:root {
  --primary: #f26722;
  --primary-hover: #ff8c19;
  --text: #111;
  --text-secondary: #292b2c;
  --muted: #6c757d;
  --link: #3c3cff;
  --link-hover: #663b00;
  --border: #f1f1f1;
  --border-dark: #dee2e6;
  --bg: #fff;
  --bg-alt: #f6f6f6;
  --bg-menu: #eee;
  --danger: #dc3545;
  --success: #5cb85c;
  --radius: 0.25rem;
  --shadow: 0 0 3px 1px #ddd;
}

/* ── Modern Reset ── */
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; }
h1, h2, h3, h4, h5, h6, p, ol, ul, dl, blockquote, pre, figure { margin: 0; }
ol, ul { padding: 0; list-style: none; }
img { display: block; max-width: 100%; }
input, button, select, textarea { font: inherit; }
a { text-decoration: none; }

/* ── Base ── */
html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: 'Open Sans', Helvetica, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--text);
  background-color: var(--bg);
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyBAMAAADsEZWCAAAAKlBMVEX////6+vr8/Pz39/f19fX7+/v5+fn////8/Pz5+fn29vby8vL09PT19fUY1xa3AAAAB3RSTlPw8PDw8OLifVLuiAAAAiBJREFUOMuF0rFuE0EQBuClQilJggipSAVtAFEjaKDkHXgAi+afM0IyNDPjUBAJaXfOSQGNb0+ioyAJ9AlvkDwNs8GJ18YSc1fczey3uyNNeP1s5/H65tNQxea9R7sbt4ORmJwwqmiymlnYEkofp6Aq0LPafngJlTMQFlAH+xzuNHEYsWjQin0Pax11oAXDGHb0NdzFmLFkmAyDsEUJtGzwdjoIN8U/lw1TGoUtL/xrQKNwH7zCMHy3lYZKhWiVoTf/N/5TXhJhXJpBMSUt2lsEJRFJJfHXuLLCztEmTaLl0CvTcNkmNdklg+cGSpOjw0xJ2ywmqRw0M0I/zWTM1kvbQStDvjbpOfVZjwCpTNOpZUvjrJOokSrTnGqfTFtujiWhrQwysqOex51Ic1r3M4yq2bvJIrI3rYxvN2zN9BvGWX6B54bKtHhE0bT3A8WMZqZMi1kSVvmNRQO/l/XR5zWiMrOWJucwZM/XxpFf+fLBsoFGUKSupGtT0DGIlUHLxpGAvLBsChLyFFemnhjwKsOlvNowL5lZA8XwzACXMyoitZmtcKNeUSaaG5E22yCslTmSWJmmDOm7T2E7tTmBcG2QHEkzCg+sT5qUrwwo6oldxPdhre20Z4rXhnjvzJJ8Cdt9mkTQ3EB9Ezks59gRmWeuTBmJ1uxDeIFJp9xM+doc+KU17YeOLkTkoDLDOHTUhlcbt9Z3dp6HKnZvPNy49eQPy11R+6mZe0IAAAAASUVORK5CYII=);
}

/* ── Typography ── */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: .5rem;
  font-weight: 500;
  line-height: 1.1;
}
h1, .h1 { font-size: 2.5rem; }
h2, .h2 { font-size: 2rem; }
h3, .h3 { font-size: 1.75rem; }
h4, .h4 { font-size: 1.5rem; }
h5, .h5 { font-size: 1.25rem; }
h6, .h6 { font-size: 1rem; }

p { margin-bottom: 1rem; }
b, strong, .b { font-weight: bolder; }
small, .text-small, .small { font-size: 80%; font-weight: 400; }
label { display: inline-block; margin-bottom: .5rem; }

a { color: var(--link); background-color: transparent; }
a:hover { text-decoration: underline; color: var(--link-hover); }
a:not([href]) { color: inherit; text-decoration: none; }
a:not([href]):hover { color: inherit; text-decoration: none; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0,0,0,0.1);
}

pre {
  margin-bottom: 1rem;
  overflow: auto;
  padding: 1rem;
  border: 1px solid #f2f2f2;
  border-radius: var(--radius);
  background-color: var(--bg-alt);
  box-shadow: var(--shadow);
}

blockquote {
  position: relative;
  margin-bottom: 1rem;
  border: 1px solid #adb5bd;
  border-left: .5rem solid #ccc;
  padding: 2rem 1rem;
  background: #f9f9f9;
  quotes: "\201C" "\201D";
  page-break-inside: avoid;
}
blockquote:before, blockquote:after {
  color: #7a7a7a;
  display: block;
  font-size: 4rem;
  position: absolute;
}
blockquote:before { content: open-quote; left: .5rem; top: -1rem; }
blockquote:after { content: close-quote; bottom: -3rem; right: .5rem; }
blockquote p:last-child { margin-bottom: 0; }

/* ── Lists ── */
ol, ul, dl { margin-bottom: 1rem; }
ol ol, ul ul, ol ul, ul ol { margin-bottom: 0; }

/* ── Images ── */
img { vertical-align: middle; }
.img-fluid { max-width: 100%; height: auto; }

/* ── Skip Link ── */
.skip-link {
  position: absolute;
  top: -100%;
  left: 0;
  background: var(--primary);
  color: #fff;
  padding: .5rem 1rem;
  z-index: 10000;
  transition: top .2s;
}
.skip-link:focus { top: 0; color: #fff; }

/* ── Grid ── */
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-12,
.col-md-3, .col-md-4, .col-md-6, .col-md-9 {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.col-3  { flex: 0 0 25%;        max-width: 25%; }
.col-4  { flex: 0 0 33.333333%; max-width: 33.333333%; }
.col-5  { flex: 0 0 41.666667%; max-width: 41.666667%; }
.col-6  { flex: 0 0 50%;        max-width: 50%; }
.col-7  { flex: 0 0 58.333333%; max-width: 58.333333%; }
.col-8  { flex: 0 0 66.666667%; max-width: 66.666667%; }
.col-9  { flex: 0 0 75%;        max-width: 75%; }
.col-12 { flex: 0 0 100%;       max-width: 100%; }

/* ── Tables ── */
.table {
  width: 100%;
  margin-bottom: 1rem;
  background-color: transparent;
}
.table th, .table td {
  padding: .75rem;
  vertical-align: top;
  border-top: 1px solid var(--border-dark);
}
.table thead th { vertical-align: bottom; border-bottom: 2px solid var(--border-dark); }
.table tbody + tbody { border-top: 2px solid var(--border-dark); }
.table .table { background-color: var(--bg); }
.table-hover tbody tr:hover { background-color: rgba(0,0,0,0.075); }
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* ── Forms ── */
input, button, select, textarea { line-height: inherit; }
button, select { text-transform: none; }
[role="button"], button:not(:disabled), [type="button"]:not(:disabled),
[type="reset"]:not(:disabled), [type="submit"]:not(:disabled) { cursor: pointer; }
textarea { overflow: auto; resize: vertical; }

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: .375rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: var(--bg);
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: var(--radius);
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.form-control:focus {
  color: #495057;
  background-color: var(--bg);
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 .2rem rgba(0,123,255,0.25);
}
.form-control::placeholder { color: var(--muted); opacity: 1; }
.form-control-lg {
  height: calc(2.875rem + 2px);
  padding: .5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: .3rem;
}
.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}
.form-control-file, .form-control-range { display: block; }
.form-group { margin-bottom: 1rem; }

/* ── Input Group ── */
.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  margin-bottom: 0;
}
.input-group-append { display: flex; margin-left: -1px; }
.input-group-append .btn { position: relative; z-index: 2; }
.input-group-append .btn:focus { z-index: 3; }
.input-group-append .btn + .btn { margin-left: -1px; }
.input-group > .form-control:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.input-group > .input-group-append > .btn { border-top-left-radius: 0; border-bottom-left-radius: 0; }

/* ── Buttons ── */
.btn {
  display: inline-block;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: .375rem .75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: var(--radius);
  transition: color .15s ease-in-out, background-color .15s ease-in-out,
              border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.btn:focus, .btn:hover { text-decoration: none; }
.btn:focus, .btn.focus { outline: 0; box-shadow: 0 0 0 .2rem rgba(0,123,255,0.25); }
.btn.disabled, .btn:disabled { opacity: .65; }
a.btn.disabled, fieldset[disabled] a.btn { pointer-events: none; }

.btn-primary { color: #fff; background-color: var(--primary); border-color: var(--primary); }
.btn-primary:hover { color: #fff; background-color: var(--primary-hover); border-color: var(--primary-hover); }
.btn-primary.disabled, .btn-primary:disabled { background-color: var(--primary); border-color: var(--primary); }

.btn-outline-secondary {
  color: var(--muted);
  background-color: transparent;
  border-color: var(--muted);
}
.btn-outline-secondary:hover { color: #fff; background-color: var(--muted); border-color: var(--muted); }
.btn-outline-secondary:focus { box-shadow: 0 0 0 .2rem rgba(108,117,125,0.5); }
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled { color: var(--muted); background-color: transparent; }
.btn-outline-secondary:not(:disabled):not(.disabled):active,
.btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle { color: #fff; background-color: var(--muted); border-color: var(--muted); }
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,
.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus { box-shadow: 0 0 0 .2rem rgba(108,117,125,0.5); }

.btn-lg { padding: .5rem 1rem; font-size: 1.25rem; line-height: 1.5; border-radius: .3rem; }
.btn-sm { padding: .25rem .5rem; font-size: .875rem; line-height: 1.5; border-radius: .2rem; }

/* ── Pagination ── */
.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: var(--radius);
}
.page-link {
  position: relative;
  display: block;
  padding: .5rem .75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: var(--primary);
  background-color: var(--bg);
  border: 1px solid var(--border-dark);
}
.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: var(--border-dark);
}
.page-link:focus { z-index: 3; outline: 0; box-shadow: 0 0 0 .2rem rgba(0,123,255,0.25); }
.page-item:first-child .page-link { margin-left: 0; border-top-left-radius: var(--radius); border-bottom-left-radius: var(--radius); }
.page-item:last-child .page-link { border-top-right-radius: var(--radius); border-bottom-right-radius: var(--radius); }
.page-item.active .page-link { z-index: 3; color: #fff; background-color: var(--primary); border-color: var(--primary); }
.page-item.disabled .page-link { color: var(--muted); pointer-events: none; background-color: var(--bg); border-color: var(--border-dark); }

/* ── Embed ── */
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
  margin-bottom: 1.5rem;
}
.embed-responsive::before { display: block; content: ""; }
.embed-responsive-16by9::before { padding-top: 56.25%; }
.embed-responsive .embed-responsive-item,
.embed-responsive iframe {
  position: absolute;
  top: 0; bottom: 0; left: 0;
  width: 100%; height: 100%;
  border: 0;
}

/* ── Site Header ── */
.site-header { min-height: 100px; background: var(--bg); }
.site-brand { padding: 4px 0 12px; }
.logo { font-size: 2.4rem; font-weight: 700; color: var(--primary); }
.logo img { display: inline-block; vertical-align: middle; margin-right: 4px; }
.arrow {
  border: solid var(--primary);
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 5px;
  margin-left: 3px;
  margin-bottom: 3px;
  transform: rotate(45deg);
}

/* ── Site Navigation ── */
.site-nav { min-height: 40px; color: var(--primary); background-color: var(--bg-menu); }
.site-nav a { color: var(--primary); }
.site-nav .nav-item:hover { background-color: var(--bg); }

.site-nav-inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.nav-toggle {
  padding: .25rem .5rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: var(--radius);
  cursor: pointer;
}
.nav-toggle:hover, .nav-toggle:focus { text-decoration: none; }
.nav-toggle-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background: no-repeat center center;
  background-size: 100% 100%;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0,0,0,1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.nav-menu {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex-grow: 1;
  align-items: stretch;
  padding: 1rem;
}

.nav-list {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link { display: block; padding: .5rem 0; }
.nav-link:hover, .nav-link:focus { text-decoration: none; }

.mr-auto { margin-right: auto; }

/* ── Nav Search ── */
.nav-search { padding-top: 1rem; }
.nav-search form { display: flex; align-items: center; }
.nav-search input[type=search],
.nav-search input[type=text] {
  padding: 7px;
  font-size: 16px;
  border: none;
  flex: 1;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyBAMAAADsEZWCAAAAKlBMVEX////6+vr8/Pz39/f19fX7+/v5+fn////8/Pz5+fn29vby8vL09PT19fUY1xa3AAAAB3RSTlPw8PDw8OLifVLuiAAAAiBJREFUOMuF0rFuE0EQBuClQilJggipSAVtAFEjaKDkHXgAi+afM0IyNDPjUBAJaXfOSQGNb0+ioyAJ9AlvkDwNs8GJ18YSc1fczey3uyNNeP1s5/H65tNQxea9R7sbt4ORmJwwqmiymlnYEkofp6Aq0LPafngJlTMQFlAH+xzuNHEYsWjQin0Pax11oAXDGHb0NdzFmLFkmAyDsEUJtGzwdjoIN8U/lw1TGoUtL/xrQKNwH7zCMHy3lYZKhWiVoTf/N/5TXhJhXJpBMSUt2lsEJRFJJfHXuLLCztEmTaLl0CvTcNkmNdklg+cGSpOjw0xJ2ywmqRw0M0I/zWTM1kvbQStDvjbpOfVZjwCpTNOpZUvjrJOokSrTnGqfTFtujiWhrQwysqOex51Ic1r3M4yq2bvJIrI3rYxvN2zN9BvGWX6B54bKtHhE0bT3A8WMZqZMi1kSVvmNRQO/l/XR5zWiMrOWJucwZM/XxpFf+fLBsoFGUKSupGtT0DGIlUHLxpGAvLBsChLyFFemnhjwKsOlvNowL5lZA8XwzACXMyoitZmtcKNeUSaaG5E22yCslTmSWJmmDOm7T2E7tTmBcG2QHEkzCg+sT5qUrwwo6oldxPdhre20Z4rXhnjvzJJ8Cdt9mkTQ3EB9Ezks59gRmWeuTBmJ1uxDeIFJp9xM+doc+KU17YeOLkTkoDLDOHTUhlcbt9Z3dp6HKnZvPNy49eQPy11R+6mZe0IAAAAASUVORK5CYII=);
}
.nav-search button[type=submit] {
  height: 38px;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  cursor: pointer;
}

/* ── Nav Dropdowns ── */
.nav-dropdown-trigger { cursor: pointer; }
.nav-dropdown { position: relative; display: inline-block; font-size: 1rem; }
.nav-dropdown-menu {
  display: none;
  padding: .5rem 0;
  position: absolute;
  background-color: #f1f1f1;
  width: 100%;
  box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2);
  z-index: 1;
}
.nav-dropdown-menu hr { margin: .5rem 0 .3rem; }
.nav-dropdown-menu a { color: #000; padding: 4px 0 1px 8px; text-decoration: none; display: block; }
.nav-dropdown-menu a:hover { background-color: #ddd; }
.nav-dropdown:hover .nav-dropdown-menu { display: block; }

/* ── Utilities ── */
.clearfix::after { display: block; clear: both; content: ""; }
.mt-2 { margin-top: .5rem; }
.mt-3 { margin-top: 1rem; }
.mt-4 { margin-top: 1.5rem; }
.pl-3 { padding-left: 1rem; }
.pr-2 { padding-right: .5rem; }
.mr-3 { margin-right: 1rem; }
.mx-auto { margin-right: auto; margin-left: auto; }
.px-3 { padding-left: 1rem; padding-right: 1rem; }
.py-4 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.text-truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-success { color: var(--success); }
.text-danger { color: var(--danger); }
.text-muted { color: var(--muted); }
.float-left { float: left; }
.float-right { float: right; }
.justify-content-center { justify-content: center; }
.no-display { display: none; }
[hidden] { display: none; }
[tabindex="-1"]:focus { outline: none; }

/* ── Container (also aliased as .box for backward compat) ── */
.container, .box {
  max-width: 1100px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* ── Page Layout ── */
.page-layout { margin-top: 1.5rem; }

.content-area, .sidebar { width: 100%; background-color: var(--bg); }
.content-area { padding: 12px; border: var(--border) 1px solid; }
.sidebar { margin-top: 3rem; }

/* ── Site Footer ── */
.site-footer {
  border: var(--border) 1px solid;
  background-color: var(--bg);
  margin-top: 1.5rem;
  padding: 1.5rem 0;
}
.footer-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
}
.footer-lang { font-size: 80%; }
.footer-lang a[aria-current="true"] { font-weight: 700; }

/* ── Article ── */
.article h2, .article h3, .article h4 { margin-top: 2rem; }
.article table td p:last-child { margin-bottom: 0; }
.article img { max-width: 100%; height: auto; }
.article ul, .article ol { padding-left: 2rem; }
.article ul ul, .article ol ol, .article ol ul, .article ul ol { padding-left: 1.25rem; }
.article li:not(:first-child), .article .toc_list li:first-child { padding-top: .35rem; }
.article .toc_list { margin: 0; }
.article .bd-callout a { word-break: normal; }

/* ── Calculator Forms ── */
.form-width { max-width: 600px; }
.height-200 { height: 200px; }
.calc-desc-p { font-size: 1.1rem; }

/* ── Tabs (BMI, waist ratio) ── */
.tab {
  display: flex;
  border-bottom: 1px solid #ccc;
  margin-bottom: 1rem;
}
.tablinks {
  padding: .75rem 1.25rem;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 1rem;
  border-bottom: 3px solid transparent;
  color: var(--muted);
  transition: color .2s, border-color .2s;
}
.tablinks:hover { color: var(--text); }
.tablinks.active {
  color: var(--primary);
  border-bottom-color: var(--primary);
  font-weight: 600;
}
.tabcontent { display: none; }
.tabcontent:first-of-type { display: block; }

/* ── Cards ── */
.card { padding-top: 2rem; }
.card-title { font-size: 1.5rem; }
.card-image { margin-left: -12px; margin-right: -12px; }
.card-cat { margin: .5rem 0 1rem; }
.card-body { margin-top: 1rem; }

/* ── Callouts ── */
.bd-callout {
  padding: 1rem;
  border: 1px solid #f2f2f2;
  border-radius: var(--radius);
}
.bd-callout-success, .bd-callout-warning {
  background-color: var(--bg-alt);
  box-shadow: var(--shadow);
}

/* ── Breadcrumb ── */
.breadcrumb {
  padding: 8px 12px;
  margin: 0 -12px 2rem;
  list-style: none;
  background-color: #eed;
}
.breadcrumb-item { display: inline; font-size: 18px; }
.breadcrumb li + li:before { padding: 8px; content: "\00BB\0020"; }

/* ── Blog Links ── */
.b-links ul { padding-left: 1.25rem; list-style-type: square; }
.b-links ul li { padding-top: .25rem; }
.b-links ul li a { color: var(--text); }

/* ── Figure ── */
figure { margin: 2rem -12px 0; text-align: center; }
figcaption { margin: .5rem 0 1.5rem; }

/* ── Loader ── */
.loader {
  border: 16px solid #f3f3f3;
  border-top: 16px solid #3498db;
  border-radius: 50%;
  width: 6rem;
  height: 6rem;
  animation: spin 2s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }

/* ── Fixed bar ── */
.fixed { position: fixed; top: 0; z-index: 99999; }

/* ── Comments ── */
.commentTable { width: 100%; background-color: transparent; padding: .2rem 0 0; }
.commentTable td { padding-top: .5rem; vertical-align: top; border-top: #bbb 1px dotted; }
.commentTable td:first-child { border: none; }
.commentTable td.imgWrap { width: 60px; padding-top: .8rem; }
.commentTable td p { margin-bottom: 0; }
.commentTable td p:last-child { margin-top: .5rem; }
#commentText { height: 120px; }
div.g-recaptcha { margin: 0 auto; width: 304px; }
.grecaptcha-badge { visibility: collapse; }

/* ── Rating ── */
#rating { height: 50px; width: 235px; cursor: pointer; }
#rating img { display: block; float: left; }

/* ── Ads ── */
.ad300x600 { width: 300px; height: 600px; }
.ad300x250 { width: 300px; height: 250px; }

/* ── Share ── */
.share-wrap { min-height: 60px; }
.share-wrap img, .cursor-pointer { cursor: pointer; }

/* ── Desktop (768px+) ── */
@media (min-width: 768px) {
  body { font-size: 1.1rem; }

  .col-md-3 { flex: 0 0 25%;        max-width: 25%; }
  .col-md-4 { flex: 0 0 33.333333%; max-width: 33.333333%; }
  .col-md-6 { flex: 0 0 50%;        max-width: 50%; }
  .col-md-9 { flex: 0 0 75%;        max-width: 75%; }

  /* Page layout */
  .page-layout { display: flex; align-items: stretch; gap: 1rem; }
  .content-area { flex: 1; min-height: 142px; }
  .sidebar { width: 300px; flex-shrink: 0; margin-top: 0; }

  /* Nav */
  .nav-search { padding-top: 0; }
  .nav-toggle { display: none; }

  .site-nav-inner { flex-flow: row nowrap; justify-content: flex-start; }
  .nav-list { flex-direction: row; }
  .nav-link { padding: 1rem; font-size: 1.5rem; }
  .nav-menu,
  .nav-menu.no-display {
    display: flex;
    flex-basis: auto;
    flex-direction: row;
    align-items: center;
    padding: 0;
  }
  .nav-list { margin-right: auto; }

  /* Cards */
  .card { padding: 3rem 1rem 1rem; }
  .card-title { font-size: 2.2rem; }
  .card-image { width: 49%; float: left; }
  .card-image img { border: #ccc 1px solid; }
  .card-body { margin-top: 0; width: 49%; float: right; }

  figure { margin: 2rem 0 0; }

  .sticky-ad { top: 1px; position: sticky; width: 300px; }

  .nav-dropdown-menu { width: 400px; }

  .bd-callout, .breadcrumb, blockquote { margin: 2rem 0; }

  .text-md-left { text-align: left; }
}

/* ── Tablet nav adjustment ── */
@media (min-width: 768px) and (max-width: 1100px) {
  .nav-link {
    padding: .5rem .6rem;
    font-size: 1.2rem;
  }
}
