:root{--font-fallback:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--color-primary:#111111;--color-primary-contrast:#ffffff;--color-accent:#666666;--color-background:#ffffff;--color-surface:#f6f6f6;--color-text:#111111;--color-muted:#6b7280;--color-border:#e5e7eb;--color-success:#16a34a;--color-danger:#dc2626;--font-body:var(--font-fallback);--font-heading:var(--font-fallback);--font-size-base:16px;--type-scale:1.25;--radius:12px;--spacing:16px;--container:1200px}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-body),var(--font-fallback);font-size:var(--font-size-base);line-height:1.6}[data-theme=dark]{color-scheme:dark}img,svg,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-heading),var(--font-fallback);line-height:1.2;margin:0 0 calc(var(--spacing) * .75);overflow-wrap:break-word}h3{font-size:calc(var(--font-size-base) * var(--type-scale))}h2{font-size:calc(var(--font-size-base) * var(--type-scale) * var(--type-scale))}h1{font-size:calc(var(--font-size-base) * var(--type-scale) * var(--type-scale) * var(--type-scale))}p{margin:0 0 var(--spacing)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--spacing)}.main{min-height:60vh;padding-block:calc(var(--spacing) * 2) calc(var(--spacing) * 4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.7em 1.4em;border-radius:var(--radius);background:var(--color-primary);color:var(--color-primary-contrast);border:1px solid transparent;font:inherit;font-weight:600;cursor:pointer;transition:filter .12s ease,background .12s ease}.btn,.btn:hover{text-decoration:none}.btn:hover{filter:brightness(1.08)}.btn:disabled{opacity:.5;cursor:not-allowed;filter:none}[data-button=pill] .btn{border-radius:999px}[data-button=outline] .btn{background:transparent;color:var(--color-primary);border-color:currentColor}[data-button=ghost] .btn{background:transparent;color:var(--color-primary);border-color:transparent}[data-button=ghost] .btn:hover,[data-button=outline] .btn:hover{background:color-mix(in srgb,var(--color-primary) 10%,transparent);filter:none}.btn--secondary{background:var(--color-surface);border-color:var(--color-border)}.btn--secondary,[data-button=ghost] .btn--secondary,[data-button=outline] .btn--secondary{color:var(--color-text)}.btn--sm{padding:.45em .9em;font-size:.9em}.card{border-radius:var(--radius);background:var(--color-surface);overflow:hidden}[data-card=bordered] .card{border:1px solid var(--color-border)}[data-card=shadow] .card{box-shadow:0 1px 3px rgb(0 0 0/.1),0 8px 24px rgb(0 0 0/.06)}.grid{display:grid;grid-gap:calc(var(--spacing) * 1.5);gap:calc(var(--spacing) * 1.5);grid-template-columns:repeat(var(--cols,3),1fr)}@media (max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.grid{grid-template-columns:repeat(var(--cols-mobile,1),1fr)}}.header{border-bottom:1px solid var(--color-border);background:var(--color-background);position:-webkit-sticky;position:sticky;top:0;z-index:40}.header__inner{gap:calc(var(--spacing) * 1.5);min-height:64px}.header__brand,.header__inner{display:flex;align-items:center}.header__brand{gap:.6em;font-family:var(--font-heading),var(--font-fallback);font-weight:700;font-size:1.15em;color:var(--color-text)}.header__brand:hover{text-decoration:none}.header__brand img{height:36px;width:auto}.header__nav{display:flex;align-items:center;gap:var(--spacing);flex-wrap:wrap}.header__nav a{color:var(--color-text);opacity:.85}.header__nav a:hover{opacity:1;color:var(--color-primary);text-decoration:none}.header__spacer{flex:1 1}[data-header=centered] .header__inner{flex-direction:column;padding-block:var(--spacing);gap:calc(var(--spacing) * .75)}[data-header=centered] .header__spacer{display:none}[data-header=minimal] .header{border-bottom:0}[data-header=minimal] .header__nav{gap:calc(var(--spacing) * .75)}.cart-badge{position:relative;display:inline-flex;align-items:center;gap:.4em;color:var(--color-text);font-weight:600}.cart-badge:hover{color:var(--color-primary);text-decoration:none}.cart-badge__count{min-width:1.5em;height:1.5em;padding-inline:.35em;border-radius:999px;background:var(--color-primary);color:var(--color-primary-contrast);font-size:.8em;display:inline-flex;align-items:center;justify-content:center}.footer{border-top:1px solid var(--color-border);background:var(--color-surface);padding-block:calc(var(--spacing) * 2.5);margin-top:calc(var(--spacing) * 2)}.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-gap:calc(var(--spacing) * 2);gap:calc(var(--spacing) * 2)}@media (max-width:720px){.footer__grid{grid-template-columns:1fr}}.footer h3{font-size:1em}.footer ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:.5em;gap:.5em}.footer a{color:var(--color-text);opacity:.85}.footer a:hover{opacity:1}.footer__muted{color:var(--color-muted);font-size:.9em;margin-top:calc(var(--spacing) * 1.5)}.preview{background:var(--color-accent);color:var(--color-primary-contrast);text-align:center;padding:.5em var(--spacing);font-size:.9em;font-weight:600}.blocks>*+*{margin-top:calc(var(--spacing) * 3)}.block__inner{max-width:var(--container);margin-inline:auto;padding-inline:var(--spacing)}.block--hero{position:relative;display:grid;align-items:center;overflow:hidden;color:var(--color-text)}.block--hero[data-has-image]{color:#ffffff}.block--hero .hero__bg{position:absolute;inset:0;object-fit:cover;width:100%;height:100%}.block--hero .hero__overlay{position:absolute;inset:0;background:linear-gradient(rgb(0 0 0/.35),rgb(0 0 0/.45))}.block--hero .block__inner{position:relative;width:100%;padding-block:calc(var(--spacing) * 3)}.block--hero[data-height=small]{min-height:240px}.block--hero[data-height=medium]{min-height:380px}.block--hero[data-height=large]{min-height:540px}.block--hero[data-height=full]{min-height:calc(100vh - 64px)}.block--hero[data-align=center]{text-align:center}.block--hero[data-align=right]{text-align:right}.hero__subtitle{font-size:1.15em;opacity:.9;max-width:40em}.block--hero[data-align=center] .hero__subtitle{margin-inline:auto}.block--hero[data-align=right] .hero__subtitle{margin-left:auto}.rich-text[data-width=narrow]{max-width:42em;margin-inline:auto}.rich-text[data-width=wide]{max-width:none}.rich-text img{border-radius:var(--radius)}.block--cta{padding-block:calc(var(--spacing) * 3);text-align:center}.block--cta[data-style=primary]{background:var(--color-primary);color:var(--color-primary-contrast)}.block--cta[data-style=accent]{background:var(--color-accent);color:var(--color-primary-contrast)}.block--cta[data-style=surface]{background:var(--color-surface)}.block--cta[data-style=accent] .btn,.block--cta[data-style=primary] .btn{background:var(--color-primary-contrast);color:var(--color-text)}.block--cta p{max-width:38em;margin-inline:auto}.features-grid{display:grid;grid-template-columns:repeat(var(--cols,3),1fr);grid-gap:calc(var(--spacing) * 1.5);gap:calc(var(--spacing) * 1.5)}@media (max-width:800px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.features-grid{grid-template-columns:1fr}}.feature{padding:calc(var(--spacing) * 1.25)}.feature h3{font-size:1.05em;margin-bottom:.4em}.feature p{color:var(--color-muted);margin:0}.feature__icon{font-size:1.6em;margin-bottom:.5em}.faq details{border-bottom:1px solid var(--color-border);padding-block:calc(var(--spacing) * .75)}.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:1.3em;color:var(--color-muted)}.faq details[open] summary:after{content:"–"}.faq details>div{padding-top:calc(var(--spacing) * .5);color:var(--color-muted)}.gallery-grid{display:grid;grid-template-columns:repeat(var(--cols,3),1fr);grid-gap:calc(var(--spacing) * .75);gap:calc(var(--spacing) * .75)}@media (max-width:700px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}.gallery-grid img{border-radius:var(--radius);aspect-ratio:1;object-fit:cover;width:100%}.gallery--masonry{columns:var(--cols,3) 240px;column-gap:calc(var(--spacing) * .75)}.gallery--masonry>*{page-break-inside:avoid;break-inside:avoid;margin-bottom:calc(var(--spacing) * .75)}.gallery--masonry img{border-radius:var(--radius);width:100%}.carousel{display:flex;gap:calc(var(--spacing) * .75);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.5em}.carousel>*{flex:0 0 min(72vw,380px);scroll-snap-align:start}.carousel img{border-radius:var(--radius);aspect-ratio:1;object-fit:cover;width:100%}.contact-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:.75em;gap:.75em}.contact-list a{font-weight:600}.map-embed{border:0;width:100%;height:400px;border-radius:var(--radius)}.spacer[data-size=sm]{height:var(--spacing)}.spacer[data-size=md]{height:calc(var(--spacing) * 2)}.spacer[data-size=lg]{height:calc(var(--spacing) * 4)}.spacer[data-size=xl]{height:calc(var(--spacing) * 6)}.product-card{display:flex;flex-direction:column;color:inherit;height:100%}.product-card:hover{text-decoration:none}.product-card__media{aspect-ratio:1;background:var(--color-surface);position:relative}.product-card__media img{object-fit:cover;width:100%;height:100%}.product-card__body{padding:calc(var(--spacing) * .9);display:flex;flex-direction:column;gap:.35em;flex:1 1}.product-card__name{font-weight:600;line-height:1.35}.product-card__desc{color:var(--color-muted);font-size:.88em;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card__price{margin-top:auto;font-weight:700;display:flex;align-items:baseline;gap:.5em;flex-wrap:wrap}.product-card__price s{color:var(--color-muted);font-weight:400;font-size:.88em}.badge{display:inline-block;padding:.2em .6em;border-radius:999px;font-size:.78em;font-weight:600;background:var(--color-surface);color:var(--color-muted);border:1px solid var(--color-border)}.badge--sale{background:var(--color-accent);color:var(--color-primary-contrast);border:0}.badge--success{color:var(--color-success)}.badge--danger,.badge--success{border-color:currentColor;background:transparent}.badge--danger{color:var(--color-danger)}.product-card__oos{position:absolute;top:.6em;left:.6em}.product-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-gap:calc(var(--spacing) * 2.5);gap:calc(var(--spacing) * 2.5);align-items:start}@media (max-width:820px){.product-layout{grid-template-columns:1fr}}.pgallery__main{aspect-ratio:1;border-radius:var(--radius);overflow:hidden;background:var(--color-surface)}.pgallery__main img{width:100%;height:100%;object-fit:cover}.pgallery__thumbs{display:flex;gap:calc(var(--spacing) * .5);margin-top:calc(var(--spacing) * .5);overflow-x:auto}.pgallery__thumbs button{flex:0 0 64px;aspect-ratio:1;border-radius:calc(var(--radius) * .6);overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;background:var(--color-surface)}.pgallery__thumbs button[aria-current=true]{border-color:var(--color-primary)}.pgallery__thumbs img{width:100%;height:100%;object-fit:cover}.ppanel{display:grid;grid-gap:calc(var(--spacing) * 1.25);gap:calc(var(--spacing) * 1.25)}.ppanel h1{margin-bottom:0}.ppanel__price{font-size:1.5em;font-weight:700;display:flex;align-items:baseline;gap:.5em;flex-wrap:wrap}.ppanel__price s{color:var(--color-muted);font-weight:400;font-size:.7em}.ppanel__extra{color:var(--color-muted);font-size:.9em}.ppanel fieldset{border:0;padding:0;margin:0}.ppanel legend{font-weight:600;margin-bottom:.5em;padding:0}.legend-value{color:var(--color-muted);font-weight:400}.option-values{display:flex;flex-wrap:wrap;gap:.5em}.option-btn{padding:.45em .95em;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer}.option-btn[aria-pressed=true]{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));font-weight:600}.option-btn:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}.swatch{width:2.2em;height:2.2em;border-radius:50%;border:2px solid var(--color-border);cursor:pointer;padding:0}.swatch[aria-pressed=true]{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-background),0 0 0 4px var(--color-primary)}.swatch:disabled{opacity:.3;cursor:not-allowed}.option-img{width:3.4em;height:3.4em;border-radius:calc(var(--radius) * .6);border:2px solid var(--color-border);overflow:hidden;padding:0;cursor:pointer;background:var(--color-surface)}.option-img[aria-pressed=true]{border-color:var(--color-primary)}.option-img:disabled{opacity:.3;cursor:not-allowed}.option-img img{width:100%;height:100%;object-fit:cover}.qty{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.qty button{width:2.6em;height:2.6em;border:0;background:var(--color-surface);font-size:1em;cursor:pointer;color:var(--color-text)}.qty button:disabled{opacity:.4;cursor:not-allowed}.qty span{min-width:2.6em;text-align:center;font-weight:600}.ppanel__row{display:flex;gap:var(--spacing);align-items:center;flex-wrap:wrap}.low-stock{color:var(--color-danger);font-weight:600;font-size:.9em}.prose img{border-radius:var(--radius)}.breadcrumbs{font-size:.88em;color:var(--color-muted);margin-bottom:calc(var(--spacing) * 1.5)}.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4em}.breadcrumbs li+li:before{content:"›";margin-right:.4em}.breadcrumbs a{color:var(--color-muted)}.breadcrumbs a:hover{color:var(--color-primary)}.field{display:grid;grid-gap:.35em;gap:.35em}.field label{font-weight:600;font-size:.95em}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{width:100%;padding:.65em .85em;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--color-primary);outline-offset:0;border-color:var(--color-primary)}.field[data-invalid=true] input,.field[data-invalid=true] select,.field[data-invalid=true] textarea{border-color:var(--color-danger)}.field .hint{color:var(--color-muted);font-size:.85em;margin:0}.field .error{color:var(--color-danger);font-size:.85em;margin:0;font-weight:600}.choice-group{display:grid;grid-gap:.5em;gap:.5em}.choice-group label{font-weight:400;cursor:pointer}.checkbox-row,.choice-group label{display:flex;align-items:center;gap:.6em}.checkbox-row label{font-weight:400}.cart-lines{grid-gap:var(--spacing)}.cart-line,.cart-lines{display:grid;gap:var(--spacing)}.cart-line{grid-template-columns:72px 1fr auto;grid-gap:var(--spacing);align-items:center;padding:var(--spacing)}@media (max-width:560px){.cart-line{grid-template-columns:56px 1fr}.cart-line__end{grid-column:2;justify-self:end}}.cart-line__img{width:100%;aspect-ratio:1;border-radius:calc(var(--radius) * .6);object-fit:cover;background:var(--color-surface)}.cart-line__name{font-weight:600}.cart-line__meta{color:var(--color-muted);font-size:.85em}.cart-line__end{display:grid;grid-gap:.5em;gap:.5em;justify-items:end}.cart-line__price{font-weight:700}.link-danger{background:none;border:0;color:var(--color-danger);font:inherit;font-size:.85em;cursor:pointer;padding:0}.summary{padding:calc(var(--spacing) * 1.25);display:grid;grid-gap:.6em;gap:.6em;align-content:start}.summary__row{display:flex;justify-content:space-between;gap:var(--spacing)}.summary__row--total{font-weight:700;font-size:1.15em;border-top:1px solid var(--color-border);padding-top:.6em}.cart-layout,.checkout-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-gap:calc(var(--spacing) * 2);gap:calc(var(--spacing) * 2);align-items:start}@media (max-width:820px){.cart-layout,.checkout-layout{grid-template-columns:1fr}}.checkout-form{display:grid;grid-gap:calc(var(--spacing) * 1.5);gap:calc(var(--spacing) * 1.5)}.checkout-section{display:grid;grid-gap:var(--spacing);gap:var(--spacing);padding:calc(var(--spacing) * 1.25)}.checkout-section>h2{font-size:1.1em;margin:0}.method-option{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing);padding:.8em var(--spacing);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer}.method-option:has(input:checked){border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 6%,transparent)}.method-option>span{display:flex;align-items:center;gap:.6em}.method-option .fee{color:var(--color-muted);font-size:.9em}.alert{padding:.8em var(--spacing);border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface)}.alert--danger{border-color:var(--color-danger);color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 8%,transparent)}.alert--success{border-color:var(--color-success);color:var(--color-success);background:color-mix(in srgb,var(--color-success) 8%,transparent)}.order-head{display:flex;align-items:center;gap:var(--spacing);flex-wrap:wrap;margin-bottom:calc(var(--spacing) * 1.5)}.order-head h1{margin:0}.order-items{display:grid;grid-gap:calc(var(--spacing) * .75);gap:calc(var(--spacing) * .75)}.order-item{display:flex;justify-content:space-between;gap:var(--spacing);padding:calc(var(--spacing) * .75) var(--spacing)}.order-item__meta{color:var(--color-muted);font-size:.85em}.order-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-gap:calc(var(--spacing) * 2);gap:calc(var(--spacing) * 2);align-items:start}@media (max-width:820px){.order-grid{grid-template-columns:1fr}}.empty{text-align:center;padding:calc(var(--spacing) * 4) var(--spacing);display:grid;grid-gap:var(--spacing);gap:var(--spacing);justify-items:center}.empty h1{margin:0}.page-title,.toolbar{margin-bottom:calc(var(--spacing) * 1.5)}.toolbar{display:flex;gap:var(--spacing);align-items:center;flex-wrap:wrap}.toolbar form{display:flex;gap:.5em;flex:1 1;min-width:220px}.toolbar input[type=search]{flex:1 1}.toolbar input[type=search],.toolbar select{padding:.6em .85em;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit}.chips{display:flex;gap:.5em;flex-wrap:wrap;margin-bottom:calc(var(--spacing) * 1.5)}.chip{padding:.4em .9em;border-radius:999px;border:1px solid var(--color-border);color:var(--color-text);font-size:.9em}.chip:hover{text-decoration:none;border-color:var(--color-primary);color:var(--color-primary)}.chip[aria-current=true]{background:var(--color-primary);color:var(--color-primary-contrast);border-color:var(--color-primary)}.pagination{display:flex;gap:.4em;justify-content:center;margin-top:calc(var(--spacing) * 2);flex-wrap:wrap}.pagination a,.pagination span{min-width:2.4em;height:2.4em;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);border:1px solid var(--color-border);color:var(--color-text)}.pagination [aria-current=page]{background:var(--color-primary);color:var(--color-primary-contrast);border-color:var(--color-primary)}.pagination a:hover{text-decoration:none;border-color:var(--color-primary)}.section-title{margin-bottom:var(--spacing)}.honeypot{position:absolute;left:-9999px}