.wv-site :is(h1,h2,h3,h4){color:inherit}.wv-site :is(h1,h2,h3,h4,p,ul,ol){margin-block-start:0}.wv-site{max-width:none;margin:0}
@font-face{font-family:"Lora";src:url("/wp-content/themes/client-glow-and-co-studio/assets/weaver/fonts/lora.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("/wp-content/themes/client-glow-and-co-studio/assets/weaver/fonts/source-sans-3.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap}
.wv-site{--bg:#FBF6F1;--ink:#2B211D;--pri:#8A4B3C;--acc:#D9A86C;--tint:#F2E8E3;--line:#DED8D3;--muted:#655D58;
--pmuted:#D1CBC7;--r:22px;--hf:"Lora",Georgia,"Times New Roman",serif;--bf:"Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--hw:650;--ht:none;--hs:-0.01em;
--hbg:#F2E8E3;--hink:#2B211D;--bbg:#8A4B3C;--bink:#FFFFFF;--alt:#F2E8E3}
.wv-site *{box-sizing:border-box}
.wv-site{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){.wv-site{scroll-behavior:auto}}
.wv-site{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 var(--bf);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
.wv-site h1, .wv-site h2, .wv-site h3{font-family:var(--hf);font-weight:var(--hw);text-transform:var(--ht);line-height:1.12;margin:0 0 .4em;letter-spacing:var(--hs);text-wrap:balance}
.wv-site h1{font-size:clamp(2.2rem,7vw,3.8rem)}
.wv-site h2{font-size:clamp(1.7rem,4.5vw,2.5rem)}
.wv-site h3{font-size:1.18rem}
.wv-site p{margin:0 0 1em;text-wrap:pretty}
.wv-site a{color:var(--pri)}
.wv-site a:focus-visible, .wv-site button:focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.wv-site ul{list-style:none;margin:0;padding:0}
.wv-site .wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.wv-site .narrow{max-width:760px}
.wv-site .skip{position:absolute;left:-999px}
.wv-site .skip:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px 12px;z-index:9}
.wv-site .bar{background:#0B1522;color:#EAF0F6;font:14px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;padding:8px 16px;text-align:center}
.wv-site .bar a{color:#F2B705}
.wv-site .top{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.wv-site .top .wrap{display:flex;align-items:center;justify-content:space-between;min-height:60px;gap:12px}
.wv-site .brand{font-family:var(--hf);font-weight:var(--hw);text-transform:var(--ht);font-size:1.2rem;color:var(--ink);text-decoration:none}
.wv-site .top nav a{color:var(--ink);text-decoration:none;margin-left:18px;font-size:15px}
.wv-site .top nav a:hover{color:var(--pri)}
@media (max-width:720px){.wv-site .top nav a:not(.btn){display:none}}
.wv-site .btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:12px 22px;border-radius:var(--r);background:var(--bbg);color:var(--bink);
text-decoration:none;border:2px solid transparent;font:inherit;font-weight:700;cursor:pointer}
.wv-site .btn .ic{width:20px;height:20px}
.wv-site .btn.small{min-height:40px;padding:8px 14px;font-size:15px}
.wv-site .btn.ghost{background:transparent;color:var(--pri);border-color:var(--pri)}
.wv-site .btn[disabled], .wv-site .btn[aria-disabled]{cursor:not-allowed;opacity:.85;color:var(--bink)}
.wv-site .btn.ghost[disabled], .wv-site .btn.ghost[aria-disabled]{color:var(--pri)}
.wv-site .book .btn{margin-left:auto}
.wv-site .top .btn{min-height:42px;padding:8px 16px;background:var(--pri);color:#fff}
.wv-site .hero{position:relative;overflow:hidden;background:var(--hbg);color:var(--hink);padding:clamp(64px,12vw,132px) 0 clamp(56px,10vw,116px)}
.wv-site .hero .weave{position:absolute;inset:0;width:100%;height:100%}
.wv-site .hero-in{position:relative;z-index:1;max-width:1120px}
.wv-site .hero h1, .wv-site .hero .lead{max-width:17em}
.wv-site .hero .lead{font-size:1.2rem;max-width:30em}
.wv-site .hero .kicker{color:var(--hink)}
.wv-site .cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:28px}
.wv-site .where{display:inline-flex;align-items:center;gap:6px;margin:0}
.wv-site .hero-centred{text-align:center}
.wv-site .hero-centred h1, .wv-site .hero-centred .lead{margin-left:auto;margin-right:auto}
.wv-site .hero-centred .cta{justify-content:center}
.wv-site .hero-band h1{font-size:clamp(2.5rem,9vw,4.8rem);max-width:14em}
.wv-site .hero-frame .hero-card{position:relative;background:var(--bg);border-radius:calc(var(--r) * 1.4);padding:clamp(28px,6vw,56px);max-width:720px;
border:1px solid var(--line)}
@media (max-width:720px){.wv-site .hero .weave{opacity:.45}}
.wv-site .kicker{text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:700;color:var(--muted);margin-bottom:10px}
.wv-site .sec{padding:clamp(56px,9vw,100px) 0}
.wv-site .sec:nth-of-type(even){background:var(--alt)}
.wv-site .sec-head{margin-bottom:32px;max-width:40em}
.wv-site .lead{color:inherit}
.wv-site .sec .lead, .wv-site .small{color:var(--muted)}
.wv-site .small{font-size:15px}
.wv-site .body{font-size:1.1rem}
.wv-site .split{display:grid;gap:12px 56px}
@media (min-width:860px){.wv-site .split{grid-template-columns:5fr 7fr;align-items:start}
.wv-site .split .body{margin-top:6px}}
.wv-site .grid{display:grid;gap:20px}
.wv-site .cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.wv-site .card{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.wv-site .card .ic{color:var(--pri);margin-bottom:12px}
.wv-site .card p{margin:0;color:var(--muted)}
.wv-site .services-tiles .card:nth-child(odd){background:var(--pri);color:#FFFFFF;border-color:var(--pri)}
.wv-site .services-tiles .card:nth-child(odd) p, .wv-site .services-tiles .card:nth-child(odd) .ic{color:#FFFFFF}
.wv-site .services-tiles .card:nth-child(even){background:var(--tint)}
.wv-site .services-list .svc{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:0 40px}
.wv-site .services-list li{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
.wv-site .services-list p{margin:0;color:var(--muted)}
.wv-site .ic-ring{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid var(--line);color:var(--pri)}
.wv-site .services-numbered .svc{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:36px 32px}
.wv-site .services-numbered li{border-top:2px solid var(--ink);padding-top:18px}
.wv-site .services-numbered p{margin:0;color:var(--muted)}
.wv-site .num{display:block;font-family:var(--hf);font-size:2.4rem;line-height:1;color:var(--pri);margin-bottom:12px;font-weight:var(--hw)}
.wv-site .photos{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
@media (min-width:720px){.wv-site .gallery-mosaic .photos{grid-template-columns:repeat(3,1fr)}
.wv-site .gallery-mosaic .photo:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}}
.wv-site .photo{aspect-ratio:4/3;border-radius:var(--r);display:flex;align-items:flex-end;padding:14px;border:1px dashed var(--line);
background:repeating-linear-gradient(135deg,var(--tint) 0 14px,var(--bg) 14px 28px)}
.wv-site .photo.ph-1{background:repeating-linear-gradient(45deg,var(--tint) 0 10px,var(--bg) 10px 20px)}
.wv-site .photo.ph-2{background:radial-gradient(circle at 30% 30%,var(--tint) 0 2px,transparent 3px) 0 0/16px 16px,var(--bg)}
.wv-site .photo span{display:flex;gap:8px;align-items:center;background:var(--bg);border-radius:8px;padding:6px 10px;font-size:14px}
.wv-site .price-list li{display:flex;align-items:baseline;gap:10px;padding:14px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.wv-site .dots{flex:1;border-bottom:2px dotted var(--line);min-width:20px}
.wv-site .pval{font-weight:700}
.wv-site .prices-menu .price-list{display:grid;gap:0 48px}
@media (min-width:860px){.wv-site .prices-menu .price-list{grid-template-columns:1fr 1fr}}
.wv-site .prices-menu .pname{font-family:var(--hf);font-size:1.1rem}
.wv-site .price-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.wv-site .price-cards .card{display:flex;flex-direction:column;gap:10px}
.wv-site .price-cards .pval{font-family:var(--hf);font-size:1.6rem;color:var(--pri)}
.wv-site .contact-list{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin-bottom:24px}
.wv-site .contact-list li{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg)}
.wv-site .contact-list .ic{color:var(--pri);flex:none;margin-top:3px}
.wv-site .contact-list strong{display:block;font-weight:600;overflow-wrap:anywhere}
.wv-site .contact-panel .contact-box{background:var(--ink);color:var(--bg);border-radius:var(--r);padding:clamp(28px,6vw,64px)}
.wv-site .contact-panel .contact-list li{background:none;border:0;border-top:1px solid color-mix(in srgb,var(--bg) 25%,transparent);border-radius:0;padding:18px 0 0;box-shadow:none}
.wv-site .contact-panel .small{color:var(--pmuted)}
.wv-site .contact-panel .ic{color:var(--acc)}
.wv-site .contact-panel .btn.ghost{color:var(--bg);border-color:var(--bg)}
.wv-site .contact-panel mark.ph{color:var(--ink)}
.wv-site mark.ph{background:color-mix(in srgb,var(--acc) 30%,var(--bg));color:var(--ink);border-radius:4px;padding:0 4px;font-weight:600}
.wv-site .addon{border:1px solid var(--line);border-radius:var(--r);padding:clamp(20px,4vw,32px);background:var(--bg);margin-bottom:24px}
.wv-site .addon-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:20px}
.wv-site .addon-head .ic{color:var(--pri);flex:none}
.wv-site .addon-head p{margin:0;color:var(--muted)}
.wv-site .demo{display:grid;gap:14px;max-width:520px}
.wv-site .demo label{display:grid;gap:6px;font-weight:600;font-size:15px}
.wv-site .demo input{min-height:48px;border:1px solid var(--line);border-radius:calc(var(--r) / 2);padding:10px 12px;font:inherit;background:var(--tint)}
.wv-site .chips{display:flex;flex-wrap:wrap;gap:10px}
.wv-site .chips li{border:1px solid var(--line);border-radius:999px;padding:8px 16px;background:var(--tint)}
.wv-site .chips.amounts li{border:0;padding:0;background:none}
.wv-site .ticks{display:grid;gap:10px;margin-bottom:16px}
.wv-site .ticks li{display:flex;gap:10px}
.wv-site .ticks .ic{color:var(--pri);flex:none}
.wv-site .event{display:flex;gap:14px}
.wv-site .event p{margin:0}
.wv-site footer{background:#0B1522;color:#EAF0F6;padding:40px 0;font-size:15px}
.wv-site footer a{color:#F2B705}
.wv-site footer p{margin:0 0 6px}
.wv-site .photo{position:relative;overflow:hidden}
.wv-site .photo .art{position:absolute;inset:0;width:100%;height:100%}
.wv-site .photo span{position:relative}
.wv-site .ticker{overflow:hidden;background:var(--pri);color:#fff;border-block:1px solid var(--line)}
.wv-site .ticker .track{display:flex;width:max-content;gap:0;padding:14px 0}
.wv-site .ticker li{font-family:var(--hf);font-weight:var(--hw);text-transform:var(--ht);font-size:1.05rem;white-space:nowrap;padding:0 28px;display:flex;align-items:center;gap:28px}
.wv-site .ticker li::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--acc)}
.wv-site .card, .wv-site .contact-list li, .wv-site .addon, .wv-site .hero-card{box-shadow:0 10px 30px -18px color-mix(in srgb,var(--pri) 45%,transparent)}
.wv-site .btn{border-radius:999px}
.wv-site .mood{margin:0;position:relative}
.wv-site .mood img{display:block;width:100%;height:100%;object-fit:cover}
.wv-site .brand .logo{display:block;height:44px;width:auto;max-width:200px;object-fit:contain}
.wv-site .photo.own{padding:0;border-style:solid;align-items:stretch}
.wv-site .photo.own img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wv-site .photo.own span{position:absolute;left:12px;bottom:12px}
.wv-site .stars.real{font:1.1rem/1 system-ui,sans-serif;letter-spacing:2px;height:auto}
.wv-site .rev-list small{color:var(--muted)}
.wv-site .mood-video{background:center/cover no-repeat}
.wv-site .mood-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (prefers-reduced-motion:reduce){.wv-site .mood-video video{display:none}}
.wv-site .mood .tint{position:absolute;inset:0;pointer-events:none}
.wv-site.tint-wash .mood img{filter:saturate(.85) contrast(1.03)}
.wv-site.tint-wash .mood .tint{background:var(--pri);mix-blend-mode:color;opacity:.3}
.wv-site.tint-duo .mood img{filter:grayscale(1) contrast(1.12)}
.wv-site.tint-duo .mood .tint{background:linear-gradient(135deg,var(--pri),var(--acc));mix-blend-mode:color;opacity:.8}
.wv-site .mood figcaption{z-index:2;position:absolute;right:10px;bottom:8px;font:12px/1.3 system-ui,sans-serif;color:#fff;background:rgba(0,0,0,.45);padding:3px 8px;border-radius:99px}
.wv-site .mood-back{position:absolute;inset:0}
.wv-site .mood-back::after{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--hbg) 62%,transparent)}
.wv-site .hero-frame .mood-back::after{background:color-mix(in srgb,var(--ink) 25%,transparent)}
.wv-site .has-photo.hero-centred{color:var(--hink)}
.wv-site .mood-side{border-radius:calc(var(--r) * 1.4);overflow:hidden;aspect-ratio:4/3;box-shadow:0 40px 80px -40px color-mix(in srgb,var(--ink) 70%,transparent)}
.wv-site .has-photo .hero-in{display:grid;gap:36px;align-items:center}
@media (min-width:900px){.wv-site .has-photo:not(.hero-centred):not(.hero-frame) .hero-in{grid-template-columns:6fr 5fr}
.wv-site .has-photo .mood-side{transform:rotate(1.5deg)}}
.wv-site .has-photo.hero-giant h1{font-size:clamp(2.6rem,6.5vw,5.2rem)}
.wv-site .mood-tile{grid-column:1/-1;border-radius:var(--r);overflow:hidden;aspect-ratio:16/7;margin-bottom:14px}
.wv-site .bento-wrap{display:grid}
.wv-site .step-list{list-style:none;margin:0;padding:0;display:grid;gap:24px;counter-reset:s}
@media (min-width:800px){.wv-site .step-list{grid-template-columns:repeat(3,1fr)}}
.wv-site .sn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--pri);color:#fff;font-family:var(--hf);font-weight:700;margin-bottom:14px}
.wv-site .step-list p{color:var(--muted);margin:0}
.wv-site .steps-line .step-list li{position:relative;padding-top:4px}
@media (min-width:800px){.wv-site .steps-line .step-list li:not(:last-child)::after{content:"";position:absolute;top:26px;left:58px;right:-12px;border-top:2px dashed var(--line)}}
.wv-site .steps-cards .step-list li{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.wv-site .why-list{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.wv-site .why-list li{border-left:3px solid var(--acc);padding:6px 0 6px 20px}
.wv-site .why-list .ic{color:var(--pri);margin-bottom:10px}
.wv-site .why-list p{margin:0;color:var(--muted)}
.wv-site .faq-list{display:grid;gap:12px}
.wv-site .faq details{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);padding:0 20px}
.wv-site .faq summary{cursor:pointer;padding:18px 0;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}
.wv-site .faq summary::-webkit-details-marker{display:none}
.wv-site .faq summary::after{content:"+";font-size:1.4rem;line-height:1;color:var(--pri)}
.wv-site .faq details[open] summary::after{content:"−"}
.wv-site .faq details p{margin:0 0 18px;color:var(--muted)}
.wv-site .visit-grid{display:grid;gap:32px}
@media (min-width:860px){.wv-site .visit-grid{grid-template-columns:3fr 2fr;align-items:start}}
.wv-site .hours li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.wv-site .area{background:var(--pri);color:#fff;border-radius:calc(var(--r) * 1.3);padding:clamp(24px,4vw,48px);display:flex;gap:20px;align-items:flex-start}
.wv-site .area h2{color:#fff}
.wv-site .area .big{font-family:var(--hf);font-size:1.6rem;margin:6px 0}
.wv-site .area mark.ph{color:var(--ink)}
.wv-site .rev-list{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.wv-site .rev-list li{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:10px}
.wv-site .stars{color:var(--acc);font:700 3rem/0.6 Georgia,serif;height:24px}
.wv-site .rev-list p{margin:0}
.wv-site .motif{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.wv-site .motif-glow span{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55}
.wv-site .motif-glow span:nth-child(1){width:46vw;height:46vw;right:-8vw;top:-12vw;background:var(--acc)}
.wv-site .motif-glow span:nth-child(2){width:30vw;height:30vw;right:22vw;bottom:-14vw;background:var(--pri);opacity:.35}
.wv-site .motif-glow span:nth-child(3){width:18vw;height:18vw;right:12vw;top:30%;background:var(--tint);opacity:.8}
.wv-site .motif-dots{background:radial-gradient(color-mix(in srgb,var(--pri) 55%,transparent) 1.4px,transparent 1.6px) 0 0/18px 18px;
-webkit-mask:linear-gradient(105deg,transparent 38%,#000 75%);mask:linear-gradient(105deg,transparent 38%,#000 75%);opacity:.6}
.wv-site .motif-dots span{display:none}
@media (max-width:720px){.wv-site .motif{opacity:.35}
.wv-site .motif-glow span{filter:blur(40px)}}
.wv-site .hero-giant h1{font-size:clamp(2.8rem,9.5vw,7rem);max-width:12em;line-height:1}
.wv-site .hero-giant .lead{font-size:1.25rem;max-width:34em}
.wv-site .hero-giant .cta{border-top:1px solid color-mix(in srgb,var(--hink) 25%,transparent);padding-top:24px;margin-top:32px}
.wv-site .hero-bento .hero-in{display:grid;gap:28px;align-items:center}
@media (min-width:900px){.wv-site .hero-bento .hero-in{grid-template-columns:7fr 5fr}}
.wv-site .bento{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}
.wv-site .bento li{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--r);padding:20px;min-height:132px;
display:flex;flex-direction:column;justify-content:space-between;gap:10px;box-shadow:0 18px 40px -30px color-mix(in srgb,var(--ink) 50%,transparent)}
.wv-site .bento li:nth-child(1){background:var(--pri);color:#fff;border-color:var(--pri)}
.wv-site .bento li:nth-child(4){background:var(--acc);color:var(--ink);border-color:var(--acc)}
.wv-site .bento .ic{width:30px;height:30px}
.wv-site .bento b{font-family:var(--hf);font-size:1.05rem;line-height:1.25}
@media (prefers-reduced-motion:no-preference){.wv-site .m-draw{stroke-dasharray:1600;stroke-dashoffset:1600;animation:m-draw 2.6s .3s cubic-bezier(.4,0,.2,1) forwards}
@keyframes m-draw{to{stroke-dashoffset:0}}
.wv-site .m-float{animation:m-float 7s ease-in-out infinite alternate;animation-delay:var(--d)}
@keyframes m-float{to{transform:translateY(-16px) rotate(4deg)}}
.wv-site .m-float{transform-box:fill-box;transform-origin:center}
.wv-site .m-slide{animation:m-slide 18s ease-in-out infinite alternate}
@keyframes m-slide{to{transform:translateX(-40px)}}
.wv-site .m-drift{animation:m-drift 26s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}
@keyframes m-drift{to{transform:rotate(6deg) scale(1.05)}}
.wv-site .motif-glow span{animation:m-glow 16s ease-in-out infinite alternate}
.wv-site .motif-glow span:nth-child(2){animation-duration:21s}
@keyframes m-glow{to{transform:translate(-6vw,4vw) scale(1.15)}}
.wv-site .bento li{animation:wv-up .7s cubic-bezier(.2,.7,.2,1) both}
.wv-site .bento li:nth-child(2){animation-delay:.15s}
.wv-site .bento li:nth-child(3){animation-delay:.3s}
.wv-site .bento li:nth-child(4){animation-delay:.45s}}
@media (prefers-reduced-motion:no-preference){.wv-site .hero .weave{animation:wv-drift 30s ease-in-out infinite alternate;transform-origin:70% 50%}
@keyframes wv-drift{from{transform:scale(1.03)}to{transform:scale(1.08) translateY(-10px)}}
.wv-site .hero h1 .w{display:inline-block;animation:wv-up .6s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i) * 60ms + .1s)}
.wv-site .hero .kicker, .wv-site .hero .lead, .wv-site .hero .cta{animation:wv-up .7s cubic-bezier(.2,.7,.2,1) both}
.wv-site .hero .lead{animation-delay:.45s}
.wv-site .hero .cta{animation-delay:.6s}
@keyframes wv-up{from{opacity:0;transform:translateY(.5em)}to{opacity:1;transform:none}}
.wv-site .hero .kicker::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--acc);margin-right:10px;
vertical-align:middle;animation:wv-pulse 2.4s ease-out infinite}
@keyframes wv-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--acc) 60%,transparent)}100%{box-shadow:0 0 0 10px transparent}}
.wv-site .hero .cta .btn{animation:wv-nudge .6s ease-in-out 2.2s 3}
@keyframes wv-nudge{50%{transform:translateX(4px)}}
.wv-site .card, .wv-site .contact-list li, .wv-site .price-cards .card{transition:transform .25s ease,box-shadow .25s ease}
.wv-site .card:hover, .wv-site .contact-list li:hover{transform:translateY(-4px);box-shadow:0 18px 40px -24px color-mix(in srgb,var(--ink) 55%,transparent)}
.wv-site .btn{transition:transform .2s ease,filter .2s ease}
.wv-site .btn:hover{transform:translateY(-2px);filter:brightness(1.06)}
.wv-site .ticker .track{animation:wv-tick 38s linear infinite}
.wv-site .ticker:hover .track{animation-play-state:paused}
@keyframes wv-tick{to{transform:translateX(-50%)}}
.wv-site .photo .art{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.wv-site .photo:hover .art{transform:scale(1.08) rotate(.6deg)}
.wv-site.art-threads .hero::after{content:"";position:absolute;inset:-20%;pointer-events:none;background:radial-gradient(closest-side,color-mix(in srgb,var(--acc) 22%,transparent),transparent);
width:60%;height:80%;left:40%;top:10%;animation:wv-glow 14s ease-in-out infinite alternate;opacity:.55}
@keyframes wv-glow{from{transform:translate(0,0)}to{transform:translate(-30%,12%)}}
.wv-site .hero-in{z-index:1}
@media (min-width:720px){.wv-site .services-cards .svc, .wv-site .services-tiles .svc{display:block;max-width:820px}
.wv-site .services-cards .svc>li, .wv-site .services-tiles .svc>li{position:sticky;top:calc(90px + var(--n) * 16px);margin-bottom:28px;min-height:190px;
box-shadow:0 -12px 40px -28px color-mix(in srgb,var(--ink) 60%,transparent)}}
@media (min-width:960px){.wv-site .services-cards .wrap, .wv-site .services-tiles .wrap{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:56px;align-items:start}
.wv-site .services-cards .sec-head, .wv-site .services-tiles .sec-head{position:sticky;top:110px;text-align:left;margin-left:0}}
@supports (animation-timeline:view()){.wv-site .sec-head, .wv-site .svc>li, .wv-site .photo, .wv-site .price-list li, .wv-site .price-cards .card, .wv-site .contact-list li, .wv-site .addon, .wv-site .sec .body{animation:wv-in linear both;
animation-timeline:view();animation-range:entry 0% entry 45%}
@keyframes wv-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}}}
.fx-js .wv-site .sec-head, .fx-js .wv-site .step-list li, .fx-js .wv-site .why-list li, .fx-js .wv-site .faq details, .fx-js .wv-site .price-list li{animation:none}
.fx-js .wv-site .card:hover, .fx-js .wv-site .bento li:hover, .fx-js .wv-site .rev-list li:hover{background-image:radial-gradient(420px circle at var(--sx,50%) var(--sy,50%),
color-mix(in srgb,var(--acc) 16%,transparent),transparent 60%)}
@property --fx-a{syntax:'<angle>';inherits:false;initial-value:0deg}
.wv-site .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wv-site .fx-rays, .wv-site .fx-grid, .wv-site .fx-meteors{position:absolute;inset:0;overflow:hidden;overflow:clip;contain:paint;pointer-events:none}
.wv-site .fx-rays span{position:absolute;top:-30%;width:14%;height:150%;left:calc(30% + var(--x,0%));transform-origin:top center;
background:linear-gradient(to bottom,color-mix(in srgb,var(--acc) 38%,transparent),transparent 70%);filter:blur(14px);opacity:.55;mix-blend-mode:screen}
.wv-site .fx-rays span:nth-child(1){--x:0%;transform:rotate(18deg)}
.wv-site .fx-rays span:nth-child(2){--x:12%;transform:rotate(10deg);width:8%}
.wv-site .fx-rays span:nth-child(3){--x:26%;transform:rotate(4deg)}
.wv-site .fx-rays span:nth-child(4){--x:38%;transform:rotate(-4deg);width:9%}
.wv-site .fx-rays span:nth-child(5){--x:50%;transform:rotate(-12deg)}
.wv-site .fx-rays span:nth-child(6){--x:60%;transform:rotate(-20deg);width:7%}
.wv-site .fx-grid{perspective:420px;top:auto;height:62%;-webkit-mask:linear-gradient(transparent,#000 40%);mask:linear-gradient(transparent,#000 40%)}
.wv-site .fx-grid div{position:absolute;inset:-60% -50% 0;transform:rotateX(62deg);transform-origin:bottom;
background-image:linear-gradient(to right,color-mix(in srgb,var(--hink) 22%,transparent) 1px,transparent 1px),
linear-gradient(to bottom,color-mix(in srgb,var(--hink) 22%,transparent) 1px,transparent 1px);background-size:56px 56px}
.wv-site .fx-meteors span{position:absolute;top:calc(var(--n) * 7% - 20%);left:calc(35% + var(--n) * 6%);width:2px;height:2px;border-radius:50%;
background:var(--acc);box-shadow:0 0 0 1px color-mix(in srgb,var(--acc) 30%,transparent);transform:rotate(215deg);opacity:0}
.wv-site .fx-meteors span::after{content:"";position:absolute;top:50%;left:0;width:90px;height:1px;transform:translateY(-50%);
background:linear-gradient(90deg,var(--acc),transparent)}
.wv-site .fx-rotate{margin:18px 0 0;font-weight:600}
.wv-site .fx-rotate .rot{display:inline-grid;vertical-align:bottom;margin-left:.35em}
.wv-site .fx-rotate .rot b{grid-area:1/1;color:var(--acc);opacity:0}
.wv-site .fx-rotate .rot b:first-child{opacity:1}
.wv-site .hero-centred .fx-rotate{text-align:center}
.wv-site.use-beam .card{position:relative}
.wv-site.use-beam .card::after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;pointer-events:none;
background:conic-gradient(from var(--fx-a),transparent 72%,var(--acc),var(--pri),transparent 98%);
-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.wv-site.use-shimmer .hero .cta .btn, .wv-site.use-rainbow .hero .cta .btn{position:relative;overflow:hidden}
.wv-site.use-rainbow .hero .cta .btn{border:2px solid transparent;background-image:linear-gradient(var(--bbg),var(--bbg)),
linear-gradient(90deg,#ff5a5a,#ffb300,#3ddc84,#3d8bff,#b04dff,#ff5a5a);background-origin:border-box;
background-clip:padding-box,border-box;background-size:100% 100%,200% 100%}
.wv-site.use-shiny .hero h1 .w{background:linear-gradient(110deg,var(--hink) 42%,color-mix(in srgb,var(--acc) 65%,var(--hink)) 50%,var(--hink) 58%);
background-size:250% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;color:transparent}
@media (prefers-reduced-motion:no-preference){.wv-site .fx-rays span{animation:fx-sway 9s ease-in-out infinite alternate}
.wv-site .fx-rays span:nth-child(even){animation-duration:12s}
@keyframes fx-sway{50%{opacity:.25}to{opacity:.6;translate:3% 0}}
.wv-site .fx-grid div{animation:fx-run 3.5s linear infinite}
@keyframes fx-run{to{background-position:0 56px}}
.wv-site .fx-meteors span{animation:fx-fall 5s linear infinite;animation-delay:calc(var(--n) * .7s)}
@keyframes fx-fall{0%{opacity:0;translate:0 0}8%{opacity:1}70%{opacity:1}100%{opacity:0;translate:-520px 520px}}
.wv-site .fx-rotate .rot b{animation:fx-rot calc(var(--k) * 2.6s) infinite;animation-delay:calc(var(--i) * 2.6s)}
.wv-site .fx-rotate .rot b:first-child{opacity:0}
@keyframes fx-rot{0%{opacity:0;transform:translateY(.6em)}3%,30%{opacity:1;transform:none}33.3%,100%{opacity:0;transform:translateY(-.6em)}}
.wv-site.use-beam .card::after{animation:fx-spin 6s linear infinite}
.wv-site.use-beam .card:nth-child(2n)::after{animation-delay:-3s}
@keyframes fx-spin{to{--fx-a:360deg}}
.wv-site.use-shimmer .hero .cta .btn::after{content:"";position:absolute;inset:0;pointer-events:none;
background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.5) 50%,transparent 65%);transform:translateX(-120%);animation:fx-shim 3.4s ease-in-out 1.5s infinite}
@keyframes fx-shim{40%,100%{transform:translateX(120%)}}
.wv-site.use-rainbow .hero .cta .btn{animation:fx-bow 3s linear infinite}
@keyframes fx-bow{to{background-position:0 0,200% 0}}
.wv-site.use-pulse .hero .cta .btn{animation:fx-pulse 2.4s ease-out 1.2s infinite}
@keyframes fx-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--bbg) 55%,transparent)}100%{box-shadow:0 0 0 18px transparent}}
.wv-site.use-shiny .hero h1 .w{animation:wv-up .6s cubic-bezier(.2,.7,.2,1) both,fx-shine 5s ease-in-out 1.6s infinite;
animation-delay:calc(var(--i) * 60ms + .1s),1.6s}
@keyframes fx-shine{0%{background-position:100% 0}45%,100%{background-position:-50% 0}}}
.wv-site .ex{font-style:italic;opacity:.85}