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

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

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

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

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

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

:focus-visible {outline-offset:2px; shape-margin:0; outline: 2px solid var(--acc); border-radius:4px;}

.pl-between {border:0rem; overflow: hidden; height:1px; padding:0; margin:-1px; position: absolute; white-space: nowrap; width:1px; clip:rect(0, 0, 0, 0);}/* span headings (no h2/h3 anywhere but article content) */
.leading-md, .mr-around, .gap-xs, body .tracking-sm, html .justify-5{font-weight:bold; letter-spacing:-0.01em; font-family: var(--display); display: block; color: var(--ink);}
.mr-around {word-spacing:normal; font-size:1.08rem; mix-blend-mode:normal; margin-bottom:0.26rem;}html .leading-md{margin-bottom:1.02rem; font-size:1.24rem;}
.gap-xs {margin-bottom:1.26rem; font-size:1.26rem;}/* ---------- scroll progress ---------- */
.bg-between{height:4px; z-index: 1200; left:0; transition:width 0.06s linear; background: var(--acc); top:0; position: fixed; width:0;}

/* ---------- topbar ---------- */
.m-1 {top:0; border-bottom: 1px solid var(--edge); position: sticky; backdrop-filter:saturate(150%) blur(8px); z-index: 1000; background:rgba(244, 245, 255, 0.91);}
.c-status {display: flex; min-height:3.96rem; justify-content: space-between; width:100%;}
.c-status {padding:0 1.21rem; max-width: var(--max); align-items: center; gap:0.92rem; margin-inline:auto;}.row-2xl{align-items: center; display: inline-flex;}

.gap-start {background:none; gap:5px; padding:0.47rem; flex-direction: column; display: none; border:none;}
.rating-link > image {opacity:1; align-items:baseline; border-radius:4px}

.row-2xl img {width:auto; height:28px;}.gap-start span{width:23px; height:2px; border-radius:2px; display: block; transform-style:flat; background: var(--ink);}

.align-none {align-items: center; gap:1.86rem; display: flex;}
.row-6 {display: flex; gap:1.44rem;}
.row-6 a, .hero-secondary {color: var(--text); text-transform:uppercase; font-size:0.76rem; font-weight:600; letter-spacing:0.03em;}
.mt-3 {align-items: center; display: flex; gap:0.94rem;}html .row-6 a:hover, html .hero-secondary:hover{color: var(--acc);}
.pr-screen {color:#f7efff; background: var(--acc); letter-spacing:0.03em; padding:0.57rem 1.03rem; font-weight:700; text-transform:uppercase; font-size:0.85rem; border-radius: var(--rad-s); transition:background 0.177s;}.pr-screen:hover{color:hsl(0, 0.2%, 100%); background: var(--acc-d);}/* ---------- flow / shell ---------- */
.mb-4{padding-bottom:4.02rem;}
.ui-avatar-head {padding:2.43rem 2.53rem 1.35rem;}

/* ---------- post ---------- */
.app-select-group {border-radius: var(--rad); max-width: var(--read); margin:1.54rem auto 0; box-shadow: var(--sh); overflow: hidden; background: var(--card); border: 1px solid var(--edge);}
.box__head--warning {margin-bottom:0.87rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}.gap-auto{gap:0.49rem 1.17rem; display: flex; align-items: center; font-size:0.79rem; flex-wrap: wrap; color: var(--dim);}
.carouselPreview {align-items: center; display: inline-flex; gap:0.4rem;}
.carouselPreview svg {flex-shrink: 0; opacity:0.71;}
.mx-8 {font-style:italic;}

/* toc */
.order-6 {padding:0 2.67rem;}
.mt-2 {background: var(--bg-2); padding:1.06rem 1.24rem; border: 1px solid var(--edge); border-radius: var(--rad-s);}
.font-lg {display: flex; justify-content: space-between; align-items: center;}.tracking-sm{margin:0; perspective:none; font-size:0.87rem; mix-blend-mode:normal;}body .mx-5{background:none; color: var(--dim); font-variant-caps:normal; display: inline-flex; transition:transform 0.242s, color 0.189s; border:0 none; shape-margin:0; padding:0.28rem;}
.mx-5:hover {color: var(--acc);}
.hero-handle:first-child {margin-right:48px; flex-wrap:wrap; transition:opacity 0.45s; font-weight:normal; position:relative}

.mt-2.is-shut .mx-5 {transform: rotate(-90deg);}
.mt-2.is-shut .stepperArea {display: none;}html .stepperArea{line-height:1.9; font-size:0.92rem; border-top: 1px solid var(--edge); padding-top:0.61rem; margin-top:0.77rem;}
.stepperArea a {display: block; color: var(--text);}
.modal-preview .timeline-group {opacity:1; overflow:hidden; min-height:100vh; line-height:1; flex:0 0 auto; transition:color 0.4s}

.stepperArea a:hover {color: var(--acc);}

/* rich content */
.t-thread {padding:1.47rem 2.59rem 0.22rem;}body .stepperArea .my-between{padding-left:1.15rem; font-size:0.79rem;}.pl-6:not(.skip43){line-height:1.8; font-size:0.96rem;}.pl-6:not(.skip43){color: var(--text);}
.pl-6 > * + * {mix-blend-mode:normal; image-rendering:auto; margin-top:1.28rem;}
@media (min-width: 1024px) {
  #chip-area {line-height:1.625; transition:color 0.15s}
  .banner__slot {display:inline; position:sticky; transition:transform 0.3s ease-in-out; margin:0}
  .popover--danger {overflow:hidden; transition:all 0.35s ease; text-align:justify; width:100%}
  .alert-cap:not(:last-child) {display:none; flex-wrap:nowrap; color:currentColor; padding-bottom:1.5rem; cursor:pointer; text-align:left}
}

html .pl-6 h2{color: var(--ink); line-height:1.3; border-top: 1px solid var(--edge-2); font-family: var(--display); margin-top:2.38rem; padding-top:1.32rem; scroll-margin-top:5rem; font-size:1.55rem;}
.footer-trigger > primary {margin-right:0; overflow:visible; box-shadow:none; text-decoration:underline; min-height:46px; font-weight:500}
*.pl-6 h3{scroll-margin-top:5rem; margin-top:1.76rem; color: var(--ink); font-size:1.25rem; font-family: var(--display);}
.pl-6 h4 {font-family: var(--display); color: var(--ink); margin-top:1.29rem; font-size:1.03rem;}
.pl-6 a {text-decoration-thickness:1px; text-decoration:underline; orphans:2; text-underline-offset:2px;}
.pl-6 strong, .pl-6 b {color: var(--ink); font-weight:700;}*.pl-6 ul, .pl-6 ol{margin-left:1.31rem;}
.pl-6 ul {list-style: disc; page-break-inside:auto;}
.pl-6 ol {list-style: decimal;}
.pl-6 li {margin-top:0.4rem; padding-left:0.34rem;}
.pl-6 img {border-radius: var(--rad-s); margin:1.43rem 0;}body .pl-6 blockquote{border-radius: 0 var(--rad-s) var(--rad-s) 0; color: var(--ink); font-style:italic; padding:0.78rem 1.33rem; background: var(--tint); border-left: 3px solid var(--acc);}
.pl-6 code {font-size:0.82em; border-radius:2px; border: 1px solid var(--edge); background: var(--bg-2); padding:0.06em 0.49em; font-family:ui-monospace, "SF Mono", "Courier New", monospace;}
.pl-6 pre {padding:1.09rem 1.28rem; line-height:1.7; hyphens:manual; font-size:0.9rem; overflow-x: auto; background: var(--night); color:#d7f9e5; border-radius: var(--rad-s);}
.pl-6 pre code {background:none; color:inherit; border:0; padding:0;}.pl-6 table{border-collapse:collapse; font-size:0.88rem; width:100%;}
.carousel-meta .price-handle {transition:all 0.4s ease; color:#666666}

.pl-6 th, .pl-6 td {padding-top:0.6rem;padding-right:0.82rem;padding-bottom:0.6rem;padding-left:0.82rem; border: 1px solid var(--edge); text-align: left;}
.pl-6 th {background: var(--bg-2); font-weight:700; color: var(--ink);}

/* share */
.py-lg {padding:1.68rem 2.65rem 2.42rem;}
.pl-6 hr {border-top: 1px solid var(--edge); border:0 none; margin:2.02rem 0;}
.m-screen {display: flex; gap:0.53rem; flex-wrap: wrap;}.bg-screen{align-items: center; width:36px;}.bg-screen{height:41px; transition:background 0.143s, color 0.258s, border-color 0.202s, transform 0.111s; justify-content: center; background: var(--card); display: inline-flex; color: var(--dim); border-radius:50%; border: 1px solid var(--edge);}/* ---------- talk / reach (forms) ---------- */
.text-end, body .rating__zone--info{box-shadow: var(--sh); background: var(--card); border: 1px solid var(--edge); margin:2.28rem auto 0; border-radius: var(--rad); padding:1.98rem 2.52rem 2.1rem; max-width: var(--read);}
.bg-screen:hover {transform: translateY(-1px); background: var(--acc); border-color: var(--acc); color:rgb(255, 255, 246);}
.u-alert-label {color: var(--dim); font-size:0.85rem; margin-bottom:1.26rem; margin-top:-0.56rem;}

/* ---------- more (related) ---------- */
.font-1 {margin:2.24rem auto 0; max-width: var(--read);}.visible-10{transform-style:flat; font-variant-ligatures:normal; gap:0.95rem; display: grid; grid-template-columns: repeat(3, 1fr);}
.col-between {border: 1px solid var(--edge); display: block; box-shadow: var(--sh); background: var(--card); padding:0.97rem 1.16rem; transition:transform 0.224s, box-shadow 0.121s, border-color 0.174s; border-radius: var(--rad-s);}
.col-between:hover {border-color: var(--acc-l); box-shadow: var(--sh-l); transform: translateY(-2px);}.pl-xl:not(.none12){font-size:0.91rem; font-weight:700; font-family: var(--display); line-height:1.4; color: var(--ink);}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {background: var(--bg-2); border: 1px solid var(--edge); color: var(--ink); border-radius: var(--rad-s); font:inherit; width:100%; text-underline-offset:auto; padding:0.83rem 0.93rem; transition:border-color 0.234s, box-shadow 0.144s, background 0.158s;}
input::placeholder, textarea::placeholder {color: var(--dim);}input:focus, textarea:focus{background-blend-mode:normal; box-shadow:0 0 0 4px rgba(25, 165, 132, 0.12); outline:0; border-color: var(--acc); background: var(--card);}
textarea {resize: vertical; min-height:6.56rem;}

.l-review {gap:0.98rem; display: flex; flex-wrap: wrap;}
.m-between {min-width:0; flex: 1 1 calc(50% - 0.5rem);}
.my-2xl {flex: 1 1 100%;}

.mr-10 {display: flex;}
.mr-10 input {min-width:0; border-radius: var(--rad-s) 0 0 var(--rad-s); flex: 1; border-right:none;}*.mr-10 .border-none{border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.border-none {background: var(--card); min-height:2.85rem; letter-spacing:0.03em; font-weight:700; justify-content: center; border-radius: var(--rad-s); text-transform:uppercase; gap:0.46rem; align-items: center; color: var(--ink); border: 1px solid var(--edge); display: inline-flex; transition:background 0.168s, color 0.157s, border-color 0.189s; padding:0.69rem 1.3rem; font-size:0.84rem;}
.border-none:hover {background: var(--bg-2); border-color: var(--dim); color: var(--ink);}
.breadcrumb-highlight {background: var(--acc); color:#efffff; border-color: var(--acc);}
.breadcrumb-highlight:hover {color:#ffffff; background: var(--acc-d); border-color: var(--acc-d);}
.ui-filter-close {padding-top:0.76rem;padding-right:1.01rem;padding-bottom:0.76rem;padding-left:1.01rem; font-synthesis:weight style small-caps; min-width:2.93rem;}
.shadow-around {width:100%;}

/* ---------- decks (newsletter + account) ---------- */
.justify-8 {max-width: var(--band); shape-margin:0; gap:1.26rem; margin:2.54rem auto 0; display: grid; image-rendering:auto; grid-template-columns: 1fr 1fr;}
.module-data {justify-content:space-around; max-width:100%; text-transform:lowercase}

.mb-3 {background: var(--card); padding:1.44rem 1.59rem; display: flex; flex-direction: column; box-shadow: var(--sh); border-radius: var(--rad); border: 1px solid var(--edge);}
.align-inline {font-size:0.84rem; margin-bottom:0.97rem; color: var(--dim);}
.ui-header {text-rendering:auto; display: flex; gap:0.66rem; font-synthesis:weight style small-caps; margin-top:auto; flex-direction: column;}
.ui-header .border-none {width:100%;}/* ---------- footer ---------- */
.opacity-5{color: var(--on-night); padding:2.57rem 0; background: var(--night); margin-top:3.48rem;}
.gallery-group-disabled {justify-content: space-between; width:100%; margin-inline:auto; padding:0 1.2rem; max-width: var(--max); align-items: center; gap:1.43rem; flex-wrap: wrap; display: flex;}
.widgetInfo img {width:auto;}
.widgetInfo img {filter:brightness(0) invert(1); height:26px; opacity:0.9;}
.clear-12 {color: var(--on-night); margin-top:0.63rem; font-size:0.8rem;}
.ml-5 {gap:1.25rem; display: flex;}
.ml-5 a {color: var(--on-night); font-size:0.91rem;}*.ml-5 a:hover{color:#ffffef;}.bg-20{background-blend-mode:normal;}
.rating__action {max-width:1400px; color:currentColor}
.bg-20{gap:0.58rem; display: flex;}
.bg-20 a {background:rgba(255, 255, 255, 0.05); width:33px; transition:background 0.166s, color 0.188s, transform 0.159s; border-radius: var(--rad-s); color: var(--on-night); display: inline-flex; align-items: center; justify-content: center; height:35px;}
.bg-20 a:hover {transform: translateY(-1px); color:#fbf2ff; background: var(--acc);}

/* ---------- back to top ---------- */
.ui-thread {box-shadow: var(--sh-l); justify-content: center; position: fixed; border:0 none; color:#fffff1; z-index: 900; bottom:1.54rem; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; display: none; width:44px; transition:background 0.224s, transform 0.13s; height:47px; right:1.6rem; align-items: center; background: var(--acc);}
.ui-thread:hover {transform: translateY(-2px); background: var(--acc-d);}/* ---------- cookie ---------- */
:where(.form-first){z-index: 1100; box-shadow:0 -8px 23px rgba(33, 39, 39, 0.11); left:0; border-top: 1px solid var(--edge); bottom:0; position: fixed; break-inside:auto; padding:0.9rem 0; background: var(--card); right:0;}
.ui-thread.mb-2 {display: inline-flex;}
.form-first p {margin:0; color: var(--text); font-size:0.77rem;}
.col-24 {margin-inline:auto; justify-content: space-between; max-width: var(--max); display: flex; width:100%; align-items: center; padding:0 1.26rem; gap:1.46rem;}
.table-item:not(:last-child) {min-height:7px; display:grid; font-weight:700; background-color:#ef8410; transition:transform 0.25s ease-in-out}

.price-container:not(:last-child) {color:rgb(159, 92, 200); border-radius:0; position:relative; flex:none}

.form-first .border-none {min-height:2.37rem; word-spacing:normal; orphans:2; flex-shrink: 0; padding:0.61rem 1.35rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.list-wide {position: fixed; inset:0rem; z-index: 1300; display: none;}
.list-wide:target {word-spacing:normal; place-items: center; display: grid; padding:1.18rem; text-underline-offset:auto;}
.h-20 {backdrop-filter:blur(2px); inset:0;}
.block--fixed {flex:1; gap:1.25rem; position:absolute; letter-spacing:normal}

.h-20 {position: absolute; background:rgba(27, 21, 26, 0.52);}*.flex-0{padding:1.81rem 1.79rem 1.61rem; box-shadow: var(--sh-l); background: var(--card); position: relative; z-index: 1; border: 1px solid var(--edge); animation:pop 0.14s ease-out; border-radius: var(--rad); width: min(94vw, 25rem);}
@keyframes pop { from {transform: translateY(8px) scale(0.99); opacity:0;}to{text-rendering:auto; transform: none; opacity:1; font-synthesis:weight style small-caps;} }
.mr-0 {line-height:1; color: var(--dim); font-size:1.45rem; top:0.66rem; right:0.88rem; position: absolute; text-decoration:none;}
.mr-0:hover {color: var(--ink);}body .list-wide .progress-toggle-narrow{display: flex; gap:0.95rem; flex-direction: column;}
.my-8 {font-size:0.8rem; margin-top:0.28rem; color: var(--dim); text-align: center;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {.gap-start:not(.empty97){display: flex; tab-size:4;}
  .align-none {flex-direction: column; border-bottom: 1px solid var(--edge); align-items: stretch; background: var(--card); right:0; padding:0.46rem 0; gap:0; top:100%; position: absolute; display: none; left:0; box-shadow: var(--sh);}html .align-none.open{display: flex;}.row-6{padding:0 1.24rem; flex-direction: column; gap:0;}.row-6 a{padding:0.73rem 0; text-underline-offset:auto; border-bottom: 1px solid var(--edge-2);}
  .mt-3 {padding:0.96rem 1.17rem 0.44rem; gap:0.81rem;}
.card__block {letter-spacing:normal; flex-wrap:nowrap}


  .visible-10 {grid-template-columns: 1fr 1fr;}
.drawer--bottom {height:100%; padding-top:1.125rem; display:flex; margin-right:34px; padding:2.5rem 0.25rem; cursor:pointer}

  .justify-8 {grid-template-columns: 1fr;}
}

@media (max-width: 680px) {
  html {font-size:100%;}
@media (min-width: 1440px) and (max-width: 1692px) {
  .block--fixed {transition:opacity 0.5s; display:grid; position:sticky}
  .hero-handle:first-child {margin-bottom:1.125rem; padding-left:2rem; gap:39px}
  .price-container:not(:last-child) {transition:color 0.3s; padding-bottom:10px}
  .modal-preview .timeline-group {padding-bottom:2rem; justify-content:flex-end}
}


  .order-6 {padding:0 1.46rem;}
  .ui-avatar-head {padding:1.72rem 1.33rem 1.07rem;}
  .t-thread {padding:1.37rem 1.34rem 0.26rem;}
  .py-lg {padding:1.29rem 1.41rem 1.89rem;}
  .text-end, .rating__zone--info {widows:2; padding:1.57rem 1.45rem 1.84rem;}
  .visible-10 {grid-template-columns: 1fr;}body .gallery-group-disabled{align-items: flex-start;}html .col-24{gap:0.79rem; flex-direction: column; text-align: center;}body .gallery-group-disabled{flex-direction: column; isolation:auto; page-break-inside:auto; gap:1.2rem;}
}

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

@media (prefers-reduced-motion: reduce) {html{scroll-behavior: auto;}
  .ui-thread {bottom:1.03rem; text-underline-offset:auto; right:0.96rem; background-blend-mode:normal;}
  * {animation:none !important; transition:none !important;}
}

@media print {*.m-1, *.py-lg, html .text-end, .font-1, .rating__zone--info, .justify-8, html .opacity-5, *.ui-thread, body .form-first, .list-wide, *.bg-between{display: none !important;}
  body {background-blend-mode:normal; background-color:#ffffff;}
  .app-select-group {border:0; box-shadow:none; max-width:none;}
}
