.faq-hero{width:100%;position:relative;overflow:hidden}.faq-hero-image{width:100%;height:auto;display:block;max-height:400px;object-fit:cover}.faq-hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,rgba(0,0,0,.7) 0,rgba(0,0,0,.4) 40%,rgba(0,0,0,.1) 70%,transparent 100%);pointer-events:none}.faq-hero-content{position:absolute;bottom:3rem;left:4%;z-index:2;text-align:left}.faq-hero-subtitle{display:block;font-family:var(--font-body);font-size:.75rem;font-weight:600;color:#c9a227;letter-spacing:.2em;text-transform:uppercase;margin-bottom:.5rem}.faq-hero-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:2.5rem;font-weight:300;font-style:italic;color:#fff;letter-spacing:.02em;margin:0}.faq-content{padding:4rem 5%;background-color:#fff}.faq-layout{display:flex;gap:4rem;max-width:1400px;margin:0 auto}.faq-sidebar{flex-shrink:0;width:320px}.faq-sidebar-label{font-family:var(--font-body);font-size:.875rem;font-weight:600;color:#1a1a1a;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e0e0e0}.faq-categories{display:flex;flex-direction:column;border-bottom:1px solid #e0e0e0}.faq-category-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 0;background:0 0;border:none;border-left:3px solid transparent;padding-left:1rem;cursor:pointer;font-family:var(--font-body);font-size:.95rem;font-weight:400;color:#1a1a1a;text-align:left;transition:all .2s ease}.faq-category-btn:hover{background-color:#f8f8f8}.faq-category-btn.active{border-left-color:#008573;background-color:#f5f5f5;font-weight:500}.faq-category-btn svg{flex-shrink:0;color:#666}.faq-main{flex:1;min-width:0}.faq-panel{display:none}.faq-panel.active{display:block}.faq-panel-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:2.25rem;font-weight:400;color:#1a1a1a;margin:0 0 2rem 0;padding-bottom:1.5rem;border-bottom:1px solid #e0e0e0}.faq-list{display:flex;flex-direction:column}.faq-item{border-bottom:1px solid #e0e0e0}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem 0;background:0 0;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);font-size:1rem;font-weight:500;color:#1a1a1a;transition:color .2s ease}.faq-question:hover{color:#555}.faq-question span{flex:1;padding-right:1rem}.faq-icon{flex-shrink:0;transition:transform .3s ease;color:#1a1a1a}.faq-item.active .faq-icon{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.faq-item.active .faq-answer{max-height:500px;padding-bottom:1.25rem}.faq-answer p{font-family:var(--font-body);font-size:.95rem;line-height:1.7;color:#4a4a4a;margin:0 0 1rem 0}.faq-answer p:last-child{margin-bottom:0}.faq-answer p strong{font-weight:600;color:#1a1a1a}.faq-link{color:#1a1a1a;text-decoration:underline;transition:color .2s ease}.faq-link:hover{color:#008573}.faq-arrow-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.9rem;font-weight:500;color:#1a1a1a;text-decoration:underline;margin-top:1rem;transition:color .2s ease}.faq-arrow-link:hover{color:#008573}.faq-arrow-link svg{flex-shrink:0}.faq-contact-section{max-width:1400px;margin:3rem auto 0;padding:0 5%}.faq-contact-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:400px;padding:1rem 1.5rem;background-color:#1a1a1a;color:#fff;border:none;cursor:pointer;font-family:var(--font-body);font-size:1rem;font-weight:500;letter-spacing:.05em;transition:background-color .2s ease}.faq-contact-toggle:hover{background-color:#333}.contact-toggle-icon{transition:transform .3s ease}.faq-contact-toggle.active .contact-toggle-icon{transform:rotate(180deg)}.faq-contact-form-wrapper{max-height:0;overflow:hidden;transition:max-height .4s ease}.faq-contact-form-wrapper.active{max-height:600px}.faq-contact-form{max-width:600px;padding:2rem 0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-family:var(--font-body);font-size:.9rem;font-weight:500;color:#1a1a1a;margin-bottom:.5rem}.form-group input,.form-group textarea{width:100%;padding:.875rem 1rem;font-family:var(--font-body);font-size:.95rem;color:#1a1a1a;background-color:#fff;border:1px solid #ccc;border-radius:0;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus,.form-group textarea:focus{outline:0;border-color:#008573;box-shadow:0 0 0 2px rgba(0,133,115,.1)}.form-group textarea{resize:vertical;min-height:120px}.form-submit-btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 3rem;background-color:#1a1a1a;color:#fff;border:none;cursor:pointer;font-family:var(--font-body);font-size:.95rem;font-weight:500;letter-spacing:.05em;transition:background-color .2s ease,transform .2s ease}.form-submit-btn:hover{background-color:#333;transform:translateY(-2px)}@media (max-width:1024px){.faq-layout{gap:2.5rem}.faq-sidebar{width:260px}.faq-panel-title{font-size:1.75rem}}@media (max-width:768px){.faq-hero-image{max-height:300px}.faq-hero-content{bottom:2rem;left:5%}.faq-hero-subtitle{font-size:.65rem;letter-spacing:.15em}.faq-hero-title{font-size:1.75rem}.faq-content{padding:2rem 1.25rem}.faq-layout{flex-direction:column;gap:2rem}.faq-sidebar{width:100%}.faq-categories{flex-direction:row;flex-wrap:wrap;gap:.5rem;border-bottom:none}.faq-category-btn{flex:1 1 calc(50% - 0.5rem);padding:.75rem 1rem;border:1px solid #e0e0e0;border-left:3px solid transparent;font-size:.85rem}.faq-category-btn.active{border:1px solid #008573;border-left:3px solid #008573}.faq-category-btn svg{display:none}.faq-panel-title{font-size:1.5rem;margin-bottom:1.5rem;padding-bottom:1rem}.faq-question{padding:1rem 0;font-size:.95rem}.faq-answer p{font-size:.9rem}.faq-contact-section{padding:0 1.25rem;margin-top:2rem}.faq-contact-toggle{max-width:100%}.faq-contact-form{padding:1.5rem 0}.form-group{margin-bottom:1.25rem}}@media (max-width:480px){.faq-hero-image{max-height:250px}.faq-hero-content{bottom:1.5rem}.faq-hero-subtitle{font-size:.6rem;margin-bottom:.35rem}.faq-hero-title{font-size:1.5rem}.faq-content{padding:1.5rem 1rem}.faq-categories{flex-direction:column}.faq-category-btn{flex:1 1 100%}.faq-question{font-size:.9rem}.faq-icon{width:18px;height:18px}.faq-contact-section{padding:0 1rem}.faq-contact-toggle{padding:.875rem 1.25rem;font-size:.9rem}.form-submit-btn{width:100%;padding:.875rem 2rem}}