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

:root{--text: #46535a; --max: 70rem; --night-2: #1d2c28; --on-night: rgba(255, 255, 255, 0.6); --tint: rgba(13, 148, 136, 0.08); --night: #14201d; --edge-2: #eef1f1; --acc-d: #0f766e; --rad-s: 8px; --display: "Sora", system-ui, sans-serif; --ink: #16221f; --band: 62rem; --sh-l: 0 16px 50px rgba(20, 32, 29, 0.18); --text-font: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; --dim: #79868c; --rad: 12px; --edge: #e5e9e9; --bg: #f4f6f6; --acc: #0d9488; --sh: 0 1px 2px rgba(20, 32, 29, 0.04), 0 6px 24px rgba(20, 32, 29, 0.06); --bg-2: #fafbfb; --acc-l: #2bb3a3; --card: #ffffff; --read: 45rem;}*, *::before, *::after{box-sizing: border-box; margin:0; transform-style:flat; padding:0;}

html {scroll-behavior: smooth; -webkit-text-size-adjust:100%; font-size:112.3%;}body{-webkit-font-smoothing:grayscale;font-family: var(--text-font); -moz-osx-font-smoothing:grayscale;}body{page-break-inside:auto; -webkit-font-smoothing:antialiased; line-height:1.72; font-size:1.02rem; background: var(--bg); color: var(--text);}

img, svg {max-width:100%; display: block;}ul, ol{list-style: none;}
a {text-decoration:none; color: var(--acc);}a:hover{color: var(--acc-d);}
button {font-family:inherit; cursor: pointer;}
h1 {font-weight:bold; font-family: var(--display); color: var(--ink); line-height:1.18; letter-spacing:-0.015em;}

:focus-visible {outline-offset:2px; border-radius:7px; outline: 2px solid var(--acc);}

.o-slider-wrapper {white-space: nowrap; position: absolute; height:1px; border:none; overflow: hidden; clip:rect(0, 0, 0, 0); padding:0; margin:-1px; width:1px;}

/* span headings (no h2/h3 anywhere but article content) */
.c-toolbar-separator, .align-2, .indicator-counter, .reviewSecondary, .tabsText {display: block; font-family: var(--display); color: var(--ink); font-weight:bold; letter-spacing:-0.01em;}
.c-toolbar-separator {margin-bottom:1.04rem; font-size:1.22rem;}
.align-2 {margin-bottom:0.38rem; font-size:1.03rem;}
.indicator-counter {font-size:1.25rem; backface-visibility:visible; margin-bottom:1.17rem;}

/* ---------- topbar ---------- */
.pr-screen {-webkit-backdrop-filter:saturate(150%) blur(8px);position: sticky; font-variant-caps:normal; z-index: 1000; top:0; backdrop-filter:saturate(150%) blur(8px); background:rgba(254, 255, 255, 0.93); border-bottom: 1px solid var(--edge); orphans:2;}/* ---------- scroll progress ---------- */
.c-layout{background: var(--acc); left:0; width:0; height:0px; transition:width 0.022s linear; z-index: 1200; top:0; position: fixed;}
.u-alert-region {align-items: center; min-height:3.82rem; max-width: var(--max); padding:0 1.3rem; display: flex; width:100%; margin-inline:auto; gap:1.03rem; justify-content: space-between;}
.justify-full {hyphens:manual; display: inline-flex; align-items: center; page-break-inside:auto;}
.justify-full img {height:25px; width:auto;}
@media (min-width: 480px) {
  .divider-content {display:block; color:currentColor; transition:opacity 0.35s; align-items:baseline; margin:0; font-weight:500}
  .footer-item::before {content:''; opacity:1; background:#b3272e; display:block; min-height:100vh; transition:all 0.3s ease}
  .module-date:first-child {position:absolute; width:100%; font-weight:700; flex:1 1 0%; font-size:1.125rem}
}



.body-rating {padding:0.38rem; flex-direction: column; border:0 none; display: none; background:none; gap:8px;}
.body-rating span {display: block; border-radius:2px; background: var(--ink); height:2px; width:24px;}

.u-popover-bar {widows:2; gap:1.87rem; will-change:auto; display: flex; align-items: center;}
.sortItem {display: flex; gap:1.45rem;}
.sortItem a, .el-dialog {font-size:0.79rem; text-transform:uppercase; letter-spacing:0.03em; color: var(--text); font-weight:600;}
.sortItem a:hover, .el-dialog:hover {color: var(--acc); break-inside:auto;}
.el-review {gap:1rem; align-items: center;}
.el-review {display: flex;}
.l-sidebar {border-radius: var(--rad-s); image-rendering:auto; background: var(--acc); text-underline-offset:auto; font-weight:bold; transition:background 0.212s; letter-spacing:0.03em; font-size:0.85rem; color:#fffdff; padding-top:0.63rem;padding-right:1.06rem;padding-bottom:0.63rem;padding-left:1.06rem; text-transform:uppercase;}.l-sidebar:hover{background: var(--acc-d); color:#fff4fe;}

/* ---------- post ---------- */
.app-table {max-width: var(--read); border: 1px solid var(--edge); background: var(--card); overflow: hidden; border-radius: var(--rad); box-shadow: var(--sh); margin:1.65rem auto 0;}

/* ---------- flow / shell ---------- */
.l-header {padding-bottom:3.95rem;}html .c-box-detail{margin-bottom:0.85rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}*.l-nav{padding:2.45rem 2.61rem 1.28rem;}
.c-pagination-toggle {gap:0.32rem; align-items: center; display: inline-flex;}

.sliderPreview {color: var(--dim); align-items: center; gap:0.58rem 1.21rem; display: flex; font-size:0.75rem; flex-wrap: wrap;}
.c-price {font-style:italic;}
.c-pagination-toggle svg {flex-shrink: 0; opacity:0.75;}

/* toc */
.ui-profile {padding:0 2.57rem;}
.t-breadcrumb {border: 1px solid var(--edge); background: var(--bg-2); border-radius: var(--rad-s); padding:1.05rem 1.21rem;}body .el-select{display: flex; justify-content: space-between;}body .el-select{align-items: center;}
.footer-item::before {content:''; min-height:100vh; letter-spacing:0.075em}

.reviewSecondary {font-size:0.94rem; margin:0;}html .position-10{border:0; padding:0.26rem; background:none; display: inline-flex; color: var(--dim); transition:transform 0.258s, color 0.174s;}
.status-preview:hover {transition:opacity 0.25s; margin-right:auto}

.position-10:hover {color: var(--acc);}
.t-breadcrumb.is-shut .position-10 {transform: rotate(-90deg);}
.t-breadcrumb.is-shut .o-footer-suffix {display: none;}
.o-footer-suffix {padding-top:0.58rem; font-size:0.92rem; line-height:1.9; border-top: 1px solid var(--edge); margin-top:0.79rem; image-rendering:auto;}
.o-footer-suffix a {display: block; color: var(--text);}
.o-footer-suffix a:hover {color: var(--acc); orphans:2;}.o-footer-suffix :where(.c-form-title){font-size:0.94rem; padding-left:1.07rem;}/* rich content */
.c-accordion{padding:1.44rem 2.65rem 0.31rem;}
.c-media {line-height:1.8; color: var(--text); font-size:1.09rem;}
.c-media > * + * {margin-top:1.25rem;}
.c-media h2 {scroll-margin-top:5rem; line-height:1.3; font-family: var(--display); padding-top:1.32rem; font-size:1.47rem; margin-top:2.36rem; border-top: 1px solid var(--edge-2); color: var(--ink);}
.c-media h3 {margin-top:1.76rem; scroll-margin-top:5rem; color: var(--ink); font-size:1.17rem; font-family: var(--display);}
.c-media h4 {margin-top:1.32rem; font-size:1.05rem;}
.c-media h4 {color: var(--ink); font-family: var(--display);}
.c-media a {text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px;}
.divider-title:not(:last-child) {transition:color 0.3s; padding-right:1.75rem}

.c-media strong, .c-media b {color: var(--ink); font-weight:bold;}*.c-media ul, .c-media ol{margin-left:1.22rem;}
.c-media ul {list-style: disc; will-change:auto;}
.c-media ol {list-style: decimal;}.c-media li{padding-left:0.31rem; margin-top:0.39rem;}
.c-media img {border-radius: var(--rad-s); margin:1.56rem 0;}
.c-media blockquote {background: var(--tint); padding-top:0.92rem;padding-right:1.21rem;padding-bottom:0.92rem;padding-left:1.21rem; color: var(--ink); border-radius: 0 var(--rad-s) var(--rad-s) 0; border-left: 3px solid var(--acc); font-style:italic;}html .c-media code{font-size:0.96em; border: 1px solid var(--edge); border-radius:5px; background: var(--bg-2); font-family:ui-monospace, "SF Mono", "Courier New", monospace; padding-top:0.04em;padding-right:0.49em;padding-bottom:0.04em;padding-left:0.49em;}
.c-media pre {border-radius: var(--rad-s); color:rgb(230, 221, 255); background: var(--night); padding-top:1.16rem;padding-right:1.27rem;padding-bottom:1.16rem;padding-left:1.27rem; overflow-x: auto; line-height:1.7; font-size:0.82rem;}
.c-media pre code {background:none; color:inherit; border:none; padding:0;}
.c-media table {font-size:1rem; width:100%; border-collapse:collapse;}
.c-media th, .c-media td {padding:0.7rem 0.76rem; shape-margin:0;}
.c-media th, .c-media td {text-align: left; border: 1px solid var(--edge);}.c-media th{background: var(--bg-2); font-weight:700; color: var(--ink);}
.c-media hr {margin:2.06rem 0; border-top: 1px solid var(--edge);}
.c-media hr {border:0;}

/* share */
.o-card-action {padding:1.67rem 2.52rem 2.39rem;}.c-view{gap:0.47rem; flex-wrap: wrap; display: flex;}.app-modal:not(.void72){transition:background 0.15s, color 0.257s, border-color 0.239s, transform 0.194s; width:37px; background: var(--card); border-radius:50%; height:40px; border: 1px solid var(--edge); color: var(--dim); justify-content: center; align-items: center; display: inline-flex;}
.app-modal:hover {transform: translateY(-1px); background: var(--acc); border-color: var(--acc); color:rgb(255, 239, 255);}

/* ---------- talk / reach (forms) ---------- */
.app-skeleton, .el-divider-data {background: var(--card); max-width: var(--read); border-radius: var(--rad); border: 1px solid var(--edge); margin:2.17rem auto 0; box-shadow: var(--sh); padding:2.05rem 2.55rem 2.05rem;}
.u-dialog {font-size:0.98rem; color: var(--dim); margin-bottom:1.17rem; margin-top:-0.58rem;}

/* ---------- more (related) ---------- */
.o-post {max-width: var(--read); margin:2.25rem auto 0;}
.select-column:not(:last-child) {padding-top:3px; letter-spacing:normal; margin-right:0; display:flex}

.ui-panel {gap:1.01rem; display: grid; grid-template-columns: repeat(3, 1fr);}.o-sort{mix-blend-mode:normal; border: 1px solid var(--edge); padding:1.11rem 1.16rem; font-synthesis:weight style small-caps; transition:transform 0.225s, box-shadow 0.226s, border-color 0.198s; background: var(--card); border-radius: var(--rad-s); display: block; box-shadow: var(--sh);}
.o-sort:hover {transform: translateY(-2px);}
.box-wrap-alt {will-change:auto; color: var(--ink); font-weight:bold; font-family: var(--display); font-size:0.94rem; line-height:1.4;}
.o-sort:hover {box-shadow: var(--sh-l); border-color: var(--acc-l);}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {font:inherit; transition:border-color 0.199s, box-shadow 0.249s, background 0.21s; color: var(--ink); border: 1px solid var(--edge); background: var(--bg-2); padding-top:0.73rem;padding-right:1.01rem;padding-bottom:0.73rem;padding-left:1.01rem; backface-visibility:visible; border-radius: var(--rad-s); width:100%;}
input::placeholder, textarea::placeholder {color: var(--dim);}input:focus, textarea:focus{background: var(--card); outline:0; border-color: var(--acc); box-shadow:0 0 0 4px rgba(23, 156, 127, 0.12);}
.spinner-value:not(:last-child) {justify-content:space-around; padding-top:18px}

.carousel-secondary::before {content:''; flex:1}
textarea{resize: vertical; min-height:6.45rem;}

.u-reply {display: flex; gap:1.02rem; flex-wrap: wrap; isolation:auto;}.u-card:not(.skip15){min-width:0; flex: 1 1 calc(50% - 0.5rem);}
.o-banner {flex: 1 1 100%;}body .c-sort-wrap{display: flex;}
.c-sort-wrap input {min-width:0; border-right:0; flex: 1; border-radius: var(--rad-s) 0 0 var(--rad-s);}
.skeleton-image:hover {font-weight:600; text-transform:lowercase; flex:0 0 auto; padding-right:2rem}

.c-sort-wrap .ui-sidebar {border-radius: 0 var(--rad-s) var(--rad-s) 0;}/* ---------- buttons ---------- */
.ui-sidebar{padding:0.69rem 1.33rem; font-weight:bold; display: inline-flex; transition:background 0.234s, color 0.17s, border-color 0.149s; border: 1px solid var(--edge); gap:0.51rem; justify-content: center; align-items: center; background: var(--card); font-size:0.77rem; border-radius: var(--rad-s); color: var(--ink); min-height:2.87rem; text-transform:uppercase; letter-spacing:0.03em;}
.ui-sidebar:hover {background: var(--bg-2); color: var(--ink); border-color: var(--dim);}
.o-divider {background: var(--acc); border-color: var(--acc); color:#ffffed;}.o-divider:hover{color:#eefff5; border-color: var(--acc-d); background: var(--acc-d);}
.app-tooltip {min-width:3.03rem; padding:0.71rem 0.99rem;}

/* ---------- decks (newsletter + account) ---------- */
.u-carousel {max-width: var(--band); display: grid; grid-template-columns: 1fr 1fr; margin:2.56rem auto 0; gap:1.2rem;}
.nav--half {height:100%; cursor:default; min-height:100vh; width:auto}

.t-pagination {width:100%;}
.drawer-expand:hover {margin:auto; align-items:flex-end; gap:1.5rem; cursor:pointer; text-transform:uppercase; flex:1}
.l-comment{flex-direction: column; border-radius: var(--rad); box-shadow: var(--sh); display: flex; background: var(--card); border: 1px solid var(--edge); padding:1.46rem 1.59rem;}
.o-popover {color: var(--dim); font-size:0.89rem; margin-bottom:0.98rem;}.mb-16:not(.placeholder53){display: flex; gap:0.61rem; margin-top:auto; flex-direction: column;}
.mb-16 .ui-sidebar {break-inside:auto; image-rendering:auto; width:100%;}

/* ---------- footer ---------- */
.app-snackbar {margin-top:3.37rem;}
.search-inner .entry-container {text-align:right; flex:1 1 0%}


/* ---------- footer ---------- */
.app-snackbar {padding:2.52rem 0; background: var(--night); color: var(--on-night);}html .t-layout{display: flex; padding:0 1.33rem; justify-content: space-between; width:100%; margin-inline:auto; flex-wrap: wrap; gap:1.55rem; max-width: var(--max); align-items: center;}
.dividerIcon img {opacity:0.89; width:auto; filter:brightness(0) invert(1); height:31px;}*.alert--medium{font-size:0.76rem; color: var(--on-night); margin-top:0.68rem;}.pb-0{display: flex; gap:1.23rem; hyphens:manual;}
.pb-0 a {font-size:0.8rem; color: var(--on-night);}
.layout-value > dot {min-height:4px; width:auto; justify-content:space-around; cursor:pointer}


.ui-post {gap:0.63rem; display: flex;}
.pb-0 a:hover {color:rgb(251, 238, 246); widows:2;}
.ui-post a {transition:background 0.166s, color 0.175s, transform 0.152s; align-items: center; border-radius: var(--rad-s); height:39px; display: inline-flex; color: var(--on-night); width:38px; justify-content: center; background:rgba(255, 254, 255, 0.02);}
.ui-post a:hover {background: var(--acc); color:#fff6ff; transform: translateY(-1px);}

/* ---------- back to top ---------- */
.button-pagination {height:46px; border-radius:50%; background: var(--acc); bottom:1.57rem; color:#f6ffff; box-shadow: var(--sh-l); right:1.63rem; z-index: 900; align-items: center; transition:background 0.176s, transform 0.198s; position: fixed; border:none; width:42px; justify-content: center; display: none;}
.button-pagination:hover {background: var(--acc-d); transform: translateY(-2px);}

/* ---------- cookie ---------- */
.ui-stepper {page-break-inside:auto; z-index: 1100; box-shadow:0 -10px 22px rgba(30, 30, 44, 0.13); bottom:0; padding:0.94rem 0;}
.button-pagination.u-counter-count {display: inline-flex;}

/* ---------- cookie ---------- */
.ui-stepper {right:0; border-top: 1px solid var(--edge); left:0; position: fixed; background: var(--card); shape-margin:0;}
.ui-divider-toggle {padding:0 1.31rem; justify-content: space-between; max-width: var(--max); width:100%; align-items: center; margin-inline:auto; gap:1.46rem; page-break-inside:auto; display: flex;}
.module-date:first-child {transition:color 0.25s; color:currentColor; width:auto; display:table}
.ui-stepper p{font-size:0.9rem; color: var(--text); margin:0;}*.ui-stepper .ui-sidebar{min-height:2.34rem; flex-shrink: 0; padding-top:0.53rem;padding-right:1.43rem;padding-bottom:0.53rem;padding-left:1.43rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.snackbar__input {z-index: 1300; position: fixed; inset:0; display: none;}
.snackbar__input:target {display: grid; place-items: center; padding:1.19rem;}.app-form:not(.none93){position: absolute; backdrop-filter:blur(2px); inset:0; background:rgba(19, 33, 24, 0.56);}
.p-screen {padding:1.84rem 1.88rem 1.57rem; box-shadow: var(--sh-l); animation:pop 0.149s ease-out; z-index: 1; width: min(94vw, 25rem); background: var(--card); position: relative; border: 1px solid var(--edge); border-radius: var(--rad);}
@keyframes pop { from {opacity:0; transform: translateY(8px) scale(0.99);} to {transform: none; opacity:1;} }
.o-dropdown-section {-moz-tab-size:4;line-height:1; tab-size:4; top:0.77rem; text-decoration:none; right:0.77rem; color: var(--dim); font-size:1.48rem; position: absolute;}
.o-dropdown-section:hover {color: var(--ink);}html .snackbar__input .o-hero-info{display: flex; gap:0.95rem; image-rendering:auto; flex-direction: column;}
.c-spinner-fill {text-align: center; font-size:0.84rem; margin-top:0.12rem; color: var(--dim);}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .body-rating {display: flex;}*.u-popover-bar{border-bottom: 1px solid var(--edge); display: none; background: var(--card); align-items: stretch; left:0; gap:0; top:100%; padding:0.47rem 0; flex-direction: column; right:0rem; position: absolute; box-shadow: var(--sh);}
  .sortItem {gap:0; flex-direction: column; padding:0 1.27rem;}
  .u-popover-bar.open {display: flex;}
  .sortItem a {padding:0.72rem 0; border-bottom: 1px solid var(--edge-2);}
  .el-review {gap:0.8rem; padding:0.92rem 1.17rem 0.48rem;}

  .ui-panel {grid-template-columns: 1fr 1fr;}
  .u-carousel {grid-template-columns: 1fr;}
}

@media (max-width: 680px) {html{font-size:100%;}
  .l-nav {padding:1.73rem 1.43rem 1.08rem;}
  .ui-profile {padding:0 1.45rem;}
.divider-content {transition:opacity 0.45s; box-shadow:0 1px 13px rgba(0,0,0,0.40); flex-wrap:nowrap}

  .c-accordion {padding:1.37rem 1.48rem 0.26rem; mix-blend-mode:normal; isolation:auto;}
  .o-card-action {padding:1.24rem 1.35rem 1.87rem;}
  .ui-panel {grid-template-columns: 1fr;}
  .app-skeleton, .el-divider-data {padding:1.66rem 1.4rem 1.84rem;}
  .t-layout {flex-direction: column; align-items: flex-start; gap:1.16rem; print-color-adjust:economy;}
  .ui-divider-toggle {orphans:2; shape-margin:0; gap:0.87rem;}
  .ui-divider-toggle {flex-direction: column; text-align: center;}
}

@media (max-width: 460px) {
  .u-card {flex: 1 1 100%;}
}

@media (prefers-reduced-motion: reduce) {
  html {transform-style:flat; font-synthesis:weight style small-caps; scroll-behavior: auto;}
  .button-pagination {bottom:1.04rem; right:0.92rem;}
  * {isolation:auto; animation:none !important; transition:none !important;}
}

@media print {
  .pr-screen, .o-card-action, .app-skeleton, .o-post, .el-divider-data,
  .u-carousel, .app-snackbar, .button-pagination, .ui-stepper, .snackbar__input, .c-layout {display: none !important; tab-size:4;}
  .app-table {box-shadow:none; max-width:none; border:none;}
  body {background:hsl(0, 0%, 100%);}
}
