@font-face{font-family:"Source Serif 4";src:url("/assets/fonts/source-serif-4-latin-600-normal.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap;}@font-face{font-family:"Source Serif 4";src:url("/assets/fonts/source-serif-4-latin-700-normal.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap;}@font-face{font-family:"Source Sans 3";src:url("/assets/fonts/source-sans-3-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;}@font-face{font-family:"Source Sans 3";src:url("/assets/fonts/source-sans-3-latin-600-normal.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap;}@font-face{font-family:"Source Sans 3";src:url("/assets/fonts/source-sans-3-latin-400-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap;}:root{--color-ink:#2b2430;--color-ink-soft:#55505c;--color-paper:#faf7f2;--color-paper-soft:#f2ede4;--color-surface:#ffffff;--color-terracotta:#c46a4a;--color-terracotta-deep:#a04a2c;--color-terracotta-dark:#8a3d22;--color-violet:#7b6f9e;--color-violet-deep:#675d8b;--color-footer-muted:#c9c2d1;--color-footer-link-hover:#e0a68d;--color-border-soft:#e4ddd1;--color-border-strong:#6f6a75;--color-overlay:rgba(26,20,30,0.8);--font-serif:"Source Serif 4",Georgia,"Times New Roman",serif;--font-sans:"Source Sans 3","Segoe UI",system-ui,-apple-system,sans-serif;--fs-300:0.8125rem;--fs-400:0.9375rem;--fs-500:1.0625rem;--fs-600:1.125rem;--fs-700:1.25rem;--lh-body:1.6;--space-1:0.25rem;--space-2:0.5rem;--space-3:1.25rem;--space-4:2rem;--space-5:2.5rem;--space-6:3.5rem;--space-7:5rem;--rhythm-hero:clamp(4rem,2.57rem + 7.14vw,8rem);--rhythm-hero-top:clamp(2rem,1.5rem + 2.5vw,3rem);--rhythm-section:clamp(3.5rem,2.5rem + 5vw,7rem);--rhythm-section-after-header:clamp(1.5rem,1rem + 2.5vw,3rem);--rhythm-page-header:clamp(2.5rem,2rem + 2.5vw,4rem);--rhythm-page-header-top:clamp(1.25rem,1rem + 1.25vw,2rem);--rhythm-prose-gap:1.5rem;--rhythm-heading-gap:1.5rem;--rhythm-cta:1.75rem;--rhythm-cta-heading:2rem;--radius-sm:0.25rem;--radius-md:0.5rem;--shadow-1:0 2px 8px rgba(43,36,48,0.08);--shadow-2:0 4px 16px rgba(43,36,48,0.12);--container-max:72rem;}*,*::before,*::after{box-sizing:border-box;}html{-webkit-text-size-adjust:100%;}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-500);line-height:var(--lh-body);color:var(--color-ink);background-color:var(--color-paper);}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:700;line-height:1.2;color:var(--color-ink);margin:0 0 var(--space-3);}h1{font-size:clamp(1.875rem,1.2rem + 2.6vw,2.625rem);}h2{font-size:clamp(1.5rem,1.1rem + 1.6vw,2rem);}h3{font-size:var(--fs-700);font-weight:600;}h4{font-size:var(--fs-600);font-weight:600;}p{margin:0 0 var(--space-3);}a{color:var(--color-terracotta-deep);text-decoration:underline;text-underline-offset:2px;}a:hover{color:var(--color-terracotta-dark);}img{max-width:100%;height:auto;display:block;}main{display:block;}:focus-visible{outline:3px solid var(--color-terracotta-deep);outline-offset:2px;}.site-footer:focus-visible,.hero-art:focus-visible,.section-dark:focus-visible{outline-color:var(--color-paper-soft);}.container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-3);}.visually-hidden{position:absolute !important;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;}.skip-link{position:absolute;top:-100vh;left:var(--space-3);z-index:100;padding:0.75rem 1.25rem;background-color:var(--color-paper);color:var(--color-ink);border:2px solid var(--color-ink);border-radius:var(--radius-sm);font-weight:600;text-decoration:none;}.skip-link:focus{top:var(--space-3);}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:0.75rem 1.5rem;border:2px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;margin-block:var(--rhythm-cta);}.site-phone,.form .btn,.hero-inner .btn,p>.btn{margin-block:0;}p:has(>.btn){margin-block:var(--rhythm-cta);}p:has(>.btn):has(+ h2,+ h3){margin-bottom:var(--rhythm-cta-heading);}.schedule-split{display:grid;grid-template-columns:1fr;gap:var(--space-5);align-items:start;}@media (min-width:48rem){.schedule-split{grid-template-columns:1fr 1fr;}}.btn-primary{background-color:var(--color-terracotta-deep);color:var(--color-surface);}.btn-primary:hover{background-color:var(--color-terracotta-dark);}.btn-secondary{background-color:transparent;border-color:currentColor;color:inherit;}.btn-secondary:hover{background-color:var(--color-ink);border-color:var(--color-ink);color:var(--color-paper);}.site-header{background-color:var(--color-paper);border-bottom:1px solid var(--color-border-soft);}.site-header-inner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);padding-block:var(--space-3);}.brand{display:inline-flex;flex-direction:column;gap:var(--space-1);flex:0 1 auto;margin-right:auto;text-decoration:none;color:var(--color-ink);}.wordmark{font-family:var(--font-serif);font-size:1.375rem;font-weight:700;line-height:1.1;letter-spacing:0.01em;white-space:nowrap;}.brand-sub{font-size:var(--fs-300);font-weight:400;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-ink-soft);}.site-phone{white-space:nowrap;margin-left:auto;padding:0.6em 1.1em;font-size:0.95rem;}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1);}.nav-item{position:relative;}.nav-item>a{display:block;padding:0.75rem 1rem;border-radius:var(--radius-sm);font-weight:600;color:var(--color-ink);text-decoration:none;}.nav-item>a:hover{background-color:var(--color-paper-soft);}.nav-item>a[aria-current="page"]{color:var(--color-terracotta-deep);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;}.dropdown{list-style:none;margin:0 0 var(--space-1) var(--space-4);padding:0;display:flex;flex-direction:column;gap:var(--space-1);}.dropdown a{display:block;padding:0.625rem 1rem;border-radius:var(--radius-sm);color:var(--color-ink);text-decoration:none;}.dropdown a:hover{background-color:var(--color-paper-soft);}.nav-toggle-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:0.625rem 1.25rem;border:2px solid var(--color-ink);border-radius:var(--radius-sm);background-color:var(--color-paper);color:var(--color-ink);font-family:var(--font-sans);font-size:1rem;font-weight:600;cursor:pointer;list-style:none;}.nav-toggle-btn::-webkit-details-marker{display:none;}.nav-toggle[open] .nav-toggle-btn{background-color:var(--color-ink);color:var(--color-paper);}.nav-panel{padding-top:var(--space-2);}.nav-desktop{display:none;}.hero{padding-block:var(--rhythm-hero-top) var(--rhythm-hero);}.hero-inner{display:grid;gap:var(--space-4);max-width:44rem;}.hero h1{margin-bottom:0;}.hero p{margin-bottom:0;font-size:var(--fs-600);}.hero-art{background-color:var(--color-ink);background-image:linear-gradient(var(--color-overlay),var(--color-overlay)),url("/assets/img/hero-banner.jpg");background-size:cover;background-position:center;color:var(--color-paper);}.hero-art h1,.hero-art h2,.hero-art h3{color:var(--color-paper);}.hero-art .btn-secondary:hover{background-color:var(--color-paper);border-color:var(--color-paper);color:var(--color-ink);}.hero-art .btn-primary,.section-dark .btn-primary{border-color:var(--color-paper-soft);}.art-band{height:clamp(5rem,12vw,11rem);background-color:var(--color-paper-soft);background-image:url("/assets/img/art-band.jpg");background-position:center;background-size:auto 100%;background-repeat:repeat-x;}.art-band--footer{height:clamp(4rem,10vw,9rem);background-position:center bottom;}.section{padding-block:var(--rhythm-section);}.page-header + .section,.page-header + .section-alt,.section:has(>.container>:is(h1,h2,h3,h4):first-child),.section:has(>.container>.prose>:is(h1,h2,h3,h4):first-child){padding-block-start:var(--rhythm-section-after-header);}.prose>:first-child,.section .container>:first-child{margin-top:0;}.section-alt{background-color:var(--color-paper-soft);}.section-dark{background-color:var(--color-ink);color:var(--color-paper);}.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4{color:var(--color-paper);}.section-dark a{color:var(--color-footer-link-hover);}.section-head{max-width:46rem;margin-bottom:var(--space-5);}.section-head p{margin-bottom:0;color:var(--color-ink-soft);}.page-header{padding-block:var(--rhythm-page-header-top) var(--rhythm-page-header);background-color:var(--color-paper-soft);border-bottom:1px solid var(--color-border-soft);}.page-header h1{margin-bottom:0;}.page-header .lede{margin-top:var(--space-2);margin-bottom:0;max-width:44rem;font-size:var(--fs-600);color:var(--color-ink-soft);}.cards{display:grid;gap:var(--space-4);grid-template-columns:1fr;}.card{padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-1);}.card>:last-child{margin-bottom:0;}.card h2,.card h3{margin-bottom:var(--space-2);}.testimonial-grid{display:grid;gap:var(--space-4);grid-template-columns:1fr;}.testimonial{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border-soft);border-left:4px solid var(--color-terracotta);border-radius:var(--radius-md);box-shadow:var(--shadow-1);}.testimonial blockquote{margin:0;font-size:var(--fs-500);}.testimonial figcaption,.testimonial cite{font-style:normal;color:var(--color-ink-soft);}.testimonial>:last-child{margin-bottom:0;}.stars{color:var(--color-terracotta);font-size:var(--fs-700);letter-spacing:0.125rem;line-height:1;}.team-card{display:flex;flex-direction:column;background-color:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-1);overflow:hidden;}.team-card img{width:100%;aspect-ratio:4 / 5;object-fit:cover;}.team-card .team-card-body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);}.team-card h2,.team-card h3{margin-bottom:0;}.team-card .role{margin-bottom:0;font-size:var(--fs-300);font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--color-terracotta-deep);}.team-card p{margin-bottom:0;font-size:var(--fs-400);}.team-card>:last-child{margin-bottom:0;}.bio-page{display:grid;gap:var(--space-5);align-items:start;}.bio-page>img{width:100%;border-radius:var(--radius-md);border:1px solid var(--color-border-soft);}.prose{max-width:46rem;}.prose>:last-child{margin-bottom:0;}.prose h2{margin:var(--rhythm-heading-gap) 0 var(--space-2);font-size:clamp(1.375rem,1.15rem + 1vw,1.75rem);}.prose h3{margin:var(--space-3) 0 var(--space-2);}.prose p{margin-bottom:var(--rhythm-prose-gap);line-height:1.7;}.prose ul,.prose ol{margin:0 0 var(--space-3);padding-left:1.5rem;}.prose li + li{margin-top:0.375rem;}.prose blockquote{margin:var(--space-4) 0;padding:var(--space-2) var(--space-4);border-left:4px solid var(--color-terracotta);background-color:var(--color-paper-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-family:var(--font-serif);font-style:italic;color:var(--color-ink);}.prose blockquote>:last-child{margin-bottom:0;}.prose a{color:var(--color-terracotta-deep);}.prose table{width:100%;border-collapse:collapse;margin-bottom:var(--space-3);font-size:var(--fs-400);}.prose th,.prose td{padding:var(--space-2);border:1px solid var(--color-border-soft);text-align:left;}.prose th{font-weight:600;background-color:var(--color-paper-soft);}.form{display:grid;gap:var(--space-4);max-width:40rem;}.form-field{display:grid;gap:0.375rem;}.form-field>label{font-weight:600;}.form input,.form textarea,.form select{width:100%;padding:0.75rem 1rem;font-family:var(--font-sans);font-size:1rem;color:var(--color-ink);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);}.form textarea{min-height:8rem;resize:vertical;}.form-note{font-size:var(--fs-300);line-height:1.5;color:var(--color-ink-soft);}.form-note a{color:var(--color-terracotta-deep);}.hp{position:absolute !important;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;}.consent{display:flex;align-items:flex-start;gap:0.75rem;}.consent input[type="checkbox"]{flex:none;inline-size:1.25rem;block-size:1.25rem;margin-top:0.125rem;accent-color:var(--color-terracotta-deep);}.consent label{font-weight:400;}.consent a{color:var(--color-terracotta-deep);}.site-footer{padding-block:var(--space-6);background-color:var(--color-ink);color:var(--color-paper);font-size:var(--fs-400);}.site-footer a{color:var(--color-paper);text-decoration:underline;text-underline-offset:2px;}.site-footer a:hover{color:var(--color-footer-link-hover);}.site-footer-inner{display:grid;gap:var(--space-5);}.site-footer .wordmark{color:var(--color-paper);}.site-footer .brand-sub{color:var(--color-footer-muted);}.footer-brand{display:grid;gap:var(--space-1);}.footer-brand p{margin-bottom:0;}.footer-contact{display:grid;gap:var(--space-2);}.footer-contact p{margin-bottom:0;}.footer-address{font-style:normal;line-height:1.6;color:var(--color-footer-muted);}.footer-links{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-1);}.footer-links a{display:inline-block;padding-block:0.25rem;}.footer-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-4);padding-top:var(--space-4);border-top:1px solid rgba(250,247,242,0.2);color:var(--color-footer-muted);}.footer-legal p{margin-bottom:0;}.footer-legal a{color:var(--color-footer-muted);}.footer-legal a:hover{color:var(--color-footer-link-hover);}@media (min-width:48rem){.container{padding-inline:var(--space-4);}.site-nav{order:2;flex:1 1 0;min-width:0;display:flex;justify-content:flex-end;}.site-phone{order:3;}.nav-desktop{display:block;}.nav-toggle{display:none;}.nav-list{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-1);}.nav-item>a{padding:0.625rem 0.875rem;}.has-children>.dropdown{position:absolute;top:100%;left:0;z-index:20;min-width:16rem;margin:0;padding:var(--space-1) 0;background-color:var(--color-paper);border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);display:none;}.has-children:hover>.dropdown,.has-children:focus-within>.dropdown{display:block;}.cards,.testimonial-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));}.bio-page{grid-template-columns:minmax(15rem,22rem) 1fr;}.site-footer-inner{grid-template-columns:1.2fr 1fr 1fr;}.footer-legal{grid-column:1 / -1;}}@media (prefers-reduced-motion:no-preference){.hero-art>.container>*,.hero>.container>*{animation:hero-rise 0.5s ease-out backwards;}@keyframes hero-rise{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}.btn,.nav-item>a,.dropdown a,.site-footer a{transition:background-color 0.2s ease,color 0.2s ease,border-color 0.2s ease;}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important;scroll-behavior:auto !important;}}.bio-initial{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4 / 5;background-color:var(--color-ink);color:var(--color-terracotta);font-family:var(--font-serif);font-size:clamp(4rem,2.5rem + 5vw,6.5rem);font-weight:700;line-height:1;}.bio-page>.bio-initial{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);}.team-card img{object-position:top;}.form-status{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-left-width:4px;border-radius:var(--radius-sm);font-size:var(--fs-400);}.form-status:empty{display:none;}.form-status.is-ok{border-left-color:var(--color-violet-deep);}.form-status.is-error{border-left-color:var(--color-terracotta-deep);}.breadcrumb{margin-top:var(--space-2);margin-bottom:0;font-size:var(--fs-400);color:var(--color-ink-soft);}.breadcrumb--pre{margin-top:0;margin-bottom:var(--space-2);}.breadcrumb--pre a{color:var(--color-ink-soft);}.aggregate-rating{display:flex;align-items:center;gap:0.5rem;}.aggregate-rating .stars{font-size:var(--fs-500);}.aggregate-rating strong{color:var(--color-ink);}.testimonial-disclaimer{margin-top:var(--space-4);margin-bottom:0;font-size:var(--fs-300);color:var(--color-ink-soft);}.testimonial--compact{padding:var(--space-3);}.testimonial--compact blockquote{font-size:var(--fs-400);}
