

/* --- Base --- */
*, *::before, *::after {box-sizing: border-box;}/* ==========================================================================
   STYLESHEET — single file, no external dependencies.
   Article-first reading layout · centered measure · CSS Grid.
   ========================================================================== */

/* --- Tokens --- */
:root {--ff: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
        Arial, "Noto Sans", "Liberation Sans", sans-serif; --ink:    #1d222b; --faint:  #a2a8b2; --accent-d: #22807f; --brand:    #1b6599; --tr: .2s ease; --brand-d:  #155080; --paper:  #ffffff; --dark:   #15181f; --muted:  #737a86; --accent:   #289a99; --rad-l:  10px; --accent-soft: rgba(40, 154, 153, .1); --rad:    6px; --rad-s:  4px; --text:   #3f4651; --line:   #e4e7ec; --wrap:   860px; --wash:   #f5f6f9; --soft:   #eef1f5;}

html {font-size:17px; scroll-behavior: smooth; -webkit-text-size-adjust:100%;}
body {font-family: var(--ff); font-size:0.94rem; color: var(--text); margin:0; overflow-x: hidden; -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; background: var(--wash); line-height:1.7;}
img, svg {max-width:100%; height:auto;}
img {display: block;}
.skeleton-fill > overlay {width:auto; min-width:0; opacity:1}
a{color: var(--brand); transition: color var(--tr); text-decoration:none;}
a:hover {font-variant-ligatures:normal; color: var(--brand-d);}

p {margin:0 0 1.04em;}h1{font-weight:800; margin:0em; line-height:1.22; color: var(--ink); letter-spacing:-.14.95em;}:focus-visible{outline: 2px solid var(--accent); outline-offset:2px;}

.avatarOverlay {white-space: nowrap; clip:rect(0, 0, 0, 0); position: absolute; width:1px; overflow: hidden; height:1px; border:0rem;}
#reply-secondary {min-width:2px; padding-top:1.125rem}

.layoutExpand {margin:0 0 15px; font-size:.8.96rem; color: var(--muted);}

.avatarOverlay {margin:-1px; padding:0;}/* --- Wrap / sections / grid --- */
.progressInner{padding:0 20px; margin:0 auto; width:100%; max-width: var(--wrap);}
.featureData {padding:27px 19px 0;}

.timelineSpacer {gap:15px; display: grid; grid-template-columns: 1fr;}
.featureData > .alertInput {margin-left:auto; margin-right:auto; max-width: var(--wrap);}
.dropdown--fixed {margin:11px 41px; flex:1; border-radius:0}

@media (min-width: 680px) { .timelineSpacer {grid-template-columns: 1fr 1fr;} }

/* --- Section title (span, styled — no heading tags outside content) --- */
.alertInput {padding-left:16px; font-weight:bold; margin:0 0 20px; display: block; letter-spacing:-.0.99em; border-left: 3px solid var(--accent); color: var(--ink); font-size:1.23rem;}
.blockContainer {margin-bottom:12px; font-size:0.94rem;}

/* --- Reading progress --- */
.toolbarHead {width:0; inset:0 auto auto 0; position: fixed; z-index: 1200; height:4px; transition:width 0.115s linear; background: var(--accent);}

/* --- Top bar (static, content stays high) --- */
.widgetTime {border-bottom: 2px solid var(--accent); background: var(--paper); will-change:auto;}
.footerDetail {align-items: center; gap:18px; height:63px; display: flex;}
.section__head--primary {align-items: center; color: var(--brand); margin-right:auto; display: inline-flex;}
.section__head--primary img, .section__head--primary svg {width:auto; display: block; height:25px;}

.carouselImage {display: flex; gap:0px;}
.l-comment-block {padding-top:4px;padding-right:11px;padding-bottom:4px;padding-left:11px; transition: color var(--tr), background var(--tr); display: block; color: var(--text); border-radius: var(--rad-s); font-weight:600; font-size:.9.04rem;}.l-comment-block:hover{color: var(--brand); background: var(--accent-soft);}
.selectInput {gap:8px; display: flex; align-items: center;}

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

/* --- Buttons --- */
.nav__inner--alt {gap:7px; border-radius: var(--rad); color:#f4f4f8; display: inline-flex; transition: background var(--tr), border-color var(--tr), color var(--tr), transform var(--tr); align-items: center; font-family: var(--ff); background: var(--brand); border: 1.5px solid var(--brand); line-height:1.4; white-space: nowrap; padding:11px 21px; font-weight:600; cursor: pointer; justify-content: center; font-size:.8.97rem;}.nav__inner--alt:hover{border-color: var(--brand-d); color:#fffff0; background: var(--brand-d);}.nav__inner--alt:active{transform: translateY(1px);}
.postTrigger {font-size:.83.96rem; padding:8px 19px;}
.menuThumb {color: var(--brand); background:transparent;}
.menuThumb:hover {background: var(--brand); color:#edffee;}
.opacity-16 {border-color: var(--accent); background: var(--accent);}
.opacity-16:hover {background: var(--accent-d); border-color: var(--accent-d);}
.ratingPlaceholder {display: flex; width:100%;}
.sliderBackdrop {padding:11px 13px;}
.drawer-zone::before {content:''; width:auto}

.sliderBackdrop svg {width:12px; height:20px;}

/* --- Cards --- */
.spinnerInput {border-radius: var(--rad-l); border: 1px solid var(--line); background: var(--paper);}
.toolbarBackdrop {padding:22px 26px;}

/* --- Post (article) — first block, content high --- */
.priceBody {overflow: hidden; padding-top:32px;padding-right:36px;padding-bottom:32px;padding-left:36px; max-width: var(--wrap); margin:27px auto 0;}
.stepperHandle {margin-bottom:17px; transform-style:flat; font-size:1.86rem; isolation:auto;}html .actionSecondary{flex-wrap: wrap; align-items: center; color: var(--muted); font-synthesis:weight style small-caps; padding-bottom:18px; font-variant-ligatures:normal; gap:14px; font-size:.82.07rem; display: flex; border-bottom: 1px solid var(--soft);}
.reviewWrapper {align-items: center; display: inline-flex;}
.reviewWrapper svg {opacity:0.5; margin-right:6px; height:18px; width:12px;}
.breadcrumbBar {opacity:0.8; font-style:italic;}
.search-outer::before {content:''; height:auto; font-size:1.5rem; min-width:0}


/* --- TOC --- */
.spinnerLine {border-radius: var(--rad); margin:24px 0 8px; background: var(--wash); padding-top:14px;padding-right:21px;padding-bottom:14px;padding-left:21px; border: 1px solid var(--soft);}.dialogContainer{display: flex; margin-bottom:7px; justify-content: space-between; align-items: center;}html .heroBody{background:none;}.sectionOuter{font-size:.91.94rem; font-weight:700; color: var(--ink);}html .heroBody{font-size:.82.05rem; color: var(--brand); padding:2px 10px; cursor: pointer; border:none; word-spacing:normal;}body .tablePrefix{display: flex; flex-direction: column;}
.tablePrefix a {color: var(--text); border-left:2px solid transparent;}
.tablePrefix a {padding:4px 0; transition: color var(--tr), padding-left var(--tr), border-color var(--tr); font-size:.87.97rem;}
.tablePrefix a:hover {border-left-color: var(--brand); color: var(--brand); padding-left:10px;}
.separator-price {padding-left:18px !important;}
.progress-content:not(:last-child) {justify-content:center; display:inline-block; padding-left:1.25rem; margin-bottom:18px}

.separator-price:hover {padding-left:20px !important;}

/* --- Rich text (the only place with headings, coming from content) --- */
.footer-warning {color: var(--text); font-size:1.11rem; padding-top:28px; line-height:1.85;}.footer-warning > :first-child{margin-top:0;}
.footer-warning h2 {color: var(--ink); margin:1.91em 0 .5.03em; font-size:1.4rem; line-height:1.3; font-weight:bold; padding-bottom:.2.96em; border-bottom: 2px solid var(--accent-soft);}
.form-expand > line {transition:transform 0.4s ease-in-out; margin-bottom:0.25rem}

.footer-warning h3 {font-weight:bold; line-height:1.3; margin:1.55em 0 .44.92em; orphans:2; color: var(--ink); font-size:1.27rem;}
.footer-warning h4 {font-weight:bold; font-size:1.1rem; color: var(--ink);}
.footer-warning h4 {margin:1.31em 0 .3.93em;}.footer-warning p{margin:0 0 1.08em;}
.footer-warning img {margin:1.56em 0; border-radius: var(--rad);}
.footer-warning a {text-underline-offset:2px; color: var(--brand);}
.footer-warning a {text-decoration:underline;}.footer-warning a:hover{color: var(--brand-d);}
.footer-warning ul, .footer-warning ol {margin:1.01em 0; padding-left:1.68em;}
.footer-warning li {margin-bottom:.3.92em;}.footer-warning blockquote{border-radius: 0 var(--rad) var(--rad) 0; border-left: 4px solid var(--accent); font-style:italic; background: var(--accent-soft);}.footer-warning blockquote{margin:1.49em 0; padding:20px 21px; color: var(--ink);}
.footer-warning table {border-collapse:collapse; width:100%; margin:1.49em 0; print-color-adjust:economy; font-size:.95rem;}
.footer-warning th, .footer-warning td {print-color-adjust:economy; padding-top:6px;padding-right:18px;padding-bottom:6px;padding-left:18px; border: 1px solid var(--line); text-align: left;}
@media (min-width: 800px) and (max-width: 1151px) {
  #reply-secondary {border:none; position:relative; transition:all 0.2s ease; min-width:0; flex-wrap:nowrap; line-height:1}
  .drawer-zone::before {content:''; padding-right:0.625rem; height:3px; margin-right:41px; min-height:21px}
  .tag--left {box-shadow:none; flex-wrap:nowrap; color:inherit; align-items:baseline}
  .breadcrumb-name:not(:last-child) {text-align:right; position:static; margin-right:37px}
}


.footer-warning th {font-weight:bold; background: var(--wash);}
.footer-warning pre {font-size:.87.92rem; overflow-x: auto; margin:1.5em 0; border-radius: var(--rad); line-height:1.6; color:#c7e9eb; background-color:#11151e; padding:14px;}
.footer-warning code {padding:2px 7px; background: var(--wash); border-radius:0; font-size:.8.94em; word-spacing:normal;}html .footer-warning pre code{background:none; padding:0;}

/* --- Share (rounded-square icons) --- */
.overflow-1 {flex-wrap: wrap; align-items: center; margin-top:26px; display: flex; padding-top:24px; gap:14px; border-top: 1px solid var(--soft);}
.stepFoot {display: flex; gap:10px;}
.font-10 {font-size:.85.92rem; color: var(--muted); font-weight:600;}body .pagePrefix{color: var(--muted); background: var(--paper); height:39px; border-radius:10px; cursor: pointer; border: 1px solid var(--line); align-items: center; width:35px; justify-content: center; display: inline-flex; transition: color var(--tr), border-color var(--tr), background var(--tr);}
.pagePrefix:hover {background: var(--brand); border-color: var(--brand); color:hsl(99, 36.5%, 97.9%);}

/* --- Related --- */
.statusLink {grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap:14px;}
.pagePrefix svg {width:13px; height:19px;}

/* --- Related --- */
.statusLink {display: grid;}
.col-start {border-radius: var(--rad); transition: border-color var(--tr), box-shadow var(--tr); padding:16px 15px; border: 1px solid var(--line); background: var(--paper); display: block;}
.col-start:hover {box-shadow:0 2px 13px rgba(3, 11, 63, 0.09); border-color: var(--accent); tab-size:4;}*.dialogName{font-weight:600; font-size:.9.07rem; line-height:1.4; color: var(--ink);}/* --- Forms --- */
.drawerLabel{display: block;}
.sortAction {border-radius: var(--rad); display: block; width:100%; transition: border-color var(--tr), box-shadow var(--tr), background var(--tr); padding-top:13px;padding-right:17px;padding-bottom:13px;padding-left:17px; color: var(--text); outline:none; font-size:.8.98rem; orphans:2; font-family: var(--ff); border: 1px solid var(--line); background: var(--wash);}
.sortAction:focus {box-shadow:0 0 0 7px rgba(32, 146, 145, 0.2); background: var(--paper); border-color: var(--accent);}
.snackbarColumn {resize: vertical; min-height:128px; margin-top:17px;}
.counter--info {min-height:98px;}body .drawerLabel .nav__inner--alt{margin-top:13px; image-rendering:auto; break-inside:auto;}.priceMeta{display: flex; gap:8px;}
.priceMeta .sortAction {backface-visibility:visible; flex: 1;}body .priceMeta .nav__inner--alt{flex-shrink: 0; margin-top:0;}

/* --- Engage band (newsletter + contact) --- */
.galleryLink {background: var(--paper); margin-top:32px; padding-top:44px; padding-right:23px; padding-bottom:44px; padding-left:23px;}
.dialog-text + .thread-slot {display:inline-flex; padding:0.875rem; transition:all 0.4s ease}


/* --- Engage band (newsletter + contact) --- */
.galleryLink {border-top: 1px solid var(--line);}
.galleryLink .spinnerInput {background: var(--wash);}

/* --- Footer (slim, grid) --- */
.formPlaceholder {background: var(--dark); color:rgba(249, 255, 242, 0.67); padding:33px 17px 27px;}
.formPlaceholder a {color:rgba(255, 255, 251, 0.6); transform-style:flat; page-break-inside:auto;}
.formPlaceholder a:hover {color:#fff2ef;}
.mediaPrimary {display: grid; align-items: center; text-rendering:auto; grid-template-columns: 1fr; gap:18px;}
.tag--left {letter-spacing:0.05em; max-width:820px; line-height:1; transition:opacity 0.15s; margin-right:auto; width:920px}

@media (min-width: 720px) { .mediaPrimary {grid-template-columns: auto 1fr auto;} }
.breadcrumb-medium img {width:auto; opacity:0.87; height:23px; filter:brightness(0) invert(1);}
.avatarPrefix {flex-wrap: wrap; gap:18px; display: flex; font-size:.87.99rem; justify-content: center;}/* Social (rounded squares, new set) */
.tag{justify-content: center; list-style: none; padding:0; gap:5px; margin:0px; display: flex;}
.paginationTertiary {text-align: center; padding-top:19px; margin-top:25px; border-top:1px solid rgba(254, 255, 239, 0.17); font-size:.82.04rem; color:rgba(240, 255, 255, 0.52);}
.dividerData {justify-content: center; transition: color var(--tr), border-color var(--tr), background var(--tr); color:rgba(248, 255, 237, 0.62); border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px; height:32px; display: inline-flex; width:36px; border:1px solid rgba(255, 255, 252, 0.18); align-items: center;}.dividerData:hover{font-variant-caps:normal; background:rgba(245, 251, 254, 0.07);}.dividerData:hover{border-color:rgba(255, 255, 247, 0.38); contain:none; color:#f4f1ff;}
.dividerData svg {height:17px; width:17px;}

/* --- Back to top --- */
.accordionInfo {right:22px;}body .toolbarContent{opacity:1; visibility: visible; transform: translateY(0);}

/* --- Back to top --- */
.accordionInfo {backface-visibility:visible; border:none; background: var(--brand); border-radius:14px; transform: translateY(10px); cursor: pointer; color:#ffffff; position: fixed; height:40px; width:46px; z-index: 900; align-items: center; visibility: hidden; box-shadow:0 6px 23px rgba(13, 22, 59, 0.16); display: flex; transition: opacity var(--tr), visibility var(--tr), transform var(--tr), background var(--tr); justify-content: center; opacity:0; bottom:24px;}
.accordionInfo:hover {transform: translateY(-2px); background: var(--brand-d);}/* --- Cookie --- */
.postSeparator{mix-blend-mode:normal; inset:auto 0 0 0; background: var(--dark); z-index: 1050; transition: transform var(--tr); transform: translateY(110%); position: fixed; padding-top:15px;padding-right:22px;padding-bottom:15px;padding-left:22px; box-shadow:0 -3px 16px rgba(5, 0, 16, 0.2); color:rgba(240, 255, 239, 0.74);}.dialogTitle{gap:19px; flex-wrap: wrap; align-items: center; display: flex; justify-content: space-between;}
.skeletonOuter {transform: translateY(0);}
.postSeparator span {min-width:222px; font-size:.85.04rem; flex: 1;}
.postSeparator a {color: var(--accent); text-decoration:underline;}/* --- Modals (popups at the very bottom, opened via #) --- */
.featureSpacer{align-items: flex-start; position: fixed; overflow-y: auto; z-index: 1300; background:rgba(18, 5, 23, 0.65); display: none; justify-content: center; padding:6vh 19px; inset:0;}
.featureSpacer:target {display: flex;}          /* no-JS fallback via # */
.pageExtra {display: flex;}
.heroInput {background: var(--paper);}            /* JS-enhanced state   */
.dialogFoot {padding:36px 27px; border-radius: var(--rad-l); position: relative; box-shadow:0 14px 41px rgba(0, 10, 10, 0.35); width:100%; background: var(--dark); max-width:419px;}
.p-0 {perspective:none; font-weight:bold; margin-bottom:20px; display: block; text-align: center; font-size:1.33rem; font-synthesis:weight style small-caps; color:#f2ffff;}
.heroInput .p-0 {color: var(--ink);}.stepperDot{border-radius:6px;}.stepperDot{position: absolute; top:16px; right:12px; justify-content: center; align-items: center; color:rgba(255, 238, 250, 0.54); height:32px; cursor: pointer; width:27px; display: inline-flex;}
.stepperDot:hover {color:hsl(239, 100%, 99.9%); background:rgba(241, 247, 242, 0.14);}
.heroInput .stepperDot {color: var(--faint); tab-size:4;}*.heroInput .stepperDot:hover{background: var(--soft); color: var(--ink); contain:none;}
.stepperDot svg {font-variant-ligatures:normal; height:22px; width:18px;}
.featureSpacer .sortAction {margin-bottom:14px; border-color:rgba(243, 252, 240, 0.23);}
.featureSpacer .sortAction {color:#f6fafc; background:rgba(255, 241, 253, 0.06);}
.alert-text {padding-top:2rem; position:relative; background-color:#111111}

.featureSpacer .sortAction::placeholder {will-change:auto; color:rgba(255, 242, 255, 0.56);}
.featureSpacer .sortAction:focus {background:rgba(255, 255, 255, 0.08); border-color:rgba(253, 255, 237, 0.44);}
.featureSpacer .sortAction:focus {box-shadow:none;}
.heroInput .sortAction {color: var(--text); border-color: var(--line); background: var(--wash); text-underline-offset:auto;}
.featureSpacer .nav__inner--alt {margin-top:0px;}
#dropdown-icon {display:none; font-weight:700; color:#d03382; padding-bottom:0.375rem; position:static; flex-wrap:wrap}

.heroInput .sortAction::placeholder {color: var(--faint);}.stepCap:not(.null62){display: flex; margin-top:14px;}
.breadcrumb-name:not(:last-child) {align-items:flex-start; transition:color 0.2s; padding-left:16px; flex:1; width:1100px; position:absolute}
.screenWrap:not(.placeholder63){backface-visibility:visible; word-spacing:normal; justify-content: center;}.stepCap:not(.null62){justify-content: space-between; font-size:.83.96rem;}
.panelTrack {text-align: center; color: var(--muted); margin:-3px 0 20px; widows:2; text-rendering:auto; font-size:.8.92rem;}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  * {transition-duration:.001ms !important; scroll-behavior: auto !important; animation-duration:.001ms !important;}
  .priceBody {padding-right:22px; padding-bottom:23px; padding-left:22px;}
}

/* --- Responsive --- */
@media (max-width: 640px) {
  .priceBody {margin-top:14px; padding-top:23px;}
  .overflow-1 {flex-direction: column; align-items: flex-start;}.stepperHandle{font-size:1.49rem;}
  .statusLink {grid-template-columns: 1fr;}
  .dialogTitle {text-align: center; flex-direction: column;}.dialogFoot:not(.void12){padding-top:31px;padding-right:22px;padding-bottom:31px;padding-left:22px;}
}
