.faq-accordion{display:flex;flex-direction:column;max-width:48rem;margin:0 auto}.faq-accordion__item{border-bottom:1px solid var(--color-gray-200)}.faq-accordion__item:first-child{border-top:1px solid var(--color-gray-200)}.faq-accordion__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;gap:var(--space-4);padding:var(--space-5) var(--space-2);font-family:var(--font-sans);font-size:var(--text-base);font-weight:600;color:var(--text-primary);text-align:left;background:none;border:none;cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.faq-accordion__trigger:hover{color:var(--color-brand-600)}.faq-accordion__question{flex:1;line-height:var(--leading-snug)}.faq-accordion__icon{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--text-muted);transition:color var(--duration-fast) var(--ease-out)}.faq-accordion__item--open .faq-accordion__icon{color:var(--color-brand-600)}.faq-accordion__body{display:grid;transition:grid-template-rows var(--duration-slow, .25s) var(--ease-out)}.faq-accordion__body-inner{overflow:hidden}.faq-accordion__answer{padding:0 var(--space-2) var(--space-5);font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed);max-width:42rem}.contact{padding:var(--space-24) var(--content-padding) var(--space-16);max-width:var(--max-width);margin:0 auto}.contact__hero{text-align:center;margin-bottom:var(--space-16)}.contact__hero-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--color-brand-700);background:var(--color-brand-50);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);margin-bottom:var(--space-4)}.contact__hero-badge-icon{width:1rem;height:1rem}.contact__hero-title{font-family:var(--font-serif);font-size:clamp(2.25rem,5vw,3.5rem);font-weight:400;letter-spacing:-.01em;line-height:1.1;color:var(--text-primary);margin-bottom:var(--space-4)}.contact__hero-subtitle{font-size:var(--text-lg);color:var(--text-secondary);max-width:36rem;margin:0 auto;line-height:var(--leading-relaxed)}.contact__grid{display:grid;grid-template-columns:1fr;gap:var(--space-10);margin-bottom:var(--space-24)}@media(min-width:768px){.contact__grid{grid-template-columns:1.2fr 1fr;gap:var(--space-12)}}.contact__form-card{background:var(--surface-card);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--space-8)}.contact__form-title{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:400;color:var(--text-primary);margin-bottom:var(--space-6)}.contact__form{display:flex;flex-direction:column;gap:var(--space-4)}.contact__form-row{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(min-width:480px){.contact__form-row{grid-template-columns:1fr 1fr}}.contact__label{display:flex;flex-direction:column;gap:var(--space-1);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.contact__input,.contact__textarea{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.contact__input::placeholder,.contact__textarea::placeholder{color:var(--text-muted)}.contact__input:focus,.contact__textarea:focus{outline:none;border-color:var(--color-brand-500);box-shadow:0 0 0 3px var(--color-brand-100)}.contact__textarea{resize:vertical;min-height:6rem}.contact__form-success{display:flex;align-items:center;padding:var(--space-6);background:#dcfce7;border:1px solid #86efac;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;color:#166534;line-height:var(--leading-relaxed)}.contact__info-title{font-family:var(--font-serif);font-size:var(--text-xl);font-weight:400;color:var(--text-primary);margin-bottom:var(--space-6)}.contact__info-cards{display:flex;flex-direction:column;gap:var(--space-4)}.contact__info-card{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-5);background:var(--surface-card);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);text-decoration:none;color:inherit;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}a.contact__info-card:hover{border-color:var(--color-gray-300);box-shadow:var(--shadow-sm)}.contact__info-card-icon{width:1.25rem;height:1.25rem;color:var(--color-brand-600);flex-shrink:0;margin-top:2px}.contact__info-card-title{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px}.contact__info-card-value{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.contact__info-card-desc{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--leading-relaxed);margin-top:2px}.contact__faq{text-align:center;margin-bottom:var(--space-24)}.contact__faq-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--color-brand-700);background:var(--color-brand-50);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);margin-bottom:var(--space-4)}.contact__faq-title{font-family:var(--font-serif);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:400;letter-spacing:-.01em;color:var(--text-primary);margin-bottom:var(--space-10)}.contact__cta{text-align:center;padding:var(--space-16) var(--space-6);background:var(--color-gray-50);border-radius:var(--radius-xl);border:1px solid var(--color-gray-200)}.contact__cta-title{font-family:var(--font-serif);font-size:var(--text-2xl);font-weight:400;letter-spacing:0;color:var(--text-primary);margin-bottom:var(--space-2)}.contact__cta-desc{font-size:var(--text-base);color:var(--text-secondary);margin-bottom:var(--space-6)}@media(max-width:640px){.contact{padding:var(--space-16) var(--space-4) var(--space-12)}.contact__form-card{padding:var(--space-5)}.contact__hero{margin-bottom:var(--space-10)}}
