.elementor-391 .elementor-element.elementor-element-2ff2364{--display:flex;--overlay-opacity:0.5;}.elementor-391 .elementor-element.elementor-element-2ff2364::before, .elementor-391 .elementor-element.elementor-element-2ff2364 > .elementor-background-video-container::before, .elementor-391 .elementor-element.elementor-element-2ff2364 > .e-con-inner > .elementor-background-video-container::before, .elementor-391 .elementor-element.elementor-element-2ff2364 > .elementor-background-slideshow::before, .elementor-391 .elementor-element.elementor-element-2ff2364 > .e-con-inner > .elementor-background-slideshow::before, .elementor-391 .elementor-element.elementor-element-2ff2364 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-775ad61 );--background-overlay:'';}.elementor-391 .elementor-element.elementor-element-2ff2364.e-con{--flex-grow:0;--flex-shrink:0;}@media(max-width:767px){.elementor-391 .elementor-element.elementor-element-e1bac0c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-391 .elementor-element.elementor-element-2ff2364{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-e1bac0c */.elementor-kit-6 button{ 
    background: initial;
    color: initial;
    border: solid 1pt #B3B3B3;
}
.elementor-kit-6 .ceiling button:hover{ 
    background: #FAEEDA!important;
    color: #854F0B;border: solid 1pt #FAEEDA;
}
.elementor-kit-6 .ceiling button:focus{
    background: #FAEEDA!important;
    color: #854F0B;border: solid 1pt #FAEEDA;
}
.active-amber,.active-gray{
    background: #FAEEDA!important;
    color: #854F0B;border: solid 1pt #FAEEDA;}
.elementor-kit-6 .floor button:hover{ 
    background: #E1F5EE!important;
    color: #0F6E56;border: solid 1pt #E1F5EE;
}
.active-teal-lo,.active-teal-mid,.active-teal-hi{
    background: #E1F5EE!important;
    color: #0F6E56;border: solid 1pt #E1F5EE;
}
.elementor-kit-6 .floor button:focus{
    background: #E1F5EE!important;
    color: #0F6E56;border: solid 1pt #E1F5EE;
}
.elementor-kit-6 .wall button:hover{ 
    background: #E6F1FB!important;
    color: #185FA5;border: solid 1pt #E6F1FB;
}
.active-blue-hi,.active-blue-lo{
    background: #E6F1FB!important;
    color: #185FA5;border: solid 1pt #E6F1FB;
}
.elementor-kit-6 .wall button:focus{
    background: #E6F1FB!important;
    color: #185FA5;border: solid 1pt #E6F1FB;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2ff2364 */@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@400;500;700&family=Noto+Sans+TC:wght@300;400;500&display=swap');
.hidden {display:none}
  .form-wrap { max-width: 620px; margin: 0 auto; padding: 2rem 1rem 3rem; }
  .header { text-align: center; margin-bottom: 2.5rem; padding-bottom: 1.5rem; border-bottom: 0.5px solid var(--color-border-tertiary); }
  .header-tag { font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: #BA7517; background: #FAEEDA; padding: 4px 12px; border-radius: 20px; display: inline-block; margin-bottom: 0.75rem; }
  .header h1 { font-size: 26px; font-weight: 700; color: var(--color-text-primary); margin: 0 0 0.4rem; }
  .header p { font-size: 13px; color: var(--color-text-secondary); margin: 0; line-height: 1.6; }
  .section { background: white; border: 0.5px solid var(--color-border-tertiary); border-radius: 0.25rem; padding: 1.5rem; margin-bottom: 1rem; position: relative; overflow: hidden; }
  .section::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; }
  .ceiling::before { background: #EF9F27; }
  .floor::before { background: #1D9E75; }
  .wall::before { background: #378ADD; }
  .section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; }
  .section-icon { display: flex; align-items: center; gap: 10px; }
  .icon-box { width: 36px; height: 36px; border-radius: var(--border-radius-md); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
  .ceiling .icon-box { background: #FAEEDA; }
  .floor .icon-box { background: #E1F5EE; }
  .wall .icon-box { background: #E6F1FB; }
  .icon-box svg { width: 18px; height: 18px; }
  .section-title { font-size: 15px; font-weight: 500; color: var(--color-text-primary); margin: 0; }
  .section-subtitle { font-size: 12px; color: var(--color-text-secondary); }
  .unit-price { font-size: 12px; padding: 3px 10px; border-radius: 20px; font-weight: 500; white-space: nowrap; }
  .ceiling .unit-price { background: #FAEEDA; color: #854F0B; }
  .floor .unit-price { background: #E1F5EE; color: #0F6E56; }
  .wall .unit-price { background: #E6F1FB; color: #185FA5; }
.type-toggle { display: flex; gap: 6px; margin-bottom: 1rem; }
@media screen and (max-width: 767px) {
  .type-toggle{ flex-direction: column;}
  .section-header{ flex-direction: column; align-items: flex-start;}
}
.type-btn { flex: 1; padding: 8px 10px; border-radius: 0.25rem; border: 0.5px solid var(--color-border-secondary); cursor: pointer; font-size: 13px; transition: all 0.15s; text-align: center; }
  .type-btn .btn-price { display: block; font-size: 11px; margin-top: 2px; opacity: 0.8; }
  .active-amber    { background: #FAEEDA; border-color: #EF9F27; color: #854F0B; font-weight: 500; }
  .active-gray     { background: #F1EFE8; border-color: #888780; color: #444441; font-weight: 500; }
  .active-teal-lo  { background: #E1F5EE; border-color: #5DCAA5; color: #085041; font-weight: 500; }
  .active-teal-mid { background: #9FE1CB; border-color: #1D9E75; color: #04342C; font-weight: 500; }
  .active-teal-hi  { background: #5DCAA5; border-color: #0F6E56; color: #04342C; font-weight: 500; }
  .active-blue-hi  { background: #B5D4F4; border-color: #378ADD; color: #042C53; font-weight: 500; }
  .active-blue-lo  { background: #E6F1FB; border-color: #85B7EB; color: #0C447C; font-weight: 500; }
  .input-row { display: flex; align-items: center; gap: 12px; }
  .input-row input[type=number] { flex: 1; }
  .ping-label { font-size: 14px; color: var(--color-text-secondary); white-space: nowrap; }
  .subtotal-display { text-align: right; }
  .subtotal-label { font-size: 11px; color: var(--color-text-secondary); }
  .subtotal-val { font-size: 18px; font-weight: 500; color: var(--color-text-primary); }
  .empty-hint { font-size: 20px; font-weight: 500; color: var(--color-border-tertiary); }
  .total-card { background: var(--color-background-secondary); border: 0.5px solid var(--color-border-tertiary); border-radius: var(--border-radius-lg); padding: 1.5rem; margin-top: 1.5rem; }
  .breakdown { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; margin-bottom: 1.25rem; }
  .breakdown-item { background: white; border-radius: var(--border-radius-md); padding: 0.75rem; text-align: center; border: 0.5px solid var(--color-border-tertiary); }
  .breakdown-name { font-size: 11px; color: var(--color-text-secondary); margin-bottom: 2px; }
  .breakdown-type { font-size: 10px; color: var(--color-text-secondary); margin-bottom: 4px; opacity: 0.7; min-height: 14px; }
  .breakdown-amount { font-size: 14px; font-weight: 500; }
  .total-row { display: flex; align-items: baseline; justify-content: space-between; padding-top: 1rem; border-top: 0.5px solid var(--color-border-tertiary); }
  .total-label { font-size: 15px; color: var(--color-text-secondary); }
  .total-amount {  font-size: 28px; font-weight: 700; color: #854F0B; }
  .total-unit { font-size: 13px; color: var(--color-text-secondary); margin-left: 4px; }
  .note { font-size: 12px; color: var(--color-text-secondary); text-align: center; margin-top: 1rem; padding: 0.75rem; background: var(--color-background-secondary); border-radius: var(--border-radius-md); }
  .reset-btn { font-size: 13px; color: var(--color-text-secondary); background: none; border: 0.5px solid var(--color-border-secondary); border-radius: var(--border-radius-md); padding: 6px 14px; cursor: pointer; margin-top: 0.75rem; display: block; margin-left: auto; }
  .reset-btn:hover { background: var(--color-background-secondary); }
  .quote-btn { width: 100%; margin-top: 1rem; padding: 12px; background: #BA7517; border: none; border-radius: var(--border-radius-lg); color: #fff; font-size: 15px; font-weight: 500; cursor: pointer; }
  .quote-btn:hover { background: #854F0B; }/* End custom CSS */