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

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

html {-moz-text-size-adjust:100%;scroll-behavior: smooth; font-size:113.8%; -webkit-text-size-adjust:100%;}

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

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);}
.banner-subtitle {margin-left:auto; min-height:19px; align-items:center; flex:0 0 auto; transition:all 0.5s ease; gap:1rem}
button{font-family:inherit; cursor: pointer;}
h1 {color: var(--ink); font-family: var(--display); letter-spacing:-0.015em; font-weight:700; line-height:1.18;}
.grid-data:not(:last-child) {color:#222629; border:none; flex:1 1 0%}


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

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

/* span headings (no h2/h3 anywhere but article content) */
.gridSection, .tagLink, .boxOuter, .tooltipName, .heroName {color: var(--ink); font-family: var(--display); mix-blend-mode:normal; widows:2;}

/* span headings (no h2/h3 anywhere but article content) */
.gridSection, .tagLink, .boxOuter, .tooltipName, .heroName {display: block; font-weight:bold; letter-spacing:-0.01em;}
.gridSection {transform-style:flat; font-size:1.27rem; margin-bottom:1.06rem;}body .tagLink{margin-bottom:0.36rem; font-size:0.98rem;}

/* ---------- scroll progress ---------- */
.postInner {background: var(--acc); width:0; position: fixed; transition:width 0.085s linear; top:0; left:0; z-index: 1200; height:2px;}.boxOuter{font-size:1.28rem; margin-bottom:1.24rem;}

/* ---------- topbar ---------- */
.gap-5 {-webkit-backdrop-filter:saturate(150%) blur(8px);position: sticky; background:rgba(255, 244, 249, 0.88); z-index: 1000; border-bottom: 1px solid var(--edge); top:0; backdrop-filter:saturate(150%) blur(8px);}
.el-sort {justify-content: space-between; gap:0.93rem; align-items: center; width:100%; display: flex; max-width: var(--max); margin-inline:auto; min-height:3.97rem; padding:0 1.3rem;}
.avatarOverlay {display: inline-flex; align-items: center;}
.avatarOverlay img {height:26px; width:auto;}*.searchPrimary{gap:3px; background:none; display: none; padding:0.41rem; flex-direction: column; border:0;}
.searchPrimary span {display: block; background: var(--ink); height:2px; border-radius:2px; width:25px;}

.bannerInner {align-items: center; gap:1.77rem; display: flex;}
.filterWrapper {gap:1.55rem; display: flex;}body .filterWrapper a, .action__date--dense{font-weight:600; letter-spacing:0.03em; font-size:0.86rem; color: var(--text); text-transform:uppercase;}
.filterWrapper a:hover, .action__date--dense:hover {color: var(--acc);}
.navWrapper {gap:0.92rem; display: flex; align-items: center;}
.paginationLine {font-size:0.72rem; color:rgb(243, 251, 255); font-weight:700; transition:background 0.231s; background: var(--acc); letter-spacing:0.03em; text-transform:uppercase; border-radius: var(--rad-s); padding:0.57rem 1.1rem;}
.paginationLine:hover {shape-margin:0; background: var(--acc-d); color:#fcfcff;}

/* ---------- flow / shell ---------- */
.widgetExpand {padding-bottom:3.93rem; text-decoration-skip-ink:auto;}

/* ---------- post ---------- */
.accordionInner {border: 1px solid var(--edge); margin:1.55rem auto 0; border-radius: var(--rad); background: var(--card); overflow: hidden; box-shadow: var(--sh); max-width: var(--read);}.mediaButton{padding:2.44rem 2.58rem 1.24rem;}
.dialogDot {font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem); margin-bottom:0.82rem;}
.media-link {align-items:center; background:#e3d3d4; flex:1}


.profileTertiary {gap:0.51rem 1.31rem; font-size:0.86rem; flex-wrap: wrap; color: var(--dim); align-items: center; widows:2; display: flex;}html .avatarData{gap:0.45rem; display: inline-flex; align-items: center;}.avatarData svg{flex-shrink: 0; opacity:0.73;}
.replyIndicator {font-style:italic;}
.postHolder {border-radius: var(--rad-s); padding-top:0.97rem;padding-right:1.28rem;padding-bottom:0.97rem;padding-left:1.28rem; border: 1px solid var(--edge); background: var(--bg-2);}

/* toc */
.ui-feature-head {padding:0 2.6rem;}
.navRegion {align-items: center; justify-content: space-between; display: flex;}*.tooltipName{font-size:0.96rem; margin:0; isolation:auto;}.tabsLine:not(.dummy28){transition:transform 0.204s, color 0.202s; border:0rem; color: var(--dim); background:none; display: inline-flex; padding-top:0.22rem;padding-right:0.22rem;padding-bottom:0.22rem;padding-left:0.22rem;}
@media (min-width: 768px) {
  .profile-tertiary:hover {position:absolute; max-width:100%; transition:all 0.2s ease; flex:1; border:1px solid #1db393}
  .profile-placeholder:hover {flex-wrap:wrap; max-width:none; transition:color 0.25s}
}


.tabsLine:hover {color: var(--acc);}
.postHolder.is-shut .tabsLine {transform: rotate(-90deg);}.postHolder.is-shut :where(.alertPrimary){display: none;}
.alertPrimary {border-top: 1px solid var(--edge); margin-top:0.69rem; padding-top:0.62rem; line-height:1.9; font-size:0.87rem;}
.alertPrimary a {color: var(--text); display: block;}.alertPrimary a:hover{color: var(--acc);}
.alertPrimary .postOverlay {padding-left:1.09rem; font-size:0.89rem;}

/* rich content */
.panelHead {padding:1.51rem 2.54rem 0.33rem;}.footerButton{color: var(--text); font-size:1.02rem; line-height:1.8;}html .footerButton > * + *{margin-top:1.27rem;}html .footerButton h2{font-family: var(--display); font-size:1.57rem; border-top: 1px solid var(--edge-2); margin-top:2.32rem; scroll-margin-top:5rem; line-height:1.3;}html .footerButton h2{color: var(--ink); padding-top:1.26rem;}
.footerButton h3 {color: var(--ink); font-size:1.22rem; scroll-margin-top:5rem; margin-top:1.62rem; font-family: var(--display);}
.view-action::before {content:''; transition:transform 0.15s ease-in-out; padding-bottom:1.75rem}

.footerButton h4 {font-size:0.99rem; font-family: var(--display); margin-top:1.29rem; color: var(--ink);}
.footerButton a {text-underline-offset:2px; text-decoration:underline; text-decoration-thickness:1px;}
.footerButton strong, .footerButton b {font-weight:bold; color: var(--ink);}.footerButton ul, .footerButton ol{margin-left:1.32rem;}
.footerButton ul {text-rendering:auto; list-style: disc;}
.toggle-wrapper .spinner-head {font-weight:400; display:inline; box-shadow:0 16px 6px rgba(0,0,0,0.66)}
body .footerButton ol{list-style: decimal;}
.footerButton li {padding-left:0.22rem; margin-top:0.47rem;}
.footerButton img {margin:1.48rem 0; border-radius: var(--rad-s);}
.footerButton blockquote {background: var(--tint); border-left: 3px solid var(--acc); color: var(--ink); border-radius: 0 var(--rad-s) var(--rad-s) 0; padding:0.88rem 1.19rem; perspective:none; image-rendering:auto; font-style:italic;}.footerButton code{background: var(--bg-2); padding-top:0.15em;padding-right:0.51em;padding-bottom:0.15em;padding-left:0.51em; text-decoration-skip-ink:auto; border-radius:1px; font-size:0.8em; border: 1px solid var(--edge); font-family:ui-monospace, "SF Mono", "Courier New", monospace; widows:2;}
.footerButton pre {color:#edffe3; font-size:0.81rem; border-radius: var(--rad-s); line-height:1.7; overflow-x: auto; padding-top:1.13rem;padding-right:1.29rem;padding-bottom:1.13rem;padding-left:1.29rem; background: var(--night);}
.footerButton pre code {padding:0; border:0 none; color:inherit; background:none;}body .footerButton table{width:100%; border-collapse:collapse; font-size:0.84rem;}
.footerButton th, .footerButton td {font-variant-caps:normal; padding-top:0.61rem; padding-right:0.85rem; padding-bottom:0.61rem; padding-left:0.85rem;}
.footerButton th, .footerButton td {border: 1px solid var(--edge); text-align: left;}
.footerButton th {background: var(--bg-2); color: var(--ink); font-weight:700;}body .footerButton hr{border:0rem;}body .footerButton hr{margin:2.08rem 0; border-top: 1px solid var(--edge);}/* share */
:where(.chipLine){padding:1.73rem 2.66rem 2.42rem; font-variant-caps:normal;}
.avatarExtra {gap:0.61rem; display: flex; flex-wrap: wrap;}
.review-right {border-radius:50%; shape-margin:0; border: 1px solid var(--edge); justify-content: center; width:34px; height:41px; transition:background 0.21s, color 0.249s, border-color 0.244s, transform 0.115s; text-rendering:auto; align-items: center; display: inline-flex; color: var(--dim); background: var(--card);}
.dialog-toggle::before {content:''; transition:transform 0.25s ease-in-out; text-transform:capitalize}

.review-right:hover {transform: translateY(-1px); background: var(--acc); border-color: var(--acc); color:rgb(224, 249, 255);}/* ---------- talk / reach (forms) ---------- */
:where(.border-10), body .module__suffix--sparse{box-shadow: var(--sh); padding:1.98rem 2.61rem 2.08rem; border: 1px solid var(--edge); border-radius: var(--rad); margin:2.23rem auto 0;}/* ---------- talk / reach (forms) ---------- */
:where(.border-10), body .module__suffix--sparse{background: var(--card); max-width: var(--read);}*.breadcrumbExtra{margin-bottom:1.25rem; color: var(--dim); margin-top:-0.66rem; font-size:0.87rem;}/* ---------- more (related) ---------- */
.snackbarLink{margin:2.22rem auto 0; max-width: var(--read);}
.toolbarFill {-webkit-hyphens:manual;-ms-hyphens:manual;grid-template-columns: repeat(3, 1fr); display: grid; gap:1.08rem; hyphens:manual; text-underline-offset:auto;}
.toolbarContent {border: 1px solid var(--edge);}
.toolbarContent {padding:1.03rem 1.12rem; box-shadow: var(--sh); border-radius: var(--rad-s); background: var(--card); display: block; transition:transform 0.14s, box-shadow 0.182s, border-color 0.203s;}
.toolbarContent:hover {box-shadow: var(--sh-l); border-color: var(--acc-l);}
.toolbarContent:hover {transform: translateY(-2px);}
.profile-placeholder:hover {display:block; letter-spacing:normal; font-weight:normal; padding-right:1.5rem; position:sticky}

.stepText {color: var(--ink); font-size:0.94rem; line-height:1.4; font-weight:bold; font-family: var(--display);}
.progress--rounded {padding:2rem; color:#f7efee; padding-top:18px; border:none; padding-bottom:40px}


/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {border-radius: var(--rad-s); color: var(--ink); font:inherit; padding:0.71rem 0.94rem; border: 1px solid var(--edge); background: var(--bg-2); transition:border-color 0.201s, box-shadow 0.226s, background 0.23s;}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {width:100%;}
input::placeholder, textarea::placeholder {color: var(--dim);}input:focus, textarea:focus{outline:0; border-color: var(--acc); box-shadow:0 0 0 4px rgba(14, 132, 152, 0.07); background: var(--card);}
textarea {min-height:6.44rem; resize: vertical;}
.stepDate {flex: 1 1 calc(50% - 0.5rem); min-width:0;}

.nav__spacer--active {display: flex; gap:1rem; flex-wrap: wrap;}

.t-review {display: flex;}
.tabs {flex: 1 1 100%;}
.t-review input {min-width:0; border-right:0rem; flex: 1; border-radius: var(--rad-s) 0 0 var(--rad-s);}
.t-review .sectionContent {border-radius: 0 var(--rad-s) var(--rad-s) 0;}/* ---------- buttons ---------- */
.sectionContent:not(.none40){justify-content: center; min-height:2.86rem; border-radius: var(--rad-s); align-items: center; border: 1px solid var(--edge);}/* ---------- buttons ---------- */
.sectionContent:not(.none40){font-weight:700; font-size:0.78rem; padding:0.76rem 1.36rem; transition:background 0.26s, color 0.176s, border-color 0.199s; color: var(--ink); display: inline-flex; text-transform:uppercase; gap:0.48rem; letter-spacing:0.03em; background: var(--card);}.sectionContent:hover{color: var(--ink); border-color: var(--dim); background: var(--bg-2);}body .progressCell{color:#ffffff; border-color: var(--acc); background: var(--acc);}
.progressCell:hover {border-color: var(--acc-d); color:#f4fff0; background: var(--acc-d);}
.tabsSuffix {padding:0.74rem 0.98rem; min-width:2.96rem;}
.snackbarHandle {width:100%;}

/* ---------- decks (newsletter + account) ---------- */
.pr-around {margin:2.55rem auto 0; display: grid; grid-template-columns: 1fr 1fr; gap:1.17rem; max-width: var(--band);}html .toggle__handle{background: var(--card); box-shadow: var(--sh); border: 1px solid var(--edge); border-radius: var(--rad); padding-top:1.58rem;padding-right:1.6rem;padding-bottom:1.58rem;padding-left:1.6rem; display: flex; flex-direction: column;}.chipPrimary:not(.void98){font-size:0.87rem; margin-bottom:0.93rem; widows:2; color: var(--dim);}
.popoverPrimary {margin-top:auto; widows:2;}
.popoverPrimary {gap:0.65rem; mix-blend-mode:normal; display: flex; flex-direction: column;}

/* ---------- footer ---------- */
.ui-screen-item {padding:2.67rem 0; background: var(--night); color: var(--on-night); margin-top:3.4rem;}
.popoverPrimary .sectionContent {tab-size:4; width:100%;}
.divider__action {margin-inline:auto; flex-wrap: wrap; padding:0 1.26rem; width:100%; display: flex; justify-content: space-between; align-items: center; gap:1.44rem; max-width: var(--max);}
.profile-tertiary:hover {padding-bottom:0.375rem; margin-right:auto; gap:0.625rem; box-shadow:0 14px 13px rgba(0,0,0,0.17)}

.accordionTitle img {filter:brightness(0) invert(1); width:auto; height:32px; opacity:0.81;}
.dialogIndicator {margin-top:0.68rem; color: var(--on-night); font-size:0.74rem;}
.drawerContent {gap:1.24rem; display: flex;}
.drawerContent a {color: var(--on-night); font-size:0.8rem;}
.breadcrumb-holder::before {content:''; max-width:100%; border:none; width:100px; text-align:right}

.drawerContent a:hover {color:#ffeefc;}

.sidebarSummary {gap:0.58rem; display: flex;}
.sidebarSummary a {display: inline-flex; color: var(--on-night); border-radius: var(--rad-s); transition:background 0.172s, color 0.17s, transform 0.123s;}
.sidebarSummary a {background:rgba(255, 255, 253, 0.06); width:33px; height:33px; justify-content: center; align-items: center;}
.sidebarSummary a:hover {transform: translateY(-1px); background: var(--acc); color:#fdf3ff;}
.entry-holder:first-child {display:none; flex:0 0 auto; transition:transform 0.15s ease-in-out; opacity:1; letter-spacing:normal}


/* ---------- back to top ---------- */
.pageColumn {border-radius:50%; z-index: 900; border:0em; box-shadow: var(--sh-l); bottom:1.64rem; background: var(--acc); color:#ffffee; position: fixed; height:47px; justify-content: center; align-items: center; display: none; right:1.52rem; transition:background 0.23s, transform 0.159s; width:49px;}html .pageColumn:hover{background: var(--acc-d); transform: translateY(-2px);}
.pageColumn.order-xs {display: inline-flex;}
.badgeExtra {padding:0 1.21rem; max-width: var(--max); display: flex; margin-inline:auto; background-blend-mode:normal; align-items: center; justify-content: space-between; width:100%; mix-blend-mode:normal; gap:1.49rem;}/* ---------- cookie ---------- */
.visible-24{position: fixed; padding:0.95rem 0; box-shadow:0 -7px 26px rgba(30, 22, 47, 0.16); right:0; bottom:0; background: var(--card); left:0; z-index: 1100; border-top: 1px solid var(--edge);}
.visible-24 p {font-size:0.84rem; color: var(--text); margin:0;}
.visible-24 .sectionContent {padding:0.56rem 1.37rem; min-height:2.46rem; flex-shrink: 0;}

/* ---------- auth layers (CSS :target modal) ---------- */
.tagContent {mix-blend-mode:normal; inset:0; position: fixed; display: none; will-change:auto; z-index: 1300;}
.tagContent:target {padding-top:1.23rem; padding-right:1.23rem; padding-bottom:1.23rem;}
.tagContent:target {padding-left:1.23rem; place-items: center; display: grid;}
.gridFill {z-index: 1; position: relative; animation:pop 0.18s ease-out; background: var(--card); width: min(94vw, 25rem); padding:1.81rem 1.82rem 1.65rem; border-radius: var(--rad); border: 1px solid var(--edge); box-shadow: var(--sh-l);}
.popoverDate {background:rgba(38, 36, 42, 0.54); inset:0; backdrop-filter:blur(2px); position: absolute;}
@keyframes pop {from{opacity:0; transform: translateY(8px) scale(0.99);}to{opacity:1; transform: none;} }
.postButton {font-size:1.49rem; color: var(--dim); text-decoration:none; line-height:1; right:0.86rem; top:0.77rem; position: absolute;}
.postButton:hover {color: var(--ink);}body .tagContent .tableAddon{display: flex; gap:0.89rem; flex-direction: column;}
.featureWrap {font-size:0.89rem; color: var(--dim);}
.featureWrap {text-align: center; margin-top:0.18rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {*.searchPrimary{display: flex;}
  .bannerInner {top:100%; align-items: stretch; background: var(--card); position: absolute; flex-direction: column; padding:0.55rem 0; box-shadow: var(--sh); border-bottom: 1px solid var(--edge); display: none; gap:0px; right:0; left:0;}.open.bannerInner{display: flex;}
  .filterWrapper {gap:0rem; padding:0 1.26rem; flex-direction: column;}
  .filterWrapper a {padding:0.88rem 0; border-bottom: 1px solid var(--edge-2); backface-visibility:visible;}.navWrapper{padding:0.94rem 1.26rem 0.41rem; gap:0.79rem;}
  .pr-around {grid-template-columns: 1fr;}

  .toolbarFill {grid-template-columns: 1fr 1fr;}
}

@media (max-width: 680px) {
  html {font-size:100%; text-rendering:auto; font-variant-caps:normal;}
  .mediaButton {padding:1.83rem 1.48rem 1.12rem; shape-margin:0;}
  .panelHead {padding:1.35rem 1.34rem 0.31rem;}
  .ui-feature-head {padding:0 1.36rem; break-inside:auto; word-spacing:normal;}
  .chipLine {-moz-tab-size:4;padding:1.23rem 1.42rem 1.86rem; word-spacing:normal; tab-size:4;}
  .border-10, .module__suffix--sparse {padding:1.62rem 1.32rem 1.8rem;}
  .toolbarFill {will-change:auto; grid-template-columns: 1fr;}*.divider__action{hyphens:manual; gap:1.21rem; font-synthesis:weight style small-caps; align-items: flex-start; flex-direction: column;}
  .badgeExtra {text-align: center; gap:0.84rem;}
  .badgeExtra {flex-direction: column;}
}

@media (max-width: 460px) {
  .stepDate {flex: 1 1 100%;}
  .pageColumn {right:0.94rem; bottom:1.04rem;}
}

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

@media print {
  .gap-5, .chipLine, .border-10, .snackbarLink, .module__suffix--sparse,
  .pr-around, .ui-screen-item, .pageColumn, .visible-24, .tagContent, .postInner {display: none !important; text-rendering:auto;}
@media (min-width: 1440px) {
  .progress-data {justify-content:center; box-shadow:none; transition:color 0.45s; border:1px solid #999999; overflow:visible; color:inherit}
  .box-block .form-area {position:relative; padding:3px; transition:all 0.45s ease; min-width:0; flex:1; text-decoration:none}
}


  body {background:#f7fbf9; will-change:auto;}
}

  .accordionInner {box-shadow:none; max-width:none; border:none;}
.gallery-info::before {content:''; min-height:100vh}

.modal-bar::before {content:''; opacity:1; transition:transform 0.25s ease-in-out; max-width:none; text-decoration:none}
