.hw{--hw-green:var(--hannah-green,#2d4a43);--hw-cream:var(--hannah-cream,#fdfbf7);--hw-peach:var(--hannah-peach,#ffe9e3);--hw-terra:var(--hannah-terra,#d07a60);--hw-deep:var(--hannah-deep,#101d1a);--hw-text:var(--hannah-ink,#212529);--hw-heading-color:var(--hw-green);font-family:Inter,Arial,sans-serif;color:var(--hw-text);line-height:1.75;font-size:16px;height:100%}.hw *{box-sizing:border-box}.hw p{margin:0 0 20px}.hw .hw-title{font-family:'Playfair Display',Georgia,serif;color:var(--hw-heading-color);font-weight:400;font-size:clamp(2rem,3vw,2.6rem);line-height:1.2;letter-spacing:-.03em;margin:0 0 22px}.hw-heading .hw-title{font-size:clamp(2.4rem,4.5vw,3.6rem)}.hw .hw-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--hw-heading-color);margin-bottom:22px}.hw .hw-copy{font-size:1rem;color:var(--hw-text);line-height:1.8}.hw .hw-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--hw-green);color:var(--hw-cream);padding:17px 25px;font-family:Inter,Arial,sans-serif;font-size:.875rem;font-weight:500;line-height:1.5;text-decoration:none;border:1px solid transparent;border-radius:2px;transition:background .2s,transform .2s;min-height:52px}.hw .hw-button:hover{background:var(--hw-deep);color:var(--hw-cream);transform:translateY(-2px)}.hw .hw-button-light{background:var(--hw-cream);color:var(--hw-green);border-color:#2d4a4326}.hw .hw-button-light:hover{background:var(--hw-peach);color:var(--hw-green)}.hw .hw-button span{font-size:1.2rem}.hw a:focus-visible,.hw summary:focus-visible{outline:3px solid var(--hw-terra);outline-offset:5px}.hw .hw-card{padding:38px;background:var(--hw-cream);border:1px solid #2d4a4326;border-radius:3px;height:100%;margin:0}.hw .hw-number{font-family:'Playfair Display',Georgia,serif;font-size:2.5rem;line-height:1.2;color:var(--hw-terra);margin-bottom:30px}.hw .hw-link{display:inline-flex;align-items:center;gap:20px;color:var(--hw-heading-color);border-bottom:1px solid var(--hw-terra);font-size:.875rem;font-weight:500;text-decoration:none;padding-bottom:5px}.hw .hw-link:hover{border-color:currentColor}.hw .hw-price{font-family:'Playfair Display',Georgia,serif;font-size:3.25rem;line-height:1.15;letter-spacing:-.04em;color:var(--hw-heading-color);margin-bottom:8px}.hw .hw-price-note{font-size:.8125rem;margin-bottom:25px}.hw .hw-features{list-style:none;margin:25px 0 32px;padding:0;border-top:1px solid #2d4a4326}.hw .hw-features li{padding:12px 0 12px 23px;position:relative;border-bottom:1px solid #2d4a4326;font-size:.9375rem}.hw .hw-features li::before{content:'✓';position:absolute;left:0;color:var(--hw-terra)}.hw .hw-badge{display:inline-block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;background:var(--hw-peach);color:var(--hw-green);margin-bottom:24px}.hw-featured{--hw-text:var(--hw-cream);--hw-heading-color:var(--hw-cream)}.hw-featured .hw-card{background:var(--hw-green)}.hw-featured .hw-features,.hw-featured .hw-features li{border-color:#ffffff40}.hw-testimonial .hw-card{background:var(--hw-peach)}.hw .hw-quote-mark{display:block;font-family:Georgia,serif;font-size:5rem;line-height:.8;color:var(--hw-terra)}.hw-testimonial .hw-title{font-size:1.9rem;margin:15px 0 28px}.hw .hw-author{font-size:.875rem;font-weight:600;margin-bottom:3px}.hw .hw-role{font-size:.8125rem;margin-bottom:0}.hw-process .hw-card{border:0;border-top:1px solid #2d4a4340;border-radius:0;padding:28px 0;background:transparent}.hw .hw-faq details{border-bottom:1px solid #2d4a4340}.hw .hw-faq details:first-child{border-top:1px solid #2d4a4340}.hw .hw-faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;cursor:pointer;padding:24px 0;font-weight:500;list-style:none}.hw .hw-faq summary::-webkit-details-marker{display:none}.hw .hw-faq summary span::before{content:'+';font-size:1.4rem;color:var(--hw-terra)}.hw .hw-faq details[open] summary span::before{content:'−'}.hw .hw-answer{padding:0 30px 24px 0}.hw .hw-answer p:last-child{margin-bottom:0}
@media(max-width:600px){.hw .hw-card{padding:28px}.hw-process .hw-card{padding:25px 0}.hw .hw-price{font-size:2.9rem}.hw .hw-faq summary{font-size:.9375rem}.hw .hw-faq .hw-answer{padding-right:0}.hw .hw-button{max-width:100%;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.hw .hw-button{transition:none}.hw .hw-button:hover{transform:none}}
