.thinsulate-page{ --ts-blue: #40618b; --ts-green: #527c68; --ts-ink: #3d3d3d; --ts-muted: #626262; --ts-cream: #fef9f2; --ts-ice: #eef3f8; --ts-line: #e4e4e4; color: var(--ts-ink); font-family: inherit; line-height: 1.5;
*{box-sizing: border-box;}
img{max-width: 100%; display: block;}
[hidden]{display: none!important;}
h2,h3,p{margin-top: 0;}
h2,h3{font-family: inherit; letter-spacing: -.025em;}
h2{font-size: clamp(34px,4vw,58px); line-height: 1.08;}
h3{font-size: clamp(20px,2vw,28px); line-height: 1.16;}
p{line-height: 1.65;}
a{color: var(--ts-blue);}
button,select{font: inherit;}
button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline: 3px solid var(--ts-green); outline-offset: 3px;}
.ts-wrap{width: min(1280px,calc(100% - 40px)); margin-left: auto; margin-right: auto;}
.ts-kicker{display: block; color: var(--ts-blue); font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; margin-bottom: 14px;}
.ts-heading{max-width: 760px; margin: 0 auto 35px; text-align: center;}
.ts-heading p{color: var(--ts-muted); font-size: 17px;}
.ts-heading--left{text-align: left; margin-left: 0;}
.ts-pill{display: inline-flex; align-items: center; justify-content: center; text-align: center; min-height: 50px; padding: 13px 24px; border: 0; border-radius: 999px; background: var(--ts-blue); color: #fff!important; font-size: 15px; font-weight: 800; text-decoration: none; line-height: 1.25; cursor: pointer; transition: background .2s,transform .2s;}
.ts-pill:hover{background: #304e73; transform: translateY(-2px);}
.ts-hero{display: grid; grid-template-columns: 1fr 1.04fr; min-height: 0; margin-top: 28px; background: var(--ts-cream); border-radius: 12px; overflow: hidden;}
.ts-hero__copy{align-self: center; padding: clamp(32px,4vw,56px);}
.ts-hero h2{font-size: clamp(46px,5.2vw,76px); line-height: .97; margin-bottom: 22px;}
.ts-hero h2 em{font-style: normal; color: var(--ts-blue);}
.ts-hero__copy>p{color: var(--ts-muted); font-size: clamp(17px,1.4vw,20px); max-width: 580px;}
.ts-hero__visual{position: relative; min-height: 320px; overflow: hidden; margin: 18px; border-radius: 10px;}
.ts-hero__visual img{width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0;}
.ts-image-note{position: absolute; bottom: 20px; left: 20px; right: 20px; width: max-content; max-width: calc(100% - 40px); background: #fff; border-radius: 8px; padding: 15px 19px; box-shadow: 0 10px 32px #0002; font-weight: 800;}
.ts-image-note small{display: block; color: var(--ts-green); text-transform: uppercase; font-size: 11px; letter-spacing: .11em; margin-bottom: 4px;}
.ts-benefits{display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--ts-line); border-radius: 12px; overflow: hidden; background: #fff; margin-top: 22px; box-shadow: 0 12px 30px #40618b0e;}
.ts-benefit{display: flex; gap: 14px; align-items: flex-start; padding: 24px; border-right: 1px solid var(--ts-line); border-bottom: 1px solid var(--ts-line);}
.ts-benefit:nth-child(3n){border-right: 0;}
.ts-benefit:nth-last-child(-n+3){border-bottom: 0;}
.ts-benefit__mark{width: 38px; height: 38px; display: grid; place-items: center; flex: none; border-radius: 50%; background: var(--ts-ice); color: var(--ts-blue); font-weight: 900;}
.ts-benefit strong{display: block; font-size: 15px; line-height: 1.3;}
.ts-benefit p{font-size: 13px; color: var(--ts-muted); margin: 4px 0 0; line-height: 1.5;}
.ts-section{padding: clamp(52px,5vw,68px) 0 clamp(42px,4vw,54px);}
.ts-calculator{display: grid; grid-template-columns: 1.1fr .9fr; max-width: 1050px; margin: auto; border: 1px solid var(--ts-line); border-radius: 12px; overflow: hidden; background: #fff; box-shadow: 0 15px 40px #40618b12;}
.ts-calculator__fields,.ts-result{padding: clamp(28px,4vw,52px);}
.ts-calculator label,.ts-calculator legend{display: block; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 10px;}
.ts-calculator select{display: block; width: 100%; min-height: 50px; border: 1px solid #cbd3da; border-radius: 8px; color: var(--ts-ink); background: #fff; padding: 10px 15px; margin-bottom: 25px;}
.ts-calculator fieldset{border: 0; margin: 0 0 24px; padding: 0;}
.ts-toggle{display: flex; gap: 7px; flex-wrap: wrap;}
.ts-toggle button{border: 1px solid #c7d2dc; border-radius: 999px; background: #fff; color: var(--ts-ink); padding: 10px 14px; cursor: pointer;}
.ts-toggle button[aria-pressed=true]{background: var(--ts-blue); border-color: var(--ts-blue); color: #fff;}
.ts-includes{display: grid; grid-template-columns: 1fr 1fr; gap: 9px; color: var(--ts-muted); font-size: 13px;}
.ts-includes span:before{content: '✓'; color: var(--ts-green); font-weight: 900; margin-right: 7px;}
.ts-includes .ts-excluded:before{content: '×'; color: var(--ts-muted);}
.ts-result{background: var(--ts-cream); display: flex; flex-direction: column; justify-content: center;}
.ts-result__eyebrow{text-transform: uppercase; font-weight: 800; letter-spacing: .1em; color: var(--ts-blue); font-size: 12px;}
.ts-result__amount{font-size: 18px; margin: 3px 0 0;}
.ts-result__amount strong{font-size: clamp(66px,7vw,104px); line-height: 1; letter-spacing: -.06em; color: var(--ts-blue);}
.ts-result__range{font-size: 14px; color: var(--ts-muted); margin: 10px 0 20px;}
.ts-metrics{display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 24px;}
.ts-metrics span{padding: 14px; background: #fff; border: 1px solid #e8e3db; border-radius: 8px; font-size: 13px; line-height: 1.4;}
.ts-metrics strong{display: block; font-size: 23px; color: var(--ts-blue);}
.ts-calculator__foot{max-width: 1050px; margin: 17px auto 0; text-align: center; color: var(--ts-muted); font-size: 14px;}
.ts-system{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,64px);align-items:center;padding:clamp(36px,4vw,60px) clamp(24px,3.5vw,56px);margin-bottom:28px;background:#fff}
.ts-system__copy{min-width:0}
.ts-system__copy h2{margin-bottom:22px}
.ts-system__copy>p{color:var(--ts-muted);font-size:clamp(16px,1.6vw,19px);max-width:590px;margin-bottom:28px}
.ts-system__steps{list-style:none;counter-reset:ts-step;margin:0;padding:0;display:grid;gap:16px}
.ts-system__steps li{display:flex;align-items:flex-start;gap:5px;color:var(--ts-muted);font-size:15px;line-height:1.6;flex-wrap:wrap}
.ts-system__steps li:before{counter-increment:ts-step;content:counter(ts-step);display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--ts-ice);color:var(--ts-blue);font-size:13px;font-weight:800;margin-right:10px}
.ts-system__steps strong{color:var(--ts-ink)}
.ts-diagram{border:1px solid var(--ts-line);border-radius:14px;padding:clamp(18px,2vw,28px);background:#fff;min-width:0}
.ts-diagram__tabs{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}
.ts-diagram__tabs button{border:1px solid #c9d6e0;background:#fff;color:var(--ts-ink);padding:10px 19px;border-radius:999px;min-height:45px;cursor:pointer;font-weight:700}
.ts-diagram__tabs button[aria-pressed=true]{background:var(--ts-blue);border-color:var(--ts-blue);color:#fff}
.ts-diagram__view[hidden]{display:none!important}
.ts-diagram__ends{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px;color:var(--ts-muted);font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.ts-diagram__layer{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:57px;border-radius:10px;padding:17px 19px;margin-bottom:7px;font-size:16px;font-weight:750;line-height:1.35;min-width:0}
.ts-diagram__layer:last-child{margin-bottom:0}
.ts-diagram__layer strong,.ts-diagram__layer small{display:block}
.ts-diagram__layer small{font-size:13px;font-weight:400;margin-top:3px;opacity:.85}
.ts-diagram__layer--metal{background:#e9eaed}
.ts-diagram__layer--primary{background:var(--ts-blue);color:#fff;min-height:84px}
.ts-diagram__layer--green{background:var(--ts-green);color:#fff;min-height:84px}
.ts-diagram__layer--panel{background:#f2ede5}
.ts-diagram__badge{flex:none;border-radius:999px;background:#ffffff36;padding:8px 12px;font-size:11px;letter-spacing:.07em}
.ts-diagram__layer a{flex:none;background:#fff;color:var(--ts-blue);text-decoration:none;font-weight:800;border-radius:999px;padding:10px 16px;font-size:13px;line-height:1.2}
.ts-diagram__layer--green a{color:var(--ts-green)}
.ts-compression{padding: clamp(32px,4vw,52px); border-radius: 12px; background: var(--ts-ice); margin-bottom: 22px;}
.ts-compression__grid{display: grid; grid-template-columns: .83fr 1.17fr; gap: 18px;}
.ts-note{background: var(--ts-blue); color: #fff; border-radius: 10px; padding: clamp(26px,4vw,50px); display: flex; flex-direction: column; justify-content: center;}
.ts-note__source{font-size: 12px; letter-spacing: .1em; text-transform: uppercase; font-weight: 800; color: #dce6ef; margin-bottom: 20px;}
.ts-note p{font-size: clamp(17px,1.45vw,20px); font-weight: 650; margin-bottom: 25px;}
.ts-loft{display: grid; grid-template-columns: 1fr auto 1fr; gap: 14px; align-items: end; border-top: 1px solid #ffffff50; padding-top: 21px;}
.ts-loft span{display: block; height: 14px; background: #fff; border-radius: 4px; margin-bottom: 9px;}
.ts-loft div:last-child span{height: 27px;}
.ts-loft small{display: block; color: #dce6ef; text-transform: uppercase; letter-spacing: .06em; font-size: 11px;}
.ts-loft strong{font-size: 16px;}
.ts-video{position: relative; aspect-ratio: 16/9; width: 100%; min-width: 0; border-radius: 10px; overflow: hidden; background: #1b2936;}
.ts-video iframe{position: absolute; inset: 0; display: block; width: 100%!important; height: 100%!important; max-width: none; min-width: 0; border: 0;}
.ts-install{background: var(--ts-cream); border-radius: 12px; padding: clamp(32px,4vw,52px); margin-bottom: 28px;}
.ts-install__intro{display: grid; grid-template-columns: .9fr 1.1fr; gap: 50px; align-items: end; margin-bottom: 30px;}
.ts-install__intro h2{margin: 0;}
.ts-install__intro p{color: var(--ts-muted); font-size: 17px; margin: 0 0 18px;}
.ts-steps{display: grid; grid-template-columns: repeat(4,1fr); background: #fff; border: 1px solid #d7e1ea; border-radius: 10px; padding: 25px 20px;}
.ts-step{padding: 0 20px; border-right: 1px solid var(--ts-line);}
.ts-step:last-child{border-right: 0;}
.ts-step__number{display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--ts-ice); color: var(--ts-blue); font-weight: 900; margin-bottom: 16px;}
.ts-step strong{display: block; font-size: 19px; line-height: 1.2; margin-bottom: 6px;}
.ts-step p{font-size: 13px; color: var(--ts-muted); margin: 0;}
.ts-install__notes{display: grid; grid-template-columns: repeat(3,1fr); background: #fff; border: 1px solid #e2dcd3; border-radius: 10px; margin-top: 14px; overflow: hidden;}
.ts-install__notes .ts-install-note{padding: 19px 21px; color: var(--ts-muted); font-size: 14px; line-height: 1.55;}
.ts-install__notes .ts-install-note p{display: inline; margin: 0;}
.ts-install__notes .ts-install-note+.ts-install-note{border-left: 1px solid #e2dcd3;}
.ts-install__notes strong{color: var(--ts-ink);}
.ts-details{border: 1px solid var(--ts-line); border-radius: 12px; display: grid; grid-template-columns: .7fr 1.3fr; align-items: center; gap: clamp(30px,5vw,75px); padding: clamp(32px,4vw,52px); margin-bottom: 72px; background: #fff;}
.ts-details__intro p{color: var(--ts-muted);}
.ts-specs{display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin: 0;}
.ts-specs div{background: var(--ts-cream); border: 1px solid var(--ts-line); border-radius: 10px; min-height: 105px; padding: 19px;}
.ts-specs dt{font-size: 11px; color: var(--ts-muted); font-weight: 800; letter-spacing: .06em; text-transform: uppercase;}
.ts-specs dd{font-size: 16px; font-weight: 800; margin: 11px 0 0;}
.ts-faq{background: var(--ts-cream); border-radius: 12px; padding: clamp(36px,4vw,58px); margin-bottom: 28px;}
.ts-faq__heading{max-width: 760px; margin-bottom: 30px;}
.ts-faq__heading p{color: var(--ts-muted); font-size: 17px;}
.ts-faq details{border-bottom: 1px solid #ddd7ce;}
.ts-faq summary{display: flex; justify-content: space-between; align-items: center; gap: 15px; min-height: 73px; cursor: pointer; font-size: 16px; font-weight: 800; line-height: 1.35; list-style: none; padding: 16px 0;}
.ts-faq summary::-webkit-details-marker{display: none;}
.ts-faq summary:after{content: '+'; font-size: 25px; font-weight: 400; line-height: 1; color: var(--ts-blue);}
.ts-faq details[open] summary:after{content: '−';}
.ts-faq__answer{color: var(--ts-muted); font-size: 15px; line-height: 1.7; padding: 0 24px 20px 0;}
.ts-faq__answer p:last-child{margin: 0;}
.ts-faq a,.ts-install__notes a{font-weight: 800; text-decoration: underline; text-underline-offset: 3px;}
.ts-closing{background: var(--ts-blue); border-radius: 12px; color: #fff; padding: 40px clamp(26px,6vw,80px); display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 42px;}
.ts-closing h2{margin: 0; font-size: clamp(30px,3.6vw,48px); color: #fff!important;}
.ts-closing .ts-kicker{color: #dce6ef;}
.ts-closing .ts-pill{background: #fff; color: var(--ts-blue)!important; flex: none;}
@media (max-width: 1000px) {
.ts-compression__grid,.ts-install__intro,.ts-details{grid-template-columns: minmax(0,1fr);}
.ts-steps{grid-template-columns: repeat(2,1fr);}
.ts-step{padding: 18px; border-bottom: 1px solid var(--ts-line);}
.ts-step:nth-child(2){border-right: 0;}
.ts-step:nth-last-child(-n+2){border-bottom: 0;}
}
@media (max-width: 740px) {
.ts-hero,.ts-calculator{grid-template-columns: minmax(0,1fr);}
.ts-hero__visual{grid-row: 1; min-height: 280px;}
.ts-hero__copy{grid-row: 2; padding: 36px 23px;}
.ts-benefits{grid-template-columns: repeat(2,1fr);}
.ts-benefit:nth-child(n){border-right: 1px solid var(--ts-line); border-bottom: 1px solid var(--ts-line);}
.ts-benefit:nth-child(2n){border-right: 0;}
.ts-benefit:nth-last-child(-n+2){border-bottom: 0;}
.ts-result{border-top: 1px solid var(--ts-line);}
.ts-compression__grid{grid-template-columns: minmax(0,1fr);}
.ts-compression__grid > *,.ts-video{min-width: 0; max-width: 100%;}
.ts-video{min-height: 0; aspect-ratio: 16/9; overflow: hidden;}
.ts-install__notes{grid-template-columns: minmax(0,1fr);}
.ts-install__notes .ts-install-note+.ts-install-note{border-left: 0; border-top: 1px solid #e2dcd3;}
.ts-closing{align-items: flex-start; flex-direction: column;}
}
@media (max-width: 520px) {
.ts-wrap{width: calc(100% - 28px);}
.ts-hero h2{font-size: 46px;}
.ts-hero__visual{margin: 12px;}
.ts-benefits{grid-template-columns: minmax(0,1fr);}
.ts-benefit:nth-child(n){border-right: 0; border-bottom: 1px solid var(--ts-line);}
.ts-benefit:last-child{border-bottom: 0;}
.ts-system,.ts-compression,.ts-install,.ts-details,.ts-faq{padding: 32px 19px; margin-bottom: 24px;}
.ts-details{margin-bottom: 48px;}
.ts-section{padding: 42px 0 30px;}
.ts-steps{grid-template-columns: minmax(0,1fr);}
.ts-step:nth-child(n){border-right: 0; border-bottom: 1px solid var(--ts-line);}
.ts-step:last-child{border-bottom: 0;}
.ts-specs{grid-template-columns: repeat(2,minmax(0,1fr));}
.ts-specs div{padding: 15px;}
.ts-closing .ts-pill{width: 100%;}
}
.ts-faq__list{border-top:1px solid #ddd7ce}
.ts-faq__contact{margin-top:28px;margin-bottom:0;border:1px solid #ddd7ce;border-radius:12px;background:#fff;padding:24px 28px}
.ts-faq__contact strong{display:block;font-size:19px;margin-bottom:6px}
.ts-faq__contact p{margin:0;color:var(--ts-muted);font-size:16px}
.ts-faq__contact a{white-space:normal}
.ts-closing__summary{margin:10px 0 0;color:#dce6ef;font-size:16px}
.ts-closing__summary strong{color:#fff}
@media(max-width:1000px){.ts-system{grid-template-columns:minmax(0,1fr);gap:28px}}
@media(max-width:740px){.ts-diagram__layer{flex-wrap:wrap}.ts-diagram__layer a{margin-top:3px}.ts-system{padding:30px 22px}.ts-faq__contact{padding:21px}}
@media(max-width:520px){.ts-system{padding:28px 20px;margin-bottom:24px}.ts-diagram{padding:15px}.ts-diagram__layer{padding:14px;min-height:0}.ts-diagram__badge{font-size:10px}.ts-closing__summary{font-size:14px}}
}