
@import url('https://cdn.jsdelivr.net/npm/@fontsource/cormorant-garamond@5.2.7/500.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/cormorant-garamond@5.2.7/500-italic.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/work-sans@5.2.0/400.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/work-sans@5.2.0/500.css');

.ths-homepage { font-family: 'Work Sans', system-ui, sans-serif; color: #1A1A1A; line-height: 1.7; font-size: 17px; }
.ths-homepage * { box-sizing: border-box; }
.ths-homepage a { color: inherit; }

.ths-eyebrow { font-family: 'Work Sans', sans-serif; font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: #7A6E5F; font-weight: 500; margin: 0 0 24px; }
.ths-rule { display: block; width: 56px; height: 1px; background: #C75D3B; margin: 32px 0; }
.ths-rule.center { margin-left: auto; margin-right: auto; }

.ths-btn { display: inline-block; font-family: 'Work Sans', sans-serif; font-weight: 500; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; padding: 15px 30px; border-radius: 2px; text-decoration: none; transition: background 0.2s, color 0.2s, border-color 0.2s; border: 1px solid transparent; cursor: pointer; }
.ths-btn.primary { background: #C75D3B; color: #F2EDE3; border-color: #C75D3B; }
.ths-btn.primary:hover { background: #B04F30; border-color: #B04F30; }
.ths-btn.secondary { background: transparent; color: #1A1A1A; border-color: #1A1A1A; }
.ths-btn.secondary:hover { background: #1A1A1A; color: #F2EDE3; }
.ths-btn.on-dark-secondary { background: transparent; color: #F2EDE3; border-color: #F2EDE3; }
.ths-btn.on-dark-secondary:hover { background: #F2EDE3; color: #1A1A1A; }

.ths-hero { background: #F2EDE3; padding: 130px 24px 110px; text-align: center; }
.ths-hero-inner { max-width: 760px; margin: 0 auto; }
.ths-hero h1 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 78px; line-height: 1.08; letter-spacing: -0.01em; color: #1A1A1A; margin: 0 0 28px; }
.ths-hero p.lead { font-size: 19px; line-height: 1.6; color: #1A1A1A; max-width: 560px; margin: 0 auto 40px; }

.ths-manifesto { background: #FAF6EC; padding: 110px 24px; }
.ths-manifesto-inner { max-width: 640px; margin: 0 auto; }
.ths-manifesto h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 42px; line-height: 1.18; margin: 0 0 32px; }
.ths-manifesto p { font-size: 18px; line-height: 1.75; margin: 0 0 22px; }

.ths-collection { background: #F2EDE3; padding: 110px 24px; }
.ths-collection-inner { max-width: 1100px; margin: 0 auto; }
.ths-collection-head { text-align: center; margin-bottom: 72px; }
.ths-collection-head h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 46px; line-height: 1.18; margin: 0 0 16px; }
.ths-collection-head p { font-size: 17px; color: #7A6E5F; margin: 0; }
.ths-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px 56px; }
.ths-card { display: flex; flex-direction: column; }
.ths-card .ths-num { font-family: 'Cormorant Garamond', Georgia, serif; font-style: italic; font-size: 18px; color: #C75D3B; margin-bottom: 16px; }
.ths-card h3 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 28px; line-height: 1.25; margin: 0 0 16px; color: #1A1A1A; }
.ths-card p { font-size: 16px; line-height: 1.65; color: #1A1A1A; margin: 0 0 24px; flex-grow: 1; }
.ths-card .ths-meta { display: flex; justify-content: space-between; align-items: baseline; padding-top: 18px; border-top: 1px solid rgba(122, 110, 95, 0.3); }
.ths-card .ths-price { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 22px; color: #1A1A1A; }
.ths-card .ths-view { font-family: 'Work Sans', sans-serif; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: #C75D3B; text-decoration: none; font-weight: 500; }
.ths-card .ths-view:hover { color: #1A1A1A; }

.ths-bundle { margin-top: 72px; background: #FAF6EC; border: 1px solid rgba(122, 110, 95, 0.3); padding: 52px; display: grid; grid-template-columns: 1.5fr 1fr; gap: 48px; align-items: center; }
.ths-bundle-num { font-family: 'Cormorant Garamond', Georgia, serif; font-style: italic; font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; color: #C75D3B; margin-bottom: 14px; }
.ths-bundle h3 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 36px; line-height: 1.18; margin: 0 0 18px; color: #1A1A1A; }
.ths-bundle p { font-size: 17px; line-height: 1.65; margin: 0; }
.ths-bundle .ths-bundle-right { text-align: right; }
.ths-bundle-price { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 34px; font-weight: 500; color: #1A1A1A; display: block; margin-bottom: 6px; }
.ths-bundle-save { font-family: 'Work Sans', sans-serif; font-size: 12px; color: #7A6E5F; letter-spacing: 0.1em; text-transform: uppercase; display: block; margin-bottom: 22px; }

.ths-about { background: #FAF6EC; padding: 110px 24px; }
.ths-about-inner { max-width: 640px; margin: 0 auto; text-align: center; }
.ths-about h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 38px; line-height: 1.18; margin: 0 0 28px; }
.ths-about p { font-size: 17px; line-height: 1.75; margin: 0 0 24px; }

.ths-cta { background: #1A1A1A; padding: 110px 24px; text-align: center; color: #F2EDE3; }
.ths-cta-inner { max-width: 640px; margin: 0 auto; }
.ths-cta .ths-eyebrow { color: #B8AEA0; }
.ths-cta h2 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: 48px; line-height: 1.18; margin: 0 0 22px; color: #F2EDE3; }
.ths-cta p { font-size: 18px; line-height: 1.65; margin: 0 0 40px; color: #F2EDE3; }
.ths-cta-buttons { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

@media (max-width: 768px) {
  .ths-hero { padding: 80px 20px 70px; }
  .ths-hero h1 { font-size: 48px; }
  .ths-hero p.lead { font-size: 17px; }
  .ths-manifesto, .ths-collection, .ths-about, .ths-cta { padding: 70px 20px; }
  .ths-manifesto h2 { font-size: 32px; }
  .ths-collection-head h2 { font-size: 34px; }
  .ths-grid { grid-template-columns: 1fr; gap: 48px; }
  .ths-bundle { grid-template-columns: 1fr; padding: 36px 28px; gap: 24px; }
  .ths-bundle h3 { font-size: 28px; }
  .ths-bundle .ths-bundle-right { text-align: left; }
  .ths-about h2 { font-size: 30px; }
  .ths-cta h2 { font-size: 34px; }
}
