.lanyard-intro { padding-top: 34px; padding-bottom: 32px; border-bottom: 1px solid #223b5720; }
.lanyard-intro .breadcrumb-trail { margin-bottom: 23px; }
.lanyard-intro > div { display: flex; align-items: center; gap: 60px; }
.lanyard-intro h1 { font-size: clamp(48px, 5.5vw, 76px); font-weight: 950; letter-spacing: -.055em; line-height: 1; margin: 0; }
.lanyard-intro p { font-size: 15px; line-height: 1.6; margin: 0; }
.lanyard-included { padding: 0; margin: 24px 0 0; display: flex; flex-wrap: wrap; gap: 14px 25px; list-style: none; font-size: 12px; font-weight: 750; }
.lanyard-included li::before { content: '✓'; margin-right: 8px; color: #9c4f34; }
.lanyard-page .flyer-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.lanyard-page .flyer-steps { gap: 10px; }
.lanyard-step { scroll-margin-top: 110px; border: 1px solid #223b571a; border-radius: 8px; background: #fff; overflow: clip; }
.lanyard-step > summary { display: flex; align-items: center; gap: 15px; padding: 18px 22px; cursor: pointer; list-style: none; }
.lanyard-step > summary::-webkit-details-marker { display: none; }
.lanyard-step-number { display: grid; place-items: center; flex: 0 0 33px; height: 33px; border-radius: 50%; background: #f5f2ed; font-size: 11px; font-weight: 850; }
.lanyard-step[open] .lanyard-step-number { background: #f29a79; }
.lanyard-step > summary strong { display: block; font-size: 20px; font-weight: 850; letter-spacing: -.025em; line-height: 1.3; }
.lanyard-step > summary small { display: block; font-size: 12px; color: #647080; line-height: 1.5; margin-top: 3px; }
.lanyard-chevron { font-size: 24px; font-weight: 400; margin-left: auto; line-height: 1; }
.lanyard-step[open] .lanyard-chevron { transform: rotate(45deg); }
.lanyard-step-body { padding: 2px 22px 22px; }
.lanyard-step fieldset { min-width: 0; }
.lanyard-help { margin: 0 0 17px; font-size: 12px; line-height: 1.6; color: #647080; }
.lanyard-quantities + .lanyard-help, .lanyard-step-body > .lanyard-help { margin: 14px 0 0; }
.lanyard-quantities { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.lanyard-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.lanyard-materials { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lanyard-options .choice-surface, .lanyard-quantities .choice-surface { flex-direction: column; align-items: center; text-align: center; padding: 15px 9px 13px; gap: 5px; }
.lanyard-quantities strong { font-size: 16px; font-weight: 850; white-space: nowrap; }
.lanyard-quantities [data-quantity-price] { font-size: 11px; white-space: nowrap; color: #586575; }
.lanyard-options strong { font-size: 12px; line-height: 1.45; font-weight: 800; }
.lanyard-options small { font-size: 11px; color: #586575; margin-top: auto; }
.lanyard-options img { width: 100%; height: 83px; object-fit: contain; margin-bottom: 6px; mix-blend-mode: multiply; }
.lanyard-none, .lanyard-material-icon { display: grid; place-items: center; width: 100%; height: 83px; font-size: 36px; color: #647080; }
.lanyard-pms { display: block; scroll-margin-top: 110px; margin: 0; padding: 16px 22px; border-radius: 8px; background: #fff; font-size: 12px; font-weight: 700; }
.lanyard-pms input { display: block; width: 100%; background: #fff; border: 1px solid #223b5740; padding: 11px; border-radius: 4px; margin-top: 7px; color: #223b57; font-size: 14px; }
.lanyard-more { margin: 7px 0 0; }
.lanyard-more a { color: inherit; text-underline-offset: 3px; }
.lanyard-preview-card { margin: 0 0 18px; border-radius: 8px; background: #f5f2ed; overflow: hidden; }
#lanyard-preview { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.lanyard-page [hidden], #lanyard-preview [hidden] { display: none !important; }
.lanyard-summary { position: static; }
.lanyard-summary .summary-top h3 { margin-bottom: 18px; }
.lanyard-summary .summary-price { margin-top: 18px; padding-top: 18px; }
.lanyard-summary #selection-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px 22px; }
.lanyard-summary #selection-summary > div { display: block; border: 0; padding: 0; margin: 0; line-height: 1.4; }
.lanyard-summary #selection-summary dt { font-size: 10px; color: #c2cbd5; font-weight: 500; }
.lanyard-summary #selection-summary dd { margin: 2px 0 0; font-size: 12px; text-align: left; }
.lanyard-price-details { margin-top: 17px; font-size: 11px; }
.lanyard-price-details summary { cursor: pointer; color: #e8edf1; padding: 6px 0; }
#price-breakdown { padding-top: 8px; display: grid; gap: 9px; }
#price-breakdown > div { display: flex; justify-content: space-between; gap: 16px; }
#price-breakdown > div > span:last-child { white-space: nowrap; }
.lanyard-page summary:focus-visible { outline: 3px solid #f29a79; outline-offset: -3px; }
@media(max-width:1100px) { .lanyard-step > summary { padding: 16px; }.lanyard-step-body { padding: 2px 16px 18px; }.lanyard-quantities { grid-template-columns: repeat(3,minmax(0,1fr)); }.lanyard-intro > div { gap: 35px; } }
@media(max-width:850px) { .lanyard-page .flyer-layout { grid-template-columns: minmax(0,1fr); }.lanyard-intro > div { display: block; }.lanyard-intro p { margin-top: 15px; }.lanyard-included { gap: 9px 15px; font-size: 11px; }.lanyard-preview-card { max-width: 600px; margin-inline: auto; }.lanyard-quantities { grid-template-columns: repeat(4,minmax(0,1fr)); }.lanyard-page input[type=text] { font-size: 16px; } }
@media(max-width:580px) { .lanyard-step, .lanyard-pms { scroll-margin-top: 95px; } .lanyard-intro { padding-top: 22px; padding-bottom: 24px; }.lanyard-intro h1 { font-size: 48px; }.lanyard-intro p { font-size: 14px; }.lanyard-intro .breadcrumb-trail { margin-bottom: 18px; }.lanyard-included { margin-top: 20px; }.lanyard-step > summary strong { font-size: 18px; }.lanyard-step > summary small { font-size: 11px; }.lanyard-quantities { grid-template-columns: repeat(3,minmax(0,1fr)); }.lanyard-options { grid-template-columns: repeat(2,minmax(0,1fr)); }.lanyard-step-number { flex-basis: 30px; height: 30px; }.lanyard-summary #selection-summary { gap: 10px 15px; } }
