.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-body);font-weight:600;border-radius:var(--radius-full);text-decoration:none;cursor:pointer;transition:all var(--transition-base);border:none}.btn-small{padding:.5rem 1.25rem;font-size:var(--font-size-sm)}.btn-medium{padding:.8rem 1.5rem;font-size:.9rem}.btn-large{padding:1rem 2rem;font-size:1rem}.btn-primary{background:var(--marine);color:var(--white);box-shadow:var(--shadow-cta)}.btn-primary:hover{background:var(--marine-dark);transform:translateY(-2px);box-shadow:var(--shadow-cta-hover)}.btn-secondary{background:var(--cream);color:var(--marine)}.btn-secondary:hover{background:var(--cream-dark);transform:translateY(-2px)}.btn-outline{background:transparent;color:var(--marine);border:2px solid var(--marine)}.btn-outline:hover{background:var(--marine);color:var(--white);transform:translateY(-2px)}.btn-white{background:var(--white);color:var(--marine);box-shadow:0 4px 15px hsla(0,0%,100%,.3)}.btn-white:hover{background:var(--cream-light);transform:translateY(-2px);box-shadow:0 6px 20px hsla(0,0%,100%,.4)}.btn-full{width:100%}@media (max-width:768px){.btn-large{padding:.875rem 1.75rem;font-size:var(--font-size-base)}}.faq-list{max-width:800px;margin:0 auto}.faq-item{background:var(--color-white);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--transition-base)}.faq-item:hover{box-shadow:var(--shadow-md)}.faq-question{width:100%;padding:var(--spacing-lg);background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;text-align:left;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-dark);transition:color var(--transition-fast)}.faq-icon,.faq-question:hover{color:var(--color-primary-purple)}.faq-icon{font-size:var(--font-size-xl);font-weight:300;transition:transform var(--transition-base)}.faq-item-open .faq-icon{transform:rotate(180deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height var(--transition-base),padding var(--transition-base)}.faq-item-open .faq-answer{max-height:500px}.faq-answer p{padding:0 var(--spacing-lg) var(--spacing-lg);margin:0;color:var(--color-text-medium);line-height:1.7}@media (max-width:768px){.faq-question{font-size:var(--font-size-base);padding:var(--spacing-md)}.faq-answer p{padding:0 var(--spacing-md) var(--spacing-md);font-size:var(--font-size-sm)}}.section{padding:6rem var(--container-padding)}.section-container{max-width:var(--container-max-width);margin:0 auto}.section-header{text-align:center;margin-bottom:4rem;max-width:600px;margin-left:auto;margin-right:auto}.section-title{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.5rem);color:var(--marine);margin-bottom:var(--spacing-md);font-weight:700;letter-spacing:-.02em}.section-subtitle{font-size:1.1rem;color:var(--text-muted);max-width:600px;margin:0 auto;line-height:1.6}.section-white{background-color:var(--white)}.section-light{background-color:var(--cream-light)}.section-dark{background:var(--marine);border-radius:var(--radius-2xl);margin:0 2rem}.section-dark,.section-dark .section-title{color:var(--white)}.section-dark .section-subtitle{color:hsla(0,0%,100%,.7)}.section-gradient{background:var(--marine);border-radius:var(--radius-2xl);margin:0 2rem}.section-gradient,.section-gradient .section-title{color:var(--white)}.section-gradient .section-subtitle{color:hsla(0,0%,100%,.7)}.section-card{background:var(--white);border-radius:var(--radius-2xl);margin:0 2rem;padding:5rem 3rem}@media (max-width:768px){.section{padding:4rem var(--container-padding)}.section-card,.section-dark,.section-gradient{margin:0 1rem;border-radius:var(--radius-xl);padding:3rem 1.5rem}.section-title{font-size:var(--font-size-2xl)}.section-subtitle{font-size:var(--font-size-base)}}