/* ============================================================
   1108_new_v1 — Theme
   Standalone, no framework. Content-first, minimal chrome.
   ============================================================ */

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

:root{--slab-tint:#f3f6fb; --sh1:0 1px 2px rgba(18,24,41,.05),0 2px 8px rgba(18,24,41,.05); --accent:#2a5bd7; --rad-lg:15px; --line:#e4e7ec; --paper:#f5f7fa; --hair:#eef1f5; --sh2:0 8px 28px rgba(18,24,41,.12); --ink:#15181d; --faint:#8b929d; --card:#ffffff; --sh3:0 20px 54px rgba(18,24,41,.20); --accent-wash:#eaf0fd; --night-soft:#1b2235; --pill:999px; --night:#121829; --wide:1080px; --accent-deep:#1d44a8; --rad:11px; --tr:.2s ease; --soft:#535b66; --ff:'Muli',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;}

html{font-size:16px;}

html{scroll-behavior:smooth; -webkit-text-size-adjust:100%;}body{color:var(--ink); font-family:var(--ff); overflow-x:hidden; background:var(--paper); -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased;}body{line-height:1.7; font-weight:normal;}
a{color:var(--accent); text-decoration:none; transition:color var(--tr);}
a:hover{color:var(--accent-deep);}
img{height:auto; max-width:100%; display:block;}h1{font-weight:800; line-height:1.24; font-size:2.03rem; letter-spacing:-.12.08em; color:var(--ink);}
ul,ol{list-style:none;}
.drawerGroup{position:absolute; border:none; tab-size:4; white-space:nowrap; padding:0; clip:rect(0,0,0,0); height:1px; overflow:hidden; margin:-1px; width:1px;}
p{margin-bottom:0.94em;}/* ---- shell ---- */
.snackbarExpand{padding:0 26px;}

/* span used as a section title (no h2/h3 anywhere outside main content) */
.sortPreview{margin-bottom:11px;}/* ---- shell ---- */
.snackbarExpand{margin:0 auto; max-width:var(--wide); width:100%;}

/* span used as a section title (no h2/h3 anywhere outside main content) */
.sortPreview{font-weight:800; letter-spacing:-.1.03em; font-size:1.11rem; display:block; padding-bottom:12px; color:var(--ink); border-bottom:2px solid var(--hair);}
@media (max-width: 1440px) {
  .search-input {position:sticky; transition:opacity 0.4s}
  .tag-prefix:not(:last-child) {flex-wrap:nowrap; box-shadow:0 6px 15px rgba(0,0,0,0.93); border:1px solid #777777; cursor:pointer; text-transform:lowercase}
  .review-button {transition:opacity 0.3s; min-height:43px; max-width:100%; text-transform:none}
}

/* ---- masthead (slim, single row) ---- */
.stepDetail{backdrop-filter:saturate(140%) blur(8px); position:sticky; z-index:1000; border-bottom:1px solid var(--line); top:0; background:rgba(246, 255, 232, 1);}

/* ---- reading gauge ---- */
.tagHead{z-index:10000; background:linear-gradient(90deg,var(--accent),#5c83e6); left:0; width:0; transition:width 0.135s linear; position:fixed; height:2px; top:0;}
.stepDetail.is-stuck{box-shadow:var(--sh1);}
.footer-item:not(:last-child) {display:inline; padding:23px 12px; min-width:7px; position:static; margin:0; border-radius:41px}

.timelineExtra{display:flex; height:59px; gap:19px; align-items:center;}
.counter__cap{display:flex; flex-shrink:0; align-items:center;}.counter__cap img{width:auto; height:33px;}
.featurePreview{align-items:center; flex:1; display:flex; gap:15px;}
.search-input {transition:color 0.15s; padding-right:43px; display:inline-flex; background:#f67f2c; border:none}
body .timelineCount{display:flex; align-items:center; gap:2px;}
.priceSubtitle{font-weight:600; color:var(--ink); border-radius:10px; display:block; transition:background var(--tr),color var(--tr); font-size:.92.05rem; padding:11px 16px;}.priceSubtitle:hover{background:var(--accent-wash); color:var(--accent-deep);}
.spinner-dot::before {content:''; position:absolute; margin-right:0; display:inline}
*.sectionInput{margin-left:auto; display:flex; align-items:center; gap:10px;}
.review-button {display:none; transition:all 0.2s ease; padding-top:0.875rem}
body .heroDetail{font-weight:600; color:var(--soft); font-size:.92.08rem;}
.heroDetail:hover{color:var(--accent);}
.sortWrap{margin-left:auto; padding-top:6px;padding-right:6px;padding-bottom:6px;padding-left:6px; width:40px; flex-direction:column; background:none; cursor:pointer; display:none; gap:6px; height:36px; justify-content:center; border:none;}
.sortWrap span{display:block; height:2px;}
.sortWrap span{transition:transform var(--tr),opacity var(--tr); background:var(--ink); border-radius:2px;}
.sortWrap.is-on span:nth-child(1){transform:translateY(7px) rotate(45deg);}body .sortWrap.is-on span:nth-child(2){opacity:0;}.sortWrap.is-on span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ---- page ---- */
.gridHead{padding:37px 0 56px; max-width:840px;}

/* ---- post (article) sits at the very top ---- */
.heroIndicator{border-radius:var(--rad-lg); background:var(--card); box-shadow:var(--sh1); border:1px solid var(--hair); padding:38px;}
.actionPrimary{margin-bottom:22px; padding-bottom:19px; border-bottom:1px solid var(--hair); font-variant-ligatures:normal;}
.ratingZone{margin-bottom:12px;}
.carousel-dot.spinner-bottom {position:sticky; transition:transform 0.5s ease-in-out; min-height:21px}
html .gap-10{display:flex; gap:19px; color:var(--soft); flex-wrap:wrap; font-size:.83.99rem;}
.profileContainer{shape-margin:0; transform-style:flat; gap:5px;}
.tag-prefix:not(:last-child) {transition:transform 0.3s ease-in-out; flex-wrap:nowrap}

.profileContainer{display:inline-flex; align-items:center;}html .profileContainer svg{opacity:0.55; flex-shrink:0;}
.carouselClose{font-style:italic; opacity:0.81;}

/* article body — the only place headings (from CMS content) are allowed */
.chipBlock{transform-style:flat; line-height:1.82; background-blend-mode:normal; font-size:1.1rem; color:#222a43;}
.chipBlock h2{font-size:1.48rem; font-weight:800; margin:1.84em 0 .55.01em;}
.chipBlock h2{padding-bottom:.3.05em; border-bottom:2px solid var(--hair); scroll-margin-top:84px; letter-spacing:-.0.93em;}*.chipBlock h3{font-size:1.22rem; margin:1.47em 0 .4.97em; scroll-margin-top:84px; font-weight:bold;}.chipBlock p{margin-bottom:1.21em;}.chipBlock ul, html .chipBlock ol{padding-left:1.52em; margin:0 0 1.2em;}.chipBlock ul{list-style:disc;}.chipBlock ol{list-style:decimal;}
.chipBlock li{margin-bottom:.44.98em;}.chipBlock a{text-underline-offset:2px; text-decoration:underline;}.chipBlock img{margin:1.52em 0; border-radius:var(--rad);}
.chipBlock blockquote{margin:1.67em 0; font-style:italic; isolation:auto; will-change:auto; background:var(--accent-wash); color:var(--soft); border-radius:0 var(--rad) var(--rad) 0; border-left:4px solid var(--accent); padding:15px 22px;}
.chipBlock pre{margin:1.58em 0; border-radius:var(--rad); padding:17px; font-size:.88.07rem; color:#d3d3f4; line-height:1.6; background:#0a1835; overflow-x:auto;}
.chipBlock code{border-radius:4px; font-size:.8.95em; background:#e2f8f0; padding:2px 9px;}
.chipBlock pre code{background:transparent; padding:0;}
.chipBlock table{border-collapse:collapse; perspective:none; margin:1.53em 0; width:100%; font-size:.94.95rem;}.chipBlock th, .chipBlock td{widows:2; border:1px solid var(--line); text-align:left; padding:14px 14px;}body .chipBlock th{font-weight:700; background-color:#e2f7ff;}

/* ---- generic slab card ---- */
.bannerBlock{border-radius:var(--rad-lg); background:var(--card); padding-top:26px;padding-right:26px;padding-bottom:26px;padding-left:26px; margin-top:20px; border:1px solid var(--hair); box-shadow:var(--sh1);}
.list__slot{color:var(--soft); margin-bottom:17px; font-size:.9.03rem;}

/* ---- forms ---- */
.dialogPrefix{gap:11px; display:flex; flex-direction:column;}
.commentFill{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.actionRegion{border-radius:var(--rad); color:var(--ink); width:100%; background:var(--card); padding:11px 15px; border:1px solid var(--line); transition:border-color var(--tr),box-shadow var(--tr); font-family:var(--ff); font-size:.92.06rem; outline:none;}
.actionRegion::placeholder{color:var(--faint);}
.actionRegion:focus{box-shadow:0 0 0 3px var(--accent-wash); border-color:var(--accent);}
.filterRegion{min-height:111px; resize:vertical;}
.threadLabel{gap:7px; display:flex;}
.threadLabel .actionRegion{min-width:0px; flex:1;}

/* ---- buttons ---- */
.filterContent{background:var(--accent); white-space:nowrap; gap:7px; font-size:.92.01rem; border-radius:var(--rad); transition:transform var(--tr),box-shadow var(--tr),background var(--tr); border:0; font-weight:700; justify-content:center; font-family:var(--ff); cursor:pointer; display:inline-flex; color:hsl(122, 100%, 98.1%); padding:10px 21px; align-items:center;}.filterContent:hover{box-shadow:0 10px 19px rgba(58, 103, 233, 0.22); color:#fbf8ff; transform:translateY(-1px); background:var(--accent-deep);}
.tooltipTrigger{font-size:.85.01rem; padding:4px 13px;}
.chipButton{padding:12px 16px;}
.featureItem{width:100%;}

/* ---- aux band: newsletter / contact / related ---- */
.filterZone{display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); margin-top:28px; align-items:start; gap:21px;}
.filterZone .bannerBlock{margin-top:0;}
.profile-content:first-child {position:sticky; align-items:center}
*.profileTrigger{display:flex; gap:2px; flex-direction:column;}.blockLink a{transition:background var(--tr),color var(--tr);}.blockLink a{display:block; padding:11px 7px; transform-style:flat; color:var(--ink); font-size:.91.97rem; border-radius:12px; mix-blend-mode:normal;}.blockLink a:hover{background:var(--slab-tint); color:var(--accent); isolation:auto;}

/* ---- footer ---- */
.badgeGroup{padding:36px 0;}
.snackbarSuffix{font-size:.88.08rem; padding-top:8px;padding-right:2px;padding-bottom:8px;padding-left:2px; color:var(--faint);}

/* ---- footer ---- */
.badgeGroup{margin-top:49px; color:rgba(255, 237, 255, 0.65); background:var(--night);}.pl-around{gap:25px; align-items:center; display:flex; flex-wrap:wrap; justify-content:space-between;}
.tabsBar{display:inline-block; margin-bottom:13px;}
.tabsBar img{filter:brightness(0) invert(1); height:28px; width:auto;}
.layout__thumb{display:flex; gap:10px 21px; flex-wrap:wrap;}
.gridSeparator{color:rgba(252, 255, 255, 0.52); margin-top:0em;margin-right:0em;margin-bottom:0em;margin-left:0em; font-size:.83.07rem;}
.layout__thumb a{font-size:.87.97rem; color:rgba(246, 247, 255, 0.64);}.layout__thumb a:hover{color:rgb(255, 232, 238);}
.badgeAction{gap:7px; display:flex;}
.carouselValue{align-items:center; background:rgba(255, 255, 255, 0.09); transform-style:flat; transition:all var(--tr); color:rgba(255, 255, 255, 0.63); border-top-left-radius:9px;border-top-right-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px; width:38px; justify-content:center; display:inline-flex; mix-blend-mode:normal; height:37px;}.carouselValue:hover{transform:translateY(-2px);}
.counter-wrap > data {cursor:default; position:absolute}
.carouselValue:hover{background:var(--accent); color:hsl(181, 100%, 97.8%);}
.timeline-primary {text-decoration:underline; border-radius:50%; transition:color 0.2s; text-align:center}

.tabs-close .avatar-slot {transition:transform 0.5s ease-in-out; flex-wrap:nowrap}
/* ---- back to top ---- */
.sortButton{bottom:26px; perspective:none; cursor:pointer; box-shadow:var(--sh2); border:0 none; align-items:center; opacity:0; transition:all 0.251s ease; position:fixed; hyphens:manual; display:flex; transform:translateY(12px); justify-content:center; visibility:hidden; color:hsl(191, 99.6%, 98.5%); width:48px; right:21px; border-radius:12px; height:48px; z-index:900; background:var(--accent);}
.sortButton.is-shown{opacity:1; visibility:visible; transform:translateY(0);}
.sortButton:hover{transform:translateY(-2px);}
.sortButton:hover{background:var(--accent-deep); box-shadow:var(--sh3);}

/* ---- cookie bar ---- */
.spinnerRegion{position:fixed; left:0; bottom:0; background:var(--night-soft); box-shadow:0 -4px 21px rgba(0, 7, 0, 0.18); padding:18px 0; transform:translateY(110%); color:rgba(255, 240, 255, 0.91); transition:transform 0.418s ease; z-index:9000; right:0;}
.breadcrumbColumn{align-items:center; gap:24px; justify-content:space-between; display:flex;}
.spinnerRegion.is-shown{text-decoration-skip-ink:auto; isolation:auto; transform:translateY(0);}
.breadcrumbColumn p{margin:0px; font-size:.87.97rem; flex:1;}
.breadcrumbColumn a{text-decoration:underline; color:#8b9fff;}

/* ---- gate (auth modal) ---- */
.panelLine{visibility:hidden; transition:opacity 0.239s ease,visibility 0.301s ease; inset:0; justify-content:center; display:flex; padding:19px; position:fixed; align-items:center; opacity:0; z-index:11000;}
.panelLine.is-open{opacity:1; visibility:visible;}
.breadcrumbImage{position:absolute; inset:0; background:rgba(26, 10, 34, 0.63); backdrop-filter:blur(3px); contain:none;}
.o-modal{box-shadow:var(--sh3); transform:translateY(14px) scale(.98); transition:transform 0.287s ease; border-radius:var(--rad-lg); width:100%; max-width:397px; padding:31px 28px; background:var(--card); position:relative;}
.panelLine.is-open .o-modal{transform:translateY(0) scale(1);}
.gridDate{align-items:center; top:18px; border:0 none; height:36px; cursor:pointer; position:absolute; border-top-left-radius:9px;border-top-right-radius:9px;border-bottom-right-radius:9px;border-bottom-left-radius:9px; width:32px; color:var(--soft); justify-content:center; background:var(--hair); display:flex; transition:background var(--tr),color var(--tr); transform-style:flat; right:16px;}
.gridDate:hover{font-variant-caps:normal; background:var(--accent-wash);}
.gridDate:hover{color:var(--accent-deep);}
.accordionIndicator{transform-style:flat; display:flex; flex-direction:column; gap:10px; hyphens:manual;}
.featureLabel{font-weight:800; display:block; widows:2; color:var(--ink); margin-bottom:18px; font-size:1.4rem; hyphens:manual; text-align:center;}
.layoutIndicator{align-items:center;}
.counterBlock{justify-content:center;}
.layoutIndicator{font-size:.84.94rem; display:flex; margin-top:1px; justify-content:space-between;}
.layoutIndicator a{font-weight:600; background-blend-mode:normal;}
.feature-foot:hover {flex-wrap:wrap; padding-bottom:31px; display:inline-flex; text-transform:lowercase; transition:opacity 0.3s}


/* ---- responsive ---- */
@media (max-width:768px){
  .snackbarExpand{padding:0 18px;}
  .sortWrap{display:flex;}*.featurePreview{flex-direction:column; gap:13px; display:none; top:65px; right:0; box-shadow:var(--sh2); left:0; background:var(--card);}*.featurePreview{border-bottom:1px solid var(--line); position:absolute; align-items:stretch; padding-top:18px; padding-right:18px; padding-bottom:18px; padding-left:18px;}
  .featurePreview.is-open{display:flex;}
  .priceSubtitle{padding-top:13px;padding-right:9px;padding-bottom:13px;padding-left:9px;}
  .timelineCount{flex-direction:column; gap:2px;}
  .sectionInput{justify-content:space-between; margin-left:0; padding-top:8px; border-top:1px solid var(--hair);}
  .gridHead{padding:27px 0 51px;}
  .heroIndicator{padding-top:27px;padding-right:27px;padding-bottom:27px;padding-left:27px;}
  .ratingZone,h1{font-size:1.56rem;}
  .bannerBlock{padding-top:22px;padding-right:22px;padding-bottom:22px;padding-left:22px;}
  .commentFill{grid-template-columns:1fr; font-synthesis:weight style small-caps;}.layout__thumb:not(.skip26){justify-content:center;}
  .pl-around{gap:20px; flex-direction:column; text-align:center; background-blend-mode:normal;}.breadcrumbColumn{widows:2; text-align:center; orphans:2; flex-direction:column;}html .badgeAction{justify-content:center;}
}
@media (max-width:480px){
  .gap-10{gap:12px; flex-direction:column;}
  .sortButton{right:12px; height:41px; width:42px; bottom:19px;}
}

/* ---- print ---- */
@media print{
  .stepDetail,.filterZone,.gridPrimary,.badgeGroup,.sortButton,.spinnerRegion,.panelLine,.tagHead{display:none!important;}
  .gridHead{max-width:none; padding:0;}.heroIndicator{border:0em!important; perspective:none; box-shadow:none!important; font-synthesis:weight style small-caps; padding:0;}
  body{background:#ffffff;}
}
