/* Helical.Store beam width calculator */
.beamCalc{margin:24px 0;padding:20px;border:1px solid #dce5dd;border-radius:14px;background:#fff;color:#293442;font-family:var(--font-rubik),Arial,sans-serif;box-sizing:border-box;max-width:100%}
.beamCalc *{box-sizing:border-box}.beamCalc h2{font-size:21px;margin:0 0 14px;color:#283a33;font-weight:700}.beamLayout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:center}.beamDiagram{border-radius:12px;background:#f7faf7;min-width:0;padding:12px}.beamDiagram svg{display:block;width:100%;height:auto;max-height:365px}.beamInputs{min-width:0}.beamInputs label{font-weight:600;font-size:14px;display:block;margin:0 0 7px}.beamField{width:100%;min-width:0;height:42px;border:1px solid #aebfb3;border-radius:8px;padding:8px 11px;background:white;color:#293442;font-size:17px}.beamField:focus{outline:2px solid #57987c;outline-offset:1px}.beamFieldWrap{margin:0 0 16px}.beamUnit{display:inline-flex;gap:2px;padding:3px;border-radius:9px;background:#edf3ed;border:1px solid #d3ddd3;margin:0 0 17px}.beamUnit button{border:0;border-radius:7px;padding:7px 18px;color:#4c6353;cursor:pointer;background:transparent;font-weight:700}.beamUnit button[aria-pressed=true]{background:#387a58;color:#fff;box-shadow:0 1px 3px #bbc9bd}.beamResults{background:#edf6ee;border:1px solid #d8e8d8;border-radius:10px;padding:13px 15px}.beamResults span{display:block;font-size:13px;color:#52665a;margin-bottom:4px}.beamResults strong{display:block;font-size:25px;font-weight:750;color:#246648;margin-bottom:12px}.beamResults strong:last-child{margin-bottom:0;font-size:20px}.beamNote{font-size:12px;line-height:1.55;color:#626f68;margin:13px 0 0}.beamError{color:#a32626;font-size:13px;min-height:18px;margin-top:8px}.beamMore{display:inline-block;margin-top:10px;font-size:14px;color:#246648}.beamDiagram text{font-family:var(--font-rubik),Arial,sans-serif;fill:#31433b}.beamPage{max-width:1100px;margin:0 auto;padding:22px 18px 55px}.beamPage h1{font-size:clamp(25px,3.2vw,38px);line-height:1.25;margin:15px 0 20px}.beamPageContent{max-width:880px;line-height:1.7;color:#303b34}.beamPageContent h2{font-size:23px;margin:32px 0 8px}.beamPageContent h3{font-size:18px;margin:17px 0 5px}.beamPageContent a{color:#176b4e}.beamCalc.isCompact{margin-top:24px}.beamCalc.isCompact h2{font-size:19px}.beamCalc.isCompact .beamLayout{gap:13px}.beamCalc.isCompact .beamResults strong{font-size:21px}.beamCalc.isCompact .beamResults strong:last-child{font-size:17px}
@media(max-width:720px){.beamCalc{padding:13px;margin:15px 0}.beamLayout{grid-template-columns:minmax(0,1fr);gap:13px}.beamDiagram{padding:8px}.beamDiagram svg{max-height:330px}.beamPage{padding:10px 12px 40px}.beamInputs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:12px}.beamUnit,.beamResults,.beamError{grid-column:1/-1}.beamFieldWrap{min-width:0}.beamResults{margin-top:2px}.beamCalc.isCompact .beamInputs{grid-template-columns:minmax(0,1fr)}}
@media(max-width:380px){.beamInputs{grid-template-columns:1fr}.beamFieldWrap{grid-column:1/-1}.beamDiagram svg{max-height:270px}}

/* Product card is already a split layout; use available column width. */
.beamCalc.isCompact .beamLayout{grid-template-columns:minmax(0,1fr)}
.beamCalc.isCompact .beamDiagram svg{max-height:290px}
.beamCalc.isCompact .beamInputs{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.beamCalc.isCompact .beamFieldWrap{margin-bottom:12px}

/* Match public site typography rather than browser fallback. */
.beamPage,.beamPageContent,.beamCalc,.beamCalc input,.beamCalc button{font-family:var(--font-rubik),Arial,sans-serif}
.beamPage h1,.beamPage h2,.beamPage h3,.beamCalc h2{font-family:var(--robo-bold),var(--font-rubik),Arial,sans-serif}

/* HS custom Helix configurator. Scoped: does not affect compact product calculators. */
.hcConfig{border:1px solid #dce5dd;border-radius:14px;background:#fff;padding:18px 22px 20px;color:#293442;font-family:var(--font-rubik),Arial,sans-serif;box-sizing:border-box}
.hcConfig *{box-sizing:border-box}.hcTop h2{margin:0 0 5px;font-size:22px}.hcTop p{margin:0 0 15px;color:#647469;font-size:13px}
.hcGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:22px;row-gap:12px}.hcCell{display:block;font-size:13px;font-weight:600;color:#59675e;min-width:0}
.hcCell input{display:block;width:100%;margin-top:5px;padding:9px 11px;height:43px;border:1px solid #b5c5b9;border-radius:8px;color:#27382c;background:#fff;font:700 17px var(--font-rubik),Arial,sans-serif;min-width:0}
.hcCell input:focus{outline:2px solid #498f6a;outline-offset:1px}.hcCell.hcActive input{border-color:#348a5d;background:#f3faf5}.hcCell small{display:block;margin-top:3px;min-height:13px;color:#819086;font-weight:400;font-size:11px}
.hcDiagramArea{margin-top:11px;padding-top:11px;border-top:1px solid #ebeeeb}.hcDiagram{display:block;width:100%;height:auto;max-height:278px}.hcStatus{min-height:28px;font-size:12px;color:#69766e;line-height:1.5;margin:0 0 10px}
.hcOrderButton{display:block;background:#26724e;color:#fff!important;text-decoration:none;text-align:center;border-radius:10px;padding:15px 16px;font-weight:750;font-size:16px}.hcOrderButton:hover{background:#1c5b3d}.hcOrderButton.hcDisabled{opacity:.5;pointer-events:none}.hcDisclaimer{font-size:12px;color:#6b746c;line-height:1.6;margin:12px 0 0}
@media(max-width:720px){.hcConfig{padding:13px}.hcGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hcDiagram{max-height:210px}}
@media(max-width:420px){.hcGrid{gap:8px}.hcCell input{font-size:16px}.hcOrderButton{font-size:14px}}
