/* Fonts are loaded via <link> in the page <head>; see main.css. */
:root{--ink:#351b27;--muted:#705966;--logo-light:#f4bcdd;--logo-mid:#e299c6;--logo-deep:#991c52;--blush:var(--logo-light);--rose:var(--logo-deep);--pink:var(--logo-mid);--pink-dark:var(--logo-deep);--cream:#fff9fc;--butter:#f9e7f1;--line:#e9c9da}
body{font-family:'Nunito',Inter,Arial,sans-serif}
h1,h2,h3,.brand,.number,.stat strong{font-family:'Quicksand','Nunito',Arial,sans-serif}
.home-hero{overflow:hidden;background:radial-gradient(circle at 88% 15%,rgba(226,153,198,.38),transparent 32%),var(--cream)}.home-hero h1{max-width:10ch}.specialties{background:var(--logo-light)}.specialty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.5rem}.specialty-card{min-height:21rem;display:flex;flex-direction:column;padding:1.6rem;background:rgba(255,255,255,.62);border:1px solid rgba(153,28,82,.16);border-radius:1.5rem;text-decoration:none;transition:transform .25s ease,background .25s ease,box-shadow .25s ease}.specialty-card:nth-child(even){background:rgba(226,153,198,.55)}.specialty-card:hover{transform:translateY(-7px);background:#fff;box-shadow:0 20px 45px rgba(93,29,59,.12)}.specialty-card span{color:var(--logo-deep);font-size:.75rem;font-weight:800;letter-spacing:.15em}.specialty-card h3{font-size:clamp(1.65rem,2.4vw,2.25rem);margin-top:auto}.specialty-card b{margin-top:auto;color:var(--logo-deep);font-size:.9rem}.about-intro>img{border-radius:1.5rem;aspect-ratio:4/3;object-fit:cover}.text-link{font-weight:800;color:var(--logo-deep);text-underline-offset:.25em}.media-section{background:var(--ink);color:#fff;overflow:hidden}.media-section .lead{color:#eadce3}.media-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:clamp(2rem,7vw,6rem)}.media-section .button{background:var(--logo-light);border-color:var(--logo-light);color:var(--ink)}.media-section .button.alt{background:transparent;border-color:var(--logo-light);color:var(--logo-light)}.media-link{align-self:center;color:var(--logo-light)}.media-mark{display:flex;flex-direction:column;font:600 clamp(3.2rem,7vw,6rem)/.88 'Quicksand','Nunito',sans-serif;color:var(--logo-mid);transform:rotate(-4deg)}.media-mark span:nth-child(2){color:var(--logo-light);margin-left:12%}.media-mark span:nth-child(3){color:#fff;margin-left:3%}.speaking-section{padding-bottom:clamp(4rem,8vw,7rem);overflow:hidden;background:#fff}.speaking-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.speaking-heading>p{color:var(--muted);font-size:.88rem}.speaking-wheel{overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-color:var(--logo-deep) var(--logo-light);padding:0 max(1rem,calc((100vw - var(--max))/2)) 1.5rem;cursor:grab}.speaking-wheel:active{cursor:grabbing}.speaking-track{display:flex;gap:1rem;width:max-content}.speaking-card{width:min(28rem,78vw);min-height:14rem;scroll-snap-align:start;border-radius:1.4rem;padding:1.8rem;display:flex;flex-direction:column;justify-content:space-between;background:var(--logo-mid);color:var(--ink)}.speaking-card:nth-child(3n+2){background:var(--logo-deep);color:#fff}.speaking-card:nth-child(3n){background:var(--logo-light)}.speaking-card small{text-transform:uppercase;letter-spacing:.16em;font-weight:800}.speaking-card strong{font:600 clamp(1.8rem,4vw,3rem)/1.05 'Quicksand','Nunito',sans-serif}.office-section{background:linear-gradient(135deg,var(--cream) 55%,var(--logo-light) 55%)}.office-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,7vw,6rem);align-items:center}.location-card{background:#fff;border:1px solid var(--line);border-radius:50% 50% 1.5rem 1.5rem;padding:clamp(2rem,6vw,4rem) 2rem;text-align:center;box-shadow:0 20px 50px rgba(82,25,51,.1)}.location-pin{display:block;color:var(--logo-deep);font-size:3rem;line-height:1}.location-card h3{font-size:2.2rem}.blush-cta{background:var(--logo-mid)}
@media(max-width:900px){.specialty-grid{grid-template-columns:1fr 1fr}.media-grid,.office-grid{grid-template-columns:1fr}.media-mark{margin-top:2rem}.speaking-heading{display:block}.office-section{background:linear-gradient(180deg,var(--cream) 62%,var(--logo-light) 62%)}}@media(max-width:560px){.specialty-grid{grid-template-columns:1fr}.specialty-card{min-height:16rem}.media-mark{font-size:3.5rem}}@media(prefers-reduced-motion:reduce){.specialty-card{transition:none}.specialty-card:hover{transform:none}}
