/* Wayte's customer reference: real text and consistently framed style examples. */
.design-guide-dialog { width:min(1160px,calc(100vw - 28px)); background:#fffefa; }
.design-guide-content { padding:clamp(24px,4vw,48px); }
.design-guide-content > .eyebrow { padding-right:30px; }
.design-guide-tabs { position:sticky; top:-1px; z-index:3; background:#fffefa; margin:20px 0; padding:12px 0; }
.design-guide-tabs button { font-size:1rem; font-weight:600; min-height:44px; }
.design-guide-tabs button:focus-visible, .tailoring-panel summary:focus-visible { outline:3px solid #ae822e; outline-offset:-3px; }
.tailoring-guide-disclosure { margin:10px 0 0; font-size:.875rem; line-height:1.55; color:#687182; max-width:780px; }
.tailoring-panel { gap:12px; }
.tailoring-panel-heading { padding:8px 0 16px; }
.tailoring-panel-heading h3 { margin:0 0 8px; color:var(--navy); font:400 clamp(1.55rem,3vw,2rem)/1.2 Georgia,serif; }
.tailoring-panel-heading p { margin:0; color:var(--muted); font-size:1rem; line-height:1.6; }
.tailoring-panel details { border-radius:6px; }
.tailoring-panel summary { display:flex; align-items:center; gap:15px; font:400 1.3rem/1.3 Georgia,serif; padding:20px; list-style:none; }
.tailoring-panel summary::-webkit-details-marker { display:none; }
.tailoring-panel summary::after { content:'+'; margin-left:auto; color:#947021; font:400 1.5rem/1 Arial,sans-serif; }
.tailoring-panel details[open] summary::after { content:'−'; }
.tailoring-panel details[open] summary { background:#f5f1e8; }
.tailoring-number { font:600 .875rem/1.4 Arial,sans-serif; letter-spacing:.06em; color:#8b651f; }
.tailoring-panel .design-guide-detail-body { padding:clamp(16px,3vw,28px); }
.tailoring-panel .tailoring-lede { margin:0 0 20px; padding:0; font-size:1rem; line-height:1.65; max-width:78ch; }
.tailoring-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 18px; }
.tailoring-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.tailoring-grid + .tailoring-grid { margin-top:24px; }
.tailoring-card { min-width:0; }
.tailoring-photo { aspect-ratio:4/5; display:flex; align-items:center; justify-content:center; overflow:hidden; background:#f5f3ee; border-radius:4px; }
.tailoring-photo img { display:block; width:100%; height:100%; object-fit:contain; }
.tailoring-card:has(img[src*="pocket-"]) .tailoring-photo,
.tailoring-card:has(img[src*="chest-"]) .tailoring-photo,
.tailoring-card:has(img[src*="fastening-"]) .tailoring-photo,
.tailoring-card:has(img[src*="hem-"]) .tailoring-photo { aspect-ratio:4/3; }
.tailoring-card:has(img[src*="barrel-"]) .tailoring-photo,
.tailoring-card:has(img[src*="french-"]) .tailoring-photo { aspect-ratio:1; }
.tailoring-caption { padding:16px 0 0; }
.tailoring-caption h4 { margin:0 0 8px; font:400 1.3rem/1.3 Georgia,serif; color:var(--navy); overflow-wrap:anywhere; }
.tailoring-panel .tailoring-caption p { margin:0; padding:0; font-size:1rem; line-height:1.6; }
.tailoring-panel .tailoring-caption .tailoring-key { margin:12px 0 0; color:#344255; font-size:.875rem; line-height:1.55; }
.tailoring-key strong { display:block; color:#806020; font-size:.8125rem; text-transform:uppercase; letter-spacing:.06em; margin-bottom:3px; }
.tailoring-card:not(:has(img)) { border-top:2px solid #c6a04a; }
.tailoring-group { margin-top:30px; padding-top:25px; border-top:1px solid var(--line); }
.tailoring-group:first-child { margin-top:0; padding-top:0; border:0; }
.tailoring-panel .tailoring-group h3 { margin:0 0 10px; font-size:1.55rem; }
.tailoring-note { margin:24px 0 0; padding:18px 20px; border-left:3px solid #b99236; background:#f8f5ed; color:#344255; font-size:1rem; line-height:1.65; }
.tailoring-panel .guide-size-chart { margin-top:24px; }
@media(max-width:700px) {
 .tailoring-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .design-guide-content { padding:24px 16px; }
 .tailoring-panel summary { padding:17px 14px; font-size:1.15rem; }
 .tailoring-number { flex:0 0 20px; }
 .design-guide-tabs { gap:6px; }
 .design-guide-tabs button { padding:10px 12px; }
}
@media(max-width:480px) {
 .tailoring-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
 .tailoring-photo { max-height:390px; }
 .tailoring-caption h4 { font-size:1.35rem; }
 .design-guide-dialog { width:calc(100vw - 16px); max-height:94dvh; }
 .design-guide-tabs button { font-size:.875rem; }
}
.tailoring-photo { position:relative; }
.tailoring-marker { position:absolute; width:32px; height:32px; border:2px solid #e0b956; border-radius:50%; transform:translate(-50%,-50%); pointer-events:none; box-shadow:0 0 0 1px #0b172a; }
.tailoring-card:has(.tailoring-marker) .tailoring-photo { aspect-ratio:455/490; }
.tailoring-card:has(img[src*="vent-"]) .tailoring-photo { aspect-ratio:455/490; }
