@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Inter:wght@300;400;500;600;700&display=swap");:root{--color-sage:#7ba5a8;--color-sage-dark:#4a6b6d;--color-beige:#e8d5b7;--color-cream:#f9f2f0;--color-charcoal:#2c3e50;--color-gold:#d4af8c;--color-white:#fff;--color-muted:#7a8a95;--font-heading:"Playfair Display",serif;--font-body:"Inter",sans-serif;--container-max:1200px;--container-pad:0 24px;--section-pad:80px 24px;--border-radius:8px;--border-radius-lg:16px;--shadow-sm:0 2px 8px rgba(44,62,80,.08);--shadow-md:0 4px 24px rgba(44,62,80,.12);--shadow-lg:0 8px 40px rgba(44,62,80,.16);--transition:all 0.3s ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{background-color:var(--color-white);color:var(--color-charcoal);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;height:auto;max-width:100%}a{color:var(--color-sage);text-decoration:none;transition:var(--transition)}a:hover{color:var(--color-sage-dark)}h1,h2,h3,h4{font-family:var(--font-heading);line-height:1.2}h1,h2,h3,h4,h5,h6{color:var(--color-charcoal)}h5,h6{font-family:var(--font-body);font-weight:600;line-height:1.3}h1{font-size:clamp(36px,5vw,64px);font-weight:700}h2{font-size:clamp(28px,4vw,48px)}h2,h3{font-weight:600}h3{font-size:clamp(22px,3vw,32px)}h4{font-size:clamp(18px,2.5vw,24px);font-weight:500}h5{font-size:18px}h6{font-size:16px}p{color:var(--color-charcoal);line-height:1.7}p.lead{color:var(--color-muted);font-size:18px}.container{margin:0 auto;max-width:var(--container-max);padding:var(--container-pad)}.section{padding:var(--section-pad)}.section--sm{padding:48px 24px}.section--lg{padding:120px 24px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-2,.grid-3{display:grid;gap:32px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{display:grid;gap:24px;grid-template-columns:repeat(4,1fr)}.flex-center{justify-content:center}.flex-between,.flex-center{align-items:center;display:flex}.flex-between{justify-content:space-between}.btn{align-items:center;border:2px solid transparent;border-radius:50px;cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:15px;font-weight:600;gap:8px;letter-spacing:.3px;padding:14px 32px;text-decoration:none;transition:var(--transition);white-space:nowrap}.btn--primary{background-color:var(--color-sage);border-color:var(--color-sage);color:var(--color-white)}.btn--primary:hover{background-color:var(--color-sage-dark);border-color:var(--color-sage-dark);box-shadow:var(--shadow-md);color:var(--color-white);transform:translateY(-2px)}.btn--outline{background-color:transparent;border-color:var(--color-charcoal);color:var(--color-charcoal)}.btn--outline:hover{background-color:var(--color-charcoal);color:var(--color-white);transform:translateY(-2px)}.btn--outline-white{background-color:transparent;border-color:var(--color-white);color:var(--color-white)}.btn--outline-white:hover{background-color:var(--color-white);color:var(--color-sage-dark)}.btn--gold{background-color:var(--color-gold);border-color:var(--color-gold);color:var(--color-charcoal)}.btn--gold:hover{background-color:var(--color-sage-dark);border-color:var(--color-sage-dark);color:var(--color-white)}.btn--sm{font-size:14px;padding:10px 22px}.btn--lg{font-size:17px;padding:18px 42px}.card{background:var(--color-white);border:1px solid hsla(37,52%,81%,.3);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:40px 32px;transition:var(--transition)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.card__icon{align-items:center;background:var(--color-cream);border-radius:50%;display:flex;font-size:24px;height:60px;justify-content:center;margin-bottom:20px;width:60px}.card__title{color:var(--color-charcoal);font-family:var(--font-heading);font-size:22px;font-weight:600;margin-bottom:12px}.card__text{color:var(--color-muted);line-height:1.7}.section-title{color:var(--color-charcoal);font-family:var(--font-heading);margin-bottom:16px}.section-subtitle{color:var(--color-muted);font-size:18px;margin:0 auto 48px;max-width:600px}.section-label{color:var(--color-sage);display:inline-block;font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:2px;margin-bottom:12px;text-transform:uppercase}.section-divider{background:linear-gradient(90deg,var(--color-sage),var(--color-gold));border-radius:2px;height:3px;margin:16px auto 40px;width:60px}.form-group{margin-bottom:24px}.form-label{color:var(--color-charcoal);display:block;font-family:var(--font-body);font-size:14px;font-weight:600;margin-bottom:8px}.form-label .required{color:var(--color-sage);margin-left:3px}.form-control{appearance:none;background:var(--color-white);border:2px solid var(--color-beige);border-radius:var(--border-radius);color:var(--color-charcoal);font-family:var(--font-body);font-size:15px;padding:12px 16px;transition:var(--transition);width:100%}.form-control:focus{border-color:var(--color-sage);box-shadow:0 0 0 3px rgba(123,165,168,.15);outline:none}.form-control::placeholder{color:var(--color-muted)}textarea.form-control{min-height:120px;resize:vertical}select.form-control{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%237a8a95' stroke-linecap='round' stroke-width='2' d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.pill-group{display:flex;flex-wrap:wrap;gap:10px}.pill-option{display:none}.pill-label{align-items:center;background:var(--color-white);border:2px solid var(--color-beige);border-radius:50px;color:var(--color-charcoal);cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;padding:8px 18px;transition:var(--transition)}.pill-option:checked+.pill-label{background:var(--color-sage);border-color:var(--color-sage);color:var(--color-white)}.pill-label:hover{border-color:var(--color-sage);color:var(--color-sage)}.checkbox-group{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.checkbox-item{align-items:center;border:2px solid var(--color-beige);border-radius:var(--border-radius);cursor:pointer;display:flex;gap:10px;padding:12px 16px;transition:var(--transition)}.checkbox-item:hover{border-color:var(--color-sage)}.checkbox-item input[type=checkbox]{accent-color:var(--color-sage);cursor:pointer;height:18px;width:18px}.checkbox-item input[type=checkbox]:checked~span{color:var(--color-sage-dark);font-weight:600}.checkbox-item:has(input:checked){background:rgba(123,165,168,.06);border-color:var(--color-sage)}.badge{border-radius:50px;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.badge--sage{background:var(--color-sage);color:var(--color-white)}.badge--gold{background:var(--color-gold)}.badge--beige,.badge--gold{color:var(--color-charcoal)}.badge--beige{background:var(--color-beige)}@media (max-width:1024px){:root{--section-pad:64px 24px}.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){:root{--section-pad:48px 20px}.grid-2,.grid-3,.grid-4{gap:24px;grid-template-columns:1fr}.section-subtitle{font-size:16px}}@media (max-width:480px){:root{--section-pad:40px 16px}.btn--lg{font-size:15px;padding:14px 28px}}