/* The Connected Sauna Lab | independent history and accessible technical field guide. */
.sauna-lab{background:#f9f5ec;color:#123f45;overflow:clip}
.sauna-lab *{box-sizing:border-box}
.sauna-lab-wrap{width:min(1160px,calc(100% - 42px));margin:0 auto}
.sauna-lab h1,.sauna-lab h2,.sauna-lab h3{font-family:Georgia,"Times New Roman",serif;line-height:1.13;font-weight:650;letter-spacing:-.043em;color:#113e49}
.sauna-lab h1{font-size:clamp(3rem,5.8vw,6.5rem);color:#fffaf0;margin:.5rem 0 1.1rem}
.sauna-lab h1 em,.sauna-lab h2 em{font-weight:400;color:#b56c40}
.sauna-lab h1 em{color:#ffbf92}
.sauna-lab h2{font-size:clamp(2.15rem,3.65vw,3.6rem);margin:.15rem 0 1.25rem}
.sauna-lab p{font-size:.98rem;line-height:1.77;color:#3b5652}
.sauna-lab a:focus-visible,.sauna-lab summary:focus-visible{outline:3px solid #e8a06b;outline-offset:4px}
.sauna-lab-kicker{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-weight:900!important;color:#8f522e!important;font-size:.72rem!important;letter-spacing:.105em;line-height:1.6!important;margin:0 0 .8rem!important}
.sauna-lab-hero{background:radial-gradient(ellipse at 86% 30%,#d19e774d,transparent 40%),linear-gradient(125deg,#093742,#0a5662 66%,#39747a);color:#fff7eb;padding:clamp(3.2rem,6.8vw,6.5rem) 0}
.sauna-lab-hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.sauna-lab-back{color:#ffe0ba;font-weight:850;font-size:.84rem;text-decoration:underline;text-underline-offset:4px;display:inline-flex;margin-bottom:2rem}
.sauna-lab-hero .sauna-lab-kicker{color:#ffc69a!important}
.sauna-lab .sauna-lab-deck{font-size:clamp(1.08rem,1.55vw,1.3rem);line-height:1.7;color:#f4f4ed;max-width:770px}
.sauna-lab .sauna-lab-note{border-left:3px solid #e2a376;padding-left:1rem;color:#dbeae3;font-size:.87rem;margin:1.35rem 0}
.sauna-lab-actions{display:flex;gap:.65rem;flex-wrap:wrap;margin:1.8rem 0 0}
.sauna-lab-actions a{padding:.76rem 1.2rem;min-height:45px;display:inline-flex;align-items:center;border-radius:999px;font-size:.83rem;font-weight:900;border:1px solid #c6dad3;background:#f6be90;color:#123c40}
.sauna-lab-actions a:hover{background:#ffe1b9;color:#0a3e45}
.sauna-lab-actions a:nth-child(even){background:transparent;color:#fff8ea}
.sauna-lab-actions a:nth-child(even):hover{background:#e4f1e8;color:#0a464e}
.sauna-lab-badge{border-radius:16px;background:linear-gradient(145deg,#f8e9d2,#f1c98e);color:#225358;padding:clamp(1.4rem,2.8vw,2.2rem);border:1px solid #ffdec0;min-height:295px;box-shadow:11px 15px 0 #032e3e44;display:flex;flex-direction:column}
.sauna-lab-badge>span{font:900 .65rem/1.5 ui-monospace,Consolas,monospace;color:#865229;letter-spacing:.08em}
.sauna-lab-badge>strong{font-family:Georgia,serif;font-size:clamp(2.4rem,3.3vw,3.7rem);letter-spacing:-.07em;line-height:1.12;margin:2.4rem 0 .4rem}
.sauna-lab-badge>p{color:#575649;font-size:.91rem;line-height:1.6}
.sauna-lab-badge-bottom{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:auto}
.sauna-lab-badge-bottom span{font:800 .66rem/1.4 ui-monospace,Consolas,monospace;border-radius:999px;background:#fff9ed;padding:.5rem .65rem;color:#5b5441}
.sauna-lab-section{padding:clamp(3rem,6vw,5.8rem) 0;border-bottom:1px solid #d2ddd4}
.sauna-lab-section--mint{background:linear-gradient(135deg,#e5efe7,#faf4e7)}
.sauna-lab-intro-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.sauna-lab-evidence{border-radius:16px;padding:clamp(1.3rem,2.8vw,2.2rem);background:#144e5b;color:#f9f6e9}
.sauna-lab-evidence .sauna-lab-kicker{color:#ffca9c!important}
.sauna-lab-evidence h3{font-size:1.8rem;color:#fffaf0}
.sauna-lab-evidence dl{margin:.8rem 0 0}
.sauna-lab-evidence dl>div{padding:.8rem 0;border-top:1px solid #48818a}
.sauna-lab-evidence dt{font-size:.82rem;color:#ffcd9c;font-weight:900}
.sauna-lab-evidence dd{font-size:.8rem;line-height:1.65;margin:.15rem 0 0;color:#e2eee9}
.sauna-lab-link{color:#8b471f;text-decoration:underline;text-underline-offset:3px;font-weight:850;font-size:.89rem}
.sauna-lab-lead{max-width:750px;margin-bottom:1.8rem}
.sauna-lab-concepts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.sauna-lab-concept{min-width:0;background:#fffdfa;border:1px solid #cbdcd2;border-radius:13px;overflow:hidden;box-shadow:0 8px 24px #053d4610}
.sauna-lab-concept summary{display:flex;align-items:center;gap:1rem;list-style:none;min-height:114px;cursor:pointer;padding:1.2rem}
.sauna-lab-concept summary::-webkit-details-marker{display:none}
.sauna-lab-concept summary:hover,.sauna-lab-concept[open] summary{background:#ebf4ed}
.sauna-lab-num{font:900 1rem/1 ui-monospace,Consolas,monospace;background:#cfe6dd;color:#12545d;border-radius:10px;padding:.85rem .7rem;flex:none}
.sauna-lab-concept-head{flex:1;min-width:0}
.sauna-lab-concept-head>span{display:block;font:900 .63rem/1.45 ui-monospace,Consolas,monospace;color:#99552f;letter-spacing:.07em}
.sauna-lab-concept-head>strong{display:block;font-family:Georgia,serif;font-size:clamp(1.35rem,2vw,1.85rem);color:#0e414b;line-height:1.2;letter-spacing:-.03em;margin-top:.3rem}
.sauna-lab-plus{font-size:1.9rem;color:#7d512f;flex:none;transition:transform .15s}
.sauna-lab-concept[open] .sauna-lab-plus{transform:rotate(45deg)}
.sauna-lab-concept-details{border-top:1px solid #d8e6da;padding:1.25rem}
.sauna-lab-concept-details h3{font-family:system-ui,sans-serif;font-size:.79rem;letter-spacing:.03em;color:#154f57;font-weight:900;margin:.25rem 0}
.sauna-lab-concept-details p{font-size:.87rem;line-height:1.72;margin:.3rem 0 1.25rem}
.sauna-lab-limits{background:#fff2e5;border-left:4px solid #be7850;padding:.7rem .85rem;margin:.6rem 0}
.sauna-lab-concept-details .sauna-lab-source{font-size:.76rem;color:#526360;margin:.5rem 0 0}
.sauna-lab-source strong{font-size:.68rem;color:#8b552d}
.sauna-lab-source a{font-weight:850;color:#854322;text-decoration:underline;text-underline-offset:3px}
.sauna-lab-timeline{margin:2rem 0;position:relative}
.sauna-lab-timeline:before{content:"";position:absolute;top:.9rem;bottom:.9rem;left:135px;width:2px;background:#bdd9cf}
.sauna-lab-milestone{position:relative;display:grid;grid-template-columns:112px minmax(0,1fr);gap:3rem;align-items:start;margin-bottom:.8rem}
.sauna-lab-milestone:before{content:"";width:12px;height:12px;background:#0c6f79;border-radius:50%;position:absolute;top:1.6rem;left:130px;border:2px solid #d7eae1;z-index:1}
.sauna-lab-milestone-date{color:#95502d;font:900 1rem/1.4 ui-monospace,Consolas,monospace;padding-top:1.15rem;text-align:right}
.sauna-lab-milestone-copy{border:1px solid #d2dfd5;background:#fffefa;padding:1.2rem 1.5rem;border-radius:11px}
.sauna-lab-milestone-copy>span{font:900 .67rem/1.4 ui-monospace,Consolas,monospace;color:#9a5a37;letter-spacing:.05em}
.sauna-lab-milestone-copy h3{font-size:1.45rem;margin:.45rem 0 .5rem}
.sauna-lab-milestone-copy p{font-size:.88rem;margin:.45rem 0}
.sauna-lab-milestone-copy a,.sauna-lab-compare a{display:inline-block;color:#914821;font-weight:850;font-size:.82rem;margin:.55rem 0 0;text-decoration:underline;text-underline-offset:3px}
.sauna-lab-compare{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.sauna-lab-compare article{background:#fffefa;border:1px solid #d2ded3;border-top:5px solid #277f82;border-radius:12px;padding:1.4rem}
.sauna-lab-compare article:nth-child(2){border-top-color:#aa784d}
.sauna-lab-compare article:nth-child(3){border-top-color:#678d81}
.sauna-lab-compare span{font:900 .65rem/1.5 ui-monospace,Consolas,monospace;color:#8e4d26;letter-spacing:.05em}
.sauna-lab-compare h3{font-size:1.7rem;margin:.6rem 0 .5rem}
.sauna-lab-compare p{font-size:.88rem;line-height:1.7}
.sauna-lab-caution{background:#e8efe8;border-left:4px solid #9e703c;border-radius:0 10px 10px 0;padding:1.1rem 1.25rem;font-size:.9rem}
.sauna-lab-section--end{background:#0a4350;color:#f4f3e8}
.sauna-lab-section--end .sauna-lab-kicker{color:#ffca9e!important}
.sauna-lab-section--end h2{color:#fff8ef}
.sauna-lab-section--end h2 em{color:#ffc598}
.sauna-lab-end-content{max-width:910px}
.sauna-lab-section--end p{color:#dfece7}
.sauna-lab-section--end .sauna-lab-fine{font-size:.76rem;color:#c2d8d5;margin-top:2.6rem}
@media(max-width:900px){.sauna-lab-hero-grid{grid-template-columns:1fr 220px;gap:1.5rem}.sauna-lab-badge{min-height:250px}.sauna-lab-intro-grid{grid-template-columns:1fr}.sauna-lab-compare{grid-template-columns:1fr}}
@media(max-width:650px){.sauna-lab-wrap{width:calc(100% - 30px)}.sauna-lab-hero-grid{grid-template-columns:1fr}.sauna-lab-badge{max-width:430px;min-height:190px}.sauna-lab-concepts{grid-template-columns:1fr}.sauna-lab-milestone{display:block;padding-left:30px}.sauna-lab-milestone-date{display:block;text-align:left;padding:0 0 .5rem}.sauna-lab-timeline:before{left:10px}.sauna-lab-milestone:before{left:5px;top:1.4rem}.sauna-lab-milestone-copy{padding:1.05rem}.sauna-lab-actions{display:grid}.sauna-lab-actions a{text-align:center;justify-content:center}.sauna-lab h1{font-size:clamp(2.6rem,11vw,4rem)}}
@media(prefers-reduced-motion:reduce){.sauna-lab-plus{transition:none}}
