/**
 * Frontend styles for Tax Xero Theme.
 *
 * @package Tax_Xero_Theme
 */

/* ===================================================================
   Tax Zero Design Tokens
   =================================================================== */

:root {
	/* Brand Colors */
	--brand-navy: #0B2669;
	--brand-blue: #4773C1;
	--brand-navy-medium: #1A3A7A;
	--brand-blue-light: #6B93D6;
	--brand-blue-pale: #E8F0FE;
	--brand-white: #F9F9F5;

	/* Semantic Colors - Light Mode */
	--background: #FFFFFF;
	--foreground: var(--brand-navy);
	--card: var(--brand-white);
	--card-foreground: var(--brand-navy);
	--popover: #FFFFFF;
	--popover-foreground: var(--brand-navy);
	--primary: var(--brand-blue);
	--primary-foreground: #FFFFFF;
	--secondary: var(--brand-white);
	--secondary-foreground: var(--brand-navy);
	--muted: var(--brand-blue-pale);
	--muted-foreground: var(--brand-navy-medium);
	--accent: var(--brand-navy-medium);
	--accent-foreground: #FFFFFF;
	--destructive: #DC2626;
	--destructive-foreground: #FFFFFF;
	--border: var(--brand-blue-pale);
	--input: var(--brand-blue-pale);
	--ring: var(--brand-blue);

	/* Spacing Scale (4px base) */
	--spacing-none: 0;
	--spacing-xs: 0.25rem;
	--spacing-sm: 0.5rem;
	--spacing-md: 1rem;
	--spacing-lg: 1.5rem;
	--spacing-xl: 2rem;
	--spacing-2xl: 3rem;
	--spacing-3xl: 4rem;
	--spacing-4xl: 6rem;

	/* Typography Scale */
	--text-xs: 0.75rem;
	--text-sm: 0.875rem;
	--text-base: 1rem;
	--text-lg: 1.125rem;
	--text-xl: 1.25rem;
	--text-2xl: 1.5rem;
	--text-3xl: 1.875rem;
	--text-4xl: 2.25rem;
	--text-5xl: 3rem;
	--text-6xl: 3.75rem;

	/* Font Families */
	--font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	--font-serif: 'Crimson Text', Georgia, serif;
	--font-mono: 'JetBrains Mono', 'Fira Code', monospace;

	/* Font Weights */
	--font-light: 300;
	--font-normal: 400;
	--font-medium: 500;
	--font-semibold: 600;
	--font-bold: 700;

	/* Line Heights */
	--leading-none: 1;
	--leading-tight: 1.25;
	--leading-snug: 1.375;
	--leading-normal: 1.5;
	--leading-relaxed: 1.625;
	--leading-loose: 2;

	/* Border Radius */
	--radius-sm: 0.25rem;
	--radius-md: 0.5rem;
	--radius-lg: 0.75rem;
	--radius-xl: 1rem;
	--radius-2xl: 1.5rem;
	--radius-full: 9999px;

	/* Shadows */
	--shadow-2xs: 0px 1px 2px 0px hsl(0 0% 0% / 0.09);
	--shadow-xs: 0px 1px 2px 0px hsl(0 0% 0% / 0.09);
	--shadow-sm: 0px 1px 2px 0px hsl(0 0% 0% / 0.18), 0px 1px 2px -1px hsl(0 0% 0% / 0.18);
	--shadow: 0px 1px 2px 0px hsl(0 0% 0% / 0.18), 0px 1px 2px -1px hsl(0 0% 0% / 0.18);
	--shadow-md: 0px 1px 2px 0px hsl(0 0% 0% / 0.18), 0px 2px 4px -1px hsl(0 0% 0% / 0.18);
	--shadow-lg: 0px 1px 2px 0px hsl(0 0% 0% / 0.18), 0px 4px 6px -1px hsl(0 0% 0% / 0.18);
	--shadow-xl: 0px 1px 2px 0px hsl(0 0% 0% / 0.18), 0px 8px 10px -1px hsl(0 0% 0% / 0.18);
	--shadow-2xl: 0px 1px 2px 0px hsl(0 0% 0% / 0.45);

	/* Focus Ring */
	--focus-ring-color: var(--brand-blue);
	--focus-ring-width: 2px;
	--focus-ring-offset: 2px;
	--focus-ring-style: solid;

	/* Animation */
	--duration-micro: 100ms;
	--duration-fast: 150ms;
	--duration-normal: 200ms;
	--duration-medium: 300ms;
	--duration-slow: 500ms;
	--ease-out: cubic-bezier(0.0, 0.0, 0.2, 1);
	--ease-in: cubic-bezier(0.4, 0.0, 1, 1);
	--ease-in-out: cubic-bezier(0.4, 0.0, 0.2, 1);
	--ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);

	/* Z-Index */
	--z-base: 0;
	--z-dropdown: 1000;
	--z-sticky: 1100;
	--z-fixed: 1200;
	--z-modal-backdrop: 1300;
	--z-modal: 1400;
	--z-popover: 1500;
	--z-tooltip: 1600;
}

/* Global box-sizing reset */
*, *::before, *::after {
	box-sizing: border-box;
}

/* Prevent horizontal scroll from 100vw alignfull blocks.
   Must NOT be on body/html — those propagate to the viewport and clip
   position:fixed elements. .wp-site-blocks is the FSE root wrapper. */
.wp-site-blocks {
	overflow-x: clip;
}

/* Focus-visible utility */
:focus-visible {
	outline: var(--focus-ring-width) var(--focus-ring-style) var(--focus-ring-color);
	outline-offset: var(--focus-ring-offset);
}

/* ===================================================================
   Header Navigation
   =================================================================== */

.site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: var(--background);
}

/* Hide text logo when an image logo is present */
.site-header .wp-block-site-logo + .site-header__logo-text {
	display: none;
}

/* Style the text logo fallback */
.site-header__logo-text a {
	font-size: 1.5rem;
	font-weight: 700;
	text-decoration: none;
	background: linear-gradient(90deg, #4773C1 0%, #0B2669 50%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.site-header .wp-block-navigation-item a {
	color: var(--brand-navy);
	font-size: 1rem;
	font-weight: 500;
	text-decoration: none;
	padding: var(--spacing-sm) var(--spacing-md);
	transition: color var(--duration-fast) var(--ease-out);
}

.site-header .wp-block-navigation-item a:hover {
	color: var(--brand-blue);
}

.site-header .wp-block-navigation__submenu-container {
	position: absolute;
	top: 100%;
	left: 0;
	background: white;
	border: 1px solid var(--border);
	border-radius: var(--radius-md);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	min-width: 200px;
	z-index: 1000;
	margin-top: var(--spacing-xs);
	padding: 0.5rem 0;
}

.site-header .wp-block-navigation__submenu-container .wp-block-navigation-item {
	padding: 0;
}

.site-header .wp-block-navigation__submenu-container .wp-block-navigation-item a {
	display: block;
	color: var(--brand-navy);
	font-size: var(--text-base);
	font-weight: 400;
	padding: var(--spacing-md);
	transition: background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);
}

.site-header .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover {
	background-color: var(--brand-blue-pale);
	color: var(--brand-blue);
}

/* -----------------------------------------------------------------------
   Mobile nav overlay: undo the absolute-dropdown styles so submenus
   behave as an accordion (hidden until "About" is tapped).
   WordPress's navigation JS toggles .is-open on the parent item.
   ----------------------------------------------------------------------- */

/* Reset the dropdown styling inside the overlay */
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	position: static !important;
	display: none;
	background: transparent;
	border: none;
	border-radius: 0;
	box-shadow: none;
	min-width: 0;
	margin: 0;
	padding: 0 0 0 var(--spacing-md);
}

/* Show only when the parent nav item has been toggled open */
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.is-open > .wp-block-navigation__submenu-container {
	display: flex;
	flex-direction: column;
}

/* Style submenu links inside the overlay */
.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a {
	padding: var(--spacing-sm) var(--spacing-md);
	font-size: 0.9375rem;
	color: var(--brand-navy);
	opacity: 0.8;
}

.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover {
	background: transparent;
	opacity: 1;
	color: var(--brand-blue);
}

.site-header .wp-block-button__link {
	background-color: var(--brand-blue) !important;
	color: white !important;
	font-weight: 600;
	padding: 8px 20px !important;
	font-size: 0.875rem !important;
	line-height: 1;
	border-radius: 50px !important;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);
}

.site-header .wp-block-button__link:hover {
	background-color: var(--brand-blue-light) !important;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(71, 115, 193, 0.3);
}

/* ===================================================================
   Custom Mobile Navigation
   =================================================================== */

/* Hamburger toggle — hidden on desktop, shown on mobile */
.custom-mobile-menu-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	cursor: pointer;
	color: var(--brand-navy);
	padding: 4px;
	flex-shrink: 0;
}

/* Full-screen overlay wrapper — hidden until .is-open */
.custom-mobile-nav {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 9999;
}

.custom-mobile-nav.is-open {
	display: block;
}

/* Darkened backdrop */
.custom-mobile-nav__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(11, 38, 105, 0.45);
}

/* Slide-in drawer from the right */
.custom-mobile-nav__drawer {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 300px;
	max-width: 85vw;
	background: var(--background);
	display: flex;
	flex-direction: column;
	padding: var(--spacing-xl);
	overflow-y: auto;
	box-shadow: -4px 0 24px rgba(0, 0, 0, 0.15);
}

/* Close button */
.custom-mobile-nav__close {
	display: flex;
	align-items: center;
	justify-content: center;
	align-self: flex-end;
	background: none;
	border: none;
	cursor: pointer;
	color: var(--brand-navy);
	padding: 4px;
	margin-bottom: var(--spacing-xl);
}

.custom-mobile-nav__close:hover {
	color: var(--brand-blue);
}

/* Nav link list */
.custom-mobile-nav__links {
	display: flex;
	flex-direction: column;
}

/* Shared link style — mirrors desktop nav */
.custom-mobile-nav__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: var(--spacing-md) 0;
	border: none;
	border-bottom: 1px solid var(--border);
	background: none;
	color: var(--brand-navy);
	font-family: inherit;
	font-size: 1rem;
	font-weight: 500;
	text-decoration: none;
	cursor: pointer;
	text-align: left;
	transition: color var(--duration-fast) var(--ease-out);
}

.custom-mobile-nav__link:hover {
	color: var(--brand-blue);
}

/* Chevron icon inside About toggle */
.custom-mobile-nav__chevron {
	flex-shrink: 0;
	transition: transform var(--duration-fast) var(--ease-out);
}

.custom-mobile-nav__submenu-toggle[aria-expanded="true"] .custom-mobile-nav__chevron {
	transform: rotate(180deg);
}

/* About submenu — hidden until toggled */
.custom-mobile-nav__submenu {
	display: none;
	flex-direction: column;
	padding-left: var(--spacing-md);
	border-bottom: 1px solid var(--border);
}

.custom-mobile-nav__submenu.is-open {
	display: flex;
}

.custom-mobile-nav__submenu-link {
	display: block;
	padding: var(--spacing-sm) 0;
	color: var(--brand-navy);
	font-size: 0.9375rem;
	font-weight: 400;
	text-decoration: none;
	opacity: 0.75;
	transition: opacity var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);
}

.custom-mobile-nav__submenu-link:hover {
	opacity: 1;
	color: var(--brand-blue);
}

/* Membership CTA button at the bottom of the drawer */
.custom-mobile-nav__membership-link {
	display: block;
	margin-top: var(--spacing-xl);
	padding: var(--spacing-sm) var(--spacing-lg);
	background: var(--brand-blue);
	color: #fff;
	border-radius: 50px;
	text-align: center;
	font-size: 0.9375rem;
	font-weight: 600;
	text-decoration: none;
	transition: background-color var(--duration-fast) var(--ease-out);
}

.custom-mobile-nav__membership-link:hover {
	background: var(--brand-navy);
	color: #fff;
}

/* On mobile: hide WP nav + membership button, show custom hamburger */
@media (max-width: 768px) {
	.site-header .wp-block-navigation,
	.site-header .wp-block-buttons {
		display: none !important;
	}

	/* Rendered inside the header flex row via render_block filter — no fixed needed */
	.custom-mobile-menu-toggle {
		display: flex;
	}
}

/* ===================================================================
   Blog Post (Single) Layout
   =================================================================== */

.tax-xero-blog-post {
	max-width: 800px;
	margin: 0 auto;
	padding: var(--spacing-2xl) var(--spacing-lg);
}

.tax-xero-blog-post__meta {
	display: flex;
	align-items: center;
	gap: var(--spacing-md);
	margin-bottom: var(--spacing-lg);
	font-size: var(--text-sm);
	color: var(--muted-foreground);
}

.tax-xero-blog-post__date {
	font-weight: var(--font-medium);
}

.tax-xero-blog-post__category a {
	background: hsl(var(--muted));
	color: hsl(var(--muted-foreground));
	padding: 2px var(--spacing-xs);
	border-radius: var(--radius-sm);
	font-size: var(--text-xs);
	text-decoration: none;
}

.tax-xero-blog-post__image {
	margin-bottom: var(--spacing-xl);
	border-radius: var(--radius-md);
	overflow: hidden;
}

.tax-xero-blog-post__image img {
	width: 100%;
	max-height: 500px;
	object-fit: contain;
	border-radius: var(--radius-md);
	background: var(--card);
	display: block;
}

.tax-xero-blog-post__title {
	font-size: 3rem;
	font-weight: var(--font-bold);
	line-height: 1.2;
	margin: 0 0 var(--spacing-lg) 0;
	color: var(--foreground);
}

.tax-xero-blog-post__tags {
	margin-bottom: var(--spacing-xl);
}

.tax-xero-blog-post__tags a {
	display: inline-block;
	padding: 4px var(--spacing-sm);
	background: hsl(var(--muted));
	color: hsl(var(--muted-foreground));
	border-radius: var(--radius-sm);
	font-size: var(--text-xs);
	margin-right: var(--spacing-sm);
	margin-bottom: var(--spacing-xs);
	text-decoration: none;
}

.tax-xero-blog-post__content {
	font-size: var(--text-lg);
	line-height: 1.7;
	color: var(--foreground);
}

.tax-xero-blog-post__content h2 {
	font-size: var(--text-2xl);
	font-weight: var(--font-semibold);
	margin: var(--spacing-2xl) 0 var(--spacing-lg) 0;
	color: var(--foreground);
}

.tax-xero-blog-post__content h3 {
	font-size: var(--text-xl);
	font-weight: var(--font-semibold);
	margin: var(--spacing-xl) 0 var(--spacing-md) 0;
	color: var(--foreground);
}

.tax-xero-blog-post__content p {
	margin: 0 0 var(--spacing-lg) 0;
}

.tax-xero-blog-post__content ul,
.tax-xero-blog-post__content ol {
	margin: 0 0 var(--spacing-lg) 0;
	padding-left: var(--spacing-xl);
}

.tax-xero-blog-post__content li {
	margin-bottom: var(--spacing-xs);
}

.tax-xero-blog-post__content blockquote {
	border-left: 4px solid var(--brand-navy);
	padding-left: var(--spacing-lg);
	margin: var(--spacing-xl) 0;
	font-style: italic;
	color: var(--muted-foreground);
}

.tax-xero-blog-post__content code {
	background: hsl(var(--muted));
	padding: 2px 6px;
	border-radius: var(--radius-sm);
	font-family: var(--font-mono);
	font-size: var(--text-sm);
}

.tax-xero-blog-post__content pre {
	background: hsl(var(--muted));
	padding: var(--spacing-lg);
	border-radius: var(--radius-md);
	overflow-x: auto;
	margin: var(--spacing-xl) 0;
}

.tax-xero-blog-post__content pre code {
	background: none;
	padding: 0;
}

@media (max-width: 768px) {
	.tax-xero-blog-post {
		padding: var(--spacing-xl) var(--spacing-md);
	}

	.tax-xero-blog-post__title {
		font-size: 2rem;
	}

	.tax-xero-blog-post__image img {
		max-height: 250px;
	}
}

/* ===================================================================
   WPForms — Theme Overrides
   =================================================================== */

.wpforms-container {
	max-width: 600px;
	margin: 0 auto var(--spacing-4xl);
}

.wpforms-form .wpforms-field label.wpforms-field-label {
	font-family: var(--font-sans);
	font-size: var(--text-sm);
	font-weight: var(--font-semibold);
	color: var(--brand-navy);
	margin-bottom: 0.375rem;
}

.wpforms-form .wpforms-field input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]),
.wpforms-form .wpforms-field textarea,
.wpforms-form .wpforms-field select {
	width: 100%;
	background: var(--background);
	border: 1.5px solid var(--brand-blue-light);
	border-radius: 8px;
	padding: 10px 14px;
	font-family: var(--font-sans);
	font-size: var(--text-base);
	color: var(--brand-navy);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-shadow: none;
}

.wpforms-form .wpforms-field input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):focus,
.wpforms-form .wpforms-field textarea:focus,
.wpforms-form .wpforms-field select:focus {
	outline: none;
	border-color: var(--brand-blue);
	box-shadow: 0 0 0 3px rgba(71, 115, 193, 0.15);
}

.wpforms-form .wpforms-field input::placeholder,
.wpforms-form .wpforms-field textarea::placeholder {
	color: var(--muted-foreground);
	opacity: 0.7;
}

.wpforms-form .wpforms-field-description {
	font-size: var(--text-xs);
	color: var(--muted-foreground);
	margin-top: 0.25rem;
}

.wpforms-form .wpforms-field.wpforms-has-error input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]),
.wpforms-form .wpforms-field.wpforms-has-error textarea,
.wpforms-form .wpforms-field.wpforms-has-error select {
	border-color: var(--destructive);
	box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}

.wpforms-form label.wpforms-error {
	font-size: var(--text-xs);
	color: var(--destructive);
	margin-top: 0.25rem;
}

.wpforms-form .wpforms-submit-container .wpforms-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 28px;
	background: var(--brand-blue);
	color: #ffffff;
	border: none;
	border-radius: var(--radius-full);
	font-family: var(--font-sans);
	font-size: var(--text-base);
	font-weight: var(--font-semibold);
	cursor: pointer;
	transition: all var(--duration-normal) var(--ease-out);
}

.wpforms-form .wpforms-submit-container .wpforms-submit:hover {
	background: var(--brand-navy-medium);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(71, 115, 193, 0.35);
}

.wpforms-form .wpforms-submit-container .wpforms-submit:active {
	transform: translateY(0);
}

/* ===================================================================
   Consolidated Block Styles (moved from individual block files)
   =================================================================== */

/* --- blog-archive --- */
.tax-xero-blog-archive{background:var(--background)}.tax-xero-blog-archive__hero{background:var(--brand-blue-pale);padding:var(--spacing-4xl) var(--spacing-md)}.tax-xero-blog-archive__hero-content{margin:0 auto;max-width:1400px;text-align:left}.tax-xero-blog-archive__hero-title{color:var(--brand-navy);font-size:clamp(2.5rem,5vw,4rem);font-weight:var(--font-bold);line-height:1.2;margin:0 0 var(--spacing-md) 0}.tax-xero-blog-archive__hero-subtitle{color:var(--brand-navy);font-size:var(--text-lg);margin:0}.tax-xero-blog-archive__container{margin:0 auto;max-width:1400px;padding:0 var(--spacing-md)}.tax-xero-blog-archive__filter{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-xl) 0}.tax-xero-blog-archive__filter-label{color:var(--brand-navy);font-size:var(--text-base);font-weight:var(--font-semibold)}.tax-xero-blog-archive__filter-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tax-xero-blog-archive__filter-btn{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--brand-navy);cursor:pointer;display:inline-block;font-size:var(--text-sm);font-weight:var(--font-medium);padding:var(--spacing-sm) var(--spacing-lg);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.tax-xero-blog-archive__filter-btn:hover{background:var(--brand-blue-pale);border-color:var(--brand-blue);color:var(--brand-blue)}.tax-xero-blog-archive__filter-btn--active{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}.tax-xero-blog-archive__posts{display:flex;flex-direction:column;gap:var(--spacing-3xl);padding:var(--spacing-xl) 0 var(--spacing-4xl)}.tax-xero-blog-archive__post{border-bottom:1px solid hsl(var(--border));padding-bottom:var(--spacing-2xl)}.tax-xero-blog-archive__post:last-of-type{border-bottom:none}.tax-xero-blog-archive__post-meta{align-items:center;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.tax-xero-blog-archive__post-date{color:var(--muted-foreground);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:uppercase}.tax-xero-blog-archive__post-category{color:var(--brand-blue);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.05em;text-transform:uppercase}.tax-xero-blog-archive__post-image{border-radius:var(--radius-md);margin-bottom:var(--spacing-md);overflow:hidden}.tax-xero-blog-archive__post-image img{background:var(--card);display:block;height:200px;-o-object-fit:contain;object-fit:contain;padding:var(--spacing-xs);width:100%}.tax-xero-blog-archive__post-title{font-size:var(--text-3xl);font-weight:var(--font-bold);line-height:1.3;margin:0 0 var(--spacing-md) 0}.tax-xero-blog-archive__post-title a{color:var(--brand-navy);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}.tax-xero-blog-archive__post-title a:hover{color:var(--brand-blue)}.tax-xero-blog-archive__post-excerpt{color:var(--brand-navy);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0 0 var(--spacing-md) 0}.tax-xero-blog-archive__post-tags{margin:var(--spacing-md) 0}.tax-xero-blog-archive__post-tag{background:hsl(var(--muted));border-radius:var(--radius-sm);color:hsl(var(--muted-foreground));display:inline-block;font-size:var(--text-xs);margin-bottom:var(--spacing-xs);margin-right:var(--spacing-xs);padding:2px var(--spacing-xs)}.tax-xero-blog-archive__post-link{color:var(--brand-navy);font-size:var(--text-sm);font-weight:var(--font-medium);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}.tax-xero-blog-archive__post-link:hover{color:var(--brand-blue)}.tax-xero-blog-archive__no-posts{color:var(--muted-foreground);padding:var(--spacing-4xl);text-align:center}.tax-xero-blog-archive__pagination{padding:var(--spacing-xl) 0 var(--spacing-4xl);text-align:center}.tax-xero-blog-archive__pagination .page-numbers{align-items:center;background:hsl(var(--background));border:1px solid hsl(var(--border));border-radius:var(--radius-md);color:hsl(var(--foreground));display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-medium);justify-content:center;margin:0 2px;min-width:40px;padding:var(--spacing-xs) var(--spacing-md);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.tax-xero-blog-archive__pagination .page-numbers:hover{background:hsl(var(--muted));border-color:var(--brand-blue)}.tax-xero-blog-archive__pagination .page-numbers.current{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}.tax-xero-blog-archive__pagination .page-numbers.dots{background:transparent;border:none;cursor:default}.tax-xero-blog-archive__placeholder{border:1px dashed hsl(var(--border));border-radius:var(--radius-md);color:var(--muted-foreground);padding:var(--spacing-2xl);text-align:center}@media(max-width:768px){.tax-xero-blog-archive__hero-title{font-size:2.5rem}.tax-xero-blog-archive__filter{align-items:flex-start;flex-direction:column}.tax-xero-blog-archive__post-title{font-size:var(--text-2xl)}}

/* --- comprehensive-strategies --- */
.tax-xero-comprehensive-strategies.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-comprehensive-strategies{background:var(--background);padding:var(--spacing-4xl) var(--spacing-md)}.tax-xero-comprehensive-strategies__container{margin:0 auto;max-width:1200px;padding:0 var(--spacing-xl)}.tax-xero-comprehensive-strategies__header{margin:0 auto;margin-bottom:var(--spacing-3xl);max-width:900px;text-align:center}.tax-xero-comprehensive-strategies__title{color:var(--foreground);font-size:clamp(2rem,4vw,3.5rem);font-weight:var(--font-bold);line-height:1.2;margin-bottom:var(--spacing-md)}.tax-xero-comprehensive-strategies__subtitle{color:var(--foreground);font-size:var(--text-lg);line-height:var(--leading-relaxed);margin:0}.tax-xero-comprehensive-strategies__grid{display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1000px}.tax-xero-comprehensive-strategies__card:nth-child(4){grid-column:1/3}.tax-xero-comprehensive-strategies__card:nth-child(5){grid-column:3/4}.tax-xero-comprehensive-strategies__card{background:var(--brand-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:left;transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.tax-xero-comprehensive-strategies__card:hover{box-shadow:0 8px 24px rgba(0,0,0,.1);transform:translateY(-4px)}.tax-xero-comprehensive-strategies__card-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.tax-xero-comprehensive-strategies__icon,.tax-xero-comprehensive-strategies__icon-placeholder{align-items:center;display:flex;height:2rem;justify-content:flex-start;width:2rem}.tax-xero-comprehensive-strategies__icon img{height:2rem;-o-object-fit:contain;object-fit:contain;width:2rem}.tax-xero-comprehensive-strategies__icon-placeholder{background:var(--muted);border-radius:var(--radius-md);color:var(--muted-foreground);font-size:var(--text-xs);justify-content:center}.tax-xero-comprehensive-strategies__card-title{color:var(--foreground);font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);margin:0}.tax-xero-comprehensive-strategies__card-description{color:var(--foreground);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin:0}@media(max-width:768px){.tax-xero-comprehensive-strategies__grid{grid-template-columns:1fr}.tax-xero-comprehensive-strategies__card:nth-child(4),.tax-xero-comprehensive-strategies__card:nth-child(5){grid-column:1}.tax-xero-comprehensive-strategies__title{font-size:2rem}.tax-xero-comprehensive-strategies__subtitle{font-size:var(--text-base)}}@media(prefers-reduced-motion:reduce){.tax-xero-comprehensive-strategies__card{transition:none}.tax-xero-comprehensive-strategies__card:hover{transform:none}}

/* --- contact-hero --- */
.tax-xero-contact-hero{background:var(--background);padding:var(--spacing-4xl) var(--spacing-md) var(--spacing-xl)}.tax-xero-contact-hero__content{margin:0 auto;max-width:800px;text-align:center}.tax-xero-contact-hero__title{color:var(--foreground);font-size:clamp(2rem,4vw,3rem);font-weight:var(--font-bold);margin:0 0 var(--spacing-md) 0}.tax-xero-contact-hero__subtitle{color:var(--muted-foreground);font-size:var(--text-lg);line-height:var(--leading-relaxed);margin:0}@media(max-width:768px){.tax-xero-contact-hero{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.tax-xero-contact-hero__title{font-size:2rem}}

/* --- contact-modal --- */
.tax-xero-contact-modal__trigger{align-items:center;border:2px solid transparent;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-size:var(--text-base);font-weight:var(--font-semibold);justify-content:center;padding:14px 32px;transition:all var(--duration-normal) var(--ease-out)}.tax-xero-contact-modal__trigger--primary{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}.tax-xero-contact-modal__trigger--primary:hover{background:var(--brand-blue-light);border-color:var(--brand-blue-light);box-shadow:0 4px 12px rgba(71,115,193,.35);transform:translateY(-2px)}.tax-xero-contact-modal__trigger--outline{background:transparent;border-color:var(--brand-navy);color:var(--brand-navy)}.tax-xero-contact-modal__trigger--outline:hover{background:var(--brand-navy);color:#fff;transform:translateY(-2px)}.tax-xero-contact-modal__trigger:active{transform:translateY(0)}.tax-xero-contact-modal__overlay{align-items:center;animation:modalFadeIn var(--duration-normal) var(--ease-out);backdrop-filter:blur(4px);background:rgba(11,38,105,.5);display:flex;inset:0;justify-content:center;padding:var(--spacing-md);position:fixed;z-index:var(--z-modal)}.tax-xero-contact-modal__overlay[hidden]{display:none}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.tax-xero-contact-modal__container{animation:modalSlideUp var(--duration-normal) var(--ease-out);background:var(--background);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-height:90vh;max-width:600px;overflow-y:auto;padding:var(--spacing-2xl);width:100%}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tax-xero-contact-modal__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-xl)}.tax-xero-contact-modal__header-text{display:flex;flex-direction:column;gap:var(--spacing-xs)}.tax-xero-contact-modal__title{color:var(--brand-navy);font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0}.tax-xero-contact-modal__subtitle{color:var(--muted-foreground);font-size:var(--text-base);margin:0}.tax-xero-contact-modal__close{align-items:center;background:transparent;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--brand-navy);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all var(--duration-fast) var(--ease-out);width:36px}.tax-xero-contact-modal__close:hover{background:var(--brand-blue-pale);border-color:var(--brand-blue);color:var(--brand-blue)}.tax-xero-contact-modal__content{width:100%}.tax-xero-contact-modal__no-trigger-hint{display:none}.tax-xero-contact-modal__preview{border:2px dashed var(--brand-blue-pale);border-radius:var(--radius-lg);margin-top:var(--spacing-md);padding:var(--spacing-xl)}.tax-xero-contact-modal__preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.tax-xero-contact-modal__preview-label{color:var(--muted-foreground);font-size:var(--text-xs);font-style:italic}@media(max-width:640px){.tax-xero-contact-modal__container{border-radius:var(--radius-lg);max-height:95vh;padding:var(--spacing-lg)}.tax-xero-contact-modal__title{font-size:var(--text-xl)}}@media(prefers-reduced-motion:reduce){.tax-xero-contact-modal__container,.tax-xero-contact-modal__overlay{animation:none}}

/* --- faq --- */
.tax-xero-faq.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-faq{background:var(--muted)}.tax-xero-faq__title-banner{background:var(--background);padding:var(--spacing-2xl) var(--spacing-md);text-align:center}.tax-xero-faq__title{color:var(--foreground);font-size:var(--text-5xl);font-weight:var(--font-light);letter-spacing:-.02em;margin:0}.tax-xero-faq__container{margin:0 auto;max-width:900px;padding:0 var(--spacing-xl)}.tax-xero-faq__list{padding:var(--spacing-lg) var(--spacing-md)}.tax-xero-faq__item{border-bottom:1px solid var(--border);transition:background-color var(--duration-fast) var(--ease-out)}.tax-xero-faq__item:hover{background-color:hsl(from var(--background) h s l/.5)}.tax-xero-faq__question{align-items:center;background:none;border:none;color:var(--foreground);cursor:pointer;display:flex;gap:var(--spacing-md);justify-content:space-between;padding:var(--spacing-lg) 0;text-align:left;transition:color var(--duration-fast) var(--ease-out);width:100%}.tax-xero-faq__question:hover{color:var(--primary)}.tax-xero-faq__question-text{flex:1;font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-snug)}.tax-xero-faq__icon{align-items:center;display:flex;flex-shrink:0;font-size:var(--text-2xl);font-weight:var(--font-light);height:32px;justify-content:center;transition:transform var(--duration-normal) var(--ease-out);width:32px}.tax-xero-faq__item.is-open .tax-xero-faq__icon{transform:rotate(180deg)}.tax-xero-faq__answer{max-height:0;overflow:hidden;transition:max-height var(--duration-medium) var(--ease-out)}.tax-xero-faq__item.is-open .tax-xero-faq__answer{max-height:500px}.tax-xero-faq__answer-content{color:var(--foreground);font-size:var(--text-base);line-height:var(--leading-relaxed);padding:0 0 var(--spacing-lg) 0}@media(max-width:768px){.tax-xero-faq__title{font-size:var(--text-3xl)}.tax-xero-faq__question-text{font-size:var(--text-base)}.tax-xero-faq__answer-content{font-size:var(--text-sm)}}@media(prefers-reduced-motion:reduce){.tax-xero-faq__answer,.tax-xero-faq__icon{transition:none}}

/* --- footer --- */
.tax-xero-footer.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-footer{background:var(--brand-navy);color:#fff;padding:var(--spacing-3xl) var(--spacing-md)}.tax-xero-footer__content{margin:0 auto;max-width:1400px;padding:0 var(--spacing-xl)}.tax-xero-footer__stack{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-lg);text-align:center}.tax-xero-footer__brand{align-items:center;display:flex;justify-content:center}.tax-xero-footer__logo{height:60px;width:auto}.tax-xero-footer__logo-placeholder{align-items:center;color:hsla(0,0%,100%,.5);display:flex;font-size:var(--text-sm);height:60px;justify-content:center}.tax-xero-footer__social{display:flex;gap:var(--spacing-md);justify-content:center}.tax-xero-footer__social-link{align-items:center;background:hsla(0,0%,100%,.1);border-radius:50%;color:#fff;display:flex;height:40px;justify-content:center;text-decoration:none;transition:background-color var(--duration-fast) var(--ease-out);width:40px}.tax-xero-footer__social-link:hover{background:hsla(0,0%,100%,.2)}.tax-xero-footer__nav{display:flex;justify-content:center}.tax-xero-footer__link{color:hsla(0,0%,100%,.8);font-size:.875rem;text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}.tax-xero-footer__link:hover{color:#fff}.tax-xero-footer__copyright{color:hsla(0,0%,100%,.7);font-size:.75rem;margin:0}.tax-xero-footer__bottom-links{display:flex;gap:var(--spacing-lg);justify-content:center}@media(max-width:768px){.tax-xero-footer__nav{flex-direction:column;gap:var(--spacing-sm)}}

/* --- goals --- */
.tax-xero-goals.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-goals{background:var(--muted);padding:var(--spacing-4xl) var(--spacing-md)}.tax-xero-goals__container{margin:0 auto;max-width:1400px;padding:0 var(--spacing-xl)}.tax-xero-goals__header{margin:0 auto;margin-bottom:var(--spacing-4xl);max-width:900px;text-align:center}.tax-xero-goals__title{color:var(--foreground);font-size:clamp(2rem,4vw,3.5rem);font-weight:var(--font-bold);line-height:1.2;margin-bottom:var(--spacing-md)}.tax-xero-goals__subtitle{color:var(--foreground);font-size:var(--text-lg);line-height:var(--leading-relaxed);margin:0}.tax-xero-goals__grid{display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1200px}.tax-xero-goals__card{background:var(--brand-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.tax-xero-goals__card:hover{box-shadow:0 8px 24px rgba(0,0,0,.12);transform:translateY(-4px)}.tax-xero-goals__card-content{align-items:center;display:flex;flex-direction:column;gap:1rem;text-align:center}.tax-xero-goals__icon,.tax-xero-goals__icon-placeholder{align-items:center;display:flex;height:3rem;justify-content:center;width:3rem}.tax-xero-goals__icon img{height:3rem;-o-object-fit:contain;object-fit:contain;width:3rem}.tax-xero-goals__icon-placeholder{background:var(--muted);border-radius:var(--radius-md);color:var(--muted-foreground);font-size:var(--text-xs)}.tax-xero-goals__card-title{color:var(--foreground);font-size:var(--text-xl);font-weight:var(--font-semibold);line-height:var(--leading-tight);margin:0}.tax-xero-goals__card-description{color:var(--foreground);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.tax-xero-goals__cta{margin-top:var(--spacing-4xl);text-align:center}.tax-xero-goals__button{align-items:center;background:var(--brand-blue);border:none;border-radius:var(--radius-full);box-shadow:0 4px 12px rgba(71,115,193,.3);color:var(--background);cursor:pointer;display:inline-flex;font-size:var(--text-base);font-weight:var(--font-medium);gap:var(--spacing-lg);justify-content:space-between;max-width:280px;padding:var(--spacing-md) var(--spacing-xl);text-decoration:none;transition:all var(--duration-normal) var(--ease-out);width:100%}.tax-xero-goals__button:hover{background:var(--brand-navy);box-shadow:0 6px 20px rgba(71,115,193,.4);transform:translateY(-2px)}.tax-xero-goals__button:active{transform:translateY(0)}.tax-xero-goals__button svg{align-items:center;background:var(--background);border-radius:50%;color:var(--brand-navy);display:flex;flex-shrink:0;height:32px;justify-content:center;padding:6px;transition:all var(--duration-fast) var(--ease-out);width:32px}.tax-xero-goals__button:hover svg{transform:translateX(2px)}.tax-xero-goals__button-text{color:inherit}@media(max-width:768px){.tax-xero-goals__grid{grid-template-columns:1fr}.tax-xero-goals__title{font-size:2rem}.tax-xero-goals__subtitle{font-size:var(--text-base)}.tax-xero-goals__card-title{font-size:var(--text-lg)}.tax-xero-goals__card-description{font-size:var(--text-sm)}.tax-xero-goals__button{gap:var(--spacing-lg);justify-content:center;padding:var(--spacing-md) var(--spacing-2xl);width:100%}}@media(prefers-reduced-motion:reduce){.tax-xero-goals__button,.tax-xero-goals__card{transition:none}.tax-xero-goals__button:hover,.tax-xero-goals__card:hover{transform:none}}

/* --- hero --- */
.tax-xero-hero.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-hero{align-items:center;display:flex;height:700px;min-height:600px;overflow:hidden;position:relative}.tax-xero-hero__background{height:100%;inset:0;position:absolute;width:100%}.tax-xero-hero__image{height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%}.tax-xero-hero__overlay{background:linear-gradient(90deg,rgba(0,0,0,.85) 0,rgba(0,0,0,.65) 50%,rgba(0,0,0,.45));inset:0;position:absolute}.tax-xero-hero__content{padding:var(--spacing-4xl) 0;position:relative;width:100%;z-index:10}.tax-xero-hero__container{margin:0 auto;max-width:1200px;padding:0 var(--spacing-xl)}.tax-xero-hero__text{max-width:700px}.tax-xero-hero__title,.tax-xero-hero__title-line2{color:var(--background);display:block;font-size:clamp(2.5rem,5vw,4.5rem);font-weight:var(--font-bold);line-height:1.1;margin-bottom:var(--spacing-lg);text-shadow:0 2px 8px rgba(0,0,0,.3)}.tax-xero-hero__subtitle{color:hsla(0,0%,100%,.95);font-size:clamp(1rem,2vw,1.25rem);font-weight:var(--font-normal);line-height:1.5;margin-bottom:var(--spacing-md)}.tax-xero-hero__description-static{color:hsla(0,0%,100%,.9);font-size:clamp(.95rem,1.8vw,1.125rem);font-weight:var(--font-normal);line-height:1.6;margin-bottom:var(--spacing-2xl)}.tax-xero-hero__button{align-items:center;background:#fff;border:none;border-radius:50px;box-shadow:0 2px 8px rgba(0,0,0,.1);cursor:pointer;display:inline-flex;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);text-decoration:none;transition:all var(--duration-normal) var(--ease-out)}.tax-xero-hero__button:hover{box-shadow:0 4px 16px rgba(0,0,0,.15);transform:translateY(-2px)}.tax-xero-hero__button:active{transform:translateY(0)}.tax-xero-hero__button-text{color:var(--brand-navy);font-size:var(--text-base);font-weight:var(--font-medium)}.tax-xero-hero__button-icon{align-items:center;background:var(--brand-blue);border-radius:50%;color:#fff;display:flex;height:40px;justify-content:center;transition:background-color var(--duration-fast) var(--ease-out);width:40px}.tax-xero-hero__button:hover .tax-xero-hero__button-icon{background:var(--brand-navy)}@media(max-width:768px){.tax-xero-hero{height:auto;min-height:500px}.tax-xero-hero__text{max-width:100%}.tax-xero-hero__title,.tax-xero-hero__title-line2{font-size:2.5rem}.tax-xero-hero__subtitle{font-size:1rem}.tax-xero-hero__description-static{font-size:.95rem}.tax-xero-hero__button-text{font-size:var(--text-sm)}}@media(prefers-reduced-motion:reduce){.tax-xero-hero__button{transition:none}.tax-xero-hero__button:hover{transform:none}}

/* --- how-it-works --- */
.tax-xero-how-it-works.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-how-it-works{background:var(--background);overflow-x:hidden;padding:var(--spacing-2xl) var(--spacing-md)}.tax-xero-how-it-works__container{display:flex;flex-direction:column;gap:var(--spacing-4xl);margin:0 auto;max-width:1400px}.tax-xero-how-it-works__hero{margin:0 auto;max-width:900px;padding:var(--spacing-xl) 0 var(--spacing-xl) 0;text-align:center}.tax-xero-how-it-works__hero-title{color:var(--brand-navy);font-size:clamp(2.5rem,5vw,4rem);font-weight:var(--font-bold);line-height:1.2;margin-bottom:var(--spacing-lg)}.tax-xero-how-it-works__hero-subtitle{color:var(--brand-navy);font-size:var(--text-lg);line-height:var(--leading-relaxed);margin:0}.tax-xero-how-it-works__steps{display:flex;flex-direction:column;gap:var(--spacing-3xl);margin:0 auto;max-width:900px;width:100%}.tax-xero-how-it-works__step{align-items:start;display:grid;gap:var(--spacing-lg);grid-template-columns:60px 1fr;position:relative}.tax-xero-how-it-works__step-icon{align-items:center;background:var(--brand-white);border:2px solid var(--brand-navy);border-radius:var(--radius-lg);display:flex;grid-column:1;grid-row:1;height:60px;justify-content:center;overflow:hidden;position:relative;width:60px;z-index:2}.tax-xero-how-it-works__step-icon img{height:28px;-o-object-fit:contain;object-fit:contain;width:28px}.tax-xero-how-it-works__step-number{color:var(--brand-navy);font-size:var(--text-xl);font-weight:var(--font-bold)}.tax-xero-how-it-works__step-connector{background:var(--brand-navy);grid-column:1;grid-row:1;height:calc(100% + var(--spacing-3xl));left:29px;position:absolute;top:60px;width:2px;z-index:0}.tax-xero-how-it-works__step-content{grid-column:2;grid-row:1}.tax-xero-how-it-works__step-title{color:var(--brand-navy);font-size:var(--text-xl);font-weight:var(--font-bold);margin:0 0 var(--spacing-sm) 0}.tax-xero-how-it-works__step-description{color:var(--brand-navy);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.tax-xero-how-it-works__result{align-items:center;background:#f5f3ef;border-radius:var(--radius-2xl);display:grid;gap:var(--spacing-4xl);grid-template-columns:1fr 1fr;padding:var(--spacing-4xl) var(--spacing-2xl)}.tax-xero-how-it-works__result-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.tax-xero-how-it-works__result-title{color:var(--brand-navy);font-size:2.5rem;font-weight:var(--font-bold);margin:0}.tax-xero-how-it-works__result-description{color:var(--brand-navy);font-size:1.125rem;line-height:var(--leading-relaxed);margin:0;max-width:500px}.tax-xero-how-it-works__result-button{align-self:flex-start;background-color:var(--brand-blue);border-radius:var(--radius-md);color:#fff;display:inline-block;font-weight:var(--font-medium);padding:var(--spacing-md) var(--spacing-xl);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-out)}.tax-xero-how-it-works__result-button:hover{background-color:var(--brand-navy)}.tax-xero-how-it-works__result-outcomes{background:#fff;border-radius:var(--radius-xl);box-shadow:0 4px 16px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:var(--spacing-lg);padding:var(--spacing-2xl)}.tax-xero-how-it-works__outcome-card{align-items:flex-start;background:transparent;border:none;display:flex;gap:var(--spacing-md);padding:0}.tax-xero-how-it-works__outcome-card--primary{background:transparent}.tax-xero-how-it-works__outcome-icon{align-items:center;background:var(--background);border-radius:var(--radius-lg);color:var(--brand-blue);display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.tax-xero-how-it-works__outcome-icon svg{height:24px;width:24px}.tax-xero-how-it-works__outcome-content{flex:1;padding-top:4px}.tax-xero-how-it-works__outcome-title{color:var(--brand-navy);font-size:1rem;font-weight:var(--font-semibold);margin:0 0 4px}.tax-xero-how-it-works__outcome-title--primary{font-size:1rem}.tax-xero-how-it-works__outcome-description{color:var(--brand-blue);font-size:.8rem;margin:0}@media(max-width:768px){.tax-xero-how-it-works__hero{padding:var(--spacing-2xl) 0;text-align:left}.tax-xero-how-it-works__hero-title{font-size:2.5rem;line-height:1.2}.tax-xero-how-it-works__hero-subtitle{font-size:var(--text-lg);padding:0}.tax-xero-how-it-works__steps{padding:0}.tax-xero-how-it-works__step{gap:var(--spacing-md);grid-template-columns:1fr;text-align:center}.tax-xero-how-it-works__step-connector{display:none}.tax-xero-how-it-works__step-icon{height:50px;margin:0 auto;width:50px}.tax-xero-how-it-works__step-content{text-align:left}.tax-xero-how-it-works__step-title{font-size:var(--text-xl)}.tax-xero-how-it-works__step-description{font-size:var(--text-base)}.tax-xero-how-it-works__result{gap:var(--spacing-xl);grid-template-columns:1fr;justify-items:center;margin:0;padding:var(--spacing-xl) var(--spacing-md);text-align:center}.tax-xero-how-it-works__result-content{max-width:100%;padding:0;text-align:center}.tax-xero-how-it-works__result-outcomes{align-items:stretch;display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-lg);width:100%}.tax-xero-how-it-works__result-title{font-size:var(--text-2xl)}.tax-xero-how-it-works__result-description{font-size:var(--text-base)}.tax-xero-how-it-works__result-button{align-self:center;box-sizing:border-box;max-width:100%;text-align:center;width:100%}.tax-xero-how-it-works__outcome-card{padding:var(--spacing-sm) 0;text-align:left;width:100%}}

/* --- legal-way --- */
.tax-xero-legal-way.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-legal-way{background:var(--background);padding:var(--spacing-4xl) var(--spacing-md)}.tax-xero-legal-way__container{margin:0 auto;max-width:1200px;padding:0 var(--spacing-xl)}.tax-xero-legal-way__card{background:linear-gradient(135deg,var(--brand-navy) 0,var(--brand-blue) 100%);border-radius:var(--radius-2xl);box-shadow:0 8px 32px rgba(11,38,105,.2);padding:var(--spacing-4xl) var(--spacing-2xl);text-align:center}.tax-xero-legal-way__title{color:var(--background);font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:var(--font-bold);line-height:1.3;margin:0 auto;max-width:900px}.tax-xero-legal-way__subtitle{color:var(--background);font-size:clamp(1rem,2vw,1.25rem);line-height:var(--leading-relaxed);margin:0 auto;max-width:700px;opacity:.85}@media(max-width:768px){.tax-xero-legal-way__card{padding:var(--spacing-2xl) var(--spacing-lg)}.tax-xero-legal-way__title{font-size:1.75rem}.tax-xero-legal-way__subtitle{font-size:1rem}}

/* --- our-team --- */
.tax-xero-our-team.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-our-team{background:var(--background);padding:var(--spacing-4xl) var(--spacing-md)}.tax-xero-our-team__container{align-items:start;display:grid;gap:var(--spacing-4xl);grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px}.tax-xero-our-team__text{display:flex;flex-direction:column;gap:var(--spacing-xl)}.tax-xero-our-team__title{color:var(--brand-navy);font-size:clamp(2rem,4vw,3rem);font-weight:var(--font-bold);margin:0}.tax-xero-our-team__bio{display:flex;flex-direction:column;gap:var(--spacing-lg)}.tax-xero-our-team__bio p{color:var(--brand-navy);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.tax-xero-our-team__button{align-self:flex-start;background:var(--background);border:2px solid var(--brand-navy);border-radius:var(--radius-full);color:var(--brand-navy);cursor:pointer;display:inline-block;font-size:var(--text-base);font-weight:var(--font-medium);margin-top:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);text-align:center;text-decoration:none;transition:all var(--duration-normal) var(--ease-out)}.tax-xero-our-team__button:hover{background:var(--brand-blue);box-shadow:0 4px 12px rgba(11,38,105,.2);color:var(--background);transform:translateY(-2px)}.tax-xero-our-team__button:active{transform:translateY(0)}.tax-xero-our-team__image{position:sticky;top:var(--spacing-2xl)}.tax-xero-our-team__photo{-o-object-fit:cover;object-fit:cover}.tax-xero-our-team__photo,.tax-xero-our-team__photo-placeholder{aspect-ratio:3/4;border-radius:var(--radius-lg);box-shadow:0 8px 32px rgba(0,0,0,.1);width:100%}.tax-xero-our-team__photo-placeholder{align-items:center;background:linear-gradient(135deg,var(--brand-navy) 0,var(--brand-blue) 100%);color:var(--background);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-xl);text-align:center}.tax-xero-our-team__placeholder-icon{font-size:4rem;margin-bottom:var(--spacing-lg)}.tax-xero-our-team__placeholder-text{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--spacing-sm)}.tax-xero-our-team__placeholder-subtitle{font-size:var(--text-base);opacity:.8}@media(max-width:968px){.tax-xero-our-team__container{gap:var(--spacing-2xl);grid-template-columns:1fr}.tax-xero-our-team__image{order:-1;position:relative;top:0}.tax-xero-our-team__title{font-size:2rem}.tax-xero-our-team__button{box-sizing:border-box;width:100%}}

/* --- pricing --- */
.tax-xero-pricing.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-pricing{background:var(--background);padding:var(--spacing-4xl) var(--spacing-md)}.tax-xero-pricing__header{margin:0 auto var(--spacing-4xl);max-width:800px;text-align:center}.tax-xero-pricing__title{color:var(--brand-navy-medium);font-size:clamp(2.5rem,5vw,4rem);font-weight:var(--font-bold);line-height:1.2;margin-bottom:var(--spacing-md)}.tax-xero-pricing__subtitle{color:var(--brand-navy-medium);font-size:var(--text-lg);margin:0}.tax-xero-pricing__plans{display:grid;gap:var(--spacing-xl);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin:0 auto var(--spacing-4xl);max-width:1200px}.tax-xero-pricing__plan{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;padding:var(--spacing-xl);position:relative;transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.tax-xero-pricing__plan:hover{box-shadow:0 12px 40px rgba(0,0,0,.15);transform:translateY(-8px)}.tax-xero-pricing__plan--featured{border:2px solid var(--brand-blue);box-shadow:0 8px 32px rgba(71,115,193,.2)}.tax-xero-pricing__popular-badge{background:var(--brand-blue);border-radius:var(--radius-full);color:var(--background);font-size:var(--text-xs);font-weight:var(--font-semibold);left:50%;letter-spacing:.05em;padding:var(--spacing-xs) var(--spacing-lg);position:absolute;top:-12px;transform:translateX(-50%)}.tax-xero-pricing__plan-icon{font-size:2.5rem;line-height:1;margin-bottom:var(--spacing-md)}.tax-xero-pricing__plan-icon img{height:48px;-o-object-fit:contain;object-fit:contain;width:48px}.tax-xero-pricing__plan-header{border-bottom:1px solid var(--border);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}.tax-xero-pricing__plan-name{color:var(--brand-navy-medium);font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0 0 var(--spacing-xs) 0}.tax-xero-pricing__plan-description{color:var(--brand-blue);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.05em;margin:0}.tax-xero-pricing__plan-price{align-items:baseline;display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.tax-xero-pricing__price-amount{color:var(--brand-navy-medium);font-size:var(--text-4xl);font-weight:var(--font-bold)}.tax-xero-pricing__price-period{color:var(--brand-navy-medium);font-size:var(--text-base)}.tax-xero-pricing__plan-features{border-top:1px solid var(--border);flex-grow:1;margin-bottom:var(--spacing-lg);padding-top:var(--spacing-md)}.tax-xero-pricing__features-title{color:var(--brand-navy-medium);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.05em;margin:0 0 var(--spacing-md) 0}.tax-xero-pricing__feature-item{color:var(--brand-navy-medium);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin-bottom:var(--spacing-sm)}.tax-xero-pricing__plan-button{background:var(--background);border:2px solid var(--brand-blue);border-radius:var(--radius-md);box-sizing:border-box;color:var(--brand-blue);cursor:pointer;display:block;font-weight:var(--font-medium);padding:var(--spacing-md) var(--spacing-xl);text-align:center;text-decoration:none;transition:all var(--duration-normal) var(--ease-out);width:100%}.tax-xero-pricing__plan-button:hover{transform:translateY(-2px)}.tax-xero-pricing__plan--featured .tax-xero-pricing__plan-button,.tax-xero-pricing__plan-button:hover{background:var(--brand-blue);color:var(--background)}.tax-xero-pricing__plan--featured .tax-xero-pricing__plan-button:hover{background:var(--brand-navy);border-color:var(--brand-navy)}.tax-xero-pricing__guarantee{margin:0 auto var(--spacing-4xl);max-width:800px}.tax-xero-pricing__guarantee-card{background:var(--background);border:2px solid var(--brand-blue-pale);border-radius:var(--radius-lg);padding:var(--spacing-2xl)}.tax-xero-pricing__guarantee-content{align-items:center;display:flex;gap:var(--spacing-lg);text-align:left}.tax-xero-pricing__guarantee-icon{flex-shrink:0;font-size:4rem;opacity:.4}.tax-xero-pricing__guarantee-text{flex:1}.tax-xero-pricing__guarantee-title{color:var(--foreground);font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0 0 var(--spacing-sm) 0}.tax-xero-pricing__guarantee-description{color:var(--foreground);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.tax-xero-pricing__why-choose{border-top:1px solid var(--border);margin-bottom:var(--spacing-4xl);padding-top:var(--spacing-4xl)}.tax-xero-pricing__why-choose-header{margin-bottom:var(--spacing-3xl);text-align:center}.tax-xero-pricing__why-choose-title{color:var(--foreground);font-size:var(--text-4xl);font-weight:var(--font-bold);margin:0 0 var(--spacing-sm) 0}.tax-xero-pricing__why-choose-subtitle{color:var(--foreground);font-size:var(--text-lg);margin:0}.tax-xero-pricing__why-choose-grid{display:grid;gap:var(--spacing-2xl);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1000px}.tax-xero-pricing__why-choose-item{align-items:center;display:flex;flex-direction:column;text-align:center}.tax-xero-pricing__why-choose-item-icon{align-items:center;display:flex;font-size:3rem;justify-content:center;margin-bottom:var(--spacing-md)}.tax-xero-pricing__why-choose-item-icon img{height:48px;-o-object-fit:contain;object-fit:contain;width:48px}.tax-xero-pricing__why-choose-item-title{color:var(--foreground);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0 0 var(--spacing-sm) 0}.tax-xero-pricing__why-choose-item-description{color:var(--foreground);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.tax-xero-pricing__cta{margin-bottom:var(--spacing-4xl)}.tax-xero-pricing__cta-card{background:linear-gradient(135deg,var(--brand-navy) 0,var(--brand-blue) 100%);border-radius:var(--radius-2xl);box-shadow:0 8px 32px rgba(11,38,105,.2);padding:var(--spacing-4xl) var(--spacing-2xl);text-align:center}.tax-xero-pricing__cta-badge{color:hsla(0,0%,100%,.8);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.1em;margin:0 0 var(--spacing-lg) 0}.tax-xero-pricing__cta-title{color:var(--background);font-size:clamp(2rem,4vw,3rem);font-weight:var(--font-bold);line-height:1.2;margin:0 0 var(--spacing-md) 0}.tax-xero-pricing__cta-description{color:hsla(0,0%,100%,.9);font-size:var(--text-base);margin:0 0 var(--spacing-lg) 0}.tax-xero-pricing__cta-button{background:var(--brand-blue);border:none;border-radius:var(--radius-md);color:var(--background);cursor:pointer;display:inline-block;font-size:var(--text-lg);font-weight:var(--font-semibold);padding:var(--spacing-md) var(--spacing-2xl);text-decoration:none;transition:all var(--duration-normal) var(--ease-out)}.tax-xero-pricing__cta-button:hover{background:hsla(0,0%,100%,.95);color:var(--brand-navy);transform:translateY(-2px)}.tax-xero-pricing__comparison{margin-bottom:var(--spacing-4xl);padding-top:var(--spacing-4xl)}.tax-xero-pricing__comparison-header{margin-bottom:var(--spacing-3xl);text-align:center}.tax-xero-pricing__comparison-title{color:var(--foreground);font-size:var(--text-4xl);font-weight:var(--font-bold);margin:0 0 var(--spacing-sm) 0}.tax-xero-pricing__comparison-subtitle{color:var(--foreground);font-size:var(--text-lg);margin:0}.tax-xero-pricing__comparison-table{background:var(--background);border:none;border-radius:var(--radius-lg);margin:0 auto;max-width:1000px;overflow:hidden}.tax-xero-pricing__comparison-row{border-bottom:1px solid var(--border);display:grid;grid-template-columns:2fr 1fr 1fr 1fr}.tax-xero-pricing__comparison-row:last-child{border-bottom:none}.tax-xero-pricing__comparison-row--header{background:var(--background);border-bottom:2px solid var(--border);font-weight:var(--font-semibold)}.tax-xero-pricing__comparison-cell{align-items:center;border-bottom:1px solid var(--border);border-right:1px solid var(--border);color:var(--foreground);display:flex;font-size:var(--text-sm);justify-content:center;padding:var(--spacing-lg);text-align:center}.tax-xero-pricing__comparison-cell:last-child{border-right:none}.tax-xero-pricing__comparison-row:last-child .tax-xero-pricing__comparison-cell{border-bottom:none}.tax-xero-pricing__comparison-cell--feature{font-weight:var(--font-medium);justify-content:flex-start;text-align:left}.tax-xero-pricing__comparison-cell--plan{font-weight:var(--font-semibold);position:relative}.tax-xero-pricing__comparison-cell--popular{background:var(--brand-blue-pale);flex-direction:column;gap:var(--spacing-xs)}.tax-xero-pricing__comparison-cell--highlighted{background:var(--brand-blue-pale)}.tax-xero-pricing__popular-label{color:var(--primary);font-size:var(--text-xs);letter-spacing:.05em;line-height:1}.tax-xero-pricing__faq-section{background:var(--muted);padding-bottom:var(--spacing-4xl)}.tax-xero-pricing__faq-header{background:var(--background);padding:var(--spacing-4xl) var(--spacing-md);text-align:center}.tax-xero-pricing__faq-title{color:var(--foreground);font-size:var(--text-5xl);font-weight:var(--font-light);letter-spacing:-.02em;margin:0 0 var(--spacing-sm) 0}.tax-xero-pricing__faq-subtitle{color:var(--foreground);font-size:var(--text-lg);margin:0}.tax-xero-pricing__faq-list{margin:0 auto;max-width:900px;padding:var(--spacing-lg) var(--spacing-md)}.tax-xero-pricing__faq-item{border-bottom:1px solid var(--border);transition:background-color var(--duration-fast) var(--ease-out)}.tax-xero-pricing__faq-item:hover{background-color:hsl(from var(--background) h s l/.5)}.tax-xero-pricing__faq-question{align-items:center;background:none;border:none;color:var(--foreground);cursor:pointer;display:flex;font-size:var(--text-lg);font-weight:var(--font-semibold);gap:var(--spacing-md);justify-content:space-between;line-height:var(--leading-snug);padding:var(--spacing-lg) 0;text-align:left;transition:color var(--duration-fast) var(--ease-out);width:100%}.tax-xero-pricing__faq-question:hover{color:var(--primary)}.tax-xero-pricing__faq-icon{align-items:center;display:flex;flex-shrink:0;font-size:var(--text-2xl);font-weight:var(--font-light);height:32px;justify-content:center;transition:transform var(--duration-normal) var(--ease-out);width:32px}.tax-xero-pricing__faq-item.is-open .tax-xero-pricing__faq-icon{transform:rotate(180deg)}.tax-xero-pricing__faq-answer{color:var(--foreground);font-size:var(--text-base);line-height:var(--leading-relaxed);max-height:0;overflow:hidden;padding:0;transition:max-height var(--duration-medium) var(--ease-out)}.tax-xero-pricing__faq-item.is-open .tax-xero-pricing__faq-answer{max-height:500px;padding:0 0 var(--spacing-lg) 0}@media(max-width:768px){.tax-xero-pricing__title{font-size:2.5rem}.tax-xero-pricing__plans,.tax-xero-pricing__subtitle,.tax-xero-pricing__title{padding:0 var(--spacing-md)}.tax-xero-pricing__plans{gap:var(--spacing-lg);grid-template-columns:1fr}.tax-xero-pricing__plan{padding:var(--spacing-2xl) var(--spacing-lg)}.tax-xero-pricing__price-amount{font-size:3rem}.tax-xero-pricing__guarantee-content{flex-direction:column;padding:0 var(--spacing-md);text-align:center}.tax-xero-pricing__guarantee-text{text-align:center}.tax-xero-pricing__why-choose-grid{gap:var(--spacing-md);grid-template-columns:1fr;padding:0 var(--spacing-md)}.tax-xero-pricing__comparison-table{overflow-x:auto}.tax-xero-pricing__comparison-row{min-width:600px}.tax-xero-pricing__comparison-cell{font-size:var(--text-xs);padding:var(--spacing-md)}.tax-xero-pricing__cta-card{margin:0 var(--spacing-md);padding:var(--spacing-3xl) var(--spacing-xl)}.tax-xero-pricing__cta-title{font-size:2rem}.tax-xero-pricing__cta-button{box-sizing:border-box;max-width:100%;width:100%}.tax-xero-pricing__faq-title{font-size:var(--text-3xl)}.tax-xero-pricing__faq-question{font-size:var(--text-base)}.tax-xero-pricing__faq-answer{font-size:var(--text-sm)}}@media(prefers-reduced-motion:reduce){.tax-xero-pricing__plan:hover{transform:none}.tax-xero-pricing__faq-answer,.tax-xero-pricing__faq-icon{transition:none}}

/* ===================================================================
   Mobile Responsiveness Fixes
   These override the consolidated block styles above for mobile.
   =================================================================== */

@media (max-width: 768px) {

	/* Hero: reduce container padding and button size on narrow screens */
	.tax-xero-hero__container {
		padding: 0 var(--spacing-lg);
	}

	.tax-xero-hero__button {
		padding: var(--spacing-sm) var(--spacing-md);
		gap: var(--spacing-sm);
	}

	.tax-xero-hero__button-icon {
		width: 32px;
		height: 32px;
	}

	/* Goals: collapse double-padding (section 16px + container 32px)
	   and fix the bug where mobile padding was INCREASED from 32px to 48px */
	.tax-xero-goals {
		padding-left: 0;
		padding-right: 0;
	}

	.tax-xero-goals__container {
		padding: 0 var(--spacing-lg);
	}

	.tax-xero-goals__button {
		width: auto;
		max-width: 100%;
		padding: var(--spacing-sm) var(--spacing-lg);
		gap: var(--spacing-sm);
		justify-content: center;
	}

	/* Value Proposition: reduce container and button padding on mobile */
	.tax-xero-value-proposition__container {
		padding: 0 var(--spacing-lg);
	}

	.tax-xero-value-proposition__button {
		padding: var(--spacing-sm) var(--spacing-lg);
	}

	/* How It Works: increase section side padding to 24px and zero the container */
	.tax-xero-how-it-works {
		padding-left: var(--spacing-lg);
		padding-right: var(--spacing-lg);
	}

	.tax-xero-how-it-works__container {
		padding: 0;
	}

	/* Comprehensive Strategies: reduce container padding */
	.tax-xero-comprehensive-strategies {
		padding-left: 0;
		padding-right: 0;
	}

	.tax-xero-comprehensive-strategies__container {
		padding: 0 var(--spacing-lg);
	}

	/* FAQ: set container to 24px side padding */
	.tax-xero-faq__container {
		padding: 0 var(--spacing-lg);
	}

	/* Footer: increase section side padding to 24px and zero the inner content padding */
	.tax-xero-footer {
		padding-left: var(--spacing-lg);
		padding-right: var(--spacing-lg);
	}

	.tax-xero-footer__content {
		padding: 0;
	}

	/* Pricing: prevent 320px min-width cards from overflowing */
	.tax-xero-pricing__plans {
		grid-template-columns: 1fr;
	}

	/* Legal Way: ensure padding is sane on very small screens */
	.tax-xero-legal-way__container {
		padding: 0 var(--spacing-md);
	}

	/* Our Team: stack grid on mobile and increase side padding */
	.tax-xero-our-team {
		padding-left: var(--spacing-lg);
		padding-right: var(--spacing-lg);
	}

	.tax-xero-our-team__container {
		grid-template-columns: 1fr;
	}

	.tax-xero-our-team__image {
		position: static;
	}

	/* Header: reduce horizontal padding on mobile */
	.site-header {
		padding-left: var(--spacing-md) !important;
		padding-right: var(--spacing-md) !important;
	}

	/* Membership button: keep compact on mobile */
	.site-header .wp-block-button__link {
		padding: 7px 14px !important;
		font-size: 0.8125rem !important;
	}

	/* WPForms: add horizontal padding so fields don't touch screen edges */
	.wpforms-container {
		padding-left: var(--spacing-lg);
		padding-right: var(--spacing-lg);
	}

	/* Contact page post-content: ensure adequate side padding */
	.page-contact-us .wp-block-post-content,
	.page-id-12 .wp-block-post-content {
		padding-left: var(--spacing-lg);
		padding-right: var(--spacing-lg);
	}
}


/* --- value-proposition --- */
.tax-xero-value-proposition.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}.tax-xero-value-proposition{background:var(--brand-white);padding:var(--spacing-4xl) 0}.tax-xero-value-proposition__container{margin:0 auto;max-width:1400px;padding:0 var(--spacing-xl)}.tax-xero-value-proposition__grid{align-items:center;display:grid;gap:var(--spacing-4xl);grid-template-columns:1fr 1fr}.tax-xero-value-proposition__content{max-width:600px}.tax-xero-value-proposition__title,.tax-xero-value-proposition__title-line2{color:var(--foreground);display:block;font-size:clamp(2rem,4vw,3rem);font-weight:var(--font-bold);line-height:1.2;margin-bottom:var(--spacing-xl)}.tax-xero-value-proposition__text{margin-bottom:var(--spacing-2xl)}.tax-xero-value-proposition__text p{color:var(--foreground);font-size:var(--text-base);line-height:var(--leading-relaxed);margin-bottom:var(--spacing-xl)}.tax-xero-value-proposition__text p:last-child{margin-bottom:0}.tax-xero-value-proposition__text p+p{margin-top:var(--spacing-md)}.tax-xero-value-proposition__text em{font-style:italic;font-weight:var(--font-medium)}.tax-xero-value-proposition__button{align-items:center;background:var(--background);border:2px solid var(--brand-navy);border-radius:var(--radius-full);color:var(--brand-navy);cursor:pointer;display:inline-flex;font-size:var(--text-base);font-weight:var(--font-medium);gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-2xl);text-decoration:none;transition:all var(--duration-normal) var(--ease-out)}.tax-xero-value-proposition__button:hover{background:var(--brand-blue);box-shadow:0 4px 12px rgba(11,38,105,.2);color:var(--background);transform:translateY(-2px)}.tax-xero-value-proposition__button:active{transform:translateY(0)}.tax-xero-value-proposition__button-text{color:inherit}.tax-xero-value-proposition__button-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center;transition:transform var(--duration-fast) var(--ease-out)}.tax-xero-value-proposition__button:hover .tax-xero-value-proposition__button-icon{transform:translateX(4px)}.tax-xero-value-proposition__images{display:flex;flex-direction:column;gap:var(--spacing-md);position:relative}.tax-xero-value-proposition__image-wrapper{border-radius:var(--radius-lg);box-shadow:0 8px 24px rgba(0,0,0,.12);overflow:hidden;position:relative}.tax-xero-value-proposition__image{display:block;height:auto;-o-object-fit:cover;object-fit:cover;width:100%}.tax-xero-value-proposition__image-placeholder{align-items:center;aspect-ratio:4/3;background:var(--muted);border-radius:var(--radius-lg);color:var(--muted-foreground);display:flex;font-size:var(--text-sm);justify-content:center;width:100%}.tax-xero-value-proposition__caption{color:var(--muted-foreground);font-size:var(--text-xs);font-style:italic;margin:var(--spacing-sm) 0 0 0;text-align:center}@media(max-width:1024px){.tax-xero-value-proposition__grid{gap:var(--spacing-2xl);grid-template-columns:1fr}.tax-xero-value-proposition__content{max-width:100%}}@media(max-width:768px){.tax-xero-value-proposition__title,.tax-xero-value-proposition__title-line2{font-size:2rem}.tax-xero-value-proposition__text p{font-size:var(--text-sm)}.tax-xero-value-proposition__button{gap:var(--spacing-md);justify-content:center;width:100%}}@media(prefers-reduced-motion:reduce){.tax-xero-value-proposition__button:hover{transform:none}}

