From dd0b131b43dd0304cee1d6bc8bc7229e81611240 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Tue, 23 Dec 2025 20:12:21 +0000
Subject: [PATCH] =legacy rebrand finished

---
 assets/fonts/open-sans-v44-latin-300italic.ttf      |    0 
 assets/fonts/josefin-sans-v34-latin-700.ttf         |    0 
 assets/fonts/open-sans-v44-latin-300.ttf            |    0 
 functions.php                                       |    2 
 assets/fonts/josefin-sans-v34-latin-700.woff2       |    0 
 assets/fonts/open-sans-v44-latin-500italic.woff2    |    0 
 assets/fonts/open-sans-v44-latin-800italic.ttf      |    0 
 style.css                                           |   14 
 assets/fonts/open-sans-v44-latin-300italic.woff2    |    0 
 assets/fonts/open-sans-v44-latin-800.woff2          |    0 
 assets/fonts/josefin-sans-v34-latin-300.woff2       |    0 
 assets/fonts/open-sans-v44-latin-500italic.ttf      |    0 
 assets/fonts/open-sans-v44-latin-800italic.woff2    |    0 
 source.css                                          |  596 +++++++++++++++++++++++++++++++++++++++++++++
 assets/fonts/josefin-sans-v34-latin-700italic.ttf   |    0 
 assets/fonts/josefin-sans-v34-latin-700italic.woff2 |    0 
 theme.json                                          |   97 +++++++
 assets/fonts/open-sans-v44-latin-500.woff2          |    0 
 assets/fonts/josefin-sans-v34-latin-300.ttf         |    0 
 assets/fonts/josefin-sans-v34-latin-300italic.woff2 |    0 
 assets/fonts/open-sans-v44-latin-800.ttf            |    0 
 assets/fonts/josefin-sans-v34-latin-300italic.ttf   |    0 
 assets/fonts/open-sans-v44-latin-500.ttf            |    0 
 assets/fonts/open-sans-v44-latin-300.woff2          |    0 
 templates/front_page.html                           |   33 ++
 25 files changed, 734 insertions(+), 8 deletions(-)

diff --git a/assets/fonts/josefin-sans-v34-latin-300.ttf b/assets/fonts/josefin-sans-v34-latin-300.ttf
new file mode 100644
index 0000000..c06bbba
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-300.ttf
Binary files differ
diff --git a/assets/fonts/josefin-sans-v34-latin-300.woff2 b/assets/fonts/josefin-sans-v34-latin-300.woff2
new file mode 100644
index 0000000..f56ba75
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-300.woff2
Binary files differ
diff --git a/assets/fonts/josefin-sans-v34-latin-300italic.ttf b/assets/fonts/josefin-sans-v34-latin-300italic.ttf
new file mode 100644
index 0000000..02067d6
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-300italic.ttf
Binary files differ
diff --git a/assets/fonts/josefin-sans-v34-latin-300italic.woff2 b/assets/fonts/josefin-sans-v34-latin-300italic.woff2
new file mode 100644
index 0000000..d0b03f1
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-300italic.woff2
Binary files differ
diff --git a/assets/fonts/josefin-sans-v34-latin-700.ttf b/assets/fonts/josefin-sans-v34-latin-700.ttf
new file mode 100644
index 0000000..1ce1b54
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-700.ttf
Binary files differ
diff --git a/assets/fonts/josefin-sans-v34-latin-700.woff2 b/assets/fonts/josefin-sans-v34-latin-700.woff2
new file mode 100644
index 0000000..b1365d8
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-700.woff2
Binary files differ
diff --git a/assets/fonts/josefin-sans-v34-latin-700italic.ttf b/assets/fonts/josefin-sans-v34-latin-700italic.ttf
new file mode 100644
index 0000000..d45760e
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-700italic.ttf
Binary files differ
diff --git a/assets/fonts/josefin-sans-v34-latin-700italic.woff2 b/assets/fonts/josefin-sans-v34-latin-700italic.woff2
new file mode 100644
index 0000000..8cf77a1
--- /dev/null
+++ b/assets/fonts/josefin-sans-v34-latin-700italic.woff2
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-300.ttf b/assets/fonts/open-sans-v44-latin-300.ttf
new file mode 100644
index 0000000..8c063b5
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-300.ttf
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-300.woff2 b/assets/fonts/open-sans-v44-latin-300.woff2
new file mode 100644
index 0000000..d6c8549
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-300.woff2
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-300italic.ttf b/assets/fonts/open-sans-v44-latin-300italic.ttf
new file mode 100644
index 0000000..f0b30b2
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-300italic.ttf
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-300italic.woff2 b/assets/fonts/open-sans-v44-latin-300italic.woff2
new file mode 100644
index 0000000..02dce9c
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-300italic.woff2
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-500.ttf b/assets/fonts/open-sans-v44-latin-500.ttf
new file mode 100644
index 0000000..d181698
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-500.ttf
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-500.woff2 b/assets/fonts/open-sans-v44-latin-500.woff2
new file mode 100644
index 0000000..0cf0f4d
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-500.woff2
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-500italic.ttf b/assets/fonts/open-sans-v44-latin-500italic.ttf
new file mode 100644
index 0000000..22d5012
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-500italic.ttf
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-500italic.woff2 b/assets/fonts/open-sans-v44-latin-500italic.woff2
new file mode 100644
index 0000000..09c1787
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-500italic.woff2
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-800.ttf b/assets/fonts/open-sans-v44-latin-800.ttf
new file mode 100644
index 0000000..57ba141
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-800.ttf
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-800.woff2 b/assets/fonts/open-sans-v44-latin-800.woff2
new file mode 100644
index 0000000..a9240cb
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-800.woff2
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-800italic.ttf b/assets/fonts/open-sans-v44-latin-800italic.ttf
new file mode 100644
index 0000000..7354f0c
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-800italic.ttf
Binary files differ
diff --git a/assets/fonts/open-sans-v44-latin-800italic.woff2 b/assets/fonts/open-sans-v44-latin-800italic.woff2
new file mode 100644
index 0000000..1a88efe
--- /dev/null
+++ b/assets/fonts/open-sans-v44-latin-800italic.woff2
Binary files differ
diff --git a/functions.php b/functions.php
index 1163a3b..0b24e90 100644
--- a/functions.php
+++ b/functions.php
@@ -15,7 +15,7 @@
 function legacy_parent_theme_enqueue_styles() {
 	wp_enqueue_style( 'jvb-theme-style', get_template_directory_uri() . '/style.css', array(), '0.1.0' );
 	wp_enqueue_style(
-		'legacy-style',
+		'jvb-child-style',
 		get_stylesheet_directory_uri() . '/style.css',
 		array( 'jvb-theme-style' ),
 		'0.1.0'
diff --git a/source.css b/source.css
new file mode 100644
index 0000000..36d9dd9
--- /dev/null
+++ b/source.css
@@ -0,0 +1,596 @@
+/*!
+Theme Name:     Legacy
+Theme URI:      https://legacytattooremoval.ca
+Description:    Theme for Legacy Tattoo Removal
+Author:         Jake
+Author URI:     https://jakevan.ca
+Template:       jvb-theme
+Version:        1.0.1
+*/
+:root{
+	--filter: grayscale(.3) sepia(.4);
+
+	/** Download your Fonts from: https://gwfh.mranftl.com/ **/
+	--font-base: -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, sans-serif;
+	--heading: 'Josefin Sans', var(--font-base);
+	--body: 'Open Sans', var(--font-base);
+	--fw-h: 300;
+	--fw-h-light: 300;
+	--fw-h-bold: 700;
+	--fw-b: 500;
+	--fw-b-bold: 800;
+	--fw-b-light: 300;
+
+	/* Colours
+	For best results, generate colours from base colours using: https://uicolors.app/generate/
+	or sass darken/lighten by 5%: http://scg.ar-ch.org/
+	*/
+	--light-0: #efefef;
+	--light-50: #e2e2e2;
+	--light-100: #d5d5d5;
+	--light-200: #c9c9c9;
+	--light-rgb: 239,239,239;
+
+	--dark-0: #151515;
+	--dark-50: #222222;
+	--dark-100: #2e2e2e;
+	--dark-200: #3b3b3b;
+	--dark-rgb: 21,21,21;
+
+	--action-0: #ff0080;
+	--action-50: #ff2492;
+	--action-100: #ff47a4;
+	--action-200: #ff6bb5;
+	--action-rgb: 255,0,128;
+	--action-contrast: var(--light-0);
+
+	--secondary-0: #D69121;
+	--secondary-50: #ffc421;
+	--secondary-100: #ffcd44;
+	--secondary-200: #ffd768;
+	--secondary-rgb: 252,185,0;
+	--secondary-contrast: var(--light-0);
+
+	--success: #20D64E;
+	--successLight: #DBFAE3;
+	--successDark: #05230D;
+	--successBack: var(--successLight);
+	--successText: var(--successDark);
+	--warning: #D69121;
+	--warningLight: #F6E5CB;
+	--warningDark: #231806;
+	--warningBack: var(--warningLight);
+	--warningText: var(--warningDark);
+	--error: #CF1616;
+	--errorLight: #F9C8C8;
+	--errorDark: #4A0808;
+	--errorBack: var(--errorLight);
+	--errorText: var(--errorDark);
+
+	--base: var(--light-0);
+	--base-50: var(--light-50);
+	--base-100: var(--light-100);
+	--base-200: var(--light-200);
+	--base-rgb: var(--light-rgb);
+
+	--contrast: var(--dark-0);
+	--contrast-50: var(--dark-50);
+	--contrast-100: var(--dark-100);
+	--contrast-200: var(--dark-200);
+	--contrast-rgb: var(--dark-rgb);
+}
+
+body:has(#theme-switcher:checked){
+	--action-50: #db006e;
+	--action-100: #b8005c;
+	--action-200: #94004a;
+	--secondary-50: #d89f00;
+	--secondary-100: #b58500;
+	--secondary-200: #916a00;
+
+	--contrast: var(--light-0);
+	--contrast-50: var(--light-50);
+	--contrast-100: var(--light-100);
+	--contrast-200: var(--light-200);
+	--contrast-rgb: var(--light-rgb);
+
+	--base: var(--dark-0);
+	--base-50: var(--dark-50);
+	--base-100: var(--dark-100);
+	--base-200: var(--dark-200);
+	--base-rgb: var(--dark-rgb);
+
+	--successBack: var(--successDark);
+	--successText: var(--successLight);
+	--warningBack: var(--warningDark);
+	--warningText: var(--warningLight);
+	--errorBack: var(--errorDark);
+	--errorText: var(--errorLight);
+}
+/*** FONT START **/
+/* open-sans-300 - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Open Sans';
+	font-style: normal;
+	font-weight: 300;
+	src: url('./assets/fonts/open-sans-v44-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/open-sans-v44-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* open-sans-300italic - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Open Sans';
+	font-style: italic;
+	font-weight: 300;
+	src: url('./assets/fonts/open-sans-v44-latin-300italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/open-sans-v44-latin-300italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* open-sans-500 - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Open Sans';
+	font-style: normal;
+	font-weight: 500;
+	src: url('./assets/fonts/open-sans-v44-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/open-sans-v44-latin-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* open-sans-500italic - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Open Sans';
+	font-style: italic;
+	font-weight: 500;
+	src: url('./assets/fonts/open-sans-v44-latin-500italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/open-sans-v44-latin-500italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* open-sans-800 - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Open Sans';
+	font-style: normal;
+	font-weight: 800;
+	src: url('./assets/fonts/open-sans-v44-latin-800.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/open-sans-v44-latin-800.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* open-sans-800italic - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Open Sans';
+	font-style: italic;
+	font-weight: 800;
+	src: url('./assets/fonts/open-sans-v44-latin-800italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/open-sans-v44-latin-800italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+
+/* josefin-sans-300 - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Josefin Sans';
+	font-style: normal;
+	font-weight: 300;
+	src: url('./assets/fonts/josefin-sans-v34-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/josefin-sans-v34-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* josefin-sans-300italic - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Josefin Sans';
+	font-style: italic;
+	font-weight: 300;
+	src: url('./assets/fonts/josefin-sans-v34-latin-300italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/josefin-sans-v34-latin-300italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* josefin-sans-700 - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Josefin Sans';
+	font-style: normal;
+	font-weight: 700;
+	src: url('./assets/fonts/josefin-sans-v34-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/josefin-sans-v34-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+/* josefin-sans-700italic - latin */
+@font-face {
+	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
+	font-family: 'Josefin Sans';
+	font-style: italic;
+	font-weight: 700;
+	src: url('./assets/fonts/josefin-sans-v34-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
+	url('./assets/fonts/josefin-sans-v34-latin-700italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
+}
+.home .video-cover.video-cover {
+	margin-top: 0;
+}
+/*** FONT END ***/
+.wp-site-blocks > header {
+	justify-content: center!important;
+}
+.scroll-progress .bar {
+	background:
+		linear-gradient(90deg,
+		rgba(var(--action-rgb),.8) 0%,
+		rgba(var(--action-rgb),1) 40%,
+		rgba(var(--action-rgb),.8) 100%);
+	position: relative;
+
+	box-shadow:
+		0 0 4px rgba(var(--action-rgb),.9),
+		0 0 8px rgba(var(--action-rgb),.7),
+		0 0 16px rgba(var(--action-rgb),.4);
+}
+#theme-switch#theme-switch {
+	position: absolute;
+	left: 1rem;
+}
+
+.fixed.bottom .call {
+	width: var(--btn);
+	flex: 0 1 var(--btn_);
+}
+
+.fixed.bottom li a {
+	gap: 1rem;
+}
+
+nav.always.always a {
+	text-transform: none;
+}
+
+.pre-header {
+	font-family: var(--heading);
+}
+
+.eltrs {
+	min-height: 40vh;
+	width: 100vw;
+	background-color: var(--action-0);
+	--justify: center;
+	--align: center;
+}
+.eltrs h2 {
+	font-family: var(--body);
+	font-weight: var(--fw-h-bold);
+	color: var(--action-contrast);
+	text-align: center;
+	margin: 0;
+	font-size: var(--txt-large);
+}
+.eltrs span:nth-of-type(1) {
+	font-size: 2.25em;
+	letter-spacing: -.15rem;
+}
+.eltrs span:nth-of-type(2) {
+	line-height: .8;
+}
+.eltrs span:nth-of-type(3) {
+	font-size: 2.2em;
+	letter-spacing: -.1rem;
+}
+.eltrs span {
+	display: block;
+	line-height: .9;
+}
+
+@media (min-width:768px) {
+	.eltrs h2 {
+		font-size: var(--txt-xx-large);
+	}
+	.eltrs span:nth-of-type(1) {
+		font-size: 2.25em;
+		letter-spacing: -.35rem;
+	}
+	.eltrs span:nth-of-type(2) {
+		line-height: .8;
+	}
+	.eltrs span:nth-of-type(3) {
+		font-size: 2.35em;
+		letter-spacing: -.25rem;
+	}
+}
+
+ol.blocky.blocky {
+	list-style: none;
+	counter-reset: blocky;
+	padding: 1rem;
+	max-width: none;
+}
+@media (min-width: 768px) {
+	padding: 1rem var(--btn);
+}
+
+ol.blocky li {
+	counter-increment: blocky;
+	--width: 20vw;
+	--gap: 25vw;
+	min-height: var(--width);
+	margin: 4rem auto;
+	display: flex;
+	flex-direction: column;
+	position: relative;
+	padding-left: var(--gap);
+}
+
+ol.blocky li:nth-of-type(odd)::before,
+ol.blocky li:nth-of-type(even)::after {
+	content: counter(blocky);
+	font-weight: 900;
+	font-size: var(--txt-xxx-large);
+	height: var(--width);
+	width: var(--width);
+	/*border: 1rem solid var(--base-200);*/
+	background-color: var(--action-0);
+	color: var(--action-contrast);
+	display: flex;
+	justify-content: center;
+	align-items: center;
+	position: absolute;
+	top: 0;
+	left: 0;
+	border-radius: 50% 4px 50% 4px;
+	border: 4px solid var(--action-200);
+	border-left: 0;
+	border-top: 0;
+	box-shadow: rgba(var(--base-rgb),var(--op-45)) var(--shdw);
+}
+
+@media (min-width: 768px) {
+	ol.blocky li {
+		position: relative;
+		display: block;
+		padding: 1rem;
+	}
+
+	ol.blocky li:nth-of-type(odd) {
+		padding-left: var(--gap);
+	}
+	ol.blocky li:nth-of-type(even) {
+		padding-right: var(--gap);
+	}
+
+	ol.blocky li:nth-of-type(odd)::before,
+	ol.blocky li:nth-of-type(even)::after {
+		margin-bottom: 0;
+		width: var(--width);
+		position: absolute;
+		top: 0;
+		left: unset;
+		border-radius: 0;
+		border-width: .5rem;
+	}
+
+	ol.blocky li:nth-of-type(odd)::before {
+		left: 0;
+	}
+	ol.blocky li:nth-of-type(even)::after {
+		right: 0;
+	}
+}
+/*main > section > * {*/
+/*	width: 100%;*/
+/*}*/
+main > section:nth-of-type(even) {
+	background-color: var(--base-100);
+	max-width: 100vw;
+	padding: 3rem 0;
+}
+main > section:nth-of-type(even) > * {
+	max-width: var(--content);
+	margin-left: auto;
+	margin-right: auto;
+}
+main > section.callout:last-of-type {
+	margin-bottom: 0;
+}
+
+section.pre-footer {
+	min-height: 25vh;
+	background-color: var(--secondary-0);
+	color: var(--secondary-contrast);
+	display: flex;
+	justify-content: center;
+	align-items: center;
+	padding: 0 2rem;
+	flex-direction: column;
+	gap: 0;
+}
+.pre-footer p {
+	margin: 0;
+	text-align: center;
+}
+.pre-footer ~ footer {
+	margin-top: 0;
+}
+.pre-footer a {
+	background-color: var(--secondary-contrast);
+	padding: 0 .125rem;
+	border-radius: 4px;
+}
+
+
+
+.triangle {
+	padding: 2rem 2rem 0;
+	--justify: flex-end;
+	position: relative;
+	background-color: var(--action-0);
+	color: var(--action-contrast);
+}
+.excerpt::after,
+.triangle::after {
+	content: '';
+	position: absolute;
+	top: 100%;
+	width: 0;
+	height: 0;
+	border-left: 32px solid transparent;
+	border-right: 32px solid transparent;
+	border-top: 32px solid var(--action-0);
+	clear: both;
+}
+.excerpt::after {
+	left: -1rem;
+}
+.triangle::after {
+	right: 2rem;
+}
+.triangle.left::after {
+	right: unset;
+	left: 2rem;
+}
+.triangle h1 {
+	padding-right: 1rem;
+	max-width: var(--wide);
+	width: max-content;
+	word-wrap: break-word;
+}
+
+.excerpt {
+	position: relative;
+	margin-right: 1rem;
+	padding: 1rem 15vw 1rem 0;
+	border-bottom: 4px solid var(--action-0);
+	margin-bottom: 6rem;
+	grid-column: full;
+	max-width: var(--narrow);
+	margin-left: auto;
+}
+.tldr {
+	font-weight: var(--fw-b-bold);
+	font-size: var(--txt-large);
+	display: inline-block;
+	vertical-align: bottom;
+	line-height: 1.4;
+	/*margin-right: .75rem;*/
+	color: var(--action-0);
+	position: relative;
+	left: -2rem;
+	cursor: pointer;
+}
+.align-full.triangle:has(+.contact) {
+	margin-bottom: 0;
+	z-index: 1;
+}
+section.contact.contact {
+	gap: 1.5rem;
+	margin-top: -.5rem;
+	padding-bottom: 2rem;
+	background-color: var(--base-100);
+	color: var(--contrast-200);
+	max-width: none;
+}
+@media (min-width: 768px) {
+	section.contact.contact {
+		padding: 2rem 15vw;
+	}
+}
+section.contact .buttons li a,
+section.contact .socials a {
+	background-color: var(--base-50);
+}
+section.contact .buttons li a:hover,
+section.contact .buttons li a:focus,
+section.contact .socials a:hover,
+section.contact .socials a:focus {
+	background-color: var(--action-0);
+}
+section.contact.triangle::after {
+	border-top-color: var(--base-100);
+}
+section.contact h2 {
+	margin: 2rem 0 0;
+	display: flex;
+	font-weight: var(--fw-h-bold);
+	text-transform: uppercase;
+	white-space: nowrap;
+	width: 100%;
+	line-height: 1;
+	gap: 1rem;
+	align-items: center;
+}
+section.contact h2::after {
+	content: '';
+	height: 2px;
+	background-color: var(--contrast-200);
+	border-radius: 4px;
+	width: 100%;
+	position:relative;
+	top: -.25rem;
+}
+
+section.contact p {
+	margin: 0;
+	line-height: 1;
+	user-select: all;
+}
+section.contact .buttons {
+	margin: 0;
+	--height: fit-content;
+}
+section.contact > .col {
+	width: 50%;
+}
+.pricing p {
+	margin:0;
+}
+.pricing h3 {
+	margin: 4rem 0 0 0;
+}
+.pricing > .group {
+	--wrap: wrap;
+}
+@media (min-width: 768px) {
+	.pricing > .group {
+		--wrap: nowrap;
+	}
+	.pricing > .group > .col {
+		width: 50%;
+	}
+}
+
+span.logo .icon-logo-triangle {
+	background-color: var(--action-0);
+	--w:4rem;
+}
+span.logo .icon-logo-text-only {
+	--w: 8rem;
+}
+a .icon-logo-text-only {
+	background-color: var(--contrast);
+}
+a:hover .icon-logo-text-only {
+	background-color: var(--action-0);
+}
+span.logo:hover .icon-logo-triangle {
+
+}
+
+.loop {
+	max-width: var(--full);
+	overflow-x: auto;
+	padding: 1rem 0;
+	touch-action: pan-x pan-y;
+}
+
+.loop .item-grid.item-grid {
+	display: flex;
+	flex-wrap: nowrap;
+	width: max-content;
+	position: relative;
+}
+.loop .item-grid.item-grid figure {
+	margin: 0;
+}
+.loop .item-grid .item:nth-of-type(odd) figure {
+	top: -1rem;
+}
+
+.loop .item-grid .item.item {
+	width: 50vw;
+}
+
+@media (min-width: 768px){
+	.loop .item-grid .item.item {
+		width: 25vw;
+	}
+}
diff --git a/style.css b/style.css
index d66ce27..874950c 100644
--- a/style.css
+++ b/style.css
@@ -1,9 +1,9 @@
-/*
+/*!
 Theme Name:     Legacy
-Theme URI:      
-Description:    Jvb-theme child theme.
-Author:         Me
-Author URI:     
+Theme URI:      https://legacytattooremoval.ca
+Description:    Theme for Legacy Tattoo Removal
+Author:         Jake
+Author URI:     https://jakevan.ca
 Template:       jvb-theme
-Version:        0.1.0
-*/
+Version:        1.0.1
+*/:root{--filter:grayscale(.3) sepia(.4);--font-base:-apple-system,BlinkMacSystemFont,avenir next,avenir,segoe ui,helvetica neue,helvetica,Cantarell,Ubuntu,roboto,noto,arial,sans-serif;--heading:'Josefin Sans',var(--font-base);--body:'Open Sans',var(--font-base);--fw-h:300;--fw-h-light:300;--fw-h-bold:700;--fw-b:500;--fw-b-bold:800;--fw-b-light:300;--light-0:#efefef;--light-50:#e2e2e2;--light-100:#d5d5d5;--light-200:#c9c9c9;--light-rgb:239,239,239;--dark-0:#151515;--dark-50:#222222;--dark-100:#2e2e2e;--dark-200:#3b3b3b;--dark-rgb:21,21,21;--action-0:#ff0080;--action-50:#ff2492;--action-100:#ff47a4;--action-200:#ff6bb5;--action-rgb:255,0,128;--action-contrast:var(--light-0);--secondary-0:#D69121;--secondary-50:#ffc421;--secondary-100:#ffcd44;--secondary-200:#ffd768;--secondary-rgb:252,185,0;--secondary-contrast:var(--light-0);--success:#20D64E;--successLight:#DBFAE3;--successDark:#05230D;--successBack:var(--successLight);--successText:var(--successDark);--warning:#D69121;--warningLight:#F6E5CB;--warningDark:#231806;--warningBack:var(--warningLight);--warningText:var(--warningDark);--error:#CF1616;--errorLight:#F9C8C8;--errorDark:#4A0808;--errorBack:var(--errorLight);--errorText:var(--errorDark);--base:var(--light-0);--base-50:var(--light-50);--base-100:var(--light-100);--base-200:var(--light-200);--base-rgb:var(--light-rgb);--contrast:var(--dark-0);--contrast-50:var(--dark-50);--contrast-100:var(--dark-100);--contrast-200:var(--dark-200);--contrast-rgb:var(--dark-rgb)}body:has(#theme-switcher:checked){--action-50:#db006e;--action-100:#b8005c;--action-200:#94004a;--secondary-50:#d89f00;--secondary-100:#b58500;--secondary-200:#916a00;--contrast:var(--light-0);--contrast-50:var(--light-50);--contrast-100:var(--light-100);--contrast-200:var(--light-200);--contrast-rgb:var(--light-rgb);--base:var(--dark-0);--base-50:var(--dark-50);--base-100:var(--dark-100);--base-200:var(--dark-200);--base-rgb:var(--dark-rgb);--successBack:var(--successDark);--successText:var(--successLight);--warningBack:var(--warningDark);--warningText:var(--warningLight);--errorBack:var(--errorDark);--errorText:var(--errorLight)}@font-face{font-display:swap;font-family:'Open Sans';font-style:normal;font-weight:300;src:url(assets/fonts/open-sans-v44-latin-300.woff2) format('woff2'),url(assets/fonts/open-sans-v44-latin-300.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Open Sans';font-style:italic;font-weight:300;src:url(assets/fonts/open-sans-v44-latin-300italic.woff2) format('woff2'),url(assets/fonts/open-sans-v44-latin-300italic.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Open Sans';font-style:normal;font-weight:500;src:url(assets/fonts/open-sans-v44-latin-500.woff2) format('woff2'),url(assets/fonts/open-sans-v44-latin-500.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Open Sans';font-style:italic;font-weight:500;src:url(assets/fonts/open-sans-v44-latin-500italic.woff2) format('woff2'),url(assets/fonts/open-sans-v44-latin-500italic.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Open Sans';font-style:normal;font-weight:800;src:url(assets/fonts/open-sans-v44-latin-800.woff2) format('woff2'),url(assets/fonts/open-sans-v44-latin-800.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Open Sans';font-style:italic;font-weight:800;src:url(assets/fonts/open-sans-v44-latin-800italic.woff2) format('woff2'),url(assets/fonts/open-sans-v44-latin-800italic.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Josefin Sans';font-style:normal;font-weight:300;src:url(assets/fonts/josefin-sans-v34-latin-300.woff2) format('woff2'),url(assets/fonts/josefin-sans-v34-latin-300.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Josefin Sans';font-style:italic;font-weight:300;src:url(assets/fonts/josefin-sans-v34-latin-300italic.woff2) format('woff2'),url(assets/fonts/josefin-sans-v34-latin-300italic.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Josefin Sans';font-style:normal;font-weight:700;src:url(assets/fonts/josefin-sans-v34-latin-700.woff2) format('woff2'),url(assets/fonts/josefin-sans-v34-latin-700.ttf) format('truetype')}@font-face{font-display:swap;font-family:'Josefin Sans';font-style:italic;font-weight:700;src:url(assets/fonts/josefin-sans-v34-latin-700italic.woff2) format('woff2'),url(assets/fonts/josefin-sans-v34-latin-700italic.ttf) format('truetype')}.home .video-cover.video-cover{margin-top:0}.wp-site-blocks>header{justify-content:center!important}.scroll-progress .bar{background:linear-gradient(90deg,rgba(var(--action-rgb),.8) 0,rgba(var(--action-rgb),1) 40%,rgba(var(--action-rgb),.8) 100%);position:relative;box-shadow:0 0 4px rgba(var(--action-rgb),.9),0 0 8px rgba(var(--action-rgb),.7),0 0 16px rgba(var(--action-rgb),.4)}#theme-switch#theme-switch{position:absolute;left:1rem}.fixed.bottom .call{width:var(--btn);flex:0 1 var(--btn_)}.fixed.bottom li a{gap:1rem}nav.always.always a{text-transform:none}.pre-header{font-family:var(--heading)}.eltrs{min-height:40vh;width:100vw;background-color:var(--action-0);--justify:center;--align:center}.eltrs h2{font-family:var(--body);font-weight:var(--fw-h-bold);color:var(--action-contrast);text-align:center;margin:0;font-size:var(--txt-large)}.eltrs span:nth-of-type(1){font-size:2.25em;letter-spacing:-.15rem}.eltrs span:nth-of-type(2){line-height:.8}.eltrs span:nth-of-type(3){font-size:2.2em;letter-spacing:-.1rem}.eltrs span{display:block;line-height:.9}@media (min-width:768px){.eltrs h2{font-size:var(--txt-xx-large)}.eltrs span:nth-of-type(1){font-size:2.25em;letter-spacing:-.35rem}.eltrs span:nth-of-type(2){line-height:.8}.eltrs span:nth-of-type(3){font-size:2.35em;letter-spacing:-.25rem}}ol.blocky.blocky{list-style:none;counter-reset:blocky;padding:1rem;max-width:none}ol.blocky li{counter-increment:blocky;--width:20vw;--gap:25vw;min-height:var(--width);margin:4rem auto;display:flex;flex-direction:column;position:relative;padding-left:var(--gap)}ol.blocky li:nth-of-type(even)::after,ol.blocky li:nth-of-type(odd)::before{content:counter(blocky);font-weight:900;font-size:var(--txt-xxx-large);height:var(--width);width:var(--width);background-color:var(--action-0);color:var(--action-contrast);display:flex;justify-content:center;align-items:center;position:absolute;top:0;left:0;border-radius:50% 4px 50% 4px;border:4px solid var(--action-200);border-left:0;border-top:0;box-shadow:rgba(var(--base-rgb),var(--op-45)) var(--shdw)}@media (min-width:768px){ol.blocky li{position:relative;display:block;padding:1rem}ol.blocky li:nth-of-type(odd){padding-left:var(--gap)}ol.blocky li:nth-of-type(even){padding-right:var(--gap)}ol.blocky li:nth-of-type(even)::after,ol.blocky li:nth-of-type(odd)::before{margin-bottom:0;width:var(--width);position:absolute;top:0;left:unset;border-radius:0;border-width:.5rem}ol.blocky li:nth-of-type(odd)::before{left:0}ol.blocky li:nth-of-type(even)::after{right:0}}main>section:nth-of-type(even){background-color:var(--base-100);max-width:100vw;padding:3rem 0}main>section:nth-of-type(even)>*{max-width:var(--content);margin-left:auto;margin-right:auto}main>section.callout:last-of-type{margin-bottom:0}section.pre-footer{min-height:25vh;background-color:var(--secondary-0);color:var(--secondary-contrast);display:flex;justify-content:center;align-items:center;padding:0 2rem;flex-direction:column;gap:0}.pre-footer p{margin:0;text-align:center}.pre-footer~footer{margin-top:0}.pre-footer a{background-color:var(--secondary-contrast);padding:0 .125rem;border-radius:4px}.triangle{padding:2rem 2rem 0;--justify:flex-end;position:relative;background-color:var(--action-0);color:var(--action-contrast)}.excerpt::after,.triangle::after{content:'';position:absolute;top:100%;width:0;height:0;border-left:32px solid transparent;border-right:32px solid transparent;border-top:32px solid var(--action-0);clear:both}.excerpt::after{left:-1rem}.triangle::after{right:2rem}.triangle.left::after{right:unset;left:2rem}.triangle h1{padding-right:1rem;max-width:var(--wide);width:max-content;word-wrap:break-word}.excerpt{position:relative;margin-right:1rem;padding:1rem 15vw 1rem 0;border-bottom:4px solid var(--action-0);margin-bottom:6rem;grid-column:full;max-width:var(--narrow);margin-left:auto}.tldr{font-weight:var(--fw-b-bold);font-size:var(--txt-large);display:inline-block;vertical-align:bottom;line-height:1.4;color:var(--action-0);position:relative;left:-2rem;cursor:pointer}.align-full.triangle:has(+.contact){margin-bottom:0;z-index:1}section.contact.contact{gap:1.5rem;margin-top:-.5rem;padding-bottom:2rem;background-color:var(--base-100);color:var(--contrast-200);max-width:none}@media (min-width:768px){section.contact.contact{padding:2rem 15vw}}section.contact .buttons li a,section.contact .socials a{background-color:var(--base-50)}section.contact .buttons li a:focus,section.contact .buttons li a:hover,section.contact .socials a:focus,section.contact .socials a:hover{background-color:var(--action-0)}section.contact.triangle::after{border-top-color:var(--base-100)}section.contact h2{margin:2rem 0 0;display:flex;font-weight:var(--fw-h-bold);text-transform:uppercase;white-space:nowrap;width:100%;line-height:1;gap:1rem;align-items:center}section.contact h2::after{content:'';height:2px;background-color:var(--contrast-200);border-radius:4px;width:100%;position:relative;top:-.25rem}section.contact p{margin:0;line-height:1;user-select:all}section.contact .buttons{margin:0;--height:fit-content}section.contact>.col{width:50%}.pricing p{margin:0}.pricing h3{margin:4rem 0 0 0}.pricing>.group{--wrap:wrap}@media (min-width:768px){.pricing>.group{--wrap:nowrap}.pricing>.group>.col{width:50%}}span.logo .icon-logo-triangle{background-color:var(--action-0);--w:4rem}span.logo .icon-logo-text-only{--w:8rem}a .icon-logo-text-only{background-color:var(--contrast)}a:hover .icon-logo-text-only{background-color:var(--action-0)}.loop{max-width:var(--full);overflow-x:auto;padding:1rem 0;touch-action:pan-x pan-y}.loop .item-grid.item-grid{display:flex;flex-wrap:nowrap;width:max-content;position:relative}.loop .item-grid.item-grid figure{margin:0}.loop .item-grid .item:nth-of-type(odd) figure{top:-1rem}.loop .item-grid .item.item{width:50vw}@media (min-width:768px){.loop .item-grid .item.item{width:25vw}}
\ No newline at end of file
diff --git a/templates/front_page.html b/templates/front_page.html
new file mode 100644
index 0000000..8d2dbc6
--- /dev/null
+++ b/templates/front_page.html
@@ -0,0 +1,33 @@
+<!-- wp:template-part {"slug":"header","theme":"jvb-theme"} /-->
+
+<!-- wp:jvb/video {"posterId":1921,"posterUrl":"http://legacyrebrand.test/wp-content/uploads/2024/03/splash.webp","videoSources":[{"id":2714,"url":"http://legacyrebrand.test/wp-content/uploads/2024/06/Best-Laser-Tattoo-Removal-Edmonton-480.mp4","mime":"video/mp4"}],"mobileSources":[{"id":2714,"url":"http://legacyrebrand.test/wp-content/uploads/2024/06/Best-Laser-Tattoo-Removal-Edmonton-480.mp4","mime":"video/mp4"}],"fadeEffect":true} -->
+<div class="wp-block-jvb-video video-cover-wrapper-placeholder"><!-- wp:media-text {"mediaId":3456,"mediaLink":"http://legacyrebrand.test/faded-kitsune-scott-rusnak/","mediaType":"image","isStackedOnMobile":false} -->
+	<div class="wp-block-media-text"><figure class="wp-block-media-text__media"><img src="http://legacyrebrand.test/wp-content/uploads/2025/10/Faded-Kitsune-Scott-Rusnak-1024x992.png" alt="" class="wp-image-3456 size-full"/></figure><div class="wp-block-media-text__content"><!-- wp:site-title /-->
+
+		<!-- wp:site-tagline /--></div></div>
+	<!-- /wp:media-text -->
+
+	<!-- wp:buttons {"layout":{"type":"flex","justifyContent":"center"}} -->
+	<div class="wp-block-buttons"><!-- wp:button {"width":50,"className":"is-style-outline"} -->
+		<div class="wp-block-button has-custom-width wp-block-button__width-50 is-style-outline"><a class="wp-block-button__link wp-element-button" href="http://legacyrebrand.test/get-an-estimate/">Get an Estimate</a></div>
+		<!-- /wp:button -->
+
+		<!-- wp:button {"width":50,"className":"is-style-outline"} -->
+		<div class="wp-block-button has-custom-width wp-block-button__width-50 is-style-outline"><a class="wp-block-button__link wp-element-button" href="https://legacytattooremoval.janeapp.com/#/staff_member/2/treatment/15">Free Consult</a></div>
+		<!-- /wp:button -->
+
+		<!-- wp:button {"width":50,"className":"is-style-outline"} -->
+		<div class="wp-block-button has-custom-width wp-block-button__width-50 is-style-outline"><a class="wp-block-button__link wp-element-button" href="http://legacyrebrand.test/category/before-and-after/">Before &amp; After</a></div>
+		<!-- /wp:button -->
+
+		<!-- wp:button {"width":50,"className":"is-style-outline"} -->
+		<div class="wp-block-button has-custom-width wp-block-button__width-50 is-style-outline"><a class="wp-block-button__link wp-element-button" href="http://legacyrebrand.test/edmonton-tattoo-removal/">Location</a></div>
+		<!-- /wp:button --></div>
+	<!-- /wp:buttons --></div>
+<!-- /wp:jvb/video -->
+
+<!-- wp:group {"tagName":"main","layout":{"type":"constrained"}} -->
+<main class="wp-block-group"><!-- wp:post-content {"layout":{"type":"constrained"}} /--></main>
+<!-- /wp:group -->
+
+<!-- wp:template-part {"slug":"footer-copy","theme":"legacy","tagName":"jvb-theme"} /-->
diff --git a/theme.json b/theme.json
new file mode 100644
index 0000000..6932f34
--- /dev/null
+++ b/theme.json
@@ -0,0 +1,97 @@
+{
+  "$schema": "https://schemas.wp.org/trunk/theme.json",
+  "version":3,
+  "settings": {
+    "appearanceTools": true,
+    "layout": {
+      "contentSize": "768px",
+      "wideSize": "1100px"
+    },
+    "color": {
+      "defaultGradients": false,
+      "palette": [
+        {
+          "slug": "contrast",
+          "color": "#151515",
+          "name": "Darkest"
+        },
+        {
+          "slug": "contrast-50",
+          "color": "#222222",
+          "name": "Darker"
+        },
+        {
+          "slug": "contrast-100",
+          "color": "#2e2e2e",
+          "name": "Dark"
+        },
+        {
+          "slug": "contrast-200",
+          "color": "#3b3b3b",
+          "name": "Dark"
+        },
+        {
+          "slug": "base",
+          "color": "#efefef",
+          "name": "Lightest"
+        },
+        {
+          "slug": "base-50",
+          "color": "#e2e2e2",
+          "name": "Lighterer"
+        },
+        {
+          "slug": "base-100",
+          "color": "#d5d5d5",
+          "name": "Lighter"
+        },
+        {
+          "slug": "base-200",
+          "color": "#c9c9c9",
+          "name": "Light"
+        },
+        {
+          "slug": "action-0",
+          "color": "#ff0080",
+          "name": "Action"
+        },
+        {
+          "slug": "action-50",
+          "color": "#ff2492",
+          "name": "Action Light"
+        },
+        {
+          "slug": "action-100",
+          "color": "#ff47a4",
+          "name": "Action Lighter"
+        },
+        {
+          "slug": "action-200",
+          "color": "#ff6bb5",
+          "name": "Action Lightest"
+        },
+        {
+          "slug": "secondary-0",
+          "color": "#D69121",
+          "name": "Secondary"
+        },
+        {
+          "slug": "secondary-50",
+          "color": "#ffc421",
+          "name": "Secondary Light"
+        },
+        {
+          "slug": "secondary-100",
+          "color": "#ffcd44",
+          "name": "Secondary Lighter"
+        },
+        {
+          "slug": "secondary-200",
+          "color": "#ffd768",
+          "name": "Secondary Lightest"
+        }
+
+      ]
+    }
+  }
+}

--
Gitblit v1.10.0