.opening-measurements {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    background: #f7f7f7;
    border: 1px solid #d7dbe0;
    border-radius: 18px;
    overflow: hidden;
    box-sizing: border-box;
    margin-bottom: 10px;
}
.opening-measurements-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2px 18px;
    background: #d22630;
    border-bottom: 1px solid #d7dbe0;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
    color: #f7f7f7;
    box-sizing: border-box;
}
.opening-totals {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    justify-items: center;
    padding: 5px 18px;
    background: #f7f7f7;
    box-sizing: border-box;
    min-width: 0;
}
.opening-total-sqft,
.opening-total-lineal-ft {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 0;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    color: #182132;
    text-align: center;
}
.opening-total-sqft .label,
.opening-total-lineal-ft .label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #697586;
}
.opening-measurements-inner,
.opening-total-sqft,
.opening-total-lineal-ft {
    overflow-wrap: anywhere;
    word-break: break-word;
}
.estimate-calculator-original-measurements td {
    vertical-align: top;
}










.hold-left-right-buttons {
    display: none; /* Hidden by default */
}


.scroll-buttons {
    display: block;
    width: 100%;
    text-align: right;
    position: relative;
}

.scroll-buttons > .scroll-buttons-inner {
    display: inline-block;
    padding: 0 41px;
    position: relative;
    top: 47px;
    z-index: 12;
}

.scroll-buttons i {
    color: #fff;
}

.scroll-buttons span {
    display: inline-block;
    margin: 0 8px;
    padding: 7px 12px;
    cursor: pointer;
    border: 1px solid transparent;
}

.scroll-buttons span:hover {
   background:rgba(0,0,0,0.3);
    border-radius:100%;
}


table.estimate-calculator-table {
    border-collapse: separate !important;
}

table.estimate-calculator-table td {
    border-bottom: 1px solid rgba(255,255,255,0.4);
}

tr.estimate-calculator-table-header td {
    background: rgba(0,0,0,0.1);
}



span#estimate-calculator-add i {
    font-size: 20px;
}

td#estimate-calculator-section {
    text-align: left;
    opacity: 0;
    border: 0 !important;!i;!;
}

td#estimate-calculator-section + td {
    border: 0;
}

table.estimate-calculator-table tr td:last-child {
    max-width: 5px;
    min-width: 5px;
}









div#hold-estimate-calculator-table {
    padding: 22px;
    margin-top: -22px;
    margin-left: -22px;
}




table.estimate-calculator-table {
    margin-bottom: 0 !important;
}









.estimate-calculator-table {
  border-collapse: collapse;
  width: 100%;
  // table-layout: fixed;
}

.estimate-calculator-table th,
.estimate-calculator-table td {
  padding: 10px;
  border: 1px solid #ccc;
}

.estimate-calculator-table th:first-child,
.estimate-calculator-table td:first-child {
  position: sticky;
  left: 0;
  background-color: white;
  z-index: 1; /* Ensure the label stays on top */
  text-wrap: wrap;
}


table.estimate-calculator-table tr > td {
    min-width: 164px;
}

table.estimate-calculator-table tr > td:first-child {
    min-width: 255px;
    max-width: 255px;
}


		
		body.in-iframe div#hold-project-details.logged-in {
	margin-top: 100px;
}

.wall-openings-tr td:not(:first-child) {
	position: unset !important;
}



.wrap-inputs {
    position: relative;
    top: 22px;
    margin-top: -21px;
}

span#import-takeoff-btn {
    position: absolute;
    right: 6px;
    top: calc(50% - 9px);
}
span#import-takeoff-btn {
    background:rgba(255,255,255,0.8)
}
span#import-takeoff-btn i {
    font-size: 17px;
    color: #e82c2a;
    cursor: pointer;
}


.wrap-inputs input[type="text"] {
    border-radius: 52px !important;
    padding-right: 30px;
} 

.import-takeoff {
    width: 331px;
    margin: 0 auto;
}

.import-takeoff p {
    font-size: 14px;
    color: #fff;
    text-align: center;
    font-weight: 500;
}

div#hold-project-details.logged-in h3, div#hold-project-details.logged-in .project-details input {
    text-align: center !important;
}
 @media only all and (min-width: 769px) {
    div#hold-project-details.logged-in h3 {
        font-size: 28px;
        font-weight: 800;
    }
 }

.import-takeoff {
    margin-bottom: 40px;
    background: rgba(0,0,0,0.1);
    padding: 11px;
    border-radius: 0 0 17px 17px;
    position: relative;
    padding-top: 25px;
}

 @media only all and (min-width: 769px) {

	.import-takeoff {

		margin-top: -25px !important;
	}	 
 }
 
 body.in-iframe .import-takeoff {
	 margin-top: 20px !important;
	 border-radius: 18px !important;
	 
 }

.import-takeoff:after {
    content: 'NEW';
    color: #000;
    position: absolute;
    top: -15px;
    /* right: 0; */
    left: calc(50% - 25px);
    margin: 0 auto;
    background: #fff;
    border-radius: 50px;
    /* width: 45px; */
    /* height: 45px; */
    /* line-height: 44px; */
    text-align: center;
    font-weight: 800;
    padding: 6px 11px;
}















.recent-projects-item.shared-item i.fa-solid.fa-user-plus {
    float: right;
    color: #2fc7ff;
    position: relative;
    top:3px;
    left:5px;
    font-size: 16px;
}


span.hidden-info {
    display: block;
    font-size: 14px;
    position: absolute;
    left: 5px;
    right: 20%;
    top: 0;
    color: #fff;
    background: #333;
    font-weight: 200;
    line-height: 1.2;
    padding-bottom: 12px;
    padding: 12px;
    text-align: left;
    border-radius: 15px;
}

tr.ninety-corners td {
    position: relative;
}

tr.ninety-corners td:hover {
    z-index: 12;
}

tr.ninety-corners span.info-wrapper:hover + span.hidden-info {
    display: block;
}



span.info-wrapper {
    border: 2px solid #d22630;
    color: #d22630;
    border-radius: 100%;
    width: 20px;
    display: inline-block;
    height: 20px;
    font-size: 13px;
    text-align: center;
    font-weight: 800;
    line-height: 1.3;
}

span.info-wrapper i {
    transform: rotate(8deg);
}



div#structural-table-links a {
    line-height: 1;
    margin-bottom: 0;
    font-size: 13px !important;
    display: inline-block;
    border: unset !important;
    color: #d8262f;
    background: unset;
    font-weight: 700;
    padding: 5px 8px;
    margin-right: -8px;
    margin-top: 3px;
}

div#structural-table-links a:hover {
    background: #eee;
    border-radius: 2px;
}

div#structural-table-links br {
    display: none;
}

div#structural-table-links {
    margin-top: 6px;
}


span.hidden-info {
    display: none;
}





span.estimate-calculator-remove i:hover, #estimate-calculator-add:hover {
    color: #d22630;
}


button#estimator-submit:hover {
    box-shadow: inset 1px 1px 9px rgba(0,0,0,0.3);
    opacity: 0.9;
}




.page-id-3069 .fl-full-width .container {
	width: 100% !important;
}

.alert {
	font-size: 16px;
    position: relative;
    padding: .75rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: .25rem;
}

.alert-danger {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.alert-success {
    color: #0f5132;
    background-color: #d1e7dd;
    border-color: #badbcc;
}

#email-message {
	display: none;
}

#estimate-calculator-message {
	display: none;
}

.estimate-calculator {
	margin-bottom: 100px;
}

.project-details {
	background: #D73437;
	padding: 50px 150px 50px 50px;
}

.project-details * {
	box-sizing: border-box;
}

.project-details h3 {
	color: #FFFFFF;
	font-weight: bold;
	margin: 0px 0px 30px 0px;
}

.project-details input[type=text] {
	background: none;
	border: 0px;
	border-bottom: 1px solid #FFFFFF;
	border-radius: 0px;
	color: #FFFFFF;
	font-size: 16px;
	margin-bottom: 20px;
	padding: 10px 0px 10px 0px;
}

.project-details input[type=text]::placeholder {
	color: #FFFFFF;
}

.project-details input[type=text]:focus {
	background: none;
}

#estimate-calculator-add {
	cursor: pointer;
}

.estimate-calculator-table-wrapper {
	padding: 0px 100px;
}

.estimate-calculator-table {
	margin-bottom: 30px;
}

.estimate-calculator-table tr {
	border-bottom: 1px solid #D73437;
}

.estimate-calculator-table td {
	border: 0px;
	font-size: 16px;
	text-align: center;
}

.estimate-calculator-table td:first-child {
	text-align: left;
}

.estimate-calculator-section {
	background: #FFFFFF;
	color: #D73437;
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	padding: 0px 10px;
	text-transform: uppercase;
}

.estimate-calculator-section-line {
	background: #D73437;
	content: '';
	display: block;
	height: 1px;
	left: 0px;
	position: absolute;
	top: 50%;
	width: 100%;
	z-index: -1;
}

.estimate-calculator-table-header td {
	font-size: 20px;
	font-weight: bold;
}

.estimate-calculator-table select {
	background: #EBEBEB;
	border: 0px;
	padding: 5px;
	text-align: center;
	text-align-last: center;
	width: 100%;
}

.estimate-calculator-table input[type=text] {
	background: #EBEBEB;
	text-align: center;
}

.estimate-calculator-remove {
	cursor: pointer;
}

.estimate-calculator-additional-data {
	font-size: 16px;
}

.estimate-calculator-additional-data .row {
	font-weight: bold;
	margin-bottom: 30px;
}

.estimate-calculator-additional-data .row select {
    font-weight: normal;
}
.estimate-calculator-additional-data .row span {
	display: block;
	font-size: 14px;
	font-weight: normal;
}

.estimate-calculator-additional-data .row .col-md-4 .null {
	position: relative;
}

.estimate-calculator-additional-data .row .col-md-4 span .null {
	bottom: -18px;
	display: block;
	font-size: 12px;
	font-weight: bold;
	position: absolute;
	right: 15px;
	text-align: right;
	text-transform: uppercase;
}

.estimate-calculator-additional-data input[type=text] {
	background: #EBEBEB;
	font-weight: normal;
	text-align: right;
}

.estimate-calculator-additional-data select {
	background: #EBEBEB;
	border: 0px;
	padding: 5px;
	text-align: center;
	text-align-last: center;
	width: 100%;
}

.pretty .state label:before {
	background-color: #EBEBEB;
	border-color: #EBEBEB;
	height: 25px;
	width: 25px;
}

.pretty .state label:after {
	height: 25px;
	width: 25px;
}

.estimate-calculator button {
	background: #CE262D;
	border: none;
	font-size: 18px;
	font-weight: bold;
	padding: 15px;
	text-transform: uppercase;
	width: 100%;
}

.estimate-calculator-result {
	background: #F0F0F0;
	display: none;
	padding: 20px 50px;
}

.material-needed-header {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.material-needed h3 {
	font-weight: bold;
}

.material-needed-start-over {
	cursor: pointer;
	font-size: 16px;
	font-weight: bold;
}

.material-needed-start-over i {
	color: #CE262D;;
}

.material-needed table {
	margin-bottom: 20px;
}

.material-needed th {
	background: none;
}

.material-needed th, .material-needed td {
	border: 0px;
	border-bottom: 1px solid #b1b3b6;
	color: #2c2a29;
	font-size: 14px;
	text-align: center;
}

.material-needed td, .material-needed th {
	width: 150px;
}

table.wall-type-table {
	margin-bottom: 0px;
}

.wall-type-table th {
	border-bottom: 0px;
}

.material-needed th:first-child, .material-needed td:first-child {
	text-align: left;
	width: 300px;
}

.footing-volume {
	font-weight: bold;
	font-size: 16px;
}

.estimate-calculator-result-right {
	font-size: 16px;
}

.estimate-calculator-result-right-header {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.estimate-calculator-result-right-header a {
	background: #CE262D;
	color: #FFFFFF;
	display: inline-block;
	padding: 10px;
	text-align: center;
	width: 32%;
}

.estimate-calculator-result-right-header a:hover {
	color: #FFFFFF;
}

.estimate-calculator-result-right-header a.disabled {
    background: #bb2d35;
  	cursor: default;
  	pointer-events: none;
}
.estimate-calculator-result-right-header a:focus {
    color: #fff;
    opacity: 1;
}

.estimate-calculator-result-row {
	font-weight: bold;
	margin-bottom: 10px;
}

.estimate-calculator-original-measurements {
	background: #EBEBEB;
	padding: 20px;
}

.estimate-calculator-original-measurements h3 {
	font-weight: bold;
	margin: 0px 0px 10px 0px;
	padding: 0px;
}

.estimate-calculator-original-measurements td {
	font-size: 16px;
	text-align: center;
}

.estimate-calculator-original-measurements td:first-child {
	text-align: left;
}

.estimate-calculator-original-measurements table tr:first-child td {
// 	border: none;
}

.estimate-calculator-original-measurements table tr:nth-child(2) td {
	// font-weight: bold;
}

.accessories-items {
	display: none;
}

.accessories-item-amount {
	display: none;
}

.footing-notes {
	color: #D4343E;
	font-weight: bold;
	margin-top: 50px;
}

























span.material-needed-start-over {
    font-weight: 400;
    font-size: 13px;
    text-transform: uppercase;
    border: 1px solid #d22630;
    color: #d22630 !important;
    display: inline-block;
    padding: 4px 11px;
    border-radius: 6px;
}


.estimate-calculator-result-right-header a {
    padding: 8px 20px;
    line-height: 1.4;
}

.estimate-calculator-result-right-header {
    display: inline-block;
    float: right;
    width: 60%;
}

div#estimate-calculator-result {
    padding: 0;
    background: transparent;
}

div#results-body {
    background: transparent;

}

div#results-header {
    padding: 0 25px 10px 69px;
}

.estimate-calculator-result-right-header a {
    display: inline-block;
    width: unset;
}

.estimate-calculator-result-right-header {
    text-align: right;
}

.estimate-calculator-original-measurements {
    background: transparent;
}

.material-needed {
    background: #d22630;
    color: #fff !important;
    padding: 36px;
}

.material-needed * {
    color: #fff !important;
}





input[type="text"] {
	border-radius: 0 !important;
	border-bottom: 1px solid #aaa;
	background: #fafafa;
}






tr.add-feet td:first-child:after {content: '' !important;}

tr.add-feet td:after {
    content: "'";
}
.estimate-calculator-table tr {
    border-bottom: 1px solid #a4a4a4;
}

a#start-over {
	color: #d22630;
	display: inline-block;
	cursor: pointer;
}
a#start-over i {
						 -webkit-transition: all 150ms linear;
					-moz-transition: all 150ms linear;
					-o-transition: all 150ms linear;
					-ms-transition: all 150ms linear;
					transition: all 150ms linear; 	
}
a#start-over:hover i {
						transform: rotate(180deg);
						 -webkit-transition: all 150ms linear;
					-moz-transition: all 150ms linear;
					-o-transition: all 150ms linear;
					-ms-transition: all 150ms linear;
					transition: all 150ms linear; 	
}



div#hold-additional-details {
    margin-top: 62px;
}
div#hold-additional-details h3 {
	margin-top: 0;
	font-weight: 700;
}

.project-details input[type=text] {
    border-color: rgba(255,255,255,0.2);
}

.project-details input[type=text] {
    border-color: rgba(255,255,255,0.2);
}

.project-details input[type="text"] {
    width: 45%;
    display: inline-block !important;
    margin-right: 3%;
}

.project-details {
    padding-right: 50px;
}
.project-details .col-md-12 > input:first-of-type {
    width: 100%;
}







button#estimator-submit {
    background: url('assets/img/accessories-button.jpg') 50% 50% no-repeat;
    margin-top: 25px;
    background-size: cover;
}



div#accessories-header img {
    filter: brightness(0) invert(1);
}

div#accessories-header {
    background: #d22730;
    text-align: center;
    padding: 8px 8px;
    padding-left: calc(12% + 15px);
    padding-right: calc(12% + 15px);
    position: relative;
    padding-bottom: 21px;
}

div#accessories-header + .row {
    background: #d22730;
    display: block;
    margin: 0;
    color: #fff;
    padding-left: 12%;
    padding-right: 12%;
    padding-bottom: 20px;
}

div#accessories-header img {
    width: 100% !important;
}


select#accessories {
    color: #000;
    padding-right: 4px;
}

.accessories-items {
    padding: 26px 15%;
    margin-bottom: -35px;
}





.estimate-calculator-additional-data {
	line-height: 1.2;
}

div.estimate-calculator-additional-data input[type=text], div.estimate-calculator-additional-data select {
    text-align: left;
    margin-top: 6px;
}
div#hold-accessories-inputs .accessories-item select {
    margin-top: 0;
}
div.estimate-calculator-additional-data span {
	padding-left: 8px;
	padding-right: 8px;
	padding-top: 4px;
}

table.estimate-calculator-table tr:not(:first-child) > td:first-child {
    font-weight: 600;
}
table.estimate-calculator-table tr:nth-child(2) > td:first-child {
    font-weight: 800;
}



/* totals */
table.blocks-table tr > td:last-child {
    background: rgba(0,0,0,0.051);
    font-weight: 600;
}
td.no-after:after {content: '' !important;}






/* updated table styling */

table.blocks-table tr > td:last-child {
    background: rgba(0,0,0,0.051);
    font-weight: 600;
}

td.no-after:after {content: '' !important;}

div#material-needed-body table tr:nth-child(even) td:not(:last-child) {
    background: rgba(0,0,0,0.03);
}

.material-needed tr td {
    border: 0;
}
div#material-needed-body table.blocks-table tr td:last-child, .material-needed tr td.total-blocks {
    border-bottom:1px solid rgba(0,0,0,0.1);
}
div#material-needed-body table tr td {
    font-size:14px;
	line-height: 1.1;
}

div#material-needed-body table tr td:first-child {
    font-weight:500;
}

.estimate-calculator-original-measurements td {
    font-size: 14px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.estimate-calculator-original-measurements tr td:first-child {
    font-weight: 500;
}



.accessories-table td:last-child {
	text-align: center;
}






.estimate-calculator-result-right-header {
    float: none;
    text-align: left;
    margin: 0;
    width: calc(50% - 15px);
    display: inline-block;
    border-bottom: 0;
    border-radius: 0;
    padding-bottom: 0 !important;
    margin-left: 0;
    margin-bottom: 0;
    /* border-bottom: 1px solid rgba(255,255,255,0.3); */
}

div#results-header {
    padding-left: 0;
    padding-bottom: 0;
    padding: 0;
    z-index: 2;
    position: relative;
}

.estimate-calculator-result-right-header a {
    color: #444;
    background: transparent;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    font-size: 13px;
    font-weight: 200;
    margin: 0 !important;
    background: #D22630;
    padding-top: 16px;
    border: 0;
    padding-bottom: 16px;
    border-radius: 100%;
    display: inline-block;
    width: 108px;
    height: 96px;
    margin-left: 16px !important;
    vertical-align: top;
    font-size: 10px;
}

a {}

.estimate-calculator-result-right-header a i {
    display: block;
    font-size: 25px;
    color: #fff;
    margin-bottom: 7px;
}

.estimate-calculator-result-right-header {
    margin-bottom: -69px;
    z-index: 3;
    position: relative;
}

.material-needed {
    padding-top: 73px;
    border-radius: 7px;
}

div#material-needed-body h3 {
    margin-bottom: 4px;
    font-size: 14px;
    font-weight: 300;
}

div#material-needed-body h4 {
    margin-top: 0 !important;
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 35px;
}

div#material-needed-body table {
    background: #fff;
}

div#material-needed-body table tr *, div#material-needed-body table th {
    color: #444 !important;
}

.estimate-calculator-result-right-header a:hover {
    background: #D22630;
    opacity: 1;
    box-shadow: inset 2px 3px 1px rgba(0,0,0,0.1);
}

table.wall-type-table th {
    font-size: 14px;
}

.estimate-calculator-result-right-header a:hover i {
    transform: scale(1.1);
}


div#email-message {
    position: relative;
    top: -96px;
    width: 400px;
    max-width: 100%;
}

.note {
	line-height: 1.2;
	display: block;
}

.save-project {
	display: none;
	margin-bottom: 30px;
}

.save-project-url {
	border: 1px dashed #ffffff;
	cursor: pointer;
	display: inline-block;
	margin-bottom: 10px;
	padding: 10px;
}

.save-project-url .fa-copy {
	cursor: pointer;
}

#link-copied {
	display: none;
}

.recent-projects {
	margin-bottom: 20px;
}

.recent-projects-items {
	color: #ffffff;
	margin-bottom: 30px;
}

.recent-projects-item {
	border-bottom: 1px solid rgba(255,255,255,0.7);
	margin-bottom: 10px;
	padding: 10px 0px;
	position: relative;
}

.recent-projects-item a {
	color: #ffffff;
	display: inline-block;
	font-size: 17px;
	font-weight: bold;
	margin-right: 5px;
}

.recent-projects-item a:hover {
	color: #ffffff;
}

.recent-projects-item .fa-trash {
	cursor: pointer;
	position: absolute;
	right: 0px;
	top: 17px;
}

div#results-notice {
    border-radius: 4px;
    background: #2c2a29;
    padding: 13px;
    color: #fff;
    margin-bottom: 41px;
    text-align: center;
    border: 3px dashed #d22630;
}

div#results-notice h3 {
    margin: 0 0 8px 0;
    font-size: 16px;
    color: #fff;
}

div#results-notice p {
    color: #fff;
    font-size: 14px;
    font-weight: 200;
}

i.fa.fa-close {
    position: absolute;
    right:20px;

}

i.fas.fa-info-circle {
    position: absolute;
    left: 40px;
    font-size:32px;
    top:32px;
    border-radius: 100%;
}



div#results-notice {
    width: unset !important;
    display: inline-block;
    padding: 20px 66px 20px 104px;
    position: relative;
    text-align: left;
}
div#results-notice p {
    margin-bottom: 0px;
    line-height: 1.2
}

div#results-notice h3 {
    margin-bottom: 6px;
}

@media (min-width: 769px) {
	div#estimate-calculator-result {

		margin-left: 6.7%;
	}
}
 





div#estimate-calculator-history {
	display: none;
    background: #D73437;
    padding: 50px;
    width: 790px;
    margin: 0 auto;
    color: #fff;
}

div#estimate-calculator-history {
    background-image: url(assets/img/contact-form-bg.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: scroll;
    background-size: cover;
}

div#estimate-calculator-history h2 {
    color: #fff;
    font-weight: 900;
}

div#estimate-calculator-history div {
    border-bottom: 1px solid rgba(255,255,255,0.9);
}

span#all-projects-back {
	cursor: pointer;
    font-size: 16px;
    font-weight: bold;
}

div#estimate-calculator-history div {
    background: #fff;
    border-radius: 3px;
    padding: 4px 12px 4px 12px;
}

div#estimate-calculator-history div a,div#estimate-calculator-history div {
    color: #444 !important;
}

div#estimate-calculator-history div i.fa-trash, div#estimate-calculator-history div i.fa-solid.fa-user-plus {
    right: 12px;
    border-left: 1px solid #aaa;
    padding-left: 9px;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-top: -5px;
}
div#estimate-calculator-history div a:hover, div#estimate-calculator-history div i:hover {
	color: #d22630 !important;
}

div#estimate-calculator-history .recent-projects-item .project-buttons-right {
    position: absolute;
    right: 0;
    top: 1px;
    line-height: 0;

}

div#estimate-calculator-history .recent-projects-item .project-buttons-right {
	opacity: 0.6;
}
div#estimate-calculator-history .recent-projects-item:hover .project-buttons-right {
	opacity: 1;
}

div#estimate-calculator-history .recent-projects-item .project-buttons-right i {
    font-size: 13px;
}
div#estimate-calculator-history .recent-projects-item .project-buttons-right .fa-trash {
    position: unset;
    top:  unset;
    right: unset;
    margin:0 !important;
}







div#log-in-notice {
    color: #fff;
    font-size: 16px;
}

div#log-in-notice strong {
    display: inline-block;
    border-bottom: 2px solid #fff;
}
div#log-in-notice strong:hover {
	opacity: 0.8;
}
.fa-close {
	cursor: pointer;
}


body .recent-projects-items a {
    font-size: 15px;
    font-weight: 500;
}

.recent-projects-items a strong {
    font-weight: 300;
}

.recent-projects-item {
    padding: 6px 0;
}

.recent-projects-item .fa-trash {
    top: 11px;
}

span#view-all-projects {
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	display: inline-block;
	cursor: pointer;
	margin-top: 9px;
}
span#view-all-projects:hover {
	opacity: 0.8;
}

div.center {	text-align: center;	}

.project-folders {
	background: none !important;
	border: none !important;
	color: #FFFFFF !important;
	margin-bottom: 10px;
	padding: 0px !important;
}

.project-folder {
	background: none !important;
	border: none !important;
	display: inline-block;
	padding: 0px !important;
	position: relative;
}

.project-folder span {
	background: #C12F31;
	border-radius: 5px;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block;
	margin-right: 5px;
	padding: 10px;
}

.project-folder em {
	color: #FFFFFF;
}

.project-folder i {
	color: #000000;
	cursor: pointer;
	display: none;
	position: absolute;
	right: 0px;
	top: 0px;
}

.project-folder:hover span, .project-folder.active span {
	background: #FFFFFF;
	color: #C12F31;
}

.project-folder:hover em, .project-folder.active em {
	color: #FF0000;
}

.project-folder:hover i {
	display: block;
}

div#estimate-calculator-history div.project-folder i:hover {
	color: #000000 !important;
}

.project-folders .fa-plus {
	color: #FFFFFF;
	cursor: pointer;
}

#estimate-calculator-history .project-folders .fa-plus:hover {
	color: #FFFFFF !important;
}

.swal2-popup {
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.swal2-input {
	margin: 10px 0px 0px 0px !important;
}

#recent-projects-item {
	background: none !important;
	border: none !important;
	padding: 0px !important;
}

.project-folder-select {
	border: none;
	border-bottom: 1px solid #000000;
	margin-right: 30px;
	min-width: 100px;
}

.project-empty {
	color: #FFFFFF;
}


.new-feature-notice p {
    color: #fff;
    padding-left: 55px;
    font-size: 14px;
    margin: 0 !important;
}

.new-feature-notice span {
    position: absolute;
    left: 8px;
    font-weight: 800 !important;
    line-height: 1;
}

.new-feature-notice {background: #2c2a29;color: #fff;display: block;padding: 12px;width: 62%;margin-left: auto;margin-top: 28px;margin-right: auto;border-radius: 7px;position: relative;}








.project-details {
    background: transparent;
}

div#estimator {margin-top: -190px;}

html body.page-id-3158 div#bannerContent {
    text-align: center;
    padding: 0;
    width: 966px;
	max-width: 100%;
    margin: 0 auto;
    margin-bottom: 153px;
    margin-top: 100px;
	padding: 0 !important;
}






html body.page-id-3158 div#bannerContent p {
    margin-right: 0 !important;
}





div#hold-project-details.logged-out {
    width: 695px;
	max-width: 100%;
    margin: 0 auto;
    background: #d22630 url(assets/img/black-s-overlay.png?v3) 0 0 no-repeat;
    background-size: 95% auto;
}









div#hold-project-details.logged-in {
    width: 695px;
	max-width: 100%;
    margin: 0 auto;
    background: #ffffff;
    background-size: 95% auto;
	color: #333;
}




div#hold-project-details.logged-in > .row > .col-md-6:first-child {
	background: url(assets/img/white-s-overlay.png?v3) 0 0 no-repeat;
	background-size: cover;
	background-position: 0 0;
}

div#hold-project-details.logged-in > .row > .col-md-6:first-child:after {
    content: 'or';
    width: 50px;
    height: 50px;
    background: #fff;
    border-radius: 100%;
    position: absolute;
    top: calc(50% - 25px);
    right: -25px;
    z-index: 4;
    text-align: center;
    font-size: 21px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 2.4;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
}

div#hold-project-details.logged-in > .row > .col-md-6:first-child {
    position: relative;
}





div#hold-project-details.logged-in h3 {
	color: #da302e;
}
div#hold-project-details.logged-in .project-details input, div#hold-project-details.logged-in .project-details input::placeholder {
	color: #333;
}
div#hold-project-details.logged-in .project-details input {	 border-color: rgba(0,0,0,0.4);	}

div#hold-project-details.logged-in {
    border-radius: 2px 2px 99px 2px!important;
}


div#pageBanner + div {
    position: relative;
    z-index: 3;
}





div#project-details-history {
    background: #e82c2a;
	
	
	background: url(assets/img/red-right-bg.png?v3) 0 0 no-repeat;
	background-size: cover;
	background-position: 100% 100%;	
    /* min-height: 500px; */
    margin-top: -30px;
    margin-bottom: -30px;
}





#hold-project-details input[name="project_name"] {
    width: 100%;
    font-size: 18px;
    font-weight: 500;
    border-width: 2px;
}









div#hold-project-details.logged-in {
    width: 1192px;
    max-width: 100%;
	position: relative;
	z-index: 6;
}

div#hold-project-details.logged-in .row {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin: 0;
    flex-direction: row;
    align-items: stretch;
}

div#hold-project-details.logged-in .row .col-md-6 {
    position: relative;
    -webkit-flex: 1 1 100%;
    -moz-flex: 1 1 100%;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    width: auto !important;
    min-width: 0;
    float: unset !important;
    /* justify-content: center; */
    /* align-self: center; */
     /* new */
    display: flex;             /* nested flex container */
    flex-direction: column;    /* vertical alignment of flex items */
    justify-content: center;   /* center flex items vertically */
    align-items: center;       /* center flex items horizontally */
}

div#hold-project-details.logged-in div#project-details-history {
}

div#hold-project-details.logged-in div#project-details-history h4 {
    color: #fff !important;
    font-weight: 600;
    font-size:22px;
    text-align: center;
}



div#hold-project-details.logged-in div#project-details-history {
    /* padding-top: 100px; */
    /* padding-bottom: 100px; */
}

div#hold-project-details.logged-in div#project-details-history .row {
    justify-content: center;
    align-self: center;
    display: flex;
}

div#hold-project-details.logged-in div#hold-project-details {
    z-index: 12;
    position: relative;
}

div#hold-project-details.logged-in .recent-projects-items > .recent-projects-item {
    border: unset;
    margin: 10px 0;
    background: #fff;
    color: #444;
    padding: 8px 16px;
}

div#hold-project-details.logged-in .recent-projects-items {
    width: 80%;
    margin: 0 auto;
}

div#hold-project-details.logged-in .recent-projects-items > .recent-projects-item a {
    color: #444;
    font-weight: 600;
}
div#hold-project-details.logged-in .recent-projects-items > .recent-projects-item a:hover {
	color: #e82c2a;
}

div#hold-project-details.logged-in .recent-projects-item .fa-trash {
    right: 16px;
}

div#hold-project-details.logged-in .project-details {
    padding-top: 105px;
    padding-bottom: 105px;
}

div#hold-project-details.logged-in {
    box-shadow: 0 0 21px rgba(0,0,0,0.2);
    border-radius: 2px;
}




	.empty-notice {
		width: 80%;
		margin: 0 auto;
		padding: 50px;
		border-radius: 22px;
		border: 4px dashed rgba(255,255,255,0.4);
		margin-top: 28px;
	}

	.empty-notice p {
		color: #fff;
		font-size: 18px;
		text-align: center;
		opacity: 0.8;
		margin: 0;
	}






/* details form */


input#submit-details {
    background: url('assets/img/black-button-submit.png') 0 0;
    font-size: 22px;
    color: #fff !important;
    text-align: center;
    text-transform: uppercase;
    display: block;
    border: 0;
    width: 100%;
    border-radius: 0;
    font-weight: 700;
    line-height: 59px;
    background-size: cover;
    margin-top: 16px;
}

input#submit-details {
    cursor: pointer;
}

input#submit-details:hover {
    opacity: 0.9;
    position: relative;
    left: 2px;
    top: 2px;
}

.project-details .col-md-12 > input:first-of-type {
    border-bottom: 1px solid #fff;
    font-size: 20px;
    font-weight: 500;
}









.project-details {
    width: 407px;
	max-width: 100%;
    margin: 0 auto;
    padding-top:90px;
    padding-bottom: 90px;
}






div#hold-estimator-form {
    /* AI module: full width so the plan canvas has room (was a centered 1484px column). */
    width: 100%;
	max-width: 100%;
    margin: 0 auto;
}


		@media only all and (min-width: 960px) and (max-width: 1390px) {							
		
			.estimate-calculator-table-wrapper {    padding-left: 0; padding-right: 0;  }
		
		}
		@media only all and (min-width: 769px) and (max-width: 959px) {			
			.estimate-calculator-table-wrapper { padding-left: 0; padding-right: 0; }
		}
		@media only all and (min-width: 481px) and (max-width: 768px) {						}  
		@media only all and (max-width: 480px) {														}	









div#form-start-over {
    position: relative;
    float: right;
    line-height: 20px;
    padding: 12px;
    vertical-align: top;
    cursor: pointer;
    display: block;
}
div#form-start-over  {
    font-size: 16px;
    padding-top: 6px;
    font-weight: 500;
    color: #e82c2a;
}

div#estimator-form-title {

    margin-top: 69px;
    position: relative;
    background: #fff;
    padding:22px 42px;
    margin-bottom: 22px;
    
    box-shadow: 2px 2px 8px rgba(0,0,0,0.1)
}

div#estimator-form-title:after {
    background: #e82c2a;
    position: absolute;
    left:20px;
    right: 20px;
    bottom: -3px;
    height:3px;
    display: block;
    content:'';
}

div#estimator-form-title h2 {
    margin: 0;
    font-size:22px;
    font-weight: 600;
}









p.warning input {
    border-color: #e82c2a !important;
					 -webkit-transition: all 200ms linear;
					-moz-transition: all 200ms linear;
					-o-transition: all 200ms linear;
					-ms-transition: all 200ms linear;
					transition: all 200ms linear; 	

}


input#submit-details:disabled {
	opacity: 0.9;
	cursor: no-drop;
}


button.swal2-confirm.swal2-styled {
    background: #d12523;
    font-size: 18px;
    display: block !important;
    width: 100% !important;
}

.swal2-actions {
    width: 100%;
}



div#hold-additional-details {
    margin: 0;
    padding-left: 20px;
    padding-right: 20px;
}



.hold-add-additional-section * {
    cursor: pointer;
}

div#damp-proofing-add:hover i, div#gable-add:hover i, .openings-modal-trigger:hover i, #slab-add:hover i {
    color: #d22630;
}


div#accessories-header img {
    width: 285px !important;
}

div#accessories-header {
    padding: 4px;
}


div#wrap-plan-pdf {
    background: #fff;
    padding: 18px;
    text-align: center !important;
    width: 275px;
    font-weight: 600;
    margin: 0 auto;
    border-top: 3px solid #d22930;
    border-bottom: 3px solid #d22930;
}

div#wrap-plan-pdf img {
    width: 200px;
    margin: 0 auto;
}

div#wrap-plan-pdf input {
    margin-top: 16px;
    font-weight: 200;
}



div#form-start-over a {
    background: #d22630;
    color: #fff;
    display: inline-block;
    padding: 8px 14px;
    border-radius: 3px;
    position: relative;
    top: -8px;
}

div#form-start-over > span {
    position: relative;
    top: -7px;
    opacity: 0.2 !important;
    font-size: 17px;
}





.calculate-windows-doors-button {
    background: #d22730;
    color: #fff;
    font-weight: 600;
    font-size: 16px !important;
    cursor: pointer;
    margin:12px 0 0 0;
}









/* Openings Modal */

.openings-modal {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255,255,255,0.90);
	z-index: 65777;
}
table.estimate-calculator-table {
    position: relative;
}

.openings-modal .modal-inner {
	overflow: hidden;
	position: fixed;
	max-height: 75vh;
	margin-top: 86px;
	overflow: scroll;
	background: #fafafa;
	border: 1px solid #d22730;
	width: 950px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 9px;
	box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.3);
	background-image: url(assets/img/overlay-light.png);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	/* background-attachment: fixed; */
	background-size: cover;
}

.openings-modal .modal-inner div .inputs input {
    width: 50px
}
.modal-inner {
    color: #000;
}
.openings-modal input[type='text'] {
    color: #000 !important;
}
.calculate-windows-doors-button {
    padding: 9px 12px !important;
    border-radius: 0 0 9px 9px;
}
.calculate-windows-doors-button:hover {
	background: #000;
}

.openings-modal input[class*='-total'] {
    background: transparent !important;
    border: 0;
    border-bottom: 1px solid #ccc;
    width: 144px;
    margin: 0 auto;
}

.door-new {}

.inputs div {
    border-bottom: 1px solid #aaa;
    padding: 11px;
}

.inputs input {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #aaa;
    text-align: center;
}

.inputs {
    font-weight: 500;
}

.openings-modal [class*='-new'] {
    margin-top: 20px;
}

.openings-modal [class*='-new'] + br {
    display: none;
}







.openings-modal input.window-total {
    display: inline-block;
    margin-left: 16px;
    width: 86px;
}

.hold-individual-windows-doors.row h3 {
    color: #d22730;
    font-weight: 900;
    background: #eee;
    margin: 0;
    padding: 8px 4px;
    margin-bottom: 13px;
    border-radius: 9px 9px 0 0;
    margin-top: 12px;
}

.hold-individual-windows-doors.row .col-md-6 {
    padding-left: 29px !important;
    padding-right: 35px;
}


div#estimate-calculator-result {
    margin-top: 100px;
}

button#estimator-submit:active, button#estimator-submit:focus {
    border: 0 !important;
}



.remove-row {	
// display: none !important;	
}


.openings-modal-trigger {
    position: relative;
    right: 5px;
    top: -55px;
    margin-bottom: -55px;
}

.openings-modal-trigger i {
    font-size: 32px;
}

.window-new, .door-new {
    display: inline-block;
    cursor: pointer;
    margin-bottom: 57px;
}






.hold-individual-windows-doors.row .inputs span {
    display: inline-block;
    vertical-align: top;
}

.hold-individual-windows-doors.row .inputs span small {
    font-size: 16px;
    display: block;
    line-height: 1;
    text-align: center !important;
}






p.instructions {
    width: 80%;
    margin: 0 auto;
    font-weight: 500;
}

input.column-total {
    border-bottom: 2px solid #000 !important;
    font-weight: 800;
    color: #000;
}





.openings-modal.dont-hide {
    position: unset !important;
    display: block !important;
}

.openings-modal.dont-hide .modal-inner {
    position: unset !important;
    width: unset !important;
    transform: unset !important;
}

.openings-modal.dont-hide .col-md-6.modal-column {
    padding: 0 !important;
}

.building-plans-file {
	text-align: center;
}







.combined-totals span {
    font-size: 14px;
}

.combined-totals span {
    display: block !important;
}



.combined-totals > div {
    display: inline-block;
    width: 50%;
    float: left;
}

.combined-totals {
    position: relative;
    width: 100%;
    overflow: auto;
}











.openings-modal input[class*='-total'] {
    background: #fff !important;
}

.openings-modal input.column-total {
    display: inline-block;
    margin-left: 16px;
    width: 86px;
    font-weight: 400 !important;
    color: #000;
    /* border-radius: 3px !important; */
}

.hold-individual-windows-doors.row h3 {
        color: #d22730;
        font-weight: 900;
        background: transparent;
        margin: 0;
        padding: 8px 4px;
        margin-bottom: 13px;
        border-radius: 9px;
        margin-top: 12px;
        box-shadow: 0 0 0;
        padding-bottom: 0;
        margin-bottom: 0 !important;
}

p.instructions {
    margin-bottom: 17px;
}

td .openings-modal input[name*='_t'], td .openings-modal input[name*='_lineal'] {
    background: transparent !important;
    border: 0;
}






.additional-details-section .row {
    position: relative;
}

.additional-details-section .remove-this-row {
    position: absolute;
    right: -5px;
    top: 12px;
}


.additional-item-rows > div:first-child .remove-this-row {
    display: none;
}

.additional-details-section .row {
    margin-bottom: 8px !important;
}











.additional-details-section {
    background: #fff;
    border: 3px solid #eee;
    padding: 22px 7px;
    padding-bottom: 0;
    border-radius: 9px;
    margin-bottom: 30px !important;
}

div#hold-additional-footing .row {
    margin-bottom: 0;
}


.hold-add-additional-section {
    text-align: center;
}

.hold-add-additional-section {
    padding: 7px;
    background: #fff;
    width: 103px;
    margin: 0 auto;
    border: 2px solid #eee;
    border-radius: 12px;
    position: relative;
    margin-bottom: -18px;
}

i.fa-solid.fa-circle-minus.remove-row {
    cursor: pointer;
    position: relative;
    right:-15px;
    background: #fff;
    padding: 7px;
    top:10px;
    border-radius:100%;
}

.additional-details-section i.remove-row {
    color: #000;
}
.additional-details-section i.remove-row:hover {
    color: #d22630;
}




.row.single-gable-row {
    border-bottom: 1px solid rgba(0,0,0,0.08);
    padding-bottom: 10px;
}



.additional-details-section input[type=text] {
    background: transparent !important;
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,0.3);
    color: #fff;
}
.additional-details-section h4 {
	color: #fff;
	font-weight: 900;
	font-size: 21px;
}
.additional-details-section input + span, .additional-details-section input + label {	text-align: right;	}
.additional-details-section select {
    background: transparent !important;
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,0.3);
    color: #fff;
}

.additional-details-section {
    background: #d22630;
    color: #fff;
}


.hold-add-additional-section {
    color: #333;
}








.accessories-items {
    padding-left: 15px;
    padding-right: 15px;
}

.accessories-item {
    border-bottom: 1px solid rgba(0,0,0,0.1);
    padding-top: 12px;
}

.estimate-calculator-additional-data .row {
    margin-bottom: 13px;
}





.accessories-items {
    padding-left: 15px;
    padding-right: 15px;
}

.accessories-item {
    border-bottom: 1px solid rgba(0,0,0,0.1);
    padding-top: 12px;
}

.estimate-calculator-additional-data .row {
    margin-bottom: 13px;
}

div#hold-additional-pdf p {
    color: #fff;
    font-size: 14px;
}

.building-plans-file {
    text-align: left;
}

.building-plans-file {
    background: transparent;
    display: inline-block;
    padding: 13px;
    border-radius: 7px;
    box-shadow: inset 2px 2px 3px rgba(0,0,0,0.2);
    margin-bottom: 40px;
}

a#building-plans-file-remove {
    color: #d22630;
    background: #fff;
    padding: 2px 14px;
    line-height: 1;
}

div#wrap-plan-pdf {
    border: 0;
    padding: 6px;
}

div#building-plans-add {
    width: 300px;
}

input#plan_pdf {
    margin-top: 0 !important;
}

.building-plans-file a[href*='.pdf'] {
    color: #fff;
}








.estimate-calculator-additional-data {
    margin-top: 62px !important;
}




.building-plans-file {
    box-shadow: unset;
    font-size: 16px;
    border-bottom: 1px solid rgba(255,255,255,0.3);
    border-radius: 0;
    display: block;
}

a#building-plans-file-remove {
    float: right;
    margin-right: -56px;
    padding: 9px;
    border-radius: 55px;
    color: #000;
}

a#building-plans-file-remove:hover {
    opacity: 1;
    color: #d22630;
}










div[id*='-rows'] > div.row:nth-child(even) {
    background: rgba(0,0,0,0.07);
}












/* new design override */


div#hold-submit-button {
    margin-top: 86px;
}

table.estimate-calculator-table {
    color: #fff;
    background: #d22630;
    border-radius: 12px !important;
    box-shadow: -1px -1px 14px rgba(0,0,0,0.4);
    /* overflow: hidden; */
}

.estimate-calculator-table tr {
    border-bottom: 1px solid rgba(255,255,255,0.2);
}
.estimate-calculator-table tbody tr > td:first-child {
   border-bottom:1px solid #eee !important;
   text-align: right;
   padding-right: 26px;
}


table.estimate-calculator-table input[type='text'], table.estimate-calculator-table select {
    background: transparent;
    color: #fff;
    border: 0;
    border-bottom: 1px solid #fff;

}

a#start-over {
    background: #fff;
    margin: 0;
    margin-top: 3px;
    margin-left: -7px;
    position: relative;
    top: -1px;
    border-radius: 7px;
    padding: 7px;
}

a#start-over:hover {
    opacity: 1;
    background: #fafafa;
}

span.estimate-calculator-section {
    background: unset;
    color: #fff;
    z-index: 1;
}

.estimate-calculator-section-line {
    background: #fff !important;
}

button#estimator-submit {
    width: 400px;
    margin: 0 auto;
    display: block;
    font-size: 21px;
    padding: 34px;
}

table.estimate-calculator-table > tbody > tr > td:first-child {
    background: #fff !important;
    color: #000;
}
table.estimate-calculator-table > tbody > tr:first-child > td:nth-child(1) {border-radius: 12px 30px 0 0;}
table.estimate-calculator-table > tbody > tr:last-child > td:nth-child(1) {
border-radius:0 0 30px 11px;
}

table.estimate-calculator-table > tbody > tr:first-child > td:last-child {
}

.estimate-calculator-table .openings-modal-trigger i {
    color: #fff !important;
    font-size: 24px;
}

table.estimate-calculator-table > tbody > tr:first-child > td:nth-child(1) {
    border: 0;
}

#estimate-calculator-add:hover i {
    color: #fff;
    transform: rotate(178deg);
    -webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
}

span#estimate-calculator-add i {
	transform: unset;
    -webkit-transition: all 200ms linear;
    -moz-transition: all 200ms linear;
    -o-transition: all 200ms linear;
    -ms-transition: all 200ms linear;
    transition: all 200ms linear;
}

div#estimator-form-title {
    background: transparent;
    margin-top: 120px;
    padding: 0 46px;
    box-shadow: 0 0 0;
}

div#estimator-form-title:after {
    display: none;
}

span.estimate-calculator-remove:hover i {
    color: #fff;
}

div#hold-accessories-inputs {
    margin-top: 44px;
}






div#material-needed-body > h3 {
    font-weight: 200;
    font-size: 16px;
    margin-bottom: 1px;
}

div#material-needed-body > h3 + h3 {
    font-size: 25px;
    margin-top: 0;
    margin-bottom: 9px;
    font-weight: 800;
}










div#additional-project-details-heading {
    text-align: center;
    background: #d22630;
    color: #fff;
    padding: 18px;
    margin-left: -12px;
    margin-right: -20px;
    margin-bottom: 27px;
	border-radius: 8px;
}

div#additional-project-details-heading h3 {
    color: #fff;
    line-height: 1.2;
    margin: 0;
}

div#hold-accessories-inputs {
    margin-top: 0;
}

.accessories-items {
    padding-top: 0;
}






table.blocks-table tr > td:last-child, table.blocks-table tr > th:last-child {
    background: rgba(0,0,0,0.051);
}




div#material-needed-body table tr td em {
    position: absolute;
    background: #d22630;
    padding: 0px 6px;
    /* position: relative; */
    display: inline-block;
    right: 29px;
    margin: 3px 0;
    font-size: 12px;
    text-align: center;
    right: 0 !important;
    padding: 0 6px 0 0 !important;
    text-align: right !important;
    background: transparent !important;
    color: #666 !important;
}






td#gable-standard-blocks, td.total-blocks {
    position: relative;
}


.total-blocks {
	    background: rgba(0,0,0,0.051);
		border-bottom: 1px solid rgba(0,0,0,0.1);
}







div#hold-product-brochure a span {
    font-size: 17px;
    font-weight: 600;
    margin-left: 13px;
    margin-right: 16px;
    border-bottom: 1px solid #eee;
    padding-bottom: 16px;
    padding-left: 2px;
    color: #d22630;
}

div#hold-product-brochure .hold-thumb {
   display: none;
}











		@media only all and (min-width: 991px) and (max-width: 1650px) {
            .estimate-calculator-result-right-header a {
                font-size: 0.6vw;
                width: 16%;
            }
            
            .estimate-calculator-result-right-header a i {
                font-size: 2vw;
            }
            
            .estimate-calculator-result-right-header a:not(:first-child) {
                margin-left: 4px !important;
            }
            
            .estimate-calculator-result-right-header a {
                padding-left: 8px;
                padding-right: 8px;
            }

            
        }


		@media only all and (min-width: 769px) and (max-width: 991px) {
            .estimate-calculator-result-right-header a {
                font-size: 11px;
                width: 16%;
            }
            
            .estimate-calculator-result-right-header a i {
                font-size: 2vw;
            }
            
            .estimate-calculator-result-right-header a:not(:first-child) {
                margin-left: 4px !important;
            }
            
            .estimate-calculator-result-right-header a {
                padding-left: 8px;
                padding-right: 8px;
            }
			.estimate-calculator-result-right-header {
				width: 80%;
			}
            
        }

		@media only all and (min-width: 991px) and (max-width: 1300px) {
            .estimate-calculator-result-right-header a {
                font-size: 10px !important;
                width: 16%;
            }
            
        }




		@media only all and (min-width: 990px) and (max-width: 1540px) {
			
			div#results-body >.row >.col-md-6 {
			    width: 100%;
			}
						
			div#estimate-calculator-result {
				margin-right: 4%;
				margin-left:4%;
			}
			
			
		}











table.estimate-calculator-table tr > td:first-child select {
    color: #000;
    border-color: #000;
    display: inline !important;
    width: unset;
}



div#material-needed-body table tr th:not(:last-child) {
    text-transform: unset;
}




.modal-inner small.title:after {
    border-bottom: 2px dotted #d22730;
    display: block;
    width: 13px;
    height: 3px;
    content: '';
    position: absolute;
    left: 50%;
    bottom: -2px;
    transform: translateX(-50%);
}

.modal-inner small.title {
    position: relative;
    text-align: center;
    padding-top: 2px;
}









.modal-column .inputs > div i.remove-row:hover {
    color: #d22730;
}

.modal-column .inputs > div {
    background: #fff;
    margin-bottom: 5px !important;
    border-radius: 5px;
    position: relative;
}

.modal-column .inputs > div i.remove-row {
    position: absolute;
    right: -15px;
    top: calc(50% - 15px);
}


.hold-individual-windows-doors > .windows {
    border-right: 1px solid rgba(0,0,0,0.2);
}

.hold-individual-windows-doors > .doors {
    border-left: 1px solid #fff;
}

.line-total {
    font-weight: 700;
}








div#hold-additional-details select, table.estimate-calculator-table select {
    font-size: 14px;
}











.additional-item-rows span {
    font-size: 13px !important;
    font-weight: 200 !important;
	text-align: right;
}
.additional-item-rows select, .additional-item-rows input {
    font-size: 13px !important;
}







/* Additional - Underslab section */

div#insulation-row {
    position: relative;
}

div#max-plus-eps-plus-logos {
    position: absolute;
}

div#max-plus-eps-plus-logos img {

}

div#max-plus-eps-plus-logos {
    background: #fff;
    border-radius: 100%;
    padding: 17px;
    left: -57px;
}

div#insulation-row {
    padding-left: 24px;
    position: relative;
}

div#max-plus-eps-plus-logos {
    width: 100px;
    height: 100px;
    line-height: 33px;
    left: -46px;
}





.inch-input, .feet-input {
    position: relative;
}

.inch-input:after, .feet-input:after {
    position: absolute;
    top: 9px;
    right: 18px;
    font-size: 24px;
    line-height: 1;
    font-weight: 400;
}
.inch-input:after { content: '”'    }
.feet-input:after { content: '’'    }

div.estimate-calculator-additional-data input[type=text], div.estimate-calculator-additional-data select {
    text-align: right;
}

select option {
	text-align: center !important;
}






/* additional counter */

/* Set up the counter */
.additional-item-rows {
  counter-reset: row-counter;
}

/* Increment the counter for each .single-row */
.single-row {
  counter-increment: row-counter;
}

/* Display the counter value */
.single-row::before {
  content: counter(row-counter) !important;
  display: inline-block;
  margin-left: 5px; /* add some spacing between the number and the text */
  background: #fff;
  width: 30px;
  height: 30px;
  line-height: 30px;
  border-radius: 100%; 
  color: #000;
  font-weight: 800;
  text-align: center;
  /* margin-bottom: -27px; */
  /* margin-left:-40px; */
  position: absolute;
  left: -21px;
  margin-top: 22px;
  box-shadow: inset -2px -2px 1px rgba(0,0,0,0.1);
}

.row.additional-details-section {
    padding-left: 0;
    padding-right: 0;
}

i.fa-solid.fa-circle-minus.remove-row {
    top: 0;
    right: unset;
	box-shadow: inset 2px -2px 1px rgba(0,0,0,0.1);

}

.additional-details-section .remove-this-row {
    top: 22px;
    right: -18px;
}








span.window-measurements {
    display: block;
    border-bottom: 1px dotted #aaa;
    padding: 5px 0;
}

td > span.window-measurements:last-child {
    border: 0;
}




		@media only all and (min-width: 1200px) and (max-width: 1492px) {
            select#slab_insulation_1 + span {
                padding-left: 16px;
            }            
        }








.other-wall-type-wrapper {
    position: relative;
}

.other-wall-type {
    padding-right: 35px;
}

.clear-other-wall-type {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    cursor: pointer;
}






div#labor-required ol li {
    margin: 2px 0px;
    padding: 0px;
}





div#hold-additional-details input[type=text]::placeholder, div#hold-additional-details input[type=text]:-moz-placeholder, div#hold-additional-details input[type=text]::-moz-placeholder, div#hold-additional-details input[type=text]::-webkit-input-placeholder { 
color:  rgba(255,255,255,0.7);
}
div#hold-additional-details input[type=text]::placeholder { color:  rgba(255,255,255,0.7);}

div#autosave-notice {
	position: fixed;
	bottom: 0;
	left: 0;
	display: none;
	padding: 4px 12px;
	background: #000;
	color: #fff;
	border-radius: 0 5px 0 0;
	font-size: 12px;
	text-transform: uppercase;
}
/* A failed save stays on screen in red until a save works (2026-10-13). */
div#autosave-notice.is-bad {
	z-index: 99999; /* above the theme's fixed .fl-page::after pattern layer */
	background: #c9343b;
	font-weight: 700;
	font-size: 13px;
	padding: 8px 14px;
}


























tfoot {
    border-top: 8px solid #d22630 !important;
    margin: 3px;
}


table.accessories-table .dampproofing {    display: none;  }

body.in-iframe:not(.fl-builder-edit) header, body.in-iframe footer {	display: none !important; }
body.in-iframe:not(.fl-builder-edit) div#pageBanner {   display: none; }
body.in-iframe:not(.fl-builder-edit) div#estimator {    margin-top: 00px;  }
body.in-iframe:not(.fl-builder-edit) div#estimator-form-title {    margin-top: 0;  }
body.in-iframe:not(.fl-builder-edit) div#estimator .fl-module-content {    margin-top: 0;	}
body.in-iframe:not(.fl-builder-edit) a#find-dealers {    display: none !important;	}
body.in-iframe div#quick-estimate-widget {
    display: none !important;
}



table.notes-materials-needed {
    display: none;
}









div#wrap-plan-pdf input {
    /* background: #d22930; */
    /* color: #fff; */
}

div#wrap-plan-pdf {
    border-bottom: 3px solid #d22930;
    padding: 8px;
    background: #fff;
    border-radius: 0;
    margin-left: 0;
    margin-bottom: 7px;
}

div#wrap-plan-pdf button {
}

div#hold-pdf h4 {
    font-size: 14px;
    font-weight: 700;
    margin-top:0;
    /* padding-left:10px; */
    margin-bottom: 22px;
    font-weight: 900;
    margin-bottom: 0;
    padding-left: 26px;
}

div#hold-pdf {
    margin-left: -15px;
}

div#estimator-form-title {
    padding-left: 0;
    margin-bottom: 0;
}

#hold-pdf {
    background: #fff !important;
    overflow: auto;
    box-shadow: -2px -2px 2px rgba(0,0,0,0.1);
    margin-bottom: 0;
    margin-left:18px !important;
}

#hold-pdf {
    width: 100%;
    padding: 25px 22px 0 22px;
    border-radius: 16px 31px 0 0;
    margin-top: 50px;
}

div#hold-pdf p {
    color: #222;
    font-size: 13px;
    font-weight: 200;
    padding-right: 18% !important;
    padding-left: 26px;
    display: inline-block;
}

div#hold-pdf h4 i {
    font-size: 32px;
    color: #d22930;
    position: absolute;
    left: 0;
}

div#building-plans-add {
    float: right;
    position: relative;
    top: -9px;
}

.hold-building-plans-file {
    /* float: right; */
    /* clear: both; */
    margin-bottom: -30px;
    padding-left: 24px;
    display: block;
    width: 300px;
    max-width: 100%;
    /* border-bottom: 2px solid #d22930; */
    /* border-radius: 0 !important; */
}

a#building-plans-file-remove {
    float: unset;
}

.hold-building-plans-file {
    /* float: right; */
    /* clear: both; */
    margin-bottom: -30px;
    padding-left: 24px;
    display: block;
    width: 300px;
    max-width: 100%;
    /* border-bottom: 2px solid #d22930; */
    /* border-radius: 0 !important; */
}

a#building-plans-file-remove {
    float: unset;
}

/* Hidden outside the dealer-portal iframe, except on SuperForm's own dev copy (.ec-qb-always, 2026-10-05). */
html body:not(.in-iframe) a#purchase-project:not(.ec-qb-always) {
   display: none !important;
}












@media only all and (max-width: 768px) {

		div#estimate-calculator-result {}

		div#estimator .fl-module-content {
			margin-left: 0 !important;
			margin-right: 0 !important;
		}

		div#hold-estimator-form {
			/* margin-left: 10px !important; */
			/* margin-right: 10px !important; */
			/* width: 100% !important; */
			/* max-width: unset !important; */
		}

		div#hold-pdf {
			width: 100%;
		}

		div#estimator-form-title {
			margin: 0 !important;
		}

		div#hold-pdf {
			margin: 0 !important;
			border-radius: 15px !important;
			margin-bottom: 13px !important;
			box-shadow: 0 0 3px rgba(0,0,0,0.3);
		}

		table.estimate-calculator-table > tbody > tr:first-child > td:nth-child(1) {}

		.holdTable {
			border-radius: 15px;
			box-shadow: 0 0 4px rgba(0,0,0,0.3);
		}

		table.estimate-calculator-table {
			margin-bottom: 0;
		}

		div#hold-estimator-form {
			margin-top: 76px;
		}

		div#form-start-over a {
			font-size: 14px;
			padding: 12px 6px;
			text-align: center;
			top: unset;
		}

		div#form-start-over {
			line-height: 1.2;
		}

		div#estimator-form-title h2 {
			font-weight: 900;
			color: #000;
			padding-top: 35px;
			padding-bottom: 27px;
		}

		.estimate-calculator-table tbody tr > td:first-child {
			font-size: 13px;
			padding: 4px 11px;
			min-width: 140px !important;
		}

		form#estimate-calculator td {
			min-width: 178px;
		}

		td#estimate-calculator-section {
			text-align: left;
			padding-left: 22px;
		}

		.openings-modal {
			width: calc(100vw - 20px);
		}

		.openings-modal .modal-inner {
			position: unset !important;
			transform: unset !important;
			top: unset !important;
			width: 100%;
		}



		div#hold-submit-button .col-md-12 {
			padding: 0 !important;
		}

		div#estimator {
			margin-bottom: 20px;
		}
		.estimate-calculator-result-right-header a {
			width: 20%;
		}

		div#hold-project-details {
			margin-left: 20px !important;
			margin-right: 20px !important;
			margin-top: 30px !important;
			width: unset !important;
		}


}






/* Bullseye Locator Results -  CSS */
#closestDealers {
    display: flex;
    flex-wrap: wrap; 
    justify-content: space-between;
}

.hold-dealer {
    flex: 1 1 calc(50% - 10px); /* Assuming 10px as the gap between columns */
    box-sizing: border-box;
    margin-bottom: 20px; /* Gap between rows */
}

.dealer-inner {
    display: flex;
    align-items: flex-start; /* Align items to the top */
}

.dealer-badge {
    width: 125px; /* Set fixed width for dealer badge */
    display: flex;
    align-items: center;
    justify-content: center;
}

.dealer-badge img {
    max-width: 100%; /* Ensure the image doesn't exceed the container's width */
    height: auto;
    margin-bottom: 10px; /* Gap between badge and content */
}

.dealer-content {
    flex: 1; /* Make dealer content take up the remaining space */
    text-align: center;
    padding-left: 10px; /* Optional: Add some spacing between badge and content */
}

/* Responsive styling for mobile */
@media (max-width: 768px) {
    .hold-dealer {
        flex: 1 1 100%;
        margin-bottom: 15px;
    }
}

ul#closestDealers {
}

.dealer-inner {
    font-size: 13px;
    color: #333;
}

.dealer-inner h3, .dealer-inner span {
    color: #333 !important;
}

.dealer-inner h3 {
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 5px 0;
    line-height: 1.3;
    color: #333;
}

.dealer-content h3 a {
    color: #000 !important;
}

.dealer-content h3 a:hover {
    color: #e82c2a;
}

.dealer-inner a.dealer-link {
    background: #e82c2a;
    color: #fff;
    display: block;
    font-weight: 800;
    margin-top: 8px;
    border: 1px solid #e82c2a;
    border-radius: 9px;
    padding: 5px 4px;
    font-size: 14px;
    text-decoration: unset;
}

.dealer-inner span  a.dealer-link:hover {
    color: #a00 !important;
    background: #fff;
    border: 1px solid #e82c2a;
}

ul#closestDealers li > div {
    background: #fff;
    padding: 8px;
    border: 1px solid #eee;
    border-radius: 14px;
}

ul#closestDealers {
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    list-style-type: none;
}

ul#closestDealers li {
    padding: 7px;
}

.dealer-content a.dealer-link {
    text-align: center;
}

div#find-dealers-hold {
    display: none;
}

.dealer-content {
    text-align: left;
    padding-left: 25px;
    padding-top: 12px;
}

.dealer-content a.dealer-link {
    display: inline-block;
    padding: 6px 18px;
    font-weight: 700;
    text-transform: uppercase;
    position: absolute;
    bottom: 0;
    right: 5px;
    bottom: 5px;
    left: 164px;
}

.dealer-inner {
    position: relative;
}

.dealer-badge img {
    margin: 0;
}
a#find-dealers {
    cursor: pointer;
}

h3.bullseye-header {
    margin-bottom: 0;
    padding-left: 12px;
}

h3.bullseye-header span {
    font-family: franklin-gothic-urw, sans-serif;
    font-size: 14px;
    font-weight: 300;
    display: block;
}

@media (min-width: 769px) {
    .hold-dealer {
        max-width: calc(50% - 10px);
    }
}

	

a#view-dealer-map-no-location {
    background: #fff;
    border-radius: 8px;
    padding: 2px 12px;
    color: #444 !important;
    text-transform: uppercase;
    margin-right: 4px;
}

div#find-dealers-hold {
    padding-bottom: 30px;
    border-bottom: 1px solid rgba(255,255,255,0.4);
    margin-bottom: 18px;
}




div#quote-sent-success {
    position: absolute;
    top: 2px;
    left: 2px;
    right: 2px;
    bottom: 2px;
    z-index: 5;
    border-radius: 14px;
    background: #4aaf4a;
    padding: 12px;
    text-align: center;
    font-size: 16px;
    box-shadow: inset 2px 3px 5px rgba(0,0,0,0.1);
}


a.dealer-link {
    cursor: pointer;
}



.dealer-icon-links {
    margin-top: 10px;
}

.dealer-icon-links a span {
    display: none !important;
}

.dealer-icon-links a i {
    color: #e82c2a  !important;
    font-size: 15px !important;
}

.dealer-icon-links a span {
    /* display: block !important; */
}

.dealer-icon-links a {
    display: inline-block;
    width: 30%;
    float: left;
    text-align: center;
    background: #eee;
    border-radius: 11px;
    margin-right: 3%;
    padding: 4px;
    font-weight: 200;
    font-size: 12px;
}

.dealer-icon-links a:hover span {
    display: block !important;
}

.dealer-icon-links a:hover {
    background: #e82c2a !important;
    opacity: 1 !important;
}

.dealer-icon-links a:hover i, .dealer-icon-links a:hover span {
    color: #fff !important;
}



// hide for dealer portal frame
body.in-iframe a#find-dealers {
    display: none !important;
}




.overflow-fix {overflow-x: auto;position: relative;}

div#material-needed-body table tr td:last-child {
    padding-right: 34px;
}

.overflow-fix table {
    margin-bottom: 3px;
}

select option {
    color: #333 !important;
    text-align: left;
}

/* 2026-09-09 -- "remove from my list" control for take-offs shared with / imported by the viewer.
   Takes the exact place, colour and offsets of the passive shared marker it replaces
   (see the fa-user-plus rules above); nothing else changes. */
.recent-projects-item.shared-item i.ec-unlink {
    float: right;
    color: #2fc7ff;
    position: relative;
    top: 3px;
    left: 5px;
    font-size: 16px;
    cursor: pointer;
}
.recent-projects-item.shared-item i.ec-unlink:hover,
.recent-projects-item.shared-item i.ec-unlink:focus-visible {
    color: #0d8fc0;
}
div#estimate-calculator-history div i.ec-unlink {
    right: 12px;
    border-left: 1px solid #aaa;
    padding-left: 9px;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-top: -5px;
}

/* ------------------------------------------------------------------
   Send to SuperForm popup (2026-10-05). Additive only: everything is
   scoped to #ec-send-pop so no existing calculator style changes.
   ------------------------------------------------------------------ */
#ec-send-pop[hidden],
#ec-send-pop [hidden] { display: none !important; }
#ec-send-pop {
	position: absolute;
	z-index: 1000;
	width: 400px;
	max-width: calc(100vw - 24px);
	box-sizing: border-box;
	padding: 18px 20px 16px;
	background: #fff;
	color: #222;
	text-align: left;
	font-size: 14px;
	line-height: 1.4;
	border-radius: 4px;
	box-shadow: 0 14px 36px rgba(0, 0, 0, .28), 0 2px 6px rgba(0, 0, 0, .14);
}
#ec-send-pop .ec-send-pop__arrow {
	position: absolute;
	top: -7px;
	width: 16px;
	height: 16px;
	background: #fff;
	transform: translateX(-50%) rotate(45deg);
	box-shadow: -2px -2px 3px rgba(0, 0, 0, .06);
}
#ec-send-pop .ec-send-pop__close {
	position: absolute;
	top: 6px;
	right: 8px;
	padding: 4px 8px;
	border: 0;
	background: none;
	color: #6b6b6b;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
}
#ec-send-pop .ec-send-pop__close:hover,
#ec-send-pop .ec-send-pop__close:focus-visible { color: #c6252e; }
#ec-send-pop .ec-send-pop__title {
	margin: 0 30px 4px 0;
	padding: 0;
	color: #1a1a1a;
	font-size: 19px;
	font-weight: 700;
	text-transform: none;
	letter-spacing: 0;
}
#ec-send-pop .ec-send-pop__intro {
	margin: 0 0 10px;
	color: #555;
	font-size: 13px;
}
#ec-send-pop .ec-send-pop__group {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 12px;
	margin: 0 0 10px;
	padding: 0;
	border: 0;
	min-width: 0;
}
#ec-send-pop .ec-send-pop__group legend {
	width: 100%;
	margin: 0 0 6px;
	padding: 0 0 4px;
	border: 0;
	border-bottom: 1px solid #ececec;
	color: #c6252e;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}
#ec-send-pop .ec-send-pop__hint {
	flex: 1 1 100%;
	margin: -4px 0 0;
	color: #666;
	font-size: 12px;
}
#ec-send-pop .ec-send-pop__field { flex: 1 1 calc(50% - 6px); min-width: 0; }
#ec-send-pop .ec-send-pop__field--full { flex-basis: 100%; }
#ec-send-pop label {
	display: block;
	margin: 0 0 3px;
	color: #333;
	font-size: 12px;
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
}
#ec-send-pop input,
#ec-send-pop select {
	display: block;
	width: 100%;
	height: 36px;
	box-sizing: border-box;
	margin: 0;
	padding: 7px 10px;
	border: 1px solid #c4c9cf;
	border-radius: 3px;
	background: #fff;
	color: #222;
	font-family: inherit;
	font-size: 15px;
	line-height: 1.3;
	box-shadow: none;
}
#ec-send-pop input:focus,
#ec-send-pop select:focus {
	border-color: #c6252e;
	box-shadow: 0 0 0 3px rgba(198, 37, 46, .16);
	outline: none;
}
#ec-send-pop select,
#ec-send-pop select option { text-align: left; text-align-last: left; }
#ec-send-pop .ec-send-pop__other { margin-top: 6px; }
#ec-send-pop .ec-send-pop__check { display: inline-flex; align-items: center; gap: 6px; margin: 6px 0 0; font-weight: 400; font-size: 13px; cursor: pointer; }
#ec-send-pop .ec-send-pop__check input[type="checkbox"] { display: inline-block; width: 16px; height: 16px; margin: 0; padding: 0; accent-color: #c6252e; box-shadow: none; }
#ec-send-pop input[type="date"]:disabled { background: #f3f3f3; color: #999; }
#ec-send-pop .has-error input,
#ec-send-pop .has-error select { border-color: #b3261e; }
#ec-send-pop .ec-send-pop__msg { display: block; color: #b3261e; font-size: 12px; }
#ec-send-pop .ec-send-pop__msg:not(:empty) { margin-top: 3px; }
#ec-send-pop .ec-send-pop__error {
	margin: 0 0 12px;
	padding: 8px 10px;
	border-left: 3px solid #c6252e;
	background: #fdecea;
	color: #7d1a13;
	font-size: 13px;
}
#ec-send-pop .ec-send-pop__submit {
	display: block;
	width: 100%;
	padding: 10px 14px;
	border: 0;
	border-radius: 3px;
	background: #c6252e;
	color: #fff;
	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	cursor: pointer;
}
#ec-send-pop .ec-send-pop__submit:hover,
#ec-send-pop .ec-send-pop__submit:focus-visible { background: #a81f27; }
#ec-send-pop .ec-send-pop__submit:focus-visible { outline: 2px solid #1a1a1a; outline-offset: 2px; }
#ec-send-pop .ec-send-pop__submit[disabled] { opacity: .7; cursor: default; }
@media (max-width: 480px) {
	#ec-send-pop { padding: 18px 16px 16px; }
	#ec-send-pop .ec-send-pop__field { flex-basis: 100%; }
	#ec-send-pop input,
	#ec-send-pop select { font-size: 16px; } /* no iOS zoom-on-focus */
}


/* Waste % — slim row above Calculate + pinned Calculate bar (2026-10-06 mock-up) */

.ec-waste-row {
	display: flex;
	justify-content: center;
	margin: 64px 0 0;
}
.ec-waste-row + #hold-submit-button {
	margin-top: 16px;
}
.ec-waste-inline {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px 12px;
	max-width: 100%;
	padding: 10px 16px;
	background: #3a3a3a;
	border-radius: 6px;
	color: #fff;
}
.ec-waste-inline label {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	cursor: pointer;
}
.ec-waste-new {
	background: #5cb85c;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	padding: 4px 8px;
	border-radius: 10px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}
.ec-waste-field {
	display: inline-flex;
	align-items: center;
	background: #fff;
	border-radius: 4px;
	padding-right: 8px;
	color: #333;
	font-weight: 700;
	font-size: 14px;
}
.ec-waste-field input[type='text'] {
	width: 44px;
	height: 32px;
	border: 0 !important;
	background: transparent !important;
	text-align: center;
	padding: 0 4px;
	color: #333 !important;
	font-weight: 700;
	font-size: 16px;
	outline: none;
	box-shadow: none;
}
.ec-waste-field:focus-within {
	box-shadow: 0 0 0 2px #d22630;
}
.ec-waste-hint {
	font-size: 14px;
	color: #ccc;
}

/* Pinned bar: only shown (by JS) while the real Calculate button is off-screen. */
#ec-calc-bar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9990;
	background: #3a3a3a;
	box-shadow: 0 -4px 16px rgba(0,0,0,0.25);
	transform: translateY(110%);
	transition: transform .2s ease;
	font-family: inherit;
}
#ec-calc-bar.is-visible {
	transform: translateY(0);
}
#ec-calc-bar .ec-calc-bar-inner {
	max-width: 1140px;
	margin: 0 auto;
	padding: 10px 16px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 16px;
}
#ec-calc-bar .ec-calc-bar-waste {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	margin: 0;
	cursor: pointer;
}
#ec-calc-bar .ec-calc-bar-go {
	background: #d22630;
	color: #fff;
	border: 0;
	border-radius: 4px;
	font-size: 18px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 12px 36px;
	cursor: pointer;
}
#ec-calc-bar .ec-calc-bar-go:hover {
	background: #b81f28;
}
#ec-calc-bar .ec-calc-bar-go:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}
body.ec-calc-bar-on {
	padding-bottom: 64px;
}
@media (max-width: 600px) {
	.ec-waste-hint { flex-basis: 100%; text-align: center; font-size: 13px; }
	#ec-calc-bar .ec-calc-bar-inner { justify-content: space-between; padding: 8px 12px; gap: 10px; }
	#ec-calc-bar .ec-calc-bar-go { flex: 1; padding: 12px 16px; font-size: 17px; }
	#ec-calc-bar .ec-calc-bar-waste { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
	#ec-calc-bar { transition: none; }
}

/* Desktop: a compact floating pill instead of a full-width bar. */
@media (min-width: 768px) {
	#ec-calc-bar {
		left: auto;
		right: max(24px, calc((100vw - 1170px) / 2));
		bottom: 6px;
		border-radius: 999px;
		box-shadow: 0 8px 28px rgba(0,0,0,0.30), 0 2px 6px rgba(0,0,0,0.20);
		transform: translateY(calc(100% + 40px));
		opacity: 0;
		transition: transform .25s ease, opacity .25s ease;
	}
	#ec-calc-bar.is-visible {
		opacity: 1;
	}
	#ec-calc-bar .ec-calc-bar-inner {
		max-width: none;
		padding: 6px 6px 6px 20px;
		gap: 14px;
	}
	#ec-calc-bar .ec-calc-bar-waste {
		font-size: 14px;
		gap: 8px;
		letter-spacing: 0.3px;
	}
	#ec-calc-bar .ec-waste-field input[type='text'] {
		width: 36px;
		height: 30px;
		font-size: 15px;
	}
	#ec-calc-bar .ec-waste-field {
		border-radius: 999px;
		padding-left: 4px;
		padding-right: 10px;
	}
	#ec-calc-bar .ec-calc-bar-go {
		border-radius: 999px;
		font-size: 16px;
		padding: 11px 28px;
	}
	body.ec-calc-bar-on {
		padding-bottom: 0;
	}
	/* The theme's corner "Take-off Calculator" tab links to this page; step it aside
	   while the pill is up so the two don't stack. */
	body.ec-calc-bar-on #quick-estimate-widget {
		opacity: 0;
		pointer-events: none;
	}
}


/* Results "Windows & Doors" table (redesigned 2026-10-06): same red-header family as the
   other Original Measurements tables, equal section columns, and a tidy list per cell. */
table.ec-results-openings {
	table-layout: fixed;
	width: 100%;
}
table.ec-results-openings > thead > tr > th:first-child {
	width: 24%;
}
table.ec-results-openings > tbody > tr > td {
	vertical-align: top;
}
table.ec-results-openings > tbody > tr > td:not(:first-child) {
	padding: 6px 12px;
}
table.ec-results-openings > tbody > tr:not(:first-child) > td:first-child {
	padding-top: 15px;
}
.ec-op-v {
	white-space: nowrap;
}
table.ec-openings {
	width: 100%;
	margin: 0 !important;
	border: 0 !important;
	border-collapse: collapse;
	background: transparent !important;
	box-shadow: none !important;
	table-layout: auto;
}
table.ec-openings > tbody > tr > td.ec-op-cell {
	border: 0 !important;
	border-bottom: 1px solid #e4e6ea !important;
	padding: 9px 4px !important;
	background: transparent;
	text-align: center !important;
	font-weight: 400;
	line-height: 1.35;
}
table.ec-openings > tbody > tr.ec-op-row:last-child > td.ec-op-cell,
table.ec-openings > tbody > tr.ec-op-total > td.ec-op-cell {
	border-bottom: 0 !important;
}
.ec-op-size {
	font-size: 16px;
	font-weight: 700;
	color: #1f2328;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.ec-op-qty {
	color: #d22630;
}
.ec-op-meta {
	margin-top: 2px;
	font-size: 14px;
	color: #6b7280;
	font-variant-numeric: tabular-nums;
}
.ec-op-dot {
	padding: 0 3px;
	color: #b6bac1;
}
table.ec-openings > tbody > tr.ec-op-total > td.ec-op-cell {
	border-top: 2px solid #d22630 !important;
	background: #fbf1f1;
	padding-top: 8px !important;
	padding-bottom: 9px !important;
}
.ec-op-total-label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #d22630;
}
.ec-op-total-val {
	font-size: 16px;
	font-weight: 700;
	color: #1f2328;
	font-variant-numeric: tabular-nums;
}
.ec-op-none {
	display: block;
	padding: 9px 0;
	text-align: center;
	color: #b6bac1;
}


/* Estimated start date beside Waste % (required to Calculate, 2026-10-06). */
.ec-waste-inline {
	gap: 10px 22px;
	padding: 12px 18px;
}
.ec-calc-opt {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
.ec-waste-opt {
	padding-left: 22px;
	border-left: 1px solid rgba(255,255,255,0.18);
}
.ec-waste-field input[type='date'] {
	width: 150px;
	height: 32px;
	border: 0 !important;
	background: transparent !important;
	padding: 0 4px 0 8px;
	color: #333 !important;
	font-weight: 700;
	font-size: 15px;
	font-family: inherit;
	outline: none;
	box-shadow: none;
	cursor: pointer;
}
.ec-start-field {
	padding-right: 4px;
}
.ec-waste-field.ec-start-field.has-error {
	box-shadow: 0 0 0 3px #ff5a5f;
}
.ec-start-msg {
	flex-basis: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	color: #ff9b9e;
}
.ec-start-msg:empty {
	display: none;
}
.ec-waste-hint {
	flex-basis: 100%;
	text-align: center;
	font-size: 13px;
}

/* Pinned bar: start date + its error message. */
#ec-calc-bar .ec-calc-bar-start .ec-waste-field input[type='date'] {
	width: 136px;
	height: 30px;
	font-size: 14px;
}
#ec-calc-bar .ec-calc-bar-msg {
	position: absolute;
	right: 0;
	bottom: calc(100% + 8px);
	display: none;
	padding: 7px 12px;
	border-radius: 6px;
	border-left: 4px solid #d22630;
	background: #fff;
	color: #b81f28;
	font-size: 14px;
	font-weight: 700;
	box-shadow: 0 6px 20px rgba(0,0,0,0.30);
	white-space: nowrap;
}
#ec-calc-bar.has-error .ec-calc-bar-msg:not(:empty) {
	display: block;
}
#ec-calc-bar.has-error .ec-start-field {
	box-shadow: 0 0 0 3px #ff5a5f;
}
@media (min-width: 768px) {
	#ec-calc-bar .ec-calc-bar-inner {
		gap: 16px;
	}
	#ec-calc-bar .ec-calc-bar-start .ec-start-field {
		border-radius: 999px;
		padding-left: 6px;
		padding-right: 8px;
	}
}
@media (max-width: 767px) {
	.ec-waste-opt { padding-left: 0; border-left: 0; }
	.ec-calc-opt { flex-basis: 100%; justify-content: center; }
	#ec-calc-bar .ec-calc-bar-inner { flex-wrap: wrap; justify-content: space-between; row-gap: 8px; }
	#ec-calc-bar .ec-calc-bar-go { flex: 1 1 100%; }
	#ec-calc-bar .ec-calc-bar-msg { left: 12px; right: 12px; white-space: normal; text-align: center; }
	body.ec-calc-bar-on { padding-bottom: 110px; }
}


/* Compact setting chips (2026-10-06): Project Start Date / Waste % once set. */
.ec-chip {
	display: none;
	align-items: center;
	gap: 8px;
	height: 32px;
	padding: 0 12px 0 11px;
	border: 0;
	border-radius: 999px;
	background: #fff;
	color: #1f2328;
	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
	transition: box-shadow .15s ease, transform .15s ease;
}
.is-compact > .ec-chip {
	display: inline-flex;
}
.ec-chip:hover {
	box-shadow: 0 0 0 3px rgba(255,255,255,0.35);
}
.ec-chip:active {
	transform: translateY(1px);
}
.ec-chip:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}
.ec-chip-ico {
	color: #d22630;
	font-size: 15px;
}
.ec-chip-sfx {
	font-weight: 400;
	color: #6b7280;
}
.ec-chip-edit {
	margin-left: 2px;
	padding-left: 9px;
	border-left: 1px solid #e1e3e6;
	color: #8a8f98;
	font-size: 12px;
	transition: color .15s ease;
}
.ec-chip:hover .ec-chip-edit,
.ec-chip:focus-visible .ec-chip-edit {
	color: #d22630;
}
/* Compact: hide the field (and the NEW tag / pill labels); the row keeps its labels. */
.is-compact > .ec-waste-field,
.is-compact > .ec-waste-new,
#ec-calc-bar .is-compact > .ec-lbl {
	display: none;
}
.ec-waste-inline .ec-chip-sfx {
	display: none;
}
.ec-waste-inline.waste-compact .ec-waste-hint {
	display: none;
}
#ec-calc-bar .ec-chip {
	height: 30px;
	font-size: 14px;
}
#ec-calc-bar .ec-calc-bar-waste .ec-lbl {
	white-space: nowrap;
}
/* The site styles every button inside the calculator (red, uppercase, padded) - undo that for chips. */
.ec-waste-inline button.ec-chip,
#ec-calc-bar button.ec-chip {
	width: auto !important;
	min-width: 0 !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 0 12px 0 11px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #fff !important;
	background-image: none !important;
	color: #1f2328 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	line-height: 1 !important;
	box-shadow: none;
	opacity: 1 !important;
}
#ec-calc-bar button.ec-chip {
	height: 30px !important;
	font-size: 14px !important;
}
.ec-waste-inline button.ec-chip:hover,
#ec-calc-bar button.ec-chip:hover {
	box-shadow: 0 0 0 3px rgba(255,255,255,0.35) !important;
	opacity: 1 !important;
}
.ec-calc-opt > label,
#ec-calc-bar .ec-lbl {
	white-space: nowrap;
}


/* Project Start Date button + our own date picker with "I don't know" (2026-10-06). */
.ec-waste-inline button.ec-date-btn,
#ec-calc-bar button.ec-date-btn {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	width: auto !important;
	min-width: 0 !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 0 12px 0 11px !important;
	border: 0 !important;
	border-radius: 4px !important;
	background: #fff !important;
	background-image: none !important;
	color: #8a8f98 !important;
	font-family: inherit;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	line-height: 1 !important;
	white-space: nowrap;
	cursor: pointer;
	opacity: 1 !important;
	box-shadow: none;
	transition: box-shadow .15s ease;
}
.ec-waste-inline button.ec-date-btn.has-value,
#ec-calc-bar button.ec-date-btn.has-value {
	border-radius: 999px !important;
	color: #1f2328 !important;
	font-weight: 700 !important;
}
#ec-calc-bar button.ec-date-btn {
	height: 30px !important;
	font-size: 14px !important;
}
.ec-waste-inline button.ec-date-btn:hover,
#ec-calc-bar button.ec-date-btn:hover,
button.ec-date-btn[aria-expanded="true"] {
	box-shadow: 0 0 0 3px rgba(255,255,255,0.35) !important;
}
button.ec-date-btn.has-error {
	box-shadow: 0 0 0 3px #ff5a5f !important;
}
button.ec-date-btn.is-unknown .ec-chip-val {
	font-style: italic;
}
button.ec-date-btn:hover .ec-chip-edit {
	color: #d22630;
}
#ec-calc-bar .ec-calc-bar-start.has-value .ec-lbl {
	display: none;
}
#ec-calc-bar.has-error .ec-start-field {
	box-shadow: none;
}

.ec-date-pop {
	position: fixed;
	z-index: 10000;
	width: 316px;
	max-width: calc(100vw - 24px);
	box-sizing: border-box;
	padding: 14px 14px 12px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 12px 40px rgba(0,0,0,0.28), 0 2px 8px rgba(0,0,0,0.12);
	color: #1f2328;
	font-family: inherit;
	font-size: 14px;
	text-align: left;
}
.ec-date-pop[hidden] {
	display: none !important;
}
.ec-dp-title {
	margin: 0 0 10px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #6b7280;
}
.ec-dp-head {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 8px;
}
.ec-date-pop select {
	flex: 1;
	height: 34px;
	padding: 0 6px;
	border: 1px solid #d7dbe0;
	border-radius: 6px;
	background: #fff;
	color: #1f2328;
	font: inherit;
	font-weight: 700;
}
.ec-date-pop button.ec-dp-nav {
	flex: 0 0 34px;
	width: 34px !important;
	height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #d7dbe0 !important;
	border-radius: 6px !important;
	background: #fff !important;
	color: #1f2328 !important;
	font-size: 13px !important;
	cursor: pointer;
}
.ec-date-pop button.ec-dp-nav:disabled {
	opacity: .35;
	cursor: default;
}
.ec-dp-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 2px;
}
.ec-dp-dow {
	padding: 4px 0;
	text-align: center;
	font-size: 11px;
	font-weight: 700;
	color: #8a8f98;
	text-transform: uppercase;
}
.ec-date-pop button.ec-dp-day {
	height: 36px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 6px !important;
	background: transparent !important;
	color: #1f2328 !important;
	font-family: inherit;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: none !important;
	cursor: pointer;
	box-shadow: none !important;
}
.ec-date-pop button.ec-dp-day:hover,
.ec-date-pop button.ec-dp-day:focus-visible {
	background: #f3f4f6 !important;
	outline: none;
}
.ec-date-pop button.ec-dp-day.is-today {
	box-shadow: inset 0 0 0 1.5px #d22630 !important;
}
.ec-date-pop button.ec-dp-day.is-sel {
	background: #d22630 !important;
	color: #fff !important;
}
.ec-date-pop.is-unknown .ec-dp-grid,
.ec-date-pop.is-unknown .ec-dp-head {
	opacity: .35;
}
.ec-dp-or {
	position: relative;
	margin: 12px 0 10px;
	text-align: center;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #8a8f98;
}
.ec-dp-or::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	border-top: 1px solid #e4e6ea;
}
.ec-dp-or span {
	position: relative;
	padding: 0 10px;
	background: #fff;
}
.ec-dp-unknown {
	display: flex !important;
	align-items: flex-start;
	gap: 12px;
	margin: 0 !important;
	padding: 12px 14px;
	border: 2px solid #d22630;
	border-radius: 8px;
	background: #fdf1f1;
	color: #1f2328 !important;
	cursor: pointer;
	transition: background .15s ease;
}
.ec-dp-unknown:hover {
	background: #fbe3e3;
}
.ec-date-pop.is-unknown .ec-dp-unknown {
	background: #d22630;
	color: #fff !important;
}
.ec-date-pop.is-unknown .ec-dp-unknown small {
	color: rgba(255,255,255,0.85);
}
.ec-dp-unknown input.ec-dp-unknown-cb {
	flex: 0 0 auto;
	width: 20px !important;
	height: 20px !important;
	margin: 1px 0 0 !important;
	accent-color: #d22630;
	cursor: pointer;
}
.ec-date-pop.is-unknown .ec-dp-unknown input.ec-dp-unknown-cb {
	accent-color: #fff;
}
.ec-dp-unknown-txt strong {
	display: block;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.25;
}
.ec-dp-unknown-txt small {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	line-height: 1.3;
	color: #6b7280;
}
.ec-waste-inline .ec-start-lbl {
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	white-space: nowrap;
}
.ec-dp-unknown-txt small { font-weight: 400 !important; }
.ec-date-pop {
	max-height: calc(100vh - 24px);
	overflow-y: auto;
}

/* Note under the calendar (replaced the "I don't know" checkbox, Keelan 2026-10-06). */
.ec-dp-note {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 12px 0 0 !important;
	padding: 10px 12px;
	border-left: 4px solid #d22630;
	border-radius: 6px;
	background: #fdf1f1;
	color: #1f2328;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
}
.ec-dp-note i {
	color: #d22630;
	font-size: 16px;
}
.ec-dp-note { gap: 8px; padding: 10px 10px; font-size: 13.5px; letter-spacing: -0.1px; }
.ec-dp-note i { font-size: 15px; }


/* Calculate "working" state (2026-10-07): a darker band sweeps across the button and the
   dots after "Calculating" pulse, so it's obvious the form is processing. */
button#estimator-submit,
#ec-calc-bar .ec-calc-bar-go {
	position: relative;
	overflow: hidden;
}
button#estimator-submit.is-busy,
#ec-calc-bar .ec-calc-bar-go.is-busy {
	cursor: progress;
	pointer-events: none;
}
button#estimator-submit.is-busy::after,
#ec-calc-bar .ec-calc-bar-go.is-busy::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: -60%;
	width: 60%;
	background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.22) 50%, rgba(0,0,0,0) 100%);
	animation: ec-busy-sweep 1.1s ease-in-out infinite;
	pointer-events: none;
}
button#estimator-submit.is-busy::before,
#ec-calc-bar .ec-calc-bar-go.is-busy::before {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.12);
	pointer-events: none;
}
.ec-busy-label {
	position: relative;
	z-index: 1;
}
.ec-busy-dots i {
	font-style: normal;
	animation: ec-busy-dot 1.2s infinite;
	opacity: .2;
}
.ec-busy-dots i:nth-child(2) { animation-delay: .2s; }
.ec-busy-dots i:nth-child(3) { animation-delay: .4s; }
@keyframes ec-busy-sweep {
	0%   { left: -60%; }
	100% { left: 100%; }
}
@keyframes ec-busy-dot {
	0%, 80%, 100% { opacity: .2; }
	40%           { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
	button#estimator-submit.is-busy::after,
	#ec-calc-bar .ec-calc-bar-go.is-busy::after { animation-duration: 2.4s; }
}

/* Dampproofing system chooser (2026-10 update, includes/dampproofing.php) */
.ec-damp-system { margin: 4px 0 14px; }
.ec-damp-system-label { display: block; font-size: 13px; font-weight: 600; margin: 0 0 8px; padding: 0; text-align: left; }
.ec-damp-system-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.ec-damp-system-option { position: relative; display: block; margin: 0; padding: 9px 10px; border: 1.5px solid rgba(255,255,255,.6); border-radius: 3px; cursor: pointer; line-height: 1.25; font-size: 14px; font-weight: 600; text-transform: none; }
.ec-damp-system-option input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.ec-damp-system-option b { display: block; font-weight: 700; }
.ec-damp-system-option small { display: block; margin-top: 2px; font-size: 11.5px; font-weight: 400; opacity: .85; }
.ec-damp-system-option.is-selected { background: #fff; border-color: #fff; color: #a8262d; }
.ec-damp-system-option.is-selected small { color: #555; opacity: 1; }
.ec-damp-system-option:focus-within { outline: 2px solid #fff; outline-offset: 2px; }
.additional-details-section .ec-damp-system-note { color: #fff; font-size: 12.5px; margin: 8px 0 0; opacity: .9; min-height: 2.6em; }   /* a <p>: the theme's paragraph colour would make it dark grey */
.ec-dimple-length[readonly] { opacity: .75; cursor: default; }

/* "Your take-off isn't saved — download a copy" panel (2026-10-13). Appended to <body> so the
   embed's 60 % opacity never fades it; the theme styles bare links/buttons, hence !important. */
#ec-rescue {
	display: none;
	position: fixed;
	right: 16px;
	bottom: 52px;
	z-index: 100000;
	box-sizing: border-box;
	width: 420px;
	max-width: calc(100vw - 32px);
	max-height: calc(100vh - 80px);
	overflow-y: auto;
	padding: 18px 20px 14px;
	background: #fff;
	color: #222;
	border-top: 5px solid #c9343b;
	border-radius: 6px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.28);
	font-size: 15px;
	line-height: 1.45;
	text-align: left;
	text-transform: none;
}
#ec-rescue p { margin: 0 0 10px !important; padding: 0 !important; color: #222 !important; font-size: 15px !important; line-height: 1.45 !important; }
#ec-rescue .ec-rescue-title { font-size: 18px !important; font-weight: 700; color: #a8262d !important; padding-right: 24px !important; }
#ec-rescue a.ec-rescue-mail:not(.ec-rescue-btn) { color: #a8262d !important; font-weight: 700; text-decoration: underline !important; white-space: nowrap; }
#ec-rescue .ec-rescue-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0 10px !important; }
#ec-rescue a.ec-rescue-btn {
	display: inline-block;
	padding: 10px 16px !important;
	border: 2px solid #a8262d !important;
	border-radius: 4px;
	background: #a8262d !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-decoration: none !important;
	text-transform: uppercase;
	line-height: 1.2 !important;
}
#ec-rescue a.ec-rescue-btn.is-secondary { background: #fff !important; color: #a8262d !important; }
#ec-rescue a.ec-rescue-btn:hover, #ec-rescue a.ec-rescue-btn:focus { opacity: 0.88; }
#ec-rescue .ec-rescue-small { font-size: 13px !important; color: #666 !important; margin-bottom: 0 !important; }
#ec-rescue a.ec-rescue-close {
	position: absolute;
	top: 8px;
	right: 12px;
	color: #888 !important;
	font-size: 26px;
	line-height: 1;
	text-decoration: none !important;
}
div#autosave-notice a.ec-rescue-download { color: #fff !important; text-decoration: underline !important; margin-left: 6px; text-transform: none; }
@media (max-width: 600px) {
	#ec-rescue { right: 16px; left: 16px; width: auto; max-width: none; bottom: 48px; padding: 16px; }
	#ec-rescue .ec-rescue-actions a.ec-rescue-btn { flex: 1 1 auto; text-align: center; }
}


/* Windows & Doors popup rows (2026-10-19, Nate: "I can't tell where the input fields are").
 * The popup sits inside the red wall column, whose inputs have WHITE underlines (made for red),
 * so on the white popup every box was invisible; and the theme makes inputs display:block, so
 * each box dropped onto its own line under its "x" and the labels went out of step. Each row is
 * now one line of [label-under-box] groups with real, bordered boxes. Text-size boosting off so a
 * phone/foldable's larger text can't break the row. */
.openings-modal .modal-inner { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.openings-modal .modal-column .inputs > div {
    display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: center;
    column-gap: 4px; row-gap: 8px; padding: 12px 26px 10px 10px; border-bottom: 0;
}
.openings-modal .modal-column .inputs > div > span {
    display: inline-grid; grid-template-columns: auto auto; column-gap: 4px; align-items: center;
    white-space: nowrap; vertical-align: top;
}
.openings-modal .modal-column .inputs > div > span > em,
.openings-modal .modal-column .inputs > div > em {
    grid-column: 1; grid-row: 1; font-style: normal; font-weight: 700; color: #d22730;
    line-height: 34px; height: 34px; padding: 0 2px;
}
.openings-modal .modal-column .inputs > div > em { display: inline-block; }
.openings-modal .modal-column .inputs > div > span > input { grid-column: 2; grid-row: 1; }
.openings-modal .modal-column .inputs > div > span > input:first-child { grid-column: 1 / span 2; }
.openings-modal .modal-column .inputs > div > span > small {
    grid-column: 2; grid-row: 2; display: block; margin-top: 4px; font-size: 13px !important; line-height: 1.2; text-align: center;
}
.openings-modal .modal-column .inputs > div > span > input:first-child + small { grid-column: 1 / span 2; }
.openings-modal .modal-column .inputs > div input[type='text'],
.openings-modal .modal-column .inputs > div input:not([type]) {
    display: block; box-sizing: border-box; width: 54px !important; height: 34px; margin: 0;
    padding: 2px 4px; font-size: 15px; line-height: 1.2; text-align: center;
    color: #000 !important; background: #fff !important;
    border: 1px solid #a9a9a9 !important; border-radius: 4px !important; box-shadow: none;
}
.openings-modal .modal-column .inputs > div input[type='text']:focus,
.openings-modal .modal-column .inputs > div input:not([type]):focus {
    border-color: #d22730 !important; outline: 2px solid rgba(210, 39, 48, .25); outline-offset: 0;
}
/* The calculated SqFt / Lineal ft boxes are read-only results, not fields to fill in. */
.openings-modal .modal-column .inputs > div input[readonly] {
    width: 64px !important; border-color: transparent !important; background: transparent !important; font-weight: 700;
}
.openings-modal .modal-column .inputs > div > span:last-child { position: absolute; right: 4px; top: calc(50% - 12px); display: block; }
.openings-modal .modal-column .inputs > div > span:last-child i.remove-row { position: static; }
.openings-modal .modal-inner { max-width: calc(100vw - 20px); box-sizing: border-box; }

/* Results action bar + "What's next?" card (2026-10-19, Nate picked mock-up A + the card).
   The bar copies the pinned Calculate bar's look (dark pill, red main button). */
.estimate-calculator-result .material-needed-start-over { display: none !important; }
#ec-results-bar {
	position: fixed; left: 50%; bottom: 12px; z-index: 9990;
	transform: translate(-50%, calc(100% + 40px)); opacity: 0;
	transition: transform .25s ease, opacity .25s ease;
	max-width: calc(100vw - 24px); box-sizing: border-box;
	font-family: inherit; -webkit-text-size-adjust: 100%; text-size-adjust: 100%;
}
#ec-results-bar.is-visible { transform: translate(-50%, 0); opacity: 1; }
#ec-results-bar .ec-rb-inner {
	display: flex; align-items: center; gap: 6px;
	background: #2f2f2f; border-radius: 999px; padding: 6px;
	box-shadow: 0 8px 28px rgba(0,0,0,.30), 0 2px 6px rgba(0,0,0,.20);
}
#ec-results-bar button {
	font-family: inherit; cursor: pointer; border: 0; margin: 0; line-height: 1.1;
	text-transform: uppercase; letter-spacing: .4px; font-weight: 700; white-space: nowrap;
}
#ec-results-bar .ec-rb-edit {
	background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,.55);
	border-radius: 999px; padding: 11px 20px; font-size: 14px; margin-right: 6px;
}
#ec-results-bar .ec-rb-edit:hover { background: rgba(255,255,255,.12); border-color: #fff; }
#ec-results-bar .ec-rb-edit i { margin-right: 6px; }
#ec-results-bar .ec-rb-short { display: none; }
#ec-results-bar .ec-rb-acts { display: flex; align-items: stretch; gap: 2px; padding-left: 10px; border-left: 1px solid rgba(255,255,255,.18); }
#ec-results-bar .ec-rb-act {
	display: flex; flex-direction: column; align-items: center; gap: 4px;
	background: transparent; color: #fff; font-size: 10.5px; padding: 6px 12px; border-radius: 10px;
}
#ec-results-bar .ec-rb-act i { font-size: 17px; }
#ec-results-bar .ec-rb-act:hover { background: rgba(255,255,255,.12); }
#ec-results-bar .ec-rb-main {
	background: #d22630; color: #fff; border-radius: 999px; padding: 13px 30px; font-size: 16px; margin-left: 8px;
}
#ec-results-bar .ec-rb-main:hover { background: #b81f28; }
#ec-results-bar .ec-rb-main i { margin-right: 6px; }
#ec-results-bar .ec-rb-more {
	display: none; background: rgba(255,255,255,.12); color: #fff; border-radius: 999px;
	width: 46px; height: 46px; font-size: 20px; letter-spacing: 0; padding: 0;
}
#ec-results-bar button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
#ec-results-bar .ec-rb-sheet {
	position: absolute; right: 6px; bottom: calc(100% + 8px); min-width: 230px;
	background: #fff; border-radius: 10px; padding: 6px; box-shadow: 0 12px 32px rgba(0,0,0,.28);
}
#ec-results-bar .ec-rb-sheet[hidden] { display: none; }
#ec-results-bar .ec-rb-sheet .ec-rb-act {
	flex-direction: row; gap: 12px; width: 100%; color: #222; font-size: 15px; text-transform: none;
	letter-spacing: 0; font-weight: 600; padding: 13px 14px; text-align: left;
}
#ec-results-bar .ec-rb-sheet .ec-rb-act i { color: #d22630; width: 20px; text-align: center; font-size: 17px; }
#ec-results-bar .ec-rb-sheet .ec-rb-act:hover { background: #f4f4f4; }
body.ec-results-bar-on { padding-bottom: 76px; }
/* Narrow screens: Edit · big main action · "…" (the other actions open above the bar). */
@media (max-width: 760px) {
	#ec-results-bar { left: 12px; right: 12px; max-width: none; transform: translateY(calc(100% + 40px)); }
	#ec-results-bar.is-visible { transform: translateY(0); }
	#ec-results-bar .ec-rb-acts { display: none; }
	#ec-results-bar.has-rest .ec-rb-more { display: block; flex: 0 0 auto; }
	#ec-results-bar .ec-rb-edit { padding: 12px 16px; margin-right: 0; }
	#ec-results-bar .ec-rb-long { display: none; }
	#ec-results-bar .ec-rb-short { display: inline; }
	#ec-results-bar .ec-rb-main { flex: 1 1 auto; margin-left: 0; padding: 13px 12px; font-size: 16px; order: 2; }
	#ec-results-bar .ec-rb-more { order: 3; }
	/* The "Auto saved" notice sits bottom-left: lift it above the bar. */
	body.ec-results-bar-on #autosave-notice { bottom: 84px !important; }
}
@media (prefers-reduced-motion: reduce) { #ec-results-bar { transition: none; } }

#ec-next {
	clear: both; display: flex; flex-wrap: wrap; align-items: center; gap: 24px 40px;
	margin: 36px auto 24px; padding: 34px 40px; max-width: 1200px; box-sizing: border-box;
	background: #fff; border-top: 5px solid #d22630; border-radius: 8px;
	box-shadow: 0 8px 30px rgba(0,0,0,.10); color: #222; text-align: left;
}
#ec-next .ec-next-text { flex: 1 1 340px; }
#ec-next h3 { margin: 0 0 10px; font-size: 32px; line-height: 1.1; color: #222; text-transform: none; }
#ec-next .ec-next-intro { margin: 0 0 16px; font-size: 16px; line-height: 1.55; color: #444; }
#ec-next .ec-next-links { margin: 0; display: flex; flex-wrap: wrap; gap: 6px 22px; }
#ec-next .ec-next-link {
	background: none; border: 0; padding: 4px 0; font: inherit; font-size: 15px; font-weight: 700; color: #222; cursor: pointer;
}
#ec-next .ec-next-link i { color: #d22630; margin-right: 6px; }
#ec-next .ec-next-link:hover { color: #d22630; }
#ec-next .ec-next-btns { flex: 1 1 340px; display: flex; flex-direction: column; gap: 12px; }
#ec-next .ec-next-btns button {
	display: block; width: 100%; padding: 15px 18px; border-radius: 5px; cursor: pointer; font: inherit;
	font-size: 17px; font-weight: 800; text-transform: uppercase; letter-spacing: .4px; text-align: center; border: 2px solid transparent;
}
#ec-next .ec-next-btns i { margin-right: 8px; }
#ec-next .ec-next-main { background: #d22630; color: #fff; }
#ec-next .ec-next-main:hover { background: #b81f28; }
#ec-next .ec-next-send { background: #2f2f2f; color: #fff; }
#ec-next .ec-next-send:hover { background: #111; }
#ec-next .ec-next-edit { background: #fff; color: #d22630; border-color: #d22630 !important; }
#ec-next .ec-next-edit:hover { background: #fdf0f0; }
@media (max-width: 600px) {
	#ec-next { padding: 24px 20px; margin: 24px 0; }
	#ec-next h3 { font-size: 26px; }
}
/* Phones: the Windows & Doors popup sat inside the wall table, so it started part-way across the
   screen and ran off the right edge (2026-10-19 release tests). Make it a full-screen sheet. */
@media only all and (max-width: 768px) {
	.openings-modal {
		position: fixed !important; top: 0; right: 0; bottom: 0; left: 0; width: auto !important;
		z-index: 100000; overflow-y: auto; -webkit-overflow-scrolling: touch;
		background: rgba(255,255,255,.97); padding: 12px; box-sizing: border-box;
	}
	.openings-modal .modal-inner {
		position: relative !important; top: auto !important; left: auto !important; transform: none !important;
		width: 100% !important; max-width: none; max-height: none; overflow: visible; margin: 0 !important;
	}
}

/* View only (2026-10-19 audit): locked form, Calculate hidden, an explicit "Save my own copy". */
#ec-view-only-banner {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px;
	margin: 0 0 18px; padding: 14px 18px; background: #fff7e6; border: 1px solid #f0c36d; border-left: 5px solid #e0a020;
	border-radius: 6px; color: #3d2f00; font-size: 15px; line-height: 1.45; text-align: left;
}
#ec-view-only-banner .ec-vo-text { flex: 1 1 320px; }
#ec-view-only-banner .ec-vo-copy {
	background: #d22630; color: #fff; border: 0; border-radius: 4px; padding: 11px 20px; font: inherit; font-weight: 700;
	text-transform: uppercase; letter-spacing: .4px; cursor: pointer; white-space: nowrap;
}
#ec-view-only-banner .ec-vo-copy:hover { background: #b81f28; }
#ec-view-only-banner .ec-vo-copy[disabled] { opacity: .7; cursor: wait; }
.ec-view-only #estimator-submit, .ec-view-only .openings-modal-trigger, .ec-view-only i.remove-row, .ec-view-only .fa-circle-plus,
.ec-view-only [id$="-add"], .ec-view-only .window-new, .ec-view-only .door-new { display: none !important; }
body.ec-view-only-on #ec-calc-bar { display: none !important; }
.ec-view-only input[disabled], .ec-view-only select[disabled], .ec-view-only textarea[disabled] { cursor: not-allowed; }

/* Display fixes from the 2026-10-19 audit. */
/* Info badges sat centred ON the field (Use Top Blocks "No" unreadable on 4" walls): keep them right. */
.estimate-calculator-table .info-icon-wrapper { justify-content: flex-end; padding-right: 30px; box-sizing: border-box; }
@media only all and (max-width: 768px) {
	/* The theme paints this red on phones; the plugin's red text vanished on it. */
	div#form-start-over, div#form-start-over a, div#form-start-over span { color: #fff !important; }
	/* "Not saved" sat on top of the pinned Calculate button. */
	body.ec-calc-bar-on #autosave-notice { bottom: 72px !important; }
}
/* Results bar: step the site's corner "Take-off Calculator" tab aside, like the Calculate pill does,
   and get out of the way while a popup (Send to SuperForm, alerts) is open. */
body.ec-results-bar-on #quick-estimate-widget { opacity: 0; pointer-events: none; }
body.ec-popup-open #ec-results-bar { opacity: 0 !important; pointer-events: none; }
@media only all and (min-width: 769px) and (max-width: 1100px) {
	body.ec-results-bar-on #autosave-notice { bottom: 84px !important; }
}
