{"id":329,"date":"2026-10-27T16:49:22","date_gmt":"2026-10-27T16:49:22","guid":{"rendered":"https:\/\/tattoobooking.online\/?page_id=329"},"modified":"2026-10-27T16:52:36","modified_gmt":"2026-10-27T16:52:36","slug":"tattoo-removal","status":"publish","type":"page","link":"https:\/\/tattoobooking.online\/?page_id=329","title":{"rendered":"Tattoo Removal"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"329\" class=\"elementor elementor-329\">\n\t\t\t\t<div class=\"aux-parallax-section elementor-element elementor-element-66d3b67 e-con-full e-flex e-con e-parent\" data-id=\"66d3b67\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-397755c elementor-widget elementor-widget-html\" data-id=\"397755c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- TATTOO REMOVAL SERVICES PAGE | Paste into an Elementor HTML widget (full width section) -->\r\n<!-- Placeholders to replace: hero video URL, 3 video links (data-video), gallery image URLs, studio details -->\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Oswald:wght@500;600;700&family=Poppins:wght@300;400;500;600&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n.trm{--o:#ff5a1f;--o2:#ff7a45;--k:#0a0a0a;--k2:#141414;--k3:#1d1d1d;--w:#fff;--g:#a9a9a9;font-family:'Poppins',sans-serif;color:var(--w);background:var(--k);line-height:1.7;overflow:hidden;width:100%}\r\n.trm *{box-sizing:border-box;margin:0;padding:0}\r\n.trm a{text-decoration:none;color:inherit}\r\n.trm svg{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}\r\n.trm .wrap{max-width:1200px;margin:0 auto;padding:0 24px}\r\n.trm h1,.trm h2,.trm h3,.trm h4{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.02em;line-height:1.1;font-weight:600}\r\n.trm .eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--o);font-size:13px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;margin-bottom:16px}\r\n.trm .eyebrow:before{content:\"\";width:34px;height:2px;background:var(--o)}\r\n.trm .sec{padding:100px 0}\r\n.trm .sec h2{font-size:clamp(32px,4.6vw,54px);margin-bottom:16px}\r\n.trm .sec .lead{color:var(--g);max-width:620px;font-weight:300}\r\n.trm .btn{display:inline-flex;align-items:center;gap:10px;background:var(--o);color:#fff;border:2px solid var(--o);padding:15px 32px;font:500 13px 'Poppins',sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:.3s;border-radius:2px}\r\n.trm .btn:hover{background:transparent;color:var(--o);transform:translateY(-2px)}\r\n.trm .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}\r\n.trm .btn.ghost:hover{border-color:var(--o);color:var(--o)}\r\n\r\n\/* reveal *\/\r\n.trm .rv{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s ease}\r\n.trm .rv.in{opacity:1;transform:none}\r\n.trm .d1{transition-delay:.1s}.trm .d2{transition-delay:.2s}.trm .d3{transition-delay:.3s}.trm .d4{transition-delay:.4s}\r\n\r\n\/* hero *\/\r\n.trm .hero{position:relative;min-height:92vh;display:flex;align-items:center;background:#000}\r\n.trm .hero video,.trm .hero .hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}\r\n.trm .hero .hero-poster{background:radial-gradient(circle at 70% 30%,#2a1208,#000 70%)}\r\n.trm .hero:after{content:\"\";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.55) 55%,rgba(0,0,0,.3) 100%),linear-gradient(0deg,var(--k) 0%,transparent 30%)}\r\n.trm .hero .wrap{position:relative;z-index:2;padding-top:120px;padding-bottom:140px}\r\n.trm .hero h1{font-size:clamp(46px,8vw,110px);margin-bottom:22px}\r\n.trm .hero h1 span{color:var(--o);display:block}\r\n.trm .hero p{max-width:560px;color:#d6d6d6;font-weight:300;font-size:17px;margin-bottom:38px}\r\n.trm .hero .cta{display:flex;flex-wrap:wrap;gap:16px}\r\n.trm .hero .scroll{position:absolute;left:24px;bottom:34px;z-index:3;display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--g)}\r\n.trm .hero .scroll i{width:1px;height:46px;background:linear-gradient(var(--o),transparent);animation:trmln 2s infinite}\r\n@keyframes trmln{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}\r\n\r\n\/* info strip *\/\r\n.trm .strip{position:relative;z-index:5;margin-top:-70px}\r\n.trm .strip .box{display:grid;grid-template-columns:repeat(3,1fr);background:var(--k2);border:1px solid #262626;border-top:3px solid var(--o)}\r\n.trm .strip .it{padding:30px 34px;display:flex;gap:18px;align-items:center;border-right:1px solid #262626}\r\n.trm .strip .it:last-child{border:0}\r\n.trm .strip .ic{width:50px;height:50px;border:1px solid var(--o);color:var(--o);display:grid;place-items:center;font-size:22px}\r\n.trm .strip h4{font-family:'Poppins';font-size:11px;letter-spacing:.2em;color:var(--g);font-weight:500;margin-bottom:2px}\r\n.trm .strip p{font-weight:500}\r\n\r\n\/* services *\/\r\n.trm .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:54px}\r\n.trm .card{background:var(--k2);border:1px solid #262626;padding:38px 30px;position:relative;overflow:hidden;transition:.4s}\r\n.trm .card:before{content:\"\";position:absolute;left:0;bottom:0;width:100%;height:0;background:var(--o);transition:.45s;z-index:0}\r\n.trm .card>*{position:relative;z-index:1}\r\n.trm .card:hover:before{height:100%}\r\n.trm .card:hover{transform:translateY(-8px);border-color:var(--o)}\r\n.trm .card .ic{font-size:40px;color:var(--o);margin-bottom:26px;transition:.4s}\r\n.trm .card:hover .ic{color:#fff}\r\n.trm .card h3{font-size:24px;margin-bottom:12px}\r\n.trm .card p{color:var(--g);font-size:15px;font-weight:300;transition:.4s}\r\n.trm .card:hover p{color:#fff}\r\n.trm .card .more{margin-top:22px;display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;cursor:pointer}\r\n\r\n\/* videos *\/\r\n.trm .vids{background:var(--k2)}\r\n.trm .vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:54px}\r\n.trm .vcard{position:relative;aspect-ratio:16\/10;background:linear-gradient(135deg,#2b130a,#0d0d0d);background-size:cover;background-position:center;cursor:pointer;overflow:hidden;border:1px solid #2a2a2a}\r\n.trm .vcard:after{content:\"\";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.1) 60%);transition:.4s}\r\n.trm .vcard:hover:after{background:linear-gradient(0deg,rgba(255,90,31,.75),rgba(0,0,0,.2) 70%)}\r\n.trm .vcard .play{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;background:var(--o);display:grid;place-items:center;font-size:26px;transition:.4s}\r\n.trm .vcard .play:before{content:\"\";position:absolute;inset:-9px;border:1px solid var(--o);border-radius:50%;animation:trmp 2s infinite}\r\n@keyframes trmp{0%{transform:scale(.9);opacity:1}100%{transform:scale(1.4);opacity:0}}\r\n.trm .vcard:hover .play{background:#fff;color:var(--o);transform:translate(-50%,-50%) scale(1.1)}\r\n.trm .vcard .cap{position:absolute;z-index:2;left:22px;right:22px;bottom:18px}\r\n.trm .vcard .cap small{color:var(--o2);font-size:11px;letter-spacing:.2em;text-transform:uppercase}\r\n.trm .vcard:hover .cap small{color:#fff}\r\n.trm .vcard .cap h4{font-size:20px;margin-top:4px}\r\n\r\n\/* process *\/\r\n.trm .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;counter-reset:s}\r\n.trm .step{padding:10px 28px 10px 0;position:relative}\r\n.trm .step:not(:last-child):after{content:\"\";position:absolute;top:34px;left:70px;right:14px;height:1px;background:repeating-linear-gradient(90deg,#444 0 6px,transparent 6px 12px)}\r\n.trm .step .n{width:68px;height:68px;border:2px solid var(--o);border-radius:50%;display:grid;place-items:center;font:600 24px 'Oswald';color:var(--o);margin-bottom:22px;background:var(--k);position:relative;z-index:1;transition:.3s}\r\n.trm .step:hover .n{background:var(--o);color:#fff}\r\n.trm .step h3{font-size:20px;margin-bottom:8px}\r\n.trm .step p{color:var(--g);font-size:14.5px;font-weight:300}\r\n\r\n\/* gallery *\/\r\n.trm .gal{background:var(--k2)}\r\n.trm .gal .top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}\r\n.trm .ggrid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:14px;margin-top:50px}\r\n.trm .gi{position:relative;overflow:hidden;background:linear-gradient(135deg,#22140d,#101010);display:grid;place-items:center;color:#3a3a3a;font-size:40px}\r\n.trm .gi.tall{grid-row:span 2}.trm .gi.wide{grid-column:span 2}\r\n.trm .gi img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease,filter .5s;filter:grayscale(.6)}\r\n.trm .gi:hover img{transform:scale(1.08);filter:none}\r\n.trm .gi:after{content:\"\";position:absolute;inset:0;border:0 solid var(--o);transition:.35s;pointer-events:none}\r\n.trm .gi:hover:after{border-width:6px}\r\n\r\n\/* faq *\/\r\n.trm .faqwrap{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;align-items:start}\r\n.trm details{border-bottom:1px solid #2a2a2a;padding:22px 0}\r\n.trm details:first-of-type{border-top:1px solid #2a2a2a}\r\n.trm summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font:500 18px 'Poppins'}\r\n.trm summary::-webkit-details-marker{display:none}\r\n.trm summary svg{color:var(--o);font-size:22px;transition:.3s}\r\n.trm details[open] summary svg{transform:rotate(45deg)}\r\n.trm details[open] summary{color:var(--o)}\r\n.trm details p{color:var(--g);margin-top:14px;font-weight:300;font-size:15px}\r\n\r\n\/* contact trio *\/\r\n.trm .info{background:var(--k2)}\r\n.trm .trio{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}\r\n.trm .trio .t{border:1px solid #2a2a2a;padding:40px 34px;text-align:center;transition:.4s}\r\n.trm .trio .t:hover{border-color:var(--o);transform:translateY(-6px)}\r\n.trm .trio .t .ic{font-size:34px;color:var(--o);margin-bottom:18px;display:inline-block}\r\n.trm .trio h3{font-size:22px;margin-bottom:12px}\r\n.trm .trio p{color:var(--g);font-weight:300}\r\n\r\n\/* cta *\/\r\n.trm .ctab{position:relative;text-align:center;padding:120px 0;background:linear-gradient(rgba(10,10,10,.82),rgba(10,10,10,.92)),radial-gradient(circle at 50% 0%,#5a230d,#0a0a0a 70%)}\r\n.trm .ctab h2{font-size:clamp(34px,5.4vw,66px);margin-bottom:14px}\r\n.trm .ctab h2 span{color:var(--o)}\r\n.trm .ctab p{color:var(--g);max-width:540px;margin:0 auto 34px;font-weight:300}\r\n.trm .ctab .cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}\r\n\r\n\/* lightbox *\/\r\n.trm-lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:999999;display:none;align-items:center;justify-content:center;padding:24px}\r\n.trm-lb.on{display:flex}\r\n.trm-lb .in{width:100%;max-width:1000px;aspect-ratio:16\/9;background:#000;position:relative}\r\n.trm-lb iframe,.trm-lb video{width:100%;height:100%;border:0}\r\n.trm-lb .x{position:absolute;top:-46px;right:0;background:none;border:0;color:#fff;font-size:30px;cursor:pointer;width:40px;height:40px}\r\n.trm-lb .x svg{width:1em;height:1em;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round}\r\n.trm-lb .x:hover svg{stroke:#ff5a1f}\r\n\r\n@media(max-width:1000px){\r\n.trm .grid4{grid-template-columns:repeat(2,1fr)}\r\n.trm .steps{grid-template-columns:repeat(2,1fr);gap:40px 10px}\r\n.trm .step:after{display:none!important}\r\n.trm .ggrid{grid-template-columns:repeat(2,1fr)}\r\n.trm .faqwrap{grid-template-columns:1fr;gap:40px}\r\n}\r\n@media(max-width:720px){\r\n.trm .sec{padding:70px 0}\r\n.trm .strip .box,.trm .vgrid,.trm .trio,.trm .grid4{grid-template-columns:1fr}\r\n.trm .strip .it{border-right:0;border-bottom:1px solid #262626}\r\n.trm .steps{grid-template-columns:1fr}\r\n.trm .ggrid{grid-auto-rows:180px}\r\n.trm .gi.wide{grid-column:span 2}\r\n.trm .hero{min-height:84vh}\r\n}\r\n<\/style>\r\n\r\n<div class=\"trm\">\r\n\r\n  <!-- HERO with video placeholder -->\r\n  <section class=\"hero\" id=\"trm-top\">\r\n    <!-- Fallback background shows if the video is missing -->\r\n    <div class=\"hero-poster\"><\/div>\r\n    <!-- HERO VIDEO PLACEHOLDER: replace the src with your own mp4 link and the poster with an image link -->\r\n    <video autoplay muted loop playsinline poster=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-hero-poster.jpg\">\r\n      <source src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-hero.mp4\" type=\"video\/mp4\">\r\n    <\/video>\r\n    <div class=\"wrap\">\r\n      <div class=\"eyebrow rv\">Laser Tattoo Removal<\/div>\r\n      <h1 class=\"rv d1\">Erase The Past<span>Start Fresh<\/span><\/h1>\r\n      <p class=\"rv d2\">Safe, precise tattoo removal and fading for cover ups. Book a consultation and we will map out the right plan for your skin and your ink.<\/p>\r\n      <div class=\"cta rv d3\">\r\n        <a href=\"#book-removal\" class=\"btn\" data-concierge=\"removal\">Book Removal Session <svg viewBox=\"0 0 24 24\"><polyline points=\"9 18 15 12 9 6\"\/><\/svg><\/a>\r\n        <a href=\"#trm-videos\" class=\"btn ghost\"><svg viewBox=\"0 0 24 24\"><polygon points=\"5 3 19 12 5 21 5 3\"\/><\/svg> Watch The Process<\/a>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"scroll\"><i><\/i> Scroll<\/div>\r\n  <\/section>\r\n\r\n  <!-- INFO STRIP -->\r\n  <div class=\"strip\">\r\n    <div class=\"wrap\">\r\n      <div class=\"box rv\">\r\n        <div class=\"it\"><div class=\"ic\"><svg viewBox=\"0 0 24 24\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/svg><\/div><div><h4>LOCATION<\/h4><p>California, United States<\/p><\/div><\/div>\r\n        <div class=\"it\"><div class=\"ic\"><svg viewBox=\"0 0 24 24\"><path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\"\/><\/svg><\/div><div><h4>SPECIALIST<\/h4><p>Lead Removal Technician<\/p><\/div><\/div>\r\n        <div class=\"it\"><div class=\"ic\"><svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12 6 12 12 16 14\"\/><\/svg><\/div><div><h4>CONSULTATION<\/h4><p>Book online in minutes<\/p><\/div><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- SERVICES -->\r\n  <section class=\"sec\" id=\"trm-services\">\r\n    <div class=\"wrap\">\r\n      <div class=\"eyebrow rv\">Our Services<\/div>\r\n      <h2 class=\"rv d1\">Removal Solutions<\/h2>\r\n      <p class=\"lead rv d2\">Every tattoo responds differently. We tailor each plan to your ink, your skin and your goal.<\/p>\r\n      <div class=\"grid4\">\r\n        <div class=\"card rv\">\r\n          <div class=\"ic\"><svg viewBox=\"0 0 24 24\"><polygon points=\"13 2 3 14 12 14 11 22 21 10 12 10 13 2\"\/><\/svg><\/div>\r\n          <h3>Full Removal<\/h3>\r\n          <p>Complete laser removal of unwanted tattoos across multiple sessions.<\/p>\r\n          <a class=\"more\" data-concierge=\"removal\" href=\"#book-removal\">Book now <svg viewBox=\"0 0 24 24\"><polyline points=\"9 18 15 12 9 6\"\/><\/svg><\/a>\r\n        <\/div>\r\n        <div class=\"card rv d1\">\r\n          <div class=\"ic\"><svg viewBox=\"0 0 24 24\"><polygon points=\"12 2 2 7 12 12 22 7 12 2\"\/><polyline points=\"2 17 12 22 22 17\"\/><polyline points=\"2 12 12 17 22 12\"\/><\/svg><\/div>\r\n          <h3>Fading For Cover Ups<\/h3>\r\n          <p>Lighten old ink so your artist has a clean canvas for a new design.<\/p>\r\n          <a class=\"more\" data-concierge=\"removal\" href=\"#book-removal\">Book now <svg viewBox=\"0 0 24 24\"><polyline points=\"9 18 15 12 9 6\"\/><\/svg><\/a>\r\n        <\/div>\r\n        <div class=\"card rv d2\">\r\n          <div class=\"ic\"><svg viewBox=\"0 0 24 24\"><path d=\"M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z\"\/><\/svg><\/div>\r\n          <h3>Color Ink Treatment<\/h3>\r\n          <p>Targeted treatment for stubborn colors and detailed multi tone pieces.<\/p>\r\n          <a class=\"more\" data-concierge=\"removal\" href=\"#book-removal\">Book now <svg viewBox=\"0 0 24 24\"><polyline points=\"9 18 15 12 9 6\"\/><\/svg><\/a>\r\n        <\/div>\r\n        <div class=\"card rv d3\">\r\n          <div class=\"ic\"><svg viewBox=\"0 0 24 24\"><path d=\"M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z\"\/><\/svg><\/div>\r\n          <h3>Consultation<\/h3>\r\n          <p>In studio or virtual photo assessment with a clear plan and timeline.<\/p>\r\n          <a class=\"more\" data-concierge=\"removal\" href=\"#book-removal\">Book now <svg viewBox=\"0 0 24 24\"><polyline points=\"9 18 15 12 9 6\"\/><\/svg><\/a>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- VIDEOS: 3 video links -->\r\n  <section class=\"sec vids\" id=\"trm-videos\">\r\n    <div class=\"wrap\">\r\n      <div class=\"eyebrow rv\">Watch The Trailer<\/div>\r\n      <h2 class=\"rv d1\">See How It Works<\/h2>\r\n      <p class=\"lead rv d2\">Three short films that walk you through the treatment, the technology and real client stories.<\/p>\r\n      <div class=\"vgrid\">\r\n        <!-- VIDEO LINK 1: YouTube, Vimeo or direct mp4. Optional data-thumb for a cover image -->\r\n        <div class=\"vcard rv\" data-video=\"https:\/\/www.youtube.com\/watch?v=VIDEO_ID_1\" data-thumb=\"\">\r\n          <div class=\"play\"><svg viewBox=\"0 0 24 24\"><polygon points=\"5 3 19 12 5 21 5 3\" fill=\"currentColor\"\/><\/svg><\/div>\r\n          <div class=\"cap\"><small>Video 01<\/small><h4>The Removal Process<\/h4><\/div>\r\n        <\/div>\r\n        <!-- VIDEO LINK 2 -->\r\n        <div class=\"vcard rv d1\" data-video=\"https:\/\/www.youtube.com\/watch?v=VIDEO_ID_2\" data-thumb=\"\">\r\n          <div class=\"play\"><svg viewBox=\"0 0 24 24\"><polygon points=\"5 3 19 12 5 21 5 3\" fill=\"currentColor\"\/><\/svg><\/div>\r\n          <div class=\"cap\"><small>Video 02<\/small><h4>Aftercare Guide<\/h4><\/div>\r\n        <\/div>\r\n        <!-- VIDEO LINK 3 -->\r\n        <div class=\"vcard rv d2\" data-video=\"https:\/\/www.youtube.com\/watch?v=VIDEO_ID_3\" data-thumb=\"\">\r\n          <div class=\"play\"><svg viewBox=\"0 0 24 24\"><polygon points=\"5 3 19 12 5 21 5 3\" fill=\"currentColor\"\/><\/svg><\/div>\r\n          <div class=\"cap\"><small>Video 03<\/small><h4>Client Stories<\/h4><\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- PROCESS -->\r\n  <section class=\"sec\" id=\"trm-process\">\r\n    <div class=\"wrap\">\r\n      <div class=\"eyebrow rv\">How It Works<\/div>\r\n      <h2 class=\"rv d1\">Your Removal Journey<\/h2>\r\n      <div class=\"steps\">\r\n        <div class=\"step rv\"><div class=\"n\">01<\/div><h3>Consult<\/h3><p>Share photos and goals. We assess ink, depth and skin type.<\/p><\/div>\r\n        <div class=\"step rv d1\"><div class=\"n\">02<\/div><h3>Plan<\/h3><p>You receive a session count, spacing and clear pricing.<\/p><\/div>\r\n        <div class=\"step rv d2\"><div class=\"n\">03<\/div><h3>Treat<\/h3><p>Precise laser sessions with comfort care throughout.<\/p><\/div>\r\n        <div class=\"step rv d3\"><div class=\"n\">04<\/div><h3>Heal<\/h3><p>Simple aftercare and follow ups until your skin is clear.<\/p><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- PICTURE GALLERY -->\r\n  <section class=\"sec gal\" id=\"trm-gallery\">\r\n    <div class=\"wrap\">\r\n      <div class=\"top\">\r\n        <div>\r\n          <div class=\"eyebrow rv\">Last Works<\/div>\r\n          <h2 class=\"rv d1\" style=\"margin-bottom:0\">Real Results<\/h2>\r\n        <\/div>\r\n        <a href=\"#book-removal\" class=\"btn rv d2\" data-concierge=\"removal\">Start Your Removal<\/a>\r\n      <\/div>\r\n      <div class=\"ggrid\">\r\n        <!-- GALLERY IMAGES: replace each src with your WordPress media URL -->\r\n        <div class=\"gi tall rv\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-1.jpg\" alt=\"Tattoo removal result 1\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n        <div class=\"gi rv d1\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-2.jpg\" alt=\"Tattoo removal result 2\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n        <div class=\"gi wide rv d2\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-3.jpg\" alt=\"Tattoo removal result 3\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n        <div class=\"gi rv\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-4.jpg\" alt=\"Tattoo removal result 4\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n        <div class=\"gi tall rv d1\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-5.jpg\" alt=\"Tattoo removal result 5\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n        <div class=\"gi rv d2\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-6.jpg\" alt=\"Tattoo removal result 6\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n        <div class=\"gi rv\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-7.jpg\" alt=\"Tattoo removal result 7\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n        <div class=\"gi wide rv d1\"><img decoding=\"async\" src=\"https:\/\/YOUR_DOMAIN.com\/wp-content\/uploads\/removal-8.jpg\" alt=\"Tattoo removal result 8\" loading=\"lazy\" onerror=\"this.style.display='none'\"><svg viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"\/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"\/><polyline points=\"21 15 16 10 5 21\"\/><\/svg><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- FAQ -->\r\n  <section class=\"sec\" id=\"trm-faq\">\r\n    <div class=\"wrap faqwrap\">\r\n      <div>\r\n        <div class=\"eyebrow rv\">Good To Know<\/div>\r\n        <h2 class=\"rv d1\">Common Questions<\/h2>\r\n        <p class=\"lead rv d2\" style=\"margin-bottom:30px\">Still unsure? Our concierge can answer anything and connect you to a live agent.<\/p>\r\n        <a href=\"#\" class=\"btn ghost rv d3\" data-concierge=\"live\"><svg viewBox=\"0 0 24 24\"><path d=\"M3 18v-6a9 9 0 0 1 18 0v6\"\/><path d=\"M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z\"\/><\/svg> Talk To A Live Agent<\/a>\r\n      <\/div>\r\n      <div class=\"rv d1\">\r\n        <details open><summary>How many sessions will I need? <svg viewBox=\"0 0 24 24\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg><\/summary><p>It depends on ink colors, depth, size and your skin. Most tattoos need several sessions spaced weeks apart. We confirm your estimate at consultation.<\/p><\/details>\r\n        <details><summary>Does it hurt? <svg viewBox=\"0 0 24 24\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg><\/summary><p>Most clients describe a quick snapping sensation. We use cooling and comfort measures to keep each session manageable.<\/p><\/details>\r\n        <details><summary>Can all colors be removed? <svg viewBox=\"0 0 24 24\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg><\/summary><p>Black and dark inks respond best. Some colors take longer and certain shades may fade rather than disappear fully.<\/p><\/details>\r\n        <details><summary>Can I get a cover up instead? <svg viewBox=\"0 0 24 24\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg><\/summary><p>Yes. Fading the old tattoo first often gives your artist more freedom. Ask us about a combined plan.<\/p><\/details>\r\n        <details><summary>What should I avoid before treatment? <svg viewBox=\"0 0 24 24\"><line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><\/svg><\/summary><p>Avoid tanning and heavy sun exposure on the area. Tell us about medications and skin conditions when you book.<\/p><\/details>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- HOURS \/ APPOINTMENT \/ ADDRESS -->\r\n  <section class=\"sec info\" id=\"trm-contact\">\r\n    <div class=\"wrap\">\r\n      <div class=\"trio\">\r\n        <div class=\"t rv\"><div class=\"ic\"><svg viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12 6 12 12 16 14\"\/><\/svg><\/div><h3>Working Hours<\/h3><p>Monday to Friday 09:00 to 18:00<br>Saturday 10:00 to 16:00<br>Sunday Closed<\/p><\/div>\r\n        <div class=\"t rv d1\"><div class=\"ic\"><svg viewBox=\"0 0 24 24\"><path d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z\"\/><\/svg><\/div><h3>Make An Appointment<\/h3><p>(213) TATTOOBOOKING<br>info@tattoobooking.online<\/p><\/div>\r\n        <div class=\"t rv d2\"><div class=\"ic\"><svg viewBox=\"0 0 24 24\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/svg><\/div><h3>Address<\/h3><p>California, United States<\/p><\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- FINAL CTA -->\r\n  <section class=\"ctab\">\r\n    <div class=\"wrap\">\r\n      <div class=\"eyebrow rv\" style=\"justify-content:center\">Get In Touch<\/div>\r\n      <h2 class=\"rv d1\">Ready For A <span>Clean Slate?<\/span><\/h2>\r\n      <p class=\"rv d2\">Send us a request and we will create the right removal plan for you.<\/p>\r\n      <div class=\"cta rv d3\">\r\n        <a href=\"#book-removal\" class=\"btn\" data-concierge=\"removal\">Book Removal Session<\/a>\r\n        <a href=\"#book-tattoo\" class=\"btn ghost\" data-concierge=\"tattoo\">Book A Tattoo Session<\/a>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <!-- VIDEO LIGHTBOX -->\r\n  <div class=\"trm-lb\" id=\"trmLb\"><div class=\"in\"><button class=\"x\" aria-label=\"Close\"><svg viewBox=\"0 0 24 24\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\/><\/svg><\/button><div id=\"trmLbBody\" style=\"width:100%;height:100%\"><\/div><\/div><\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  var root=document.querySelector('.trm');if(!root)return;\r\n\r\n  \/\/ scroll reveal\r\n  var els=root.querySelectorAll('.rv');\r\n  if('IntersectionObserver' in window){\r\n    var io=new IntersectionObserver(function(es){es.forEach(function(e){if(e.isIntersecting){e.target.classList.add('in');io.unobserve(e.target)}})},{threshold:.12});\r\n    els.forEach(function(el){io.observe(el)});\r\n  }else{els.forEach(function(el){el.classList.add('in')})}\r\n\r\n  \/\/ hero video fallback\r\n  var hv=root.querySelector('.hero video');\r\n  if(hv){hv.addEventListener('error',function(){hv.style.display='none'},true);var s=hv.querySelector('source');if(s)s.addEventListener('error',function(){hv.style.display='none'})}\r\n\r\n  \/\/ video helpers\r\n  function embed(url){\r\n    var m;\r\n    if((m=url.match(\/(?:youtube\\.com\\\/(?:watch\\?v=|embed\\\/|shorts\\\/)|youtu\\.be\\\/)([\\w-]{6,})\/)))return '<iframe src=\"https:\/\/www.youtube.com\/embed\/'+m[1]+'?autoplay=1&rel=0\" allow=\"autoplay; encrypted-media; fullscreen\" allowfullscreen><\/iframe>';\r\n    if((m=url.match(\/vimeo\\.com\\\/(?:video\\\/)?(\\d+)\/)))return '<iframe src=\"https:\/\/player.vimeo.com\/video\/'+m[1]+'?autoplay=1\" allow=\"autoplay; fullscreen\" allowfullscreen><\/iframe>';\r\n    return '<video src=\"'+url+'\" controls autoplay playsinline><\/video>';\r\n  }\r\n  function thumb(url){\r\n    var m=url.match(\/(?:youtube\\.com\\\/(?:watch\\?v=|embed\\\/|shorts\\\/)|youtu\\.be\\\/)([\\w-]{6,})\/);\r\n    return m&&m[1].indexOf('VIDEO_ID')<0?'https:\/\/img.youtube.com\/vi\/'+m[1]+'\/hqdefault.jpg':'';\r\n  }\r\n  root.querySelectorAll('.vcard').forEach(function(c){\r\n    var t=c.getAttribute('data-thumb')||thumb(c.getAttribute('data-video')||'');\r\n    if(t)c.style.backgroundImage='url(\"'+t+'\")';\r\n    c.addEventListener('click',function(){openLb(c.getAttribute('data-video'))});\r\n  });\r\n  var lb=root.querySelector('#trmLb'),lbb=root.querySelector('#trmLbBody');\r\n  document.body.appendChild(lb);lb.classList.add('trm');\r\n  function openLb(u){if(!u)return;lbb.innerHTML=embed(u);lb.classList.add('on')}\r\n  function closeLb(){lb.classList.remove('on');lbb.innerHTML=''}\r\n  lb.addEventListener('click',function(e){if(e.target===lb||e.target.closest('.x'))closeLb()});\r\n  document.addEventListener('keydown',function(e){if(e.key==='Escape')closeLb()});\r\n\r\n  \/\/ concierge triggers\r\n  document.addEventListener('click',function(e){\r\n    var b=e.target.closest('[data-concierge]');if(!b)return;\r\n    if(window.TattooConcierge){e.preventDefault();window.TattooConcierge.open(b.getAttribute('data-concierge'))}\r\n  });\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"aux-parallax-section elementor-element elementor-element-2eac3af e-flex e-con-boxed e-con e-parent\" data-id=\"2eac3af\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-332aea7 elementor-widget elementor-widget-html\" data-id=\"332aea7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- TATTOO BOOKING CONCIERGE | Elementor HTML widget, place once site wide (Theme Builder footer) -->\r\n<!-- Edit the CONFIG block in the script: tawk.to IDs, email, hours, phone -->\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Oswald:wght@500;600&family=Poppins:wght@300;400;500;600&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n#tcn,#tcn *{box-sizing:border-box;margin:0;padding:0;font-family:'Poppins',sans-serif}\r\n#tcn{--o:#ff5a1f;--o2:#ff7a45;--k:#0a0a0a;--k2:#141414;--k3:#1e1e1e;--ln:#2a2a2a;--g:#a9a9a9;color:#fff;position:fixed;right:22px;bottom:22px;z-index:99998;line-height:1.55}\r\n#tcn svg{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}\r\n#tcn button{cursor:pointer;font-family:inherit}\r\n\r\n\/* launcher *\/\r\n#tcn .lch{display:flex;align-items:center;gap:12px;background:var(--o);color:#fff;border:0;border-radius:60px;padding:0 24px 0 8px;height:62px;box-shadow:0 10px 34px rgba(255,90,31,.45);transition:.3s;position:relative}\r\n#tcn .lch:hover{transform:translateY(-3px);background:var(--o2)}\r\n#tcn .lch .ico{width:46px;height:46px;border-radius:50%;background:#0a0a0a;display:grid;place-items:center;font-size:22px}\r\n#tcn .lch b{font-weight:500;font-size:14px;letter-spacing:.06em;text-transform:uppercase}\r\n#tcn .lch:before{content:\"\";position:absolute;inset:0;border-radius:60px;border:2px solid var(--o);animation:tcnp 2.4s infinite;pointer-events:none}\r\n@keyframes tcnp{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.25,1.5);opacity:0}}\r\n#tcn.open .lch{display:none}\r\n\r\n\/* panel *\/\r\n#tcn .pnl{display:none;width:410px;max-width:calc(100vw - 24px);height:660px;max-height:calc(100vh - 44px);background:var(--k);border:1px solid var(--ln);border-top:3px solid var(--o);box-shadow:0 24px 70px rgba(0,0,0,.6);flex-direction:column;border-radius:6px;overflow:hidden;animation:tcnin .35s ease}\r\n#tcn.open .pnl{display:flex}\r\n@keyframes tcnin{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}\r\n#tcn .hd{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--k2);border-bottom:1px solid var(--ln)}\r\n#tcn .av{width:44px;height:44px;border-radius:50%;background:var(--o);display:grid;place-items:center;font-size:21px;position:relative}\r\n#tcn .av:after{content:\"\";position:absolute;right:0;bottom:0;width:11px;height:11px;border-radius:50%;background:#37d67a;border:2px solid var(--k2)}\r\n#tcn .hd h4{font:600 17px 'Oswald',sans-serif;letter-spacing:.06em;text-transform:uppercase}\r\n#tcn .hd small{color:var(--g);font-size:12px}\r\n#tcn .hd .sp{flex:1}\r\n#tcn .ib{background:none;border:1px solid var(--ln);color:#fff;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:17px;transition:.25s}\r\n#tcn .ib:hover{background:var(--o);border-color:var(--o)}\r\n#tcn .bd{flex:1;overflow-y:auto;padding:20px 18px;scrollbar-width:thin;scrollbar-color:#333 transparent}\r\n#tcn .ft{padding:10px 18px;border-top:1px solid var(--ln);font-size:11px;color:#777;text-align:center;background:var(--k2)}\r\n#tcn .view{display:none;animation:tcnin .3s ease}\r\n#tcn .view.on{display:block}\r\n\r\n\/* home *\/\r\n#tcn .msg{background:var(--k3);border:1px solid var(--ln);border-radius:4px 16px 16px 16px;padding:14px 16px;font-size:14px;margin-bottom:12px;max-width:92%}\r\n#tcn .msg b{color:var(--o)}\r\n#tcn .acts{display:grid;gap:10px;margin-top:18px}\r\n#tcn .act{display:flex;align-items:center;gap:14px;background:var(--k2);border:1px solid var(--ln);color:#fff;padding:14px 16px;text-align:left;border-radius:4px;transition:.3s;width:100%;position:relative;overflow:hidden}\r\n#tcn .act:hover{border-color:var(--o);transform:translateX(4px);background:#1a1109}\r\n#tcn .act .ai{width:42px;height:42px;border:1px solid var(--o);color:var(--o);display:grid;place-items:center;font-size:19px;transition:.3s;border-radius:3px}\r\n#tcn .act:hover .ai{background:var(--o);color:#fff}\r\n#tcn .act strong{display:block;font-size:14px;font-weight:500}\r\n#tcn .act span{display:block;font-size:12px;color:var(--g)}\r\n#tcn .act .ch{margin-left:auto;color:var(--g);font-size:16px}\r\n#tcn .act.live .ai{background:var(--o);color:#fff}\r\n\r\n\/* form *\/\r\n#tcn .bk{display:inline-flex;align-items:center;gap:8px;background:none;border:0;color:var(--g);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}\r\n#tcn .bk:hover{color:var(--o)}\r\n#tcn .ttl{font:600 24px 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}\r\n#tcn .sub{color:var(--g);font-size:13px;margin-bottom:16px}\r\n#tcn .prog{display:flex;gap:5px;margin-bottom:6px}\r\n#tcn .prog i{flex:1;height:3px;background:#2d2d2d;transition:.3s}\r\n#tcn .prog i.on{background:var(--o)}\r\n#tcn .stp{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--o);margin-bottom:16px}\r\n#tcn .step{display:none}\r\n#tcn .step.on{display:block;animation:tcnin .3s ease}\r\n#tcn .step h5{font:600 18px 'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--ln)}\r\n#tcn .fld{margin-bottom:15px}\r\n#tcn .fld>label{display:block;font-size:12.5px;font-weight:500;margin-bottom:6px;color:#e6e6e6}\r\n#tcn .fld>label em{color:var(--o);font-style:normal;margin-left:3px}\r\n#tcn input[type=text],#tcn input[type=email],#tcn input[type=tel],#tcn input[type=date],#tcn input[type=time],#tcn textarea{width:100%;background:var(--k2);border:1px solid #333;color:#fff;padding:12px 13px;font-size:14px;border-radius:3px;outline:0;transition:.25s;color-scheme:dark}\r\n#tcn textarea{min-height:88px;resize:vertical}\r\n#tcn input:focus,#tcn textarea:focus{border-color:var(--o);box-shadow:0 0 0 3px rgba(255,90,31,.15)}\r\n#tcn .chips{display:flex;flex-wrap:wrap;gap:8px}\r\n#tcn .chips label{position:relative;cursor:pointer}\r\n#tcn .chips input{position:absolute;opacity:0;pointer-events:none}\r\n#tcn .chips span{display:block;padding:9px 14px;border:1px solid #333;background:var(--k2);font-size:12.5px;border-radius:30px;transition:.25s;color:#ddd}\r\n#tcn .chips label:hover span{border-color:var(--o)}\r\n#tcn .chips input:checked+span{background:var(--o);border-color:var(--o);color:#fff}\r\n#tcn .chips input:focus-visible+span{box-shadow:0 0 0 3px rgba(255,90,31,.35)}\r\n#tcn .file{border:1px dashed #444;padding:18px;text-align:center;border-radius:3px;background:var(--k2);cursor:pointer;transition:.25s;position:relative;font-size:13px;color:var(--g)}\r\n#tcn .file:hover{border-color:var(--o);color:#fff}\r\n#tcn .file svg{font-size:24px;color:var(--o);display:block;margin:0 auto 6px}\r\n#tcn .file input{position:absolute;inset:0;opacity:0;cursor:pointer}\r\n#tcn .file small{display:block;margin-top:4px;color:#777}\r\n#tcn .chk{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:#ccc;cursor:pointer}\r\n#tcn .chk input{margin-top:4px;accent-color:var(--o);width:16px;height:16px}\r\n#tcn .note{font-size:12px;color:var(--g);background:var(--k2);border-left:3px solid var(--o);padding:10px 12px;margin-bottom:15px}\r\n#tcn .err{color:#ff6b6b;font-size:12px;margin-top:5px;display:none}\r\n#tcn .fld.bad .err{display:block}\r\n#tcn .fld.bad input[type=text],#tcn .fld.bad input[type=email],#tcn .fld.bad input[type=tel],#tcn .fld.bad input[type=date],#tcn .fld.bad textarea{border-color:#ff6b6b}\r\n#tcn .nav{display:flex;gap:10px;margin-top:20px}\r\n#tcn .btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--o);color:#fff;border:2px solid var(--o);padding:13px 18px;font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;border-radius:3px;transition:.25s}\r\n#tcn .btn:hover{background:transparent;color:var(--o)}\r\n#tcn .btn.gh{background:transparent;color:#fff;border-color:#444;flex:.6}\r\n#tcn .btn.gh:hover{border-color:var(--o);color:var(--o)}\r\n#tcn .btn[disabled]{opacity:.6;pointer-events:none}\r\n#tcn .hp{position:absolute;left:-9999px;opacity:0}\r\n\r\n\/* success + info *\/\r\n#tcn .ok{text-align:center;padding:30px 6px}\r\n#tcn .ok .ring{width:78px;height:78px;border-radius:50%;background:var(--o);display:grid;place-items:center;font-size:36px;margin:0 auto 20px;animation:tcnpop .5s ease}\r\n@keyframes tcnpop{0%{transform:scale(0)}70%{transform:scale(1.15)}100%{transform:scale(1)}}\r\n#tcn .ok p{color:var(--g);font-size:14px;margin:8px 0 22px}\r\n#tcn .row{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--ln);font-size:14px}\r\n#tcn .row svg{color:var(--o);font-size:20px;margin-top:2px}\r\n#tcn .row small{display:block;color:var(--g);font-size:12px}\r\n#tcn details{border-bottom:1px solid var(--ln);padding:14px 0}\r\n#tcn summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:14px;font-weight:500}\r\n#tcn summary::-webkit-details-marker{display:none}\r\n#tcn summary svg{color:var(--o);transition:.3s}\r\n#tcn details[open] summary svg{transform:rotate(45deg)}\r\n#tcn details[open] summary{color:var(--o)}\r\n#tcn details p{color:var(--g);font-size:13px;margin-top:10px}\r\n#tcn .toast{background:#1c1208;border:1px solid var(--o);padding:12px 14px;font-size:13px;margin-top:14px;border-radius:3px;display:none}\r\n#tcn .toast.on{display:block}\r\n\r\n@media(max-width:520px){\r\n#tcn{right:10px;bottom:10px}\r\n#tcn.open{right:0;bottom:0;left:0;top:0}\r\n#tcn .pnl{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0}\r\n#tcn .lch b{display:none}\r\n#tcn .lch{padding:0 8px}\r\n}\r\n<\/style>\r\n\r\n<div id=\"tcn\" aria-live=\"polite\">\r\n  <button class=\"lch\" id=\"tcnOpen\" aria-label=\"Open booking concierge\"><span class=\"ico\" data-i=\"chat\"><\/span><b>Book Now<\/b><\/button>\r\n\r\n  <div class=\"pnl\" role=\"dialog\" aria-label=\"Studio concierge\">\r\n    <div class=\"hd\">\r\n      <div class=\"av\" data-i=\"pen\"><\/div>\r\n      <div><h4>Studio Concierge<\/h4><small>Tattoo and removal bookings<\/small><\/div>\r\n      <div class=\"sp\"><\/div>\r\n      <button class=\"ib\" id=\"tcnClose\" aria-label=\"Close\" data-i=\"x\"><\/button>\r\n    <\/div>\r\n\r\n    <div class=\"bd\" id=\"tcnBody\">\r\n      <!-- HOME -->\r\n      <div class=\"view on\" data-view=\"home\">\r\n        <div class=\"msg\">Welcome to the studio. I am your <b>concierge<\/b>. What would you like to do today?<\/div>\r\n        <div class=\"acts\">\r\n          <button class=\"act\" data-go=\"tattoo\"><span class=\"ai\" data-i=\"pen\"><\/span><div><strong>Book a Tattoo Session<\/strong><span>Consultation and booking form<\/span><\/div><span class=\"ch\" data-i=\"chev\"><\/span><\/button>\r\n          <button class=\"act\" data-go=\"removal\"><span class=\"ai\" data-i=\"zap\"><\/span><div><strong>Book a Tattoo Removal Session<\/strong><span>Laser removal or fading assessment<\/span><\/div><span class=\"ch\" data-i=\"chev\"><\/span><\/button>\r\n          <button class=\"act live\" data-go=\"live\"><span class=\"ai\" data-i=\"head\"><\/span><div><strong>Talk to a Live Agent<\/strong><span>Chat with our team right now<\/span><\/div><span class=\"ch\" data-i=\"chev\"><\/span><\/button>\r\n          <button class=\"act\" data-go=\"faq\"><span class=\"ai\" data-i=\"help\"><\/span><div><strong>Removal FAQs<\/strong><span>Quick answers before you book<\/span><\/div><span class=\"ch\" data-i=\"chev\"><\/span><\/button>\r\n          <button class=\"act\" data-go=\"info\"><span class=\"ai\" data-i=\"clock\"><\/span><div><strong>Hours and Contact<\/strong><span>Find us and reach out<\/span><\/div><span class=\"ch\" data-i=\"chev\"><\/span><\/button>\r\n        <\/div>\r\n        <div class=\"toast\" id=\"tcnToast\"><\/div>\r\n      <\/div>\r\n\r\n      <!-- FORM (built by script) -->\r\n      <div class=\"view\" data-view=\"form\" id=\"tcnFormView\"><\/div>\r\n\r\n      <!-- SUCCESS -->\r\n      <div class=\"view\" data-view=\"ok\">\r\n        <div class=\"ok\">\r\n          <div class=\"ring\" data-i=\"check\"><\/div>\r\n          <h3 class=\"ttl\">Request Sent<\/h3>\r\n          <p id=\"tcnOkTxt\">Thank you. Our team will contact you shortly to confirm your appointment.<\/p>\r\n          <div class=\"nav\" style=\"flex-direction:column\">\r\n            <button class=\"btn\" data-go=\"live\"><span data-i=\"head\"><\/span> Talk to a Live Agent<\/button>\r\n            <button class=\"btn gh\" data-go=\"home\">Back to Menu<\/button>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <!-- FAQ -->\r\n      <div class=\"view\" data-view=\"faq\">\r\n        <button class=\"bk\" data-go=\"home\"><span data-i=\"back\"><\/span> Menu<\/button>\r\n        <h3 class=\"ttl\">Removal FAQs<\/h3>\r\n        <p class=\"sub\">Quick answers before you book.<\/p>\r\n        <details open><summary>How many sessions will I need? <span data-i=\"plus\"><\/span><\/summary><p>It depends on ink colors, depth, size and your skin. Most tattoos need several sessions spaced weeks apart. We confirm your estimate at consultation.<\/p><\/details>\r\n        <details><summary>Does it hurt? <span data-i=\"plus\"><\/span><\/summary><p>Most clients describe a quick snapping sensation. We use cooling and comfort measures during treatment.<\/p><\/details>\r\n        <details><summary>Can all colors be removed? <span data-i=\"plus\"><\/span><\/summary><p>Black and dark inks respond best. Some colors take longer and certain shades may fade rather than disappear fully.<\/p><\/details>\r\n        <details><summary>Can I cover up instead? <span data-i=\"plus\"><\/span><\/summary><p>Yes. Fading the old tattoo first often gives your artist more freedom for a new design.<\/p><\/details>\r\n        <details><summary>What should I avoid before treatment? <span data-i=\"plus\"><\/span><\/summary><p>Avoid tanning and heavy sun on the area, and tell us about medications and skin conditions.<\/p><\/details>\r\n        <div class=\"nav\"><button class=\"btn\" data-go=\"removal\">Book Removal<\/button><button class=\"btn gh\" data-go=\"live\">Live Agent<\/button><\/div>\r\n      <\/div>\r\n\r\n      <!-- INFO -->\r\n      <div class=\"view\" data-view=\"info\">\r\n        <button class=\"bk\" data-go=\"home\"><span data-i=\"back\"><\/span> Menu<\/button>\r\n        <h3 class=\"ttl\">Hours and Contact<\/h3>\r\n        <p class=\"sub\">We would love to hear from you.<\/p>\r\n        <div class=\"row\"><span data-i=\"clock\"><\/span><div id=\"tcnHours\"><\/div><\/div>\r\n        <div class=\"row\"><span data-i=\"phone\"><\/span><div id=\"tcnPhone\"><\/div><\/div>\r\n        <div class=\"row\"><span data-i=\"mail\"><\/span><div id=\"tcnMail\"><\/div><\/div>\r\n        <div class=\"row\"><span data-i=\"pin\"><\/span><div id=\"tcnAddr\"><\/div><\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"ft\">Your details are sent securely to our studio team.<\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\nif(window.__tcnLoaded)return;window.__tcnLoaded=true;\r\n\r\n\/* ================= CONFIG ================= *\/\r\nvar CFG={\r\n  email:'info@tattoobooking.online',\r\n  tawkProperty:'6acb6ed4f2436d34caad366d',\r\n  tawkWidget:'1k4lahs9t',\r\n  hours:'Monday to Friday 09:00 to 18:00<br>Saturday 10:00 to 16:00<br>Sunday Closed',\r\n  phone:'(213) TATTOOBOOKING',\r\n  address:'California, United States'\r\n};\r\n\r\n\/* ================= ICONS ================= *\/\r\nvar P={\r\nchat:'<path d=\"M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z\"\/>',\r\nx:'<line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\/>',\r\npen:'<path d=\"M12 20h9\"\/><path d=\"M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z\"\/>',\r\nzap:'<polygon points=\"13 2 3 14 12 14 11 22 21 10 12 10 13 2\"\/>',\r\nhead:'<path d=\"M3 18v-6a9 9 0 0 1 18 0v6\"\/><path d=\"M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z\"\/>',\r\nhelp:'<circle cx=\"12\" cy=\"12\" r=\"10\"\/><path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"\/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"\/>',\r\nclock:'<circle cx=\"12\" cy=\"12\" r=\"10\"\/><polyline points=\"12 6 12 12 16 14\"\/>',\r\nchev:'<polyline points=\"9 18 15 12 9 6\"\/>',\r\nback:'<line x1=\"19\" y1=\"12\" x2=\"5\" y2=\"12\"\/><polyline points=\"12 19 5 12 12 5\"\/>',\r\ncheck:'<polyline points=\"20 6 9 17 4 12\"\/>',\r\nplus:'<line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\"\/><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/>',\r\nphone:'<path d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z\"\/>',\r\nmail:'<path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\"\/><polyline points=\"22,6 12,13 2,6\"\/>',\r\npin:'<path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/>',\r\nup:'<polyline points=\"16 16 12 12 8 16\"\/><line x1=\"12\" y1=\"12\" x2=\"12\" y2=\"21\"\/><path d=\"M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3\"\/>',\r\nsend:'<line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"\/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"\/>'\r\n};\r\nfunction svg(n){return '<svg viewBox=\"0 0 24 24\">'+(P[n]||'')+'<\/svg>'}\r\nfunction icons(scope){(scope||root).querySelectorAll('[data-i]').forEach(function(e){if(!e.firstChild||e.getAttribute('data-done')!=='1'){e.innerHTML=svg(e.getAttribute('data-i'));e.setAttribute('data-done','1')}})}\r\n\r\n\/* ================= FORM SCHEMAS ================= *\/\r\nfunction chips(a){return a}\r\nvar CONTACT=[\r\n {l:'Full Name',t:'text',r:1},{l:'Email Address',t:'email',r:1},{l:'Phone Number',t:'tel',r:1},\r\n {l:'City',t:'text',r:1},{l:'State',t:'text',r:1},{l:'ZIP Code',t:'text'}\r\n];\r\nvar BUDGET=['Under $150','$150 to $300','$300 to $500','$500 to $1,000','$1,000+','Not Sure'];\r\nvar HEARD=['Instagram','TikTok','Google','Facebook','Friend or Referral','Other'];\r\nvar YN=['Yes','No'];\r\n\r\nvar FORMS={\r\ntattoo:{\r\n title:'Book a Tattoo Session',sub:'Tattoo consultation and booking form',subject:'New Tattoo Booking Request',\r\n steps:[\r\n  {h:'Contact Information',f:CONTACT},\r\n  {h:'Tattoo Details',f:[\r\n    {l:'What are you looking to get tattooed?',t:'text',r:1},\r\n    {l:'Tattoo Style',t:'chips',o:['Fine Line','Realism','Black & Grey','Traditional','Neo Traditional','Japanese','Lettering','Geometric','Color','Other']},\r\n    {l:'Tattoo Placement',t:'text',r:1,ph:'For example: forearm, ribs, calf'},\r\n    {l:'Approximate Size',t:'chips',r:1,o:['Small (under 3\")','Medium (3 to 6\")','Large (6 to 10\")','XL \/ Full Piece','Multiple Sessions']},\r\n    {l:'Color Preference',t:'chips',o:['Black & Grey','Full Color','Blackwork','Not Sure']}\r\n  ]},\r\n  {h:'Design and Reference',f:[\r\n    {l:'Do you already have a design?',t:'chips',o:['Yes','No','I need help creating one']},\r\n    {l:'Upload Reference Images',t:'file'},\r\n    {l:'Tell us about your tattoo idea',t:'area',r:1}\r\n  ]},\r\n  {h:'Appointment',f:[\r\n    {l:'Preferred Appointment Date',t:'date',r:1},\r\n    {l:'Alternative Date',t:'date'},\r\n    {l:'Preferred Time',t:'time'},\r\n    {l:'Is your date flexible?',t:'chips',o:YN},\r\n    {l:'Is this your first tattoo?',t:'chips',o:YN}\r\n  ]},\r\n  {h:'Budget and Additional',f:[\r\n    {l:'Estimated Budget',t:'chips',o:BUDGET},\r\n    {l:'How did you hear about us?',t:'chips',o:HEARD},\r\n    {l:'Additional Notes',t:'area'}\r\n  ]}\r\n ]},\r\nremoval:{\r\n title:'Book a Removal Session',sub:'Tattoo removal consultation form',subject:'New Tattoo Removal Booking Request',\r\n steps:[\r\n  {h:'Contact Information',f:CONTACT},\r\n  {h:'Tattoo To Remove',f:[\r\n    {l:'Tattoo Placement',t:'text',r:1,ph:'For example: upper arm, wrist, back'},\r\n    {l:'Approximate Size',t:'chips',r:1,o:['Small (under 3\")','Medium (3 to 6\")','Large (6 to 10\")','XL \/ Full Piece','Multiple Tattoos']},\r\n    {l:'Ink Colors',t:'chips',r:1,o:['Black only','Colored','Black and Color','Not Sure']},\r\n    {l:'Age of Tattoo',t:'chips',o:['Under 1 year','1 to 3 years','3 to 10 years','10+ years']},\r\n    {l:'Tattoo Type',t:'chips',o:['Professional','Amateur or Homemade','Cosmetic or Permanent Makeup']},\r\n    {l:'Previous Removal Attempts',t:'chips',o:['None','Laser','Other Method']},\r\n    {l:'Your Goal',t:'chips',r:1,o:['Full Removal','Fade for Cover Up','Lighten Only','Not Sure']}\r\n  ]},\r\n  {h:'Skin and Safety',note:'This information helps us judge treatment safety. It is only used by our clinical team.',f:[\r\n    {l:'Skin Tone',t:'chips',r:1,o:['Very Fair','Fair','Medium','Olive','Brown','Dark Brown or Black']},\r\n    {l:'Recent sun exposure or tanning on the area?',t:'chips',o:YN},\r\n    {l:'Pregnant or breastfeeding?',t:'chips',o:['No','Yes','Prefer not to say']},\r\n    {l:'History of keloid or raised scarring?',t:'chips',o:['No','Yes','Not Sure']},\r\n    {l:'Medications or skin conditions (optional)',t:'area'}\r\n  ]},\r\n  {h:'Photos and Consultation',f:[\r\n    {l:'Upload Photos of the Tattoo',t:'file'},\r\n    {l:'Consultation Type',t:'chips',r:1,o:['In Studio Consultation','Virtual Photo Assessment']},\r\n    {l:'Tell us about your tattoo',t:'area',r:1}\r\n  ]},\r\n  {h:'Appointment',f:[\r\n    {l:'Preferred Appointment Date',t:'date',r:1},\r\n    {l:'Alternative Date',t:'date'},\r\n    {l:'Preferred Time',t:'time'},\r\n    {l:'Is your date flexible?',t:'chips',o:YN}\r\n  ]},\r\n  {h:'Budget and Additional',f:[\r\n    {l:'Estimated Budget',t:'chips',o:BUDGET},\r\n    {l:'How did you hear about us?',t:'chips',o:HEARD},\r\n    {l:'Additional Notes',t:'area'},\r\n    {l:'I understand removal results vary and a consultation is required before treatment',t:'check',r:1}\r\n  ]}\r\n ]}\r\n};\r\n\r\n\/* ================= BUILD ================= *\/\r\nvar root=document.getElementById('tcn');\r\nvar body=document.getElementById('tcnBody');\r\nvar views={};body.querySelectorAll('.view').forEach(function(v){views[v.getAttribute('data-view')]=v});\r\nvar tawkReady=false;\r\n\r\nfunction esc(s){return String(s).replace(\/&\/g,'&amp;').replace(\/<\/g,'&lt;').replace(\/\"\/g,'&quot;')}\r\nvar uid=0;\r\nfunction fieldHTML(f,form){\r\n  var id='tcnf'+(++uid),req=f.r?'<em>*<\/em>':'',h='';\r\n  var name=esc(f.l);\r\n  if(f.t==='check'){\r\n    return '<div class=\"fld\" data-req=\"'+(f.r?1:0)+'\" data-t=\"check\"><label class=\"chk\"><input type=\"checkbox\" name=\"'+name+'\" value=\"Yes\"><span>'+esc(f.l)+(f.r?' <em style=\"color:#ff5a1f;font-style:normal\">*<\/em>':'')+'<\/span><\/label><div class=\"err\">Please confirm to continue.<\/div><\/div>';\r\n  }\r\n  h+='<div class=\"fld\" data-req=\"'+(f.r?1:0)+'\" data-t=\"'+f.t+'\"><label for=\"'+id+'\">'+esc(f.l)+req+'<\/label>';\r\n  if(f.t==='chips'){\r\n    h+='<div class=\"chips\" id=\"'+id+'\">';\r\n    f.o.forEach(function(o,i){h+='<label><input type=\"radio\" name=\"'+name+'\" value=\"'+esc(o)+'\"><span>'+esc(o)+'<\/span><\/label>'});\r\n    h+='<\/div>';\r\n  }else if(f.t==='area'){\r\n    h+='<textarea id=\"'+id+'\" name=\"'+name+'\" placeholder=\"'+esc(f.ph||'')+'\"><\/textarea>';\r\n  }else if(f.t==='file'){\r\n    h+='<div class=\"file\"><span data-i=\"up\"><\/span><span class=\"fn\">Tap to upload images<\/span><small>JPG or PNG, up to 5 MB total<\/small><input type=\"file\" id=\"'+id+'\" name=\"attachment\" accept=\"image\/*\" multiple><\/div>';\r\n  }else{\r\n    h+='<input id=\"'+id+'\" type=\"'+f.t+'\" name=\"'+name+'\" placeholder=\"'+esc(f.ph||'')+'\"'+(f.t==='date'?' data-date=\"1\"':'')+'>';\r\n  }\r\n  h+='<div class=\"err\">'+(f.t==='email'?'Enter a valid email address.':'This field is required.')+'<\/div><\/div>';\r\n  return h;\r\n}\r\nfunction buildForm(key){\r\n  var F=FORMS[key],n=F.steps.length,v=document.getElementById('tcnFormView');\r\n  var h='<button class=\"bk\" data-go=\"home\" type=\"button\"><span data-i=\"back\"><\/span> Menu<\/button>';\r\n  h+='<h3 class=\"ttl\">'+F.title+'<\/h3><p class=\"sub\">'+F.sub+'<\/p>';\r\n  h+='<div class=\"prog\">';for(var i=0;i<n;i++)h+='<i><\/i>';h+='<\/div><div class=\"stp\"><\/div>';\r\n  h+='<form novalidate autocomplete=\"on\"><input class=\"hp\" type=\"text\" name=\"_honey\" tabindex=\"-1\" autocomplete=\"off\">';\r\n  F.steps.forEach(function(s){\r\n    h+='<div class=\"step\"><h5>'+s.h+'<\/h5>'+(s.note?'<div class=\"note\">'+s.note+'<\/div>':'');\r\n    s.f.forEach(function(f){h+=fieldHTML(f)});\r\n    h+='<\/div>';\r\n  });\r\n  h+='<div class=\"nav\"><button type=\"button\" class=\"btn gh\" data-act=\"prev\">Back<\/button><button type=\"button\" class=\"btn\" data-act=\"next\">Next<\/button><\/div>';\r\n  h+='<div class=\"toast\" id=\"tcnFormErr\"><\/div><\/form>';\r\n  v.innerHTML=h;v.setAttribute('data-form',key);v.setAttribute('data-step','0');\r\n  icons(v);\r\n  var today=new Date().toISOString().split('T')[0];\r\n  v.querySelectorAll('input[data-date]').forEach(function(d){d.min=today});\r\n  v.querySelectorAll('input[type=file]').forEach(function(fi){\r\n    fi.addEventListener('change',function(){\r\n      var t=0,names=[];Array.prototype.forEach.call(fi.files,function(f){t+=f.size;names.push(f.name)});\r\n      var lbl=fi.parentNode.querySelector('.fn');\r\n      if(t>5*1024*1024){fi.value='';lbl.textContent='Files too large. Choose up to 5 MB total.';return}\r\n      lbl.textContent=names.length?names.length+' file(s) selected':'Tap to upload images';\r\n    });\r\n  });\r\n  showStep(0);\r\n}\r\nfunction showStep(i){\r\n  var v=document.getElementById('tcnFormView'),key=v.getAttribute('data-form'),F=FORMS[key],n=F.steps.length;\r\n  v.setAttribute('data-step',i);\r\n  v.querySelectorAll('.step').forEach(function(s,k){s.classList.toggle('on',k===i)});\r\n  v.querySelectorAll('.prog i').forEach(function(p,k){p.classList.toggle('on',k<=i)});\r\n  v.querySelector('.stp').textContent='Step '+(i+1)+' of '+n;\r\n  var nx=v.querySelector('[data-act=next]');\r\n  nx.innerHTML=(i===n-1?svg('send')+' Submit Request':'Next '+svg('chev'));\r\n  v.querySelector('[data-act=prev]').style.visibility=i===0?'hidden':'visible';\r\n  body.scrollTop=0;\r\n}\r\nfunction validateStep(i){\r\n  var v=document.getElementById('tcnFormView'),step=v.querySelectorAll('.step')[i],ok=true;\r\n  step.querySelectorAll('.fld').forEach(function(f){\r\n    f.classList.remove('bad');\r\n    if(f.getAttribute('data-req')!=='1')return;\r\n    var t=f.getAttribute('data-t'),good=true;\r\n    if(t==='chips')good=!!f.querySelector('input:checked');\r\n    else if(t==='check')good=f.querySelector('input').checked;\r\n    else{var el=f.querySelector('input,textarea');good=el&&el.value.trim()!=='';\r\n      if(good&&t==='email')good=\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(el.value.trim())}\r\n    if(!good){f.classList.add('bad');ok=false}\r\n  });\r\n  if(!ok){var b=step.querySelector('.fld.bad');if(b)b.scrollIntoView({behavior:'smooth',block:'center'})}\r\n  return ok;\r\n}\r\nfunction submitForm(){\r\n  var v=document.getElementById('tcnFormView'),key=v.getAttribute('data-form'),F=FORMS[key];\r\n  var form=v.querySelector('form'),btn=v.querySelector('[data-act=next]'),err=document.getElementById('tcnFormErr');\r\n  var fd=new FormData(form);\r\n  fd.append('_subject',F.subject);fd.append('_template','table');fd.append('_captcha','false');\r\n  fd.append('Request Type',F.title);\r\n  var em=fd.get('Email Address');if(em)fd.append('_replyto',em);\r\n  btn.disabled=true;btn.textContent='Sending...';err.classList.remove('on');\r\n  fetch('https:\/\/formsubmit.co\/ajax\/'+CFG.email,{method:'POST',body:fd,headers:{'Accept':'application\/json'}})\r\n  .then(function(r){return r.json()})\r\n  .then(function(d){\r\n    if(d&&(d.success===true||d.success==='true')){\r\n      document.getElementById('tcnOkTxt').textContent=key==='removal'\r\n        ?'Thank you. Our removal specialist will review your details and contact you shortly to confirm your consultation.'\r\n        :'Thank you. Our team will review your details and contact you shortly to confirm your appointment.';\r\n      go('ok');\r\n    }else throw new Error(d&&d.message||'fail');\r\n  })\r\n  .catch(function(){\r\n    btn.disabled=false;showStep(F.steps.length-1);\r\n    err.innerHTML='We could not send your request. Please try again or tap Talk to a Live Agent from the menu.';\r\n    err.classList.add('on');\r\n  });\r\n}\r\n\r\n\/* ================= NAV ================= *\/\r\nfunction show(name){\r\n  Object.keys(views).forEach(function(k){views[k].classList.toggle('on',k===name)});\r\n  body.scrollTop=0;\r\n}\r\nfunction open(){root.classList.add('open')}\r\nfunction close(){root.classList.remove('open')}\r\nfunction go(name){\r\n  if(name==='tattoo'||name==='removal'){buildForm(name);show('form');return}\r\n  if(name==='live'){live();return}\r\n  show(name);\r\n}\r\nfunction live(){\r\n  var t=document.getElementById('tcnToast');\r\n  if(tawkReady&&window.Tawk_API){\r\n    window.Tawk_API.showWidget();window.Tawk_API.maximize();\r\n    close();return;\r\n  }\r\n  show('home');\r\n  t.textContent=(CFG.tawkProperty.indexOf('YOUR_')===0)\r\n    ?'Live chat is not connected yet. Add your tawk.to Property ID and Widget ID in the concierge settings.'\r\n    :'Live chat is loading. Please try again in a moment.';\r\n  t.classList.add('on');\r\n}\r\nfunction api(mode){\r\n  open();\r\n  if(!mode||mode==='home'){show('home');return}\r\n  go(mode);\r\n}\r\nwindow.TattooConcierge={open:api,close:close};\r\n\r\ndocument.getElementById('tcnOpen').addEventListener('click',function(){open()});\r\ndocument.getElementById('tcnClose').addEventListener('click',close);\r\nroot.addEventListener('click',function(e){\r\n  var g=e.target.closest('[data-go]');\r\n  if(g){e.preventDefault();var t=document.getElementById('tcnToast');if(t)t.classList.remove('on');go(g.getAttribute('data-go'));return}\r\n  var a=e.target.closest('[data-act]');\r\n  if(a){\r\n    var v=document.getElementById('tcnFormView'),i=parseInt(v.getAttribute('data-step'),10),n=FORMS[v.getAttribute('data-form')].steps.length;\r\n    if(a.getAttribute('data-act')==='prev'){if(i>0)showStep(i-1)}\r\n    else{if(!validateStep(i))return;if(i<n-1)showStep(i+1);else submitForm()}\r\n  }\r\n});\r\ndocument.addEventListener('keydown',function(e){if(e.key==='Escape')close()});\r\n\r\n\/* static info *\/\r\ndocument.getElementById('tcnHours').innerHTML=CFG.hours;\r\ndocument.getElementById('tcnPhone').innerHTML=CFG.phone;\r\ndocument.getElementById('tcnMail').innerHTML='<a href=\"mailto:'+CFG.email+'\" style=\"color:#fff\">'+CFG.email+'<\/a>';\r\ndocument.getElementById('tcnAddr').innerHTML=CFG.address;\r\nicons(root);\r\n\r\n\/* ================= tawk.to ================= *\/\r\nif(CFG.tawkProperty.indexOf('YOUR_')!==0){\r\n  window.Tawk_API=window.Tawk_API||{};window.Tawk_LoadStart=new Date();\r\n  window.Tawk_API.onLoad=function(){tawkReady=true;window.Tawk_API.hideWidget()};\r\n  window.Tawk_API.onChatMinimized=function(){window.Tawk_API.hideWidget()};\r\n  window.Tawk_API.onChatEnded=function(){window.Tawk_API.hideWidget()};\r\n  var s=document.createElement('script');s.async=true;\r\n  s.src='https:\/\/embed.tawk.to\/'+CFG.tawkProperty+'\/'+CFG.tawkWidget;\r\n  s.charset='UTF-8';s.setAttribute('crossorigin','*');\r\n  document.head.appendChild(s);\r\n}\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Laser Tattoo Removal Erase The PastStart Fresh Safe, precise tattoo removal and fading for cover ups. Book a consultation and we will map out the right plan for your skin and your ink. Book Removal Session Watch The Process Scroll LOCATION California, United States SPECIALIST Lead Removal Technician CONSULTATION Book online in minutes Our Services [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-329","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/tattoobooking.online\/index.php?rest_route=\/wp\/v2\/pages\/329","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tattoobooking.online\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/tattoobooking.online\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/tattoobooking.online\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tattoobooking.online\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=329"}],"version-history":[{"count":7,"href":"https:\/\/tattoobooking.online\/index.php?rest_route=\/wp\/v2\/pages\/329\/revisions"}],"predecessor-version":[{"id":336,"href":"https:\/\/tattoobooking.online\/index.php?rest_route=\/wp\/v2\/pages\/329\/revisions\/336"}],"wp:attachment":[{"href":"https:\/\/tattoobooking.online\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=329"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}