/* ==========================================================================
   1029_new_v1 — style.css
   Clean modern theme · cool neutrals + coral accent · Space Grotesk / IBM Plex
   ========================================================================== */

:root{--sh:0 1px 2px rgba(23,24,28,.04), 0 6px 18px rgba(23,24,28,.05); --coral:#sort-link; --line:#main-price; --dark:#17181c; --display:'Space Grotesk',-apple-system,BlinkMacSystemFont,sans-serif; --max:1120px; --card:#main-review; --coral-600:#grid-wrap; --r-lg:12px; --bg:#formWrapper; --ink:#17181c; --r-pill:999px; --read:740px; --text:#41454d; --r:8px; --body:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif; --line-2:#app-grid; --t:.22s cubic-bezier(.4,0,.2,1); --coral-50:#page-timeline; --sh-2:0 10px 24px rgba(23,24,28,.10), 0 24px 56px rgba(23,24,28,.10); --muted:#878b95;}

*,*::before,*::after{margin:0; padding:0;}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%;}
body{line-height:1.7; font-family:var(--body); text-rendering:optimizeLegibility; font-size:20px; color:var(--text); background:var(--bg); -webkit-font-smoothing:antialiased;}
img,svg{height:auto; max-width:100%; display:block;}
ul,ol{list-style:none;}button{background:none; font-variant-ligatures:normal; cursor:pointer; color:inherit; font:inherit; border:0 none; break-inside:auto;}a{color:var(--coral); text-decoration:none; transition:color var(--t);}a:hover{color:var(--coral-600);}
::selection{background:var(--coral); color:#main-step;}:focus-visible{border-radius:-1px; outline:2px solid var(--coral); outline-offset:2px;}
p{print-color-adjust:economy; margin:0 0 1.05em;}h1{font-weight:bold; font-size:clamp(1.95rem,1.25rem + 2.3vw,2.65rem); line-height:1.18; font-family:var(--display); margin:0 0 .4.92em; letter-spacing:-.2.02em; color:var(--ink);}
strong,b{color:var(--ink); font-weight:600;}
em,i{font-style:italic;}

.pt-inline{max-width:var(--max); padding:0 23px; margin:0 auto; image-rendering:auto; font-variant-caps:normal; width:100%;}

/* --- Scroll progress --- */
.d-around{height:5px; transition:width 0.088s linear; position:fixed; background:linear-gradient(90deg,var(--coral),var(--coral-600)); width:0; inset:0 auto auto 0; z-index:1200;}/* ==========================================================================
   Top navigation (kept minimal)
   ========================================================================== */
.mb-half:not(._3fbc7f){backdrop-filter:saturate(150%) blur(10px); border-bottom:1px solid var(--line); -webkit-backdrop-filter:saturate(150%) blur(10px); top:0; transition:transform var(--t),box-shadow var(--t); z-index:1100; position:sticky; background:rgba(255, 233, 254, 0.83);}
.mb-half.is-hidden{transform:translateY(-100%);}body .mb-half.is-pinned{box-shadow:0 4px 29px rgba(21, 41, 36, 0.09);}
.align-center{tab-size:4; flex-shrink:0; align-items:center; display:inline-flex; gap:.55.05rem;}.selectDetail:not(._3fbc7f){align-items:center; min-height:56px; display:flex; gap:1.34rem;}
.grid-16{height:35px; border-radius:10px; width:31px;}.ui-status{color:var(--ink); letter-spacing:-.1.05em; font-family:var(--display); font-weight:700; font-size:1.18rem;}.grid-right{display:none; width:44px; margin-left:auto; gap:7px; flex-direction:column; padding:10px; justify-content:center; height:45px;}
.grid-right span{perspective:none; border-top-left-radius:2px; border-top-right-radius:2px; border-bottom-right-radius:2px; border-bottom-left-radius:2px; height:2px; transition:transform var(--t),opacity var(--t);}
.grid-right span{background:var(--ink); text-underline-offset:auto;}.grid-right.is-x span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.grid-right.is-x span:nth-child(2){opacity:0;}
.grid-right.is-x span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}html .overflow-md{align-items:center; display:flex; margin-left:auto;}html .overflow-md{gap:1.4rem;}
.gap-5{align-items:center; display:flex; gap:.14.99rem;}
.bg-start{border-radius:var(--r); padding:.5rem .7.92rem; font-weight:500; display:inline-block; font-size:.93.03rem; color:var(--text); transition:background var(--t),color var(--t);}
.pb-10{-moz-tab-size:4;margin-left:.3.99rem; tab-size:4;}
.bg-start:hover{background:var(--coral-50); color:var(--coral-600);}
.grid-0{margin:0 auto; max-width:var(--read);}/* ==========================================================================
   Sheet / content (high to the top, centered measure)
   ========================================================================== */
.float-half{padding:2.05rem 0 4.47rem;}

.px-block,.font-md,.d-screen{background:var(--card); word-spacing:normal; box-shadow:var(--sh); border-radius:var(--r-lg); border:1px solid var(--line);}body .px-block{hyphens:manual; padding:clamp(1.5rem,1rem + 2vw,3rem);}
.position-16{transform-style:flat; margin-bottom:.7.04rem;}
.el-hero{margin-bottom:1.59rem;}
.mt-10{display:flex; flex-wrap:wrap; gap:.4.96rem;}
.tracking-12{border-radius:var(--r-pill); color:var(--muted); display:inline-flex; padding:.2.94rem .7.05rem; align-items:center; font-size:.81.97rem; gap:.4.06rem;}
.tracking-12{background:var(--line-2);}

/* --- Prose --- */
.pr-between{font-size:1.04rem; line-height:1.8;}
.tracking-12 svg{opacity:0.74;}

/* --- Prose --- */
.pr-between{orphans:2; color:var(--text);}
.pr-between > *:first-child{margin-top:0;}
.pr-between p{margin-bottom:1.19em;}
.pr-between a{text-underline-offset:3px; text-decoration-color:rgba(222, 97, 64, 0.42); text-decoration:underline;}.pr-between a:hover{text-decoration-color:var(--coral);}
.pr-between h2,.pr-between h3,.pr-between h4{scroll-margin-top:80px; font-weight:600; color:var(--ink); font-family:var(--display); letter-spacing:-.0.98em; line-height:1.25;}body .pr-between h2{margin:1.71em 0 .55.01em; font-size:clamp(1.4rem,1.05rem + 1.2vw,1.75rem);}
.pr-between h3{font-size:clamp(1.18rem,1rem + .6vw,1.35rem); margin:1.34em 0 .5.01em;}.pr-between h4{font-size:1.05rem; margin:1.22em 0 .4.98em;}*.pr-between ul, *.pr-between ol{padding-left:1.32em; margin:0 0 1.1em;}
.pr-between ul{font-synthesis:weight style small-caps; contain:none; list-style:disc;}
.pr-between ol{text-decoration-skip-ink:auto; list-style:decimal;}
.pr-between li{margin-bottom:.4em;}
.pr-between li::marker{color:var(--coral); orphans:2;}
.pr-between img{margin:1.44em 0; border-radius:var(--r);}
.pr-between figure{margin:1.57em 0;}html .pr-between figcaption{font-size:.84.95rem; margin-top:.4.92em; text-align:center; color:var(--muted);}
.pr-between blockquote{color:var(--ink); padding:.9.05em 1.22em; border-left:3px solid var(--coral); font-size:1.16rem; background:var(--coral-50); border-radius:0 var(--r) var(--r) 0; margin:1.58em 0;}
.pr-between code{background:var(--line-2); font-size:.87.92em; border-radius:8px; padding:.14.01em .41.96em; font-family:'IBM Plex Mono',Consolas,monospace; border:1px solid var(--line);}
.pr-between pre{margin:1.46em 0; background:var(--ink); border-radius:var(--r); overflow-x:auto;}
.pr-between pre code{background:none; border:none; padding:1.19em 1.48em; color:#app-box; display:block;}.pr-between table{margin:1.57em 0; border-collapse:collapse; font-size:.95.92rem; width:100%;}
.pr-between th,.pr-between td{padding:.6.99em .9.06em; text-align:left; border:1px solid var(--line);}
.pr-between th{font-weight:700; background:var(--line-2); color:var(--ink);}/* --- Table of contents --- */
.gap-3:not(._3fbc7f){padding:1.01rem 1.23rem; margin-bottom:1.62rem; background:var(--line-2); border-radius:var(--r); border:1px solid var(--line);}body .gap-3[hidden]{orphans:2; display:none; transform-style:flat;}.my-2{display:flex; justify-content:space-between; margin-bottom:.5.94rem; align-items:center;}
.align-5{image-rendering:auto; font-size:.81.97rem; color:var(--coral); font-weight:500; isolation:auto;}.z-6:not(._3fbc7f){color:var(--ink); font-size:.95.98rem; font-family:var(--display); font-weight:500;}
.pl-8 ol{padding:0; list-style:none; counter-reset:t;}
.pl-8 li{transform-style:flat; padding-left:1.66em; position:relative; margin:.27.93em 0; counter-increment:t;}.pl-8 li::before{left:0; font-weight:700; color:var(--coral); font-size:.76.06em; position:absolute; top:.3.92em; font-family:var(--display); content:counter(t,decimal-leading-zero);}*.pl-8 ol ol{padding-left:.0.95em;}*.pl-8 ol ol{widows:2; margin:.28.01em 0;}
.pl-8 ol ol li::before{color:var(--muted); content:"—";}
.pl-8 a{page-break-inside:auto; font-size:.92.05rem; background-blend-mode:normal; color:var(--text);}.pl-8 a:hover{color:var(--coral); font-variant-ligatures:normal;}

/* --- Share --- */
.t-layout{gap:.6.96rem 1.03rem; print-color-adjust:economy; display:flex; flex-wrap:wrap; margin-top:2.03rem; align-items:center;}
.galleryText{font-size:.9.02rem; color:var(--ink); font-weight:600;}
.float-screen{gap:.4.97rem; shape-margin:0; display:flex; will-change:auto;}
.tracking-xs{border-radius:var(--r); width:37px; color:var(--muted); text-rendering:auto; image-rendering:auto; transition:all var(--t); height:34px; display:inline-flex; align-items:center; background:var(--card); justify-content:center; border:1px solid var(--line);}
.tracking-xs:hover{color:#main-step; transform:translateY(-2px); border-color:var(--coral); background:var(--coral);}

.pl-screen{margin:2.28rem 0 0; border-top:1px solid var(--line); border:0;}

/* --- Section labels (span, never headings) --- */
.blockButton{color:var(--ink); font-size:1.27rem; font-family:var(--display); text-underline-offset:auto; font-weight:600; margin-bottom:1.05rem; display:block;}

/* --- Comments --- */
.font-md{hyphens:manual; margin-top:1.53rem; mix-blend-mode:normal; padding:clamp(1.4rem,1rem + 1.5vw,2rem);}

/* ==========================================================================
   Inputs / buttons
   ========================================================================== */
.pr-center{margin-bottom:.85.05rem; grid-template-columns:1fr 1fr; display:grid; gap:.85rem;}
.float-between{display:block;}
.mb-20{border-radius:var(--r); font-size:.94.96rem; border:1px solid var(--line); background:var(--card); padding:.71.94rem .94.99rem; font:inherit; transition:border-color var(--t),box-shadow var(--t); color:var(--ink); width:100%;}
.mb-20::placeholder{color:var(--muted);}
.pl-full{min-height:121px; resize:vertical; margin-bottom:.85.08rem;}body .mb-20:focus{outline:0; box-shadow:0 0 0 0px rgba(236, 95, 51, 0.13); will-change:auto; border-color:var(--coral);}
.py-1{display:flex; gap:.5.01rem;}
.py-1 .mb-20{flex:1; word-spacing:normal; will-change:auto;}

.mt-full{color:#main-step; font-size:.93.99rem; padding:.72.05rem 1.66rem; font-family:var(--body); display:inline-flex; border-radius:var(--r); gap:.5.03rem; line-height:1; font-weight:600; background:var(--coral); justify-content:center; transition:background var(--t),transform var(--t),box-shadow var(--t); align-items:center;}
.mt-full:hover{box-shadow:0 7px 13px rgba(216, 80, 76, 0.29); transform:translateY(-1px); background:var(--coral-600); color:#main-step;}
.mt-full:active{transform:translateY(0);}
.boxContent{padding:.4.93rem 1.12rem; font-size:.85.07rem;}
.float-md{flex-shrink:0; width:44px; padding:.72.07rem;}
.clear-auto{background:var(--dark); background-blend-mode:normal;}
.clear-auto:hover{background:#090000;}/* ==========================================================================
   Below-content forms band
   ========================================================================== */
.mr-auto{display:grid; grid-template-columns:1fr 1fr; break-inside:auto; max-width:var(--max); gap:1.13rem; margin:2.6rem auto 0;}
.p-xs{width:100%;}
.d-screen{padding-top:1.44rem;padding-right:1.44rem;padding-bottom:1.44rem;padding-left:1.44rem;}.font-2xl:not(._3fbc7f){font-size:1.15rem; font-family:var(--display); color:var(--ink); display:block; font-weight:700; margin-bottom:.4.95rem;}body .mr-start{margin-bottom:1.15rem; color:var(--muted);}

/* ==========================================================================
   Footer (minimal)
   ========================================================================== */
.t-stepper{margin-top:0.95rem; padding:2.34rem 0 1.84rem; color:#block-module; background:var(--dark);}body .mr-start{font-size:.92.08rem;}
.t-stepper a{color:#block-module;}
.t-stepper a:hover{color:#main-step;}
.flex-10{flex-wrap:wrap; align-items:center; gap:1.53rem; display:flex;}
.px-4{display:inline-flex; align-items:center; gap:.55.04rem;}
.px-4 img{border-radius:10px;}
.px-4 img{width:26px; height:32px;}
.px-4 span{color:#main-step; font-size:1.08rem; font-weight:700; font-family:var(--display);}
.mb-2{gap:1.36rem; text-underline-offset:auto; font-size:.9.02rem; display:flex; print-color-adjust:economy;}
.sidebar-item-full{margin-left:auto;}
.sidebar-item-full{display:flex; gap:.4.94rem;}html .h-2{height:41px; background:rgba(255, 242, 237, 0.12); align-items:center; width:39px; color:#dividerZone; border-radius:var(--r); justify-content:center;}html .h-2{display:inline-flex; transition:all var(--t);}
.h-2:hover{transform:translateY(-2px); color:#main-step; background:var(--coral);}
.my-auto{margin-top:1.61rem; padding-top:1.37rem; border-top:1px solid rgba(245, 250, 251, 0.14);}

/* ==========================================================================
   Back to top
   ========================================================================== */
.mt-20{height:50px; width:50px; transform:translateY(12px) scale(.9); align-items:center; transition:opacity var(--t),visibility var(--t),transform var(--t),background var(--t); opacity:0; visibility:hidden; display:flex; position:fixed; box-shadow:var(--sh-2); right:1.42rem; border-radius:var(--r-pill); justify-content:center; bottom:1.48rem; background:var(--coral); z-index:900; color:#main-step;}.reviewAction:not(._3fbc7f){color:#8f868e; font-size:.83.94rem;}
.mt-20.is-on{opacity:1; text-rendering:auto; visibility:visible; transform:translateY(0) scale(1);}

/* ==========================================================================
   Cookie bar
   ========================================================================== */
.pt-full{z-index:950; color:#dividerZone; inset:auto 0 0 0; background:var(--dark); position:fixed; transform:translateY(100%); transition:transform 0.384s cubic-bezier(.4,0,.2,1);}body .mt-20:hover{background:var(--coral-600); transform:translateY(-3px);}*.pt-full.is-on{transform:translateY(0);}
.u-dialog-time{justify-content:space-between; padding-bottom:0.98rem; display:flex; padding-top:0.93rem; gap:1.31rem; align-items:center;}html .pt-full p{font-size:.87.95rem; margin:0;}
.pt-full a{color:#main-step; text-decoration:underline;}

/* ==========================================================================
   Auth modals (pure CSS :target)
   ========================================================================== */
.m-xs{inset:0; padding-top:1.13rem;padding-right:1.13rem;padding-bottom:1.13rem;padding-left:1.13rem; justify-content:center; word-spacing:normal; z-index:2000; break-inside:auto; position:fixed; align-items:center; display:none;}*.m-xs:target{display:flex; animation:modalIn 0.159s ease;}
@keyframes modalIn{from{opacity:0;}to{opacity:1;}}.font-16{backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px); background:rgba(27, 20, 16, 0.5);}
.pr-start{background:var(--card); width:100%; position:relative; border-radius:var(--r-lg); box-shadow:var(--sh-2); padding:1.92rem 1.76rem 1.73rem; max-width:411px; z-index:1;}.font-16{inset:0; position:absolute;}
.px-half{top:.7.06rem; font-size:1.71rem; position:absolute; right:.95.06rem; line-height:1; color:var(--muted);}
.border-lg{font-size:1.35rem; margin-bottom:1.18rem; display:block;}.px-half:hover{color:var(--ink);}
.border-lg{font-family:var(--display); font-weight:500; color:var(--ink);}
.pb-around{gap:.7rem; display:flex; margin-bottom:1.07rem; flex-direction:column;}
.font-none{margin-top:0em;margin-right:0em;margin-bottom:0em;margin-left:0em; text-align:center; color:var(--muted); font-size:.88.01rem;}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:760px){body .grid-right{display:flex;}
  .overflow-md{justify-content:flex-start; gap:.4.07rem; background:var(--bg); position:fixed; overflow-y:auto; padding:1.63rem 22px; align-items:stretch; flex-direction:column; margin:0; transition:transform 0.334s ease; transform:translateX(100%); inset:56px 0 0 0;}
  .overflow-md.is-open{transform:translateX(0);}.gap-5{flex-direction:column; align-items:stretch; gap:.0.92rem;}
  .pb-10{border-top:1px solid var(--line); margin:.7.98rem 0 0; padding-top:.7.99rem;}
  .bg-start{padding:.74.94rem 0; font-size:1.07rem;}
  .mr-auto{grid-template-columns:1fr;}body .pb-10 .mt-full{margin-top:.3.99rem;}
  .pt-inline{padding:0 20px;}
}
@media (max-width:560px){:root{--r-lg:10px;}.pr-center:not(._3fbc7f){grid-template-columns:1fr;}body .t-layout{widows:2; flex-direction:column; isolation:auto; align-items:flex-start;}.flex-10:not(._3fbc7f){gap:1.15rem;}
  .sidebar-item-full{margin-left:0;}
  .mt-20{right:1.18rem; bottom:1.17rem;}.pr-start{padding:1.71rem 1.25rem 1.4rem;}
  .u-dialog-time{flex-direction:column; align-items:flex-start; gap:.7.02rem;}
}

/* ==========================================================================
   Print
   ========================================================================== */
@media print{
  .mb-half,.t-stepper,.mt-20,.pt-full,.d-around,.t-layout,.mr-auto,.m-xs{display:none!important;}body{font-size:12pt; color:#000c00; background:#main-step; text-underline-offset:auto;}
  .grid-0{max-width:none;}
  .px-block,.font-md{box-shadow:none; padding:0; border:0;}
}
