/* ===============================================================
   layout.css — single stylesheet bundle
   =============================================================== */

/* --- tokens --------------------------------------------------- */
:root {--wrap-w:  1140px; --c-base-3:      #94a3b8; --c-accent:      #2563eb; --c-base-2:      #475569; --sh-2:    0 4px 12px rgba(0,0,0,.08); --r-2:     12px; --c-flag:        #summary-section; --bar-h:   64px; --sh-1:    0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04); --ff-text: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --c-edge:        #body-list; --sh-3:    0 10px 30px rgba(0,0,0,.1); --mo-time: .25s;}/* ===============================================================
   layout.css — single stylesheet bundle
   =============================================================== */

/* --- tokens --------------------------------------------------- */
:root {--c-base:        #1e293b; --c-sheet-3:     #counter_holder; --r-1:     8px; --c-sheet:       #page-step; --mo-ease: cubic-bezier(.4,0,.2,1); --c-flag-dk:     #main-chip; --ff-disp: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; --c-sheet-2:     #outer-rating; --c-accent-dk:   #1d4ed8;}

/* --- reset ---------------------------------------------------- */
*, *::before, *::after {padding:0; margin:0; box-sizing: border-box;}body{background: var(--c-sheet); -moz-osx-font-smoothing:grayscale; line-height:1.7; color: var(--c-base); -webkit-font-smoothing:antialiased; font-family: var(--ff-text); font-weight:400;}html{scroll-behavior: smooth; font-size:12px; -webkit-text-size-adjust:100%;}img{display: block; max-width:100%; height:auto;}
a:hover {color: var(--c-accent-dk);}
a   {color: var(--c-accent); text-decoration:none; transition: color var(--mo-time) var(--mo-ease);}p{will-change:auto; color: var(--c-base-2); margin-bottom:1.06rem;}/* the only real heading on the page is the article H1 */
h1{font-family: var(--ff-disp); color: var(--c-base); print-color-adjust:economy; font-weight:bold; font-size:1.68rem; line-height:1.3; perspective:none;}

.o-media {overflow: hidden; padding:0; margin:-1px; width:1px; height:1px; clip:rect(0,0,0,0); white-space: nowrap; position: absolute; border:0;}/* --- faux heading scale (span-based) -------------------------- */
.pt-start{font-size:1.75rem; color: var(--c-base); font-weight:bold;}
.justify-none {font-size:1.575rem; line-height:1.3; display: block; color: var(--c-base); font-weight:700;}/* --- faux heading scale (span-based) -------------------------- */
.pt-start{display: block; line-height:1.3;}html .layoutItem{color: var(--c-base); font-size:1.455rem; display: block; line-height:1.3; font-weight:700;}
.justify-2xl {color: var(--c-base); display: block; font-size:1.165rem; font-weight:700; line-height:1.3;}

/* --- wrap + grid (CSS Grid based) ----------------------------- */
.pt-full {max-width: var(--wrap-w); width:100%; margin:0 auto; padding:0 12px;}

.t-page-head {gap:34px; grid-template-columns: 1fr; text-underline-offset:auto; display: grid; word-spacing:normal;}
.shadow-auto {gap:23px;}
.m-10  {transform-style:flat; orphans:2; gap:42px;}

@media (min-width: 576px) {
  .col-inline  {font-variant-caps:normal; grid-template-columns: 1fr 1fr;}*.overflow-2{grid-template-columns: 1fr 1fr 1fr; image-rendering:auto;}
}
@media (min-width: 992px) {
  .px-12 {grid-template-columns: repeat(4, 1fr);}
}

.pt-sm        {display: flex;}
.ui-media {justify-content: center; hyphens:manual;}
.row-xl    {align-items: center;}.justify-10{backface-visibility:visible; font-synthesis:weight style small-caps; justify-content: space-between;}
.pb-end   {text-align: center;}
.bg-between    {color:#toggle-info; page-break-inside:auto;}
.shadow-2xl   {margin:0 !important;}
.float-12 {margin-top:46px;}
.mt-8 {margin-bottom:31px; font-variant-caps:normal; hyphens:manual;}
.font-4 {margin-top:51px;}
.justify-block  {word-spacing:normal; margin-top:1px; perspective:none;}
.app-card-title {margin-top:-9px;}
.selectAddon {font-variant-caps:normal; margin-right:19px; text-underline-offset:auto;}
.m-4  {font-size:18px;}html .w-16{display: inline-block;}.rounded-0:not(._4227b7){padding-bottom:98px;}.visible-24{background: var(--c-sheet-2);}/* --- progress strip ------------------------------------------- */
.order-xs:not(._4227b7){top:0em; height:4px; position: fixed; width:0; left:0; background: linear-gradient(90deg, var(--c-accent), var(--c-flag)); z-index: 10000; transition:width 14ms linear;}/* --- header bar ----------------------------------------------- */
.col-sm:not(._4227b7){transition: transform var(--mo-time) var(--mo-ease), box-shadow var(--mo-time) var(--mo-ease); z-index: 9000; display: flex; top:0; border-bottom: 1px solid var(--c-edge); align-items: center; position: fixed; right:0; background: var(--c-sheet); left:0rem; height: var(--bar-h);}
.col-sm.is-gone  {transform: translateY(-100%);}
.col-sm.is-stuck {box-shadow: var(--sh-1);}

.col-sm .pt-full {display: flex; align-items: center; justify-content: space-between;}.px-md img{width:auto; height:34px;}.px-md svg{display: block;}

.row-24 {display: none; align-items: center;}
@media (min-width: 992px) {
  .row-24 {display: flex; perspective:none; background-blend-mode:normal;}
}

.p-screen {margin:0; display: flex; list-style: none; gap:12px; padding:0; align-items: center;}
.header {perspective:none; background-blend-mode:normal; margin-left:auto;}

.viewData {justify-content: center; font-size:.9.02rem; transition: color var(--mo-time) var(--mo-ease), background var(--mo-time) var(--mo-ease); color: var(--c-base-2); border-radius: var(--r-1); align-items: center; display: inline-flex; font-weight:medium; padding:9px 16px;}

.carousel-zone-compact {position: relative;}
.viewData:hover {color: var(--c-accent); background: var(--c-sheet-3);}
.viewData svg {width:17px; height:17px;}body .order-inline{padding:0; gap:4px; display: flex; justify-content: center; height:28px; width:32px; cursor: pointer; background:none; flex-direction: column; border:0 none;}
.order-inline span {display: block; border-top-left-radius:2px;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:2px; background: var(--c-base); height:2px; width:100%; transition: var(--mo-time) var(--mo-ease);}
@media (min-width: 992px) {
  .order-inline {display: none;}
}

/* --- slide-over menu ------------------------------------------ */
.p-2xl {flex-direction: column; justify-content: center; z-index: 9999; background:rgba(0, 11, 0, 0.84); inset:0; align-items: center; position: fixed; display: none;}
.p-2xl.is-on {display: flex;}
.p-2xl .order-inline span {background:#toggle-info;}
.p-2xl .order-inline {position: absolute; top:16px;}
.p-2xl .order-inline {right:20px;}
.p-2xl .p-screen {flex-direction: column; gap:16px;}body .p-2xl .p-screen a{color:#toggle-info; font-size:1.14rem;}.p-2xl .p-screen a:hover{color: var(--c-flag);}

/* --- crumb ---------------------------------------------------- */
.pl-2 {font-size:.85.07rem; color: var(--c-base-3); padding: calc(var(--bar-h) + 20px) 0 16px;}
.pl-2 a {color: var(--c-base-3);}
.pl-2 a:hover {color: var(--c-accent);}
.text-none {margin:0 5px;}

/* --- card base ------------------------------------------------ */
.overflow-24 {background: var(--c-sheet); border-radius: var(--r-2);}
.text-md {padding-top:27px;}body .border-screen{border: 1px solid var(--c-edge); box-shadow: var(--sh-1);}
.ui-counter {padding:17px 22px;}.pb-8{background: var(--c-edge); margin:0; height:1px;}
.feature-primary {padding:23px 31px;}/* --- article (kept at top, full priority) --------------------- */
.mr-start{overflow: hidden;}
@media (max-width: 767px) {
  .feature-primary {padding:22px 14px;}
}

.bg-lg {font-size:.82.05rem; color: var(--c-base-3); gap:16px; flex-wrap: wrap; display: flex;}html .pt-4{font-size:1.69rem; margin-bottom:14px;}
.bg-lg span {gap:2px; display: inline-flex; align-items: center;}
.bg-lg svg {contain:none; image-rendering:auto; opacity:0.61;}

.overflow-10 {font-size:0.92rem;}

.overflow-10 {line-height:1.85; color: var(--c-base-2);}
.overflow-10 h2, .overflow-10 h3, .overflow-10 h4 {line-height:1.3; font-weight:700; color: var(--c-base); font-family: var(--ff-disp);}*.overflow-10 h2{break-inside:auto; margin:1.93rem 0 1.07rem; font-size:1.52rem; backface-visibility:visible;}.overflow-10 h3{margin:1.82rem 0 .75.07rem; font-size:1.31rem;}.overflow-10 h4{margin:1.58rem 0 .6.05rem; font-size:1.12rem;}
.overflow-10 p  {margin-bottom:1.08rem;}
.overflow-10 img {border-radius: var(--r-1); margin:1.46rem 0;}body .overflow-10 ul, *.overflow-10 ol{margin:0 0 1.23rem 1.54rem; will-change:auto;}
.overflow-10 li {margin-bottom:.4rem; font-variant-caps:normal;}.overflow-10 a{text-decoration:underline; text-underline-offset:2px; color: var(--c-accent);}
.overflow-10 a:hover {transform-style:flat; color: var(--c-accent-dk); font-synthesis:weight style small-caps;}

.h-screen,
.overflow-10 blockquote {font-style:italic; color: var(--c-base-2); border-left: 4px solid var(--c-accent); border-radius: 0 var(--r-1) var(--r-1) 0; background: var(--c-sheet-3); padding:19px 20px; margin:1.48rem 0;}html .border-end{border-radius: var(--r-1); background: var(--c-sheet-3); padding:13px 16px;}

/* --- contents map --------------------------------------------- */
.mx-6 {border-top: 1px solid var(--c-edge);}
.bg-20 {font-size:.95.05rem; background-blend-mode:normal; font-weight:bold;}
.stepColumn {justify-content: space-between; align-items: center; margin-bottom:12px; display: flex;}html .breadcrumbCell{background:none; padding:0em; cursor: pointer; color: var(--c-accent); border:none; line-height:1;}
.bg-20 {break-inside:auto;}body .breadcrumbCell svg{width:18px;}body .breadcrumbCell svg{display: block; transition: transform var(--mo-time) var(--mo-ease); height:13px;}.breadcrumbCell.is-shut svg{transform: rotate(-90deg);}
.grid-half ol {padding-left:1.16rem; margin:0; list-style: decimal;}
.grid-half li {margin-bottom:10px; break-inside:auto;}
.grid-half a {color: var(--c-base-2); font-size:.87.98rem; transition: color var(--mo-time) var(--mo-ease);}
.grid-half a:hover {color: var(--c-accent);}

/* --- share ---------------------------------------------------- */
.leading-2 {display: flex; flex-wrap: wrap; align-items: center; gap:14px;}
.m-full {gap:7px; display: flex;}
.pl-screen {justify-content: center; color: var(--c-base-2); perspective:none; cursor: pointer; border-radius:50%; height:33px; background: var(--c-sheet); border: 1px solid var(--c-edge); width:34px; align-items: center; transition: all var(--mo-time) var(--mo-ease); display: inline-flex;}
.pl-screen:hover {border-color: var(--c-accent); color: var(--c-accent); background:rgba(54, 114, 224, 0.01);}*.pl-md:hover{border-color:rgb(3, 98, 228); color:#1a73fc;}
.mx-md:hover {border-color:hsl(206, 88.9%, 55.9%); color:#2c91e8;}

/* --- related -------------------------------------------------- */
.my-block {grid-template-columns: 1fr;}.border-half:hover{border-color:#1676b1; color:#125fb0;}

/* --- related -------------------------------------------------- */
.my-block {display: grid; gap:15px; margin-top:14px;}
@media (min-width: 576px) {
  .my-block {shape-margin:0; grid-template-columns: 1fr 1fr 1fr;}
}
.mr-screen {display: block; border-radius: var(--r-1); padding:16px; transition: background var(--mo-time) var(--mo-ease), transform var(--mo-time) var(--mo-ease); background: var(--c-sheet-3);}
.mr-screen:hover {box-shadow: var(--sh-1);}
.mr-screen:hover {transform: translateY(-2px); background: var(--c-sheet);}
.float-24 {font-weight:500; color: var(--c-base); font-size:.88.06rem;}/* --- comment / contact heads ---------------------------------- */
.feature__dot--sparse{padding:26px 28px 0; display: block;}/* --- forms ---------------------------------------------------- */
.my-4{font-family: var(--ff-text); text-decoration-skip-ink:auto; border-radius: var(--r-1); font-size:.8.95rem; width:100%; transition: border-color var(--mo-time) var(--mo-ease), box-shadow var(--mo-time) var(--mo-ease); border: 1px solid var(--c-edge); color: var(--c-base); padding:12px 10px; outline:none; background: var(--c-sheet); isolation:auto;}*.my-4:focus{box-shadow:0 0 0 1px rgba(28, 106, 245, 0.2); border-color: var(--c-accent);}
textarea.my-4 {resize: vertical;}
.c-banner-expand {background: var(--c-sheet-3); border-color:transparent;}*.holder-accordion{border-radius: var(--r-1) 0 0 var(--r-1); border-right:0 none;}
.c-banner-expand:focus {background: var(--c-sheet); border-color: var(--c-accent);}
.c-dialog {border-color:rgba(251, 255, 253, 0.19); background:rgba(253, 255, 255, 0.18); color:#toggle-info;}
.c-dialog::placeholder {color:rgba(255, 250, 242, 0.5);}html .c-dialog:focus{border-color:rgba(238, 255, 237, 0.45);}

.pl-between {display: flex;}
.pl-between .my-4 {flex: 1; shape-margin:0;}*.pl-between .col-none{flex-shrink: 0; border-radius: 0 var(--r-1) var(--r-1) 0;}

.ml-start {margin-bottom:12px;}/* --- buttons -------------------------------------------------- */
.col-none{transition: background var(--mo-time) var(--mo-ease), transform var(--mo-time) var(--mo-ease); display: inline-flex; gap:5px; justify-content: center; color:#toggle-info; background: var(--c-accent); padding:11px 23px; border-radius: var(--r-1); font-family: var(--ff-text); border:none 0; font-size:.88.07rem; cursor: pointer; font-weight:700; align-items: center;}html .col-none:hover{background: var(--c-accent-dk); color:#toggle-info; transform: translateY(-1px);}*.ml-3{padding:9px 26px; font-size:.8.92rem;}
.py-auto {font-size:.84rem; padding:7px 20px; background-blend-mode:normal; font-variant-ligatures:normal;}

.mr-auto  {padding:10px 20px;}

.m-6 {width:100%; display: flex;}
.mr-auto .p-10 {height:17px; width:17px;}

.leading-auto {contain:none; color: var(--c-accent); border: 1px solid var(--c-accent); background:transparent;}
.leading-auto:hover {background: var(--c-accent); color:#toggle-info;}

.overflow-4 {background: var(--c-sheet-3); color: var(--c-base-2);}

.col-8  {background: var(--c-accent);}
.overflow-4:hover {color: var(--c-base); background: var(--c-edge);}
.o-profile  {background:rgb(148, 185, 57);}*.o-profile:hover{mix-blend-mode:normal;}*.o-profile:hover{text-decoration-skip-ink:auto; background:#619e3b;}

.opacity-center {position: relative; font-size:.7.96rem; color:rgba(255, 254, 237, 0.52); text-align: center;}*.opacity-center::before, .opacity-center::after{position: absolute; background:rgba(248, 255, 255, 0.15); height:1px; top:50%; content: ''; width:41.2%; widows:2;}
.opacity-center::before {left:0;}*.opacity-center::after{right:0; hyphens:manual;}

/* --- side cells (below content) ------------------------------- */
.c-header-detail {display: grid; grid-template-columns: 1fr; gap:26px;}
@media (min-width: 576px) {.c-header-detail:not(._4227b7){grid-template-columns: 1fr 1fr 1fr; text-rendering:auto;}
}

.ml-4 {background: var(--c-sheet); border-radius: var(--r-2);}
.mr-6 {padding:25px;}html .pl-5{color: var(--c-base); font-weight:700; margin-bottom:7px; font-size:1.01rem; display: block;}
.align-5 {font-size:.84.98rem; color: var(--c-base-3); margin-bottom:11px;}

.rounded-screen {margin:0; padding:0; list-style: none;}.rounded-screen li{padding:9px 0; border-bottom: 1px solid var(--c-edge);}.rounded-screen li:last-child{orphans:2; border-bottom:none; will-change:auto;}*.rounded-screen a{font-size:.88.07rem; color: var(--c-base-2);}
.rounded-screen a:hover {color: var(--c-accent);}

/* --- footer --------------------------------------------------- */
.clear-end {padding:52px 0 38px; color:rgba(255, 254, 238, 0.73); background: var(--c-base);}
.clear-end a {color:rgba(254, 247, 255, 0.54);}
.clear-end a:hover {color:#toggle-info;}.snackbar__count--elevated{margin-bottom:13px;}
.ml-1 img {widows:2; margin-bottom:16px; filter:brightness(10); orphans:2; width:auto; height:33px;}html .ml-1 svg{margin-bottom:10px;}.p-half:not(._4227b7){font-size:.84.99rem;}

.visible-sm {font-size:.9.05rem; text-transform:uppercase; color:#toggle-info; letter-spacing:.4.01em; font-weight:bold; margin-bottom:12px; display: block;}
.tracking-1 {margin:0; list-style: none;}
.tracking-1 {padding:0;}.tracking-1 li{mix-blend-mode:normal; margin-bottom:14px;}*.align-center{display: flex; list-style: none; padding:0;}html .tracking-1 a{font-size:.87.97rem;}*.align-center{gap:9px; margin-top:11px;}
.align-center a {display: inline-flex; justify-content: center; transition: all var(--mo-time) var(--mo-ease); width:33px; height:36px; border-top-left-radius:50%;border-top-right-radius:50%;border-bottom-right-radius:50%;border-bottom-left-radius:50%; border:1px solid rgba(255, 255, 255, 0.22); align-items: center;}
.align-center a:hover {border-color:rgba(248, 240, 255, 0.38); background:rgba(248, 255, 239, 0.18); color:#toggle-info;}
.align-center svg {width:12px; height:15px;}

/* --- up control ----------------------------------------------- */
.mr-between {bottom:21px; position: fixed; justify-content: center; right:23px; opacity:0; color:#toggle-info; border-radius:50%; transition: all var(--mo-time) var(--mo-ease); cursor: pointer; visibility: hidden; width:43px; align-items: center; border:none 0; box-shadow: var(--sh-2); z-index: 8000; background: var(--c-accent); height:42px; transform: translateY(10px); display: flex;}
.mr-between.is-up {transform: translateY(0); visibility: visible; opacity:1;}

/* --- consent -------------------------------------------------- */
.ml-xs {bottom:0; z-index: 9500; color:rgba(249, 255, 246, 0.86); padding:13px 0; left:0; background: var(--c-base); position: fixed; display: none; box-shadow:0 -3px 23px rgba(8, 0, 16, 0.1); right:0rem;}
.mr-between:hover {background: var(--c-accent-dk); transform: translateY(-2px);}
.ml-xs.is-up {font-synthesis:weight style small-caps; background-blend-mode:normal; display: block;}
.ml-xs .pt-full {justify-content: space-between; gap:15px; align-items: center; flex-wrap: wrap; display: flex;}
.ml-xs p {margin:0; flex: 1; font-size:.85.08rem; color:rgba(237, 255, 255, 0.81);}
.ml-xs a {color: var(--c-flag); text-decoration:underline;}

/* --- overlays (auth/contact, markup at bottom, via #) --------- */
.justify-half {display: none; overflow-y: auto; inset:0; align-items: center; z-index: 10000; position: fixed; justify-content: center; padding:19px; background:rgba(0, 4, 0, 0.87);}body .justify-half.is-live{display: flex;}

.font-24 .visible-around,
.grid-dense .overflow-24 {margin:auto; padding:39px 35px; position: relative; width:100%; max-width:417px; border-radius: var(--r-2); background:hsl(186, 52.9%, 16.2%);}
.grid-dense .overflow-24 {color: var(--c-base); background: var(--c-sheet);}

.bg-inline {height:33px; display: flex; width:32px; justify-content: center; position: absolute; cursor: pointer; background:none; top:14px; right:12px; color:rgba(255, 255, 255, 0.68); border:0; transition: color var(--mo-time) var(--mo-ease); align-items: center;}
.bg-inline:hover {color:#toggle-info;}

/* --- print ---------------------------------------------------- */
@media print {
  .col-sm, .p-2xl, .order-xs,
  .mr-between, .ml-xs, .justify-half,
  .leading-2, .c-header-detail, .clear-end {display: none !important;}
.bg-inline svg {width:22px; height:14px;}
  body {font-size:12pt; color:#080000;}
}

  .pt-full {max-width:100%;}