.tshop-home{background:#fff;color:var(--ink)}
.tshop-home h2,.tshop-home h3{margin:0}
.tshop-eyebrow{display:block;margin-bottom:10px;color:var(--navy);font-size:.76rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.tshop-btn{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:0 21px;border:1px solid transparent;border-radius:999px;font-weight:750;transition:.2s}
.tshop-btn-primary{color:#fff;background:var(--navy)}
.tshop-btn-primary:hover{color:#fff;background:var(--navy-d);transform:translateY(-2px)}
.tshop-btn-secondary{color:var(--navy);border-color:#c7d6e7;background:#fff}
.tshop-btn-secondary:hover{border-color:var(--navy)}
.tshop-actions{display:flex;flex-wrap:wrap;gap:11px}
.tshop-intro{padding:clamp(82px,10vw,145px) 0;background:#fff}
.tshop-intro h2{max-width:1000px;font-size:clamp(3rem,6.6vw,6.2rem);letter-spacing:-.055em}
.tshop-intro h2 span{color:#7b8ba0}
.tshop-intro-foot{display:grid;grid-template-columns:1fr auto;gap:38px;align-items:end;margin-top:36px}
.tshop-intro-foot p{max-width:670px;margin:0;color:var(--muted);font-size:1.1rem}
.tshop-heading{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end;margin-bottom:42px}
.tshop-heading h2{max-width:15ch;font-size:clamp(2.35rem,4.6vw,4.6rem);letter-spacing:-.045em}
.tshop-heading p{max-width:54ch;margin:15px 0 0;color:var(--muted);font-size:1.02rem}
.tshop-heading>a,.tshop-service-tools>a{display:inline-flex;min-height:46px;align-items:center;gap:7px;color:var(--navy);font-weight:800}
.tshop-services{padding:clamp(78px,8vw,120px) 0 34px;background:#f3f5f7}
.tshop-services>.wrap{max-width:none;padding-inline:clamp(48px,7.8vw,150px)}
.tshop-service-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:clamp(48px,9vw,170px);align-items:end;margin-bottom:48px}
.tshop-service-head h2{max-width:10ch;font-size:clamp(3.8rem,5.35vw,6.4rem);line-height:1.02;letter-spacing:-.06em}
.tshop-service-head p{max-width:560px;margin:0 0 10px;color:var(--muted);font-size:clamp(1rem,1.15vw,1.3rem);line-height:1.55}
.tshop-service-toolbar{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:36px}
.tshop-service-filters{display:flex;flex-wrap:wrap;gap:10px}
.tshop-service-filters span{display:inline-flex;min-height:44px;align-items:center;padding:0 16px;border:1px solid #cbd7e4;border-radius:999px;color:#304660;background:#fff;font-size:.88rem;font-weight:750}
.tshop-service-nav{display:flex;gap:8px}
.tshop-service-nav button{display:grid;width:54px;height:54px;place-items:center;border:0;border-radius:50%;color:var(--navy);background:#e3e8ee;cursor:pointer;transition:.2s}
.tshop-service-nav button:hover{border-color:#aebdcc;background:#e8edf2}
.tshop-service-nav button:active{transform:scale(.96)}
.tshop-service-grid{display:grid;grid-auto-columns:clamp(320px,25.5vw,490px);grid-auto-flow:column;gap:30px;overflow-x:auto;padding:2px 0 44px;scroll-snap-type:x mandatory;scrollbar-width:none}
.tshop-service-grid::-webkit-scrollbar{display:none}
.tshop-service-card{display:grid;min-width:0;min-height:720px;grid-template-rows:auto 1fr;text-align:center;scroll-snap-align:start}
.tshop-service-media{display:grid;overflow:hidden;aspect-ratio:1.18;border-radius:16px;background:#fff;place-items:center}
.tshop-service-media img{width:100%;height:100%;padding:0;object-fit:cover;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.tshop-service-card:hover img{transform:scale(1.035)}
.tshop-service-copy{display:flex;min-height:330px;flex-direction:column;align-items:center;padding:28px 24px 0}
.tshop-service-copy>span{color:var(--navy);font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.tshop-service-copy h3{margin-top:8px;font-size:clamp(1.75rem,2vw,2.45rem);line-height:1.08;letter-spacing:-.045em}
.tshop-service-copy p{max-width:29ch;min-height:54px;margin:10px 0 14px;color:var(--ink);font-size:.94rem;line-height:1.45}
.tshop-swatches{display:flex;min-height:16px;align-items:center;justify-content:center;gap:8px;margin:0 0 25px}
.tshop-swatches i{display:block;width:13px;height:13px;border:1px solid rgba(16,29,49,.15);border-radius:50%;background:var(--tshop-swatch)}
.tshop-service-meta{min-height:30px;color:var(--muted);font-size:.9rem}
.tshop-service-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 20px;margin-top:auto;padding-top:30px}
.tshop-service-actions>a:first-child{display:inline-flex;min-height:54px;align-items:center;padding:0 24px;border-radius:999px;color:#fff;background:var(--navy);font-size:.94rem;font-weight:780;white-space:nowrap}
.tshop-service-actions>a:first-child:hover{color:#fff;background:var(--navy-d)}
.tshop-service-actions>a:last-child{display:inline-flex;min-height:54px;align-items:center;gap:6px;color:#0768d7;font-size:.94rem;font-weight:750;white-space:nowrap}
.tshop-service-progress{height:3px;overflow:hidden;background:#d7dde5}
.tshop-service-progress span{display:block;width:14%;height:100%;background:var(--navy);transition:margin-left .15s linear,width .15s linear}
.tshop-featured{padding:clamp(82px,9vw,130px) 0;background:#fff}
.tshop-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tshop-product-card{position:relative;display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid #dfe7f0;border-radius:18px;background:#fff;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.tshop-product-card:hover{transform:translateY(-4px);border-color:#b9cce2;box-shadow:0 18px 44px rgba(40,52,68,.09)}
.tshop-badge{position:absolute;z-index:2;top:16px;left:16px;padding:7px 11px;border-radius:999px;color:#fff;background:var(--navy);font-size:.74rem;font-weight:850}
.tshop-product-media{display:block;height:278px;overflow:hidden;background:#f4f7fa}
.tshop-product-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.tshop-product-card:hover .tshop-product-media img{transform:scale(1.035)}
.tshop-product-info{display:flex;min-height:235px;flex:1;flex-direction:column;padding:24px}
.tshop-product-category{margin-bottom:8px;color:#6c7f97;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.tshop-product-info h3{font-size:1.3rem}
.tshop-product-info>p{margin:10px 0 19px;color:var(--muted);font-size:.91rem}
.tshop-product-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-top:auto}
.tshop-price{color:var(--navy-d);font-size:1.08rem;font-weight:850}
.tshop-price del{display:block;color:#8998a9;font-size:.75rem;font-weight:600}
.tshop-price ins{text-decoration:none}
.tshop-product-link{display:inline-flex;min-height:44px;align-items:center;gap:7px;padding:0 15px;border-radius:999px;color:#fff;background:var(--navy);font-size:.9rem;font-weight:780;white-space:nowrap}
.tshop-product-link:hover{color:#fff;background:var(--navy-d)}
.tshop-client-proof{padding:26px 0;border-top:1px solid #e4ebf2;border-bottom:1px solid #e4ebf2;background:#fff}
.tshop-client-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);align-items:center;gap:26px}
.tshop-client-label{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.tshop-client-name{color:#7c8ba0;font-family:'Sora',sans-serif;font-size:clamp(1rem,1.7vw,1.3rem);font-weight:750;text-align:center;letter-spacing:-.03em}
.tshop-client-grid img{max-width:150px;max-height:42px;justify-self:center;filter:grayscale(1);opacity:.7}
.tshop-needs{padding:clamp(82px,9vw,130px) 0;background:var(--bg)}
.tshop-need-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.tshop-need-card{position:relative;display:grid;min-height:420px;overflow:hidden;align-items:end;padding:34px;border-radius:20px;color:#fff;background:#112f60}
.tshop-need-card::after{position:absolute;inset:28% 0 0;background:linear-gradient(180deg,transparent,rgba(4,19,44,.9));content:''}
.tshop-need-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.22,1,.36,1)}
.tshop-need-card:hover>img{transform:scale(1.035)}
.tshop-need-copy{position:relative;z-index:1;max-width:480px}
.tshop-need-copy>span{display:block;margin-bottom:8px;color:#c9e8fa;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.tshop-need-copy h3{font-size:clamp(1.75rem,3vw,2.7rem)}
.tshop-need-copy p{max-width:42ch;margin:10px 0 18px;color:#e1ebf5}
.tshop-need-copy a{display:inline-flex;min-height:42px;align-items:center;gap:7px;padding:0 15px;border:1px solid rgba(255,255,255,.6);border-radius:999px;font-weight:750}
.tshop-need-copy a:hover{color:var(--navy);background:#fff}
.tshop-guide{padding:clamp(82px,9vw,130px) 0;background:#fff}
.tshop-guide-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:52px}
.tshop-guide-head h2{max-width:12ch;font-size:clamp(2.35rem,4.7vw,4.6rem);letter-spacing:-.045em}
.tshop-guide-head p{max-width:50ch;margin:0;color:var(--muted);font-size:1.04rem}
.tshop-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cdd8e5}
.tshop-steps article{padding:30px 27px 8px 0;border-right:1px solid #cdd8e5}
.tshop-steps article:not(:first-child){padding-left:27px}
.tshop-steps article:last-child{border-right:0}
.tshop-steps b{display:grid;width:40px;height:40px;margin-bottom:42px;place-items:center;border-radius:50%;color:#fff;background:var(--navy)}
.tshop-steps h3{font-size:1.17rem}
.tshop-steps p{margin-top:8px;color:var(--muted);font-size:.91rem}
.tshop-assurance{padding:0 0 clamp(82px,9vw,130px);background:#fff}
.tshop-assurance-box.wrap{display:grid;grid-template-columns:1.05fr 1fr;overflow:hidden;padding:0;border-radius:20px;background:#eef4f9}
.tshop-assurance-media{min-height:510px}
.tshop-assurance-media img{width:100%;height:100%;object-fit:cover}
.tshop-assurance-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(38px,5vw,70px)}
.tshop-assurance-copy h2{max-width:12ch;font-size:clamp(2.3rem,4.4vw,4.3rem);letter-spacing:-.045em}
.tshop-assurance-copy>p{max-width:45ch;margin:20px 0 26px;color:var(--muted)}
.tshop-assurance-copy ul{display:grid;gap:13px;margin:0 0 30px;padding:0;list-style:none}
.tshop-assurance-copy li{display:flex;gap:11px;color:var(--muted)}
.tshop-assurance-copy li i{margin-top:5px;color:var(--navy)}
.tshop-reviews{padding:clamp(82px,9vw,130px) 0;color:#fff;background:var(--navy)}
.tshop-reviews-head{max-width:760px;margin:0 auto 45px;text-align:center}
.tshop-reviews-head>span{display:block;margin-bottom:10px;color:#9ed5f2;font-size:.76rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.tshop-reviews-head h2{font-size:clamp(2.35rem,4.4vw,4.4rem)}
.tshop-reviews-head p{margin:16px 0 0;color:#c8d9ee}
.tshop-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tshop-review-card{display:flex;min-height:295px;flex-direction:column;padding:30px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.065)}
.tshop-stars{margin-bottom:23px;color:#ffc057;letter-spacing:.08em}
.tshop-review-card>p{margin:0;color:#fff;line-height:1.65}
.tshop-review-person{display:flex;align-items:center;gap:13px;margin-top:auto;padding-top:26px}
.tshop-review-person>span{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#0b3b91;font-weight:850}
.tshop-review-person b,.tshop-review-person small{display:block}
.tshop-review-person small{margin-top:3px;color:#aecaeb}
.tshop-offer{padding:clamp(72px,8vw,110px) 0;background:#fff}
.tshop-offer-box{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;padding:clamp(34px,5vw,60px);border-radius:20px;color:#fff;background:linear-gradient(105deg,#315eae 0%,var(--navy) 45%,#082e78 100%)}
.tshop-offer-box>div>span{display:block;margin-bottom:9px;color:#bbdff3;font-size:.74rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.tshop-offer h2{font-size:clamp(2rem,3.7vw,3.6rem)}
.tshop-offer p{margin:12px 0 0;color:#d8e5f3}
.tshop-offer form{display:grid;grid-template-columns:1fr auto;padding:6px;border-radius:999px;background:#fff}
.tshop-offer input{min-width:0;height:54px;padding:0 20px;border:0;border-radius:999px;color:var(--ink);font:inherit;outline:0}
.tshop-offer button{min-width:145px;border:0;border-radius:999px;color:#fff;background:var(--navy);font:inherit;font-weight:800;cursor:pointer}
.tshop-journal{padding:0 0 clamp(82px,9vw,130px);background:#fff}
.tshop-journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tshop-journal-card{overflow:hidden;border:1px solid #dfe7f0;border-radius:16px;background:#fff}
.tshop-journal-media{display:block;height:210px;overflow:hidden;background:#eef4f9}
.tshop-journal-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.tshop-journal-card:hover img{transform:scale(1.035)}
.tshop-journal-body{padding:24px}
.tshop-journal-body>span{display:block;margin-bottom:10px;color:var(--navy);font-size:.72rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.tshop-journal-body h3{font-size:1.22rem}
.tshop-journal-body p{margin:11px 0 18px;color:var(--muted);font-size:.9rem}
.tshop-journal-body>div{display:flex;flex-wrap:wrap;gap:15px;color:#6e8097;font-size:.77rem}
.tshop-search{padding:clamp(82px,9vw,130px) 0;color:#fff;background:var(--navy-d)}
.tshop-search-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(42px,7vw,100px);align-items:center}
.tshop-search h2{max-width:10ch;font-size:clamp(2.6rem,5vw,5.1rem);letter-spacing:-.05em}
.tshop-search p{max-width:43ch;margin:19px 0 0;color:#cbdcf0}
.tshop-search form{padding:28px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.08)}
.tshop-search label{display:block;margin-bottom:12px;font-weight:800}
.tshop-search form>div{display:grid;grid-template-columns:1fr auto;overflow:hidden;border-radius:12px;background:#fff}
.tshop-search input{min-width:0;height:58px;padding:0 18px;border:0;color:var(--ink);font:inherit;outline:0}
.tshop-search button{min-width:130px;border:0;color:#fff;background:var(--navy);font:inherit;font-weight:800;cursor:pointer}
.tshop-search nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.tshop-search nav a{display:inline-flex;min-height:42px;align-items:center;padding:0 14px;border:1px solid rgba(255,255,255,.34);border-radius:999px;font-size:.87rem;font-weight:700}
@media(min-width:1000px) and (max-width:1700px){.tshop-services>.wrap{padding-inline:48px}.tshop-service-head{grid-template-columns:600px 1fr;gap:26px}.tshop-service-head h2{max-width:none;font-size:4rem}.tshop-service-grid{grid-auto-columns:325px}.tshop-service-card{min-height:600px}.tshop-service-copy{min-height:288px;padding-inline:12px}.tshop-service-actions>a:first-child{min-height:44px;padding-inline:18px}.tshop-service-actions>a:last-child{min-height:44px}}
@media(max-width:1050px){.tshop-service-head{grid-template-columns:1fr;gap:24px}.tshop-service-head p{max-width:620px}.tshop-services>.wrap{padding-inline:32px}.tshop-product-grid{grid-template-columns:repeat(2,1fr)}.tshop-review-grid,.tshop-journal-grid{grid-template-columns:1fr 1fr}.tshop-review-card:last-child,.tshop-journal-card:last-child{grid-column:1/-1}.tshop-offer-box{grid-template-columns:1fr}.tshop-steps{grid-template-columns:1fr 1fr}.tshop-steps article{padding:28px;border-bottom:1px solid #cdd8e5}.tshop-steps article:nth-child(even){border-right:0}}
@media(max-width:760px){.tshop-intro-foot,.tshop-heading,.tshop-guide-head,.tshop-search-grid{grid-template-columns:1fr}.tshop-heading>a{justify-self:start}.tshop-service-head h2{font-size:clamp(3rem,13vw,4.7rem)}.tshop-service-toolbar{align-items:flex-end}.tshop-service-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.tshop-service-filters span{min-height:40px;white-space:nowrap}.tshop-service-nav button{width:44px;height:44px}.tshop-service-grid{grid-auto-columns:calc(100% - 40px);gap:16px}.tshop-service-card{min-height:590px}.tshop-service-copy{min-height:285px;padding-inline:10px}.tshop-need-grid,.tshop-assurance-box{grid-template-columns:1fr}.tshop-need-card{min-height:390px}.tshop-assurance-media{min-height:380px}.tshop-client-grid{grid-template-columns:1fr 1fr}.tshop-client-label{grid-column:1/-1;text-align:center}}
@media(max-width:560px){.tshop-intro{padding-top:74px}.tshop-intro h2{font-size:clamp(2.6rem,13vw,4.2rem)}.tshop-actions{width:100%;flex-direction:column}.tshop-product-grid,.tshop-review-grid,.tshop-journal-grid{grid-template-columns:1fr}.tshop-review-card:last-child,.tshop-journal-card:last-child{grid-column:auto}.tshop-product-media{height:255px}.tshop-need-card{min-height:350px;padding:25px}.tshop-assurance-media{min-height:310px}.tshop-assurance-copy{padding:34px 24px}.tshop-client-grid{grid-template-columns:1fr}.tshop-steps{grid-template-columns:1fr}.tshop-steps article,.tshop-steps article:not(:first-child){padding:27px 0;border-right:0}.tshop-offer form,.tshop-search form>div{grid-template-columns:1fr}.tshop-offer form{border-radius:16px}.tshop-offer input,.tshop-offer button{border-radius:12px}.tshop-offer button,.tshop-search button{min-height:52px}}
@media(prefers-reduced-motion:reduce){.tshop-home *{scroll-behavior:auto!important;transition-duration:.01ms!important}}
