:root{--theme-background:#fbf7f3;--theme-surface:#ffffff;--theme-text:#2b211f;--theme-muted:#665651;--theme-primary:#9f1239;--theme-primary-text:#ffffff;--theme-border:#dacbc4;--theme-bg:var(--theme-background);--theme-ink:var(--theme-text);--theme-line:var(--theme-border);}
.studio-theme{--ts-accent:#3f6f66;--ts-radius:18px;--ts-space:80px;background:var(--theme-background);color:var(--theme-text);font-family:Trebuchet MS, Segoe UI, sans-serif}
.studio-theme h1,.studio-theme h2,.studio-theme h3,.studio-theme .navbar-brand{font-family:Trebuchet MS, Segoe UI, sans-serif}
.ts-nav{position:relative;z-index:20;padding:.8rem 0;background:#9f1239;border-bottom:1px solid var(--theme-border)}
.ts-nav .container,.ts-nav .navbar-nav{align-items:center}.ts-nav .navbar-collapse{justify-content:flex-end}.ts-nav .nav-link{color:#ffffff;font-weight:750;padding:.65rem .8rem}.ts-nav .navbar-toggler{border-color:#ffffff;color:#ffffff}.ts-nav-cta{margin-left:.65rem}.ts-nav-rule{height:1px;flex:1;margin:0 2rem;background:color-mix(in srgb,#ffffff 24%,transparent)}.ts-nav-edition{margin-left:1rem;color:#ffffff;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;opacity:.68}.ts-nav-centered .container{flex-wrap:wrap;justify-content:center}.ts-nav-centered .navbar-brand{width:100%;margin:0;text-align:center}.ts-nav-centered .navbar-collapse{justify-content:center}.ts-nav-centered .navbar-nav{margin:0!important}.ts-nav-compact{padding:.3rem 0}.ts-nav-compact .site-brand-logo{max-height:42px}
.ts-button{border:0;border-radius:var(--ts-radius);background:var(--theme-primary);color:var(--theme-primary-text);font-weight:800;padding:.85rem 1.25rem;text-decoration:none}.ts-hero{position:relative;overflow:hidden}.ts-hero>.container{min-height:30rem;display:grid;align-items:center;gap:3.25rem;padding-top:3.25rem;padding-bottom:3.25rem}.ts-hero-copy{position:relative;z-index:2;max-width:48rem;text-align:left}.ts-hero-copy h1{font-size:clamp(2.55rem,5.4vw,4.8rem);font-weight:850;line-height:.98;letter-spacing:-.045em;margin:.5rem 0 1.2rem}.ts-hero-copy>p:not(.ts-kicker){font-size:1.16rem;line-height:1.7;max-width:43rem}.ts-kicker{color:var(--theme-primary);font-size:.76rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.ts-split>.container,.ts-editorial>.container{grid-template-columns:1.08fr .92fr}.ts-split-image,.ts-editorial-image{height:100%;min-height:26rem}.ts-hero-image{width:100%;height:100%;object-fit:cover;border-radius:var(--ts-radius)}.ts-editorial{background:var(--theme-surface)}.ts-editorial-image{transform:rotate(2deg);box-shadow:1.2rem 1.2rem 0 var(--ts-accent)}
.ts-magazine,.ts-bold{isolation:isolate;background:#111;color:#fff}.ts-magazine>.ts-hero-image,.ts-bold>.ts-hero-image{position:absolute;inset:0;width:100%;height:100%;border-radius:0;z-index:-2}.ts-magazine:after,.ts-bold:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.84),rgba(0,0,0,.18));z-index:-1}.ts-magazine .ts-hero-copy,.ts-bold .ts-hero-copy{color:#fff}.ts-bold .ts-hero-copy h1{text-transform:uppercase;letter-spacing:-.02em}.ts-bold>.container{align-items:end}.ts-directory{background:color-mix(in srgb,var(--theme-primary) 9%,var(--theme-background))}.ts-directory>.container{min-height:25rem}.ts-directory .ts-hero-copy{margin-inline:auto}.ts-bento{padding:2rem 0;background:var(--theme-background)}.ts-bento>.container{grid-template-columns:1.4fr .8fr .42fr;grid-template-rows:1fr 1fr;gap:1rem}.ts-bento-copy{grid-row:1/3;padding:clamp(2rem,5vw,5rem);border-radius:var(--ts-radius);background:var(--theme-text);color:var(--theme-background)}.ts-bento-copy .ts-kicker{color:var(--ts-accent)}.ts-bento-image{min-height:18rem;grid-row:1/3}.ts-bento-note{display:grid;place-content:center;padding:1rem;border-radius:var(--ts-radius);background:var(--theme-primary);color:var(--theme-primary-text);text-align:center}.ts-bento-note-alt{background:var(--ts-accent);color:var(--theme-text)}.ts-bento-note b{font-size:2rem}.ts-bento-note span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.ts-search-led{text-align:center;background:radial-gradient(circle at top,color-mix(in srgb,var(--theme-primary) 20%,var(--theme-background)),var(--theme-background) 58%)}.ts-search-led>.container{min-height:31rem;place-content:center}.ts-search-led .ts-hero-copy{margin:auto}.ts-search-box{display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;min-width:min(680px,90vw);margin:0 auto;padding:1.2rem 1.4rem;border:1px solid var(--theme-border);border-radius:999px;background:var(--theme-surface);box-shadow:0 1rem 4rem color-mix(in srgb,var(--theme-text) 10%,transparent);text-align:left}.ts-search-box span{color:var(--theme-primary);font-weight:800}.ts-stacked>.container{min-height:25rem}.ts-stacked .ts-hero-copy{max-width:66rem}.ts-stacked-media{height:min(46vw,34rem);margin:0 max(1rem,4vw)}.ts-stacked-media .ts-hero-image{border-radius:calc(var(--ts-radius)*1.4)}.ts-data-grid{background:var(--theme-text);color:var(--theme-background)}.ts-data-grid>.container{grid-template-columns:1.15fr .85fr}.ts-data-panel{display:grid;grid-template-columns:1fr 1fr;border:1px solid color-mix(in srgb,var(--theme-background) 20%,transparent)}.ts-data-panel span,.ts-data-panel b{padding:1.2rem;border:1px solid color-mix(in srgb,var(--theme-background) 16%,transparent)}.ts-data-panel span{color:var(--ts-accent);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.ts-data-panel b{font-size:1.25rem}.ts-minimal>.container{min-height:29rem;grid-template-columns:1fr auto}.ts-minimal .ts-hero-copy h1{font-weight:500;letter-spacing:-.06em}.ts-minimal-line{width:12rem;height:1px;background:var(--theme-primary)}.ts-minimal>.ts-hero-image{display:block;width:calc(100% - 8vw);height:min(31vw,25rem);margin:0 auto;border-radius:0}
.ts-section{padding:var(--ts-space) 0}.ts-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.ts-card{display:flex;min-width:0;flex-direction:column;padding:1.6rem;border-radius:var(--ts-radius);background:var(--theme-surface);border:1px solid var(--theme-border);box-shadow:0 1rem 2.8rem rgba(20,32,38,.1);}.studio-theme:has(.ts-card-grid) .ts-card-grid>.ts-card:first-child:nth-last-child(n+3){}.studio-theme:has(.ts-card-grid) .ts-card-grid>.ts-card:first-child:nth-last-child(n+2){}.ts-card-index{color:var(--theme-primary);font-weight:850;font-size:.76rem;letter-spacing:.12em}.ts-card h2{font-size:1.35rem;line-height:1.2;margin:.75rem 0}.ts-card h2 a{color:var(--theme-text);text-decoration:none}.ts-card p{color:var(--theme-muted);line-height:1.6}.ts-read{margin-top:auto;color:var(--theme-primary);font-weight:800;text-decoration:none}
.ts-page-hero{padding:4rem 0;background:#2b211f;color:#ffffff}.ts-hero-disclosure{max-width:38rem!important;margin:.65rem 0 0;font-size:.76rem!important;line-height:1.45!important;opacity:.78}.ts-page-hero .theme-breadcrumbs,.ts-page-hero .theme-breadcrumbs a{color:#ffffff;opacity:.78}.ts-page-hero h1{max-width:54rem;color:inherit;font-size:clamp(2.2rem,5vw,4.3rem);line-height:1.04;margin:1rem 0}.ts-page-hero p{max-width:48rem;font-size:1.1rem;line-height:1.65}.ts-page-hero-button{display:inline-flex;margin-top:1.25rem}
.ts-page-hero-centered .ts-page-hero-copy{text-align:center}.ts-page-hero-centered .ts-page-hero-copy>*{margin-inline:auto}.ts-page-hero-centered .ts-page-hero-grid.has-media{grid-template-columns:1fr}.ts-page-hero-centered .ts-page-hero-media{width:min(58rem,100%);margin-inline:auto;aspect-ratio:16/7}
.ts-page-hero-wide h1{max-width:68rem}.ts-page-hero-wide .ts-page-hero-copy>p{max-width:62rem}.ts-page-hero-magazine .ts-page-hero-copy{padding-left:clamp(1rem,4vw,4rem);border-left:.45rem solid var(--ts-accent)}.ts-page-hero-split-rail .ts-page-hero-grid.has-media{grid-template-columns:minmax(15rem,.72fr) minmax(0,1.28fr)}.ts-page-hero-split-rail .ts-page-hero-media{grid-column:1;grid-row:1}.ts-page-hero-split-rail .ts-page-hero-copy{grid-column:2}.ts-page-hero-editorial-stack .ts-page-hero-grid.has-media{grid-template-columns:1fr}.ts-page-hero-editorial-stack .ts-page-hero-media{aspect-ratio:21/8}.ts-page-hero-feature-card{padding-bottom:7rem}.ts-page-hero-feature-card .ts-page-hero-grid{padding:clamp(1.25rem,3vw,2.5rem);border:1px solid color-mix(in srgb,#ffffff 28%,transparent);border-radius:calc(var(--ts-radius)*1.25)}.ts-page-hero-index-rail .ts-page-hero-copy{padding-left:clamp(1.25rem,4vw,4rem);border-left:1px solid color-mix(in srgb,#ffffff 36%,transparent)}.ts-page-hero-image-led .ts-page-hero-grid.has-media{grid-template-columns:.8fr 1.2fr}.ts-page-hero-image-led .ts-page-hero-media{grid-column:1;grid-row:1;aspect-ratio:3/4}.ts-page-hero-image-led .ts-page-hero-copy{grid-column:2}.ts-page-hero-minimal-note{padding-block:3rem}.ts-page-hero-minimal-note .ts-page-hero-grid.has-media{grid-template-columns:minmax(0,1fr) 12rem}.ts-page-hero-minimal-note .ts-page-hero-media{aspect-ratio:1}
.ts-article,.ts-reading-section{padding:var(--ts-space) 0}.ts-article>.container{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(2rem,6vw,6rem)}.ts-reading{min-width:0;width:100%;max-width:100%}.ts-article>.container>*,.ts-reading-section>.container>*,.ts-page-hero-grid>*,.theme-richtext,.content-section{min-width:0}.ts-reading p,.ts-reading li{line-height:1.78}.ts-reading h2{margin-top:2.4rem}
.ts-article-aside{position:static;display:grid;align-self:start;gap:.85rem;padding:1.3rem;border-top:5px solid var(--theme-primary);background:var(--theme-surface)}.ts-article-aside span{color:var(--theme-primary);font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.ts-article-aside a{color:var(--theme-text);font-weight:700;text-decoration:none}
.ts-article-centered>.container{max-width:960px}.ts-article-centered .ts-article-aside,.ts-article-wide .ts-article-aside,.ts-article-editorial-stack .ts-article-aside,.ts-article-image-led .ts-article-aside{grid-template-columns:repeat(3,minmax(0,1fr))}.ts-article-centered .ts-article-aside>span,.ts-article-wide .ts-article-aside>span,.ts-article-editorial-stack .ts-article-aside>span,.ts-article-image-led .ts-article-aside>span{grid-column:1/-1}
.ts-article-sidebar>.container,.ts-article-magazine>.container{grid-template-columns:minmax(0,1fr) minmax(14rem,20rem)}.ts-article-sidebar .ts-article-aside,.ts-article-magazine .ts-article-aside{position:sticky;top:2rem}.ts-article-magazine .ts-reading>.theme-richtext>.content-section:first-of-type{font-size:1.13rem}.ts-article-magazine .ts-reading>.theme-richtext>.content-section:first-of-type>p:first-of-type:first-letter{float:left;margin:.08em .12em 0 0;color:var(--theme-primary);font-family:Trebuchet MS, Segoe UI, sans-serif;font-size:4.2rem;line-height:.78}
.ts-article-wide>.container{max-width:1320px}.ts-article-wide .ts-reading>.theme-richtext>.content-section:nth-of-type(odd){padding-left:clamp(0rem,5vw,5rem)}
.ts-article-split-rail>.container{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr)}.ts-article-split-rail .ts-reading{grid-column:2;grid-row:1}.ts-article-split-rail .ts-article-aside{grid-column:1;grid-row:1;position:sticky;top:2rem;border-top:0;border-left:5px solid var(--theme-primary)}
.ts-article-editorial-stack>.container{max-width:1080px}.ts-article-editorial-stack .content-section{padding:clamp(1.2rem,3vw,2.25rem);border:1px solid var(--theme-border);border-radius:var(--ts-radius);background:var(--theme-surface)}.ts-article-editorial-stack .content-section h2{margin-top:0}
.ts-article-feature-card{padding-top:0}.ts-article-feature-card>.container{position:relative;z-index:2;max-width:1100px;margin-top:-4rem}.ts-article-feature-card .ts-reading{padding:clamp(1.4rem,4vw,4rem);border:1px solid var(--theme-border);border-radius:calc(var(--ts-radius)*1.4);background:var(--theme-surface);box-shadow:0 1.5rem 4rem color-mix(in srgb,var(--theme-text) 14%,transparent)}.ts-article-feature-card .ts-article-aside{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:var(--ts-radius)}
.ts-article-index-rail>.container{grid-template-columns:minmax(0,1fr) minmax(12rem,16rem)}.ts-article-index-rail .theme-richtext{counter-reset:article-section}.ts-article-index-rail .content-section{position:relative;padding-left:clamp(3.5rem,6vw,5.5rem)}.ts-article-index-rail .content-section:before{counter-increment:article-section;content:counter(article-section,decimal-leading-zero);position:absolute;left:0;top:.25rem;color:var(--theme-primary);font-weight:850;font-size:1.1rem}.ts-article-index-rail .ts-article-aside{position:sticky;top:2rem}
.ts-article-image-led>.container{max-width:1120px}.ts-article-image-led .theme-inline-image{max-height:42rem;aspect-ratio:16/9}.ts-article-image-led .content-section:has(.theme-inline-image){margin-block:3.5rem}
.ts-article-minimal-note>.container{max-width:820px}.ts-article-minimal-note .ts-reading{font-size:1.02rem}.ts-article-minimal-note .content-section{padding-bottom:2rem;border-bottom:1px solid var(--theme-border)}.ts-article-minimal-note .content-section h2{font-size:clamp(1.35rem,3vw,1.8rem);font-weight:650}.ts-article-minimal-note .ts-article-aside{background:transparent;border:1px solid var(--theme-border);border-radius:0}
.ts-article>.container:not(:has(.ts-article-aside)){grid-template-columns:minmax(0,1fr)}
.theme-cta{margin:2rem 0;padding:1.4rem;border-radius:var(--ts-radius);background:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-surface));border-left:5px solid var(--theme-primary)}
.ts-footer{padding:3rem 0;background:#2b211f;color:#ffffff}.ts-footer>.container{display:flex;justify-content:space-between;gap:2rem}.ts-footer-brand{color:#ffffff;font-size:1.35rem;font-weight:850;text-decoration:none}.ts-footer p{color:#ffffff;opacity:.72}.ts-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.7rem 1.2rem}.ts-footer nav a{color:#ffffff}.studio-theme.ts-footer-centered .ts-footer>.container{display:grid;justify-items:center;text-align:center}.studio-theme.ts-footer-centered .ts-footer nav{justify-content:center}
@media(max-width:991.98px){.ts-nav-centered .navbar-brand{width:auto;margin-right:auto}.ts-nav-centered .navbar-collapse{width:100%}.ts-nav-rule,.ts-nav-edition{display:none}.ts-article-sidebar>.container,.ts-article-magazine>.container,.ts-article-split-rail>.container,.ts-article-index-rail>.container{grid-template-columns:1fr}.ts-article-split-rail .ts-reading,.ts-article-split-rail .ts-article-aside{grid-column:1;grid-row:auto}.ts-article-sidebar .ts-article-aside,.ts-article-magazine .ts-article-aside,.ts-article-split-rail .ts-article-aside,.ts-article-index-rail .ts-article-aside{position:static}.ts-page-hero-split-rail .ts-page-hero-grid.has-media,.ts-page-hero-image-led .ts-page-hero-grid.has-media{grid-template-columns:1fr}.ts-page-hero-split-rail .ts-page-hero-copy,.ts-page-hero-split-rail .ts-page-hero-media,.ts-page-hero-image-led .ts-page-hero-copy,.ts-page-hero-image-led .ts-page-hero-media{grid-column:1;grid-row:auto}.ts-page-hero-image-led .ts-page-hero-media{aspect-ratio:16/9}}
@media(max-width:767.98px){.ts-nav .navbar-collapse{padding:1rem 0}.ts-nav .navbar-nav{align-items:flex-start}.ts-nav .nav-link{padding:.55rem 0}.ts-nav-cta{display:inline-block;margin:.6rem 0 0}.ts-hero>.container,.ts-split>.container,.ts-editorial>.container,.ts-bento>.container,.ts-data-grid>.container,.ts-minimal>.container{min-height:0;grid-template-columns:1fr;grid-template-rows:auto;gap:1.6rem;padding:2.35rem 1rem}.ts-hero-copy h1{font-size:clamp(2.25rem,10.5vw,3.25rem)}.ts-split-image,.ts-editorial-image,.ts-bento-image{min-height:18rem;grid-row:auto}.ts-bento-copy{grid-row:auto;padding:2rem}.ts-bento-note{min-height:8rem}.ts-search-box{min-width:0;width:100%;grid-template-columns:1fr auto}.ts-search-box>span:first-child{display:none}.ts-stacked-media,.ts-minimal>.ts-hero-image{height:18rem}.ts-card-grid{grid-template-columns:1fr;grid-auto-flow:row;grid-auto-columns:auto;overflow:visible}.studio-theme:has(.ts-card-grid) .ts-card-grid>.ts-card:first-child:nth-last-child(n+2){display:flex}.ts-page-hero{padding:3rem 1rem}.ts-article,.ts-reading-section{padding:3rem 1rem}.ts-article>.container{grid-template-columns:1fr}.ts-article-aside,.ts-article-centered .ts-article-aside,.ts-article-wide .ts-article-aside,.ts-article-editorial-stack .ts-article-aside,.ts-article-feature-card .ts-article-aside,.ts-article-image-led .ts-article-aside{position:static;grid-template-columns:1fr}.ts-article-aside>span,.ts-article-centered .ts-article-aside>span,.ts-article-wide .ts-article-aside>span,.ts-article-editorial-stack .ts-article-aside>span,.ts-article-image-led .ts-article-aside>span{grid-column:1}.ts-article-feature-card>.container{margin-top:-2rem}.ts-article-feature-card .ts-reading{padding:1.25rem}.ts-article-index-rail .content-section{padding-left:3rem}.ts-footer>.container{display:block!important;text-align:center}.ts-footer nav{justify-content:center!important;margin-top:1.5rem}}
.ts-directory>.container{grid-template-columns:1.05fr .95fr}.ts-directory-image{min-height:22rem}.ts-search-media{width:min(900px,100%);height:min(40vw,24rem);margin:0 auto}.ts-data-visual{display:grid;align-self:stretch;grid-template-rows:minmax(15rem,1fr) auto;gap:1rem}.ts-data-visual>.ts-hero-image{min-height:15rem}
@media(max-width:767.98px){.ts-directory>.container{grid-template-columns:1fr}.ts-directory-image{min-height:18rem}.ts-search-media{height:18rem}}
.studio-theme {
  color-scheme: light;
  --bs-body-bg: #fbf7f3;
  --bs-body-color: #2b211f;
  --bs-primary: #9f1239;
  --bs-primary-rgb: 159, 18, 57;
  --bs-border-color: #dacbc4;
  --bs-link-color: #9f1239;
  --bs-link-hover-color: #7f0f2e;
  background: #fbf7f3;
  color: #2b211f;
  font-family: 'Segoe UI', 'Aptos', 'Helvetica Neue', Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.68;
}
.studio-theme h1,
.studio-theme h2,
.studio-theme h3,
.studio-theme h4,
.studio-theme h5,
.studio-theme h6 {
  color: #2b211f;
  font-family: 'Aptos Display', 'Segoe UI', 'Trebuchet MS', sans-serif;
  font-weight: 680;
  letter-spacing: -0.025em;
  line-height: 1.12;
}
.studio-theme a {
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}
.studio-theme ::selection {
  background: #f0cbd5;
  color: #2b211f;
}
.studio-theme .navbar {
  --bs-navbar-color: #ffffff;
  --bs-navbar-hover-color: #ffffff;
  --bs-navbar-active-color: #ffffff;
  --bs-navbar-brand-color: #ffffff;
  --bs-navbar-brand-hover-color: #ffffff;
  background: #9f1239;
  border-bottom: 1px solid #7f0f2e;
  box-shadow: 0 0.3rem 1.4rem rgba(72, 20, 34, 0.12);
  min-height: 4.75rem;
}
.studio-theme .navbar-brand {
  font-family: 'Aptos Display', 'Segoe UI', sans-serif;
  font-size: clamp(1.3rem, 2vw, 1.65rem);
  font-weight: 750;
  letter-spacing: -0.035em;
}
.studio-theme .navbar .nav-link {
  border-radius: 999px;
  color: #ffffff;
  font-weight: 650;
  padding: 0.55rem 0.85rem;
  text-decoration: none;
}
.studio-theme .navbar .nav-link:hover,
.studio-theme .navbar .nav-link:focus-visible,
.studio-theme .navbar .nav-link.active {
  background: rgba(255, 255, 255, 0.14);
}
.studio-theme .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.65);
  color: #ffffff;
}
.studio-theme .theme-hero {
  position: relative;
  overflow: clip;
  background: linear-gradient(112deg, #f7eeea 0%, #fbf7f3 58%, #edf3f0 100%);
  border-bottom: 1px solid #dacbc4;
}
.studio-theme .theme-hero::after {
  position: absolute;
  right: -7rem;
  bottom: -8rem;
  width: 24rem;
  height: 24rem;
  border: 1px solid rgba(63, 111, 102, 0.25);
  border-radius: 50%;
  content: '';
  pointer-events: none;
}
.studio-theme .theme-hero .container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(20rem, 1.12fr);
  gap: clamp(2rem, 5vw, 5.5rem);
  align-items: center;
  padding-block: clamp(3rem, 7vw, 5.5rem);
}
.studio-theme .theme-hero h1 {
  max-width: 12ch;
  margin-bottom: 1.25rem;
  font-size: clamp(2.45rem, 5vw, 4.35rem);
}
.studio-theme .theme-hero .lead {
  max-width: 36rem;
  color: #665651;
  font-size: clamp(1.08rem, 1.8vw, 1.3rem);
}
.studio-theme .theme-eyebrow {
  display: inline-flex;
  gap: 0.55rem;
  align-items: center;
  margin-bottom: 1rem;
  color: #3f6f66;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.studio-theme .theme-eyebrow::before {
  width: 2.25rem;
  height: 2px;
  background: #3f6f66;
  content: '';
}
.studio-theme .theme-hero-media {
  position: relative;
  aspect-ratio: 4 / 3;
  margin-bottom: -1.75rem;
  overflow: hidden;
  border: 0.45rem solid #ffffff;
  border-radius: 1.5rem 1.5rem 0.55rem 1.5rem;
  box-shadow: 0 1.4rem 3.4rem rgba(72, 45, 37, 0.18);
}
.studio-theme .theme-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.studio-theme .theme-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  margin-top: 1.75rem;
}
.studio-theme .btn {
  min-height: 2.85rem;
  border-radius: 999px;
  font-weight: 700;
  padding-inline: 1.25rem;
}
.studio-theme .btn-primary {
  --bs-btn-bg: #9f1239;
  --bs-btn-border-color: #9f1239;
  --bs-btn-hover-bg: #7f0f2e;
  --bs-btn-hover-border-color: #7f0f2e;
  --bs-btn-active-bg: #6f0d29;
  --bs-btn-active-border-color: #6f0d29;
  --bs-btn-color: #ffffff;
}
.studio-theme .btn-outline-primary {
  --bs-btn-color: #9f1239;
  --bs-btn-border-color: #9f1239;
  --bs-btn-hover-bg: #9f1239;
  --bs-btn-hover-border-color: #9f1239;
  --bs-btn-hover-color: #ffffff;
}
.studio-theme .btn:focus-visible,
.studio-theme .form-control:focus,
.studio-theme .form-select:focus,
.studio-theme a:focus-visible {
  outline: 3px solid rgba(63, 111, 102, 0.42);
  outline-offset: 3px;
  box-shadow: none;
}
.studio-theme .section-band {
  padding-block: clamp(3.5rem, 8vw, 5rem);
}
.studio-theme .section-band--tint {
  background: #f3ebe6;
  border-block: 1px solid #e5d8d1;
}
.studio-theme .theme-section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: end;
  margin-bottom: 2rem;
}
.studio-theme .theme-section-heading p {
  max-width: 36rem;
  margin-bottom: 0;
  color: #665651;
}
.studio-theme .theme-card {
  display: grid;
  grid-template-columns: minmax(13rem, 34%) minmax(0, 1fr);
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #dacbc4;
  border-radius: 1.125rem;
  box-shadow: 0 0.7rem 2rem rgba(72, 45, 37, 0.09);
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.studio-theme .theme-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 1rem 2.5rem rgba(72, 45, 37, 0.14);
}
.studio-theme .theme-card-media,
.studio-theme .theme-card > .card-img-top {
  width: 100%;
  height: 100%;
  min-height: 15rem;
  object-fit: cover;
}
.studio-theme .theme-card .card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.35rem, 3.5vw, 2.35rem);
}
.studio-theme .theme-card .card-title {
  margin-bottom: 0.65rem;
  font-size: clamp(1.35rem, 2.4vw, 1.85rem);
}
.studio-theme .theme-card .card-text {
  color: #665651;
}
.studio-theme .theme-card .card-footer {
  background: transparent;
  border-top: 1px solid #eee4df;
}
.studio-theme .badge {
  border-radius: 999px;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding: 0.5em 0.75em;
}
.studio-theme .theme-location-badge {
  background: #e5efec;
  color: #315b54;
}
.studio-theme .theme-callout {
  border-left: 0.3rem solid #3f6f66;
  border-radius: 0 1rem 1rem 0;
  background: #edf3f0;
  color: #2b211f;
  padding: 1.35rem 1.5rem;
}
.studio-theme .form-control,
.studio-theme .form-select {
  min-height: 3rem;
  color: #2b211f;
  background-color: #ffffff;
  border-color: #cdbbb3;
  border-radius: 0.75rem;
}
.studio-theme .form-label {
  color: #493a36;
  font-weight: 700;
}
.studio-theme .theme-article {
  max-width: 48rem;
  margin-inline: auto;
}
.studio-theme .theme-article h2 {
  margin-top: 2.4em;
  margin-bottom: 0.65em;
  font-size: clamp(1.8rem, 3vw, 2.4rem);
}
.studio-theme .theme-article blockquote {
  margin-block: 2rem;
  border-left: 0.3rem solid #9f1239;
  color: #493a36;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.25rem;
  font-style: italic;
  padding-left: 1.4rem;
}
.studio-theme .theme-footer {
  background: #2b211f;
  color: #f8eee9;
  border-top: 0.35rem solid #9f1239;
  padding-block: 3.5rem;
  text-align: center;
}
.studio-theme .theme-footer a {
  color: #ffffff;
}
.studio-theme .theme-footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.4rem;
  justify-content: center;
  margin-block: 1.25rem;
}
@media (max-width: 991.98px) {
  .studio-theme .theme-hero .container {
    grid-template-columns: minmax(0, 1fr);
  }
  .studio-theme .theme-hero-media {
    max-width: 44rem;
    margin-bottom: -1rem;
  }
  .studio-theme .navbar-collapse {
    margin-top: 0.75rem;
    padding-bottom: 1rem;
  }
}
@media (max-width: 767.98px) {
  .studio-theme .theme-hero h1 {
    max-width: 14ch;
  }
  .studio-theme .theme-card {
    grid-template-columns: minmax(0, 1fr);
  }
  .studio-theme .theme-card-media,
  .studio-theme .theme-card > .card-img-top {
    min-height: 0;
    aspect-ratio: 16 / 10;
  }
  .studio-theme .theme-section-heading {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }
}
@media (max-width: 575.98px) {
  .studio-theme .theme-hero .container {
    gap: 1.75rem;
    padding-block: 2.75rem;
  }
  .studio-theme .theme-hero-media {
    aspect-ratio: 5 / 4;
    border-width: 0.3rem;
  }
  .studio-theme .theme-actions .btn {
    flex: 1 1 100%;
  }
  .studio-theme .section-band {
    padding-block: 3.25rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .studio-theme .theme-card {
    transition: none;
  }
}
/* Host-enforced accessibility and article-layout invariants come after manual/AI enhancements. */
.studio-theme{--theme-background:#fbf7f3;--theme-surface:#ffffff;--theme-text:#2b211f;--theme-muted:#665651;--theme-primary:#9f1239;--theme-primary-text:#ffffff;--theme-border:#dacbc4;--theme-bg:var(--theme-background);--theme-ink:var(--theme-text);--theme-line:var(--theme-border);--theme-background:#fbf7f3!important;--theme-surface:#ffffff!important;--theme-text:#2b211f!important;--theme-muted:#665651!important;--theme-primary:#9f1239!important;--theme-primary-text:#ffffff!important;--theme-border:#dacbc4!important}
.studio-theme .ts-home-reading .ts-reading,.studio-theme .ts-home-reading .theme-richtext,.studio-theme .ts-article .ts-reading,.studio-theme .ts-article .theme-richtext{width:100%;max-width:100%}
/* Component typography is host-owned: broad AI h1/h2 rules must not make heroes or cards unusably tall. */
.studio-theme .ts-hero-copy h1{max-width:48rem;font-size:clamp(2.55rem,5.4vw,4.8rem);line-height:.98}
.studio-theme .ts-page-hero h1{max-width:54rem;font-size:clamp(2.2rem,5vw,4.3rem);line-height:1.04}
.studio-theme .ts-reading h2{font-size:clamp(1.55rem,2.8vw,2.4rem);line-height:1.12}
.studio-theme .ts-card h2{font-size:1.35rem;line-height:1.2}
/* Article compositions are host-owned so AI/custom CSS cannot collapse all pages back to one layout. */
.studio-theme .ts-article>.container{display:grid;grid-template-columns:minmax(0,1fr)}.studio-theme .ts-article-sidebar>.container,.studio-theme .ts-article-magazine>.container{grid-template-columns:minmax(0,1fr) minmax(14rem,20rem)}.studio-theme .ts-article-split-rail>.container{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr)}.studio-theme .ts-article-split-rail .ts-reading{grid-column:2;grid-row:1}.studio-theme .ts-article-split-rail .ts-article-aside{grid-column:1;grid-row:1}.studio-theme .ts-article-index-rail>.container{grid-template-columns:minmax(0,1fr) minmax(12rem,16rem)}.studio-theme .ts-article-feature-card>.container{margin-top:-4rem}.studio-theme .ts-article>.container:not(:has(.ts-article-aside)){grid-template-columns:minmax(0,1fr)}
.studio-theme .theme-richtext>.content-section>p,.studio-theme .theme-richtext>.content-section>ul,.studio-theme .theme-richtext>.content-section>ol,.studio-theme .theme-richtext>.article-lead,.studio-theme .theme-richtext>.theme-conclusion,.studio-theme .theme-richtext>.article-sources>p,.studio-theme .theme-richtext>.theme-faq>p{max-width:78ch}
.studio-theme .theme-richtext table,.studio-theme .theme-richtext figure,.studio-theme .theme-richtext .theme-inline-image,.studio-theme .theme-richtext .theme-comparison-grid,.studio-theme .theme-richtext .theme-cta{max-width:100%}
/* AI-authored custom CSS may experiment with hero colors, but it must not be able to leave
   the saved theme with an unreadable H1. Reassert the semantic background/foreground pair for
   every non-image home hero after customCss, then keep the specialized dark/image templates
   below as explicit overrides. */
.studio-theme .ts-split,.studio-theme .ts-stacked,.studio-theme .ts-minimal{background:var(--theme-background);color:var(--theme-text)}
.studio-theme .ts-editorial{background:var(--theme-surface);color:var(--theme-text)}
.studio-theme .ts-directory{background:color-mix(in srgb,var(--theme-primary) 9%,var(--theme-background));color:var(--theme-text)}
.studio-theme .ts-search-led{background:radial-gradient(circle at top,color-mix(in srgb,var(--theme-primary) 20%,var(--theme-background)),var(--theme-background) 58%);color:var(--theme-text)}
.studio-theme .ts-split .ts-hero-copy,.studio-theme .ts-editorial .ts-hero-copy,.studio-theme .ts-directory .ts-hero-copy,.studio-theme .ts-search-led .ts-hero-copy,.studio-theme .ts-stacked .ts-hero-copy,.studio-theme .ts-minimal .ts-hero-copy{color:var(--theme-text)}
.studio-theme .ts-hero-copy h1{color:inherit}
.studio-theme .ts-nav{background:#9f1239!important;color:#ffffff!important}.studio-theme .ts-nav .nav-link,.studio-theme .ts-nav .navbar-toggler,.studio-theme .ts-nav .ts-nav-edition{color:#ffffff!important}
.studio-theme .ts-button,.studio-theme a.ts-button{border-color:#9f1239!important;background:#9f1239!important;color:#ffffff!important}.studio-theme .ts-button:hover,.studio-theme .ts-button:focus-visible,.studio-theme a.ts-button:hover,.studio-theme a.ts-button:focus-visible{border-color:#9f1239!important;background:#9f1239!important;color:#ffffff!important;box-shadow:0 0 0 .22rem color-mix(in srgb,#9f1239 28%,transparent)}
.studio-theme .ts-bento-copy,.studio-theme .ts-bento-copy h1,.studio-theme .ts-bento-copy h2,.studio-theme .ts-bento-copy p{color:var(--theme-background)}.studio-theme .ts-bento-copy .ts-kicker{color:var(--ts-accent)}
.studio-theme .ts-bento-note,.studio-theme .ts-bento-note b,.studio-theme .ts-bento-note span{color:var(--theme-primary-text)}.studio-theme .ts-bento-note-alt,.studio-theme .ts-bento-note-alt b,.studio-theme .ts-bento-note-alt span{color:var(--theme-text)}
.studio-theme .theme-richtext>section{padding-block:0}
.studio-theme .theme-richtext>.content-section{margin:0 0 2.25rem}
.studio-theme .theme-richtext>.theme-faq,.studio-theme .theme-richtext>.article-sources,.studio-theme .theme-richtext>.theme-related{margin-top:2.5rem}
.studio-theme .ts-page-hero-grid.has-media{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr);align-items:center;gap:clamp(2rem,5vw,5rem)}
/* Reassert the selected page-hero composition after custom CSS and the generic media grid. */
.studio-theme .ts-page-hero-centered .ts-page-hero-copy{text-align:center}.studio-theme .ts-page-hero-centered .ts-page-hero-copy>*{margin-inline:auto}.studio-theme .ts-page-hero-centered .ts-page-hero-grid.has-media{grid-template-columns:1fr}.studio-theme .ts-page-hero-centered .ts-page-hero-media{width:min(58rem,100%);margin-inline:auto;aspect-ratio:16/7}
.studio-theme .ts-page-hero-split-rail .ts-page-hero-grid.has-media{grid-template-columns:minmax(15rem,.72fr) minmax(0,1.28fr)}.studio-theme .ts-page-hero-split-rail .ts-page-hero-media{grid-column:1;grid-row:1}.studio-theme .ts-page-hero-split-rail .ts-page-hero-copy{grid-column:2}
.studio-theme .ts-page-hero-editorial-stack .ts-page-hero-grid.has-media{grid-template-columns:1fr}.studio-theme .ts-page-hero-editorial-stack .ts-page-hero-media{aspect-ratio:21/8}
.studio-theme .ts-page-hero-image-led .ts-page-hero-grid.has-media{grid-template-columns:.8fr 1.2fr}.studio-theme .ts-page-hero-image-led .ts-page-hero-media{grid-column:1;grid-row:1;aspect-ratio:3/4}.studio-theme .ts-page-hero-image-led .ts-page-hero-copy{grid-column:2}
.studio-theme .ts-page-hero-minimal-note .ts-page-hero-grid.has-media{grid-template-columns:minmax(0,1fr) 12rem}.studio-theme .ts-page-hero-minimal-note .ts-page-hero-media{aspect-ratio:1}
.studio-theme .ts-page-hero-media{overflow:hidden;aspect-ratio:4/3;border:1px solid color-mix(in srgb,#ffffff 20%,transparent);border-radius:min(calc(var(--ts-radius)*1.15),24px);background:color-mix(in srgb,var(--theme-primary) 12%,var(--theme-surface));box-shadow:0 1.25rem 3rem rgba(0,0,0,.18)}.studio-theme .ts-page-hero-media img{display:block;width:100%;height:100%;object-fit:cover}
.studio-theme .theme-inline-image{display:block;width:100%;height:auto;max-height:32rem;aspect-ratio:3/2;object-fit:cover;margin:1.25rem 0 1.6rem;border:1px solid var(--theme-border);border-radius:min(calc(var(--ts-radius)*1.1),22px);background:color-mix(in srgb,var(--theme-primary) 8%,var(--theme-surface));box-shadow:0 .75rem 2rem color-mix(in srgb,var(--theme-text) 10%,transparent)}
.studio-theme .theme-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem 1.5rem;margin:3rem 0 0;padding:1.35rem 1.5rem;border:1px solid var(--theme-border);border-left:4px solid var(--theme-primary);border-radius:var(--ts-radius);background:var(--theme-surface);color:var(--theme-text);box-shadow:none}
.studio-theme .theme-cta .theme-disclosure{grid-column:1/-1;margin:0;color:var(--theme-muted)}.studio-theme .theme-cta strong{display:block}.studio-theme .theme-cta p{margin:.35rem 0 0;color:var(--theme-muted)}
.studio-theme .theme-cta .theme-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.7rem 1rem;border:1px solid #9f1239!important;border-radius:999px;background:#ffffff!important;color:#9f1239!important;font-weight:800;text-decoration:none;box-shadow:none}.studio-theme .theme-cta .theme-button:hover,.studio-theme .theme-cta .theme-button:focus-visible{background:#9f1239!important;color:#ffffff!important}
.studio-theme .ts-page-hero{background:#2b211f!important;color:#ffffff!important}.studio-theme .ts-page-hero h1,.studio-theme .ts-page-hero p,.studio-theme .ts-page-hero .theme-breadcrumbs,.studio-theme .ts-page-hero .theme-breadcrumbs a{color:#ffffff!important}.studio-theme .ts-hero-disclosure{color:#ffffff!important;opacity:1!important}
.studio-theme .ts-magazine,.studio-theme .ts-magazine h1,.studio-theme .ts-magazine p,.studio-theme .ts-bold,.studio-theme .ts-bold h1,.studio-theme .ts-bold p{color:#fff}
.studio-theme .ts-data-grid,.studio-theme .ts-data-grid h1,.studio-theme .ts-data-grid p{color:var(--theme-background)}
.studio-theme .ts-footer{background:#2b211f!important;color:#ffffff!important}.studio-theme .ts-footer p,.studio-theme .ts-footer-brand,.studio-theme .ts-footer nav a{color:#ffffff!important;opacity:1!important}
@media(max-width:991.98px){.studio-theme .ts-article-sidebar>.container,.studio-theme .ts-article-magazine>.container,.studio-theme .ts-article-split-rail>.container,.studio-theme .ts-article-index-rail>.container{grid-template-columns:1fr}.studio-theme .ts-article-split-rail .ts-reading,.studio-theme .ts-article-split-rail .ts-article-aside{grid-column:1;grid-row:auto}.studio-theme .ts-article-feature-card>.container{margin-top:-2rem}}
@media(max-width:767.98px){.studio-theme .ts-hero-copy h1{font-size:clamp(2.25rem,10.5vw,3.25rem)}.studio-theme .ts-page-hero h1{font-size:clamp(2rem,9vw,2.75rem)}.studio-theme .ts-page-hero-grid.has-media,.studio-theme .ts-page-hero-centered .ts-page-hero-grid.has-media,.studio-theme .ts-page-hero-split-rail .ts-page-hero-grid.has-media,.studio-theme .ts-page-hero-editorial-stack .ts-page-hero-grid.has-media,.studio-theme .ts-page-hero-image-led .ts-page-hero-grid.has-media,.studio-theme .ts-page-hero-minimal-note .ts-page-hero-grid.has-media{grid-template-columns:1fr}.studio-theme .ts-page-hero-split-rail .ts-page-hero-copy,.studio-theme .ts-page-hero-split-rail .ts-page-hero-media,.studio-theme .ts-page-hero-image-led .ts-page-hero-copy,.studio-theme .ts-page-hero-image-led .ts-page-hero-media{grid-column:1;grid-row:auto}.studio-theme .ts-page-hero-media,.studio-theme .ts-page-hero-centered .ts-page-hero-media,.studio-theme .ts-page-hero-editorial-stack .ts-page-hero-media,.studio-theme .ts-page-hero-image-led .ts-page-hero-media,.studio-theme .ts-page-hero-minimal-note .ts-page-hero-media{aspect-ratio:16/10}.studio-theme .theme-inline-image{aspect-ratio:4/3;margin-block:1rem 1.4rem}.studio-theme .theme-cta{grid-template-columns:1fr}.studio-theme .theme-cta .theme-button{justify-self:start}}
