/*
Theme Name: Raw Canvas
Theme URI: https://example.com/raw-canvas
Author: You
Description: A blank-canvas theme for pasting hand-written HTML sections and rendering them byte-for-byte. Strips all WordPress front-end JavaScript, block CSS, emoji, and content auto-formatting.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: raw-canvas
*/

/*
 * Deliberately empty.
 *
 * This file exists only so WordPress recognises the theme. It is NOT enqueued
 * on the front end, so nothing here can interfere with your pasted markup.
 *
 * Put your own CSS in assets/app.css — it is auto-enqueued if present.
 */


/* ============================================================
 * RAW CANVAS
 * FULL-BLEED + HORIZONTAL SCROLL GUARD
 *
 * CSS-ONLY REPLACEMENT FOR:
 * RAWCANVAS_KILL_H_SCROLL
 * RAWCANVAS_BLEED_SELECTOR
 * RAWCANVAS_BLEED_SELECTOR = [id^="asd-"]
 *
 * Based on the actual Raw Canvas HTML structure.
 * ============================================================ */


/* ============================================================
 * 1. GLOBAL HORIZONTAL SCROLL GUARD
 * ============================================================ */

html {
	overflow-x: clip;
}

body {
	overflow-x: clip;
	max-width: 100%;
	position: relative;
	margin: 0;
	padding: 0;
}


@supports not (overflow: clip) {

	html,
	body {
		overflow-x: hidden;
	}
}


[id^="asd-"] {

	width: 100vw !important;
	max-width: 100vw !important;

	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;

	overflow-x: clip;

	box-sizing: border-box;
}


@supports (width: 100dvw) {

	[id^="asd-"] {

		width: 100dvw !important;
		max-width: 100dvw !important;

		margin-left: calc(50% - 50dvw) !important;
		margin-right: calc(50% - 50dvw) !important;
	}
}



[id^="asd-"] :where(*) {
	min-width: 0;
}


[id^="asd-"] :where(
	img,
	svg,
	video,
	iframe,
	canvas,
	table
) {
	max-width: 100%;
}

header[id^="asd-"],
#asd-hdr {

	width: 100% !important;
	max-width: 100% !important;

	margin-left: 0 !important;
	margin-right: 0 !important;

	overflow: visible !important;

	box-sizing: border-box;
}

.rawcanvas-main-header {

	max-width: none !important;
	width: auto !important;

	padding-left: 0 !important;
	padding-right: 0 !important;

	overflow: visible !important;
}


footer[id^="asd-"],
#asd-ftr {

	width: 100vw !important;
	max-width: 100vw !important;

	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;

	overflow-x: clip;

	box-sizing: border-box;
}


/* Modern viewport-width version */

@supports (width: 100dvw) {

	footer[id^="asd-"],
	#asd-ftr {

		width: 100dvw !important;
		max-width: 100dvw !important;

		margin-left: calc(50% - 50dvw) !important;
		margin-right: calc(50% - 50dvw) !important;
	}
}

.rawcanvas-main-footer,
.rawcanvas-footer-section {

	max-width: none !important;

	width: auto !important;

	padding-left: 0 !important;
	padding-right: 0 !important;

	overflow: visible !important;
}

.rc-bleed-parent {

	max-width: none !important;

	width: auto !important;

	padding-left: 0 !important;
	padding-right: 0 !important;

	overflow: visible !important;
}


#asd-hdr :where(*),
#asd-ftr :where(*) {

	min-width: 0;
}


#asd-hdr :where(
	img,
	svg,
	video,
	iframe,
	canvas,
	table
),
#asd-ftr :where(
	img,
	svg,
	video,
	iframe,
	canvas,
	table
) {

	max-width: 100%;
}


[id^="asd-"] img,
[id^="asd-"] svg,
[id^="asd-"] video,
[id^="asd-"] iframe,
[id^="asd-"] canvas {

	max-width: 100%;
}

[id^="asd-"] table {

	max-width: 100%;
}


[id^="asd-"] :where(
	p,
	a,
	span,
	td,
	th
) {

	overflow-wrap: break-word;
}

html,
body {

	overscroll-behavior-x: none;
}


/* ============================================================
 * MOBILE & TABLET OPTIMISATION
 * Moved from functions.php to style.css
 * ============================================================ */

@media (max-width: 1024px) {

	[id^="asd-"] {
		padding-top: 60px !important;
		padding-bottom: 60px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	[id^="asd-"] [class$="-wr"],
	[id^="asd-"] [class*="-wr "],
	[id^="asd-"] .fz-bi {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	#asd-hdr {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	[id^="asd-"] [class$="-stk"],
	[id^="asd-"] [class$="-rw"],
	[id^="asd-"] [class$="-ch"],
	[id^="asd-"] [class$="-gr"],
	[id^="asd-"] [class$="-wl"],
	[id^="asd-"] [class$="-arc"],
	[id^="asd-"] [class$="-fn"],
	[id^="asd-"] [class$="-wv"],
	[id^="asd-"] [class$="-pt"],
	[id^="asd-"] [class$="-sp"],
	[id^="asd-"] [class$="-rp"],
	[id^="asd-"] [class$="-cir"],
	[id^="asd-"] [class$="-desk"],
	[id^="asd-"] [class$="-tw"],
	[id^="asd-"] [class$="-orbit"],
	[id^="asd-"] [class$="-fan"],
	[id^="asd-"] [class$="-acc"],
	[id^="asd-"] [class$="-rb"],
	[id^="asd-"] [class$="-ms2"],
	[id^="asd-"] [class$="-fk"],
	[id^="asd-"] [class$="-stk2"] {
		transform: none !important;
	}

	[id^="asd-"] [class*="-ly"],
	[id^="asd-"] [class*="-sg"],
	[id^="asd-"] [class*="-cd"],
	[id^="asd-"] [class*="-gp"],
	[id^="asd-"] [class*="-nd"],
	[id^="asd-"] [class*="-slab"],
	[id^="asd-"] [class*="-tile"],
	[id^="asd-"] [class*="-dl"],
	[id^="asd-"] [class*="-layer"],
	[id^="asd-"] [class*="-step"],
	[id^="asd-"] [class*="-sl2"] {
		transform: none !important;
		width: 100% !important;
	}

	[id^="asd-"] [class$="-st"] {
		min-height: 0 !important;
		padding: 20px 0 !important;
	}

}


@media (max-width: 640px) {

	[id^="asd-"] {
		padding-top: 60px !important;
		padding-bottom: 60px !important;
	}

	[id^="asd-"] [class$="-wr"],
	[id^="asd-"] [class*="-wr "],
	[id^="asd-"] .fz-bi {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	[id^="asd-"] [class$="-st"] {
		padding: 12px 0 !important;
	}

}

/* ============================================================
 * MOBILE & TABLET — HERO MASCOT + SECTION POLISH
 * Moved from functions.php to style.css
 * ============================================================ */

@media (max-width: 1024px) {

	[id^="asd-"] {
		padding-top: 60px !important;
		padding-bottom: 60px !important;
	}


	[id^="asd-"] [class$="-wr"],
	[id^="asd-"] [class*="-wr "],
	[id^="asd-"] .fz-bi {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}


	[id^="asd-"] [class$="-st"] {
		min-height: 0 !important;
		height: auto !important;
		padding: 24px 0 32px !important;
		overflow: visible !important;
	}


	[id^="asd-"] [class$="-sc"] {
		overflow: visible !important;
		min-height: 0 !important;
	}


	/* --------------------------------------------------------
	 * Hero navigation / mascot sizing
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-nv"] {
		font-size: 1.5px !important;
		margin: 0 auto !important;
		overflow: visible !important;
		flex: none !important;
	}


	[id^="asd-"] [class$="-dais"],
	[id^="asd-"] [class$="-d1"],
	[id^="asd-"] [class$="-d2"] {
		transform: rotateX(77deg) scale(.62) !important;
	}


	[id^="asd-"] [class$="-rg"],
	[id^="asd-"] [class*="-rg1"],
	[id^="asd-"] [class*="-rg2"],
	[id^="asd-"] [class*="-rg3"] {
		transform: scale(.55) !important;
	}


	[id^="asd-"] [class$="-cone"] {
		opacity: .5 !important;
	}


	[id^="asd-"] [class$="-bk"] {
		display: none !important;
	}


	/* --------------------------------------------------------
	 * Mobile/tablet grids
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-gd"] {
		grid-template-columns: 1fr !important;
		gap: 30px !important;
	}


	/* --------------------------------------------------------
	 * Typography
	 * -------------------------------------------------------- */

	[id^="asd-"] h1,
	[id^="asd-"] h2 {
		font-size: clamp(
			1.65rem,
			4.6vw,
			2.2rem
		) !important;

		line-height: 1.15 !important;
	}


	[id^="asd-"] [class$="-p"],
	[id^="asd-"] [class$="-lead"] {
		font-size: 15.5px !important;
		line-height: 1.7 !important;
	}


	/* --------------------------------------------------------
	 * Buttons
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-bt"],
	[id^="asd-"] [class$="-btns"] {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 11px !important;
		width: 100%;
	}


	[id^="asd-"] [class*="-b1"],
	[id^="asd-"] [class*="-b2"] {
		width: 100% !important;
	}


	/* --------------------------------------------------------
	 * Mobile/tablet strips / rails / gauges
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-strip"],
	[id^="asd-"] [class$="-rail"],
	[id^="asd-"] [class$="-ot"],
	[id^="asd-"] [class$="-gauges"] {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}


	/* --------------------------------------------------------
	 * Center / arrow
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-mid"] {
		transform: none !important;
		padding: 6px 0 !important;
	}


	[id^="asd-"] [class$="-ar"] {
		transform: rotate(90deg) !important;
	}


	/* --------------------------------------------------------
	 * Heading spacing
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-hd"] {
		margin-bottom: 34px !important;
	}

}


/* ============================================================
 * MOBILE — MAX 640PX
 * ============================================================ */

@media (max-width: 640px) {

	[id^="asd-"] [class$="-wr"],
	[id^="asd-"] [class*="-wr "],
	[id^="asd-"] .fz-bi {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}


	[id^="asd-"] [class$="-nv"] {
		font-size: 1.2px !important;
	}


	[id^="asd-"] [class$="-st"] {
		padding: 16px 0 24px !important;
	}


	/* Hero mascot */

	[id^="asd-"] [class$="-dais"],
	[id^="asd-"] [class$="-d1"],
	[id^="asd-"] [class$="-d2"] {
		transform: rotateX(77deg) scale(.5) !important;
	}


	[id^="asd-"] [class$="-rg"] {
		transform: scale(.44) !important;
	}


	/* Typography */

	[id^="asd-"] h1,
	[id^="asd-"] h2 {
		font-size: clamp(
			1.5rem,
			6.4vw,
			1.95rem
		) !important;
	}


	[id^="asd-"] [class$="-p"] {
		font-size: 15px !important;
	}


	/* --------------------------------------------------------
	 * Single-column layouts
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-sg"],
	[id^="asd-"] [class$="-gr"],
	[id^="asd-"] [class$="-cn"],
	[id^="asd-"] [class$="-lbls"] {
		grid-template-columns: 1fr !important;
	}


	/* --------------------------------------------------------
	 * Cards / slabs / tiles / groups
	 * -------------------------------------------------------- */

	[id^="asd-"] [class*="-ly"],
	[id^="asd-"] [class*="-sg"],
	[id^="asd-"] [class*="-cd"],
	[id^="asd-"] [class*="-slab"],
	[id^="asd-"] [class*="-tile"],
	[id^="asd-"] [class*="-gp"] {
		padding: 20px 16px !important;
	}


	/* --------------------------------------------------------
	 * Eyebrow */

	[id^="asd-"] [class$="-eb"] {
		font-size: 10px !important;
		letter-spacing: .16em !important;
	}


	/* Callout */

	[id^="asd-"] [class$="-cl"] {
		padding: 22px 18px !important;
	}

}


/* ============================================================
 * MOBILE & TABLET — 3D KILL SWITCH + LAYOUT REPAIR
 *
 * Moved from functions.php to style.css
 *
 * Hero stages are excluded so mascots animate on every device.
 * ============================================================ */

@media (max-width: 1024px) {

	/* --------------------------------------------------------
	 * 1. 3D TRANSFORM KILL SWITCH
	 *
	 * Preserve animation/3D elements by excluding:
	 *
	 * .ams
	 * SVG elements
	 * a1-, e1-, o1-, w1-, d1-, ax-, c1- classes
	 * -------------------------------------------------------- */

	[id^="asd-"] *:not(.ams):not(svg):not(svg *):not([class*="a1-"]):not([class*="e1-"]):not([class*="o1-"]):not([class*="w1-"]):not([class*="d1-"]):not([class*="ax-"]):not([class*="c1-"]) {
		transform: none !important;
	}


	/* --------------------------------------------------------
	 * 2. 3D PERSPECTIVE RESET
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-stk"],
	[id^="asd-"] [class$="-rw"],
	[id^="asd-"] [class$="-gr"] {
		perspective: none !important;
		transform-style: flat !important;
	}


	/* --------------------------------------------------------
	 * 3. MOBILE ARROWS
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-ar"],
	[id^="asd-"] [class$="-arrow"] {
		transform: rotate(90deg) !important;
	}


	/* --------------------------------------------------------
	 * 4. PRESERVE MASCOT ANIMATION
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-ic"] .ams,
	[id^="asd-"] [class$="-si"] .ams {
		transform: none !important;
	}


	/* --------------------------------------------------------
	 * 5. STAGE / SCENE REPAIR
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-st"],
	[id^="asd-"] [class$="-stage"],
	[id^="asd-"] [class$="-sc"],
	[id^="asd-"] [class$="-scene"] {
		min-height: 0 !important;
		height: auto !important;
		padding: 16px 0 !important;
		overflow: visible !important;
	}


	/* --------------------------------------------------------
	 * 6. MOBILE/TABLET GRID REPAIR
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-rw"],
	[id^="asd-"] [class$="-row"],
	[id^="asd-"] [class$="-stk"],
	[id^="asd-"] [class$="-ch"],
	[id^="asd-"] [class$="-gr"],
	[id^="asd-"] [class$="-gd"],
	[id^="asd-"] [class$="-fan"],
	[id^="asd-"] [class$="-fn"],
	[id^="asd-"] [class$="-wv"],
	[id^="asd-"] [class$="-pt"],
	[id^="asd-"] [class$="-sp"],
	[id^="asd-"] [class$="-rp"],
	[id^="asd-"] [class$="-cir"],
	[id^="asd-"] [class$="-arc"],
	[id^="asd-"] [class$="-wl"],
	[id^="asd-"] [class$="-desk"],
	[id^="asd-"] [class$="-tw"],
	[id^="asd-"] [class$="-rail"],
	[id^="asd-"] [class$="-ot"],
	[id^="asd-"] [class$="-strip"],
	[id^="asd-"] [class$="-sg"],
	[id^="asd-"] [class$="-cn"],
	[id^="asd-"] [class$="-gauges"],
	[id^="asd-"] [class$="-lbls"],
	[id^="asd-"] [class$="-prog"],
	[id^="asd-"] [class$="-ms2"],
	[id^="asd-"] [class$="-fk"],
	[id^="asd-"] [class$="-acc"],
	[id^="asd-"] [class$="-rb"],
	[id^="asd-"] [class$="-orbit"],
	[id^="asd-"] [class$="-cluster"],
	[id^="asd-"] [class$="-deck"],
	[id^="asd-"] [class$="-list"],
	[id^="asd-"] [class$="-steps"],
	[id^="asd-"] [class$="-panels"],
	[id^="asd-"] [class$="-nodes"] {

		display: grid !important;

		grid-template-columns: 1fr !important;

		gap: 14px !important;

		align-items: stretch !important;

		min-height: 0 !important;
	}


	/* --------------------------------------------------------
	 * 7. LAYOUT / CARD REPAIR
	 * -------------------------------------------------------- */

	[id^="asd-"] [class*="-ly"],
	[id^="asd-"] [class*="-sg"],
	[id^="asd-"] [class*="-cd"],
	[id^="asd-"] [class*="-gp"],
	[id^="asd-"] [class*="-nd"],
	[id^="asd-"] [class*="-slab"],
	[id^="asd-"] [class*="-tile"],
	[id^="asd-"] [class*="-dl"],
	[id^="asd-"] [class*="-pl"],
	[id^="asd-"] [class*="-pn"],
	[id^="asd-"] [class*="-sl"],
	[id^="asd-"] [class*="-oc"],
	[id^="asd-"] [class*="-cell"],
	[id^="asd-"] [class*="-br"],
	[id^="asd-"] [class*="-pg"],
	[id^="asd-"] [class*="-kp"],
	[id^="asd-"] [class*="-cl2"] {

		width: 100% !important;

		max-width: 100% !important;

		margin-top: 0 !important;

		margin-bottom: 0 !important;

		top: auto !important;

		bottom: auto !important;

		left: auto !important;

		right: auto !important;
	}


	/* --------------------------------------------------------
	 * 8. HIDE DECORATIVE 3D ELEMENTS
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-pan"],
	[id^="asd-"] [class$="-chip"],
	[id^="asd-"] [class$="-bubble"],
	[id^="asd-"] [class$="-sd"],
	[id^="asd-"] [class$="-stack"],
	[id^="asd-"] [class$="-shard"] {
		display: none !important;
	}


	/* --------------------------------------------------------
	 * 9. REMOVE DECORATIVE PSEUDO-ELEMENTS
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-sg"]::before,
	[id^="asd-"] [class$="-nd"]::before,
	[id^="asd-"] [class$="-slot"]::before {
		content: none !important;
	}


	/* --------------------------------------------------------
	 * 10. SECTION SPACING
	 * -------------------------------------------------------- */

	[id^="asd-"] {
		padding-top: 60px !important;
		padding-bottom: 60px !important;
	}


	[id^="asd-"] [class$="-wr"],
	[id^="asd-"] [class*="-wr "],
	[id^="asd-"] .fz-bi {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}


	/* --------------------------------------------------------
	 * 11. CONTENT BLOCK SPACING
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-cl"],
	[id^="asd-"] [class$="-nt"],
	[id^="asd-"] [class$="-seal"],
	[id^="asd-"] [class$="-loop"],
	[id^="asd-"] [class$="-cv"],
	[id^="asd-"] [class$="-oh"] {

		margin-top: 26px !important;

		width: 100% !important;
	}


	/* --------------------------------------------------------
	 * 12. NAVIGATION / MASCOT
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-nv"] {

		font-size: 1.45px !important;

		margin: 0 auto !important;
	}


	[id^="asd-"] [class$="-halo"],
	[id^="asd-"] [class$="-ring"] {
		display: none !important;
	}


	/* --------------------------------------------------------
	 * 13. BUTTONS
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-bt"],
	[id^="asd-"] [class$="-btns"] {

		flex-direction: column !important;

		align-items: stretch !important;

		gap: 11px !important;
	}


	[id^="asd-"] [class*="-b1"],
	[id^="asd-"] [class*="-b2"] {

		width: 100% !important;
	}


	/* --------------------------------------------------------
	 * 14. MOBILE/TABLET TYPOGRAPHY
	 * -------------------------------------------------------- */

	[id^="asd-"] h1,
	[id^="asd-"] h2 {

		font-size: clamp(
			1.6rem,
			5vw,
			2.1rem
		) !important;

		line-height: 1.16 !important;
	}


	[id^="asd-"] [class$="-p"] {
		font-size: 15.5px !important;
	}

}


/* ============================================================
 * MOBILE — MAX 640PX
 * ============================================================ */

@media (max-width: 640px) {


	/* --------------------------------------------------------
	 * Navigation / mascot
	 * -------------------------------------------------------- */

	[id^="asd-"] [class$="-nv"] {
		font-size: 1.15px !important;
	}


	/* --------------------------------------------------------
	 * Typography
	 * -------------------------------------------------------- */

	[id^="asd-"] h1,
	[id^="asd-"] h2 {

		font-size: clamp(
			1.45rem,
			6.6vw,
			1.9rem
		) !important;
	}


	/* --------------------------------------------------------
	 * Cards
	 * -------------------------------------------------------- */

	[id^="asd-"] [class*="-ly"],
	[id^="asd-"] [class*="-cd"],
	[id^="asd-"] [class*="-slab"],
	[id^="asd-"] [class*="-tile"] {

		padding: 20px 16px !important;
	}

}

/* ============================================================
 * ADJACENT LIGHT SECTIONS — COLLAPSE THE DOUBLE GAP
 *
 * CSS-only replacement for the PHP-generated selector list.
 *
 * Light sections:
 * d2, d4, o2, o4, w2, w4, e2, e3, e5, a2, a4, a7, a9,
 * c2, c4, a2x, a4x, cb, cd, g3, g5, v4, k4, s2, s4,
 * y4, z4, m2, m3, m5, m7, m8, x2, x3, x5, x7, x8, x9,
 * f3, f5, hm2, hm3, hm5, hm7, hm8, ftr
 * ============================================================ */


/* ============================================================
 * DESKTOP
 *
 * If a light section is immediately followed by another light
 * section:
 *
 *     previous section
 *     └── padding-bottom: 24px
 *
 *     next section
 *     └── padding-top: 0
 *
 * This removes the double vertical gap.
 * ============================================================ */

[id^="asd-"]:has(
	+ #asd-d2,
	+ #asd-d4,
	+ #asd-o2,
	+ #asd-o4,
	+ #asd-w2,
	+ #asd-w4,
	+ #asd-e2,
	+ #asd-e3,
	+ #asd-e5,
	+ #asd-a2,
	+ #asd-a4,
	+ #asd-a7,
	+ #asd-a9,
	+ #asd-c2,
	+ #asd-c4,
	+ #asd-a2x,
	+ #asd-a4x,
	+ #asd-cb,
	+ #asd-cd,
	+ #asd-g3,
	+ #asd-g5,
	+ #asd-v4,
	+ #asd-k4,
	+ #asd-s2,
	+ #asd-s4,
	+ #asd-y4,
	+ #asd-z4,
	+ #asd-m2,
	+ #asd-m3,
	+ #asd-m5,
	+ #asd-m7,
	+ #asd-m8,
	+ #asd-x2,
	+ #asd-x3,
	+ #asd-x5,
	+ #asd-x7,
	+ #asd-x8,
	+ #asd-x9,
	+ #asd-f3,
	+ #asd-f5,
	+ #asd-hm2,
	+ #asd-hm3,
	+ #asd-hm5,
	+ #asd-hm7,
	+ #asd-hm8,
	+ #asd-ftr
) {
	padding-bottom: 24px !important;
}


/* ============================================================
 * The next light section gets NO top padding.
 * ============================================================ */

:is(
	#asd-d2,
	#asd-d4,
	#asd-o2,
	#asd-o4,
	#asd-w2,
	#asd-w4,
	#asd-e2,
	#asd-e3,
	#asd-e5,
	#asd-a2,
	#asd-a4,
	#asd-a7,
	#asd-a9,
	#asd-c2,
	#asd-c4,
	#asd-a2x,
	#asd-a4x,
	#asd-cb,
	#asd-cd,
	#asd-g3,
	#asd-g5,
	#asd-v4,
	#asd-k4,
	#asd-s2,
	#asd-s4,
	#asd-y4,
	#asd-z4,
	#asd-m2,
	#asd-m3,
	#asd-m5,
	#asd-m7,
	#asd-m8,
	#asd-x2,
	#asd-x3,
	#asd-x5,
	#asd-x7,
	#asd-x8,
	#asd-x9,
	#asd-f3,
	#asd-f5,
	#asd-hm2,
	#asd-hm3,
	#asd-hm5,
	#asd-hm7,
	#asd-hm8,
	#asd-ftr
) {
	padding-top: 0 !important;
}


/* ============================================================
 * TABLET + MOBILE
 * ============================================================ */

@media (max-width: 1024px) {


	/* Next light section */

	:is(
		#asd-d2,
		#asd-d4,
		#asd-o2,
		#asd-o4,
		#asd-w2,
		#asd-w4,
		#asd-e2,
		#asd-e3,
		#asd-e5,
		#asd-a2,
		#asd-a4,
		#asd-a7,
		#asd-a9,
		#asd-c2,
		#asd-c4,
		#asd-a2x,
		#asd-a4x,
		#asd-cb,
		#asd-cd,
		#asd-g3,
		#asd-g5,
		#asd-v4,
		#asd-k4,
		#asd-s2,
		#asd-s4,
		#asd-y4,
		#asd-z4,
		#asd-m2,
		#asd-m3,
		#asd-m5,
		#asd-m7,
		#asd-m8,
		#asd-x2,
		#asd-x3,
		#asd-x5,
		#asd-x7,
		#asd-x8,
		#asd-x9,
		#asd-f3,
		#asd-f5,
		#asd-hm2,
		#asd-hm3,
		#asd-hm5,
		#asd-hm7,
		#asd-hm8,
		#asd-ftr
	) {
		padding-top: 0 !important;
	}


	/* Previous light section */

	[id^="asd-"]:has(
		+ #asd-d2,
		+ #asd-d4,
		+ #asd-o2,
		+ #asd-o4,
		+ #asd-w2,
		+ #asd-w4,
		+ #asd-e2,
		+ #asd-e3,
		+ #asd-e5,
		+ #asd-a2,
		+ #asd-a4,
		+ #asd-a7,
		+ #asd-a9,
		+ #asd-c2,
		+ #asd-c4,
		+ #asd-a2x,
		+ #asd-a4x,
		+ #asd-cb,
		+ #asd-cd,
		+ #asd-g3,
		+ #asd-g5,
		+ #asd-v4,
		+ #asd-k4,
		+ #asd-s2,
		+ #asd-s4,
		+ #asd-y4,
		+ #asd-z4,
		+ #asd-m2,
		+ #asd-m3,
		+ #asd-m5,
		+ #asd-m7,
		+ #asd-m8,
		+ #asd-x2,
		+ #asd-x3,
		+ #asd-x5,
		+ #asd-x7,
		+ #asd-x8,
		+ #asd-x9,
		+ #asd-f3,
		+ #asd-f5,
		+ #asd-hm2,
		+ #asd-hm3,
		+ #asd-hm5,
		+ #asd-hm7,
		+ #asd-hm8,
		+ #asd-ftr
	) {
		padding-bottom: 20px !important;
	}

}

/* ============================================================
 * CLOSING PANELS + SECTION JOINS — MOBILE REPAIR
 *
 * Moved from functions.php
 * Original hook priority: 101
 * ============================================================ */

@media (max-width: 1024px) {

	[id^="asd-"] [class$="-cl"],
	[id^="asd-"] [class$="-nt"],
	[id^="asd-"] [class$="-loop"],
	[id^="asd-"] [class$="-cv"],
	[id^="asd-"] [class$="-seal"],
	[id^="asd-"] [class$="-qt"],
	[id^="asd-"] [class$="-brand"],
	[id^="asd-"] [class$="-out"] {

		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;

		margin-top: 22px !important;
		margin-bottom: 0 !important;

		padding: 22px 20px !important;

		display: flex !important;
		flex-direction: column !important;

		align-items: center !important;
		justify-content: center !important;

		gap: 10px !important;
	}


	[id^="asd-"] [class$="-cl"] > *,
	[id^="asd-"] [class$="-nt"] > * {
		margin: 0 !important;
	}


	[id^="asd-"] [class$="-ct"],
	[id^="asd-"] [class$="-ntt"] {
		margin: 0 !important;
	}


	[id^="asd-"] [class$="-st"] {

		padding: 0 !important;
		margin: 0 !important;

		min-height: 0 !important;
		height: auto !important;
	}


	[id^="asd-"] [class$="-hd"] {
		margin-bottom: 26px !important;
	}


	[id^="asd-"] [class$="-wr"] > *:last-child {
		margin-bottom: 0 !important;
	}


	[id^="asd-"] {
		padding-top: 52px !important;
		padding-bottom: 52px !important;
	}

}


@media (max-width: 640px) {

	[id^="asd-"] {
		padding-top: 44px !important;
		padding-bottom: 44px !important;
	}


	[id^="asd-"] [class$="-cl"],
	[id^="asd-"] [class$="-nt"] {

		padding: 20px 16px !important;

		margin-top: 18px !important;
	}

}


/* ============================================================
 * BREADCRUMB — FORCE HORIZONTAL
 *
 * Moved from functions.php
 * Original hook priority: 102
 * ============================================================ */

[id^="asd-"] [class$="-cr"],
[id^="asd-"] [class$="-crumb"],
[id^="asd-"] nav[aria-label="Breadcrumb"] {
	display: block !important;
}


[id^="asd-"] [class$="-cr"] ol,
[id^="asd-"] [class$="-crumb"] ol,
[id^="asd-"] nav[aria-label="Breadcrumb"] ol {

	display: flex !important;

	flex-direction: row !important;

	flex-wrap: wrap !important;

	align-items: center !important;

	gap: 8px !important;

	margin: 0 !important;
	padding: 0 !important;

	list-style: none !important;
}


[id^="asd-"] [class$="-cr"] li,
[id^="asd-"] [class$="-crumb"] li,
[id^="asd-"] nav[aria-label="Breadcrumb"] li {

	display: inline-flex !important;

	align-items: center !important;

	margin: 0 !important;
	padding: 0 !important;

	list-style: none !important;

	white-space: nowrap;
}


[id^="asd-"] [class$="-cr"] li::marker,
[id^="asd-"] nav[aria-label="Breadcrumb"] li::marker {
	content: "" !important;
}


[id^="asd-"] [class$="-cr"] li::before,
[id^="asd-"] nav[aria-label="Breadcrumb"] li::before {
	content: none !important;
}


[id^="asd-"] [class$="-cr"] a,
[id^="asd-"] nav[aria-label="Breadcrumb"] a {

	display: inline !important;

	white-space: nowrap;
}


/* ------------------------------------------------------------
 * Small mobile breadcrumb
 * ------------------------------------------------------------ */

@media (max-width: 520px) {

	[id^="asd-"] [class$="-cr"] li:last-child,
	[id^="asd-"] nav[aria-label="Breadcrumb"] li:last-child {
		white-space: normal;
	}


	[id^="asd-"] [class$="-cr"] ol,
	[id^="asd-"] nav[aria-label="Breadcrumb"] ol {

		gap: 6px !important;

		font-size: 12px !important;
	}

}

/* ============================================================
 * DESKTOP SECTION PADDING
 *
 * Applies to every Raw Canvas asd- section above 1024px.
 *
 * Actual original values:
 *     60px top
 *     60px bottom
 *
 * Header keeps its own spacing.
 * Mobile/tablet rules are unaffected.
 *
 * Original PHP hook priority: 125
 * ============================================================ */

@media (min-width: 1025px) {

	[id^="asd-"] {
		padding-top: 60px !important;
		padding-bottom: 60px !important;
	}

	#asd-hdr {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

}

/* ============================================================
 * RAW CANVAS — HERO MASCOT PROTECTION
 * Moved from functions.php.
 * ============================================================ */

#asd-a1 [class$="-st"] *,
#asd-a1 [class$="-st"] *:hover,
#asd-a1:hover [class$="-st"] *,
#asd-a1 [class$="-st"]:hover *,
#asd-e1 [class$="-st"] *,
#asd-e1 [class$="-st"] *:hover,
#asd-e1:hover [class$="-st"] *,
#asd-e1 [class$="-st"]:hover *,
#asd-o1 [class$="-st"] *,
#asd-o1 [class$="-st"] *:hover,
#asd-o1:hover [class$="-st"] *,
#asd-o1 [class$="-st"]:hover *,
#asd-w1 [class$="-st"] *,
#asd-w1 [class$="-st"] *:hover,
#asd-w1:hover [class$="-st"] *,
#asd-w1 [class$="-st"]:hover *,
#asd-d1 [class$="-st"] *,
#asd-d1 [class$="-st"] *:hover,
#asd-d1:hover [class$="-st"] *,
#asd-d1 [class$="-st"]:hover *,
#asd-a1x [class$="-st"] *,
#asd-a1x [class$="-st"] *:hover,
#asd-a1x:hover [class$="-st"] *,
#asd-a1x [class$="-st"]:hover *,
#asd-c1 [class$="-st"] *,
#asd-c1 [class$="-st"] *:hover,
#asd-c1:hover [class$="-st"] *,
#asd-c1 [class$="-st"]:hover * {
	animation-play-state: running !important;
	transition: none !important;
}


/* ============================================================
 * RAW CANVAS — CARD HOVER
 * Moved from functions.php.
 * ============================================================ */

@media (hover: hover) and (pointer: fine) and (min-width: 1025px) {

	[id^="asd-"] :is(
		[class*="-cd"],
		[class*="-gp"],
		[class*="-ly"],
		[class*="-tile"],
		[class*="-pg"],
		[class*="-nd"],
		[class*="-slab"],
		[class*="-pn"],
		[class*="-kp"],
		[class*="-cell"],
		[class*="-dl"],
		[class*="-oc"],
		[class*="-pl"],
		[class*="-slot"],
		[class*="-br"],
		[class*="-sb"],
		[class*="-sg"]
	):not([class*="a1-"]):not([class*="e1-"]):not([class*="o1-"])
	:not([class*="w1-"]):not([class*="d1-"]):not([class*="ax-"])
	:not([class*="c1-"]):hover {
		transform: var(--rest-tf, none) !important;
		box-shadow: 0 1px 0 #E2E8F2, 0 2px 0 #DBE2EE, 0 3px 0 #D4DCE9, 0 4px 0 #CDD6E5, 0 5px 0 #C6D0E1, 0 6px 0 #BFCADD, 0 38px 58px -18px rgba(0,114,255,.45) !important;
		transition: box-shadow .45s cubic-bezier(.16,1,.3,1), border-color .35s ease !important;
	}

	[id^="asd-"] :is(
		[class*="-cd"], [class*="-gp"], [class*="-ly"], [class*="-tile"],
		[class*="-pg"], [class*="-nd"], [class*="-slab"], [class*="-pn"],
		[class*="-kp"], [class*="-cell"], [class*="-dl"], [class*="-oc"],
		[class*="-pl"], [class*="-slot"], [class*="-br"], [class*="-sb"], [class*="-sg"]
	):not([class*="a1-"]):not([class*="e1-"]):not([class*="o1-"])
	:not([class*="w1-"]):not([class*="d1-"]):not([class*="ax-"])
	:not([class*="c1-"]):hover :is(
		[class*="-ic"], [class*="-si"], [class*="-pi"],
		[class*="-ci"], [class*="-oi"], [class*="-well"]
	) {
		transform: translateY(-3px) !important;
		transition: transform .45s cubic-bezier(.16,1,.3,1), background .4s ease !important;
	}
}

[id^="asd-"] :is(a[class*="-b1"], a[class*="-b2"], a[class*="-btn"], .hx-lk, .hx-b, [class*="-all"], [class*="-ml"]):hover {
	transform: translateY(-3px) !important;
}

[id^="asd-"] [class*="-sl"]:hover {
	transform: translateX(4px) !important;
}

[id^="asd-"] a:hover > .ams {
	transform: translateX(4px) !important;
}


/* ============================================================
 * AI SCOPE — KUMAR CHATPAR AUTHOR PROFILE
 * Moved from functions.php.
 * ============================================================ */

.aiscope-kumar-author {
	position: relative;
	width: 100%;
	margin: 55px 0 35px;
	padding: 1px;
	border-radius: 12px;
	background: linear-gradient(135deg, rgba(32,108,224,.18), rgba(221,232,247,.75), rgba(32,108,224,.10));
	box-sizing: border-box;
	overflow: hidden;
	box-shadow: 0 8px 25px rgba(20,54,94,.07);
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.aiscope-kumar-author::after {
	content: "";
	position: absolute;
	width: 230px;
	height: 230px;
	right: -120px;
	top: -120px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(30,108,224,.08) 0%, rgba(30,108,224,0) 70%);
	pointer-events: none;
}

.aiscope-kumar-author-top {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	gap: 25px;
	padding: 27px 28px;
	background: #fff;
	border-radius: 11px;
	box-sizing: border-box;
}

.aiscope-kumar-author-photo {
	position: relative;
	flex: 0 0 145px;
	width: 145px;
	height: 145px;
}

.aiscope-kumar-author-photo img {
	position: relative;
	z-index: 2;
	display: block;
	width: 145px;
	height: 145px;
	object-fit: cover;
	border-radius: 50%;
	border: 3px solid #fff;
	background: #edf4fc;
	box-shadow: 0 7px 22px rgba(17,52,91,.15);
	transition: transform .3s ease, box-shadow .3s ease;
}

.aiscope-kumar-author-photo img:hover {
	transform: translateY(-3px);
	box-shadow: 0 11px 28px rgba(17,52,91,.20);
}

.aiscope-kumar-photo-ring {
	position: absolute;
	z-index: 1;
	inset: -6px;
	border-radius: 50%;
	border: 1px solid rgba(35,112,220,.18);
	box-shadow: 0 0 0 5px rgba(35,112,220,.035);
	animation: aiscopeKumarRing 5s ease-in-out infinite;
}

@keyframes aiscopeKumarRing {
	0%, 100% { transform: scale(.98); opacity: .65; }
	50% { transform: scale(1.025); opacity: 1; }
}

.aiscope-kumar-author-info {
	flex: 1;
	min-width: 0;
}

.aiscope-kumar-author-label {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 5px;
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 9px;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: .13em;
	text-transform: uppercase;
	color: #2a73d5;
}

.aiscope-kumar-author-label-dot {
	width: 6px;
	height: 6px;
	flex: 0 0 6px;
	border-radius: 50%;
	background: #2874d8;
	box-shadow: 0 0 0 4px rgba(40,116,216,.09);
}

.aiscope-kumar-author-info h2 {
	margin: 0 0 3px;
	padding: 0;
	font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 24px;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: -.02em;
	color: #102f58;
}

.aiscope-kumar-author-title {
	margin: 0 0 13px;
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 11px;
	line-height: 1.5;
	font-weight: 600;
	color: #2873d5;
}

.aiscope-kumar-author-info p {
	margin: 0 0 10px;
	padding: 0;
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 12px;
	line-height: 1.68;
	font-weight: 400;
	color: #536477;
}

.aiscope-kumar-author-info p:last-of-type { margin-bottom: 16px; }

.aiscope-kumar-author-info p strong {
	font-weight: 650;
	color: #243e60;
}

.aiscope-kumar-expertise {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.aiscope-kumar-expertise span {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	min-height: 25px;
	padding: 5px 8px;
	box-sizing: border-box;
	border: 1px solid #e1eaf5;
	border-radius: 6px;
	background: #f8fbff;
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 9px;
	line-height: 1.25;
	color: #66778a;
	transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background-color .22s ease;
}

.aiscope-kumar-expertise span:hover {
	transform: translateY(-2px);
	border-color: #cbdcf1;
	background: #fff;
	box-shadow: 0 4px 12px rgba(25,71,120,.08);
}

.aiscope-kumar-expertise span strong {
	font-weight: 700;
	color: #236bc6;
}

.aiscope-kumar-author-info::after {
	content: "";
	display: block;
	width: 32px;
	height: 2px;
	margin-top: 16px;
	border-radius: 2px;
	background: #2874d8;
	opacity: .8;
}

@media (max-width: 800px) {
	.aiscope-kumar-author-top { gap: 20px; padding: 23px; }
	.aiscope-kumar-author-photo { flex-basis: 115px; width: 115px; height: 115px; }
	.aiscope-kumar-author-photo img { width: 115px; height: 115px; }
	.aiscope-kumar-author-info h2 { font-size: 22px; }
	.aiscope-kumar-author-info p { font-size: 11.5px; line-height: 1.65; }
}

@media (max-width: 600px) {
	.aiscope-kumar-author { margin: 40px 0 28px; border-radius: 10px; }
	.aiscope-kumar-author-top { flex-direction: column; align-items: center; text-align: center; gap: 17px; padding: 25px 19px; border-radius: 9px; }
	.aiscope-kumar-author-photo { flex-basis: 115px; width: 115px; height: 115px; }
	.aiscope-kumar-author-photo img { width: 115px; height: 115px; }
	.aiscope-kumar-author-label { justify-content: center; }
	.aiscope-kumar-author-info h2 { font-size: 22px; }
	.aiscope-kumar-author-title { font-size: 10.5px; }
	.aiscope-kumar-author-info p { font-size: 11.5px; line-height: 1.7; }
	.aiscope-kumar-expertise { justify-content: center; }
	.aiscope-kumar-expertise span { font-size: 8.8px; }
	.aiscope-kumar-author-info::after { margin-left: auto; margin-right: auto; }
}

@media (prefers-reduced-motion: reduce) {
	.aiscope-kumar-photo-ring { animation: none; }
	.aiscope-kumar-author-photo img,
	.aiscope-kumar-expertise span { transition: none; }
}