.fees-page{color:var(--ink)}.fees-intro{background:var(--sage-light);grid-template-columns:1.4fr 1fr;align-items:center;gap:4rem;padding:4.5rem max(6%,50vw - 600px);display:grid}.fees-intro h1{letter-spacing:-.035em;margin:1rem 0 1.5rem;font-size:clamp(2.6rem,4.4vw,4.5rem);line-height:1.12}.fees-intro h1 em{color:var(--forest)}.fees-page main p,.fees-page main li{font-size:1.0625rem;line-height:1.75}.fees-intro .button{margin-top:1rem}.fees-note{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);padding:2rem}.fees-note h2{font-size:1.8rem;line-height:1.25}.fees-page main a:not(.button){text-underline-offset:4px;font-weight:650;text-decoration:underline}.fees-contents{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:1rem 2rem;padding:1.4rem 6%;display:flex}.fees-section{max-width:1200px;margin:auto;padding:3.5rem 2rem;scroll-margin-top:6rem}.fees-section+.fees-section{border-top:1px solid var(--line)}.fees-section h2,.fees-contact h2{margin:.5rem 0 1.5rem;font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.2}.fees-section h3{margin-top:0;font-size:1.4rem;line-height:1.3}.fees-columns{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.fees-section li{margin-bottom:.65rem}.fees-cards{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.fees-cards article{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);flex-direction:column;padding:1.75rem;display:flex}.fees-cards article a{margin-top:auto}.fees-page main .fees-label{color:var(--forest);margin-top:0;font-size:.85rem;font-weight:700}.fees-page main .fees-small{font-size:.9375rem}.fees-questions details{border-bottom:1px solid var(--line);padding:1.25rem 0}.fees-questions summary{cursor:pointer;font-size:1.15rem;font-weight:650}.fees-questions details p{max-width:850px}.fees-contact{background:var(--forest);color:#fff;justify-content:space-between;align-items:center;gap:2rem;padding:3rem 6%;display:flex}.fees-contact p{margin-bottom:0}.fees-contact .button{flex-shrink:0}@media (max-width:900px){.fees-intro{gap:2rem;padding:3rem 6%}.fees-cards{grid-template-columns:1fr}}@media (max-width:640px){.fees-intro,.fees-columns{grid-template-columns:1fr}.fees-intro,.fees-section{padding:2.5rem 6%}.fees-note{padding:1.5rem}.fees-contact{display:block}.fees-contact .button{margin-top:1.5rem}}
