/* Homepage content only. Shared header/footer styles live in site-chrome.css. */
.tsr-home p{text-wrap:pretty}
.tsr-home h2{font-family:var(--tsr-serif);font-size:clamp(24px,2.2vw,34px);font-weight:700;line-height:1.6;letter-spacing:.035em;margin:0}
.tsr-home-page .tsr-empty{color:var(--tsr-muted);font-size:15px;line-height:1.9;margin:0;padding:24px 0}
/* Hero: all copy and buttons are HTML; the artwork is independently replaceable. */
.tsr-hero{position:relative;min-height:560px;height:auto;background:#fff;isolation:isolate;overflow:hidden}
.tsr-hero-inner{position:relative;z-index:2;padding-top:48px;padding-bottom:56px;pointer-events:none}
.tsr-hero-inner a{pointer-events:auto}
.tsr-hero-kicker{font-size:16px;font-weight:600;letter-spacing:.1em;margin:0 0 24px;display:flex;gap:16px;align-items:center}
.tsr-hero-kicker span{width:45px;height:1px;background:#5299ff}
.tsr-hero h1{font-family:var(--tsr-serif);font-size:clamp(40px,4.18vw,65px);font-weight:700;line-height:1.45;letter-spacing:.025em;margin:0 0 24px;color:#061b46}
.tsr-hero h1 span{color:#0062de}
.tsr-hero-description{font-size:16px;line-height:1.9;letter-spacing:.04em;margin:0 0 28px}
.tsr-hero-actions{display:flex;gap:20px;flex-wrap:wrap}
.tsr-hero-actions .tsr-button{min-width:270px}
.tsr-hero-art{position:absolute;inset:0 0 0 43%;z-index:0}
.tsr-hero-image{width:100%;height:100%;object-fit:cover}
.tsr-hero-sky{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 67%,#fff6dd 0,transparent 40%),linear-gradient(130deg,#fff 5%,#ebf8ff 42%,#b7e3ff 70%,#fff 96%)}
.tsr-hero-sky:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,transparent 20%,#fff9 21%,transparent 24%,#fffd 37%,transparent 43%,#fff9 60%,transparent 68%)}
.tsr-city{position:absolute;right:0;bottom:0;width:100%;height:34%;object-fit:cover;object-position:center 53%;opacity:.63;filter:brightness(1.5) saturate(.9);mask-image:linear-gradient(transparent,#000 35%);-webkit-mask-image:linear-gradient(transparent,#000 35%)}
.tsr-orbit-art{position:absolute;inset:-6% auto auto -2%;width:105%;height:115%;filter:drop-shadow(2px 3px 2px #12367810)}
.tsr-hero-handwriting{font-family:var(--tsr-serif);font-weight:700;font-style:italic;letter-spacing:.13em;font-size:clamp(16px,1.5vw,23px);line-height:1.7;position:absolute;right:8%;top:32%;transform:rotate(-13deg)}
.tsr-hero-handwriting svg{display:block;width:100%;height:45px}
/* Navy achievements band. */
.tsr-achievements{color:white;background:radial-gradient(ellipse at 100% 10%,#0e5a9b55,transparent 40%),linear-gradient(105deg,#103b68,#061c40 70%,#103660);position:relative;padding:44px 0}
.tsr-achievements-grid{display:grid;grid-template-columns:1.45fr repeat(3,1fr) 1.3fr;align-items:center;min-height:128px}
.tsr-achievements .tsr-eyebrow{color:#16b5fc}
.tsr-achievements h2{font-size:clamp(24px,2.3vw,35px);line-height:1.5;color:#fff}
.tsr-stat{text-align:center;position:relative;padding:0 16px}
.tsr-stat:before{content:"";width:1px;background:#6c92b855;position:absolute;left:0;top:8%;bottom:5%}
.tsr-stat>.tsr-icon{width:32px;height:32px;margin-bottom:12px}
.tsr-stat p{margin:0;line-height:1.2;font-size:17px}
.tsr-stat p strong{font-family:Arial,sans-serif;font-size:52px;line-height:1.1;font-weight:700}
.tsr-stat p span{font-size:18px;font-weight:700;margin-left:4px}
.tsr-stat h3{font-size:16px;margin:12px 0 0;line-height:1.7;color:white}
.tsr-qualifications h3{font-size:23px;margin:2px 0 12px}
.tsr-qualifications p{font-size:14px;line-height:1.8;font-weight:700}
/* Original supplied logos: equal frames, individual optical sizes, no image edits. */
.tsr-certifications{padding:40px 0}
.tsr-certifications-inner{display:grid;grid-template-columns:26% minmax(0,1fr);align-items:center;gap:32px;min-height:88px}
.tsr-certifications h2{font-size:27px;white-space:nowrap}
.tsr-certifications .tsr-rule{margin:9px 0 0;width:35px}
.tsr-certification-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;min-width:0;list-style:none;margin:0;padding:0}
.tsr-certification-card{display:flex;align-items:center;justify-content:center;min-width:0;height:176px;padding:12px;background:#fff;border:1px solid #e5ebf2;border-radius:6px}
.tsr-certification-logo{display:block;flex-shrink:0;width:auto;height:auto;max-width:min(100%,var(--cert-logo-max-width));max-height:min(100%,var(--cert-logo-max-height));object-fit:contain}
/* Replacement square canvases retain their original whitespace; limits balance the visible marks. */
.tsr-certification-logo--waca{--cert-logo-max-width:148px;--cert-logo-max-height:148px}
.tsr-certification-logo--ajsa{--cert-logo-max-width:144px;--cert-logo-max-height:144px}
.tsr-certification-logo--digital{--cert-logo-max-width:124px;--cert-logo-max-height:124px}
.tsr-certification-logo--google{--cert-logo-max-width:144px;--cert-logo-max-height:144px}
.tsr-certification-logo--yahoo{--cert-logo-max-width:144px;--cert-logo-max-height:144px}
.tsr-certification-fallback{font-size:12px;line-height:1.8;text-align:center;color:var(--tsr-muted);overflow-wrap:anywhere}
.tsr-certification-fallback small{display:block;margin-top:8px;font-size:11px}
/* Problems. */
.tsr-problems{padding:72px 0;background:linear-gradient(125deg,#ecf8ff,#f6fbff 48%,#eaf5fd);position:relative;isolation:isolate}
.tsr-problems:before{content:"";position:absolute;inset:0;border-radius:0 75% 0 65%;border-inline:28px solid #d2ecfc66;z-index:-1}
.tsr-problem-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;gap:32px}
.tsr-problem-heading h2{display:flex;gap:20px;align-items:center}
.tsr-problem-heading .tsr-rule{margin:0;width:42px}
.tsr-problem-heading>.tsr-problem-copy{position:relative;flex:0 1 auto;font-size:15px;line-height:1.8;margin:0;padding:0 0 13px}
.tsr-problem-copy-lead{display:block;margin-bottom:4px;font-size:14px;line-height:1.5;letter-spacing:.1em}
.tsr-problem-copy-main{display:block;font-family:var(--tsr-serif);font-size:clamp(28px,2.1vw,34px);font-weight:600;font-style:oblique 7deg;line-height:1.45;letter-spacing:.035em;white-space:nowrap}
.tsr-problem-copy-emphasis{color:var(--tsr-blue)}
/* A shallow flowing wave, distinct from the hero's angled handwritten stroke. */
.tsr-problem-copy-curve{position:absolute;inset-inline:0;bottom:0;display:block;width:100%;height:18px;color:var(--tsr-blue);opacity:.8;pointer-events:none}
.tsr-problem-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.tsr-problem-card{display:flex;flex-direction:column;align-items:flex-start;gap:16px;background:#fff;border-radius:10px;box-shadow:0 3px 9px #2066ab0b;padding:28px 24px;min-height:152px}
.tsr-problem-card p br{display:none}
.tsr-problem-card>.tsr-icon{color:#0068ff;width:36px;height:36px}
.tsr-problem-card p{font-size:15px;font-weight:500;line-height:1.9;margin:0;min-width:0}
/* Two businesses. */
.tsr-services{padding:80px 0;background:linear-gradient(110deg,#f6fbff,#fff 35%)}
.tsr-services-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:32px;align-items:stretch}
.tsr-service-intro{padding:8px 24px 8px 0}
.tsr-service-intro h2{font-size:29px;line-height:1.65}
.tsr-service-intro .tsr-rule{margin:24px 0 32px}
.tsr-service-card{border-radius:9px;overflow:hidden;text-decoration:none;color:var(--tsr-ink);background:white;box-shadow:0 2px 9px #002b5c12;display:flex;flex-direction:column;transition:box-shadow .2s}
.tsr-service-card:hover{box-shadow:0 5px 20px #002b5c25}
.tsr-service-image{height:192px;overflow:hidden}
.tsr-service-image>img{width:100%;height:100%;object-fit:cover;display:block}
.tsr-service-image>img.tsr-service-photo{object-fit:contain;object-position:center}
.tsr-service-body{padding:24px 28px 84px;position:relative;margin-top:0;background:linear-gradient(176deg,#fff9,#fff 30%);flex:1}
.tsr-service-number{font-size:18px;font-family:Georgia,serif;font-weight:700;letter-spacing:.07em;color:#005fdf}
.tsr-service-body h3{font-size:20px;line-height:1.65;margin:8px 0 16px;color:#061b46}
.tsr-service-body p{margin:0;padding-right:0;font-size:16px;line-height:1.9;color:var(--tsr-muted)}
.tsr-circle-arrow{border:1px solid #599aff;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;position:absolute;right:28px;bottom:24px;color:var(--tsr-blue)}
.tsr-data-visual{height:100%;background:linear-gradient(120deg,#dcefe9,#edf6ff 35%,#b9d0e5);display:grid;place-items:center;overflow:hidden;perspective:500px}
.tsr-data-visual-2{background:linear-gradient(135deg,#dae8d9,#d3e9fc 50%,#bfccda)}
.tsr-dashboard{width:73%;height:85%;padding:12px 16px 5px;background:#fcfdff;border:8px solid #263747;border-bottom-width:15px;border-radius:8px;box-shadow:12px 12px 15px #243d4b22;transform:rotate(-7deg) rotateY(-12deg)}
.tsr-data-visual-2 .tsr-dashboard{transform:rotate(5deg) rotateY(-12deg)}
.tsr-dashboard-top{height:8px;background:linear-gradient(90deg,#386cd1 18%,transparent 18%);border-bottom:1px solid #d7e4f8;margin-bottom:8px}
.tsr-chart-bars{height:65px;display:flex;gap:10px;align-items:end;padding:0 10px;border-bottom:1px solid #ccddee;background:repeating-linear-gradient(to top,transparent 0 19px,#e8eff6 19px 20px)}
.tsr-chart-bars i{background:linear-gradient(#2482f7,#9bd6ff);height:45%;flex:1}
.tsr-chart-bars i:nth-child(2n){height:80%}.tsr-chart-bars i:nth-child(3n){height:65%}.tsr-chart-bars i:last-child{height:100%}
.tsr-dashboard-line{height:8px;margin:7px 0 0;background:repeating-linear-gradient(to right,#dfebf6 0 27px,transparent 27px 37px)}
/* Clients and about. */
.tsr-clients{padding:40px 0;border-block:1px solid #f0f5fa}
.tsr-clients-inner{display:grid;grid-template-columns:270px minmax(0,1fr);gap:40px;align-items:center;min-height:58px}
.tsr-clients h2{font-size:26px}
.tsr-client-slider{position:relative;min-width:0}
/* Native overflow remains usable without JavaScript and when motion is reduced. */
.tsr-client-carousel{position:relative;min-width:0}
.tsr-client-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-behavior:auto;overflow-anchor:none;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
.tsr-client-viewport::-webkit-scrollbar{display:none}
.tsr-client-track{display:flex;gap:24px;align-items:center;width:max-content;list-style:none;margin:0;padding:0}
.tsr-client-item{flex:0 0 144px;width:144px;height:76px;padding:12px 16px;background:#fff}
.tsr-client-logo-box{display:flex;align-items:center;justify-content:center;width:100%;height:100%;text-decoration:none;color:var(--tsr-muted)}
.tsr-client-logo{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.tsr-client-image-fallback{font-size:12px;line-height:1.7;text-align:center;overflow-wrap:anywhere}
.tsr-client-logo[hidden],.tsr-client-image-fallback[hidden]{display:none}
.tsr-client-item a:focus-visible{outline-offset:2px}
.tsr-carousel-controls{display:flex;justify-content:space-between;pointer-events:none;position:absolute;left:-30px;right:-30px;top:50%;transform:translateY(-50%)}
.tsr-carousel-controls button{pointer-events:auto;border:0;padding:0;background:#fffc;color:#0062d7;font-size:32px;line-height:1.2;cursor:pointer;width:26px;border-radius:4px}
.tsr-carousel-controls button:disabled{opacity:.25;cursor:default}
.tsr-about{padding:80px 0;background:linear-gradient(90deg,#f4fbff,#fff);overflow:hidden}
.tsr-about-inner{display:grid;grid-template-columns:40% 60%;min-height:400px;position:relative}
.tsr-about-copy{padding:8px 40px 8px 0;position:relative;z-index:1}
.tsr-about-copy h2{font-size:30px;line-height:1.65;margin-bottom:28px}
.tsr-about-copy>p:not(.tsr-eyebrow){font-size:16px;line-height:1.9;color:var(--tsr-muted);margin:0 0 28px}
.tsr-about-image{margin-right:calc((100vw - min(88.4vw,1440px)) / -2);overflow:hidden;min-height:0;align-self:center}
.tsr-about-image>img{width:100%;height:auto;object-fit:contain;display:block}
/* Books and lectures. */
.tsr-books{padding:64px 0;border-bottom:1px solid #eaf0f7;background:linear-gradient(100deg,#fff,#f8fbfe)}
.tsr-books-inner{display:grid;grid-template-columns:minmax(220px,.95fr) minmax(0,2fr) minmax(190px,.95fr);gap:28px;align-items:center;min-height:300px}
.tsr-books-copy{padding:8px 0;min-width:0}
.tsr-books h2{font-size:30px;margin-bottom:24px}
.tsr-books-copy>p:not(.tsr-eyebrow) br{display:none}
.tsr-books-copy>p:not(.tsr-eyebrow){font-size:16px;color:var(--tsr-muted);line-height:1.9;margin:0 0 24px}
.tsr-book-covers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:clamp(10px,1vw,16px);min-width:0}
.tsr-book-covers>img{display:block;width:100%;height:auto;min-width:0;aspect-ratio:1353/1920;object-fit:contain;filter:drop-shadow(2px 5px 5px #17324b24)}
.tsr-lecture-photo{width:100%;min-width:0;aspect-ratio:1;overflow:hidden;border-radius:4px;background:#edf5fb}
.tsr-lecture-photo>img{height:100%;width:100%;object-fit:contain;display:block}
/* Dynamic WordPress content: empty states never invent seminars or news. */
.tsr-updates{padding:56px 0}
.tsr-updates-inner{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,1.7fr) minmax(280px,1.15fr);gap:28px;align-items:start}
.tsr-updates-inner--empty{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.tsr-seminar-intro h2,.tsr-news h2{font-size:28px;line-height:1.6}
.tsr-seminar-intro h2{font-size:clamp(20px,1.55vw,24px)}
.tsr-seminar-intro>p:not(.tsr-eyebrow){font-size:15px;color:var(--tsr-muted);line-height:1.9;margin:24px 0 0}
.tsr-seminar-slider{position:relative;min-width:0;padding:0 18px 28px}
.tsr-seminar-track{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;padding:4px 4px 10px;margin:0;list-style:none;scroll-snap-type:x mandatory;scroll-padding-inline:4px;scrollbar-width:none;align-items:stretch;overscroll-behavior-x:contain}
.tsr-seminar-track::-webkit-scrollbar{display:none}
.tsr-seminar-slide{flex:0 0 calc((100% - 20px)/2);min-width:0;scroll-snap-align:start;display:flex}
.tsr-seminar-card{width:100%;min-width:0;display:flex;flex-direction:column;background:#fff;text-decoration:none;color:var(--tsr-ink);box-shadow:0 3px 10px #17457812;border:1px solid #e5edf6;border-radius:8px;overflow:hidden}
.tsr-seminar-card[href]:hover h3{color:var(--tsr-blue)}
.tsr-seminar-image{aspect-ratio:16/9;position:relative;background:#eff6fd;overflow:hidden}
.tsr-seminar-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--tsr-seminar-image-position,50% 10%)}
.tsr-seminar-no-image{height:100%;display:grid;place-items:center;color:#739bc8}
.tsr-seminar-no-image[hidden],.tsr-seminar-image>img[hidden],.tsr-seminar-controls[hidden]{display:none}
.tsr-seminar-status{position:absolute;left:10px;top:10px;display:block;padding:4px 9px;background:#0064f5;color:#fff;font-size:11px;font-weight:700;border-radius:4px;line-height:1.6}
.tsr-seminar-status--closed{background:#64748b}
.tsr-seminar-status--ongoing{background:#087898}
.tsr-seminar-body{padding:16px 14px;flex:1}
.tsr-seminar-body h3{font-size:15px;line-height:1.75;margin:0;height:3.5em;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tsr-seminar-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:12px;margin:12px 0 0;color:var(--tsr-muted);line-height:1.8}
.tsr-seminar-meta>span{background:#eff5fc;padding:2px 6px;border-radius:3px;font-size:11px}
.tsr-seminar-controls{position:absolute;inset:0;pointer-events:none}
.tsr-seminar-controls>button{position:absolute;top:calc((100% - 28px)/2);transform:translateY(-50%);pointer-events:auto;width:32px;height:32px;display:grid;place-items:center;border:1px solid #ccdaeb;background:#fff;color:var(--tsr-blue);border-radius:50%;font-size:24px;line-height:1;cursor:pointer;padding:0}
.tsr-seminar-controls>[data-seminar-prev]{left:0}
.tsr-seminar-controls>[data-seminar-next]{right:0}
.tsr-seminar-controls>button:disabled{opacity:.3;cursor:default}
.tsr-seminar-controls>span{position:absolute;bottom:0;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:12px;color:var(--tsr-muted);min-width:65px;text-align:center}
.tsr-news-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}
.tsr-news-heading .tsr-text-link{font-size:14px}
.tsr-news-item{display:grid;grid-template-columns:88px 76px minmax(0,1fr) 17px;gap:16px;align-items:center;text-decoration:none;color:var(--tsr-muted);font-size:14px;line-height:1.9;padding:20px 0;border-bottom:1px solid #e9f0f7}
.tsr-news-title{white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tsr-news-item:hover .tsr-news-title{text-decoration:underline}
.tsr-news-label{padding:4px 8px;background:#e7f3ff;color:#0059d0;border-radius:5px;text-align:center;font-size:12px;font-weight:700}
.tsr-news-item .tsr-icon{width:16px;height:16px;color:#0063de}
.tsr-home-editable{padding:72px 0;background:#f7fbff}
/* A more generous contact area; footer below still uses reference 2. */
.tsr-contact{background:radial-gradient(ellipse at 90% 0,#164b7e 0,transparent 70%),linear-gradient(105deg,#0b3868,#061e42);color:#fff;padding:64px 0}
.tsr-contact-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:24px 48px;min-height:140px}
.tsr-contact-inner>div:first-child{grid-column:1;grid-row:1 / 3}
.tsr-contact .tsr-eyebrow{color:#00b1f5}
.tsr-contact h2{font-size:clamp(28px,2.25vw,35px);line-height:1.7;color:white;white-space:normal}
.tsr-contact-description{font-size:15px;line-height:1.9;margin:0;color:#e2ecf7;grid-column:2}
.tsr-contact-actions{display:flex;flex-wrap:wrap;gap:16px;grid-column:2}
.tsr-contact-actions .tsr-button{min-width:190px;min-height:58px;font-size:14px;padding:16px 20px;white-space:nowrap}
@media(min-width:1700px){.tsr-hero-inner{padding-top:64px;padding-bottom:72px}.tsr-hero h1{font-size:67px}}
@media(max-width:1350px){
 .tsr-service-intro h2,.tsr-about-copy h2{font-size:27px}
 .tsr-services-grid{gap:24px}
 .tsr-service-intro{padding-right:8px}
 .tsr-service-body{padding:24px 24px 84px}
 .tsr-service-body h3{font-size:19px}
 .tsr-certifications h2{font-size:24px}
 .tsr-about-copy{padding-right:32px}
 .tsr-news-item{grid-template-columns:84px 72px minmax(0,1fr) 16px;gap:12px}
 .tsr-contact-actions .tsr-button{min-width:175px}
}
@media(min-width:1041px) and (max-width:1350px){
 .tsr-hero-actions .tsr-button{min-width:230px;padding:16px;font-size:13px}
 .tsr-hero h1{font-size:4.25vw}
}
/* Tablet: reflow dense groups rather than reducing body copy to fit. */
@media(max-width:1040px){
 .tsr-hero h1{font-size:4.5vw}
 .tsr-hero-actions .tsr-button{min-width:0;font-size:13px;padding:16px}
 .tsr-hero-handwriting{right:3%;font-size:17px}
 .tsr-achievements-grid{grid-template-columns:1.4fr repeat(3,1fr) 1.2fr}
 .tsr-stat{padding:0 10px}
 .tsr-stat p strong{font-size:43px}
 .tsr-stat h3{font-size:14px}
 .tsr-qualifications h3{font-size:19px}
 .tsr-qualifications p{font-size:12px}
 .tsr-achievements h2{font-size:24px}
 .tsr-certifications-inner{grid-template-columns:minmax(250px,28%) minmax(0,1fr);gap:24px}
 .tsr-certifications h2{font-size:22px}
 .tsr-problem-heading h2{font-size:28px}
 .tsr-problem-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
 .tsr-problem-card{min-height:136px}
 .tsr-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tsr-service-intro{grid-column:1 / -1;padding:0 0 16px}
 .tsr-service-intro h2 br{display:none}
 .tsr-service-intro h2{max-width:620px}
 .tsr-service-intro .tsr-rule{margin-bottom:24px}
 .tsr-clients-inner{grid-template-columns:240px minmax(0,1fr);gap:32px}
 .tsr-clients h2{font-size:24px}
 .tsr-about-inner{grid-template-columns:45% 55%}
 .tsr-about-image{margin-right:-5vw}
 .tsr-about-copy h2{font-size:28px}
 .tsr-about-copy>p:not(.tsr-eyebrow){font-size:16px}
 .tsr-about-copy>p:not(.tsr-eyebrow) br{display:none}
 .tsr-books-inner{grid-template-columns:minmax(0,1fr);gap:32px}
 .tsr-books-copy{grid-column:1 / -1;padding:0}
 .tsr-books-copy>p:not(.tsr-eyebrow){max-width:620px}
 .tsr-book-covers{width:100%;max-width:760px;justify-self:center}
 .tsr-lecture-photo{max-width:560px;justify-self:center}
 .tsr-seminar-intro>p:not(.tsr-eyebrow) br{display:none}
 .tsr-news-item{grid-template-columns:100px 84px minmax(0,1fr) 17px;font-size:15px;gap:20px}
 .tsr-contact-inner{grid-template-columns:1fr;gap:28px}
 .tsr-contact-inner>div:first-child{grid-row:auto}
 .tsr-contact-description,.tsr-contact-actions{grid-column:1}
 .tsr-contact h2{font-size:30px}
}
@media(min-width:701px) and (max-width:1000px){
 .tsr-certifications-inner{grid-template-columns:1fr;gap:24px}
 .tsr-problem-heading>.tsr-problem-copy{width:14.5em}
 .tsr-problem-copy-main{font-size:clamp(20px,2.8vw,22px);line-height:1.5;white-space:normal}
 .tsr-problem-copy-emphasis{display:block;white-space:nowrap}
}
@media(max-width:700px){
 .tsr-hero{min-height:0}
 .tsr-hero-inner{padding-top:36px;padding-bottom:300px}
 .tsr-hero h1{font-size:clamp(27px,6.7vw,46px);line-height:1.55;letter-spacing:.015em}
 .tsr-hero-kicker{font-size:13px;letter-spacing:.06em}
 .tsr-hero-description{font-size:15px;line-height:1.9}
 .tsr-hero-description br{display:none}
 .tsr-hero-art{inset:auto 0 0;height:300px}
 .tsr-hero-image{object-fit:contain;object-position:center}
 .tsr-orbit-art{inset:0;width:100%;height:100%}
 .tsr-hero-handwriting{font-size:14px;top:35%;right:7%}
 .tsr-hero-actions{flex-direction:column;align-items:center;gap:12px}
 .tsr-hero-actions .tsr-button{width:min(100%,300px);padding:14px 12px;gap:8px;min-height:52px;font-size:13px}
 .tsr-hero-actions .tsr-icon{width:17px}
 .tsr-achievements{padding:40px 0}
 .tsr-achievements-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 16px}
 .tsr-achievements-grid>div:first-child{grid-column:1 / -1;text-align:center}
 .tsr-achievements h2 br{display:none}
 .tsr-achievements h2{font-size:24px}
 .tsr-stat:nth-child(2n):before{display:none}
 .tsr-stat p strong{font-size:45px}
 .tsr-stat h3{font-size:14px}
 .tsr-qualifications h3{font-size:20px}
 .tsr-qualifications p{font-size:12px}
 .tsr-certifications h2{font-size:25px;white-space:normal}
 .tsr-certifications-inner{grid-template-columns:1fr;gap:24px}
 .tsr-certification-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .tsr-problems,.tsr-services,.tsr-about,.tsr-books,.tsr-updates,.tsr-home-editable{padding:48px 0}
 .tsr-problem-heading{display:block;margin-bottom:28px}
 .tsr-problem-heading h2{font-size:25px;display:block}
 .tsr-problem-heading h2 .tsr-rule{display:none}
 .tsr-problem-heading>.tsr-problem-copy{width:100%;margin:24px 0 0;padding-bottom:16px}
 .tsr-problem-copy-lead{margin-bottom:6px;font-size:14px}
 .tsr-problem-copy-main{font-size:clamp(24px,6.4vw,28px);line-height:1.6;white-space:normal}
 .tsr-problem-copy-emphasis{display:block;white-space:nowrap}
 .tsr-problem-copy-curve{width:min(100%,300px);height:17px}
 .tsr-problem-grid{gap:16px}
 .tsr-problem-card{flex-direction:column;align-items:flex-start;min-height:0;padding:24px 20px;gap:16px}
 .tsr-problem-card p{font-size:14px}
 .tsr-problem-card p br{display:none}
 .tsr-problem-card>.tsr-icon{width:32px;height:32px}
 .tsr-services-grid{grid-template-columns:1fr;gap:28px}
 .tsr-service-intro h2{font-size:clamp(18px,5.6vw,24px);letter-spacing:0;line-height:1.65}
 .tsr-service-intro h2 br{display:initial}
 .tsr-service-image{height:190px}
 .tsr-service-body{padding:24px 24px 84px}
 .tsr-service-body h3{font-size:20px}
 .tsr-circle-arrow{right:24px;bottom:24px}
 .tsr-clients-inner{grid-template-columns:1fr;gap:24px}
 .tsr-client-item{flex-basis:128px;width:128px}
 .tsr-carousel-controls{left:-15px;right:-15px}
 .tsr-about-inner{grid-template-columns:1fr;gap:32px}
 .tsr-about-copy{padding:0}
 .tsr-about-copy h2{font-size:28px}
 .tsr-about-image{margin-right:0}
 .tsr-books-inner{gap:28px}
 .tsr-books-copy>p:not(.tsr-eyebrow) br{display:none}
 .tsr-book-covers{grid-template-columns:repeat(2,minmax(0,1fr));max-width:400px;gap:24px 20px}
 .tsr-updates-inner{gap:48px}
 .tsr-seminar-intro h2,.tsr-news h2{font-size:26px}
 .tsr-seminar-track{gap:20px}
 .tsr-seminar-slide{flex-basis:100%}
 .tsr-seminar-body{padding:20px}
 .tsr-news-item{grid-template-columns:92px minmax(0,1fr) 17px;gap:12px 16px;padding:20px 0;font-size:14px}
 .tsr-news-label{justify-self:start}
 .tsr-news-title{grid-column:1 / 3;grid-row:2}
 .tsr-news-item>.tsr-icon{grid-column:3;grid-row:1 / 3}
 .tsr-contact{padding:48px 0}
 .tsr-contact h2{font-size:26px}
 .tsr-contact-description{font-size:15px}
 .tsr-contact-description br{display:none}
 .tsr-contact-actions{gap:16px}
 .tsr-contact-actions .tsr-button{min-width:0;width:100%;font-size:14px}
}
@media(prefers-reduced-motion:reduce){.tsr-home-page .tsr-button,.tsr-service-card{transition:none}html:has(body.tsr-home-page){scroll-behavior:auto}}

/* The intro, slider and news are direct siblings: desktop never nests cards under the intro. */
@media(min-width:1024px) and (max-width:1199px){
 .tsr-news-item{grid-template-columns:76px minmax(0,1fr) 16px;gap:6px 12px;padding:12px 0}
 .tsr-news-label{justify-self:start}
 .tsr-news-title{grid-column:1 / 3;grid-row:2}
 .tsr-news-item>.tsr-icon{grid-column:3;grid-row:1 / 3}
 .tsr-seminar-meta{flex-direction:column;align-items:flex-start;gap:4px}
}
@media(max-width:1023px){
 .tsr-updates-inner{grid-template-columns:minmax(0,1fr);gap:32px}
}
