:root { --dan-guide-ivory:#f6f2ed; --dan-guide-ink:#17392f; --dan-guide-gold:#a98c5b; }

.option-head > .dan-women-guide-trigger,
.women-catalog-option .option-head > .dan-women-guide-trigger {
  appearance: none;
  border: 0;
  padding: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
  font: inherit;
  text-decoration: underline;
  text-underline-offset: .18em;
}

.dan-women-guide-modal {
  width: min(900px, calc(100vw - 32px));
  max-width: 900px;
  max-height: min(86dvh, 840px);
  border: 0;
  border-radius: 2px;
  padding: 0;
  color: var(--dan-guide-ink);
  background: var(--dan-guide-ivory);
  box-shadow: 0 26px 80px rgba(15,25,22,.28);
}

.dan-women-guide-modal::backdrop { background: rgba(12,25,22,.66); }
.dan-women-guide-modal[open] { display: block; }
.dan-women-guide-shell { display: grid; grid-template-rows: auto minmax(0,1fr); max-height: min(86dvh, 840px); }
.dan-women-guide-header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 18px; border-bottom: 1px solid #d9d1c8; padding: 20px 24px; background: #f8f4ee; }
.dan-women-guide-logo { display: block; width: 58px; height: 58px; object-fit: contain; }
.dan-women-guide-heading { min-width: 0; }
.dan-women-guide-heading > span { display: block; margin-bottom: 4px; color: #79684d; font-size: 9px; font-weight: 700; letter-spacing: .18em; }
.dan-women-guide-heading h2 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(27px,4vw,43px); font-weight: 400; letter-spacing: -.025em; line-height: 1.05; }
.dan-women-guide-close { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid #cfc8bf; border-radius: 50%; padding: 0; background: #fff; color: var(--dan-guide-ink); cursor: pointer; font-size: 28px; line-height: 1; }
.dan-women-guide-close:focus-visible, .dan-women-collar-card:focus-visible, .dan-women-size-table-wrap:focus-visible { outline: 2px solid var(--dan-guide-gold); outline-offset: 3px; }
.dan-women-guide-content { overflow: auto; overscroll-behavior: contain; padding: 26px; }
.dan-women-guide-intro { margin: 0 0 20px; color: #655f5a; line-height: 1.55; }
.dan-women-size-table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
.dan-women-size-table { width: 100%; min-width: 520px; border-collapse: collapse; background: #fff; }
.dan-women-size-table th, .dan-women-size-table td { border-bottom: 1px solid #e3ded8; padding: 12px; text-align: start; white-space: nowrap; }
.dan-women-size-table th { background: #f4efe8; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; }
.dan-women-guide-note { margin: 18px 0 0; color: #746e68; font-size: 12px; line-height: 1.55; }
.dan-women-collar-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.dan-women-collar-card { display: grid; align-content: start; gap: 8px; min-width: 0; border: 1px solid #ddd6ce; padding: 10px; background: #fff; color: var(--dan-guide-ink); cursor: pointer; text-align: start; }
.dan-women-collar-card img { display: block; width: 100%; aspect-ratio: 1.2; object-fit: contain; background: #faf8f5; }
.dan-women-collar-card strong { font-family: Georgia, "Times New Roman", serif; font-size: 17px; font-weight: 400; }
.dan-women-collar-card span { color: #655f5a; font-size: 12px; line-height: 1.45; }
.dan-women-collar-card small { color: #79684d; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.dan-women-collar-card.is-selected { outline: 2px solid var(--dan-guide-gold); outline-offset: 2px; }

@media (max-width: 720px) {
  .dan-women-guide-modal { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); }
  .dan-women-guide-shell { max-height: calc(100dvh - 20px); }
  .dan-women-guide-header { gap: 12px; padding: 14px 16px; }
  .dan-women-guide-logo { width: 44px; height: 44px; }
  .dan-women-guide-heading h2 { font-size: clamp(24px,8vw,34px); }
  .dan-women-guide-content { padding: 18px 16px 24px; }
  .dan-women-collar-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
}

@media (max-width: 380px) {
  .dan-women-guide-header { grid-template-columns: 38px minmax(0,1fr) 40px; padding-inline: 12px; }
  .dan-women-guide-logo { width: 38px; height: 38px; }
  .dan-women-guide-close { width: 40px; height: 40px; }
  .dan-women-guide-content { padding-inline: 12px; }
}
