.elementor-112 .elementor-element.elementor-element-1804026f{--display:flex;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-112 .elementor-element.elementor-element-3da36844{--display:flex;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}/* Start custom CSS for container, class: .elementor-element-1804026f *//* joinery/faqs */
.hero-subpage { position: relative; width: 100%; height: 50vh; min-height: 400px; max-height: 600px; overflow: visible; display: flex; align-items: center; justify-content: center; text-align: center; }
.cta-overlay-box { position: absolute; top: 100%; right: 5%; transform: translateY(-50%); width: 420px; max-width: 90%; background: rgb(255, 255, 255); padding: 40px; box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 40px; border-radius: 8px; z-index: 2; }
.features-title { font-size: 1.48rem; margin-bottom: 28px; font-family: Georgia, serif; color: rgb(26, 26, 26); }
.craft-text { margin: 0px 0px 26px; font-size: 1.11rem; max-width: 620px; color: rgb(68, 68, 68); line-height: 1.66; }
.cta-button { display: inline-flex; align-items: center; gap: 16px; background: rgb(26, 26, 26); padding: 18px 38px; border-radius: 4px; font-weight: 600; font-size: 1.11rem; letter-spacing: 0.6px; transition: 0.38s; color: rgb(255, 255, 255) !important; text-decoration: none !important; }
.cta-button:hover { background: rgb(212, 184, 148); transform: translateY(-3px); box-shadow: rgba(212, 184, 148, 0.3) 0px 16px 44px; color: rgb(26, 26, 26) !important; }
.cta-button .cta-arrow { transition: transform 0.38s; font-size: 1.3em; }
.cta-button:hover .cta-arrow { transform: translateX(6px); }
@media (max-width: 992px) {  .cta-overlay-box { display: none; }}
@media (max-width: 768px) {  .hero-subpage { height: 50vh; min-height: 360px; }}
.container { max-width: 1260px; margin: 0px auto; padding: 0px 5%; }
.breadcrumbs { margin: 0px 0px 36px; padding-top: 20px; font-size: 0.95rem; color: rgb(102, 102, 102); }
.breadcrumb-home, .breadcrumb-link { color: rgb(102, 102, 102); text-decoration: none; transition: color 0.3s; }
.breadcrumb-home:hover, .breadcrumb-link:hover { color: rgb(26, 26, 26); text-decoration: underline; }
.breadcrumb-separator { margin: 0px 10px; color: rgb(153, 153, 153); }
.breadcrumb-current { color: rgb(26, 26, 26); font-weight: 500; }
.craftsmanship-section { padding: 80px 5% 50px; background: rgb(250, 249, 247); }
.section-title { font-size: 2.7rem; line-height: 1.15; font-family: Georgia, serif; font-weight: 600; color: rgb(26, 26, 26); margin: 0px 0px 26px; letter-spacing: -0.02em; }
.section-subtitle { font-size: 1.8rem; margin: 0px 0px 26px; font-family: Georgia, serif; font-style: italic; color: rgb(26, 26, 26); }
.faq-full-width { max-width: 1260px; margin: 0px auto 54px; }
.faq-list { margin-top: 40px; }
.faq-item { margin-bottom: 24px; border-bottom: 1px solid rgba(0, 0, 0, 0.08); padding-bottom: 20px; }
.faq-item:last-child { border-bottom: none; padding-bottom: 0px; margin-bottom: 0px; }
.faq-question { font-family: Georgia, serif; font-size: 1.32rem; font-weight: 600; color: rgb(26, 26, 26); cursor: pointer; padding-right: 30px; position: relative; line-height: 1.4; }
.faq-question::after { content: "+"; position: absolute; right: 0px; top: 0px; font-size: 1.6rem; color: rgb(212, 184, 148); transition: transform 0.3s; }
details[open] .faq-question::after { content: "−"; }
.faq-answer { margin-top: 16px; font-size: 1.07rem; line-height: 1.66; color: rgb(68, 68, 68); max-width: 620px; }
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
@media (max-width: 600px) {  .craftsmanship-section { padding: 70px 5% 40px; }  .breadcrumbs { font-size: 0.9rem; margin-bottom: 30px; }  .section-title { font-size: 2.1rem; }}/* End custom CSS */