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

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

html {text-decoration-skip-ink:auto; scroll-behavior: smooth; font-size:111.6%; -webkit-text-size-adjust:100%;}body{color: var(--text); font-family: var(--text-font); line-height:1.72; font-size:1.01rem; -moz-osx-font-smoothing:grayscale;}body{background: var(--bg); -webkit-font-smoothing:antialiased;}

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

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

.t-list-link {clip:rect(0, 0, 0, 0); padding:0; width:1px;}

.t-list-link {margin:-1px; border:0 none; overflow: hidden; height:1px; position: absolute; white-space: nowrap;}

/* span headings (no h2/h3 anywhere but article content) */
.accordion-name-empty, .o-spinner, .profile-pressed, .el-divider-fill, .c-timeline {letter-spacing:-0.01em; display: block; font-family: var(--display); font-weight:700; color: var(--ink);}html .accordion-name-empty{font-size:1.3rem; margin-bottom:1.05rem;}
.o-spinner {margin-bottom:0.3rem; font-size:1.06rem;}
.profile-pressed {margin-bottom:1.28rem; font-size:1.32rem;}

/* ---------- scroll progress ---------- */
.t-filter {height:6px; left:0; position: fixed; width:0; will-change:auto; z-index: 1200; top:0px; transition:width 0.131s linear; background: var(--acc);}/* ---------- topbar ---------- */
:where(.c-gallery){backdrop-filter:saturate(150%) blur(8px); border-bottom: 1px solid var(--edge); top:0; z-index: 1000;}/* ---------- topbar ---------- */
:where(.c-gallery){page-break-inside:auto; isolation:auto; background:rgba(251, 239, 255, 0.95); position: sticky;}html .c-snackbar{padding:0 1.2rem; justify-content: space-between; gap:0.99rem; width:100%; min-height:3.94rem; align-items: center; max-width: var(--max); display: flex; margin-inline:auto;}
.stepperCell {align-items: center; display: inline-flex;}body .stepperCell img{height:30px; width:auto;}

.app-review {flex-direction: column; border:none; display: none; background:none; padding:0.38rem; gap:2px;}
.app-review span {background-blend-mode:normal; display: block; border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; contain:none; width:21px; background: var(--ink); height:2px;}html .rounded-around{display: flex; align-items: center; gap:1.77rem;}
.l-step {gap:1.5rem; display: flex;}
.l-step a, .u-layout {color: var(--text); text-transform:uppercase; font-weight:500; font-size:0.89rem; letter-spacing:0.03em;}
.l-step a:hover, .u-layout:hover {color: var(--acc);}
.t-action-addon {align-items: center; gap:0.96rem; display: flex;}.u-list-row:not(._406f0f){font-weight:bold; border-radius: var(--rad-s); text-transform:uppercase; letter-spacing:0.03em; padding:0.54rem 1rem; background: var(--acc); font-size:0.81rem; color:#sortLink; transition:background 0.169s;}
.u-list-row:hover {color:#sortLink; background: var(--acc-d);}/* ---------- post ---------- */
.c-progress-title:not(._406f0f){overflow: hidden; margin:1.56rem auto 0; box-shadow: var(--sh); border: 1px solid var(--edge); max-width: var(--read); background: var(--card); border-radius: var(--rad);}

/* ---------- flow / shell ---------- */
.t-header-number {padding-bottom:3.93rem; perspective:none; text-underline-offset:auto;}.el-toolbar{padding:2.32rem 2.65rem 1.32rem;}
.u-grid {margin-bottom:0.8rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}

.t-drawer {font-size:0.86rem; flex-wrap: wrap; display: flex; gap:0.45rem 1.27rem; align-items: center; color: var(--dim);}
.screenPlaceholder {mix-blend-mode:normal; gap:0.41rem; align-items: center; display: inline-flex;}
.screenPlaceholder svg {opacity:0.75; flex-shrink: 0;}

/* toc */
.app-section {padding:0 2.56rem;}.search__addon--selected:not(._406f0f){font-style:italic;}
.el-divider {border-radius: var(--rad-s); background: var(--bg-2); padding:1.08rem 1.18rem; border: 1px solid var(--edge);}
.c-reply {display: flex; justify-content: space-between; align-items: center;}
.el-divider-fill {font-size:0.94rem; margin:0;}.app-filter:not(._406f0f){border:0em; display: inline-flex; transition:transform 0.306s, color 0.255s; padding-top:0.13rem; padding-right:0.13rem; padding-bottom:0.13rem;}.app-filter:not(._406f0f){padding-left:0.13rem; background:none; color: var(--dim);}*.app-filter:hover{color: var(--acc);}*.el-divider.is-shut .app-filter{transform: rotate(-90deg); font-synthesis:weight style small-caps;}
.el-divider.is-shut .t-section-group {display: none;}
.t-section-group {margin-top:0.78rem; padding-top:0.73rem; line-height:1.9; break-inside:auto; font-size:0.98rem; text-decoration-skip-ink:auto; border-top: 1px solid var(--edge);}
.t-section-group a {color: var(--text); perspective:none; display: block; font-variant-caps:normal;}
.t-section-group a:hover {hyphens:manual; color: var(--acc);}html .t-section-group .c-thread{font-size:0.89rem; padding-left:1.03rem;}
.ui-pagination {color: var(--text); font-size:1.06rem; line-height:1.8;}/* rich content */
.app-hero{font-variant-ligatures:normal; background-blend-mode:normal; padding:1.47rem 2.58rem 0.38rem;}html .ui-pagination > * + *{margin-top:1.17rem;}
.ui-pagination h2 {margin-top:2.24rem; padding-top:1.23rem; border-top: 1px solid var(--edge-2); font-size:1.5rem; text-underline-offset:auto; font-family: var(--display); scroll-margin-top:5rem; color: var(--ink); line-height:1.3;}html .ui-pagination h3{color: var(--ink); font-family: var(--display); font-size:1.23rem; scroll-margin-top:5rem; margin-top:1.67rem;}
.ui-pagination h4 {font-family: var(--display); color: var(--ink); margin-top:1.27rem;}
.ui-pagination h4 {font-size:1.02rem;}.ui-pagination a{text-decoration:underline; text-underline-offset:2px; text-decoration-thickness:1px;}
.ui-pagination strong, .ui-pagination b {font-weight:700; color: var(--ink);}
.ui-pagination ul, .ui-pagination ol {margin-left:1.24rem;}
.ui-pagination ul {list-style: disc;}
.ui-pagination ol {list-style: decimal;}.ui-pagination li{padding-left:0.27rem; margin-top:0.47rem;}
.ui-pagination img {border-radius: var(--rad-s); margin:1.56rem 0;}
.ui-pagination blockquote {color: var(--ink); font-style:italic; widows:2; border-left: 3px solid var(--acc); border-radius: 0 var(--rad-s) var(--rad-s) 0; background: var(--tint); tab-size:4; padding:0.82rem 1.26rem;}*.ui-pagination code{background: var(--bg-2); padding:0.18em 0.47em; font-family:ui-monospace, "SF Mono", "Courier New", monospace; border-radius:7px; border: 1px solid var(--edge); font-size:0.96em;}
.ui-pagination pre {border-radius: var(--rad-s); line-height:1.7; font-size:0.88rem; color:#counter-slot; background: var(--night); overflow-x: auto; padding:1.02rem 1.33rem;}
.ui-pagination pre code {border:0 none; color:inherit; background:none; padding:0;}.ui-pagination table{width:100%; border-collapse:collapse; font-size:0.9rem;}
.ui-pagination th, .ui-pagination td {padding:0.63rem 0.77rem; border: 1px solid var(--edge); text-align: left;}
.ui-pagination th {background: var(--bg-2); font-weight:700; color: var(--ink);}
.ui-pagination hr {margin:1.96rem 0; border-top: 1px solid var(--edge); contain:none; border:0; widows:2;}

/* share */
.t-progress {padding:1.65rem 2.52rem 2.45rem; font-variant-caps:normal;}
.t-media {gap:0.51rem; display: flex; flex-wrap: wrap;}
.o-footer-trigger {width:37px; transition:background 0.175s, color 0.236s, border-color 0.202s, transform 0.21s; align-items: center; color: var(--dim); display: inline-flex; border-radius:50%; border: 1px solid var(--edge); background: var(--card); justify-content: center; height:36px;}
.o-footer-trigger:hover {color:#sortLink; transform: translateY(-1px); border-color: var(--acc); background: var(--acc);}

/* ---------- talk / reach (forms) ---------- */
.c-view, .l-drawer-info {margin:2.26rem auto 0; max-width: var(--read); padding:2.05rem 2.61rem 2.05rem; background: var(--card); border: 1px solid var(--edge);}

/* ---------- talk / reach (forms) ---------- */
.c-view, .l-drawer-info {border-radius: var(--rad); backface-visibility:visible; box-shadow: var(--sh);}

/* ---------- more (related) ---------- */
.gallery-item {max-width: var(--read); margin:2.16rem auto 0; perspective:none;}
.stepper-last {font-variant-ligatures:normal; margin-bottom:1.21rem; font-synthesis:weight style small-caps; font-size:0.9rem; margin-top:-0.57rem; color: var(--dim);}
.app-list {grid-template-columns: repeat(3, 1fr); gap:1.07rem; display: grid;}
.head-filter {display: block; box-shadow: var(--sh); border-radius: var(--rad-s); transition:transform 0.228s, box-shadow 0.186s, border-color 0.128s; background: var(--card); border: 1px solid var(--edge); padding:1.13rem 1.23rem;}.head-filter:hover{box-shadow: var(--sh-l); transform: translateY(-2px); border-color: var(--acc-l);}
.page__outer {color: var(--ink); font-size:1.03rem; font-weight:bold; line-height:1.4; font-family: var(--display);}/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea{font:inherit; isolation:auto; border: 1px solid var(--edge); border-radius: var(--rad-s); padding:0.69rem 0.88rem; color: var(--ink); transition:border-color 0.226s, box-shadow 0.189s, background 0.201s; transform-style:flat; width:100%; background: var(--bg-2);}
input::placeholder, textarea::placeholder {color: var(--dim);}textarea{resize: vertical; min-height:6.43rem;}
input:focus, textarea:focus {box-shadow:0 0 0 5px rgba(12, 166, 123, 0.11); background: var(--card); outline:0; border-color: var(--acc);}

.u-footer {display: flex; flex-wrap: wrap; gap:1.05rem; perspective:none;}
.galleryPrefix {flex: 1 1 100%;}
.t-rating {flex: 1 1 calc(50% - 0.5rem); min-width:0;}

.o-breadcrumb {display: flex;}body .o-breadcrumb input{border-radius: var(--rad-s) 0 0 var(--rad-s); min-width:0;}body .o-breadcrumb input{flex: 1; border-right:0;}
.o-breadcrumb .t-carousel-detail {border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.t-carousel-detail {font-size:0.8rem; font-weight:700; background: var(--card); border: 1px solid var(--edge); justify-content: center; align-items: center; border-radius: var(--rad-s); text-transform:uppercase; gap:0.56rem; padding:0.68rem 1.23rem; letter-spacing:0.03em; color: var(--ink); display: inline-flex; transition:background 0.223s, color 0.15s, border-color 0.147s; min-height:2.86rem;}
.t-carousel-detail:hover {color: var(--ink); background: var(--bg-2); border-color: var(--dim);}
.t-nav {color:#sortLink; border-color: var(--acc); widows:2; background: var(--acc);}
.t-nav:hover {background: var(--acc-d); border-color: var(--acc-d); color:#sortLink;}
.price-overlay {min-width:2.99rem; padding:0.65rem 0.94rem;}
.el-media {width:100%;}/* ---------- decks (newsletter + account) ---------- */
.app-dialog{transform-style:flat; display: grid; gap:1.22rem;}/* ---------- decks (newsletter + account) ---------- */
.app-dialog{max-width: var(--band); grid-template-columns: 1fr 1fr; margin:2.54rem auto 0;}
.l-divider {background: var(--card); border: 1px solid var(--edge); flex-direction: column; padding:1.43rem 1.57rem; display: flex; box-shadow: var(--sh); border-radius: var(--rad);}
.ui-progress {print-color-adjust:economy; font-size:0.85rem; contain:none; margin-bottom:1.01rem; color: var(--dim);}
.o-page {flex-direction: column; margin-top:auto; display: flex; gap:0.61rem;}.o-page .t-carousel-detail{width:100%;}

/* ---------- footer ---------- */
.ui-dialog-button {background: var(--night); margin-top:3.34rem; color: var(--on-night); mix-blend-mode:normal; shape-margin:0; padding:2.62rem 0;}
.o-screen {width:100%; margin-inline:auto; padding:0 1.24rem; justify-content: space-between; gap:1.58rem; display: flex; align-items: center; flex-wrap: wrap; max-width: var(--max);}
.el-header-image {font-size:0.87rem; color: var(--on-night);}*.pb-2xl img{height:24px; filter:brightness(0) invert(1); opacity:0.86; width:auto;}
.el-header-image {margin-top:0.74rem;}
.app-layout-wrapper {display: flex; gap:1.26rem;}
.app-layout-wrapper a {perspective:none; color: var(--on-night); font-size:0.91rem;}
.app-layout-wrapper a:hover {color:#sortLink;}

.app-step {display: flex; gap:0.52rem;}.app-step a{border-radius: var(--rad-s); background:rgba(241, 255, 248, 0.16); width:40px; color: var(--on-night); image-rendering:auto; transition:background 0.213s, color 0.142s, transform 0.196s; perspective:none; display: inline-flex; height:35px; align-items: center; justify-content: center;}
.app-step a:hover {color:#sortLink; background: var(--acc); transform: translateY(-1px);}/* ---------- back to top ---------- */
.app-progress{transition:background 0.24s, transform 0.234s; color:#sortLink; bottom:1.55rem; box-shadow: var(--sh-l); align-items: center; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; mix-blend-mode:normal; background: var(--acc); width:49px; position: fixed; z-index: 900; right:1.67rem; border:none; justify-content: center; display: none; height:42px;}
.app-progress:hover {transform: translateY(-2px); background: var(--acc-d);}

/* ---------- cookie ---------- */
.sidebar-primary {left:0; background: var(--card); padding:0.97rem 0; z-index: 1100; right:0; box-shadow:0 -5px 28px rgba(6, 40, 26, 0.17); position: fixed; border-top: 1px solid var(--edge); bottom:0;}
.app-progress.ui-price {display: inline-flex;}body .app-pagination-region{justify-content: space-between; max-width: var(--max); display: flex; width:100%; margin-inline:auto; align-items: center; gap:1.58rem; padding:0 1.29rem;}
.sidebar-primary p {print-color-adjust:economy; color: var(--text); margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px; font-size:0.84rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.u-timeline {position: fixed; display: none; inset:0;}
.sidebar-primary .t-carousel-detail {min-height:2.41rem; padding:0.58rem 1.4rem; flex-shrink: 0;}

/* ---------- auth layers (CSS :target modal) ---------- */
.u-timeline {z-index: 1300;}
.u-timeline:target {place-items: center; padding-top:1.25rem;padding-right:1.25rem;padding-bottom:1.25rem;padding-left:1.25rem; display: grid;}
.c-entry {position: absolute;}
.el-snackbar {border: 1px solid var(--edge); padding:1.86rem 1.86rem 1.54rem; box-shadow: var(--sh-l); animation:pop 0.226s ease-out; position: relative; z-index: 1; width: min(94vw, 25rem); border-radius: var(--rad); background: var(--card);}
.c-entry {background:rgba(8, 39, 14, 0.63); backdrop-filter:blur(2px); inset:0;}
@keyframes pop { from {opacity:0; transform: translateY(8px) scale(0.99);} to {orphans:2; transform-style:flat; opacity:1; transform: none;} }.ui-card:not(._406f0f){color: var(--dim); position: absolute; line-height:1; right:0.86rem; font-size:1.43rem; top:0.76rem; text-decoration:none;}
.ui-card:hover {color: var(--ink);}.u-timeline :where(.c-profile-content){gap:0.93rem; flex-direction: column; display: flex;}
.ui-table-inner {text-align: center; margin-top:0.21rem; color: var(--dim); font-size:0.9rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .app-review {display: flex;}
  .rounded-around {flex-direction: column; position: absolute; box-shadow: var(--sh); align-items: stretch; display: none; right:0; border-bottom: 1px solid var(--edge); padding:0.52rem 0; gap:0; top:100%; background: var(--card); left:0;}
  .rounded-around.open {display: flex;}
  .l-step {padding:0 1.32rem; flex-direction: column; gap:0;}
  .l-step a {border-bottom: 1px solid var(--edge-2); transform-style:flat; padding:0.86rem 0; text-rendering:auto;}
  .t-action-addon {padding:0.84rem 1.21rem 0.37rem; gap:0.72rem;}.app-list{grid-template-columns: 1fr 1fr;}
  .app-dialog {grid-template-columns: 1fr;}
}

@media (max-width: 680px) {
  html {font-size:100%;}
  .el-toolbar {padding:1.88rem 1.34rem 1.05rem;}*.app-section{text-underline-offset:auto; shape-margin:0;}*.app-section{padding:0 1.32rem;}
  .app-hero {padding:1.33rem 1.44rem 0.28rem;}
  .t-progress {padding:1.25rem 1.39rem 1.97rem;}
  .app-list {backface-visibility:visible; grid-template-columns: 1fr;}.c-view, *.l-drawer-info{padding:1.65rem 1.34rem 1.73rem;}
  .o-screen {gap:1.28rem;}
  .o-screen {align-items: flex-start; flex-direction: column;}
  .app-pagination-region {text-align: center; flex-direction: column; transform-style:flat; gap:0.77rem;}
}

@media (max-width: 460px) {
  .t-rating {contain:none; flex: 1 1 100%; font-synthesis:weight style small-caps;}
}

@media (prefers-reduced-motion: reduce) {
  html {scroll-behavior: auto; orphans:2;}
  .app-progress {bottom:0.95rem; right:0.96rem;}
  * {transition:none !important; animation:none !important;}
}

@media print {
  .c-gallery, .t-progress, .c-view, .gallery-item, .l-drawer-info,
  .app-dialog, .ui-dialog-button, .app-progress, .sidebar-primary, .u-timeline, .t-filter {display: none !important;}
  .c-gallery, .t-progress, .c-view, .gallery-item, .l-drawer-info,
  .app-dialog, .ui-dialog-button, .app-progress, .sidebar-primary, .u-timeline, .t-filter {print-color-adjust:economy; text-underline-offset:auto;}
  body {background:#sortLink;}
}

  .c-progress-title {box-shadow:none; border:0em; max-width:none;}