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

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

html {page-break-inside:auto; scroll-behavior: smooth; -webkit-text-size-adjust:100%; font-size:111.7%;}

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

body {text-rendering:auto; color: var(--text); line-height:1.72; font-size:1.01rem; font-family: var(--text-font); -moz-osx-font-smoothing:grayscale; background: var(--bg); -webkit-font-smoothing:antialiased;}
ul, ol {list-style: none;}img, svg{display: block; font-synthesis:weight style small-caps; transform-style:flat; max-width:100%;}
a {orphans:2; color: var(--acc); text-decoration:none;}
a:hover {color: var(--acc-d);}
h1 {color: var(--ink); letter-spacing:-0.015em; font-family: var(--display); line-height:1.18; font-weight:700;}button{font-family:inherit; cursor: pointer;}

:focus-visible {outline: 2px solid var(--acc); outline-offset:2px; border-radius:0;}*.py-half{clip:rect(0, 0, 0, 0); overflow: hidden; margin:-1px; border:none; height:1px; padding:0; position: absolute; white-space: nowrap; width:1px;}/* span headings (no h2/h3 anywhere but article content) */
.ml-full, .flex-16:not(._40b791), .pb-auto, .justify-xl, body .grid-10{letter-spacing:-0.01em; color: var(--ink); font-family: var(--display); display: block; font-weight:bold;}body .ml-full{text-rendering:auto; font-size:1.23rem; break-inside:auto; margin-bottom:1.08rem;}
.pb-auto {font-size:1.33rem; margin-bottom:1.17rem;}
.flex-16 {font-size:1.11rem; margin-bottom:0.26rem;}

/* ---------- scroll progress ---------- */
.px-block {z-index: 1200; width:0; position: fixed; transition:width 0.041s linear; top:0; background: var(--acc); left:0; height:7px;}
.ml-20 {display: flex; min-height:3.89rem; width:100%; max-width: var(--max); align-items: center; padding:0 1.3rem; gap:0.98rem; margin-inline:auto; justify-content: space-between;}

/* ---------- topbar ---------- */
.actionSection {top:0; backdrop-filter:saturate(150%) blur(8px); position: sticky; background:rgba(255, 243, 255, 0.9); z-index: 1000; border-bottom: 1px solid var(--edge);}
.h-24 {align-items: center; display: inline-flex;}body .h-24 img{height:27px; width:auto;}

.justify-20 {background:none; gap:9px; flex-direction: column; padding:0.33rem; border:0; display: none;}
.justify-20 span {height:2px; background: var(--ink); display: block; width:21px; border-radius:2px;}

.pb-screen {transform-style:flat; font-variant-ligatures:normal; display: flex; align-items: center; gap:1.77rem;}
.viewCap {hyphens:manual; display: flex; gap:1.44rem; widows:2;}
.viewCap a, .w-screen {font-weight:500; letter-spacing:0.03em; color: var(--text); font-size:0.88rem; text-transform:uppercase;}
.postWrapper {align-items: center; display: flex; gap:0.96rem;}.viewCap a:hover, .w-screen:hover{color: var(--acc);}
.grid-xs {letter-spacing:0.03em; font-size:0.76rem; padding:0.47rem 1.12rem; border-radius: var(--rad-s); transition:background 0.25s; font-weight:700; text-transform:uppercase; background: var(--acc); color:#page-spinner;}.grid-xs:hover{background: var(--acc-d); color:#page-spinner;}

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

/* ---------- flow / shell ---------- */
.mx-sm {padding-bottom:3.93rem;}
.avatar--success {padding:2.43rem 2.57rem 1.24rem;}
.progressInner {margin-bottom:0.88rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}

.viewRow {color: var(--dim); flex-wrap: wrap; align-items: center; gap:0.47rem 1.2rem; font-size:0.83rem; display: flex;}.el-tag{contain:none; align-items: center; gap:0.45rem; display: inline-flex;}
.el-tag svg {flex-shrink: 0; opacity:0.75;}
.h-between {font-style:italic;}/* toc */
.leading-4:not(._40b791){padding:0 2.62rem;}
.h-full {display: flex; align-items: center; justify-content: space-between;}
.tracking-block {transform-style:flat; border-radius: var(--rad-s); padding:0.99rem 1.3rem; contain:none; border: 1px solid var(--edge); background: var(--bg-2);}
.justify-xl {break-inside:auto; margin:0; font-size:0.9rem;}
.mr-12 {border:none; padding-top:0.17rem;padding-right:0.17rem;padding-bottom:0.17rem;padding-left:0.17rem; color: var(--dim); display: inline-flex; transition:transform 0.227s, color 0.231s; background:none;}
.mr-12:hover {color: var(--acc);}
.tracking-block.is-shut .mr-12 {transform: rotate(-90deg);}
.tracking-block.is-shut .ml-0 {display: none;}
.ml-0 {padding-top:0.71rem; border-top: 1px solid var(--edge); margin-top:0.73rem; font-size:0.86rem; line-height:1.9; transform-style:flat;}
.ml-0 a {color: var(--text); display: block;}
.ml-0 a:hover {color: var(--acc);}
.ml-0 .overflow-xl {font-size:0.82rem; padding-left:1.05rem;}

/* rich content */
.gap-3 {padding:1.47rem 2.64rem 0.35rem;}body .hero__title--focused{color: var(--text); font-size:0.96rem; line-height:1.8;}
.hero__title--focused > * + * {margin-top:1.2rem;}
.hero__title--focused h2 {line-height:1.3; scroll-margin-top:5rem; border-top: 1px solid var(--edge-2); font-size:1.47rem; margin-top:2.32rem; color: var(--ink); font-family: var(--display); padding-top:1.28rem;}
.hero__title--focused h3 {margin-top:1.71rem; font-size:1.26rem; scroll-margin-top:5rem; font-family: var(--display); color: var(--ink);}
.hero__title--focused h4 {color: var(--ink); font-family: var(--display); font-size:1.09rem; margin-top:1.3rem;}*.hero__title--focused a{text-decoration:underline; text-underline-offset:2px; text-decoration-thickness:1px;}
.hero__title--focused strong, .hero__title--focused b {font-weight:700; color: var(--ink);}
.hero__title--focused ul, .hero__title--focused ol {margin-left:1.24rem;}
.hero__title--focused ul {list-style: disc;}html .hero__title--focused ol{list-style: decimal;}
.hero__title--focused li {margin-top:0.44rem; padding-left:0.32rem; break-inside:auto; page-break-inside:auto;}
.hero__title--focused img {border-radius: var(--rad-s); margin:1.45rem 0;}body .hero__title--focused blockquote{border-radius: 0 var(--rad-s) var(--rad-s) 0; background: var(--tint); border-left: 3px solid var(--acc); font-style:italic; color: var(--ink); padding:0.82rem 1.19rem;}
.hero__title--focused code {border-radius:2px; background: var(--bg-2);}
.hero__title--focused code {font-family:ui-monospace, "SF Mono", "Courier New", monospace; border: 1px solid var(--edge); padding:0.11em 0.43em; font-size:0.92em;}
.hero__title--focused pre {color:#featureSeparator; border-radius: var(--rad-s); padding:1.04rem 1.29rem; font-size:0.85rem; overflow-x: auto; line-height:1.7; background: var(--night);}
.hero__title--focused pre code {border:0rem; background:none; color:inherit; padding:0;}
.hero__title--focused table {width:100%; border-collapse:collapse; orphans:2; font-size:0.87rem;}
.hero__title--focused th, .hero__title--focused td {border: 1px solid var(--edge); padding:0.7rem 0.86rem; text-align: left;}
.hero__title--focused th {color: var(--ink); font-weight:700;}
.hero__title--focused th {background: var(--bg-2);}html .hero__title--focused hr{margin:1.99rem 0; border-top: 1px solid var(--edge); border:0 none;}

/* share */
.row-0 {padding:1.65rem 2.63rem 2.38rem;}
.bg-1 {flex-wrap: wrap;}
.bg-1 {gap:0.58rem; display: flex;}
.pb-3 {color: var(--dim); border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; border: 1px solid var(--edge); justify-content: center; width:36px; transition:background 0.21s, color 0.166s, border-color 0.25s, transform 0.14s; background: var(--card); display: inline-flex; align-items: center; height:35px;}

/* ---------- talk / reach (forms) ---------- */
.mb-2xl, .entrySummary {max-width: var(--read); border-radius: var(--rad); margin:2.21rem auto 0; box-shadow: var(--sh); padding:1.93rem 2.59rem 2.16rem; border: 1px solid var(--edge); background: var(--card);}
.pb-3:hover {border-color: var(--acc); backface-visibility:visible; transform: translateY(-1px); color:#page-spinner; text-decoration-skip-ink:auto; background: var(--acc);}html .my-md{margin-top:-0.56rem; margin-bottom:1.22rem; font-size:0.93rem; color: var(--dim);}/* ---------- more (related) ---------- */
.filterTitle{margin:2.23rem auto 0; max-width: var(--read);}
.grid-16 {display: grid; grid-template-columns: repeat(3, 1fr); gap:1.03rem;}
.row-half {background: var(--card); page-break-inside:auto; border-radius: var(--rad-s); padding:1.01rem 1.16rem; border: 1px solid var(--edge); backface-visibility:visible; display: block; box-shadow: var(--sh); transition:transform 0.213s, box-shadow 0.194s, border-color 0.194s;}html .row-half:hover{box-shadow: var(--sh-l); transform: translateY(-2px); border-color: var(--acc-l);}.order-4{hyphens:manual; line-height:1.4; font-size:1.01rem; color: var(--ink); font-weight:bold; widows:2; font-family: var(--display);}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {border-radius: var(--rad-s); background: var(--bg-2); border: 1px solid var(--edge); color: var(--ink); width:100%; transition:border-color 0.181s, box-shadow 0.155s, background 0.222s; font:inherit; padding:0.72rem 1.01rem;}input::placeholder, textarea::placeholder{break-inside:auto; color: var(--dim); perspective:none;}
input:focus, textarea:focus {isolation:auto; outline:0rem; border-color: var(--acc); background: var(--card); font-variant-caps:normal; box-shadow:0 0 0 5px rgba(9, 144, 127, 0.17);}
textarea {min-height:6.49rem; resize: vertical;}

.pt-lg {display: flex; gap:0.92rem; flex-wrap: wrap;}
.modal-expanded {flex: 1 1 calc(50% - 0.5rem); min-width:0;}
.font-half {flex: 1 1 100%;}

.ml-end {display: flex;}
.ml-end input {font-variant-caps:normal; flex: 1; min-width:0; border-right:none; border-radius: var(--rad-s) 0 0 var(--rad-s);}
.ml-end .row-none {border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.row-none {gap:0.45rem; color: var(--ink); border-radius: var(--rad-s); justify-content: center; min-height:2.77rem; text-transform:uppercase; font-weight:700; transition:background 0.239s, color 0.242s, border-color 0.222s; align-items: center; font-size:0.79rem; display: inline-flex; border: 1px solid var(--edge); padding:0.72rem 1.37rem; background: var(--card); letter-spacing:0.03em;}
.row-none:hover {hyphens:manual; page-break-inside:auto; color: var(--ink); background: var(--bg-2); border-color: var(--dim);}
.rounded-12 {border-color: var(--acc); background: var(--acc); color:#page-spinner; text-rendering:auto;}
.rounded-12:hover {color:#page-spinner; border-color: var(--acc-d); background: var(--acc-d);}.z-6:not(._40b791){padding:0.63rem 1.04rem; min-width:2.94rem;}.p-sm:not(._40b791){width:100%;}

/* ---------- decks (newsletter + account) ---------- */
.dialog-body {gap:1.27rem; margin:2.57rem auto 0; text-rendering:auto; grid-template-columns: 1fr 1fr; max-width: var(--band); display: grid;}.shadow-xl:not(._40b791){padding:1.42rem 1.63rem; border-radius: var(--rad); background: var(--card); box-shadow: var(--sh); display: flex; border: 1px solid var(--edge); print-color-adjust:economy; font-synthesis:weight style small-caps; flex-direction: column;}
.gap-16 {display: flex; flex-direction: column; margin-top:auto; gap:0.64rem;}
.p-start {hyphens:manual; color: var(--dim); backface-visibility:visible; font-size:0.88rem; margin-bottom:1.03rem;}
.gap-16 .row-none {width:100%;}/* ---------- footer ---------- */
.ui-toolbar{background: var(--night); color: var(--on-night); font-variant-ligatures:normal; margin-top:3.41rem; padding:2.58rem 0; backface-visibility:visible;}.border-lg:not(._40b791){max-width: var(--max); margin-inline:auto; padding:0 1.2rem; align-items: center; mix-blend-mode:normal; width:100%; flex-wrap: wrap; justify-content: space-between; gap:1.46rem; display: flex;}
.bg-between img {height:30px; filter:brightness(0) invert(1); backface-visibility:visible; opacity:0.83; width:auto; text-rendering:auto;}.border-auto{font-size:0.84rem; margin-top:0.76rem; color: var(--on-night);}
.justify-lg {display: flex; gap:1.34rem;}
.justify-lg a {isolation:auto; font-size:0.83rem; color: var(--on-night);}.justify-lg a:hover{font-variant-ligatures:normal; transform-style:flat; color:#page-spinner;}

.pb-20 {print-color-adjust:economy; gap:0.64rem; display: flex;}html .pb-20 a{justify-content: center; display: inline-flex; align-items: center; border-radius: var(--rad-s); height:36px; background:rgba(251, 255, 255, 0.1); width:39px; transition:background 0.172s, color 0.235s, transform 0.18s; color: var(--on-night);}
.pb-20 a:hover {color:#page-spinner; transform: translateY(-1px); background: var(--acc);}/* ---------- back to top ---------- */
.m-full:not(._40b791){justify-content: center; position: fixed; height:42px; right:1.58rem; z-index: 900; border-radius:50%; transition:background 0.209s, transform 0.202s; display: none; border:0 none; box-shadow: var(--sh-l); width:47px; bottom:1.68rem; color:#page-spinner; background: var(--acc); align-items: center;}
.m-full:hover {hyphens:manual; background: var(--acc-d); transform: translateY(-2px);}

/* ---------- cookie ---------- */
.bg-5 {left:0; padding:0.95rem 0; box-shadow:0 -5px 21px rgba(11, 50, 30, 0.1); background: var(--card); z-index: 1100; border-top: 1px solid var(--edge); right:0; position: fixed; bottom:0;}.m-full.mb-start{display: inline-flex;}html .font-auto{gap:1.52rem; align-items: center; font-variant-caps:normal; display: flex; width:100%; margin-inline:auto; max-width: var(--max); padding:0 1.17rem; justify-content: space-between;}
.bg-5 p {margin:0rem; color: var(--text); font-size:0.8rem;}
.bg-5 .row-none {padding:0.47rem 1.37rem; flex-shrink: 0; min-height:2.38rem;}/* ---------- auth layers (CSS :target modal) ---------- */
.pr-0{word-spacing:normal; z-index: 1300; position: fixed; display: none; orphans:2; inset:0;}body .pr-0:target{padding-top:1.18rem; padding-right:1.18rem; padding-bottom:1.18rem; padding-left:1.18rem;}body .pr-0:target{display: grid; place-items: center;}
.bg-2xl {border: 1px solid var(--edge); width: min(94vw, 25rem); border-radius: var(--rad); animation:pop 0.205s ease-out; background: var(--card); padding:1.76rem 1.79rem 1.67rem; z-index: 1; break-inside:auto; box-shadow: var(--sh-l); position: relative;}
.d-1 {backdrop-filter:blur(2px); position: absolute; inset:0; background:rgba(23, 23, 12, 0.63);}
@keyframes pop { from {opacity:0; transform: translateY(8px) scale(0.99);} to {opacity:1; transform: none;} }.float-6{line-height:1; top:0.78rem; right:0.79rem; color: var(--dim); font-size:1.44rem; text-decoration:none; position: absolute;}.float-6:hover{color: var(--ink);}
.pr-0 .leading-xs {display: flex; flex-direction: column; gap:0.9rem;}.ui-timeline-indicator{font-size:0.8rem; color: var(--dim); text-align: center; margin-top:0.14rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .justify-20 {display: flex;}.pb-screen:not(._40b791){box-shadow: var(--sh); right:0; background: var(--card); position: absolute; gap:0; top:100%; orphans:2; display: none; left:0; align-items: stretch; flex-direction: column; border-bottom: 1px solid var(--edge); padding:0.56rem 0; backface-visibility:visible;}.viewCap{text-rendering:auto; gap:0; padding:0 1.24rem; flex-direction: column;}
  .pb-screen.open {display: flex; contain:none;}body .viewCap a{border-bottom: 1px solid var(--edge-2); contain:none; padding:0.88rem 0;}

  .grid-16 {grid-template-columns: 1fr 1fr;}
  .postWrapper {padding:0.94rem 1.26rem 0.46rem; gap:0.77rem;}
}

@media (max-width: 680px) {
  html {font-size:100%;}*.dialog-body{grid-template-columns: 1fr;}
  .avatar--success {mix-blend-mode:normal; padding:1.73rem 1.48rem 1.07rem; perspective:none;}.leading-4:not(._40b791){padding:0 1.45rem;}
  .gap-3 {isolation:auto; padding:1.33rem 1.34rem 0.35rem; background-blend-mode:normal;}
  .row-0 {padding:1.25rem 1.33rem 1.85rem;}body .mb-2xl, html .entrySummary{padding:1.6rem 1.41rem 1.79rem;}
  .border-lg {mix-blend-mode:normal; gap:1.23rem; align-items: flex-start; flex-direction: column;}
  .grid-16 {background-blend-mode:normal; grid-template-columns: 1fr;}body .font-auto{text-align: center; flex-direction: column; font-variant-caps:normal; gap:0.82rem;}
}

@media (max-width: 460px) {
  .modal-expanded {flex: 1 1 100%;}.m-full:not(._40b791){right:1.01rem; bottom:1rem;}
}

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

@media print {
  .actionSection, .row-0, .mb-2xl, .filterTitle, .entrySummary,
  .dialog-body, .ui-toolbar, .m-full, .bg-5, .pr-0, .px-block {display: none !important; backface-visibility:visible;}
  .overflow-between {max-width:none; box-shadow:none; border:0;}
  body {background:#page-spinner;}
}
