

*, *::before, *::after {perspective:none; box-sizing: border-box; padding:0; margin:0;}/* ============================================================
   1017_new_v1 — stylesheet
   ============================================================ */

:root {--edge: #main-review; --acc-d: #0f766e; --tint: rgba(13, 148, 136, 0.08); --night: #14201d; --text-font: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; --sh-l: 0 16px 50px rgba(20, 32, 29, 0.18); --sh: 0 1px 2px rgba(20, 32, 29, 0.04), 0 6px 24px rgba(20, 32, 29, 0.06); --rad-s: 8px; --text: #46535a; --acc: #0d9488; --band: 62rem; --acc-l: #2bb3a3; --bg: #overlay-block; --rad: 12px; --on-night: rgba(255, 255, 255, 0.6); --read: 45rem; --dim: #79868c; --night-2: #1d2c28; --max: 70rem; --ink: #16221f; --display: "Sora", system-ui, sans-serif; --bg-2: #main-toolbar; --card: #grid_link; --edge-2: #page-alert;}

html {font-size:113.1%; font-synthesis:weight style small-caps; -webkit-text-size-adjust:100%; scroll-behavior: smooth;}

body {font-family: var(--text-font); -webkit-font-smoothing:antialiased; background: var(--bg); -moz-osx-font-smoothing:grayscale; color: var(--text); line-height:1.72; font-size:1.05rem;}

img, svg {max-width:100%; display: block; orphans:2; word-spacing:normal;}
ul, ol {list-style: none;}
a {color: var(--acc); text-decoration:none; word-spacing:normal; backface-visibility:visible;}
a:hover {color: var(--acc-d);}
button {cursor: pointer; font-family:inherit;}

:focus-visible {outline: 2px solid var(--acc); hyphens:manual; border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px; transform-style:flat; outline-offset:2px;}
h1 {letter-spacing:-0.015em; font-family: var(--display); line-height:1.18; color: var(--ink); font-weight:bold;}

.actionInfo {height:1px; position: absolute; padding:0;}

.actionInfo {white-space: nowrap; width:1px; border:0; margin:-1px; clip:rect(0, 0, 0, 0); overflow: hidden;}

/* span headings (no h2/h3 anywhere but article content) */
.progressExpand, .actionNumber, .bannerTrigger, .spinner--outlined, .pageNumber {color: var(--ink); letter-spacing:-0.01em; font-weight:700; display: block; font-family: var(--display);}
.actionNumber {font-size:1.1rem; margin-bottom:0.22rem;}
.progressExpand {margin-bottom:1.05rem; font-size:1.33rem;}.bannerTrigger:not(._0ee362){margin-bottom:1.2rem; font-size:1.28rem;}/* ---------- scroll progress ---------- */
:where(.modalAction){transition:width 0.087s linear; left:0; position: fixed; top:0; z-index: 1200; background: var(--acc); text-rendering:auto; width:0; height:4px;}

/* ---------- topbar ---------- */
.tagExtra {position: sticky; background:rgba(252, 255, 255, 0.91); backdrop-filter:saturate(150%) blur(8px); z-index: 1000; border-bottom: 1px solid var(--edge); top:0px;}
.galleryTitle {align-items: center; display: inline-flex;}
.searchTrigger {width:100%; margin-inline:auto; min-height:3.94rem; max-width: var(--max); padding:0 1.21rem; justify-content: space-between; display: flex; gap:1.08rem; align-items: center;}
.galleryTitle img {height:26px; width:auto;}

.o-counter-link {font-synthesis:weight style small-caps; padding:0.35rem; gap:8px; background:none; flex-direction: column; border:0 none; font-variant-caps:normal; display: none;}
.o-counter-link span {width:23px; height:2px; border-radius:2px; background: var(--ink); display: block;}

.bannerHandle {display: flex; background-blend-mode:normal; align-items: center; gap:1.78rem; print-color-adjust:economy;}.chipBlock{gap:1.54rem; display: flex;}
.chipBlock a, .snackbarPrefix {letter-spacing:0.03em; font-weight:700; text-transform:uppercase; color: var(--text); font-size:0.83rem;}*.chipBlock a:hover, *.snackbarPrefix:hover{color: var(--acc);}
.galleryDate {display: flex; gap:0.92rem; align-items: center;}
.bannerHead {text-transform:uppercase; background: var(--acc); font-size:0.72rem; border-radius: var(--rad-s); letter-spacing:0.03em; font-weight:700; transition:background 0.166s; padding:0.58rem 1.01rem; tab-size:4; color:#main-profile;}
.bannerHead:hover {color:#main-profile; font-synthesis:weight style small-caps; widows:2; background: var(--acc-d);}

/* ---------- flow / shell ---------- */
.dropdown__button {padding-bottom:3.93rem;}

/* ---------- post ---------- */
.entry {max-width: var(--read); border: 1px solid var(--edge); box-shadow: var(--sh); background: var(--card); margin:1.62rem auto 0; overflow: hidden; border-radius: var(--rad);}
.entryButton {shape-margin:0; padding:2.33rem 2.55rem 1.36rem; widows:2;}body .grid-block{margin-bottom:0.87rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}

.pricePlaceholder {flex-wrap: wrap; gap:0.55rem 1.18rem; font-size:0.9rem; color: var(--dim); display: flex; align-items: center;}
.drawerContainer {align-items: center; display: inline-flex; gap:0.41rem;}
.drawerContainer svg {text-decoration-skip-ink:auto; opacity:0.78; flex-shrink: 0;}
.panelZone {font-style:italic;}

/* toc */
.l-reply {padding:0 2.66rem;}
.progressLine {background: var(--bg-2); border-radius: var(--rad-s); padding:1.1rem 1.21rem; border: 1px solid var(--edge);}
.viewArea {align-items: center; display: flex; justify-content: space-between;}
.spinner--outlined {margin:0px; font-size:1.01rem;}
.entryContainer {background:none; color: var(--dim); padding:0.21rem; display: inline-flex; transition:transform 0.286s, color 0.154s; print-color-adjust:economy; border:0;}
.entryContainer:hover {color: var(--acc);}
.progressLine.is-shut .entryContainer {transform: rotate(-90deg);}
.progressLine.is-shut .app-counter {display: none;}html .app-counter{border-top: 1px solid var(--edge); print-color-adjust:economy; font-synthesis:weight style small-caps; padding-top:0.59rem; margin-top:0.78rem; line-height:1.9; font-size:0.97rem;}
.app-counter a {color: var(--text); display: block;}
.app-counter a:hover {color: var(--acc);}
.app-counter .stepperHead {padding-left:1.18rem; font-size:0.86rem; text-decoration-skip-ink:auto; font-variant-ligatures:normal;}

/* rich content */
.breadcrumbSpacer {padding:1.57rem 2.53rem 0.33rem;}html .skeletonWrapper{font-size:1.03rem; color: var(--text); line-height:1.8;}
.skeletonWrapper > * + * {margin-top:1.16rem; backface-visibility:visible; text-rendering:auto;}
.skeletonWrapper h2 {line-height:1.3; border-top: 1px solid var(--edge-2); color: var(--ink); margin-top:2.38rem; scroll-margin-top:5rem; padding-top:1.31rem; font-family: var(--display); font-size:1.51rem;}*.skeletonWrapper h3{font-size:1.28rem; color: var(--ink); margin-top:1.71rem; scroll-margin-top:5rem; font-family: var(--display);}
.skeletonWrapper h4 {font-family: var(--display); font-size:1.14rem; color: var(--ink); margin-top:1.35rem;}
.skeletonWrapper a {text-decoration-thickness:1px; text-decoration:underline; text-underline-offset:2px;}
.skeletonWrapper strong, .skeletonWrapper b {color: var(--ink); font-weight:700;}
.skeletonWrapper ul, .skeletonWrapper ol {margin-left:1.29rem;}
.skeletonWrapper ul {list-style: disc;}.skeletonWrapper ol{list-style: decimal;}
.skeletonWrapper li {margin-top:0.35rem; padding-left:0.24rem;}body .skeletonWrapper img{border-radius: var(--rad-s); margin:1.55rem 0;}.skeletonWrapper blockquote{border-radius: 0 var(--rad-s) var(--rad-s) 0; border-left: 3px solid var(--acc);}.skeletonWrapper blockquote{-webkit-hyphens:manual;-ms-hyphens:manual;will-change:auto; background: var(--tint); padding:0.8rem 1.26rem; hyphens:manual; font-style:italic; color: var(--ink);}*.skeletonWrapper code{border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px; border: 1px solid var(--edge); font-family:ui-monospace, "SF Mono", "Courier New", monospace; padding:0.07em 0.47em; font-size:0.94em; background: var(--bg-2);}.skeletonWrapper pre{overflow-x: auto; line-height:1.7; background: var(--night); border-radius: var(--rad-s); font-size:0.95rem; color:#stepAction; padding:1.07rem 1.32rem;}body .skeletonWrapper pre code{background:none; padding:0; border:none; color:inherit;}*.skeletonWrapper table{border-collapse:collapse; width:100%;}*.skeletonWrapper table{font-size:0.89rem; break-inside:auto;}
.skeletonWrapper th, .skeletonWrapper td {border: 1px solid var(--edge); text-align: left; padding:0.62rem 0.76rem;}
.skeletonWrapper th {color: var(--ink); background: var(--bg-2); font-weight:700;}*.skeletonWrapper hr{border-top: 1px solid var(--edge); margin:1.98rem 0; border:0em;}

/* share */
.counterGroup {padding:1.77rem 2.57rem 2.46rem; background-blend-mode:normal; image-rendering:auto;}
.threadLink {height:42px; border-radius:50%; justify-content: center; transition:background 0.153s, color 0.26s, border-color 0.22s, transform 0.112s; color: var(--dim); background: var(--card); align-items: center; border: 1px solid var(--edge); display: inline-flex; width:36px;}
.tabs__column--dark {display: flex; flex-wrap: wrap; gap:0.6rem;}
.threadLink:hover {border-color: var(--acc); color:#main-profile; transform: translateY(-1px); background: var(--acc);}

/* ---------- talk / reach (forms) ---------- */
.actionFoot, .menuPrimary {background: var(--card); border: 1px solid var(--edge); padding:2.02rem 2.55rem 2.1rem; max-width: var(--read); border-radius: var(--rad); margin:2.22rem auto 0; box-shadow: var(--sh);}
.profileItem {margin-top:-0.6rem; font-size:0.94rem; color: var(--dim); backface-visibility:visible; margin-bottom:1.12rem; text-rendering:auto;}

/* ---------- more (related) ---------- */
.tableFoot {max-width: var(--read); margin:2.12rem auto 0;}.footerColumn:not(._0ee362){display: grid; gap:0.99rem; perspective:none; grid-template-columns: repeat(3, 1fr);}
.carouselSection {box-shadow: var(--sh); border-radius: var(--rad-s); transition:transform 0.175s, box-shadow 0.217s, border-color 0.148s; padding:1.07rem 1.1rem; display: block; border: 1px solid var(--edge); background: var(--card);}.carouselSection:hover{border-color: var(--acc-l); transform: translateY(-2px); text-underline-offset:auto; box-shadow: var(--sh-l);}.galleryDot{color: var(--ink); font-weight:700; font-size:0.98rem; line-height:1.4; font-family: var(--display);}/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea{font:inherit; width:100%; padding:0.72rem 0.87rem; transition:border-color 0.238s, box-shadow 0.218s, background 0.168s; border-radius: var(--rad-s); color: var(--ink); border: 1px solid var(--edge); background: var(--bg-2);}
input:focus, textarea:focus {-webkit-hyphens:manual;-ms-hyphens:manual;border-color: var(--acc); hyphens:manual; shape-margin:0; outline:0; background: var(--card); box-shadow:0 0 0 -1px rgba(20, 158, 130, 0.2);}input::placeholder, textarea::placeholder{color: var(--dim);}

.carouselPrimary {flex-wrap: wrap; display: flex; gap:0.94rem;}
textarea {min-height:6.57rem; resize: vertical; transform-style:flat; break-inside:auto;}
.paginationDetail {flex: 1 1 100%;}html .moduleMeta{min-width:0; flex: 1 1 calc(50% - 0.5rem);}

.skeletonSecondary {display: flex;}.skeletonSecondary input{min-width:0; background-blend-mode:normal; border-right:0 none; flex: 1; border-radius: var(--rad-s) 0 0 var(--rad-s);}html .skeletonSecondary .skeletonThumb{border-radius: 0 var(--rad-s) var(--rad-s) 0; widows:2;}

/* ---------- buttons ---------- */
.skeletonThumb {justify-content: center; background: var(--card); font-weight:bold; border: 1px solid var(--edge); min-height:2.91rem; text-transform:uppercase; color: var(--ink); padding:0.72rem 1.25rem; display: inline-flex; align-items: center; border-radius: var(--rad-s); gap:0.48rem; font-size:0.87rem; letter-spacing:0.03em; transition:background 0.251s, color 0.222s, border-color 0.209s;}
.skeletonThumb:hover {background: var(--bg-2); border-color: var(--dim); color: var(--ink);}
.footer__value {color:#main-profile; background: var(--acc); background-blend-mode:normal; border-color: var(--acc);}body .footer__value:hover{color:#main-profile; border-color: var(--acc-d); background: var(--acc-d);}
.sidebarHolder {min-width:2.96rem; padding:0.64rem 0.97rem;}
.badgeHead {break-inside:auto; width:100%;}/* ---------- decks (newsletter + account) ---------- */
.tableSubtitle{margin:2.52rem auto 0; display: grid; grid-template-columns: 1fr 1fr; gap:1.2rem;}/* ---------- decks (newsletter + account) ---------- */
.tableSubtitle{max-width: var(--band);}
.headerNumber {display: flex; background: var(--card); padding:1.42rem 1.63rem; border-radius: var(--rad); box-shadow: var(--sh); flex-direction: column; border: 1px solid var(--edge);}
.counterExpand {color: var(--dim); font-size:0.82rem; margin-bottom:0.96rem;}*.alertBar{gap:0.68rem; display: flex; margin-top:auto; flex-direction: column;}
.alertBar .skeletonThumb {width:100%;}/* ---------- footer ---------- */
.bannerDate{padding:2.64rem 0; background: var(--night); color: var(--on-night); margin-top:3.36rem;}*.heroColumn{display: flex; max-width: var(--max); margin-inline:auto; flex-wrap: wrap; padding:0 1.31rem; align-items: center; justify-content: space-between; gap:1.46rem; width:100%;}
.spinnerHolder img {filter:brightness(0) invert(1); opacity:0.83; width:auto; height:24px;}.entryIndicator{margin-top:0.62rem; font-size:0.86rem; color: var(--on-night);}.text-lg:not(._0ee362){display: flex; gap:1.37rem;}body .text-lg a{color: var(--on-night); font-size:0.9rem;}*.text-lg a:hover{font-variant-caps:normal; color:#main-profile; will-change:auto;}

.viewLabel {display: flex; gap:0.61rem;}
.viewLabel a {justify-content: center; width:37px; align-items: center; display: inline-flex; image-rendering:auto; backface-visibility:visible; background:rgba(255, 248, 255, 0.07); height:33px; transition:background 0.173s, color 0.18s, transform 0.116s; color: var(--on-night); border-radius: var(--rad-s);}

/* ---------- back to top ---------- */
.dialogValue {display: none; border-radius:50%; background: var(--acc); position: fixed; right:1.59rem; align-items: center; height:45px; border:0 none; transition:background 0.217s, transform 0.236s; box-shadow: var(--sh-l); width:43px; z-index: 900; bottom:1.68rem; color:#main-profile; justify-content: center;}
.viewLabel a:hover {color:#main-profile; background: var(--acc); transform: translateY(-1px);}
.dialogValue:hover {transform: translateY(-2px); background: var(--acc-d);}.dialogValue.searchCap{display: inline-flex;}

/* ---------- cookie ---------- */
.t-entry-body {position: fixed; bottom:0; right:0; z-index: 1100; background: var(--card); border-top: 1px solid var(--edge); left:0; padding:0.93rem 0; box-shadow:0 -4px 27px rgba(16, 37, 42, 0.1);}
.stepTrigger {gap:1.43rem; justify-content: space-between; display: flex; padding:0 1.28rem; margin-inline:auto; width:100%; max-width: var(--max); align-items: center;}
.t-entry-body p {font-size:0.77rem; color: var(--text); margin:0;}
.t-entry-body .skeletonThumb {flex-shrink: 0; min-height:2.42rem; padding:0.55rem 1.44rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.statusBlock {font-variant-ligatures:normal; z-index: 1300; inset:0; position: fixed; text-decoration-skip-ink:auto; display: none;}.toolbarFoot{backdrop-filter:blur(2px); inset:0; background:rgba(11, 32, 25, 0.6); position: absolute;}.statusBlock:target{place-items: center; display: grid; padding:1.23rem;}
.sortSecondary {animation:pop 0.17s ease-out; box-shadow: var(--sh-l); isolation:auto; position: relative; background: var(--card); border-radius: var(--rad); padding:1.73rem 1.87rem 1.52rem; border: 1px solid var(--edge); width: min(94vw, 25rem); z-index: 1;}
@keyframes pop {from{opacity:0; transform: translateY(8px) scale(0.99);} to {transform: none; opacity:1;} }
.bannerZone {position: absolute; top:0.62rem; line-height:1; font-size:1.58rem; text-decoration:none; right:0.77rem; color: var(--dim);}body .bannerZone:hover{color: var(--ink);}
.statusBlock .blockHandle {gap:0.92rem;}
.statusBlock .blockHandle {display: flex; flex-direction: column;}
.entryBody {color: var(--dim); text-align: center; font-size:0.85rem; margin-top:0.21rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .o-counter-link {display: flex;}
  .bannerHandle {box-shadow: var(--sh); position: absolute; display: none; padding:0.58rem 0; right:0; background: var(--card); left:0; align-items: stretch; gap:0; border-bottom: 1px solid var(--edge); top:100%; flex-direction: column;}
  .bannerHandle.open {display: flex;}
  .chipBlock {flex-direction: column; padding:0 1.19rem; gap:0;}*.chipBlock a{border-bottom: 1px solid var(--edge-2); padding:0.84rem 0;}
  .galleryDate {padding:0.82rem 1.17rem 0.34rem; gap:0.82rem;}.footerColumn:not(._0ee362){grid-template-columns: 1fr 1fr;}
  .tableSubtitle {grid-template-columns: 1fr;}
}

@media (max-width: 680px) {
  html {page-break-inside:auto; font-size:100%;}
  .entryButton {padding:1.83rem 1.43rem 1.1rem;}*.l-reply{mix-blend-mode:normal; perspective:none; padding:0 1.48rem;}
  .counterGroup {padding:1.3rem 1.34rem 1.98rem;}.breadcrumbSpacer:not(._0ee362){padding:1.29rem 1.42rem 0.22rem;}html .actionFoot, .menuPrimary{padding:1.57rem 1.39rem 1.76rem;}html .footerColumn{grid-template-columns: 1fr;}
  .heroColumn {flex-direction: column; align-items: flex-start; gap:1.15rem;}html .stepTrigger{text-align: center; flex-direction: column; gap:0.75rem;}
}

@media (max-width: 460px) {
  .moduleMeta {flex: 1 1 100%;}
  .dialogValue {right:1.02rem; bottom:0.94rem;}
}

@media (prefers-reduced-motion: reduce) {html{scroll-behavior: auto;}
  * {transition:none !important; perspective:none; animation:none !important;}
  body {text-underline-offset:auto; background:#main-profile;}
}

@media print {
  .tagExtra, .counterGroup, .actionFoot, .tableFoot, .menuPrimary,
  .tableSubtitle, .bannerDate, .dialogValue, .t-entry-body, .statusBlock, .modalAction {display: none !important;}
  .entry {max-width:none; page-break-inside:auto; box-shadow:none; border:0 none;}
  body {orphans:2;}
}
