/* ============================================================
   1017_new_v1 — stylesheet
   ============================================================ */

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

*, *::before, *::after {margin:0; padding:0; box-sizing: border-box;}

body {background: var(--bg); color: var(--text); font-family: var(--text-font); -moz-osx-font-smoothing:grayscale; font-size:1.06rem; line-height:1.72; -webkit-font-smoothing:antialiased;}html{-webkit-text-size-adjust:100%; font-size:111.5%; scroll-behavior: smooth;}
ul, ol {list-style: none;}img, svg{shape-margin:0; text-decoration-skip-ink:auto; display: block; max-width:100%;}
a {color: var(--acc); text-decoration:none;}
a:hover {color: var(--acc-d);}
button {cursor: pointer; font-family:inherit;}h1{font-weight:bold; color: var(--ink); letter-spacing:-0.015em; line-height:1.18; font-family: var(--display);}

:focus-visible {outline: 2px solid var(--acc); border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px; outline-offset:2px;}

/* span headings (no h2/h3 anywhere but article content) */
.border-center, .stepper--danger, .page__content, .clear-xs, .entry--info {color: var(--ink); display: block; font-family: var(--display); font-weight:700; letter-spacing:-0.01em;}

.action__dot {margin:-1px; height:1px; clip:rect(0, 0, 0, 0); border:0; width:1px; white-space: nowrap; position: absolute; overflow: hidden; padding:0;}.border-center:not(._2d95bf){hyphens:manual; margin-bottom:1.03rem; font-size:1.33rem; image-rendering:auto;}
.stepper--danger {font-size:1.11rem; margin-bottom:0.32rem;}

/* ---------- scroll progress ---------- */
.o-sort {z-index: 1200; transition:width 0.114s linear; height:6px; background: var(--acc); top:0;}
.page__content {font-size:1.27rem; margin-bottom:1.16rem;}

/* ---------- scroll progress ---------- */
.o-sort {left:0; width:0; position: fixed;}/* ---------- topbar ---------- */
.menu__dot--active{position: sticky; background:rgba(255, 255, 255, 0.85); z-index: 1000; top:0; backdrop-filter:saturate(150%) blur(8px); border-bottom: 1px solid var(--edge);}
.modal--primary {width:100%;}
.modal--primary {max-width: var(--max); padding:0 1.32rem; justify-content: space-between; margin-inline:auto; display: flex; min-height:3.86rem; gap:0.96rem; align-items: center;}
.list__group {display: inline-flex; align-items: center;}
.list__group img {print-color-adjust:economy; height:31px; width:auto;}

.cardMeta {display: none; padding:0.4rem; flex-direction: column; gap:9px; background:none; border:0;}
.cardMeta span {height:2px; background: var(--ink); border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; display: block; width:21px;}

.ui-feature {display: flex; align-items: center; gap:1.77rem;}
.gap-12 {gap:1.54rem; print-color-adjust:economy; display: flex;}
.gap-12 a, .blockFill {font-weight:500; letter-spacing:0.03em; color: var(--text);}
.gap-12 a, .blockFill {font-size:0.8rem; text-transform:uppercase;}.gap-12 a:hover, *.blockFill:hover{color: var(--acc);}
.accordion__overlay--active {align-items: center; display: flex; gap:1rem;}
.comment--last {border-radius: var(--rad-s); font-weight:700; text-transform:uppercase; font-size:0.72rem; color:#screen_meta; transition:background 0.228s; letter-spacing:0.03em; padding:0.5rem 1.03rem; background: var(--acc);}
.comment--last:hover {background: var(--acc-d); color:#screen_meta;}

/* ---------- flow / shell ---------- */
.panel--wide {padding-bottom:3.97rem; font-variant-caps:normal;}body .tooltip--odd{padding:2.32rem 2.63rem 1.29rem;}

/* ---------- post ---------- */
.reviewHolder {border: 1px solid var(--edge); margin:1.68rem auto 0; background: var(--card); max-width: var(--read); border-radius: var(--rad); box-shadow: var(--sh); overflow: hidden;}
.visible-between {margin-bottom:0.91rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}
.table__value--hover {display: inline-flex; gap:0.48rem; align-items: center;}

.panel--small {display: flex; font-size:0.78rem; flex-wrap: wrap; align-items: center; color: var(--dim); gap:0.58rem 1.24rem;}html .table__value--hover svg{opacity:0.76;}html .table__value--hover svg{font-variant-ligatures:normal; flex-shrink: 0;}
.media {background-blend-mode:normal; font-style:italic; page-break-inside:auto;}
.drawer__region {background: var(--bg-2); padding:1.05rem 1.19rem; border-radius: var(--rad-s); border: 1px solid var(--edge);}

/* toc */
.c-nav {padding:0 2.61rem;}*.entry--filled{align-items: center;}*.entry--filled{display: flex; justify-content: space-between;}
.clear-xs {page-break-inside:auto; margin:0; font-size:1.02rem; font-variant-caps:normal;}
.pl-10 {padding:0.15rem; page-break-inside:auto; border:none; color: var(--dim); transition:transform 0.31s, color 0.19s; display: inline-flex; hyphens:manual; background:none;}
.pl-10:hover {color: var(--acc);}
.drawer__region.is-shut .pl-10 {transform: rotate(-90deg);}
.drawer__region.is-shut .feature--focused {background-blend-mode:normal; contain:none; display: none;}
.feature--focused {padding-top:0.62rem; margin-top:0.73rem; border-top: 1px solid var(--edge); font-size:0.84rem;}
.feature--focused {line-height:1.9;}
.feature--focused a {display: block; color: var(--text);}
.feature--focused a:hover {color: var(--acc);}
.feature--focused .nav__icon--last {padding-left:1.15rem; font-size:0.87rem;}/* rich content */
.formPrefix{padding:1.57rem 2.55rem 0.36rem;}.page-secondary-outlined{line-height:1.8; color: var(--text); font-size:0.96rem;}
.page-secondary-outlined > * + * {margin-top:1.22rem;}.page-secondary-outlined h2{line-height:1.3; font-size:1.48rem; border-top: 1px solid var(--edge-2); font-family: var(--display); color: var(--ink); scroll-margin-top:5rem; padding-top:1.35rem; margin-top:2.3rem;}
.page-secondary-outlined h3 {color: var(--ink); font-family: var(--display); font-size:1.19rem; scroll-margin-top:5rem; margin-top:1.73rem;}
.page-secondary-outlined h4 {font-family: var(--display); font-size:1.14rem; margin-top:1.24rem; color: var(--ink);}
.page-secondary-outlined a {text-decoration-thickness:1px; text-decoration:underline; text-underline-offset:2px;}
.page-secondary-outlined strong, .page-secondary-outlined b {font-weight:bold; color: var(--ink);}*.page-secondary-outlined ul, .page-secondary-outlined ol{margin-left:1.24rem;}
.page-secondary-outlined ul {list-style: disc;}
.page-secondary-outlined ol {list-style: decimal;}body .page-secondary-outlined li{padding-left:0.31rem; margin-top:0.41rem;}.page-secondary-outlined img{font-synthesis:weight style small-caps; margin:1.54rem 0; border-radius: var(--rad-s);}.page-secondary-outlined blockquote{color: var(--ink); padding:0.77rem 1.27rem; border-radius: 0 var(--rad-s) var(--rad-s) 0; border-left: 3px solid var(--acc); background: var(--tint); font-style:italic;}.page-secondary-outlined code{font-family:ui-monospace, "SF Mono", "Courier New", monospace; border: 1px solid var(--edge); border-top-left-radius:4px; border-top-right-radius:4px; border-bottom-right-radius:4px; border-bottom-left-radius:4px; padding:0.14em 0.47em; background: var(--bg-2);}.page-secondary-outlined code{font-size:0.91em;}
.page-secondary-outlined pre {padding:1.08rem 1.37rem; color:#drawer_link; overflow-x: auto; font-size:0.91rem; line-height:1.7; background: var(--night); border-radius: var(--rad-s);}body .page-secondary-outlined pre code{background:none; color:inherit; padding:0; border:0 none;}
.page-secondary-outlined table {font-size:0.91rem; border-collapse:collapse; width:100%;}
.page-secondary-outlined th, .page-secondary-outlined td {border: 1px solid var(--edge); padding:0.64rem 0.77rem; text-align: left;}.page-secondary-outlined th{font-weight:bold; color: var(--ink); background: var(--bg-2);}
.page-secondary-outlined hr {border-top: 1px solid var(--edge); text-decoration-skip-ink:auto; margin:2.03rem 0; text-underline-offset:auto; border:0em;}.sectionBackdrop:not(._2d95bf){image-rendering:auto; gap:0.59rem; flex-wrap: wrap; display: flex; page-break-inside:auto;}/* share */
.o-grid{padding:1.77rem 2.58rem 2.45rem;}.spinner__row{color: var(--dim); align-items: center; justify-content: center; width:40px; border: 1px solid var(--edge); border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; height:36px; background: var(--card); transition:background 0.169s, color 0.21s, border-color 0.164s, transform 0.151s; display: inline-flex;}

/* ---------- talk / reach (forms) ---------- */
.block, .carousel--even {box-shadow: var(--sh); border: 1px solid var(--edge); padding:2.06rem 2.62rem 2.04rem; background-blend-mode:normal; shape-margin:0; margin:2.19rem auto 0; max-width: var(--read); border-radius: var(--rad); background: var(--card);}
.spinner__row:hover {transform: translateY(-1px); border-color: var(--acc); background: var(--acc); color:#screen_meta;}
.chip {font-size:0.85rem; margin-top:-0.61rem; color: var(--dim); margin-bottom:1.17rem;}/* ---------- more (related) ---------- */
.alert{max-width: var(--read); margin:2.2rem auto 0;}
.section {border: 1px solid var(--edge); background: var(--card); padding:1.13rem 1.17rem; border-radius: var(--rad-s); box-shadow: var(--sh); transition:transform 0.174s, box-shadow 0.156s, border-color 0.16s; display: block;}
.banner--right {display: grid; grid-template-columns: repeat(3, 1fr); gap:1.04rem;}
.section:hover {transform: translateY(-2px); shape-margin:0; box-shadow: var(--sh-l); border-color: var(--acc-l);}
.l-popover {color: var(--ink); line-height:1.4; font-weight:700; font-size:0.9rem; font-family: var(--display);}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {background: var(--bg-2); transition:border-color 0.19s, box-shadow 0.209s, background 0.225s; padding:0.67rem 0.88rem; width:100%; border: 1px solid var(--edge); border-radius: var(--rad-s); color: var(--ink); font:inherit;}input::placeholder, textarea::placeholder{color: var(--dim);}textarea{resize: vertical; min-height:6.46rem;}
input:focus, textarea:focus {border-color: var(--acc); font-synthesis:weight style small-caps; background: var(--card); box-shadow:0 0 0 5px rgba(19, 144, 131, 0.2); orphans:2; outline:0;}
.thread--sparse {min-width:0; flex: 1 1 calc(50% - 0.5rem);}.view{display: flex; mix-blend-mode:normal; gap:0.93rem; flex-wrap: wrap;}.list__row{display: flex;}
.pr-24 {text-decoration-skip-ink:auto; flex: 1 1 100%;}
.list__row input {min-width:0; border-radius: var(--rad-s) 0 0 var(--rad-s); border-right:0; flex: 1;}
.list__row .price {border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.price {background: var(--card); font-weight:bold; justify-content: center; text-transform:uppercase; align-items: center; color: var(--ink); transition:background 0.209s, color 0.218s, border-color 0.211s; display: inline-flex; min-height:2.93rem; border-radius: var(--rad-s); border: 1px solid var(--edge); padding:0.71rem 1.27rem; gap:0.55rem; font-size:0.81rem; letter-spacing:0.03em;}
.price:hover {background: var(--bg-2); color: var(--ink); border-color: var(--dim);}.panel{color:#screen_meta; border-color: var(--acc); background: var(--acc);}
.panel:hover {background: var(--acc-d); color:#screen_meta; border-color: var(--acc-d);}
.profile {padding:0.68rem 0.96rem; min-width:3.07rem;}
.drawer--horizontal {width:100%;}
.banner {border-radius: var(--rad); display: flex; flex-direction: column; box-shadow: var(--sh); border: 1px solid var(--edge); padding:1.55rem 1.67rem; background: var(--card);}/* ---------- decks (newsletter + account) ---------- */
.ui-drawer{gap:1.22rem; grid-template-columns: 1fr 1fr; margin:2.61rem auto 0; max-width: var(--band); display: grid;}
.badge--wide {flex-direction: column; display: flex; gap:0.64rem; margin-top:auto;}.pagination{font-size:0.83rem; margin-bottom:1.03rem; color: var(--dim);}
.badge--wide .price {width:100%;}
.divider {margin-inline:auto; flex-wrap: wrap; justify-content: space-between; display: flex; align-items: center; width:100%; padding:0 1.3rem; max-width: var(--max); gap:1.48rem;}

/* ---------- footer ---------- */
.thread__tertiary {background: var(--night); margin-top:3.32rem; padding:2.53rem 0; color: var(--on-night);}
.rating img {height:29px; opacity:0.85; filter:brightness(0) invert(1); width:auto;}
.list__region {margin-top:0.62rem; color: var(--on-night); font-size:0.79rem;}
.nav__prefix {gap:1.38rem; display: flex;}*.nav__prefix a{color: var(--on-night); font-size:0.86rem;}
.nav__prefix a:hover {color:#screen_meta;}*.l-grid{display: flex; gap:0.54rem;}body .l-grid a{background:rgba(237, 242, 255, 0.05); height:40px; display: inline-flex; width:37px; align-items: center; color: var(--on-night); justify-content: center; transition:background 0.208s, color 0.186s, transform 0.193s; border-radius: var(--rad-s);}
.l-grid a:hover {transform: translateY(-1px); background: var(--acc); color:#screen_meta;}/* ---------- back to top ---------- */
.module__section--filled{right:1.64rem; border:none; bottom:1.6rem; height:43px; print-color-adjust:economy; position: fixed; z-index: 900; font-synthesis:weight style small-caps; width:44px; justify-content: center; background: var(--acc); border-radius:50%; display: none; align-items: center; box-shadow: var(--sh-l); color:#screen_meta; transition:background 0.175s, transform 0.15s;}
.module__section--filled:hover {background: var(--acc-d); transform: translateY(-2px);}.module__section--filled.w-2xl:not(._2d95bf){display: inline-flex;}

/* ---------- cookie ---------- */
.sidebar-selected {padding:0.85rem 0; background: var(--card); position: fixed; z-index: 1100; right:0; left:0; box-shadow:0 -10px 23px rgba(15, 36, 45, 0.13); border-top: 1px solid var(--edge); bottom:0;}.view__holder--small:not(._2d95bf){width:100%; display: flex; max-width: var(--max); justify-content: space-between; padding:0 1.29rem; margin-inline:auto; gap:1.53rem; align-items: center;}
.sidebar-selected p {font-size:0.84rem; margin:0; text-underline-offset:auto; color: var(--text); transform-style:flat;}.sidebar-selected .price{flex-shrink: 0; min-height:2.32rem; padding:0.47rem 1.47rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.block__meta--last {position: fixed; z-index: 1300; inset:0; display: none;}
.block__meta--last:target {display: grid;}
.block__meta--last:target {place-items: center; padding-top:1.33rem; padding-right:1.33rem; padding-bottom:1.33rem; padding-left:1.33rem;}.sidebar__expand--small:not(._2d95bf){width: min(94vw, 25rem); box-shadow: var(--sh-l); border: 1px solid var(--edge); z-index: 1; border-radius: var(--rad); background: var(--card); position: relative; padding:1.84rem 1.81rem 1.55rem; animation:pop 0.128s ease-out;}
.el-progress-fill {inset:0; position: absolute; backdrop-filter:blur(2px); background:rgba(5, 30, 23, 0.6);}
@keyframes pop { from {word-spacing:normal; transform: translateY(8px) scale(0.99); tab-size:4; opacity:0;}to{opacity:1; transform: none;} }
.text-12 {text-decoration:none; font-size:1.49rem; top:0.7rem; right:0.8rem; position: absolute; color: var(--dim); line-height:1;}
.text-12:hover {contain:none; color: var(--ink); perspective:none;}
.block__meta--last .table__row {display: flex;}
.block__meta--last .table__row {gap:0.94rem; flex-direction: column;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .cardMeta {display: flex;}.dialog__overlay--rounded{text-align: center; font-size:0.89rem; color: var(--dim); margin-top:0.13rem;}
  .ui-feature {left:0; box-shadow: var(--sh); border-bottom: 1px solid var(--edge); align-items: stretch; top:100%; right:0; display: none; padding:0.54rem 0; flex-direction: column; position: absolute; background: var(--card); gap:0;}.open.ui-feature{display: flex;}.gap-12:not(._2d95bf){flex-direction: column;}.gap-12:not(._2d95bf){gap:0; padding:0 1.24rem;}
  .gap-12 a {border-bottom: 1px solid var(--edge-2); padding:0.86rem 0;}
  .accordion__overlay--active {print-color-adjust:economy;}
  .accordion__overlay--active {gap:0.76rem; padding:0.84rem 1.33rem 0.34rem;}

  .banner--right {grid-template-columns: 1fr 1fr;}
  .ui-drawer {print-color-adjust:economy; grid-template-columns: 1fr;}
}

@media (max-width: 680px) {
  html {font-size:100%;}
  .tooltip--odd {padding:1.83rem 1.48rem 1.1rem;}html .c-nav{padding:0 1.46rem;}
  .formPrefix {padding:1.29rem 1.36rem 0.23rem;}*.o-grid{padding:1.28rem 1.4rem 1.93rem;}
  .banner--right {grid-template-columns: 1fr;}
  .block, .carousel--even {padding:1.66rem 1.46rem 1.75rem;}
  .divider {gap:1.17rem; flex-direction: column; align-items: flex-start;}
  .view__holder--small {flex-direction: column; text-align: center; gap:0.83rem;}
}

@media (max-width: 460px) {*.thread--sparse{flex: 1 1 100%;}
  .module__section--filled {bottom:1.06rem; right:1.06rem;}
}

@media (prefers-reduced-motion: reduce) {
  html {scroll-behavior: auto;}
  * {animation:none !important; widows:2; transition:none !important;}
}

@media print {
  .menu__dot--active, .o-grid, .block, .alert, .carousel--even,
  .ui-drawer, .thread__tertiary, .module__section--filled, .sidebar-selected, .block__meta--last, .o-sort {display: none !important;}
  body {background:#screen_meta;}
}

  .reviewHolder {box-shadow:none; border:none; max-width:none;}