/*
Theme Name: Shopsumer
Theme URI: https://www.theshopsumerinstitute.com/
Author: The Shopsumer Institute
Description: Clean corporate theme for The Shopsumer Institute. Built for WPML (EN/DE/ES), Contact Form 7 and Complianz. Content is edited in the block editor; services are child pages of the Services page.
Version: 1.3.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: shopsumer
*/

/* Layout: white consultancy pages, navy bands for emphasis, light blue as the single accent (the logo's three dots). */
@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/jost-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/jost-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/jost-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/jost-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/source-sans-3-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/source-sans-3-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/source-sans-3-latin-600-normal.woff2) format("woff2")}

:root{
  --navy:#141487;
  --navy-deep:#0c0c55;
  --ink:#16173a;
  --muted:#5b5d7c;
  --tint:#f3f4fa;
  --line:#e2e4f0;
  --paper:#ffffff;
  --accent:#a8cbff;
  --on-navy:#ffffff;
  --on-navy-muted:#c4c6ec;
  --display:"Jost","Futura","Century Gothic","Avenir Next",system-ui,sans-serif;
  --body:"Source Sans 3","Segoe UI",system-ui,-apple-system,sans-serif;
  --wrap:1200px;
  --gut:max(16px, env(safe-area-inset-left, 0px));
  --gut-r:max(16px, env(safe-area-inset-right, 0px));
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.6 var(--body);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy)}
h1,h2,h3,h4{font-family:var(--display);font-weight:600;line-height:1.12;margin:0;text-wrap:balance;letter-spacing:-.01em;color:var(--navy)}
p{margin:0}
sup.tsi-c{font-size:.5em;line-height:0;vertical-align:super;margin-left:.05em;font-weight:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed;left:16px;top:16px;z-index:200;width:auto;height:auto;clip:auto;background:var(--paper);padding:12px 16px}
.tsi-wrap,.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut-r)}
@media (min-width:900px){.tsi-wrap,.wrap{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}

/* eyebrow with the logo's three dots */
.tsi-eyebrow{display:inline-flex;align-items:center;gap:12px;font:500 13px/1 var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--navy);margin:0}
.tsi-eyebrow::before{content:"";width:34px;height:8px;flex:none;background:radial-gradient(circle at 4px 4px,currentColor 3.6px,transparent 4px) 0 0/13px 8px repeat-x}
.tsi-navy .tsi-eyebrow{color:var(--accent)}

/* buttons (theme + core button block) */
.tsi-btn,.wp-block-button__link,.wpcf7-submit{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;font:500 16px/1 var(--display);letter-spacing:.02em;text-decoration:none;border:2px solid var(--navy);cursor:pointer;background:var(--navy);color:var(--on-navy);transition:background .2s,color .2s,border-color .2s}
.tsi-btn:hover,.wp-block-button__link:hover,.wpcf7-submit:hover{background:var(--navy-deep);border-color:var(--navy-deep);color:var(--on-navy)}
.wp-block-button.is-style-outline .wp-block-button__link,.tsi-btn-ghost{background:transparent;color:var(--navy);border-color:var(--navy)}
.wp-block-button.is-style-outline .wp-block-button__link:hover,.tsi-btn-ghost:hover{background:var(--navy);color:var(--on-navy)}
.tsi-navy .wp-block-button .wp-block-button__link{background:var(--accent);border-color:var(--accent);color:var(--navy-deep)}
.tsi-navy .wp-block-button .wp-block-button__link:hover{background:var(--paper);border-color:var(--paper)}
.tsi-navy .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;border-color:rgba(255,255,255,.5);color:var(--on-navy)}
.tsi-navy .wp-block-button.is-style-outline .wp-block-button__link:hover{border-color:var(--accent);color:var(--accent);background:transparent}
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}
.tsi-more{display:inline-flex;align-items:center;gap:8px;font:500 15px/1 var(--display);letter-spacing:.03em;color:var(--navy);text-decoration:none}
.tsi-more .ar{transition:transform .2s}
.tsi-more:hover .ar,a:hover .tsi-more .ar{transform:translateX(4px)}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:0}}
.hdr{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.logo img{height:38px;width:auto}
.hdr-right{display:flex;align-items:center;gap:28px}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:28px}
.main-nav a{font:500 15px/1 var(--display);letter-spacing:.04em;text-decoration:none;color:var(--ink);padding:8px 0;border-bottom:2px solid transparent;display:inline-block}
.main-nav a:hover{color:var(--navy)}
.main-nav .current-menu-item>a,.main-nav .current-page-ancestor>a,.main-nav .current_page_parent>a{color:var(--navy);border-bottom-color:var(--accent)}
.langs{display:flex;gap:2px;padding:3px;border-radius:999px;background:var(--tint)}
.langs a{font:600 12px/1 var(--display);letter-spacing:.08em;padding:8px 10px;border-radius:999px;text-decoration:none;color:var(--muted);text-transform:uppercase}
.langs a.is-current{background:var(--navy);color:var(--on-navy)}
.menu-btn{display:none;background:none;border:0;padding:10px;cursor:pointer;color:var(--navy)}
.menu-btn svg{width:26px;height:26px;display:block}
@media (max-width:980px){
  .menu-btn{display:block}
  .main-nav{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--line);padding:8px var(--gut-r) 20px var(--gut);display:none}
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;align-items:stretch;gap:0}
  .main-nav a{display:block;padding:14px 0;font-size:18px;border-bottom:1px solid var(--line)}
  .main-nav .current-menu-item>a,.main-nav .current-page-ancestor>a{border-bottom-color:var(--line)}
  .hdr-right{gap:8px}
  .logo img{height:30px}
}

/* generic content */
.entry{display:block}
.entry > *:not(.alignfull):not(.tsi-hero):not(.tsi-band):not(.tsi-page-head):not(.tsi-section):not(.tsi-wide-img):not(.tsi-detail-hero){max-width:var(--wrap);margin-left:auto;margin-right:auto;padding-left:var(--gut);padding-right:var(--gut-r)}
.tsi-section,.tsi-band{padding-block:clamp(56px,8vw,112px)}
.tsi-section > *,.tsi-band > *,.tsi-page-head > *,.tsi-hero > *{max-width:var(--wrap);margin-left:auto;margin-right:auto;padding-left:var(--gut);padding-right:var(--gut-r)}
@media (min-width:900px){.tsi-section > *,.tsi-band > *,.tsi-page-head > *,.tsi-hero > *{padding-left:40px;padding-right:40px}}
.tsi-section > * + *,.tsi-band > * + *{margin-top:24px}
.tsi-tint{background:var(--tint)}
.tsi-navy{background:var(--navy);color:var(--on-navy)}
.tsi-navy h2,.tsi-navy h3{color:var(--on-navy)}
.tsi-pt0{padding-top:0!important}
.wp-block-columns{display:flex;flex-wrap:wrap;gap:clamp(24px,5vw,72px)}
.wp-block-column{flex:1 1 0;min-width:0}
@media (max-width:860px){.wp-block-columns{flex-direction:column}.wp-block-column{flex-basis:100%!important}}
.wp-block-image{margin:0}
/* Classic themes wrap group content in an inner container: space its blocks like a flow layout. */
.wp-block-group__inner-container > * + *{margin-top:20px}
.wp-block-image img{width:100%}

/* home hero */
.tsi-hero{padding-block:clamp(40px,5vw,72px) clamp(56px,7vw,96px)}
.tsi-hero .wp-block-columns{align-items:flex-end;margin-bottom:clamp(32px,4vw,56px)}
.tsi-hero h1{font-size:clamp(40px,5.6vw,76px);letter-spacing:-.02em;margin-top:22px}
.tsi-hero .tsi-lead{font-size:clamp(18px,1.6vw,21px);color:var(--muted);max-width:40ch;margin-bottom:24px}
.tsi-hero-media{position:relative}
.tsi-hero-media .wp-block-image img{aspect-ratio:21/9;object-fit:cover;object-position:60% 72%;border-radius:4px 140px 4px 4px}
.tsi-hero-media .wp-block-buttons{position:absolute;left:clamp(16px,3vw,40px);bottom:clamp(16px,3vw,40px);margin:0}
@media (max-width:860px){.tsi-hero-media .wp-block-image img{aspect-ratio:3/2;border-radius:4px 64px 4px 4px}}
.tsi-play .wp-block-button__link{background:rgba(255,255,255,.94);border-color:transparent;color:var(--navy);padding:8px 22px 8px 8px;min-height:0;box-shadow:0 12px 30px rgba(12,12,85,.22)}
.tsi-play .wp-block-button__link::before{content:"";width:48px;height:48px;border-radius:50%;flex:none;background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M8 5l12 7-12 7z'/%3E%3C/svg%3E") 55% 50%/20px no-repeat}
.tsi-play .wp-block-button__link:hover{background:var(--paper);color:var(--navy);border-color:transparent}

/* section heads */
.tsi-head{display:grid;gap:16px;margin-bottom:clamp(32px,4vw,56px)!important}
.tsi-head h2{font-size:clamp(28px,3.4vw,44px);max-width:760px}

/* service cards */
.tsi-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
@media (max-width:980px){.tsi-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tsi-cards{grid-template-columns:1fr}}
.tsi-card{display:flex;flex-direction:column;background:var(--paper);text-decoration:none;color:inherit;border-radius:4px;overflow:hidden;transition:transform .25s,box-shadow .25s}
.tsi-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,20,135,.12)}
.tsi-card .ph{aspect-ratio:16/10;overflow:hidden;background:var(--line)}
.tsi-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.tsi-card:hover .ph img{transform:scale(1.04)}
.tsi-card .bd{display:flex;flex-direction:column;gap:10px;padding:24px 24px 26px;flex:1}
.tsi-card h3{font-size:21px}
.tsi-card p{color:var(--muted);font-size:16.5px;line-height:1.5;flex:1}

/* page heads */
.tsi-page-head{padding-block:clamp(48px,6vw,88px) clamp(32px,4vw,56px)}
.tsi-page-head h1{font-size:clamp(36px,4.4vw,58px);letter-spacing:-.02em;margin-top:18px;hyphens:auto;overflow-wrap:break-word}
.tsi-page-head .tsi-sub{font-size:clamp(19px,1.8vw,23px);color:var(--muted);margin-top:16px}
.tsi-page-head .wp-block-columns{align-items:flex-end}
.tsi-intro{font-size:19px}
.tsi-wide-img img{width:100%;aspect-ratio:21/8;object-fit:cover}
@media (max-width:600px){.tsi-wide-img img{aspect-ratio:4/3}}

/* split rows */
.tsi-split h2{font-size:clamp(30px,3.6vw,48px);margin-top:16px}
.tsi-prose > * + *{margin-top:20px}
.tsi-prose{max-width:64ch}
.tsi-split .wp-block-column:first-child{flex:0 0 40%}

/* activation strategy panel */
.tsi-panel{border-radius:4px;overflow:hidden;gap:0!important;padding:0!important;align-items:stretch}
.tsi-panel > .wp-block-column:first-child{padding:clamp(28px,5vw,64px);display:flex;flex-direction:column;gap:24px;justify-content:center}
.tsi-panel h2{font-size:clamp(28px,3.2vw,42px)}
.tsi-panel p{color:var(--on-navy-muted)}
.tsi-panel > .wp-block-column:last-child{flex:0 0 42%}
.tsi-panel .wp-block-image,.tsi-panel .wp-block-image img{height:100%;min-height:300px;object-fit:cover}

/* history / founder */
.tsi-years .wp-block-column:first-child{flex:0 0 min(360px,100%)}
.tsi-founder img{aspect-ratio:1/1;object-fit:cover;border-radius:4px 96px 4px 4px}
.tsi-years h2{font-size:clamp(30px,3.6vw,48px);margin:16px 0 24px}
.tsi-yrs{margin-top:36px!important}
.tsi-yrs > .wp-block-group__inner-container,.tsi-yrs:not(:has(> .wp-block-group__inner-container)){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tsi-yrs > .wp-block-group__inner-container > *{margin-top:0!important}
.tsi-yr{border-top:2px solid var(--navy);padding-top:16px}
.tsi-yr .y{font:600 clamp(36px,4vw,52px)/1 var(--display);color:var(--navy);letter-spacing:-.03em}
.tsi-yr .l{font:500 12px/1.35 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:6px!important}
@media (max-width:860px){.tsi-founder{max-width:360px}}

/* services list */
.tsi-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;list-style:none;padding:0}
.tsi-chips a{font:500 14px/1 var(--display);padding:10px 14px;border-radius:999px;background:var(--tint);color:var(--navy);text-decoration:none;display:inline-block}
.tsi-chips a:hover{background:var(--navy);color:var(--on-navy)}
.tsi-svc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center;padding-block:clamp(36px,5vw,64px);border-top:1px solid var(--line);scroll-margin-top:96px}
.tsi-svc:first-child{border-top:0}
.tsi-svc > *{min-width:0}
.tsi-svc:nth-child(even) .ph{order:2}
.tsi-svc .ph img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
.tsi-svc .bd{display:grid;gap:18px}
.tsi-svc .num{font:500 13px/1 var(--display);letter-spacing:.14em;color:var(--muted)}
.tsi-svc h2{font-size:clamp(26px,2.8vw,36px)}
.tsi-svc .txt > * + *{margin-top:12px}
@media (max-width:860px){.tsi-svc{grid-template-columns:1fr}.tsi-svc:nth-child(even) .ph{order:0}}

/* service detail */
.tsi-detail-hero{position:relative;color:var(--on-navy);background:var(--navy)}
.tsi-detail-hero .bg{position:absolute;inset:0;background:center/cover no-repeat;opacity:.32}
.tsi-detail-hero .tsi-wrap{position:relative;padding-block:clamp(64px,9vw,128px);display:grid;gap:18px}
.tsi-detail-hero h1{font-size:clamp(36px,5vw,64px);max-width:18ch;color:var(--on-navy)}
.tsi-detail-hero .tagl{font-size:clamp(19px,1.8vw,23px);color:var(--on-navy-muted);max-width:44ch}
.crumb{font:500 14px/1 var(--display);letter-spacing:.04em;color:var(--on-navy-muted)}
.crumb a{color:var(--on-navy);text-decoration:none}
.tsi-detail{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(32px,6vw,96px);align-items:start;padding-block:clamp(56px,8vw,112px)}
.tsi-detail > *{min-width:0}
.tsi-detail .body{display:grid;gap:28px;font-size:20px}
.tsi-detail .body .entry > *{padding:0!important;max-width:none!important}
.tsi-detail .body .entry > * + *{margin-top:20px}
.tsi-side{border-top:2px solid var(--navy);padding-top:20px}
.tsi-side h3{font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:8px}
.tsi-side ul{list-style:none;margin:0;padding:0}
.tsi-side a{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;font:500 17px/1.3 var(--display);color:var(--ink)}
.tsi-side a:hover,.tsi-side a[aria-current="page"]{color:var(--navy)}
.tsi-side a[aria-current="page"]{font-weight:600}
@media (max-width:860px){.tsi-detail{grid-template-columns:1fr}}

/* blog */
.tsi-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
@media (max-width:980px){.tsi-posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tsi-posts{grid-template-columns:1fr}}
.tsi-post{display:flex;flex-direction:column;gap:14px;padding:28px;background:var(--paper);border-radius:4px;text-decoration:none;color:inherit;border-top:4px solid var(--navy);transition:border-color .2s,box-shadow .2s}
.tsi-post:hover{border-top-color:var(--accent);box-shadow:0 14px 34px rgba(20,20,135,.10)}
.tsi-post time{font:500 13px/1 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums}
.tsi-post h2{font-size:21px;overflow-wrap:anywhere}
.tsi-post p{font-size:16px;color:var(--muted);flex:1}
.tsi-post.feature{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;padding:0;overflow:hidden}
.tsi-post.feature .ph img{width:100%;height:100%;object-fit:cover;min-height:280px}
.tsi-post.feature .bd{display:flex;flex-direction:column;gap:14px;padding:clamp(24px,4vw,48px);justify-content:center}
.tsi-post.feature h2{font-size:clamp(24px,2.6vw,34px)}
@media (max-width:760px){.tsi-post.feature{grid-template-columns:1fr}}
.tsi-empty{padding:48px;text-align:center;color:var(--muted);background:var(--paper);border-radius:4px}
.pagination{display:flex;gap:8px;justify-content:center;margin-top:40px}
.pagination .page-numbers{padding:10px 14px;border-radius:999px;background:var(--paper);text-decoration:none;font-family:var(--display)}
.pagination .current{background:var(--navy);color:var(--on-navy)}
.single-post .tsi-article{max-width:72ch;margin:0 auto;padding-block:clamp(40px,6vw,80px)}
.single-post .tsi-article > * + *{margin-top:20px}
.single-post .tsi-article h1{font-size:clamp(32px,4vw,52px)}

/* PDF documents in posts */
.tsi-doc{margin:32px 0 0;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--paper)}
.tsi-doc-head{display:flex;flex-wrap:wrap;align-items:center;gap:16px 20px;padding:20px 22px;background:var(--tint)}
.tsi-doc-ic{flex:none;display:grid;place-items:center;width:52px;height:64px;border-radius:4px 14px 4px 4px;background:var(--navy);color:var(--on-navy);font:600 13px/1 var(--display);letter-spacing:.08em}
.tsi-doc-meta{flex:1 1 220px;min-width:0;display:grid;gap:4px}
.tsi-doc-meta strong{font:600 18px/1.3 var(--display);color:var(--navy);overflow-wrap:anywhere}
.tsi-doc-meta span{font-size:14px;color:var(--muted)}
.tsi-doc-actions{display:flex;flex-wrap:wrap;gap:10px}
.tsi-doc-actions .tsi-btn{min-height:42px;font-size:15px;padding:0 18px}
.tsi-doc-view{display:block;width:100%;height:min(78vh,760px);border:0;border-top:1px solid var(--line);background:var(--tint)}
@media (max-width:760px){.tsi-doc-view{display:none}}

/* contact */
.tsi-contact .wp-block-image img{aspect-ratio:4/3;object-fit:cover;border-radius:4px 80px 4px 4px;margin-top:32px}
.tsi-form{background:var(--tint);padding:clamp(24px,4vw,44px)!important;border-radius:4px}
.tsi-form > * + *{margin-top:16px}
.wpcf7 form p{margin:0 0 20px}
.wpcf7 label{display:grid;gap:8px;font:500 14px/1.2 var(--display);letter-spacing:.04em;color:var(--navy)}
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 textarea{font:inherit;font-size:17px;padding:14px 16px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);width:100%}
.wpcf7 input:focus,.wpcf7 textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(20,20,135,.15)}
.wpcf7 textarea{min-height:160px;resize:vertical}
.wpcf7-response-output{border-left:4px solid var(--accent)!important;border-top:0!important;border-right:0!important;border-bottom:0!important;background:var(--paper);margin:16px 0 0!important;padding:12px 14px!important}
.tsi-notice{font-size:14px;line-height:1.55;color:var(--muted)}

/* legal pages */
.tsi-legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start;padding-bottom:clamp(56px,8vw,112px)}
.tsi-legal-nav{position:sticky;top:100px;border-top:2px solid var(--navy)}
.tsi-legal-nav ul{list-style:none;margin:0;padding:0}
.tsi-legal-nav a{display:block;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;font:500 16px/1.3 var(--display);color:var(--ink)}
.tsi-legal-nav .current-menu-item a{color:var(--navy);font-weight:600}
.tsi-legal{min-width:0;max-width:860px;font-size:17px;line-height:1.65}
.tsi-legal .entry > *{padding:0!important;max-width:none!important}
.tsi-legal .entry > * + *{margin-top:16px}
.tsi-legal h2{font-size:24px;margin-top:44px!important}
.tsi-legal h3{font-size:19px;margin-top:28px!important}
.tsi-legal ul{padding-left:22px}
.tsi-legal li + li{margin-top:6px}
.tsi-legal li p{margin:0}
.tsi-legal table{border-collapse:collapse;width:100%;min-width:640px;font-size:15px}
.tsi-legal .tsi-tbl,.tsi-legal figure.wp-block-table{overflow-x:auto;border:1px solid var(--line);border-radius:4px;margin:24px 0 0}
.tsi-legal th,.tsi-legal td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line)}
.tsi-legal th{background:var(--tint);font:600 13px/1.3 var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--navy)}
.tsi-legal td:first-child{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;overflow-wrap:anywhere}
@media (max-width:860px){.tsi-legal-layout{grid-template-columns:minmax(0,1fr)}.tsi-legal-nav{position:static}}

/* footer */
.site-footer{background:var(--navy-deep);color:var(--on-navy-muted);padding-block:56px 32px}
.ft{display:grid;grid-template-columns:1.2fr 1fr auto;gap:40px;align-items:start}
.ft > *{min-width:0}
.ft .flogo img{height:44px;width:auto}
.ft nav ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}
.ft nav a{text-decoration:none;font:500 15px/1.4 var(--display);color:var(--on-navy)}
.ft nav a:hover{color:var(--accent)}
.ft .langs{background:rgba(255,255,255,.08)}
.ft .langs a{color:var(--on-navy-muted)}
.ft .langs a.is-current{background:var(--accent);color:var(--navy-deep)}
.legal-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}
.legal-links{align-items:center}
.legal-links ul{display:contents;list-style:none}
.legal-links li{display:block;line-height:1.4}
.legal-links a{line-height:1.4}
.legal-links a{color:var(--on-navy-muted);text-decoration:none;font-size:14px;cursor:pointer}
.legal-links a:hover{color:var(--accent)}
.copy{margin-top:16px;font-size:14px}
@media (max-width:760px){.ft{grid-template-columns:1fr}}

/* video modal */
.tsi-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;background:rgba(8,8,40,.82);padding:16px}
.tsi-modal-box{width:min(1100px,100%);display:grid;gap:12px}
.tsi-modal iframe{width:100%;aspect-ratio:16/9;border:0;background:#000;border-radius:4px}
.tsi-modal-bar{display:flex;justify-content:flex-end}
.tsi-modal-close{background:none;border:1px solid rgba(255,255,255,.4);color:var(--on-navy);border-radius:999px;padding:10px 18px;font:500 15px/1 var(--display);cursor:pointer}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
