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

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

html {backface-visibility:visible;}

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

html {font-size:111.1%; tab-size:4; -webkit-text-size-adjust:100%; scroll-behavior: smooth;}

img, svg {max-width:100%; display: block;}
a {color: var(--acc); text-decoration:none;}
ul, ol {list-style: none;}
button {font-family:inherit; cursor: pointer;}a:hover{color: var(--acc-d);}h1{font-weight:bold; font-family: var(--display); letter-spacing:-0.015em; color: var(--ink); line-height:1.18;}:focus-visible{outline: 2px solid var(--acc); border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:4px; outline-offset:2px;}

.app-grid-block {border:0em; clip:rect(0, 0, 0, 0); padding:0em; width:1px; overflow: hidden; height:1px; margin:-1px; white-space: nowrap; position: absolute;}

/* span headings (no h2/h3 anywhere but article content) */
.l-carousel, .l-nav, .l-popover, .t-action, .el-reply-row {color: var(--ink); font-family: var(--display); display: block; letter-spacing:-0.01em; font-weight:bold;}.l-carousel{margin-bottom:1.12rem; widows:2; font-size:1.24rem;}
#timeline-close {flex-wrap:nowrap; max-width:100%; line-height:1.75}

.l-nav {font-size:1.12rem; margin-bottom:0.34rem;}/* ---------- scroll progress ---------- */
.dialog__title{position: fixed; background: var(--acc); width:0px; left:0; top:0; transition:width 0.044s linear; z-index: 1200; height:0px;}.l-popover{font-size:1.3rem; margin-bottom:1.24rem;}/* ---------- topbar ---------- */
.ui-tooltip{border-bottom: 1px solid var(--edge); backdrop-filter:saturate(150%) blur(8px); z-index: 1000; background:rgba(255, 249, 247, 0.8); top:0rem; position: sticky;}
.o-entry {display: inline-flex; align-items: center;}
.el-carousel {margin-inline:auto; max-width: var(--max); print-color-adjust:economy; width:100%; justify-content: space-between; padding:0 1.32rem; gap:1.01rem; display: flex; min-height:3.82rem; align-items: center;}

.ui-badge-region {flex-direction: column; padding-top:0.41rem;padding-right:0.41rem;padding-bottom:0.41rem;padding-left:0.41rem; border:0 none; background:none; display: none; gap:9px;}.o-entry img{text-rendering:auto; width:auto; break-inside:auto; height:26px;}.ui-badge-region span{width:25px;}.ui-badge-region span{border-radius:2px; hyphens:manual; background: var(--ink); print-color-adjust:economy; display: block; height:2px;}

.card__secondary {align-items: center; gap:1.74rem; display: flex;}body .l-timeline{display: flex; gap:1.46rem;}
.l-timeline a, .t-select {font-weight:600;}
.l-timeline a, .t-select {text-transform:uppercase; color: var(--text); letter-spacing:0.03em; font-size:0.89rem;}
.l-timeline a:hover, .t-select:hover {color: var(--acc);}*.ui-sort{font-size:0.77rem; background: var(--acc); transition:background 0.146s; border-radius: var(--rad-s); padding:0.56rem 1rem; text-transform:uppercase; color:#fffff0; font-weight:bold; letter-spacing:0.03em;}
.pt-end {page-break-inside:auto; align-items: center; display: flex; gap:1.02rem;}
.ui-sort:hover {background: var(--acc-d); color:#fff7ff;}

/* ---------- flow / shell ---------- */
.o-pagination-toggle {padding-bottom:4.05rem;}
.spinner__zone {flex-wrap:wrap; text-align:justify; align-items:flex-end}
/* ---------- post ---------- */
.badge{overflow: hidden; border-radius: var(--rad); border: 1px solid var(--edge); box-shadow: var(--sh); background: var(--card); margin:1.62rem auto 0; max-width: var(--read);}
.app-toggle-body {padding:2.46rem 2.63rem 1.26rem; print-color-adjust:economy; tab-size:4;}
.o-toggle {widows:2; margin-bottom:0.9rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}

.o-search-link {flex-wrap: wrap; gap:0.56rem 1.18rem; display: flex; color: var(--dim); align-items: center; font-size:0.89rem;}
.o-price {align-items: center; display: inline-flex; gap:0.48rem;}
.o-divider {font-style:italic;}
.o-price svg {opacity:0.78; flex-shrink: 0;}

/* toc */
.ui-nav-suffix {padding:0 2.62rem;}
.u-badge {border-radius: var(--rad-s); background: var(--bg-2); border: 1px solid var(--edge); padding:1.05rem 1.3rem;}
.t-action {font-size:0.91rem; margin:0;}
.t-stepper-spacer {justify-content: space-between; display: flex; align-items: center;}
.el-hero-link {transition:transform 0.244s, color 0.206s; background:none; border:none; color: var(--dim); padding:0.24rem; display: inline-flex;}
.el-hero-link:hover {color: var(--acc);}
#gallery-column {position:static; overflow:hidden; padding-bottom:3rem; flex:0 0 auto; padding:37px; text-transform:uppercase}

.u-badge.is-shut .el-hero-link {transform: rotate(-90deg);}
.u-badge.is-shut .l-snackbar-detail {word-spacing:normal; display: none; isolation:auto;}
.l-snackbar-detail {padding-top:0.69rem; border-top: 1px solid var(--edge); font-size:0.91rem; line-height:1.9; margin-top:0.68rem;}*.l-snackbar-detail a{color: var(--text); widows:2; font-variant-ligatures:normal; display: block;}
.timeline-date.view-wide {position:relative; display:table; max-width:100%; box-shadow:0 7px 14px rgba(0,0,0,0.29); padding-bottom:29px}

.badge-preview::before {content:''; display:grid; text-decoration:underline}
.l-snackbar-detail a:hover{color: var(--acc);}.l-snackbar-detail .el-tooltip{padding-left:1.07rem; font-size:0.81rem;}

/* rich content */
.o-tag-track {padding:1.43rem 2.61rem 0.26rem;}
.c-box-button {font-size:1.02rem; line-height:1.8; color: var(--text);}
.c-box-button > * + * {margin-top:1.27rem;}
.c-box-button h2 {font-size:1.51rem; scroll-margin-top:5rem; color: var(--ink); font-family: var(--display); border-top: 1px solid var(--edge-2); padding-top:1.38rem; margin-top:2.28rem; line-height:1.3;}
.c-box-button h3 {font-size:1.17rem; scroll-margin-top:5rem; margin-top:1.7rem; color: var(--ink); font-family: var(--display);}
.c-box-button h4 {font-family: var(--display); margin-top:1.37rem; font-size:1.03rem; color: var(--ink);}
.c-box-button a {text-decoration:underline; text-underline-offset:2px; text-decoration-thickness:1px;}*.c-box-button strong, .c-box-button b{font-weight:700; color: var(--ink);}
.c-box-button ul, .c-box-button ol {margin-left:1.33rem;}html .c-box-button ul{list-style: disc; page-break-inside:auto; font-synthesis:weight style small-caps;}*.c-box-button ol{tab-size:4; list-style: decimal; print-color-adjust:economy;}
.c-box-button li {margin-top:0.44rem; padding-left:0.3rem;}
.c-box-button img {border-radius: var(--rad-s); margin:1.49rem 0;}
.c-box-button blockquote {background: var(--tint); padding:0.77rem 1.24rem;}
.c-box-button blockquote {border-left: 3px solid var(--acc); font-style:italic; border-radius: 0 var(--rad-s) var(--rad-s) 0; color: var(--ink);}
.c-box-button code {border-radius:8px; padding:0.1em 0.5em; font-size:0.89em; border: 1px solid var(--edge); background: var(--bg-2); font-family:ui-monospace, "SF Mono", "Courier New", monospace;}.c-box-button pre{color:#ededf9; background: var(--night); text-rendering:auto; font-size:0.94rem; border-radius: var(--rad-s); overflow-x: auto; line-height:1.7; padding:1.08rem 1.22rem;}
.c-box-button pre code {background:none; color:inherit; padding:0; border:0 none;}html .c-box-button table{break-inside:auto; text-underline-offset:auto; width:100%; font-size:0.91rem; border-collapse:collapse;}html .c-box-button th, *.c-box-button td{padding:0.65rem 0.8rem; border: 1px solid var(--edge); text-align: left; contain:none;}
.c-box-button th {word-spacing:normal; background: var(--bg-2); color: var(--ink); font-weight:700;}html .c-box-button hr{margin:2.04rem 0; border:none; border-top: 1px solid var(--edge);}
.searchIcon {flex-wrap: wrap; display: flex; gap:0.55rem;}/* share */
.ui-snackbar{padding:1.76rem 2.65rem 2.39rem;}
.el-sidebar-section {background: var(--card); border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; transition:background 0.145s, color 0.142s, border-color 0.253s, transform 0.129s; height:42px; width:35px; color: var(--dim); border: 1px solid var(--edge); display: inline-flex; align-items: center; justify-content: center;}
.el-sidebar-section:hover {transform: translateY(-1px); border-color: var(--acc); background: var(--acc); color:hsl(58, 100%, 97.1%);}

/* ---------- talk / reach (forms) ---------- */
.page--first, .o-reply {border: 1px solid var(--edge); border-radius: var(--rad);}

/* ---------- talk / reach (forms) ---------- */
.page--first, .o-reply {padding:2.04rem 2.52rem 2.02rem; max-width: var(--read); background: var(--card); margin:2.14rem auto 0; box-shadow: var(--sh);}

/* ---------- more (related) ---------- */
.o-nav {max-width: var(--read); margin:2.22rem auto 0;}body .t-popover{font-synthesis:weight style small-caps; color: var(--dim); margin-top:-0.68rem; image-rendering:auto; font-size:0.94rem; margin-bottom:1.16rem;}body .u-reply-line{background: var(--card); border-radius: var(--rad-s); display: block; border: 1px solid var(--edge); transition:transform 0.234s, box-shadow 0.177s, border-color 0.168s; box-shadow: var(--sh); padding:1.1rem 1.14rem;}
.filter-fill:hover {margin-left:28px; text-align:center; transition:all 0.5s ease; margin-top:1.75rem; box-shadow:0 13px 12px rgba(0,0,0,0.41); gap:10px}

.list__content--flat {gap:1rem; grid-template-columns: repeat(3, 1fr); display: grid;}
#layout-handle {justify-content:space-around; text-transform:lowercase}

.u-reply-line:hover {isolation:auto; box-shadow: var(--sh-l); border-color: var(--acc-l); transform: translateY(-2px);}
.value-tooltip {font-weight:700; font-family: var(--display); color: var(--ink); line-height:1.4; font-size:0.94rem;}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {border: 1px solid var(--edge); border-radius: var(--rad-s); color: var(--ink); width:100%; padding:0.68rem 1.03rem; background: var(--bg-2); font:inherit; transition:border-color 0.236s, box-shadow 0.23s, background 0.197s;}
.layout-body:not(:last-child) {overflow:visible; display:none; text-align:center; padding-top:36px}

input::placeholder, textarea::placeholder {color: var(--dim);}textarea{min-height:6.56rem; resize: vertical;}
input:focus, textarea:focus {background: var(--card); box-shadow:0 0 0 0px rgba(13, 166, 121, 0.19); border-color: var(--acc); outline:0;}

.u-grid-action {flex-wrap: wrap; display: flex; gap:0.97rem;}
.ui-widget-extra {min-width:0; flex: 1 1 calc(50% - 0.5rem);}
.dialog-secondary-narrow {flex: 1 1 100%;}

.l-panel-bar {display: flex;}
.l-panel-bar input {border-right:none; min-width:0; flex: 1; border-radius: var(--rad-s) 0 0 var(--rad-s); text-underline-offset:auto;}
.l-panel-bar .el-search {border-radius: 0 var(--rad-s) var(--rad-s) 0;}/* ---------- buttons ---------- */
:where(.el-search){display: inline-flex; break-inside:auto; transition:background 0.219s, color 0.152s, border-color 0.151s; background: var(--card); color: var(--ink); letter-spacing:0.03em; min-height:2.89rem; justify-content: center; gap:0.5rem; text-transform:uppercase; font-size:0.9rem; font-weight:700; padding-top:0.73rem;padding-right:1.29rem;padding-bottom:0.73rem;padding-left:1.29rem; border-radius: var(--rad-s); border: 1px solid var(--edge); align-items: center;}
.el-search:hover {border-color: var(--dim); background: var(--bg-2);}
.el-search:hover {color: var(--ink);}.c-block-body{widows:2; color:rgb(247, 245, 247); background: var(--acc); border-color: var(--acc);}
.c-block-body:hover {background: var(--acc-d); color:#f0f5f3; border-color: var(--acc-d);}
.bg-screen {min-width:2.96rem; padding-top:0.78rem;padding-right:1.08rem;padding-bottom:0.78rem;padding-left:1.08rem;}

/* ---------- decks (newsletter + account) ---------- */
.ui-widget-track {gap:1.21rem; margin:2.52rem auto 0; max-width: var(--band);}
.c-select {width:100%;}
.t-block {box-shadow: var(--sh); display: flex; padding-top:1.51rem;padding-right:1.68rem;padding-bottom:1.51rem;padding-left:1.68rem; background: var(--card); flex-direction: column; border-radius: var(--rad); border: 1px solid var(--edge);}

/* ---------- decks (newsletter + account) ---------- */
.ui-widget-track {grid-template-columns: 1fr 1fr; display: grid;}.snackbarText:not(.empty86){perspective:none; print-color-adjust:economy; font-size:0.94rem; margin-bottom:0.92rem; color: var(--dim);}
.toolbar--fixed {gap:0.56rem; flex-direction: column; margin-top:auto; display: flex;}
.form-spacer > subtitle {display:inline-block; width:900px; margin-top:0; min-height:100vh; text-decoration:none}
.toolbar--fixed :where(.el-search){width:100%;}

/* ---------- footer ---------- */
.ui-toolbar {margin-top:3.39rem; background: var(--night); padding:2.64rem 0; color: var(--on-night);}
.c-media {gap:1.45rem; align-items: center; justify-content: space-between; max-width: var(--max); flex-wrap: wrap; padding:0 1.17rem; width:100%; widows:2; display: flex; margin-inline:auto;}
.l-dialog img {filter:brightness(0) invert(1); opacity:0.85; height:31px; width:auto;}
.screen-wrapper + .filter-wrapper {transition:all 0.25s ease; display:table; margin:12px 39px; position:static}
*.l-grid-outer{margin-top:0.65rem; color: var(--on-night); font-size:0.77rem;}
.el-modal {display: flex; gap:1.37rem;}.el-modal a{color: var(--on-night); font-size:0.88rem;}
.el-modal a:hover {color:hsl(61, 99.7%, 95.7%);}

.wrap-layout {gap:0.67rem; display: flex;}.wrap-layout a{justify-content: center; display: inline-flex; align-items: center; width:38px; height:32px; background:rgba(255, 244, 255, 0); color: var(--on-night); transition:background 0.201s, color 0.164s, transform 0.152s; border-radius: var(--rad-s);}
.wrap-layout a:hover {color:rgb(255, 252, 238); background: var(--acc); transform: translateY(-1px);}
.post__primary {min-width:0; border:0; transition:color 0.25s; background:transparent}
/* ---------- back to top ---------- */
.l-toggle-zone{display: none; border:0 none; background: var(--acc); color:#fffff4; width:47px; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; align-items: center; position: fixed; height:42px; box-shadow: var(--sh-l); transition:background 0.174s, transform 0.164s; right:1.52rem; bottom:1.52rem; justify-content: center; z-index: 900;}body .l-toggle-zone:hover{transform: translateY(-2px); background: var(--acc-d);}/* ---------- cookie ---------- */
.app-screen-wrap{box-shadow:0 -8px 25px rgba(6, 24, 30, 0.14); z-index: 1100; border-top: 1px solid var(--edge); padding:0.98rem 0; left:0em; background: var(--card); position: fixed; bottom:0; right:0;}html .l-toggle-zone.app-badge{display: inline-flex;}*.app-screen-wrap p{color: var(--text);}
.ui-profile-summary {justify-content: space-between; display: flex; max-width: var(--max); gap:1.48rem; width:100%; padding:0 1.3rem; margin-inline:auto; align-items: center;}*.app-screen-wrap p{margin:0; font-size:0.8rem;}
.app-screen-wrap .el-search {padding:0.62rem 1.4rem; min-height:2.48rem; flex-shrink: 0;}

/* ---------- auth layers (CSS :target modal) ---------- */
.c-form-cell {display: none; position: fixed; z-index: 1300; inset:0;}
.c-form-cell:target {display: grid; padding:1.2rem; place-items: center;}
.l-alert {position: relative; border: 1px solid var(--edge); width: min(94vw, 25rem); background: var(--card); box-shadow: var(--sh-l); animation:pop 0.216s ease-out; border-radius: var(--rad); padding:1.83rem 1.83rem 1.52rem; z-index: 1;}
.u-timeline-content {inset:0px; backdrop-filter:blur(2px); background:rgba(32, 41, 32, 0.57); position: absolute;}
@keyframes pop { from {opacity:0; transform: translateY(8px) scale(0.99);} to {opacity:1; transform: none;} }
.t-sidebar-dot {position: absolute; line-height:1; right:0.77rem; text-decoration:none; color: var(--dim); top:0.63rem; font-size:1.52rem;}html .t-sidebar-dot:hover{color: var(--ink);}.c-gallery-section:not(.null28){color: var(--dim); font-size:0.86rem; text-align: center; margin-top:0.27rem;}
.c-form-cell .el-table {display: flex; gap:0.82rem; hyphens:manual; background-blend-mode:normal; flex-direction: column;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {.ui-badge-region{display: flex;}
  .card__secondary {right:0; padding:0.43rem 0; display: none; flex-direction: column; border-bottom: 1px solid var(--edge); top:100%; font-synthesis:weight style small-caps; background: var(--card); box-shadow: var(--sh); gap:0rem; align-items: stretch; left:0; position: absolute;}
  .card__secondary.open {display: flex;}
  .l-timeline {gap:0; padding:0 1.17rem; flex-direction: column;}
  .l-timeline a {padding:0.75rem 0; border-bottom: 1px solid var(--edge-2);}body .list__content--flat{grid-template-columns: 1fr 1fr;}.pt-end{padding:0.95rem 1.22rem 0.37rem; gap:0.77rem;}
@media (min-width: 1280px) and (max-width: 1504px) {
  .form-spacer > subtitle {display:inline-block; position:relative}
  .filter-fill:hover {max-width:1320px; letter-spacing:-0.01em; align-items:flex-end; box-shadow:none; padding-bottom:25px; color:inherit}
  #gallery-column {position:sticky; margin-top:0; line-height:normal; border:0}
  .screen-wrapper + .filter-wrapper {min-height:8px; cursor:pointer; position:sticky; display:inline-block}
}


  .ui-widget-track {grid-template-columns: 1fr;}
}

@media (max-width: 680px) {
  html {font-size:100%;}
  .app-toggle-body {padding:1.75rem 1.42rem 1.07rem;}
  .ui-nav-suffix {padding:0 1.38rem;}
  .ui-snackbar {padding:1.3rem 1.4rem 1.89rem;}.o-tag-track:not(.none12){font-variant-ligatures:normal; padding:1.37rem 1.34rem 0.36rem;}.page--first:not(.null83), .o-reply{padding:1.53rem 1.44rem 1.87rem;}
  .c-media {gap:1.13rem; flex-direction: column; align-items: flex-start;}
  .list__content--flat {grid-template-columns: 1fr;}
}

@media (max-width: 460px) {
  .ui-widget-extra {flex: 1 1 100%; backface-visibility:visible; text-rendering:auto;}
.status-track:not(:last-child) {margin-bottom:33px; letter-spacing:-0.05em; opacity:0.75; transition:transform 0.35s ease-in-out; background-color:transparent}

  .ui-profile-summary {flex-direction: column; gap:0.78rem; text-align: center;}
  .l-toggle-zone {right:1.04rem; bottom:1.06rem;}
}

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

@media print {
  .ui-tooltip, .ui-snackbar, .page--first, .o-nav, .o-reply,
  .ui-widget-track, .ui-toolbar, .l-toggle-zone, .app-screen-wrap, .c-form-cell, .dialog__title {display: none !important;}
  .badge {max-width:none; box-shadow:none; border:none;}body{background:#fffaef;}
}
