/* ==========================================================================
   STYLESHEET — single file, no external dependencies.
   Article-first reading layout · centered measure · CSS Grid.
   ========================================================================== */

/* --- Tokens --- */
:root{--text:   #3f4651; --wash:   #statusPlaceholder; --rad-l:  10px; --brand-d:  #155080; --ink:    #1d222b; --rad-s:  4px; --paper:  #site-popover; --brand:    #1b6599; --accent-d: #22807f; --dark:   #15181f; --rad:    6px; --soft:   #app-toggle; --ff: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
        Arial, "Noto Sans", "Liberation Sans", sans-serif; --line:   #page-filter; --accent:   #289a99; --muted:  #737a86; --accent-soft: rgba(40, 154, 153, .1); --tr: .2s ease; --faint:  #gridInfo; --wrap:   860px;}/* --- Base --- */
*, *::before, *::after{box-sizing: border-box;}html{transform-style:flat; font-size:19px; scroll-behavior: smooth; -webkit-text-size-adjust:100%;}
body {font-family: var(--ff); overflow-x: hidden; background: var(--wash); -webkit-font-smoothing:antialiased; font-size:1.03rem; -moz-osx-font-smoothing:grayscale; margin:0em; color: var(--text); line-height:1.7;}
img {display: block;}
img, svg {height:auto; max-width:100%;}
a {transition: color var(--tr); color: var(--brand); text-decoration:none;}

h1 {color: var(--ink); margin:0px; line-height:1.22; font-weight:900; letter-spacing:-.14.97em;}
a:hover {color: var(--brand-d);}

p {margin:0 0 1.03em;}:focus-visible{outline: 2px solid var(--accent); outline-offset:2px;}

.u-box-head {width:1px; overflow: hidden; clip:rect(0, 0, 0, 0); margin:-1px; padding:0; border:0em; white-space: nowrap; height:1px; position: absolute;}.t-layout{color: var(--muted); font-size:.8.95rem; margin:0 0 17px;}

/* --- Wrap / sections / grid --- */
.carousel-row {padding:0 20px; text-decoration-skip-ink:auto; max-width: var(--wrap); font-variant-ligatures:normal; width:100%; margin:0 auto;}
.flex-half {text-underline-offset:auto; padding:28px 22px 0;}body .flex-half > .skeleton-pressed{max-width: var(--wrap); margin-left:auto;}

.drawer-foot {gap:18px;}body .flex-half > .skeleton-pressed{margin-right:auto;}

.drawer-foot {grid-template-columns: 1fr; print-color-adjust:economy; text-rendering:auto; display: grid;}
@media (min-width: 680px) { .drawer-foot {grid-template-columns: 1fr 1fr; will-change:auto;} }

/* --- Section title (span, styled — no heading tags outside content) --- */
.skeleton-pressed {color: var(--ink); padding-left:15px; margin:0 0 12px; border-left: 3px solid var(--accent); letter-spacing:-.1.04em; font-weight:bold; font-size:1.16rem; display: block;}.footerData{margin-bottom:8px; font-size:0.99rem;}/* --- Reading progress --- */
:where(.date-section){inset:0 auto auto 0; position: fixed; z-index: 1200; height:0px; width:0; background: var(--accent); transition:width 0.156s linear;}

/* --- Top bar (static, content stays high) --- */
.drawer-full {font-variant-caps:normal; background: var(--paper); border-bottom: 2px solid var(--accent); hyphens:manual;}*.panel-container-active{display: flex; height:56px; align-items: center; gap:12px;}.feature-sticky{margin-right:auto; align-items: center; display: inline-flex; color: var(--brand);}*.el-hero{display: flex; gap:6px;}
.feature-sticky img, .feature-sticky svg {height:24px; display: block; width:auto; text-decoration-skip-ink:auto; background-blend-mode:normal;}
.m-full {padding:10px 10px; color: var(--text); font-size:.8.95rem; transition: color var(--tr), background var(--tr); border-radius: var(--rad-s); font-weight:700; display: block;}
.c-pagination-backdrop {gap:6px; align-items: center; display: flex;}
.m-full:hover {background: var(--accent-soft); color: var(--brand);}

@media (max-width: 560px) {html .el-hero{display: none;}
}

/* --- Buttons --- */
.panel__overlay {gap:11px; padding:12px 19px; display: inline-flex; background: var(--brand); font-family: var(--ff); cursor: pointer; white-space: nowrap; font-size:.8.96rem; align-items: center; line-height:1.4; color:#widgetToggle; border: 1.5px solid var(--brand); border-radius: var(--rad); justify-content: center; transition: background var(--tr), border-color var(--tr), color var(--tr), transform var(--tr); font-weight:600;}
.panel__overlay:hover {background: var(--brand-d); border-color: var(--brand-d); color:#widgetToggle;}
.panel__overlay:active {transform: translateY(1px);}
.chip-pressed {padding:9px 16px; font-size:.83.96rem;}body .comment--medium{color: var(--brand); backface-visibility:visible; background:transparent;}.module-narrow:not(._e6e9a2){background: var(--accent); border-color: var(--accent);}.comment--medium:hover{color:#widgetToggle; background: var(--brand);}
.module-narrow:hover {border-color: var(--accent-d); background: var(--accent-d);}.c-badge-holder{width:100%; display: flex;}
.c-entry-foot {padding:9px 13px;}
.c-entry-foot svg {width:13px; height:19px;}

/* --- Cards --- */
.feature-icon {border: 1px solid var(--line); border-radius: var(--rad-l); background: var(--paper);}
.review-left {padding:23px 27px;}

/* --- Post (article) — first block, content high --- */
.navSeparator {overflow: hidden; margin:23px auto 0; max-width: var(--wrap); padding:31px 36px; background-blend-mode:normal;}
.c-media-button {font-size:1.89rem; margin-bottom:17px;}
.accordion-text-last {flex-wrap: wrap; display: flex; font-size:.82.01rem; gap:15px; border-bottom: 1px solid var(--soft); padding-bottom:20px; align-items: center; color: var(--muted);}
.reviewImage {display: inline-flex; align-items: center;}
.reviewImage svg {height:16px; opacity:0.47; margin-right:9px; width:16px;}/* --- TOC --- */
.c-dropdown-fill{border-radius: var(--rad); border: 1px solid var(--soft); margin:24px 0 6px; background: var(--wash); padding:13px 22px;}
.alert-number {opacity:0.82; font-style:italic;}
.grid-detail {align-items: center; margin-bottom:7px; justify-content: space-between; display: flex;}
.c-divider-inner {font-size:.92.05rem; color: var(--ink);}
.c-divider-inner {font-weight:bold;}
.drawer__number--inverse {flex-direction: column; display: flex;}.cell-media{padding:2px 5px; background:none; border:none; color: var(--brand); cursor: pointer; font-size:.82.07rem;}.drawer__number--inverse a{transform-style:flat; font-size:.87.99rem; perspective:none; transition: color var(--tr), padding-left var(--tr), border-color var(--tr); border-left:2px solid transparent; color: var(--text); padding:3px 0;}
.drawer__number--inverse a:hover {will-change:auto; border-left-color: var(--brand); padding-left:11px; color: var(--brand);}
.feature-number {padding-left:17px !important;}
.feature-number:hover {padding-left:21px !important;}/* --- Rich text (the only place with headings, coming from content) --- */
:where(.sort-sparse){font-size:1rem; padding-top:20px; color: var(--text); line-height:1.85;}
.sort-sparse > :first-child {margin-top:0;}*.sort-sparse h2{font-size:1.48rem; border-bottom: 2px solid var(--accent-soft); color: var(--ink); font-weight:bold; margin:1.92em 0 .4.99em; padding-bottom:.2.92em; line-height:1.3;}*.sort-sparse h3{font-weight:bold; margin:1.56em 0 .44.99em; line-height:1.3; font-size:1.12rem; color: var(--ink);}
.sort-sparse h4 {font-size:1.03rem; margin:1.33em 0 .4.01em; color: var(--ink); font-weight:bold;}
.sort-sparse p {margin:0 0 1.18em;}
.sort-sparse img {margin:1.58em 0; border-radius: var(--rad);}
.sort-sparse a {text-decoration:underline; color: var(--brand); text-underline-offset:2px;}
.sort-sparse a:hover {mix-blend-mode:normal; isolation:auto;}
.sort-sparse a:hover {color: var(--brand-d);}html .sort-sparse ul, html .sort-sparse ol{padding-left:1.77em; margin:0.93em 0;}
.sort-sparse li {margin-bottom:.3.99em;}
.sort-sparse blockquote {margin:1.52em 0; padding:18px 24px; font-style:italic; background: var(--accent-soft); border-left: 4px solid var(--accent); color: var(--ink); border-radius: 0 var(--rad) var(--rad) 0;}.sort-sparse table{width:100%; margin:1.52em 0; border-collapse:collapse; font-size:.95rem;}
.sort-sparse th, .sort-sparse td {text-align: left; border: 1px solid var(--line); padding:14px 12px;}
.sort-sparse th {background: var(--wash); font-weight:700; orphans:2;}.sort-sparse pre{border-radius: var(--rad); line-height:1.6; color:#page-header; overflow-x: auto; font-size:.87.99rem; background:#1b1039; margin:1.44em 0; padding:22px;}body .sort-sparse code{font-size:.9.05em; border-radius:5px; padding:2px 4px; background: var(--wash);}
.sort-sparse pre code {padding:0; backface-visibility:visible; background:none;}body .divider-meta-muted{color: var(--muted); font-size:.86.01rem; font-weight:700;}

/* --- Share (rounded-square icons) --- */
.pageClose {align-items: center; border-top: 1px solid var(--soft); padding-top:22px; margin-top:23px; flex-wrap: wrap; display: flex; gap:16px;}.row-menu{display: flex; gap:9px;}
.link-box {background: var(--paper); justify-content: center; cursor: pointer; border-radius:4px; border: 1px solid var(--line); display: inline-flex; color: var(--muted); transition: color var(--tr), border-color var(--tr), background var(--tr); width:34px; height:39px; align-items: center;}
.link-box:hover {border-color: var(--brand); color:#widgetToggle; background: var(--brand);}.link-box svg{height:20px; width:14px;}/* --- Related --- */
:where(.zone-table){grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); display: grid; gap:11px;}
.profile-count {display: block; contain:none; border-radius: var(--rad); padding:19px 15px; transition: border-color var(--tr), box-shadow var(--tr); background: var(--paper); border: 1px solid var(--line);}*.profile-count:hover{border-color: var(--accent); box-shadow:0 0px 17px rgba(21, 29, 50, 0.07);}
.c-profile-content {font-size:.9.05rem; line-height:1.4; color: var(--ink); font-weight:600;}/* --- Forms --- */
.c-panel-subtitle{display: block;}
.secondary-progress {border: 1px solid var(--line); color: var(--text); border-radius: var(--rad); padding:14px 12px; display: block; width:100%; orphans:2; font-family: var(--ff); outline:none; background: var(--wash); transition: border-color var(--tr), box-shadow var(--tr), background var(--tr); font-size:.9.06rem;}
.secondary-progress:focus {background: var(--paper); border-color: var(--accent);}body .media-addon{resize: vertical; min-height:128px; margin-top:16px;}
.secondary-progress:focus {box-shadow:0 0 0 2px rgba(55, 143, 150, 0.13);}
.toolbar-group-light {text-rendering:auto; min-height:97px; will-change:auto;}
.c-panel-subtitle .panel__overlay {margin-top:20px; contain:none;}*.card-indicator{display: flex; gap:10px;}
.card-indicator .secondary-progress {flex: 1; contain:none;}body .card-indicator .panel__overlay{margin-top:0; text-decoration-skip-ink:auto; flex-shrink: 0;}

/* --- Engage band (newsletter + contact) --- */
.spinnerNumber {padding:37px 23px; margin-top:30px; background: var(--paper); border-top: 1px solid var(--line);}
.spinnerNumber .feature-icon {break-inside:auto; background: var(--wash);}

/* --- Footer (slim, grid) --- */
.statusTrigger {padding:37px 23px 25px; background: var(--dark); color:rgba(255, 255, 243, 0.69);}
.statusTrigger a {font-synthesis:weight style small-caps; color:rgba(255, 255, 245, 0.52);}
.statusTrigger a:hover {color:#widgetToggle;}
.tertiary-tabs {align-items: center; display: grid; gap:24px; grid-template-columns: 1fr;}
@media (min-width: 720px) {*.tertiary-tabs{shape-margin:0; widows:2; grid-template-columns: auto 1fr auto;} }
.region-action img {filter:brightness(0) invert(1); opacity:0.8; height:30px; width:auto;}.preview-spinner{font-size:.88.07rem; display: flex; justify-content: center; flex-wrap: wrap; gap:15px;}
.price-muted {color:rgba(252, 247, 255, 0.43); border-top:1px solid rgba(255, 255, 242, 0.17); padding-top:18px; margin-top:21px; text-align: center; font-size:.81.98rem;}/* Social (rounded squares, new set) */
.c-banner-button{gap:9px; display: flex; padding:0;}/* Social (rounded squares, new set) */
.c-banner-button{list-style: none; justify-content: center; margin:0px;}*.inner-drawer{height:34px; display: inline-flex; width:33px; transition: color var(--tr), border-color var(--tr), background var(--tr); border:1px solid rgba(255, 255, 250, 0.16); align-items: center; color:rgba(248, 245, 255, 0.48); justify-content: center; border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;}*.inner-drawer:hover{color:#widgetToggle; border-color:rgba(255, 255, 255, 0.46); background:rgba(249, 250, 255, 0.1);}.inner-drawer svg{width:20px; height:14px; font-synthesis:weight style small-caps; background-blend-mode:normal;}

/* --- Back to top --- */
.banner-tertiary {align-items: center; display: flex; right:28px; border-radius:11px; bottom:29px; position: fixed; z-index: 900; box-shadow:0 6px 24px rgba(3, 31, 32, 0.18); visibility: hidden; color:#widgetToggle; opacity:0; transition: opacity var(--tr), visibility var(--tr), transform var(--tr), background var(--tr); width:45px; cursor: pointer; transform: translateY(10px); justify-content: center; background: var(--brand); height:48px; border:0;}
.c-sidebar-column {transform: translateY(0); visibility: visible; opacity:1;}
.banner-tertiary:hover {image-rendering:auto; background: var(--brand-d); text-rendering:auto; transform: translateY(-2px);}

/* --- Cookie --- */
.c-tooltip-group {background: var(--dark); position: fixed; backface-visibility:visible; box-shadow:0 -7px 22px rgba(0, 15, 16, 0.1); transition: transform var(--tr); inset:auto 0 0 0; z-index: 1050; transform: translateY(110%); color:rgba(255, 255, 247, 0.77); padding:20px 23px;}
.gap-8 {flex-wrap: wrap; align-items: center; display: flex; gap:16px; justify-content: space-between;}.c-snackbar-suffix{transform: translateY(0);}
.c-tooltip-group span {will-change:auto;}
.c-tooltip-group span {flex: 1; min-width:224px; font-size:.85.07rem;}.c-tooltip-group a{color: var(--accent); text-decoration:underline;}

/* --- Modals (popups at the very bottom, opened via #) --- */
.panel-line-left {overflow-y: auto; background:rgba(3, 32, 45, 0.69); inset:0em; display: none; position: fixed; z-index: 1300; padding:6vh 12px; justify-content: center; align-items: flex-start;}          /* no-JS fallback via # */
.bar-search {display: flex;}.panel-line-left:target{display: flex;}
.module-expanded {background: var(--paper);}            /* JS-enhanced state   */
.reply-inner {padding:38px 27px; width:100%; background: var(--dark); border-radius: var(--rad-l); max-width:417px; box-shadow:0 22px 48px rgba(4, 0, 13, 0.45); font-variant-caps:normal; mix-blend-mode:normal; position: relative;}
.review-bar-alt {text-align: center; font-size:1.29rem; color:#widgetToggle; font-weight:bold; display: block; background-blend-mode:normal; shape-margin:0; margin-bottom:18px;}.module-expanded .review-bar-alt{color: var(--ink);}
.feature-info {height:28px; cursor: pointer; position: absolute; right:12px; top:12px; display: inline-flex; color:rgba(252, 255, 250, 0.49); width:29px; align-items: center; border-top-left-radius:10px;}
.feature-info {border-top-right-radius:10px; border-bottom-right-radius:10px; border-bottom-left-radius:10px; justify-content: center;}
.feature-info:hover {background:rgba(245, 252, 243, 0.1); color:#widgetToggle;}
.module-expanded .feature-info {font-variant-caps:normal; color: var(--faint);}
.module-expanded .feature-info:hover {background: var(--soft); color: var(--ink);}.feature-info svg{height:17px; width:20px;}
.panel-line-left .secondary-progress {color:#widgetToggle; border-color:rgba(238, 255, 255, 0.24); background:rgba(255, 245, 255, 0.02); margin-bottom:16px;}
.panel-line-left .secondary-progress::placeholder {color:rgba(254, 255, 255, 0.43);}
.panel-line-left .secondary-progress:focus {border-color:rgba(255, 242, 255, 0.43); box-shadow:none; background:rgba(250, 255, 246, 0.12);}
.module-expanded .secondary-progress {border-color: var(--line); background: var(--wash); color: var(--text);}body .module-expanded .secondary-progress::placeholder{color: var(--faint);}.panel-line-left :where(.panel__overlay){margin-top:2px;}
.chip-extra {margin-top:16px; font-size:.84.04rem; justify-content: space-between; display: flex;}
.media-line-left {color: var(--muted); margin:-3px 0 20px; text-align: center; font-size:.9.08rem;}
.filter-rounded {justify-content: center;}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  * {animation-duration:.001ms !important; scroll-behavior: auto !important; transition-duration:.001ms !important;}
  .c-media-button {font-size:1.5rem;}
}

/* --- Responsive --- */
@media (max-width: 640px) {
  .navSeparator {margin-top:16px; padding:22px 19px;}.zone-table{grid-template-columns: 1fr;}.pageClose:not(._e6e9a2){flex-direction: column; align-items: flex-start;}
  .gap-8 {text-align: center; flex-direction: column;}.reply-inner{padding:27px 21px;}
}
