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

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

*, *::before, *::after {box-sizing: border-box; text-underline-offset:auto; margin:0px;}

*, *::before, *::after {padding:0;}body{font-family: var(--text-font); color: var(--text); -moz-osx-font-smoothing:grayscale; font-size:1.02rem; -webkit-font-smoothing:antialiased; background: var(--bg); line-height:1.72;}

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

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);}
h1 {text-rendering:auto; color: var(--ink); letter-spacing:-0.015em; font-weight:700; font-family: var(--display); line-height:1.18;}
button {font-family:inherit; cursor: pointer;}

.filter-count {clip:rect(0, 0, 0, 0); position: absolute; border:none; padding:0; width:1px; height:1px; white-space: nowrap; overflow: hidden; margin:-1px;}:focus-visible{outline-offset:2px; border-radius:2px; outline: 2px solid var(--acc);}

/* span headings (no h2/h3 anywhere but article content) */
.gallery-vertical, .feature-expand, .action-overlay, .c-stepper-title, .menu-info-compact {display: block; font-family: var(--display); color: var(--ink); letter-spacing:-0.01em; font-weight:700;}html .gallery-vertical{margin-bottom:1.08rem; font-size:1.26rem;}.feature-expand:not(._223cbd){margin-bottom:0.38rem; font-size:1.12rem;}
.action-overlay {font-size:1.2rem; margin-bottom:1.25rem;}

/* ---------- scroll progress ---------- */
.snackbar-outer {width:0; transition:width 0.096s linear; z-index: 1200; top:0; height:4px; background: var(--acc); left:0; position: fixed;}

/* ---------- topbar ---------- */
.dialog-top {background:rgba(255, 240, 242, 0.84); top:0; border-bottom: 1px solid var(--edge); position: sticky; z-index: 1000; backdrop-filter:saturate(150%) blur(8px);}
.review-zone-info {max-width: var(--max); padding:0 1.19rem; min-height:3.84rem; margin-inline:auto; gap:1.08rem; width:100%;}
.review-zone-info {align-items: center; justify-content: space-between; display: flex;}
.ui-modal {align-items: center; display: inline-flex;}
.ui-modal img {width:auto; height:27px;}

.close-hero {display: none; padding-top:0.48rem;padding-right:0.48rem;padding-bottom:0.48rem;padding-left:0.48rem; background:none; border:none; gap:4px; flex-direction: column;}

.c-divider-suffix {align-items: center; gap:1.72rem; display: flex;}.close-hero span{background: var(--ink); width:23px; display: block; height:2px; border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px;}
.action-suffix-first {display: flex; gap:1.44rem;}
.action-suffix-first a, .popover-expanded {color: var(--text); text-transform:uppercase; letter-spacing:0.03em; font-size:0.89rem; font-weight:700;}
.action-suffix-first a:hover, .popover-expanded:hover {color: var(--acc);}.menu-container{display: flex; align-items: center; gap:0.99rem;}.c-tag-wrapper{transition:background 0.2s; text-transform:uppercase; background: var(--acc); letter-spacing:0.03em; font-size:0.74rem; font-weight:700; border-radius: var(--rad-s); color:#app-stepper; padding:0.51rem 1rem;}
.c-tag-wrapper:hover {color:#app-stepper; background: var(--acc-d);}

/* ---------- flow / shell ---------- */
.backdrop-sidebar {padding-bottom:4.02rem;}
.c-badge-primary {padding:2.45rem 2.52rem 1.28rem;}

/* ---------- post ---------- */
.filter__tertiary--primary {box-shadow: var(--sh); background: var(--card); margin:1.63rem auto 0; max-width: var(--read); border-radius: var(--rad); border: 1px solid var(--edge); overflow: hidden;}
.text-counter {margin-bottom:0.81rem; font-size: clamp(1.7rem, 1.2rem + 2.3vw, 2.5rem);}

.search-icon-focused {align-items: center; gap:0.5rem 1.33rem; font-size:0.83rem; display: flex; flex-wrap: wrap; color: var(--dim);}
.alertSubtitle {display: inline-flex; align-items: center; gap:0.42rem; will-change:auto;}
.panel-flat {font-style:italic;}
.alertSubtitle svg {flex-shrink: 0; opacity:0.73;}/* toc */
:where(.gap-inline){padding:0 2.55rem;}
.h-6 {display: flex; justify-content: space-between; align-items: center;}
.leading-1 {border-radius: var(--rad-s); font-synthesis:weight style small-caps; background: var(--bg-2); will-change:auto; padding:1.1rem 1.23rem; border: 1px solid var(--edge);}
.c-stepper-title {margin:0; font-size:1.01rem;}
.gallery-count {display: inline-flex;}
.gallery-count {padding:0.24rem; color: var(--dim); background:none; transition:transform 0.249s, color 0.21s; border:0;}
.gallery-count:hover {color: var(--acc);}.leading-1.is-shut :where(.gallery-count){transform: rotate(-90deg);}.leading-1.is-shut :where(.cap-card){display: none;}
.cap-card {padding-top:0.62rem; border-top: 1px solid var(--edge); line-height:1.9; font-size:0.97rem; margin-top:0.79rem;}
.cap-card a {display: block; color: var(--text);}
.cap-card a:hover {color: var(--acc);}
.cap-card .tracking-none {padding-left:1.07rem; font-size:0.92rem;}/* rich content */
.filter--last{padding:1.42rem 2.67rem 0.27rem;}
.rating-meta-first {line-height:1.8; font-size:1rem; color: var(--text);}
.rating-meta-first > * + * {margin-top:1.26rem;}.rating-meta-first h2{font-family: var(--display); margin-top:2.25rem; scroll-margin-top:5rem; color: var(--ink); border-top: 1px solid var(--edge-2); font-size:1.42rem; padding-top:1.22rem; line-height:1.3;}
.rating-meta-first h3 {color: var(--ink); widows:2;}
.rating-meta-first h3 {scroll-margin-top:5rem; font-family: var(--display); margin-top:1.74rem; font-size:1.28rem;}
.rating-meta-first h4 {color: var(--ink); font-size:1.05rem;}
.rating-meta-first h4 {margin-top:1.29rem; font-family: var(--display);}
.rating-meta-first a {text-decoration-thickness:1px; text-underline-offset:2px; text-decoration:underline;}
.rating-meta-first strong, .rating-meta-first b {font-weight:700; color: var(--ink);}
.rating-meta-first ul, .rating-meta-first ol {margin-left:1.35rem;}
.rating-meta-first ul {list-style: disc;}
.rating-meta-first ol {transform-style:flat; list-style: decimal;}
.rating-meta-first li {margin-top:0.34rem; padding-left:0.3rem;}.rating-meta-first img{margin:1.42rem 0; border-radius: var(--rad-s); font-synthesis:weight style small-caps;}.rating-meta-first blockquote{padding:0.8rem 1.3rem; border-radius: 0 var(--rad-s) var(--rad-s) 0; border-left: 3px solid var(--acc); background: var(--tint); color: var(--ink);}.rating-meta-first blockquote{font-style:italic;}
.rating-meta-first code {padding:0.08em 0.4em; border-radius:1px; background: var(--bg-2); font-size:0.83em; font-family:ui-monospace, "SF Mono", "Courier New", monospace; border: 1px solid var(--edge);}.rating-meta-first pre{background: var(--night); border-radius: var(--rad-s); line-height:1.7; overflow-x: auto; font-size:0.84rem; padding:1.18rem 1.28rem; color:#page-section;}
.rating-meta-first pre code {padding:0em; border:0; background:none; color:inherit;}.rating-meta-first table{border-collapse:collapse; width:100%; font-size:0.95rem;}
.rating-meta-first th, .rating-meta-first td {border: 1px solid var(--edge); padding:0.72rem 0.75rem; text-align: left;}
.rating-meta-first th {color: var(--ink); background: var(--bg-2); font-weight:700;}.rating-meta-first hr{border:none; margin:2rem 0; border-top: 1px solid var(--edge);}
.menu-indicator-wide {display: flex; flex-wrap: wrap; gap:0.58rem;}

/* share */
.form-cap {padding:1.75rem 2.52rem 2.44rem;}
.primary-counter {display: inline-flex; justify-content: center; align-items: center; background: var(--card); color: var(--dim); border: 1px solid var(--edge); transition:background 0.16s, color 0.225s, border-color 0.14s, transform 0.125s; border-radius:50%; width:40px; height:37px;}
.primary-counter:hover {color:#app-stepper; border-color: var(--acc); background: var(--acc); transform: translateY(-1px);}

/* ---------- talk / reach (forms) ---------- */
.form-secondary, .button-timeline {box-shadow: var(--sh); margin:2.22rem auto 0; border: 1px solid var(--edge); padding:2.01rem 2.52rem 2.11rem; widows:2; background: var(--card); border-radius: var(--rad); font-synthesis:weight style small-caps; max-width: var(--read);}
.price-tertiary {margin-top:-0.63rem; font-size:0.99rem; color: var(--dim); margin-bottom:1.28rem;}/* ---------- more (related) ---------- */
.table-sticky{margin:2.25rem auto 0; max-width: var(--read);}*.c-modal-date{gap:1.06rem; display: grid; grid-template-columns: repeat(3, 1fr); backface-visibility:visible;}*.accordion-content{font-synthesis:weight style small-caps; padding:1.03rem 1.21rem; transition:transform 0.126s, box-shadow 0.226s, border-color 0.235s; box-shadow: var(--sh); background-blend-mode:normal; border: 1px solid var(--edge); border-radius: var(--rad-s); display: block; background: var(--card);}
.accordion-content:hover {box-shadow: var(--sh-l); border-color: var(--acc-l); transform: translateY(-2px);}
.review-region {color: var(--ink); font-family: var(--display); font-weight:700; font-size:0.89rem; line-height:1.4;}
input::placeholder, textarea::placeholder {color: var(--dim);}

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="password"], textarea {border: 1px solid var(--edge); color: var(--ink); transition:border-color 0.208s, box-shadow 0.144s, background 0.142s; border-radius: var(--rad-s); font:inherit; background: var(--bg-2); padding:0.77rem 0.93rem; width:100%;}
input:focus, textarea:focus {border-color: var(--acc); outline:0;}
textarea {resize: vertical; min-height:6.57rem;}
input:focus, textarea:focus {box-shadow:0 0 0 1px rgba(0, 159, 144, 0.09); background: var(--card);}
.nav-loading {flex: 1 1 calc(50% - 0.5rem); min-width:0;}*.pr-block{display: flex; gap:1.03rem; flex-wrap: wrap;}
.status-toggle-hover {flex: 1 1 100%;}

.image-snackbar {display: flex;}html .image-snackbar input{border-right:0; border-radius: var(--rad-s) 0 0 var(--rad-s); flex: 1;}html .image-snackbar input{min-width:0;}
.image-snackbar .body-footer {border-radius: 0 var(--rad-s) var(--rad-s) 0;}

/* ---------- buttons ---------- */
.body-footer {letter-spacing:0.03em; align-items: center; text-transform:uppercase; min-height:2.84rem; border-radius: var(--rad-s); gap:0.49rem; font-size:0.8rem; color: var(--ink); display: inline-flex; transition:background 0.209s, color 0.253s, border-color 0.217s; background: var(--card); padding:0.62rem 1.32rem; border: 1px solid var(--edge); font-weight:bold; justify-content: center;}
.body-footer:hover {border-color: var(--dim); color: var(--ink); background: var(--bg-2);}html .region-layout{background: var(--acc); border-color: var(--acc); color:#app-stepper;}
.region-layout:hover {border-color: var(--acc-d); color:#app-stepper; background: var(--acc-d);}
.review-label-selected {min-width:2.98rem; backface-visibility:visible; padding:0.69rem 1.04rem;}
.feature-default {width:100%;}

/* ---------- decks (newsletter + account) ---------- */
.c-toggle-handle {gap:1.3rem; display: grid;}

/* ---------- decks (newsletter + account) ---------- */
.c-toggle-handle {grid-template-columns: 1fr 1fr; max-width: var(--band); margin:2.67rem auto 0;}.c-widget-meta{flex-direction: column; padding:1.57rem 1.61rem; border: 1px solid var(--edge); background: var(--card); border-radius: var(--rad); display: flex; box-shadow: var(--sh);}html .c-rating-foot{font-size:0.85rem; color: var(--dim);}html .c-rating-foot{margin-bottom:0.98rem;}
.el-badge {display: flex; gap:0.67rem; margin-top:auto; flex-direction: column;}
.el-badge .body-footer {width:100%;}

/* ---------- footer ---------- */
.pagination-title-info {color: var(--on-night); margin-top:3.34rem; padding:2.52rem 0; background: var(--night);}
.wrap-chip {padding:0 1.22rem; justify-content: space-between; width:100%; margin-inline:auto; gap:1.43rem; max-width: var(--max); flex-wrap: wrap; display: flex; align-items: center;}
.banner-detail img {width:auto; opacity:0.9; page-break-inside:auto; filter:brightness(0) invert(1); height:27px;}
.list__foot {color: var(--on-night); margin-top:0.69rem; font-size:0.82rem;}
.page-dense {display: flex; perspective:none; gap:1.32rem;}.page-dense a{color: var(--on-night); font-size:0.92rem;}*.page-dense a:hover{color:#app-stepper;}

.l-profile {gap:0.61rem; display: flex;}
.l-profile a {display: inline-flex; justify-content: center; transition:background 0.159s, color 0.215s, transform 0.137s; background:rgba(241, 255, 255, 0); height:32px; border-radius: var(--rad-s); width:37px; color: var(--on-night); align-items: center;}
.l-profile a:hover {color:#app-stepper; background: var(--acc); transform: translateY(-1px);}

/* ---------- back to top ---------- */
.foot-price {height:50px; border:0 none; color:#app-stepper; background: var(--acc); font-variant-ligatures:normal; box-shadow: var(--sh-l); display: none; word-spacing:normal; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; align-items: center; bottom:1.58rem; right:1.59rem; position: fixed; transition:background 0.157s, transform 0.222s; width:43px; z-index: 900; justify-content: center;}.foot-price:hover{transform: translateY(-2px); background: var(--acc-d);}.comment-meta.foot-price{display: inline-flex;}

/* ---------- cookie ---------- */
.feature-group {box-shadow:0 -2px 23px rgba(24, 44, 41, 0.09); left:0px;}

/* ---------- cookie ---------- */
.feature-group {position: fixed; background: var(--card); right:0; padding:0.9rem 0; z-index: 1100; border-top: 1px solid var(--edge); bottom:0px;}
.wrapper-widget {max-width: var(--max); padding:0 1.28rem; display: flex; margin-inline:auto; justify-content: space-between; width:100%; align-items: center; gap:1.58rem;}.feature-group p{font-size:0.84rem; color: var(--text); margin:0;}.feature-group .body-footer{flex-shrink: 0; min-height:2.48rem; padding:0.47rem 1.42rem;}

/* ---------- auth layers (CSS :target modal) ---------- */
.modal-inner-flat {display: none; z-index: 1300; inset:0; position: fixed;}body .modal-inner-flat:target{display: grid; place-items: center; padding-top:1.25rem;padding-right:1.25rem;padding-bottom:1.25rem;padding-left:1.25rem;}
.c-counter-name {text-underline-offset:auto; position: absolute; backdrop-filter:blur(2px); inset:0; background:rgba(10, 39, 24, 0.48); transform-style:flat;}
.badge-disabled {border-radius: var(--rad); padding:1.74rem 1.81rem 1.62rem; position: relative; border: 1px solid var(--edge); box-shadow: var(--sh-l); width: min(94vw, 25rem); background: var(--card); text-decoration-skip-ink:auto; animation:pop 0.237s ease-out; z-index: 1;}
@keyframes pop { from {opacity:0; transform: translateY(8px) scale(0.99);}to{transform: none; opacity:1;} }
.review-detail-medium {text-decoration:none; font-size:1.42rem; color: var(--dim); right:0.91rem; top:0.69rem; position: absolute; line-height:1;}
.review-detail-medium:hover {color: var(--ink);}
.modal-inner-flat .c-feature-spacer {gap:0.92rem; flex-direction: column; display: flex;}
.shadow-10 {margin-top:0.15rem;}
.shadow-10 {color: var(--dim); text-align: center; font-size:0.77rem;}

/* ---------- responsive ---------- */
@media (max-width: 860px) {
  .close-hero {display: flex;}*.c-divider-suffix{align-items: stretch; widows:2; background: var(--card); display: none; top:100%; padding:0.45rem 0; left:0; flex-direction: column; position: absolute; box-shadow: var(--sh); gap:0; border-bottom: 1px solid var(--edge); text-rendering:auto; right:0em;}
  .action-suffix-first {flex-direction: column; gap:0; padding:0 1.18rem;}*.c-divider-suffix.open{display: flex;}
  .action-suffix-first a {border-bottom: 1px solid var(--edge-2); padding:0.85rem 0;}
  .menu-container {gap:0.85rem; padding:0.91rem 1.24rem 0.33rem;}.c-modal-date:not(._223cbd){grid-template-columns: 1fr 1fr;}
  .c-toggle-handle {grid-template-columns: 1fr;}
}

@media (max-width: 680px) {html{font-size:100%;}
  .gap-inline {padding:0 1.34rem;}
  .c-badge-primary {padding:1.73rem 1.36rem 1.09rem;}
  .filter--last {padding:1.31rem 1.46rem 0.37rem;}.form-cap{padding:1.35rem 1.37rem 1.86rem;}
  .form-secondary, .button-timeline {padding:1.56rem 1.39rem 1.76rem;}
  .c-modal-date {grid-template-columns: 1fr;}
  .wrap-chip {gap:1.28rem; flex-direction: column; align-items: flex-start;}
  .wrapper-widget {gap:0.74rem; flex-direction: column; text-align: center;}
}

@media (max-width: 460px) {
  .nav-loading {flex: 1 1 100%;}
  .foot-price {backface-visibility:visible; right:0.98rem; font-variant-ligatures:normal; bottom:0.96rem;}*{transition:none !important; animation:none !important;}
}

@media (prefers-reduced-motion: reduce) {html{text-underline-offset:auto; scroll-behavior: auto; word-spacing:normal;}
  body {background:#app-stepper;}
}

@media print {.dialog-top:not(._223cbd), .form-cap, body .form-secondary, .table-sticky, .button-timeline:not(._223cbd), body .c-toggle-handle, *.pagination-title-info, *.foot-price, .feature-group, .modal-inner-flat, html .snackbar-outer{display: none !important;}
  .filter__tertiary--primary {border:0rem; max-width:none; box-shadow:none;}
}
