@layer properties,theme,base;@layer components{.about-portrait{align-items:center;gap:1.5rem;display:grid}.about-img{border-radius:var(--photo-radius,var(--radius-card));box-shadow:var(--photo-frame,none);filter:var(--photo-filter,none)}@media (min-width:768px){.about-portrait{grid-template-columns:.8fr 1.2fr}}}@layer utilities;
@layer properties,theme,base;@layer components{.field{gap:.35rem;display:grid}.field-label{font-weight:700;display:block}.field-mark,.field-optional{color:var(--text-muted)}.field-optional{font-weight:400}.field-hint{color:var(--text-muted);font-size:.9rem}.photo-note{color:var(--text);font-weight:600;display:block}.field-control{background:var(--field-bg);width:100%;min-height:44px;color:var(--text);border:1px solid var(--field-border);border-radius:var(--radius-control);font:inherit;padding:.65rem .8rem;font-size:1rem;line-height:1.4}.field-control::placeholder{color:var(--text-muted);opacity:.8}.field-control[aria-invalid=true]{border-color:var(--error)}.field-textarea{resize:vertical;border-radius:min(var(--radius-control), 12px);min-height:9rem}.field-error{color:var(--error);font-weight:600}.field-error:before{content:"Error: "}.choice-group{border:0;min-width:0;margin:0;padding:0}.choice-grid{gap:.5rem;display:grid}@media (min-width:640px){.choice-grid-2{grid-template-columns:1fr 1fr}}.choice{cursor:pointer;border:2px solid var(--line);border-radius:min(var(--radius-control), 16px);background:var(--field-bg);align-items:flex-start;gap:.75rem;min-height:48px;padding:.75rem 1rem;display:flex}.choice[data-checked=true]{border-color:var(--text)}.choice input{width:1.5rem;height:1.5rem;accent-color:var(--accent);flex:none;margin-top:.1rem}.choice-text{min-width:0;display:grid}.choice-label{font-weight:600}.choice-description{color:var(--text-muted);font-size:.9rem}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-wrap{max-width:36rem;margin-inline:auto}.contact-form{text-align:left;gap:1rem;display:grid;position:relative}.contact-form-submit{justify-items:start;gap:.75rem;display:grid}.privacy-note{color:var(--text-muted);font-size:.9rem}.privacy-note a{align-items:center;min-height:24px;display:inline-flex}.form-success{border:2px solid var(--text);border-radius:min(var(--radius-card), 16px);padding:1rem;font-weight:600}.form-failed{border:2px solid var(--error);border-radius:min(var(--radius-card), 16px);padding:1rem}.form-failed-text{font-weight:600}.form-failed-actions{flex-wrap:wrap;gap:.75rem;margin-top:.75rem;display:flex}.form-nojs{display:none}@media (scripting:none){.contact-form{display:none}.form-nojs{border:2px solid var(--text);border-radius:min(var(--radius-card), 16px);justify-items:start;gap:.75rem;padding:1rem;display:grid}}}@layer utilities;
@layer properties,theme,base;@layer components{.cta-split{text-align:center;justify-items:center;gap:1.25rem;display:grid}.cta-split p{max-width:40rem}.cta-split .section-title{margin-bottom:.5rem}}@layer utilities;
@layer properties,theme,base;@layer components{.faq{border-top:1px solid var(--line);max-width:44rem;margin-inline:auto}.faq details{border-bottom:1px solid var(--line)}.faq summary{text-align:center;cursor:pointer;grid-template-columns:1.5rem 1fr 1.5rem;align-items:center;gap:.75rem;min-height:48px;padding-block:1rem;font-size:1.0625rem;font-weight:700;list-style:none;display:grid}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:""}.faq summary:after{content:"+";color:var(--link);font:700 1.5rem/1 var(--font-display);justify-self:end}.faq details[open] summary:after{content:"–"}.faq details p{text-align:center;max-width:40rem;margin-inline:auto;padding-bottom:1.25rem}}@layer utilities;
@layer properties,theme,base;@layer components{.hero{background:var(--hero-bg);color:var(--hero-text);border-bottom:var(--hero-edge,0 none)}.hero-copy{text-align:center;padding-block:clamp(2.5rem,6vw,5rem)}.hero-eyebrow{font-family:var(--font-kicker,inherit);font-weight:var(--kicker-weight,700);letter-spacing:var(--kicker-tracking,.04em);text-transform:var(--kicker-transform,uppercase);font-size:var(--kicker-size,.875rem);line-height:var(--kicker-line,inherit);color:var(--hero-accent,var(--hero-text))}.hero-title{font-family:var(--font-display);font-size:var(--hero-title-size,clamp(2rem, 1.2rem + 4vw, 3.5rem));line-height:var(--hero-title-line,1.1);font-weight:var(--hero-title-weight,var(--display-weight,inherit));text-wrap:balance;margin-block:.5rem 1rem}.hero-sub{margin-inline:auto;max-width:36rem;margin-bottom:1.75rem;font-size:1.125rem}.hero-clause{text-wrap:balance;display:block}.hero-rating{justify-content:center;margin-top:1.25rem;display:flex}.hero-grid{align-items:center;gap:2rem;display:grid}.hero-img{border-radius:var(--hero-img-radius,var(--radius-card));width:100%;height:auto;box-shadow:var(--hero-img-shadow,none);filter:var(--hero-img-filter,none);padding:var(--hero-img-pad,0);border:var(--hero-img-border,0 none);background:var(--hero-img-bg,none);box-sizing:border-box;margin-bottom:2rem}.hero-split:after,.hero-centered:after{content:"";height:var(--hero-strip-height,0);background:var(--hero-strip,none);display:block}@media (min-width:768px){.hero-grid{grid-template-columns:1.1fr .9fr}.hero-split .hero-copy{text-align:left}.hero-split .hero-sub{margin-inline:0}.hero-split .hero-rating{justify-content:flex-start}.hero-img{margin-block:2rem}}.hero-photo{isolation:isolate;color:var(--hero-scrim-text,var(--cta-text));position:relative}.hero-photo-img{object-fit:cover;z-index:-2;filter:var(--hero-photo-filter,none)}.hero-photo:after{content:"";z-index:-1;background:var(--hero-overlay,none), var(--hero-scrim,color-mix(in srgb, var(--cta-bg) 78%, transparent));position:absolute;inset:0}.hero-photo .hero-eyebrow{color:var(--hero-scrim-kicker,inherit)}}@layer utilities;
@layer properties,theme,base;@layer components{.open-now{text-align:center;min-height:1.6em;margin-bottom:1rem;font-weight:700}.open-yes{color:var(--link)}.open-no{color:var(--text-muted)}}@layer utilities;
@layer properties,theme,base;@layer components{.hours-table{border-collapse:collapse;margin-inline:auto}.hours-table th,.hours-table td{border-bottom:1px solid var(--line);text-align:left;padding:.5rem 1rem}.hours-compact{text-align:center}.special-hours,.where{text-align:center;margin-top:1.5rem}.where a{align-items:center;min-height:44px;display:inline-flex}}@layer utilities;
