@layer reset{*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,ol{margin:0}ul[role=list],ol[role=list]{padding:0;list-style:none}html:focus-within{scroll-behavior:smooth}body{min-height:100svh;line-height:1.5}h1,h2,h3,h4{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto}img,picture,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer base{:focus-visible{outline:2px solid var(--color-accent,currentColor);outline-offset:2px}.skip-link{z-index:100;padding:var(--space-2,.5rem) var(--space-4,1rem);background:var(--color-bg,#fff);color:var(--color-text,#000);border:2px solid var(--color-accent,currentColor);position:absolute;top:-100%;left:0}.skip-link:focus{top:0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@layer components;@layer site{:root{--color-bg:#fff;--color-surface:#f6f5f4;--color-text:#142233;--color-muted:#5d6770;--color-line:#e2e1df;--color-accent:#8740c2;--color-accent-dark:#6f33a3;--color-gold:#cc9a35;--color-hero-overlay:#2d1c3aab;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-heading:"Brygada 1918", Georgia, "Times New Roman", serif;--step--1:clamp(.8rem, .77rem + .15vw, .89rem);--step-0:clamp(1rem, .96rem + .2vw, 1.06rem);--step-1:clamp(1.15rem, 1.08rem + .35vw, 1.35rem);--step-2:clamp(1.5rem, 1.35rem + .75vw, 2rem);--step-3:clamp(1.9rem, 1.6rem + 1.5vw, 2.8rem);--step-4:clamp(2.3rem, 1.9rem + 2vw, 3.4rem);--step-5:clamp(2.8rem, 2rem + 4vw, 5.2rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1.25rem;--space-6:2.5rem;--space-8:4rem;--gutter:clamp(1rem, .4rem + 3vw, 2.5rem);--page-width:75rem;--radius:1.25rem}html{color-scheme:light;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--step-0);line-height:1.7}body{flex-direction:column;display:flex}main{padding-bottom:var(--space-8);flex:1}h1,h2,h3{font-family:var(--font-heading);color:var(--color-accent);font-weight:500;line-height:1.2}h1{font-size:var(--step-5);line-height:1.1}h2{font-size:var(--step-3);text-align:center;margin-bottom:var(--space-6)}h3{font-size:var(--step-2)}p+p{margin-top:var(--space-3)}strong,b{font-weight:600}a{color:var(--color-accent);text-underline-offset:.15em}.lede{text-align:center;color:var(--color-muted);max-width:40rem;margin:calc(var(--space-4) * -1) auto var(--space-6)}.block{max-width:calc(var(--page-width) + 2 * var(--gutter));margin:var(--space-8) auto 0;padding-inline:var(--gutter)}.block-rich-text,.block-faq,.block-opening-hours,.block-contact-location,.block-cta-links,.block-service-price-list{max-width:calc(52rem + 2 * var(--gutter))}.site-header{background:var(--color-bg);border-bottom:1px solid var(--color-line)}.site-header-inner{max-width:calc(var(--page-width) + 2 * var(--gutter));padding:var(--space-3) var(--gutter);justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-6);flex-wrap:wrap;margin:0 auto;display:flex}.site-brand{color:var(--color-accent);flex-direction:column;line-height:1.05;text-decoration:none;display:flex}.site-brand-name{font-family:var(--font-body);font-weight:600;font-size:var(--step-2);letter-spacing:-.02em}.site-brand-name:after{content:"♥" / "";color:var(--color-gold);margin-left:.1em;font-size:.8em}.site-brand-tagline{color:var(--color-muted);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase}.site-nav ul{gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.site-nav a{padding-block:var(--space-2);color:var(--color-text);font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid #0000;font-weight:600;text-decoration:none;display:block}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--color-accent);border-bottom-color:var(--color-gold)}.block-hero{color:#fff;background:#2d1c3a;grid-template-rows:1fr auto 1fr;grid-template-columns:1fr;max-width:none;min-height:min(38rem,85svh);margin:0;padding:0;display:grid;overflow:hidden}.block-hero>img{object-fit:cover;grid-area:1/1/span 3;width:100%;height:100%}.block-hero:after{content:"";background:var(--color-hero-overlay);grid-area:1/1/span 3}.block-hero>h1,.block-hero>.lede,.block-hero>.hero-ctas{z-index:1;width:100%;max-width:calc(var(--page-width) + 2 * var(--gutter));padding-inline:var(--gutter);text-align:left;grid-column:1;margin-inline:auto;position:relative}.block-hero>h1{padding-top:var(--space-8);color:#fff;grid-row:1;align-self:end}.block-hero>.lede{margin-block:var(--space-4) 0;font-size:var(--step-1);color:#fff;grid-row:2}.block-hero>.hero-ctas{align-self:start;align-items:flex-start;gap:var(--space-4);margin-top:var(--space-6);padding-bottom:var(--space-8);flex-wrap:wrap;grid-row:3;display:flex}@media (width>=48rem){.block-hero>h1,.block-hero>.lede{padding-right:45%}}.button{padding:var(--space-3) var(--space-6);border:1px solid var(--color-gold);background:var(--color-gold);color:var(--color-text);font-size:var(--step--1);letter-spacing:.15em;text-transform:uppercase;font-weight:600;text-decoration:none;display:inline-block}.button:hover{background:#d9aa4a}.button-secondary{color:var(--color-text);background:0 0}.block-hero .button-secondary{color:#fff;border-color:#fff}.cta-links{justify-content:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.block-cta-links{text-align:center}.feature-rows{display:grid}.feature-row{background:var(--color-surface);display:grid}.feature-row+.feature-row{content-visibility:auto;contain-intrinsic-size:auto 36rem}.feature-row-image{aspect-ratio:4/3;object-fit:cover;width:100%;height:100%}.feature-row-body{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--gutter);text-align:center;flex-direction:column;display:flex}.feature-row-body p{color:var(--color-muted);max-width:30rem;margin:0}.feature-row-heart{color:var(--color-gold)}.feature-row-body .button{margin-top:var(--space-2)}@media (width>=48rem){.feature-row{grid-template-columns:1fr 1fr}.feature-row:nth-child(2n) .feature-row-image{order:2}}.service-category+.service-category{margin-top:var(--space-6)}.service-category h3{padding-bottom:var(--space-2);border-bottom:2px solid var(--color-gold);margin-bottom:var(--space-2)}.service-item{padding-block:var(--space-3);border-bottom:1px solid var(--color-line)}.service-item-heading{justify-content:space-between;align-items:baseline;gap:var(--space-4);display:flex}.service-item-name{font-weight:600}.service-item-price{color:var(--color-accent);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:600}.service-item p:not(.service-item-heading){margin-top:var(--space-1);color:var(--color-muted);font-size:var(--step--1)}.hours{max-width:28rem;margin:0 auto}.hours .row{justify-content:space-between;gap:var(--space-4);padding-block:var(--space-2);border-bottom:1px solid var(--color-line);display:flex}.hours dt{font-weight:600}.block-opening-hours>p{text-align:center;color:var(--color-muted);margin-top:var(--space-3)}.block-contact-location address{text-align:center;font-style:normal}.business-name{font-family:var(--font-heading);font-size:var(--step-1);color:var(--color-accent)}.social-links{justify-content:center;gap:var(--space-4);margin-top:var(--space-3);display:flex}.testimonials{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));display:grid}.testimonials figure{height:100%;padding:var(--space-6) var(--space-4);background:var(--color-surface);border-radius:var(--radius);text-align:center}.testimonials blockquote{font-family:var(--font-heading);font-size:var(--step-0);line-height:1.6}.testimonials figcaption{margin-top:var(--space-3);color:var(--color-muted);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.logo-strip{justify-content:center;gap:var(--space-3) var(--space-6);flex-wrap:wrap;display:flex}.logo-strip span{font-family:var(--font-heading);font-size:var(--step-1);color:var(--color-muted)}.gallery-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));display:grid}.gallery-grid img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius);width:100%}.gallery-grid figcaption{margin-top:var(--space-2);color:var(--color-muted);font-size:var(--step--1);text-align:center}.prose>*+*{margin-top:var(--space-3)}.prose ul,.prose ol{padding-left:1.25em}.faq-items{border-top:1px solid var(--color-line)}.faq-items details{border-bottom:1px solid var(--color-line);padding-block:var(--space-3)}.faq-items summary{cursor:pointer;font-weight:600}.faq-items .prose{margin-top:var(--space-2);color:var(--color-muted)}.note{color:var(--color-muted);font-size:var(--step--1)}.site-footer{margin-top:var(--space-8);background:linear-gradient(180deg, var(--color-accent-dark), var(--color-accent));color:#fff;font-size:var(--step--1)}.site-footer-inner{max-width:calc(var(--page-width) + 2 * var(--gutter));padding:var(--space-6) var(--gutter);justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-6);flex-wrap:wrap;margin:0 auto;display:flex}.site-footer-note{font-weight:600}}
