/* K2 Belts — original SVG design studio. Loaded only on the two belt pages. */
.belt-designer-section{padding:3.5rem 0 4.5rem;background:#faf9f5;border-bottom:1px solid #e7e1d7;}
.bd-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;}
.bd-heading h2{font-family:var(--font-display);font-size:clamp(2rem,3.6vw,3rem);margin:.5rem 0 0;line-height:1.05;}
.bd-heading>p{font-size:.95rem;line-height:1.7;max-width:380px;color:#6a6257;margin:0;}
.bd-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;}
.bd-preview-column{position:sticky;top:115px;min-width:0;}
.bd-preview{overflow:hidden;background:radial-gradient(ellipse at 50% 36%,#fffefa 0,#f2eee4 80%);border:1px solid #ded7c9;border-radius:3px;box-shadow:0 12px 35px #41371e09;}
.bd-preview-top,.bd-preview-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;}
.bd-preview-top{font-size:.58rem;letter-spacing:.2em;color:#8b7d61;}
.bd-preview-top .bd-view-label{letter-spacing:.04em;color:#857d70;}
.bd-render{display:flex;align-items:center;min-height:255px;aspect-ratio:2/1;}
.belt-design-svg{display:block;width:100%;height:auto;overflow:visible;}
.bd-render .belt-design-svg{max-height:360px;}
.bd-preview-bottom{border-top:1px solid #ddd4c44d;font-size:.67rem;color:#756b5a;padding:.65rem 1.2rem;min-height:54px;}
.bd-preview-bottom button{font:inherit;color:#5d4b2b;background:none;border:0;text-decoration:underline;text-underline-offset:4px;min-height:44px;white-space:nowrap;cursor:pointer;}
.bd-disclaimer{font-size:.72rem;line-height:1.65;color:#787166;margin:.9rem 0 1.25rem;max-width:720px;}
.bd-output-actions{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;}
.bd-output-actions button{background:#fff;border:1px solid #d9d0c0;color:#493f31;padding:.85rem 1rem;min-height:46px;font:500 .75rem var(--font-body);display:flex;justify-content:space-between;align-items:center;gap:.5rem;cursor:pointer;}
.bd-output-actions button:hover{border-color:#a17c39;background:#f7f3eb;}
.bd-quote{width:100%;margin-top:.75rem;justify-content:center;font-size:.8rem;gap:1rem;min-height:52px;}
.bd-status{font-size:.76rem;line-height:1.6;min-height:1.5rem;color:#5d502f;margin:.6rem 0;}
.bd-share-fallback{width:100%;min-width:0;box-sizing:border-box;border:1px solid #ccbfa5;padding:.65rem;}
.bd-controls{min-width:0;background:#fff;border:1px solid #e4ddcf;}
.bd-group{border:0;border-bottom:1px solid #e8e0d3;margin:0;padding:1.4rem 1.5rem 1.6rem;min-width:0;}
.bd-group:last-child{border-bottom:0;}
.bd-group legend{float:left;display:block;width:100%;font-family:var(--font-display);font-weight:600;font-size:1.2rem;padding:0;margin:0 0 1.1rem;color:#2c2923;}
.bd-group legend+*{clear:both;}
.bd-group legend span{font-family:var(--font-body);font-size:.6rem;letter-spacing:.12em;font-weight:500;color:#ac8b50;margin-right:.65rem;vertical-align:middle;}
.bd-field{margin-bottom:.9rem;min-width:0;}
.bd-field:last-child{margin-bottom:0;}
.bd-field label,.bd-label{display:block;font-size:.72rem;font-weight:600;color:#5c5346;margin-bottom:.45rem;}
.bd-field input:not([type=color]),.bd-field select{display:block;width:100%;max-width:100%;box-sizing:border-box;border:1px solid #d8d0c3;border-radius:0;background:#fff;color:#312d26;padding:.7rem .75rem;font-family:var(--font-body);font-size:.78rem;min-height:44px;}
.bd-field small{display:block;font-size:.65rem;line-height:1.6;color:#867d70;margin-top:.35rem;}
.bd-two{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;}
.bd-swatches{display:flex;gap:.35rem;flex-wrap:wrap;margin:.2rem -.2rem .7rem;}
.bd-swatches button{background:none;border:1px solid transparent;padding:8px;width:44px;height:44px;border-radius:50%;cursor:pointer;}
.bd-swatches button span{display:block;width:26px;height:26px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #0002;}
.bd-swatches button[aria-pressed=true]{border-color:#9e7935;box-shadow:0 0 0 2px #b99c6433;}
.bd-stitch{display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.bd-stitch label{margin:0;}
.bd-stitch input{width:48px;height:44px;padding:3px;background:#fff;border:1px solid #d8d0c3;cursor:pointer;}
.bd-check{display:flex;align-items:center;gap:.7rem;min-height:44px;font-size:.78rem;color:#51483a;cursor:pointer;}
.bd-check input{width:18px;height:18px;accent-color:#9e7935;}
.bd-build-note{font-size:.73rem;line-height:1.7;color:#7a7061;margin:.7rem 0 0;}
.bd-reset{background:none;border:0;padding:.5rem 0;color:#78674a;text-decoration:underline;text-underline-offset:4px;font:500 .7rem var(--font-body);min-height:44px;cursor:pointer;}
.bd-logo{padding:.8rem;background:#f5f2eb;}
.bd-logo input{font-size:.7rem!important;padding:.5rem!important;}
.bd-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem;}
.bd-preset-card{background:#fff;border:1px solid #e0d8ca;min-width:0;transition:border-color .2s,box-shadow .2s;}
.bd-preset-card:hover{border-color:#b59a68;box-shadow:0 9px 25px #5740180c;}
.bd-preset-render{background:radial-gradient(ellipse at 50% 30%,#fffdf7,#eee8dc);padding:1.2rem .5rem;display:flex;align-items:center;min-height:150px;aspect-ratio:2.1/1;box-sizing:border-box;}
.bd-preset-copy{padding:1.3rem 1.4rem 1.4rem;border-top:1px solid #eee8de;}
.bd-preset-badge{font-size:.57rem;text-transform:uppercase;letter-spacing:.13em;color:#9a7d48;}
.bd-preset-copy h3{font-family:var(--font-display);font-size:1.35rem;line-height:1.2;margin:.45rem 0 .9rem;color:#2b2721;}
.bd-preset-copy a{display:flex;justify-content:space-between;align-items:center;min-height:44px;font-size:.74rem;color:#7c5c29;text-decoration:underline;text-underline-offset:4px;}
.bd-presets>.container>.bd-disclaimer{margin-top:1.5rem;}
.belt-designer-section :is(button,input,select):focus-visible,.bd-presets a:focus-visible{outline:2px solid #997430;outline-offset:4px;}
#custom-form-heading{scroll-margin-top:120px;}
@media(max-width:1000px){.bd-layout{grid-template-columns:minmax(0,1.25fr) minmax(280px,1fr);gap:1.4rem;}.bd-group{padding:1.25rem;}.bd-render{min-height:220px;}.bd-heading>p{max-width:320px;}}
@media(max-width:760px){
 .bd-heading{display:block;margin-bottom:1.3rem;}.bd-heading>p{max-width:100%;margin-top:.8rem;font-size:.84rem;}
 .bd-layout{display:block;}.bd-preview-column{top:80px;z-index:20;background:#faf9f5;padding-bottom:.6rem;margin-bottom:1rem;}
 .bd-preview{box-shadow:0 4px 15px #41371e12;}.bd-render{min-height:0;aspect-ratio:3.2/1;}.bd-render .belt-design-svg{max-height:150px;}
 .bd-preview-top{padding:.65rem .8rem;font-size:.49rem;}.bd-preview-bottom{padding:.25rem .7rem;min-height:36px;font-size:.54rem;gap:.3rem;}.bd-preview-bottom button{min-height:44px;font-size:.6rem;}
 .bd-preview-column>.bd-disclaimer{font-size:.6rem;line-height:1.4;margin:.5rem 0;}.bd-output-actions button{padding:.6rem .7rem;min-height:44px;font-size:.67rem;}.bd-quote{min-height:44px;margin-top:.5rem;font-size:.7rem;padding:.7rem .5rem;}
 .bd-status{font-size:.65rem;margin:.35rem 0 0;min-height:0;}.bd-status:empty{display:none;}
 .bd-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;}.bd-preset-render{min-height:110px;padding:.8rem .3rem;}.bd-preset-copy{padding:.9rem;}.bd-preset-copy h3{font-size:1.1rem;}
 .belt-designer-section{padding:2rem 0 3rem;}.bd-controls{margin-top:.5rem;}.bd-group{padding:1.2rem;}
}
@media(max-width:480px){
 .bd-preset-grid{grid-template-columns:1fr;}.bd-preset-render{min-height:140px;}.bd-preset-copy h3{font-size:1.25rem;}
 .bd-heading h2{font-size:2rem;}.bd-preview-column{top:78px;}.bd-swatches{gap:.15rem;}
 .page-template-page-custom-belt .container,.page-template-page-champion-belts .container{padding-left:1.1rem;padding-right:1.1rem;}
 .page-template-page-custom-belt .k2-topbar,.page-template-page-champion-belts .k2-topbar{font-size:.49rem;gap:.65rem;letter-spacing:.02em;}
 .page-template-page-custom-belt .hero-light .lead{max-width:100%!important;}.page-template-page-custom-belt .hero-light h1{overflow-wrap:anywhere;font-size:clamp(1.85rem,7vw,2.5rem);}
 .bd-two{gap:.6rem;}.bd-preview-bottom [data-design-caption]{max-width:68%;}.bd-group legend{font-size:1.15rem;}
}
@media(prefers-reduced-motion:reduce){.bd-preset-card{transition:none;}}
