/* Refinement layer. Preserve the current dark/green identity and typefaces. */
:root {
  --symple-bg:#0f0f0f; --symple-surface:#181818; --symple-raised:#202020;
  --symple-text:#f5f5f5; --symple-muted:#bdbdbd; --symple-border:#3c3c3c;
  --symple-accent:#2ac862; --symple-accent-hover:#48da7b; --symple-error:#ffb0b0;
  --symple-body:'Inter',Arial,sans-serif; --symple-heading:'Roboto Mono',monospace;
  --symple-radius:12px; --symple-content:1160px;
}
body.symple-refinement{background:var(--symple-bg);color:var(--symple-text);font-family:var(--symple-body);font-size:16px;line-height:1.65}
.symple-refinement ::selection{background:var(--symple-accent);color:var(--symple-bg)}
.symple-refinement :is(input,textarea){caret-color:var(--symple-accent)}
.symple-refinement a{text-underline-offset:.22em;text-decoration-thickness:1px}
.symple-refinement :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--symple-accent);outline-offset:4px}
.symple-refinement :is(button,input,textarea,select){font:inherit}
.symple-refinement :is(h1,h2,h3){text-wrap:balance;overflow-wrap:break-word}
.symple-refinement :is(.symple-commerce,.symple-refined,.web-page,.symple-policy){min-width:0}
.symple-refinement .top-blocks .block-header{background:#101010;backdrop-filter:none;-webkit-backdrop-filter:none}
.symple-refinement .burger,.symple-refinement .block-header-cart__button{min-width:44px;min-height:44px}
.symple-refinement .block-header-layout-mobile__dropdown:not(.block-header-layout-mobile__dropdown--open){visibility:hidden}
.symple-refinement .block-header-layout-mobile__dropdown--open{visibility:visible}
.symple-refinement #zSiG-O a{color:inherit}
.symple-refinement #zSiG-O a:hover{color:var(--symple-accent)}
.symple-refinement :is(#ai-fA-7OD,#ai-kPdjCN) p{white-space:normal!important;overflow-wrap:anywhere!important}

/* The hero keeps the workshop imagery, with real content defining its height. */
.symple-hero{padding:64px 32px 72px;background:var(--symple-bg)}
.symple-hero-inner{max-width:var(--symple-content);margin:auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:56px}
.symple-hero-copy h1{font:600 clamp(32px,4vw,52px)/1.2 var(--symple-heading);letter-spacing:-.035em;margin:0 0 28px}
.symple-hero-copy>p{font-size:18px;color:var(--symple-muted);line-height:1.75;max-width:48ch;margin:0 0 32px}
.symple-hero-photo{margin:0;min-width:0}
.symple-hero-photo img{width:100%;height:auto;aspect-ratio:1.12;object-fit:cover;object-position:55% center;display:block;border-radius:var(--symple-radius)}
.symple-hero-photo figcaption{margin-top:14px;color:var(--symple-muted);font-size:14px}
.symple-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px 24px}
.symple-refinement .symple-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;box-sizing:border-box;border:1px solid transparent;border-radius:28px;background:var(--symple-accent);color:#0f0f0f;font:600 16px/1.5 var(--symple-body);text-decoration:none;cursor:pointer;transition:background-color .18s ease}
.symple-refinement .symple-button:hover{background:var(--symple-accent-hover)}
.symple-refinement .symple-text-link{color:var(--symple-text);font-weight:500;display:inline-flex;align-items:center;min-height:44px}
.symple-refinement .symple-info{padding:72px 32px}
.symple-refinement .symple-info h2{font-size:clamp(26px,3vw,38px);line-height:1.3;letter-spacing:-.025em;margin-bottom:24px}
.symple-refinement .symple-info .symple-info-lead{max-width:70ch;font-size:18px;line-height:1.8}
.symple-service-paths{margin-top:36px;scroll-margin-top:200px}
.symple-service-paths article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px 48px;padding:28px 0;border-top:1px solid var(--symple-border)}
.symple-service-paths article:last-child{border-bottom:1px solid var(--symple-border)}
.symple-refinement .symple-service-paths h3{font-size:23px;margin:0 0 10px}
.symple-refinement .symple-service-paths p{max-width:65ch;margin:0}
.symple-service-paths a{min-height:44px;display:inline-flex;align-items:center;gap:12px;padding-block:8px}
.symple-refinement .symple-info-card img{height:auto;aspect-ratio:1.39;object-fit:cover}
.symple-refinement .symple-info-card a{display:inline-flex;align-items:center;min-height:44px}
.symple-refinement .symple-events{padding:72px 32px}
.symple-refinement .symple-events-heading p{font-size:16px;max-width:65ch;line-height:1.8}
.symple-refinement .symple-event-arrows button{width:44px;height:44px}
.symple-refinement .symple-event-dots{gap:0;flex-wrap:wrap}
.symple-refinement .symple-event-dot{width:32px;height:32px;background:transparent;position:relative}
.symple-refinement .symple-event-dot:before{content:'';display:block;width:10px;height:10px;background:#888;border-radius:50%;margin:auto}
.symple-refinement .symple-event-dot[aria-current=true]:before{background:var(--symple-accent)}
.symple-refinement .symple-event-track{scroll-padding:0;touch-action:pan-x pan-y}

/* Service pages keep their current scope, prices and native checkout. */
.symple-refinement .web-page .web-hero{max-width:900px;padding-bottom:40px}
.symple-refinement .web-page .web-hero h1{letter-spacing:-.03em;margin:0 0 24px}
.symple-refinement .web-page :is(.web-service p,.web-service li,.web-pricing>p,.web-referral li){font-size:16px;line-height:1.8;color:var(--symple-muted)}
.symple-refinement .web-service{gap:28px}
.symple-refinement .web-service-icon{background:transparent;border:0;border-radius:0}
.symple-refinement .web-page .web-price{padding:28px;gap:0}
.symple-refinement .web-page .web-price h3{min-height:0;font-size:21px;line-height:1.45}
.symple-refinement .web-page .web-price .web-price-value{min-height:0;white-space:normal;font-variant-numeric:tabular-nums}
.symple-refinement .web-page .web-price .web-price-value span{font-size:14px;color:var(--symple-muted)}
.symple-refinement .web-page .web-price .web-plan-note{font-size:14px;color:var(--symple-muted);line-height:1.7;margin-bottom:20px!important}
.symple-refinement .web-plan-features li{font-size:15px;line-height:1.75}
.symple-plan-link{margin-top:auto;display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:underline}
.symple-refinement #website-pricing,.symple-refinement #social-media-plan{scroll-margin-top:200px}
.symple-refinement .symple-import-enquiry{border-top:1px solid var(--symple-border);margin-top:48px;padding-top:32px}
.symple-import-enquiry ul{list-style:disc;padding-left:24px;margin:20px 0 28px}
.symple-import-enquiry li{margin-block:8px}
.symple-refinement .symple-mod-card p{font-size:16px}
.symple-refinement .symple-mod-price{font-variant-numeric:tabular-nums}

/* Readable forms with inline recovery and server-rendered feedback. */
.symple-refinement .symple-commerce:has(.symple-contact),.symple-refinement .symple-commerce:has(.symple-faq){padding-top:56px}
.symple-contact{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:64px;align-items:start}
.symple-refinement .symple-contact h1{font-size:clamp(30px,3.8vw,44px);letter-spacing:-.035em;line-height:1.25;margin:0 0 28px}
.symple-contact-intro>p{max-width:56ch;color:var(--symple-muted);margin:0 0 24px}
.symple-refinement .symple-contact h2{font-size:20px;line-height:1.4;margin:32px 0 16px}
.symple-contact-details{margin:32px 0}
.symple-contact-details>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--symple-border)}
.symple-contact-details dt{color:var(--symple-muted)}
.symple-contact-details dd{margin:0;overflow-wrap:anywhere}
.symple-refinement .symple-contact-details a{color:var(--symple-text)}
.symple-contact-intro .symple-secondary{font-size:14px}
.symple-enquiry-form{padding:32px;background:var(--symple-surface);border:1px solid var(--symple-border);border-radius:var(--symple-radius)}
.symple-field{margin-bottom:24px}
.symple-field label{display:block;font-weight:500;margin-bottom:10px;color:var(--symple-text)}
.symple-field label span{font-size:14px;font-weight:400;color:var(--symple-muted)}
.symple-refinement .symple-field :is(input,select,textarea){font:400 16px/1.6 var(--symple-body);box-sizing:border-box;width:100%;min-width:0;max-width:100%;border:1px solid #727272;border-radius:8px;background:var(--symple-bg);color:var(--symple-text);padding:12px 14px;min-height:48px;color-scheme:dark}
.symple-field textarea{resize:vertical;min-height:180px}
.symple-field :is(input,select,textarea):hover{border-color:var(--symple-muted)}
.symple-refinement .symple-field [aria-invalid=true]{border-color:var(--symple-error)}
.symple-field-help{color:var(--symple-muted);font-size:14px;line-height:1.65;margin:10px 0 0}
.symple-field-error{color:var(--symple-error);font-size:14px;margin:10px 0 0}
.symple-feedback{padding:24px;margin-bottom:24px;border:1px solid var(--symple-border);border-radius:var(--symple-radius);background:var(--symple-surface)}
.symple-refinement .symple-feedback h2{margin:0 0 12px;font-size:21px}
.symple-feedback p{margin:0;color:var(--symple-muted)}
.symple-feedback ul{list-style:disc;padding-left:22px;margin:0}
.symple-refinement .symple-error,.symple-refinement .symple-error a{color:var(--symple-error)}
.symple-success{border-color:var(--symple-accent)}
.symple-submit-status{display:block;margin-top:12px;color:var(--symple-muted);font-size:14px}
.symple-enquiry-form button:disabled{opacity:.7;cursor:wait}

/* Native disclosure controls make help easy to scan and keyboard accessible. */
.symple-faq{max-width:850px;margin:0 auto}
.symple-refinement .symple-faq h1{font-size:clamp(30px,4vw,44px);line-height:1.3;letter-spacing:-.03em}
.symple-faq header p{color:var(--symple-muted);max-width:65ch;margin-bottom:40px}
.symple-faq-list details{border-top:1px solid var(--symple-border)}
.symple-faq-list details:last-child{border-bottom:1px solid var(--symple-border)}
.symple-faq-list summary{padding:24px 4px;font-weight:600;font-size:18px;cursor:pointer;line-height:1.5}
.symple-faq-list summary::marker{color:var(--symple-accent)}
.symple-faq-list details>div{padding:0 24px 24px}
.symple-faq-list p{color:var(--symple-muted);margin:0;max-width:70ch}
.symple-refinement .symple-faq~#shipping-and-returns{padding:56px 0!important;scroll-margin-top:190px}
.symple-refinement .symple-faq~#shipping-and-returns .block-layout{width:100%!important;max-width:850px!important;display:block!important;min-height:0!important}
.symple-refinement .symple-faq~#shipping-and-returns .layout-element{margin-bottom:24px}

@media(max-width:920px){
 .symple-hero{padding:48px 24px}
 .symple-hero-inner{gap:32px}
 .symple-hero-copy h1{font-size:34px}
 .symple-hero-copy>p{font-size:16px}
 .symple-contact{gap:36px}
 .symple-refinement .symple-commerce:has(.symple-contact),.symple-refinement .symple-commerce:has(.symple-faq){padding-top:40px}
}
@media(max-width:700px){
 .symple-hero-inner{grid-template-columns:1fr;gap:32px}
 .symple-hero-copy h1{font-size:clamp(30px,7.6vw,40px);max-width:21ch}
 .symple-hero-copy>p{max-width:50ch}
 .symple-hero-photo img{aspect-ratio:1.7}
 .symple-refinement .symple-info,.symple-refinement .symple-events{padding:48px 24px}
 .symple-service-paths article{grid-template-columns:minmax(0,1fr);gap:12px}
 .symple-refinement .symple-service-paths h3{font-size:21px}
 .symple-refinement .symple-info .symple-info-lead{font-size:16px}
 .symple-contact{grid-template-columns:minmax(0,1fr);gap:24px}
 .symple-enquiry-form{padding:24px 20px}
 .symple-refinement .web-page .web-price{padding:24px}
 .symple-refinement .symple-mod-price{white-space:normal}
 .symple-service-paths,.symple-refinement #website-pricing,.symple-refinement #social-media-plan{scroll-margin-top:130px}
 .symple-faq-list summary{font-size:17px}
 .symple-faq-list details>div{padding-left:4px;padding-right:4px}
}
@media(prefers-reduced-motion:reduce){.symple-refinement .symple-button{transition:none}.symple-refinement .symple-event-track{scroll-behavior:auto}}
