.option-card{position:relative;overflow:hidden;border-radius:.5rem;cursor:pointer;border:1px solid #ddd;display:flex;align-items:flex-end}.option-card.selected{border:2px solid #007bff}.option-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1}.option-card .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7),rgba(0,0,0,0))}.option-card .card-text-content{position:relative;z-index:2;width:100%;padding-bottom:3px;text-align:center;background-color:#0000004f}.option-card h5{font-size:1.5rem;margin:0;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6)}.option-card.selected h5{font-weight:700}.form-control,.form-select{border:1px solid #ced4da!important;padding:.5rem 1rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;color:#000!important}.btn .spinner-border{vertical-align:middle;margin-right:.5rem}.loader{border:5px solid #f3f3f3;border-radius:50%;border-top:5px solid #ccc;width:50px;height:50px;animation:spin 1s linear infinite;margin:20px auto}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.accordion-button{transition:none!important;position:relative;padding:20px 3rem 20px 20px;--bs-accordion-btn-icon:none;--bs-accordion-btn-active-icon:none}.accordion-button:focus{box-shadow:none}.accordion-button:not(.collapsed){background:#f8f9fa}.accordion-button.disabled{pointer-events:none;opacity:.6}.accordion-button:after{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f078";transition:transform .2s ease-in-out;background-image:none!important;position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.accordion-button:not(.collapsed):after{transform:translateY(-50%) rotate(-180deg)}.accordion-button:before{font-family:"Font Awesome 5 Free";font-weight:400;content:"\f111";margin-right:15px;font-size:1.2em;color:#adb5bd}.accordion-item.completed .accordion-button:before{font-weight:900;content:"\f058";color:#28a745}.accordion-button .accordion-summary{margin-left:10px;color:#6c757d;font-size:.9em}.accordion-body{padding:20px}.accordion-button .accordion-title-open{display:none}.accordion-button .accordion-title-closed{display:block}.accordion-button:not(.collapsed) .accordion-title-open{display:block}.accordion-button:not(.collapsed) .accordion-title-closed{display:none}.saved-item{border:1px solid #eee;margin-bottom:20px;border-radius:.25rem}#saved-section .card-body{padding:20px;border-radius:20px}#saved-section .card-body>.d-flex:last-child{border-top:1px solid #eee;padding-top:1rem}#saved-section #saved-accordion .accordion-button:before{content:none!important;margin:0!important}#saved-section #saved-accordion .accordion-button{padding-left:20px;padding-right:3.5rem}#saved-section #saved-accordion .accordion-button .calc-total{margin-left:auto;white-space:nowrap;font-weight:600;color:#212529}#saved-section #saved-accordion .accordion-item{border:1px solid #eee;border-radius:.25rem}#saved-section #saved-accordion .accordion-item+.accordion-item{margin-top:20px}#saved-section #saved-accordion .accordion-body{padding:1rem 1.25rem;overflow-x:auto}#saved-section #saved-accordion .table th,#saved-section #saved-accordion .table td{white-space:nowrap}.delete-btn{padding:0;line-height:1;border:none;background:0 0;cursor:pointer;opacity:.9;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px}.delete-btn:before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f2ed";color:#dc3545;font-size:16px}.delete-btn:hover{opacity:1}#saved-accordion tbody tr[data-href]{cursor:pointer}#saved-accordion tbody tr[data-href]:hover{background:#f8f9fa}.tl-tooltip{position:fixed;z-index:2000;background:rgba(33,37,41,.95);color:#fff;padding:.375rem .5rem;border-radius:.375rem;font-size:.875rem;line-height:1.15;max-width:280px;box-shadow:0 4px 12px rgba(0,0,0,.15);pointer-events:none;visibility:hidden;transition:opacity .12s ease;opacity:1}p{margin-bottom:1rem}#advanced-options-toggle[aria-expanded=true] .fa-chevron-down{transform:rotate(180deg)}#advanced-options-toggle .fa-chevron-down{transition:transform .2s ease}@media (min-width:768px){#roof-form-selector .col-md-3,#roof-type-selector .col-md-3,#underlay-selector .col-md-3,#product-family-selector .col-md-3{flex:0 0 16.66%;max-width:16.66%}}.option-card{aspect-ratio:1.1!important}@media (max-width:575.98px){.option-card h5{font-size:16px}}#snowzone-suggestions.list-group{border-radius:0 !important}.modal{z-index:1055!important}.modal-backdrop{z-index:1050!important}