/* Approved October direction. Extends the established Garamond/Inter system. */
.nv-offers { padding-top: 24px; }
.nv-offer { display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; border-radius: 16px; background: #f2ecf7; }
.nv-offer + .nv-offer { margin-top: 40px; }
.nv-offer-shop { background: #edf1e7; }
.nv-offer-shop .nv-offer-media { order: 2; }
.nv-offer-media img { width: 100%; height: 100%; min-height: 440px; object-fit: cover; }
.nv-offer-copy { padding: clamp(32px, 4vw, 60px); align-self: center; }
.nv-offer-copy h2 { font-size: clamp(34px, 3.3vw, 48px); }
.nv-offer-copy p { margin-top: 22px; font-size: 17px; line-height: 1.75; }
.nv-offer-copy .nv-offer-detail { font-size: 14px; color: #54534f; margin: 22px 0; }
.nv-offer-copy .button-primary { text-align: center; }
.nv-collab-section { padding-top: 32px; }
.nv-collab-panel { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 48px; padding: clamp(32px, 5vw, 64px); border-radius: 16px; background: #ede5f4; }
.nv-collab-panel h2 { max-width: 650px; font-size: clamp(36px, 3.7vw, 52px); }
.nv-collab-panel p { margin-top: 20px; max-width: 650px; line-height: 1.75; }
.nv-workshop-hero { background: #f0f4ec; }
.nv-workshop-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(40px, 5vw, 72px); align-items: center; }
.nv-workshop-hero h1 { font-size: clamp(44px, 4.3vw, 64px); max-width: 620px; text-wrap: balance; }
.nv-workshop-hero figure { margin: 0; min-width: 0; }
.nv-workshop-hero figure img { width: 100%; height: auto; aspect-ratio: 1.08; object-fit: cover; border-radius: 16px; }
.nv-workshop-hero figcaption { color: #596151; font-size: 12px; margin-top: 10px; }
.nv-benefit-list { list-style: none; padding: 0; margin: 24px 0 0; }
.nv-benefit-list li { border-top: 1px solid #d8d4c8; padding: 20px 0; line-height: 1.7; }
.nv-benefit-list strong { display: block; color: #18542c; margin-bottom: 4px; }
.nv-catalog { background: #f4f0e8; }
.nv-catalog .strategy-section-head { max-width: 860px; }
.nv-catalog-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; }
.nv-workshop-card { display: flex; flex-direction: column; align-items: stretch; background: #ffffff; border:1px solid #d8d4c8; border-radius: 16px; padding: 32px; }
.nv-workshop-card:nth-child(2) { background: #e9efdf; }
.nv-workshop-card:nth-child(3) { background: #eee6f4; }
.nv-workshop-card h3 { margin: 0 0 18px; font-size: clamp(30px, 2.6vw, 36px); }
.nv-workshop-card p { font-size: 16px; line-height: 1.75; }
.nv-workshop-card details { margin-top: auto; padding-top: 26px; }
.nv-workshop-card summary { min-height: 44px; cursor: pointer; font-size: 15px; color: #18542c; font-weight: 600; }
.nv-workshop-card details p { margin: 4px 0 20px; }
.nv-workshop-card > a { display: block; min-height: 44px; padding-top: 12px; margin-top: 12px; border-top: 1px solid #cbcbbb; font-size: 15px; }
.nv-catalog-note { margin-top: 32px; color: #54594f; font-size: 15px; }
.nv-catalog-note a { color: #6b3fa0; text-decoration: underline; text-underline-offset: 4px; }
.nv-included > div + div { margin-top: 28px; border-top: 1px solid #d8d4c8; padding-top: 28px; }
.nv-included h3 { font-size: 30px; }
.nv-included p { margin-top: 12px; }
.nv-host-trust { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1fr); gap: clamp(40px, 7vw, 100px); align-items: center; }
.nv-host-trust img { width: 100%; max-height: 470px; object-fit: cover; object-position: center 25%; border-radius: 16px; }
.nv-host-trust h2 { margin-bottom: 24px; }
.nv-host-trust a { display: inline-block; margin-top: 24px; }
.nv-shop-faq { background: #f2eee6; }
.nv-proposal .strategy-final-grid { grid-template-columns: minmax(0, 1fr) auto; gap: 60px; }
.nv-proposal p { max-width: 690px; }
.nv-workshop-card summary:focus-visible, .nv-catalog-note a:focus-visible { outline: 2px solid #6b3fa0; outline-offset: 5px; }
@media (max-width: 1050px) {
  .nv-collab-panel { grid-template-columns: 1fr; gap: 26px; }
  .nv-collab-panel > a { justify-self: start; }
  .nv-catalog-grid { gap: 16px; }
  .nv-workshop-card { padding: 25px; }
}
@media (max-width: 860px) {
  .nv-offer, .nv-workshop-hero-grid, .nv-catalog-grid, .nv-host-trust, .nv-proposal .strategy-final-grid { grid-template-columns: minmax(0,1fr); }
  .nv-offer-shop .nv-offer-media { order: 0; }
  .nv-offer-media img { min-height: 0; height: auto; aspect-ratio: 4/3; }
  .nv-offer-copy { padding: 30px; }
  .nv-offer + .nv-offer { margin-top: 24px; }
  .nv-workshop-hero figure img { aspect-ratio: 3/2; }
  .nv-workshop-hero-grid { gap: 34px; }
  .nv-workshop-card { padding: 30px; }
  .nv-workshop-card h3 { max-width: 23ch; }
  .nv-host-trust img { max-width: 420px; }
  .nv-proposal .strategy-final-grid { gap: 26px; }
}
@media (max-width: 600px) {
  .nv-offer-copy, .nv-workshop-card { padding: 26px; }
  .nv-offer-copy h2 { font-size: 34px; }
  .nv-offer-copy .button-primary, .nv-collab-panel > a, .nv-proposal .button-primary { width: 100%; max-width: 100%; }
  .nv-collab-panel { padding: 28px; }
  .nv-workshop-hero h1 { font-size: 43px; }
  .nv-workshop-hero .strategy-actions > a { width: 100%; }
}
