/* Tetri’s Smile · “Frost” skin (v14)
   Editorial deck language: ice-white and slate surfaces, tight black grotesk headlines, mono slash labels (/ 02 /),
   hairline grids with corner marks, thin ellipse rings, cool-blue duotone photography, frosted veils, pixel accents.
   Everything is scoped to html[data-skin="frost"]; the Signature skin is untouched when the attribute is absent. */
html[data-skin="frost"]{
  --display:"Inter Tight","Inter","Helvetica Neue",Arial,sans-serif;--body:"Inter","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono","SFMono-Regular",Menlo,monospace;
  --navy:#0f1c2b;--navy-2:#182a3f;--steel:#5b7fa3;--mist:#e4ebf2;--ice:#e9eef3;--ice-2:#d9e3ec;--slate:#0f1c2b;--tint:#2f5f94;
  --fg:#0a0e14;--fg2:#2a3340;--fg3:#5f6b7a;--ln:rgba(10,14,20,.16);--panel:rgba(255,255,255,.58);--panel-ln:rgba(10,14,20,.12);
}
html[data-skin="frost"].dark{--fg:#f4f7fa;--fg2:#d7e0ea;--fg3:#9fb0c3;--ln:rgba(255,255,255,.22);--panel:rgba(18,30,46,.55);--panel-ln:rgba(255,255,255,.14)}
html[data-skin="frost"] body{background:var(--ice);color:var(--fg);font:400 16px/1.6 var(--body);letter-spacing:-.005em}
html[data-skin="frost"] body.page{background:var(--ice)}
/* frosted blobs behind inner pages (the home page has the sky shader) */
html[data-skin="frost"] body.page::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(42% 36% at 18% 8%,rgba(168,192,220,.85),rgba(168,192,220,0) 70%),radial-gradient(36% 40% at 84% 82%,rgba(120,152,192,.55),rgba(120,152,192,0) 70%),radial-gradient(30% 30% at 70% 20%,rgba(255,255,255,.9),rgba(255,255,255,0) 70%)}

/* ---------- type ---------- */
html[data-skin="frost"] h1,html[data-skin="frost"] h2,html[data-skin="frost"] h3{font-family:var(--display);font-weight:600;letter-spacing:-.045em;line-height:1.0;text-transform:none}
html[data-skin="frost"] .ch h2{font-size:clamp(40px,1.6rem + 4.2vw,96px);max-width:14ch}
html[data-skin="frost"] .ch--media .ch__body h2,html[data-skin="frost"] .ch--center h2{font-size:clamp(34px,1.3rem + 3vw,68px);max-width:12ch}
html[data-skin="frost"] .deck{font:400 clamp(15px,.9rem + .3vw,17px)/1.55 var(--body);color:var(--fg2);max-width:46ch}
html[data-skin="frost"] .lab,html[data-skin="frost"] .wide,html[data-skin="frost"] .hero__values,html[data-skin="frost"] .cta,html[data-skin="frost"] .btn,html[data-skin="frost"] .steps b,html[data-skin="frost"] .price th,html[data-skin="frost"] .photo .tag,html[data-skin="frost"] .ba__label,html[data-skin="frost"] .ba__cap,html[data-skin="frost"] .media__credit,html[data-skin="frost"] .field span,html[data-skin="frost"] .hd__phone,html[data-skin="frost"] .menu-btn,html[data-skin="frost"] .lang button,html[data-skin="frost"] .lang a,html[data-skin="frost"] .ft__links,html[data-skin="frost"] .ft small,html[data-skin="frost"] .mfig figcaption,html[data-skin="frost"] .quotes figcaption,html[data-skin="frost"] .timeline b,html[data-skin="frost"] .card .lines span:last-child,html[data-skin="frost"] .swipe,html[data-skin="frost"] .rail a span{font-family:var(--mono);letter-spacing:.01em;text-transform:none;font-weight:400}
html[data-skin="frost"] .lab{font-size:11.5px;line-height:1.5;color:var(--fg3)}
html[data-skin="frost"] .ch__label::before,html[data-skin="frost"] .phero .lab::before,html[data-skin="frost"] .mfig figcaption::before{content:"/ "}
html[data-skin="frost"] .ch__label::after,html[data-skin="frost"] .phero .lab::after,html[data-skin="frost"] .mfig figcaption::after{content:" /"}
html[data-skin="frost"] .num{font:600 clamp(30px,1.2rem + 1.6vw,44px)/1 var(--display);letter-spacing:-.05em}
html[data-skin="frost"] .cta{font-size:12px;gap:12px}
html[data-skin="frost"] .cta i,html[data-skin="frost"] .cta .ico{border-radius:0;border:1px solid var(--ln)}
html[data-skin="frost"] .btn{border-radius:2px;min-height:46px;font-size:12px;letter-spacing:0;background:#0a0e14;color:#fff}
html[data-skin="frost"] .btn--line{background:transparent;color:var(--fg);border:1px solid var(--ln)}
html[data-skin="frost"] .rule{background:var(--ln)}
html[data-skin="frost"] ::selection{background:#0a0e14;color:#fff}

/* ---------- header ---------- */
html[data-skin="frost"] .hd{background:rgba(233,238,243,.78);border-bottom:1px solid rgba(10,14,20,.12);backdrop-filter:none}
html[data-skin="frost"].dark .hd{background:rgba(15,28,43,.78);border-bottom-color:rgba(255,255,255,.12)}
html[data-skin="frost"] .hd__brand .wide{font:600 15px/1 var(--display);letter-spacing:-.02em;text-transform:none}
html[data-skin="frost"] .hd__brand .wide::after{content:"®";font:500 9px/1 var(--mono);vertical-align:super;margin-left:2px;opacity:.7}
html[data-skin="frost"] .menu-btn b{border-radius:0}
html[data-skin="frost"] .page .hd,html[data-skin="frost"] .page .hd.is-light{background:rgba(233,238,243,.8)}
html[data-skin="frost"] .page .hd .hd__brand,html[data-skin="frost"] .page .hd .hd__phone,html[data-skin="frost"] .page .hd .menu-btn,html[data-skin="frost"] .page .hd .lang a,html[data-skin="frost"] .page .hd .lang button{color:#0a0e14}
html[data-skin="frost"] .page .hd .menu-btn b{background:#0a0e14;color:#fff}

/* ---------- menu overlay ---------- */
html[data-skin="frost"] .menu{background:var(--ice);color:#0a0e14}
html[data-skin="frost"] .menu__name{font:600 clamp(18px,1rem + .7vw,22px)/1.1 var(--display);letter-spacing:-.03em}
html[data-skin="frost"] .menu__desc,html[data-skin="frost"] .menu__foot,html[data-skin="frost"] .menu__x,html[data-skin="frost"] .menu .lab{font-family:var(--mono);text-transform:none;letter-spacing:0}

/* ---------- hero (home) ---------- */
html[data-skin="frost"] .film{background:var(--ice)}
html[data-skin="frost"] .film video,html[data-skin="frost"] .film img{filter:grayscale(1) sepia(.8) hue-rotate(175deg) saturate(1.3) brightness(1.08) blur(12px)!important;opacity:.55}
html[data-skin="frost"] .film::after{background:linear-gradient(180deg,rgba(233,238,243,.55) 0%,rgba(233,238,243,.35) 45%,rgba(233,238,243,.8) 100%),radial-gradient(60% 50% at 70% 30%,rgba(255,255,255,.65),rgba(255,255,255,0) 70%)}
html[data-skin="frost"] #gl{filter:blur(.4px) saturate(.85)}
html[data-skin="frost"] .hero{text-align:left}
html[data-skin="frost"] .hero__mark{height:50svh;position:relative}
html[data-skin="frost"] .hero__mark::after{content:"";position:absolute;left:50%;top:58%;width:min(68vw,900px);height:min(40vh,360px);transform:translate(-50%,-50%) rotate(-16deg);border:1px solid rgba(10,14,20,.28);border-radius:50%;pointer-events:none}
html[data-skin="frost"] .hero__word{text-align:left;padding:0 var(--gutter);max-width:1320px;margin-inline:auto;width:100%;box-sizing:border-box}
html[data-skin="frost"] .hero__values{justify-content:flex-start;gap:0 14px;font-size:11.5px;letter-spacing:0;text-transform:none;color:var(--fg3)}
html[data-skin="frost"] .hero__values span::before{content:"/ ";opacity:.6}
html[data-skin="frost"] .lockup-x{display:grid;grid-template-columns:auto;gap:8px;justify-items:start}
html[data-skin="frost"] .lockup-x__vr{display:none}
html[data-skin="frost"] .hero__word .wm{font:600 clamp(48px,2rem + 6.4vw,136px)/.92 var(--display)!important;letter-spacing:-.055em!important;text-transform:none!important}
html[data-skin="frost"] .hero__word .wm::after{content:"®";font:500 .22em/1 var(--mono);vertical-align:super;margin-left:.08em;opacity:.7;letter-spacing:0}
html[data-skin="frost"] .hero__word .sub{font:400 12px/1.5 var(--mono)!important;letter-spacing:0!important;text-transform:none!important;color:var(--fg3)}
html[data-skin="frost"] .hero__word .labw{font:600 clamp(28px,1.2rem + 2.4vw,56px)/1 var(--display)!important;letter-spacing:-.045em!important;text-transform:none!important;color:var(--fg2);margin-top:6px}
html[data-skin="frost"] .hero__word .labw::before{content:"× ";font-weight:300;color:var(--fg3)}
html[data-skin="frost"] .hero__word > .lab{display:inline-block;margin-top:22px;padding:8px 14px;border:1px solid var(--ln);border-radius:999px;font-size:11.5px}
html[data-skin="frost"] .hero__foot{border-top:1px solid var(--ln);margin:0 var(--gutter);padding-left:0;padding-right:0;height:auto;padding-top:18px}
html[data-skin="frost"] .hero__dash{display:none}

/* ---------- chapters ---------- */
html[data-skin="frost"] .ch{border-top:1px solid var(--ln);padding-block:clamp(84px,12vh,140px)}
html[data-skin="frost"] .ch > .wrap{position:relative}
html[data-skin="frost"] .ch > .wrap::before,html[data-skin="frost"] .ch > .wrap::after{content:"+";position:absolute;top:-52px;font:300 16px/1 var(--mono);color:var(--fg3);pointer-events:none}
html[data-skin="frost"] .ch > .wrap::before{left:var(--gutter)}
html[data-skin="frost"] .ch > .wrap::after{right:var(--gutter)}
html[data-skin="frost"] .ch--center{text-align:left}
html[data-skin="frost"] .ch--center .ch__body{margin-inline:0;max-width:min(48%,620px)}
html[data-skin="frost"] .ch--center .deck{margin-inline:0}
html[data-skin="frost"] .ch--center .rule{margin-inline:0}
html[data-skin="frost"] .ch--center .ch__cta,html[data-skin="frost"] .ch--center .cta{justify-content:flex-start}
/* photography: cool duotone everywhere except the before/after sliders */
html[data-skin="frost"] .ch--media > .media img,html[data-skin="frost"] .ch--media > .media video,html[data-skin="frost"] .photo img,html[data-skin="frost"] .phero__img img,html[data-skin="frost"] .mfig img,html[data-skin="frost"] .card img,html[data-skin="frost"] .pcta img{filter:grayscale(1) sepia(.85) hue-rotate(176deg) saturate(1.35) contrast(1.02) brightness(1.02)}
/* light chapters: the photo becomes a tall right-hand panel with a frosted edge */
html[data-skin="frost"]:not(.dark) .ch--media > .media{inset:8% 0 auto 52%;height:58%;background:transparent;border-radius:2px;overflow:hidden}
html[data-skin="frost"]:not(.dark) .ch--media > .media::after{background:linear-gradient(90deg,rgba(233,238,243,1) 0%,rgba(233,238,243,.55) 18%,rgba(233,238,243,0) 45%),linear-gradient(180deg,rgba(233,238,243,.5),rgba(233,238,243,0) 25%,rgba(233,238,243,0) 75%,rgba(233,238,243,.6))}
html[data-skin="frost"]:not(.dark) .ch--media .ch__body{max-width:min(50%,620px)}
html[data-skin="frost"]:not(.dark) .ch--media .grid3,html[data-skin="frost"]:not(.dark) .ch--media .ba-grid,html[data-skin="frost"]:not(.dark) .ch--media .quotes{position:relative;z-index:1}
/* slate chapters: full-bleed photo under a frosted slate veil */
html[data-skin="frost"].dark .ch--media > .media{background:var(--slate)}
html[data-skin="frost"].dark .ch--media > .media img,html[data-skin="frost"].dark .ch--media > .media video{opacity:.75;filter:grayscale(1) sepia(.85) hue-rotate(176deg) saturate(1.1) brightness(.75) blur(2px)}
html[data-skin="frost"].dark .ch--media > .media::after{background:linear-gradient(90deg,rgba(15,28,43,.9) 0%,rgba(15,28,43,.55) 50%,rgba(15,28,43,.25) 100%),linear-gradient(180deg,rgba(15,28,43,.5),rgba(15,28,43,0) 30%,rgba(15,28,43,0) 70%,rgba(15,28,43,.7))}
html[data-skin="frost"].dark .ch::before{content:"";position:absolute;right:6vw;top:50%;width:min(52vw,720px);height:min(46vh,420px);transform:translateY(-50%) rotate(-14deg);border:1px solid rgba(255,255,255,.28);border-radius:50%;pointer-events:none;z-index:1}
html[data-skin="frost"] html:not(.gl) .ch[data-theme="dark"]{background:var(--slate)}
/* watermark chapters: pixel cluster instead of the big mark */
html[data-skin="frost"] .ch--wm::before{width:min(34vh,30vw);aspect-ratio:1;right:4vw;top:18%;transform:none;opacity:.9;background-size:contain;background-repeat:no-repeat;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' shape-rendering='crispEdges'><g fill='%235b7fa3' fill-opacity='.55'><rect x='6' y='0' width='1' height='1'/><rect x='7' y='1' width='2' height='1'/><rect x='5' y='2' width='1' height='1'/><rect x='8' y='2' width='3' height='1'/><rect x='4' y='3' width='2' height='1'/><rect x='7' y='3' width='1' height='1'/><rect x='9' y='3' width='2' height='1'/><rect x='3' y='4' width='1' height='1'/><rect x='5' y='4' width='3' height='1'/><rect x='10' y='4' width='1' height='1'/><rect x='4' y='5' width='4' height='1'/><rect x='9' y='5' width='1' height='1'/><rect x='2' y='6' width='1' height='1'/><rect x='5' y='6' width='2' height='1'/><rect x='8' y='6' width='2' height='1'/><rect x='3' y='7' width='3' height='1'/><rect x='7' y='7' width='1' height='1'/><rect x='4' y='8' width='1' height='1'/><rect x='6' y='8' width='2' height='1'/><rect x='5' y='9' width='1' height='1'/><rect x='7' y='10' width='1' height='1'/></g><g fill='%23ffffff' fill-opacity='.5'><rect x='8' y='1' width='1' height='1'/><rect x='9' y='2' width='1' height='1'/><rect x='5' y='5' width='1' height='1'/><rect x='6' y='7' width='1' height='1'/></g></svg>")}
html[data-skin="frost"].dark .ch--wm::before{opacity:.7}
/* tiles, panels, photos, tables */
html[data-skin="frost"] .panel{background:rgba(255,255,255,.62);border:1px solid var(--panel-ln);border-radius:2px;box-shadow:none}
html[data-skin="frost"].dark .panel{background:rgba(18,30,46,.6);border-color:rgba(255,255,255,.16)}
html[data-skin="frost"] .grid3{gap:0;border:1px solid var(--ln)}
html[data-skin="frost"] .grid3 > .panel{border:0;border-right:1px solid var(--ln);border-bottom:1px solid var(--ln);border-radius:0;background:rgba(255,255,255,.74)}
html[data-skin="frost"].dark .grid3 > .panel{background:rgba(15,28,43,.5)}
html[data-skin="frost"] .grid3 > .panel:nth-child(3n){border-right:0}
html[data-skin="frost"] .grid3 > .panel:nth-last-child(-n+3){border-bottom:0}
html[data-skin="frost"] .proc .lab{color:var(--fg);font-weight:500}
html[data-skin="frost"] .photo{border-radius:2px}
html[data-skin="frost"] .photo .tag,html[data-skin="frost"] .ba__label,html[data-skin="frost"] .ba__cap{background:rgba(233,238,243,.9);color:#0a0e14;border-radius:0;font-size:11px;padding:7px 9px}
html[data-skin="frost"] .steps{gap:0;border:1px solid var(--ln)}
html[data-skin="frost"] .steps > *{border-right:1px solid var(--ln);border-radius:0}
html[data-skin="frost"] .steps > *:last-child{border-right:0}
html[data-skin="frost"] .price th,html[data-skin="frost"] .price td{border-bottom:1px solid var(--ln)}
html[data-skin="frost"] blockquote{font-family:var(--display);font-weight:500;letter-spacing:-.03em;border-left:1px solid var(--ln)}
html[data-skin="frost"] .quotes{gap:0;border:1px solid var(--ln)}
html[data-skin="frost"] .quotes > *{border-right:1px solid var(--ln);border-radius:0}
html[data-skin="frost"] .quotes > *:last-child{border-right:0}

/* ---------- footer ---------- */
html[data-skin="frost"] .ft,html[data-skin="frost"] .page .ft{background:var(--slate);color:#f4f7fa;border-top:1px solid rgba(255,255,255,.12)}
html[data-skin="frost"] .ft .ft__mark,html[data-skin="frost"] .page .ft .ft__mark{color:#f4f7fa}
html[data-skin="frost"] .ft small{color:#9fb0c3}
html[data-skin="frost"] .ft::before{content:"/ Tetri’s Smile × Laboratory /";display:block;text-align:center;font:400 11.5px/1 var(--mono);color:#9fb0c3;margin-bottom:34px}

/* ---------- inner pages ---------- */
html[data-skin="frost"] .phero{background:var(--ice);color:#0a0e14;min-height:min(72vh,720px);border-bottom:1px solid var(--ln)}
html[data-skin="frost"] .phero::before{background:linear-gradient(90deg,var(--ice) 0%,rgba(233,238,243,.0) 60%)}
html[data-skin="frost"] .phero::after{display:none}
html[data-skin="frost"] .phero__img{inset:0 0 0 46%}
html[data-skin="frost"] .phero__img img{opacity:.9}
html[data-skin="frost"] .phero__img::after{background:linear-gradient(90deg,var(--ice) 0%,rgba(233,238,243,.6) 20%,rgba(233,238,243,0) 55%),linear-gradient(180deg,rgba(233,238,243,.35),rgba(233,238,243,0) 30%,rgba(233,238,243,0) 70%,rgba(233,238,243,.7))}
html[data-skin="frost"] .phero > .wrap::before{content:"";position:absolute;right:4%;top:14%;width:min(44vw,620px);height:min(40vh,380px);transform:rotate(-14deg);border:1px solid rgba(10,14,20,.25);border-radius:50%;pointer-events:none}
html[data-skin="frost"] .phero .lab{color:var(--fg3)}
html[data-skin="frost"] .phero h1{color:#0a0e14;text-shadow:none;font-size:clamp(42px,1.6rem + 4.6vw,104px);letter-spacing:-.05em;max-width:12ch}
html[data-skin="frost"] .phero .lead{color:var(--fg2);font:400 clamp(15px,.9rem + .35vw,18px)/1.55 var(--body);max-width:50ch}
html[data-skin="frost"] .article{max-width:68ch}
html[data-skin="frost"] .article h2{color:#0a0e14;font-size:clamp(26px,1.1rem + 1.6vw,40px)}
html[data-skin="frost"] .article p,html[data-skin="frost"] .article li{font:400 16px/1.6 var(--body)}
html[data-skin="frost"] .article section{border-top:1px solid var(--ln)}
html[data-skin="frost"] .mag .article section.first > h2 + p{font:400 clamp(17px,1rem + .4vw,20px)/1.5 var(--body);color:var(--fg)}
html[data-skin="frost"] .mag .article section.first > h2 + p::first-letter{float:none;font:inherit;margin:0;color:inherit}
html[data-skin="frost"] .mfig{position:relative}
html[data-skin="frost"] .mfig::before,html[data-skin="frost"] .mfig::after{content:"+";position:absolute;top:-14px;font:300 14px/1 var(--mono);color:var(--fg3)}
html[data-skin="frost"] .mfig::before{left:-4px}
html[data-skin="frost"] .mfig::after{right:-4px}
html[data-skin="frost"] .mfig img{border-radius:2px;background:var(--ice-2)}
html[data-skin="frost"] .mfig figcaption{color:var(--fg3);font-size:11.5px}
html[data-skin="frost"] .pull{border-left:0;border-top:1px solid var(--ln);border-bottom:1px solid var(--ln);padding:26px 0}
html[data-skin="frost"] .pull p{font:600 clamp(24px,1rem + 1.8vw,40px)/1.05 var(--display);letter-spacing:-.045em;color:#0a0e14}
html[data-skin="frost"] .aside .panel{background:rgba(255,255,255,.7);border:1px solid var(--ln);border-radius:2px;box-shadow:none}
html[data-skin="frost"] .aside .panel .lab{color:var(--fg)}
html[data-skin="frost"] .pcta{background:var(--slate);color:#f4f7fa;position:relative;overflow:hidden}
html[data-skin="frost"] .pcta::before{content:"";position:absolute;right:6vw;top:50%;width:min(50vw,680px);height:min(44vh,380px);transform:translateY(-50%) rotate(-14deg);border:1px solid rgba(255,255,255,.28);border-radius:50%;pointer-events:none}
html[data-skin="frost"] .pcta h2{color:#f4f7fa}
html[data-skin="frost"] .pcta .btn{background:#f4f7fa;color:#0a0e14}
html[data-skin="frost"] .pcta .btn--line{background:transparent;color:#f4f7fa;border-color:rgba(255,255,255,.35)}

/* ---------- widgets stay themselves, the sheen follows the ink ---------- */
html[data-skin="frost"]:not(.dark) body:not(.page) .hd .hd__brand .sheen,html[data-skin="frost"] .page .hd .hd__brand .sheen{color:#0a0e14}
html[data-skin="frost"]:not(.dark) body:not(.page) .hd .hd__brand .sheen svg,html[data-skin="frost"] .page .hd .hd__brand .sheen svg{fill:#5b7fa3;filter:drop-shadow(0 0 5px rgba(91,127,163,.6))}
html[data-skin="frost"]:not(.dark) body:not(.page) .hd .hd__brand .sheen .wide,html[data-skin="frost"] .page .hd .hd__brand .sheen .wide{color:#5b7fa3;text-shadow:0 0 6px rgba(91,127,163,.5)}
html[data-skin="frost"] .tsn__card{font-family:var(--body)}

@media (max-width:900px){
  html[data-skin="frost"]:not(.dark) .ch--media > .media{inset:0 0 50% 0}
  html[data-skin="frost"]:not(.dark) .ch--media > .media::after{background:linear-gradient(180deg,rgba(233,238,243,.2) 0%,rgba(233,238,243,.45) 55%,var(--ice) 100%)}
  html[data-skin="frost"]:not(.dark) .ch--media .ch__body,html[data-skin="frost"] .ch--center .ch__body{max-width:none;padding-top:38vh}
  html[data-skin="frost"] .phero__img{inset:0}
  html[data-skin="frost"] .phero__img::after{background:linear-gradient(180deg,rgba(233,238,243,.55),rgba(233,238,243,.85) 60%,var(--ice) 100%)}
  html[data-skin="frost"] .phero > .wrap::before{display:none}
  html[data-skin="frost"] .hero__mark::after{width:120vw;height:34vh}
  html[data-skin="frost"] .grid3 > .panel{border-right:0}
  html[data-skin="frost"] .grid3 > .panel:nth-last-child(-n+3){border-bottom:1px solid var(--ln)}
  html[data-skin="frost"] .grid3 > .panel:last-child{border-bottom:0}
}
