<!DOCTYPE html>
<html lang="en-US">
<head >
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" id="dynamik-viewport"/>
<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
<!-- Google tag (gtag.js) consent mode dataLayer added by Site Kit -->
<script id="google_gtagjs-js-consent-mode-data-layer">
window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}
gtag('consent', 'default', {"ad_personalization":"denied","ad_storage":"denied","ad_user_data":"denied","analytics_storage":"denied","functionality_storage":"denied","security_storage":"denied","personalization_storage":"denied","region":["AT","BE","BG","CH","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GR","HR","HU","IE","IS","IT","LI","LT","LU","LV","MT","NL","NO","PL","PT","RO","SE","SI","SK"],"wait_for_update":500});
window._googlesitekitConsentCategoryMap = {"statistics":["analytics_storage"],"marketing":["ad_storage","ad_user_data","ad_personalization"],"functional":["functionality_storage","security_storage"],"preferences":["personalization_storage"]};
window._googlesitekitConsents = {"ad_personalization":"denied","ad_storage":"denied","ad_user_data":"denied","analytics_storage":"denied","functionality_storage":"denied","security_storage":"denied","personalization_storage":"denied","region":["AT","BE","BG","CH","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GR","HR","HU","IE","IS","IT","LI","LT","LU","LV","MT","NL","NO","PL","PT","RO","SE","SI","SK"],"wait_for_update":500};
</script>
<!-- End Google tag (gtag.js) consent mode dataLayer added by Site Kit -->

	<!-- This site is optimized with the Yoast SEO plugin v27.8 - https://yoast.com/product/yoast-seo-wordpress/ -->
	<title>3D Slope Stability Software | TSLOPE – Fast &amp; Accurate Analysis</title>
	<meta name="description" content="TSLOPE is fast, accurate 2D / 3D slope stability software for geotechnical engineers. Trusted in mining, civil, and open-pit design projects." />
	<link rel="canonical" href="https://tagasoft.com/" />
	<meta property="og:locale" content="en_US" />
	<meta property="og:type" content="website" />
	<meta property="og:title" content="TSLOPE: 2D / 3D Slope Stability in One Tool" />
	<meta property="og:description" content="Run limit equilibrium analysis faster. Work directly with QGIS data. Pay only for what you use." />
	<meta property="og:url" content="https://tagasoft.com/" />
	<meta property="og:site_name" content="TAGA Engineering Software Limited" />
	<meta property="article:modified_time" content="2026-04-26T23:12:21+00:00" />
	<meta property="og:image" content="https://tagasoft.com/wp-content/uploads/2026/03/2D-3D-Slope-Stability-Software.png" />
	<meta property="og:image:width" content="1200" />
	<meta property="og:image:height" content="630" />
	<meta property="og:image:type" content="image/png" />
	<meta name="twitter:card" content="summary_large_image" />
	<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/tagasoft.com\/","url":"https:\/\/tagasoft.com\/","name":"3D Slope Stability Software | TSLOPE – Fast & Accurate Analysis","isPartOf":{"@id":"https:\/\/tagasoft.com\/#website"},"about":{"@id":"https:\/\/tagasoft.com\/#organization"},"primaryImageOfPage":{"@id":"https:\/\/tagasoft.com\/#primaryimage"},"image":{"@id":"https:\/\/tagasoft.com\/#primaryimage"},"thumbnailUrl":"https:\/\/tagasoft.com\/wp-content\/uploads\/2025\/10\/2025-10-05-12_35_35-TSLOPE-IRB_QGIS_data_October_2_2025.tsz-1.png","datePublished":"2016-10-01T02:17:23+00:00","dateModified":"2026-04-26T23:12:21+00:00","description":"TSLOPE is fast, accurate 2D \/ 3D slope stability software for geotechnical engineers. Trusted in mining, civil, and open-pit design projects.","breadcrumb":{"@id":"https:\/\/tagasoft.com\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tagasoft.com\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tagasoft.com\/#primaryimage","url":"https:\/\/tagasoft.com\/wp-content\/uploads\/2025\/10\/2025-10-05-12_35_35-TSLOPE-IRB_QGIS_data_October_2_2025.tsz-1.png","contentUrl":"https:\/\/tagasoft.com\/wp-content\/uploads\/2025\/10\/2025-10-05-12_35_35-TSLOPE-IRB_QGIS_data_October_2_2025.tsz-1.png","width":758,"height":758},{"@type":"BreadcrumbList","@id":"https:\/\/tagasoft.com\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home"}]},{"@type":"WebSite","@id":"https:\/\/tagasoft.com\/#website","url":"https:\/\/tagasoft.com\/","name":"TAGA Engineering Software Limited","description":"Geotechnical Software for a 3D World","publisher":{"@id":"https:\/\/tagasoft.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tagasoft.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/tagasoft.com\/#organization","name":"Tagasoft","url":"https:\/\/tagasoft.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/tagasoft.com\/#\/schema\/logo\/image\/","url":"https:\/\/tagasoft.com\/wp-content\/uploads\/2025\/07\/T_logo.png","contentUrl":"https:\/\/tagasoft.com\/wp-content\/uploads\/2025\/07\/T_logo.png","width":1024,"height":1024,"caption":"Tagasoft"},"image":{"@id":"https:\/\/tagasoft.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/company\/tagasoft\/","https:\/\/www.youtube.com\/channel\/UCjn-mED_aleCWoTQNI1M9AQ\/videos"]}]}</script>
	<!-- / Yoast SEO plugin. -->


<link rel='dns-prefetch' href='//www.google.com' />
<link rel='dns-prefetch' href='//www.googletagmanager.com' />
<link rel='dns-prefetch' href='//fonts.googleapis.com' />
<link rel='dns-prefetch' href='//pagead2.googlesyndication.com' />
<link href='https://fonts.gstatic.com' crossorigin rel='preconnect' />
<link rel="alternate" type="application/rss+xml" title="TAGA Engineering Software Limited &raquo; Feed" href="https://tagasoft.com/feed/" />
<link rel="alternate" type="application/rss+xml" title="TAGA Engineering Software Limited &raquo; Comments Feed" href="https://tagasoft.com/comments/feed/" />
<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://tagasoft.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Ftagasoft.com%2F" />
<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://tagasoft.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Ftagasoft.com%2F&#038;format=xml" />
<link rel="preload" href="https://tagasoft.com/wp-content/plugins/bb-plugin/fonts/fontawesome/5.15.4/webfonts/fa-solid-900.woff2" as="font" type="font/woff2" crossorigin="anonymous">
		<style id="content-control-block-styles">
			@media (max-width: 640px) {
	.cc-hide-on-mobile {
		display: none !important;
	}
}
@media (min-width: 641px) and (max-width: 920px) {
	.cc-hide-on-tablet {
		display: none !important;
	}
}
@media (min-width: 921px) and (max-width: 1440px) {
	.cc-hide-on-desktop {
		display: none !important;
	}
}		</style>
		<style id="wp-img-auto-sizes-contain-inline-css">
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */
</style>
<link rel='stylesheet' id='sdm-styles-css' href='https://tagasoft.com/wp-content/plugins/simple-download-monitor/css/sdm_wp_styles.css?ver=b04ad6bd54b1cad6bc1ccd8994e0c3f6' media='all' />
<link rel='stylesheet' id='tagasoft-fonts-css' href='https://fonts.googleapis.com/css2?family=Montserrat:wght@500;600;700&#038;family=Roboto:wght@400;500&#038;display=swap' media='all' />
<link rel='stylesheet' id='dynamik_minified_stylesheet-css' href='https://tagasoft.com/wp-content/uploads/dynamik-gen/theme/dynamik-min.css?ver=1767992590' media='all' />
<link rel='stylesheet' id='font-awesome-5-css' href='https://tagasoft.com/wp-content/plugins/bb-plugin/fonts/fontawesome/5.15.4/css/all.min.css?ver=2.10.2.2' media='all' />
<link rel='stylesheet' id='font-awesome-css' href='https://tagasoft.com/wp-content/plugins/bb-plugin/fonts/fontawesome/5.15.4/css/v4-shims.min.css?ver=2.10.2.2' media='all' />
<style id="wp-emoji-styles-inline-css">

	img.wp-smiley, img.emoji {
		display: inline !important;
		border: none !important;
		box-shadow: none !important;
		height: 1em !important;
		width: 1em !important;
		margin: 0 0.07em !important;
		vertical-align: -0.1em !important;
		background: none !important;
		padding: 0 !important;
	}
/*# sourceURL=wp-emoji-styles-inline-css */
</style>
<style id="wp-block-library-inline-css">
:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-color]){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}

/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */
</style>
<style id="classic-theme-styles-inline-css">
/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
/*# sourceURL=/wp-includes/css/classic-themes.min.css */
</style>

<link rel='stylesheet' id='wc-blocks-style-css' href='https://tagasoft.com/wp-content/plugins/woocommerce/assets/client/blocks/wc-blocks.css?ver=wc-10.8.1' media='all' />

<link rel='stylesheet' id='content-control-block-styles-css' href='https://tagasoft.com/wp-content/plugins/content-control/dist/style-block-editor.css?ver=2.6.5' media='all' />
<style id="global-styles-inline-css">
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
/*# sourceURL=global-styles-inline-css */
</style>

<link rel='stylesheet' id='wpda_wpdp_public-css' href='https://tagasoft.com/wp-content/plugins/wp-data-access/public/../assets/css/wpda_public.css?ver=5.5.73' media='all' />
<link rel='stylesheet' id='jquery-bxslider-css' href='https://tagasoft.com/wp-content/plugins/bb-plugin/css/jquery.bxslider.css?ver=2.10.2.2' media='all' />
<link rel='stylesheet' id='fl-builder-layout-1146-css' href='https://tagasoft.com/wp-content/uploads/bb-plugin/cache/1146-layout.css?ver=7c658aeb21a1e8881a000079385d448c' media='all' />
<link rel='stylesheet' id='woocommerce-layout-css' href='https://tagasoft.com/wp-content/plugins/woocommerce/assets/css/woocommerce-layout.css?ver=10.8.1' media='all' />
<link rel='stylesheet' id='woocommerce-smallscreen-css' href='https://tagasoft.com/wp-content/plugins/woocommerce/assets/css/woocommerce-smallscreen.css?ver=10.8.1' media='only screen and (max-width: 768px)' />
<link rel='stylesheet' id='woocommerce-general-css' href='https://tagasoft.com/wp-content/plugins/woocommerce/assets/css/woocommerce.css?ver=10.8.1' media='all' />
<style id="woocommerce-inline-inline-css">
.woocommerce form .form-row .required { visibility: visible; }
/*# sourceURL=woocommerce-inline-inline-css */
</style>
<link rel='stylesheet' id='fl-builder-layout-bundle-0895e346839eaf59171fd1d346fa79d5-css' href='https://tagasoft.com/wp-content/uploads/bb-plugin/cache/0895e346839eaf59171fd1d346fa79d5-layout-bundle.css?ver=2.10.2.2-1.5.3' media='all' />
<link rel='stylesheet' id='dynamik_enqueued_google_fonts-css' href='//fonts.googleapis.com/css?family=Roboto+Condensed:400italic,700italic,400,700|Pontano+Sans&#038;display=auto&#038;ver=2.6.9.95' media='all' />
<link rel='stylesheet' id='tablepress-default-css' href='https://tagasoft.com/wp-content/plugins/tablepress/css/build/default.css?ver=3.3.2' media='all' />
<link rel='stylesheet' id='fl-builder-google-fonts-54415bb42194d3934d545ffcaff4be80-css' href='//fonts.googleapis.com/css?family=Montserrat:600&#038;ver=7.0' media='all' />
<script id="jquery-core-js" src="https://tagasoft.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
<script id="jquery-migrate-js" src="https://tagasoft.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
<script id="underscore-js" src="https://tagasoft.com/wp-includes/js/underscore.min.js?ver=1.13.8"></script>
<script id="backbone-js" src="https://tagasoft.com/wp-includes/js/backbone.min.js?ver=1.6.1"></script>
<script id="wp-api-request-js-extra">
var wpApiSettings = {"root":"https://tagasoft.com/wp-json/","nonce":"0adc701448","versionString":"wp/v2/"};
//# sourceURL=wp-api-request-js-extra
</script>
<script id="wp-api-request-js" src="https://tagasoft.com/wp-includes/js/api-request.min.js?ver=b04ad6bd54b1cad6bc1ccd8994e0c3f6"></script>
<script id="wp-api-js" src="https://tagasoft.com/wp-includes/js/wp-api.min.js?ver=b04ad6bd54b1cad6bc1ccd8994e0c3f6"></script>
<script id="wpda_rest_api-js-extra">
var wpdaApiSettings = {"path":"wpda"};
//# sourceURL=wpda_rest_api-js-extra
</script>
<script id="wpda_rest_api-js" src="https://tagasoft.com/wp-content/plugins/wp-data-access/public/../assets/js/wpda_rest_api.js?ver=5.5.73"></script>
<script data-wp-strategy="defer" defer id="rcfwc-js-js" src="https://tagasoft.com/wp-content/plugins/recaptcha-woo/js/rcfwc.js?ver=1.0"></script>
<script data-wp-strategy="defer" defer id="recaptcha-js" src="https://www.google.com/recaptcha/api.js?hl=en_US"></script>
<script id="sdm-scripts-js-extra">
var sdm_ajax_script = {"ajaxurl":"https://tagasoft.com/wp-admin/admin-ajax.php"};
//# sourceURL=sdm-scripts-js-extra
</script>
<script id="sdm-scripts-js" src="https://tagasoft.com/wp-content/plugins/simple-download-monitor/js/sdm_wp_scripts.js?ver=b04ad6bd54b1cad6bc1ccd8994e0c3f6"></script>
<script id="stickyAnythingLib-js" src="https://tagasoft.com/wp-content/plugins/sticky-menu-or-anything-on-scroll/assets/js/jq-sticky-anything.min.js?ver=2.1.1"></script>
<script data-wp-strategy="defer" defer id="wc-jquery-blockui-js" src="https://tagasoft.com/wp-content/plugins/woocommerce/assets/js/jquery-blockui/jquery.blockUI.min.js?ver=2.7.0-wc.10.8.1"></script>
<script data-wp-strategy="defer" defer id="wc-js-cookie-js" src="https://tagasoft.com/wp-content/plugins/woocommerce/assets/js/js-cookie/js.cookie.min.js?ver=2.1.4-wc.10.8.1"></script>
<script id="woocommerce-js-extra">
var woocommerce_params = {"ajax_url":"/wp-admin/admin-ajax.php","wc_ajax_url":"/?wc-ajax=%%endpoint%%","i18n_password_show":"Show password","i18n_password_hide":"Hide password"};
//# sourceURL=woocommerce-js-extra
</script>
<script data-wp-strategy="defer" defer id="woocommerce-js" src="https://tagasoft.com/wp-content/plugins/woocommerce/assets/js/frontend/woocommerce.min.js?ver=10.8.1"></script>

<!-- Google tag (gtag.js) snippet added by Site Kit -->
<!-- Google Ads snippet added by Site Kit -->
<script id="google_gtagjs-js" src="https://www.googletagmanager.com/gtag/js?id=AW-10796312246" async></script>
<script id="google_gtagjs-js-after">
window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}
gtag("js", new Date());
gtag("set", "developer_id.dZTNiMT", true);
gtag("config", "AW-10796312246");
//# sourceURL=google_gtagjs-js-after
</script>
<link rel="https://api.w.org/" href="https://tagasoft.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://tagasoft.com/wp-json/wp/v2/pages/1146" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://tagasoft.com/xmlrpc.php?rsd" />
<meta name="generator" content="Site Kit by Google 1.180.0" /><link rel="icon" href="https://tagasoft.com/wp-content/uploads/dynamik-gen/theme/images/favicon.jpg" />
<meta name="google-site-verification" content="q_rtwlS87xowOJGBlon3-ZLeR3k-nhTHSERCGwaib8o" />
<meta name="google-site-verification" content="q_rtwlS87xowOJGBlon3-ZLeR3k-nhTHSERCGwaib8o" /><meta name="google-site-verification" content="5s1UiNI11C6aTNMbGlfGFwc5gato6FN52Uo1OesJwtc" />	<noscript><style>.woocommerce-product-gallery{ opacity: 1 !important; }</style></noscript>
	
<!-- Google AdSense meta tags added by Site Kit -->
<meta name="google-adsense-platform-account" content="ca-host-pub-2644536267352236">
<meta name="google-adsense-platform-domain" content="sitekit.withgoogle.com">
<!-- End Google AdSense meta tags added by Site Kit -->

<!-- Google Tag Manager snippet added by Site Kit -->
<script>
			( function( w, d, s, l, i ) {
				w[l] = w[l] || [];
				w[l].push( {'gtm.start': new Date().getTime(), event: 'gtm.js'} );
				var f = d.getElementsByTagName( s )[0],
					j = d.createElement( s ), dl = l != 'dataLayer' ? '&l=' + l : '';
				j.async = true;
				j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
				f.parentNode.insertBefore( j, f );
			} )( window, document, 'script', 'dataLayer', 'GTM-N23LMZS' );
			
</script>

<!-- End Google Tag Manager snippet added by Site Kit -->

<!-- Google AdSense snippet added by Site Kit -->
<script async crossorigin="anonymous" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2792483200405884&#038;host=ca-host-pub-2644536267352236"></script>

<!-- End Google AdSense snippet added by Site Kit -->
<style id="wp-custom-css">
.page .entry-title {
  display: none;
}
/* ===== TAGAsoft Download Cards ===== */
.ts-download-grid{
  display:grid; gap:18px; 
  grid-template-columns: 1fr;
  max-width:1100px; margin:0 auto; padding:16px;
}
@media (min-width:860px){
  .ts-download-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (min-width:1180px){
  .ts-download-grid{ grid-template-columns: repeat(3, 1fr); }
}

/* Card */
.ts-featurecard{
  background:#fff; border:1px solid #e5e5e5; border-radius:0;
  box-shadow:0 1px 0 rgba(0,0,0,.04);
  display:flex; flex-direction:column; min-height:100%;
  transition: transform .15s ease, box-shadow .15s ease;
}
.ts-featurecard:hover{ transform: translateY(-2px); box-shadow:0 6px 12px rgba(0,0,0,.06); }

.ts-card-head{ padding:18px 18px 0; }
.ts-card-body{ padding:14px 18px 18px; display:grid; gap:10px; }

.ts-card-title{ margin:8px 0 4px; font-weight:700; }
.ts-card-sub{ margin:0; color:#555; font-size:14px; }

/* Icon badges (match Features page look) */
.ts-icon{ width:40px; height:40px; border-radius:8px; display:inline-block; }
.ts-icon--app{ background:linear-gradient(180deg,#131313,#383838); }
.ts-icon--pdf{ background:#ecb733; }
.ts-icon--archive{ background:#e5e5e5; }

.ts-specs{ margin:0; padding-left:18px; color:#444; font-size:14px; }
.ts-older summary{ cursor:pointer; font-weight:700; margin:4px 0 6px; }
.ts-older-item{ padding:8px 0; border-top:1px solid #f0f0f0; }

/* Make SDM buttons match brand + fill width neatly in cards */
.sdm_post_item, .sdm_download{ border:none !important; box-shadow:none !important; padding:0 !important; }
.sdm_download .sdm_download_link a,
.sdm_post_item .sdm_download a.sdm_download{
  display:inline-block !important; width:auto !important;
  background:#131313 !important; color:#fff !important;
  border:1px solid #131313 !important; border-radius:0 !important;
  font-weight:700 !important; padding:10px 14px !important; text-decoration:none !important;
}
.sdm_download .sdm_download_link a:hover,
.sdm_post_item .sdm_download a.sdm_download:hover{
  background:#000 !important; color:#fff !important;
}

/* Optional: small checksum line */
.ts-check{ margin:0; font-family:ui-monospace, Menlo, Monaco, Consolas, "Courier New", monospace; font-size:13px; color:#444; }

/* --- Fix SDM inside our feature cards --- */
.ts-featurecard .sdm_post_item,
.ts-featurecard .sdm_download { 
  border:none !important; box-shadow:none !important; background:transparent !important;
  padding:0 !important; margin:0 !important;
}

/* Hide SDM's built-in icon/left image and extra headings/excerpts */
.ts-featurecard .sdm_left_box,
.ts-featurecard .sdm_file_icon,
.ts-featurecard .sdm_post_title,
.ts-featurecard .sdm_item_excerpt,
.ts-featurecard .sdm_filename,
.ts-featurecard .sdm_filesize,
.ts-featurecard .sdm_item_meta {
  display:none !important;
}
.ts-featurecard .sdm_right_box { width:auto !important; float:none !important; padding:0 !important; }

/* Make the button neat and not full-width unless needed */
.ts-featurecard .sdm_download_link a,
.ts-featurecard .sdm_download a.sdm_download{
  display:inline-block !important;
  background:#131313 !important; color:#fff !important; border:1px solid #131313 !important;
  border-radius:0 !important; font-weight:700 !important; padding:10px 14px !important;
  text-decoration:none !important; line-height:1.2 !important;
}
.ts-featurecard .sdm_download_link a:hover,
.ts-featurecard .sdm_download a.sdm_download:hover{ background:#000 !important; }

/* Remove random gaps SDM injects */
.ts-featurecard .sdm_clear_float, 
.ts-featurecard .sdm_clearfix { display:none !important; }

/* Grid: tidy rows, no masonry/diamond effect */
.ts-download-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 24px;
  max-width:1100px; margin:0 auto; padding:16px;
  align-items: stretch; /* ensure items stretch to same row height */
}

/* Cards: equal height and consistent inner layout */
.ts-featurecard{
  display:flex; flex-direction:column;
  height:100%;
  background:#fff; border:1px solid #e5e5e5; border-radius:0;
  box-shadow:0 1px 0 rgba(0,0,0,.04);
  transition: transform .15s ease, box-shadow .15s ease;
}
.ts-card-head{ padding:18px 18px 0; }
.ts-card-body{ padding:14px 18px 18px; display:flex; flex-direction:column; gap:12px; }

/* Make SDM output minimal inside cards (prevents big inner boxes) */
.ts-featurecard .sdm_post_item,
.ts-featurecard .sdm_download{
  border:none !important; box-shadow:none !important;
  background:transparent !important; padding:0 !important; margin:0 !important;
}
.ts-featurecard .sdm_left_box,
.ts-featurecard .sdm_file_icon,
.ts-featurecard .sdm_post_title,
.ts-featurecard .sdm_item_excerpt,
.ts-featurecard .sdm_filename,
.ts-featurecard .sdm_filesize,
.ts-featurecard .sdm_item_meta { display:none !important; }
.ts-featurecard .sdm_right_box{ width:auto !important; float:none !important; padding:0 !important; }

/* Brand the download button and keep it compact */
.ts-featurecard .sdm_download_link a,
.ts-featurecard .sdm_download a.sdm_download{
  display:inline-block !important;
  background:#131313 !important; color:#fff !important;
  border:1px solid #131313 
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  max-width: 100%; /* was 1100px */!important; border-radius:0 !important;
  font-weight:700 !important; padding:10px 14px !important; text-decoration:none !important;
}
.ts-featurecard .sdm_download_link a:hover,
.ts-featurecard .sdm_download a.sdm_download:hover{ background:#000 !important; color:#fff !important; }

/* Expand grid to full width */
.ts-download-grid{
  display:grid;
  margin: 0 auto;
  padding: 24px;
  align-items: stretch;
}

/* Highlight pill */
.ts-pill{
  background:#fad357;
  color:#131313;
  font-weight:700;
  padding:3px 8px;
  font-size:12px;
  margin-left:8px;
  border-radius:4px;
  vertical-align:middle;
}

/* Optional: highlight effect for Installer card */
.ts-featurecard--highlight{
  border:2px solid #fad357;
  box-shadow:0 4px 12px rgba(0,0,0,0.06);
}

.ts-download-grid{
  display:grid;
  grid-template-columns: 1fr; /* single column grid */
  gap: 20px;
  width:100%; margin:0 auto; padding:24px;
}

.ts-featurecard{
  display:flex; flex-direction:row; align-items:center;
  justify-content:space-between;
  padding:20px;
}

.ts-card-head{ flex:1; padding:0; }
.ts-card-body{ flex:2; padding:0 0 0 20px; }

/* === Compact landscape cards === */
.ts-download-grid{
  /* if the full-width bands feel too wide, UNCOMMENT the next line: */
  /* max-width: 1100px; margin: 0 auto; */
  gap: 16px; padding: 16px;
}

.ts-featurecard{
  display:flex; flex-direction:row; align-items:center; gap:16px;
  padding:16px 20px; border:1px solid #e5e5e5;
}

.ts-card-head{ display:flex; align-items:center; gap:12px; padding:0; margin:0; }
.ts-icon{ width:28px; height:28px; border-radius:6px; }
.ts-card-title{ margin:0; font-size:22px; line-height:1.1; }
.ts-card-sub{ margin:0; font-size:14px; color:#555; }

.ts-card-body{
  display:flex; align-items:center; gap:18px;
  padding:0; margin-left:auto; /* push content to the right side */
}

/* Specs inline (no bulky bullet list) */
.ts-specs{ margin:0; padding:0; list-style:none; display:flex; gap:16px; color:#444; font-size:14px; }
.ts-specs li{ position:relative; padding-left:12px; }
.ts-specs li::before{ content:"•"; position:absolute; left:0; }

/* Minimal SDM output inside cards */
.ts-featurecard .sdm_post_item, .ts-featurecard .sdm_download{
  border:none !important; background:transparent !important; padding:0 !important; margin:0 !important;
}
.ts-featurecard .sdm_left_box, .ts-featurecard .sdm_file_icon,
.ts-featurecard .sdm_post_title, .ts-featurecard .sdm_item_excerpt,
.ts-featurecard .sdm_filename, .ts-featurecard .sdm_filesize, .ts-featurecard .sdm_item_meta{ display:none !important; }
.ts-featurecard .sdm_right_box{ width:auto !important; float:none !important; padding:0 !important; }

/* Button: compact & sits at far right */
.ts-featurecard .sdm_download{ margin-left:auto !important; }
.ts-featurecard .sdm_download_link a,
.ts-featurecard .sdm_download a.sdm_download{
  background:#131313 !important; color:#fff !important; border:1px solid #131313 !important;
  border-radius:0 !important; font-weight:700 !important; padding:10px 14px !important; text-decoration:none !important;
}
.ts-featurecard .sdm_download_link a:hover,
.ts-featurecard .sdm_download a.sdm_download:hover{ background:#000 !important; }

/* Highlighted (Latest) card stays subtle */
.ts-featurecard--highlight{ border:2px solid #fad357; }
.ts-pill{ background:#fad357; color:#131313; font-weight:700; padding:3px 8px; font-size:12px; border-radius:4px; margin-left:8px; }

/* Responsive: stack neatly on small screens */
@media (max-width: 900px){
  .ts-featurecard{ flex-direction:column; align-items:flex-start; gap:10px; }
  .ts-card-body{ margin-left:0; flex-wrap:wrap; gap:10px; }
  .ts-featurecard .sdm_download a.sdm_download{ width:100% !important; text-align:center !important; }
}
/* === TSLOPE Contact Page Form === */
.contact-form-wrap .ff-form {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 16px;
}

/* Field spacing + labels */
.contact-form-wrap .ff-el-group { margin: 0; }
.contact-form-wrap .ff-el-input--label {
  font-weight: 600;
  color: #383838;
  margin-bottom: 6px;
}

/* Inputs & textarea */
.contact-form-wrap .ff-el-form-control {
  border: 1px solid #e5e5e5;
  border-radius: 10px;
  padding: 12px 14px;
  background: #ffffff;
  color: #131313;
}
.contact-form-wrap .ff-el-form-control:focus {
  outline: none;
  border-color: #ecb733; /* brand gold */
  box-shadow: 0 0 0 3px rgba(236,183,51,0.25);
}

/* Make long fields span both columns */
.contact-form-wrap .span-2 { grid-column: 1 / -1; }

/* Submit button */
.contact-form-wrap .ff_submit_btn_wrapper,
.contact-form-wrap .ff-btn-submit { grid-column: 1 / -1; }
.contact-form-wrap .ff-btn-submit {
  background: #ecb733;
  color: #131313;
  border: none;
  border-radius: 999px;
  padding: 12px 20px;
  font-weight: 700;
  cursor: pointer;
}
.contact-form-wrap .ff-btn-submit:hover { background: #c79a23; }

/* Errors */
.contact-form-wrap .ff-el-is-error .ff-el-form-control {
  border-color: #d93025;
  box-shadow: 0 0 0 3px rgba(217,48,37,0.15);
}
.contact-form-wrap .ff-el-help {
  color: #d93025;
  font-size: 0.9rem;
}

/* Mobile: stack into single column */
@media (max-width: 720px) {
  .contact-form-wrap .ff-form { grid-template-columns: 100%; }
}
/* === TSLOPE Contact Page Form (robust selectors) === */

/* 2-column grid on desktop */
.contact-form-wrap .ff-form,
.contact-form-wrap .fluentform .ff-form,
.contact-form-wrap .fluent_form_FF_ID .ff-form {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 16px;
}

/* Field spacing + labels */
.contact-form-wrap .ff-el-group { margin: 0; }
.contact-form-wrap .ff-el-input--label {
  font-weight: 600;
  color: #383838;
  margin-bottom: 6px;
}

/* Inputs & textarea */
.contact-form-wrap .ff-el-form-control {
  border: 1px solid #e5e5e5;
  border-radius: 10px;
  padding: 12px 14px;
  background: #ffffff;
  color: #131313;
}
.contact-form-wrap .ff-el-form-control:focus {
  outline: none;
  border-color: #ecb733; /* brand gold */
  box-shadow: 0 0 0 3px rgba(236,183,51,0.25);
}

/* Make long fields span both columns (use Container Class: span-2) */
.contact-form-wrap .span-2 { grid-column: 1 / -1; }

/* Submit button */
.contact-form-wrap .ff_submit_btn_wrapper,
.contact-form-wrap .ff-btn-submit {
  grid-column: 1 / -1;
}
.contact-form-wrap .ff-btn-submit {
  background: #ecb733;  /* brand gold */
  color: #131313;
  border: none;
  border-radius: 999px;
  padding: 12px 20px;
  font-weight: 700;
  cursor: pointer;
}
.contact-form-wrap .ff-btn-submit:hover { background: #c79a23; }

/* Errors */
.contact-form-wrap .ff-el-is-error .ff-el-form-control {
  border-color: #d93025;
  box-shadow: 0 0 0 3px rgba(217,48,37,0.15);
}
.contact-form-wrap .ff-el-help {
  color: #d93025;
  font-size: 0.9rem;
}

/* Mobile: stack to single column */
@media (max-width: 720px) {
  .contact-form-wrap .ff-form,
  .contact-form-wrap .fluentform .ff-form,
  .contact-form-wrap .fluent_form_FF_ID .ff-form {
    grid-template-columns: 100%;
  }
}
/* === TSLOPE Contact page form: simple 2-column FLEX layout === */
.contact-form-wrap .ff-form{
  display:flex;
  flex-wrap:wrap;
  gap:16px;                 /* space between fields */
}

/* each field = half width on desktop */
.contact-form-wrap .ff-el-group{
  width: calc(50% - 8px);   /* 2 columns accounting for gap */
  margin:0;
}

/* fields you want full width: set Container Class = span-2 in the form editor */
.contact-form-wrap .span-2,
.contact-form-wrap .ff_submit_btn_wrapper{ 
  width:100%;
}

/* inputs look nicer */
.contact-form-wrap .ff-el-input--label{
  font-weight:600; color:#383838; margin-bottom:6px;
}
.contact-form-wrap .ff-el-form-control{
  border:1px solid #e5e5e5; border-radius:10px;
  padding:12px 14px; background:#fff; color:#131313;
}
.contact-form-wrap .ff-el-form-control:focus{
  outline:none; border-color:#ecb733;
  box-shadow:0 0 0 3px rgba(236,183,51,.25);
}
.contact-form-wrap .ff-btn-submit{
  background:#ecb733; color:#131313; border:none;
  border-radius:999px; padding:12px 20px; font-weight:700; cursor:pointer;
}
.contact-form-wrap .ff-btn-submit:hover{ background:#c79a23; }

/* one column on mobile */
@media (max-width: 720px){
  .contact-form-wrap .ff-el-group{ width:100%; }
}
/* Contact form submit button - TSLOPE branding */
.contact-form-wrap .ff-btn-submit {
  background-color: #ecb733;   /* brand gold */
  color: #131313;              /* dark text */
  border: none;
  border-radius: 999px;
  padding: 12px 20px;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.contact-form-wrap .ff-btn-submit:hover {
  background-color: #c79a23;   /* darker gold on hover */
  color: #131313;
}
/* Force Fluent Forms submit button to TSLOPE yellow */
.contact-form-wrap .ff-btn-submit,
.contact-form-wrap .ff-btn.ff-btn-submit,
.contact-form-wrap .ff_submit_btn_wrapper .ff-btn,
.contact-form-wrap button[type="submit"],
.contact-form-wrap input[type="submit"] {
  background-color: #ecb733 !important; /* TSLOPE gold */
  color: #131313 !important;            /* dark text */
  border: none !important;
  border-radius: 999px !important;
  padding: 12px 20px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  transition: background-color .2s ease !important;
}

.contact-form-wrap .ff-btn-submit:hover,
.contact-form-wrap .ff-btn.ff-btn-submit:hover,
.contact-form-wrap .ff_submit_btn_wrapper .ff-btn:hover,
.contact-form-wrap button[type="submit"]:hover,
.contact-form-wrap input[type="submit"]:hover {
  background-color: #c79a23 !important; /* darker gold */
  color: #131313 !important;
}
/* ===== TSLOPE Contact Form – visual polish (no layout changes) ===== */

/* form container “card” */
.contact-form-wrap .fluentform,
.contact-form-wrap form.fluent-form {
  max-width: 880px;
  margin: 0 auto;
  background: #ffffff;
  border: 1px solid #eee;
  border-radius: 16px;
  padding: 24px 24px 28px;
  box-shadow: 0 10px 24px rgba(0,0,0,.06);
}

/* section heading (if any) */
.contact-form-wrap h3, 
.contact-form-wrap .ff_form_instance_title {
  font-weight: 800;
  letter-spacing: .2px;
  margin: 0 0 12px;
}

/* labels */
.contact-form-wrap .ff-el-input--label {
  font-weight: 600;
  color: #2b2b2b;
  margin-bottom: 6px;
}

/* make the required asterisk TSLOPE gold */
.contact-form-wrap .ff-el-required, 
.contact-form-wrap .ff-el-input--label .required {
  color: #ecb733;
}

/* inputs */
.contact-form-wrap .ff-el-form-control {
  height: 48px;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  background: #fbfbfb;
  padding: 12px 14px;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.contact-form-wrap textarea.ff-el-form-control {
  min-height: 140px;
  resize: vertical;
}

/* hover + focus states */
.contact-form-wrap .ff-el-form-control:hover {
  background: #fff;
}
.contact-form-wrap .ff-el-form-control:focus {
  outline: none;
  background: #fff;
  border-color: #ecb733;
  box-shadow: 0 0 0 3px rgba(236,183,51,.25);
}

/* help / error text */
.contact-form-wrap .ff-el-help {
  font-size: .9rem;
  color: #d93025;
}

/* subtle field spacing */
.contact-form-wrap .ff-el-group {
  margin-bottom: 14px;
}

/* placeholder color */
.contact-form-wrap ::placeholder {
  color: #a7a7a7;
}

/* submit button – already yellow but add polish */
.contact-form-wrap .ff-btn-submit,
.contact-form-wrap .ff_submit_btn_wrapper .ff-btn {
  background-color: #ecb733 !important;
  color: #131313 !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 13px 22px !important;
  font-weight: 700 !important;
  box-shadow: 0 6px 16px rgba(236,183,51,.35) !important;
  transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease !important;
}
.contact-form-wrap .ff-btn-submit:hover,
.contact-form-wrap .ff_submit_btn_wrapper .ff-btn:hover {
  background-color: #c79a23 !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(199,154,35,.35) !important;
}

/* success message (after submit) */
.contact-form-wrap .ff-message-success,
.contact-form-wrap .ff_success_message {
  border: 1px solid #eee;
  border-left: 6px solid #ecb733;
  border-radius: 12px;
  background: #fffef7;
  padding: 14px 16px;
  box-shadow: 0 6px 16px rgba(0,0,0,.06);
}

/* mobile comfort */
@media (max-width: 720px){
  .contact-form-wrap .fluentform,
  .contact-form-wrap form.fluent-form {
    padding: 18px 16px 22px;
    border-radius: 14px;
  }
  .contact-form-wrap .ff-el-form-control { height: 46px; }
}
/* Force column placement */
.contact-form-wrap .col-1 { width: calc(50% - 8px); }
.contact-form-wrap .col-2 { width: calc(50% - 8px); }
/* Submit button styled like other TSLOPE buttons */
.contact-form-wrap .ff-btn-submit,
.contact-form-wrap .ff_submit_btn_wrapper .ff-btn {
  background-color: #ecb733 !important;
  color: #131313 !important;
  border: none !important;
  border-radius: 8px !important;   /* rounded rectangle */
  padding: 12px 28px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  transition: background-color .2s ease !important;
}

.contact-form-wrap .ff-btn-submit:hover,
.contact-form-wrap .ff_submit_btn_wrapper .ff-btn:hover {
  background-color: #c79a23 !important;
  color: #131313 !important;
}
/* === TSLOPE: force 2‑column for selected fields === */
.contact-form-wrap .ff-form{ 
  display:flex; 
  flex-wrap:wrap; 
  gap:16px;
}

/* Fluent Forms / theme sets groups to 100% – override it */
.contact-form-wrap .ff-el-group{ 
  width:auto !important; 
  box-sizing:border-box;
}

/* Any field with Container Class "two-col" becomes a half-width column */
.contact-form-wrap .two-col{ 
  flex: 1 1 calc(50% - 8px) !important; 
  min-width: 280px;            /* keeps fields from getting too skinny */
}

/* Any field with Container Class "span-2" goes full width */
.contact-form-wrap .span-2{ 
  flex: 0 0 100% !important; 
}

/* One column on phones */
@media (max-width: 720px){
  .contact-form-wrap .two-col,
  .contact-form-wrap .span-2{ 
    flex: 0 0 100% !important; 
  }
}

/* (already done) submit button style kept as your brand */
/* Match office card width & style to the form */
.contact-info {
  margin: 32px auto;
  max-width: 800px; /* match your form’s width */
}

.contact-info__card {
  border: 1px solid #eee;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(0,0,0,.06);
  padding: 24px;
}

/* Inside layout */
.contact-info__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* Title + address */
.contact-info__title {
  font-weight: 700;
  margin-bottom: 12px;
}

.contact-info__addr {
  color: #555;
  line-height: 1.6;
}

/* Links + buttons */
.contact-info__links {
  margin-bottom: 12px;
}

.contact-info__links .btn-link {
  display: inline-block;
  margin-right: 14px;
  text-decoration: none;
  font-weight: 600;
  color: #0073aa;
}
.contact-info__links .btn-link:hover {
  text-decoration: underline;
}

.btn-primary, .btn-secondary {
  display: inline-block;
  padding: 10px 18px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;
}

.btn-primary {
  background: #ecb733;
  color: #131313;
}
.btn-primary:hover {
  background: #c79a23;
}

.btn-secondary {
  background: #f4f4f4;
  color: #222;
}
.btn-secondary:hover {
  background: #e9e9e9;
}
/* === TSLOPE Contact Form Labels (Heading Style, Bigger) === */
.fluent_form_3 .ff-el-input--label {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;            /* bold */
  font-size: 1.3rem;           /* slightly larger than before */
  color: #131313;              /* brand dark grey */
  margin-bottom: 8px;
  letter-spacing: 0.3px;
}

/* === Fix oversized select dropdown === */
.fluent_form_3 select {
  font-size: 1rem;             /* match normal input font */
  padding: 10px 14px;          /* same as input fields */
  border-radius: 6px;          /* consistent rounding */
  border: 1px solid #e5e5e5;   /* subtle border */
  height: auto !important;     /* stop it from stretching */
}
/* === TSLOPE Contact Form Labels (Heading Style, Bigger) === */
.fluent_form_3 .ff-el-input--label {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;        /* Bold */
  font-size: 1.3rem;       /* Larger for labels */
  color: #131313;          /* Brand dark grey */
  margin-bottom: 8px;
  letter-spacing: 0.3px;
}

/* === Fix oversized select dropdown === */
.fluent_form_3 select {
  font-size: 1rem;         /* Match normal input font */
  padding: 10px 14px;
  border-radius: 6px;
  border: 1px solid #e5e5e5;
  height: auto !important;
}

/* === Contact Page Headings (match Contact TAGAsoft + New Zealand Office) === */
.contact-page h1,
.contact-page h2.contact-office-title,
.contact-page .contact-info__title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;        /* Medium */
  font-size: 2rem;         /* ~32px (adjust if needed) */
  line-height: 1.3;
  letter-spacing: 0;
  text-transform: none;
  color: #131313;          /* Brand dark grey */
  margin: 0 0 16px;
}
/* =========================
   FIX: Don't style empty Woo notice wrapper
   ========================= */
.woocommerce-notices-wrapper { 
  background: transparent !important; 
  border: 0 !important; 
  box-shadow: none !important; 
  padding: 0 !important; 
  margin: 0 !important;
}
/* Hide wrapper completely if there's no notice inside */
.woocommerce-notices-wrapper:empty { display: none !important; }

/* =========================
   TSLOPE Woo notices (message/info/error)
   ========================= */
:root{
  --ts-dark:#000;
  --ts-gold:#ecb733;
  --ts-text:#fff;
  --ts-radius:12px;
  --ts-font:Montserrat, Roboto, Arial, sans-serif;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  background:var(--ts-dark) !important;
  border:none !important;
  border-radius:var(--ts-radius) !important;
  color:var(--ts-text) !important;
  font-family:var(--ts-font) !important;
  font-size:1.05rem !important;
  font-weight:800 !important;
  text-align:center !important;
  padding:16px 20px !important;
  margin:18px auto !important;
  max-width:860px;
  box-shadow:0 1px 2px rgba(0,0,0,.08);
}
/* Remove the default Woo icon */
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before{ display:none !important; }

/* Links inside notices */
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a{
  color:var(--ts-gold) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  border-bottom:2px solid transparent;
}
.woocommerce-message a:hover,
.woocommerce-info a:hover,
.woocommerce-error a:hover{
  border-bottom-color:var(--ts-gold);
}

/* Cart “empty” message is one of those notices — keep spacing sane */
.woocommerce-cart .cart-empty { margin-top:0 !important; }

/* =========================
   Buttons (for consistency)
   ========================= */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button{
  background:var(--ts-gold) !important;
  color:#111 !important;
  border:none !important;
  border-radius:10px !important;
  font-family:var(--ts-font) !important;
  font-weight:800 !important;
  padding:14px 22px !important;
  text-transform:none !important;
  box-shadow:none !important;
  transition:transform .08s ease, background .15s ease;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce .button:hover{
  background:#f2c85b !important;
  transform:translateY(-1px);
}
/* ============================
   TSLOPE / TAGAsoft Branding
   ============================ */

/* --- DOWNLOAD PAGE LOGIN LINK (page-id-1255 only) --- */
.page-id-1255 .fl-module-heading a {
  display: inline-block;
  background: #000;
  color: #fff !important;
  padding: 14px 28px;
  border-radius: 10px;
  font-weight: 700;
  font-family: Montserrat, Roboto, Arial, sans-serif;
  text-decoration: none;
  transition: all 0.2s ease;
}
.page-id-1255 .fl-module-heading a:hover {
  background: #ecb733;
  color: #111 !important;
}

/* --- WOO NOTICES (cart, checkout, account) --- */
.woocommerce-info,
.woocommerce-message,
.woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info {
  border: none !important;
  background: #000 !important;
  color: #fff !important;
  border-radius: 10px;
  padding: 16px 20px !important;
  font-family: Montserrat, Roboto, Arial, sans-serif;
  font-weight: 600;
  margin: 20px 0;
  text-align: center;
}

/* Ensure links inside notices are branded */
.woocommerce-info a,
.woocommerce-message a,
.woocommerce-error a {
  color: #ecb733 !important;
  font-weight: 700;
  text-decoration: underline;
}
.woocommerce-info a:hover,
.woocommerce-message a:hover,
.woocommerce-error a:hover {
  color: #fff !important;
  background: transparent;
}
/* ============================
   CART PAGE POLISH
   ============================ */

/* Center the notices area and keep notices to content width */
.woocommerce-cart .woocommerce-notices-wrapper { 
  text-align: center;
}

.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-error {
  display: inline-block;          /* shrink to content */
  margin: 16px auto !important;   /* center in the row */
  padding: 12px 18px !important;  /* a bit tighter */
  border-radius: 10px !important; /* keep our brand radius */
  max-width: 980px;               /* guardrail on wide screens */
  line-height: 1.5;
}

/* Hide any empty/ghost notices some plugins output */
.woocommerce .woocommerce-info:empty,
.woocommerce .woocommerce-message:empty,
.woocommerce .woocommerce-error:empty,
.woocommerce-notices-wrapper:empty {
  display: none !important;
}

/* Brand the "Return to shop" button and center it */
.woocommerce-cart .return-to-shop { 
  text-align: center; 
}

.woocommerce-cart .return-to-shop .button {
  background: #ecb733 !important;
  color: #111 !important;
  border: 0 !important;
  border-radius: 10px !important;
  padding: 14px 22px !important;
  font-weight: 800 !important;
  text-transform: none !important;
  box-shadow: none !important;
  transition: background .2s ease;
}
.woocommerce-cart .return-to-shop .button:hover {
  background: #d8a52e !important;
  color: #111 !important;
}
/* ===== TSLOPE / TAGAsoft — SDM login / error message ===== */
.sdm-login-required,
.sdm_login_msg,
.sdm-download-error,
.sdm_download_error,
.sdm-download .sdm-login-msg,
.sdm_download_item .sdm_login_msg {
  background:#000;
  color:#fff;
  border:1px solid #000;
  border-radius:12px;
  padding:16px 18px;
  margin:18px 0;
  font-family: Montserrat, Roboto, Arial, sans-serif;
  line-height:1.55;
  text-align:center;
  box-shadow:0 1px 2px rgba(0,0,0,.08);
}

.sdm-login-required a,
.sdm_login_msg a,
.sdm-download-error a,
.sdm_download_error a {
  color:#ecb733;
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid transparent;
}

.sdm-login-required a:hover,
.sdm_login_msg a:hover,
.sdm-download-error a:hover,
.sdm_download_error a:hover {
  color:#ecb733;
  border-bottom-color:#ecb733;
}

/* Optional: make SDM download buttons match brand if you use the fancy templates */
.sdm_download_button,
a.sdm_download,
.sdm_download_btn,
.sdm_download_button .sdm_download_link {
  display:inline-block;
  background:#000 !important;
  color:#fff !important;
  border-radius:10px !important;
  padding:14px 22px !important;
  font-weight:800 !important;
  text-decoration:none !important;
  box-shadow:none !important;
}

.sdm_download_button:hover,
a.sdm_download:hover,
.sdm_download_btn:hover,
.sdm_download_button .sdm_download_link:hover {
  background:#ecb733 !important;
  color:#111 !important;
  transform:translateY(-1px);
  transition:background .2s ease, transform .1s ease;
}
/* --- Brand the SDM login required notice --- */
.sdm_login_msg {
  background: #ffffff;             /* clean white background */
  border: 2px solid #ecb733;       /* TAGA yellow border */
  color: #131313;                  /* dark text */
  padding: 20px 25px;
  border-radius: 12px;
  text-align: center;
  font-family: 'Montserrat', 'Roboto', sans-serif;
  font-size: 1.1rem;
  line-height: 1.6;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  max-width: 600px;
  margin: 40px auto;
}

/* Headline emphasis */
.sdm_login_msg strong,
.sdm_login_msg b {
  color: #131313;
}

/* Style the link inside the box */
.sdm_login_msg a {
  display: inline-block;
  margin-top: 12px;
  padding: 10px 20px;
  background: #ecb733;
  color: #131313;
  font-weight: 600;
  text-decoration: none;
  border-radius: 8px;
  transition: background 0.2s ease;
}

.sdm_login_msg a:hover {
  background: #fad357;             /* lighter yellow hover */
  text-decoration: none;
}
/* ================================
   TSLOPE Login Gate Styling
   ================================ */
body.logged-in .ts-login-gate {
  display: none !important;
}

.ts-login-gate {
  background: #000;
  color: #fff;
  border-radius: 12px;
  padding: 40px 24px;
  margin: 0 0 28px;
  text-align: center;
  box-shadow: 0 3px 12px rgba(0,0,0,0.25);
}

.ts-login-gate h2 {
  margin: 0 0 14px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff; /* white text on black */
}

.ts-login-gate p {
  margin: 0 0 18px;
  font-size: 1.05rem;
  color: #fff; /* white text on black */
  opacity: 0.9;
}

.ts-login-gate .btn {
  display: inline-block;
  background: var(--brand, #ecb733);
  color: #111 !important;
  border-radius: 6px;
  padding: 14px 26px;
  font-weight: 700;
  text-decoration: none;
  font-size: 1.05rem;
  transition: background 0.2s ease, transform 0.1s ease;
}

.ts-login-gate .btn:hover {
  background: #fad357;
  transform: translateY(-1px);
}

/* Dim content behind login gate */
body:not(.logged-in) .tsd-grid {
  opacity: 0.5;
  pointer-events: none;
  user-select: none;
}
/* Force pure white text on the login gate */
.ts-login-gate,
.ts-login-gate * { color:#fff !important; }

.ts-login-gate h1,
.ts-login-gate h2,
.ts-login-gate h3 {
  color:#fff !important;
  opacity:1 !important;
}

/* (Optional) make the title a touch bolder/bigger */
.ts-login-gate h1,
.ts-login-gate h2 {
  font-weight:800 !important;
  letter-spacing:.02em;
}
/* General font + layout */
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation {
  font-family: Montserrat, Roboto, Arial, sans-serif;
  color: #131313;
}

/* Navigation sidebar → styled buttons */
.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0 0 20px 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.woocommerce-MyAccount-navigation li {
  flex: 1 1 140px;
}

.woocommerce-MyAccount-navigation a {
  display: block;
  padding: 12px 20px;
  border-radius: 8px;
  background: #131313;
  color: #fff !important;
  text-align: center;
  font-weight: 600;
  transition: all .2s ease;
  text-decoration: none !important;
}

.woocommerce-MyAccount-navigation a:hover {
  background: #ecb733;
  color: #131313 !important;
}

/* Center content area */
.woocommerce-MyAccount-content {
  padding: 20px;
}

/* Highlight "Download TSLOPE" button */
.ts-download-btn {
  display: inline-block;
  margin: 20px 0;
  padding: 16px 32px;
  background: #ecb733;
  color: #131313;
  font-size: 1.2rem;
  font-weight: 700;
  border-radius: 10px;
  text-align: center;
  text-decoration: none !important;
  transition: background .2s ease;
}

.ts-download-btn:hover {
  background: #131313;
  color: #fff;
}
/* Centered big gold download button on My Account */
.ts-myacct-download-wrap{
  text-align:center;
  margin: 32px 0 12px;
}

.ts-download-btn{
  display:inline-block;
  background:#ecb733;          /* gold background */
  color:#111 !important;       /* black text */
  text-decoration:none !important;
  font-weight:900;
  font-size:1.4rem;            /* larger text */
  line-height:1.2;
  padding:20px 36px;           /* bigger button */
  border-radius:12px;
  box-shadow:0 3px 0 #caa12e;  /* subtle depth */
  transition:transform .06s ease, background .15s ease;
}

.ts-download-btn:hover{
  background:#ffd257;          /* lighter gold hover */
  transform:translateY(-2px);
  color:#111 !important;       /* keep black text */
}
/* Wrapper centers the button */
.ts-myacct-download-wrap{
  text-align:center;
  margin: 40px 0 20px; /* more breathing room */
  width:100%;
}

/* Big centered button */
.ts-download-btn{
  display:inline-block;
  background:#ecb733;          /* gold */
  color:#111 !important;       /* black text */
  text-decoration:none !important;
  font-weight:900;
  font-size:1.6rem;            /* bigger font */
  line-height:1.2;
  padding:22px 48px;           /* generous padding */
  border-radius:12px;
  box-shadow:0 3px 0 #caa12e;
  transition:transform .08s ease, background .15s ease;
  text-align:center;
}

.ts-download-btn:hover{
  background:#ffd257;          /* lighter gold hover */
  transform:translateY(-2px);
  color:#111 !important;       /* keep text black */
}
@media (max-width: 600px) {
  .ts-license-card p,
  .ts-license-card li,
  .ts-license-card .ts-price {
    font-size: 1rem;   /* ~16px */
    line-height: 1.5;
  }
  .ts-license-card h3 {
    font-size: 1.25rem;
  }
}
body {
  font-family: Montserrat, Roboto, "Open Sans", Arial, sans-serif;
}
/* About page HTML module paragraphs */
body.page-id-623 .fl-module-html .fl-module-content p {
  font-size: 1.2rem !important; /* match Our Focus */
  line-height: 1.7 !important;
  color: #131313 !important;
}
.page-id-623 .ts-about-links ul {
  padding-left: 1.2rem;   /* adjust this until it lines up nicely */
  margin-left: 0;         /* removes the big default browser indent */
}

.page-id-623 .ts-about-links li {
  text-indent: 0;         /* keeps text inline with the bullet */
}
/* Constrain logo only */
.site-header img.custom-logo {
  max-width: 1200px;   /* same as content width */
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;      /* center within header */
}
/* Global brand tokens */
:root {
  --ts-dark:#131313;
  --ts-light:#ffffff;
  --ts-gold:#ecb733;
}

/* Utility: dark block with brand link colors */
.dark-block {
  background: var(--ts-dark);
  color: var(--ts-light);
  border-radius: 16px;
}
.dark-block * { color: var(--ts-light); opacity:1; }
.dark-block a { color: var(--ts-gold); text-decoration: none; }
.dark-block a:hover { text-decoration: underline; }

/* Utility: center stack spacing */
.stack-center { max-width: 1100px; margin:0 auto; padding:24px 16px; text-align:left; }
.stack-center .center { text-align:center; }

/* Utility: brand button */
.btn-gold {
  background: var(--ts-gold); color:#111;
  border-radius:10px; padding:14px 24px; font-weight:800;
  display:inline-block; border:0;
}
.btn-gold:hover { background:#111; color:#fff; }
/* ===== TSLOPE Book a Demo page ===== */
.ts-wrap{max-width:1100px;margin:0 auto;padding:24px;}
.ts-hero{padding:8px 0 16px;}
.ts-hero h1{font-size:clamp(28px,3.2vw,40px);margin:0 0 8px;color:#131313;}
.lead{font-size:clamp(16px,2vw,18px);color:#383838;max-width:800px;}

/* Black callout box */
.ts-callout{
  background:#131313;color:#fff;
  padding:18px 24px;margin:20px 0;border-radius:12px;
}
.ts-callout p{margin:0;font-size:16px;line-height:1.4;}
.ts-callout a{color:#ecb733;font-weight:600;}

.ts-grid{display:grid;gap:18px;grid-template-columns:1fr;}
@media(min-width:980px){.ts-grid{grid-template-columns:1fr 1fr;}}
.ts-card{background:#fff;border:1px solid #e5e5e5;border-radius:0;box-shadow:0 1px 0 rgba(0,0,0,.04);padding:18px;}
.ts-list{margin:0 0 12px 18px;}
.ts-note{font-size:14px;}
.ts-legal{font-size:12px;color:#383838;margin-top:8px;}
a{color:#131313;text-decoration-thickness:2px;}      /* dark on light */
.ts-card a{color:#ecb733;}                           /* gold links inside cards */

/* Fluent Forms – brand fit */
.fluentform .ff-el-input--content input,
.fluentform .ff-el-input--content textarea,
.fluentform .ff-el-input--content select{
  font-size:16px;color:#131313;background:#fff;border:1px solid #cfcfcf;border-radius:6px;padding:10px;
}
.fluentform .ff-el-group .ff-el-label{font-weight:600;}
.fluentform .ff-btn-submit{
  background:#ecb733;color:#131313;font-weight:700;border:0;border-radius:12px;padding:12px 18px;width:100%;text-align:center;
}
.fluentform .ff-btn-submit:hover{filter:brightness(.95);}
/* Callout box text + links */
.ts-callout {
  background:#131313;
  color:#ffffff !important; /* force white */
  padding:18px 24px;
  margin:20px 0;
  border-radius:12px;
}
.ts-callout p {
  margin:0;
  font-size:16px;
  line-height:1.4;
  color:#ffffff !important; /* ensure white text */
}
.ts-callout a {
  color:#ecb733 !important; /* gold links */
  font-weight:600;
  text-decoration:none;
}
.ts-callout a:hover {
  text-decoration:underline;
}
.ts-wrap{max-width:1100px;margin:0 auto;padding:24px;}
.ts-hero h1{font-size:clamp(28px,3.2vw,40px);margin:0 0 8px;color:#131313;}
.lead{font-size:clamp(16px,2vw,18px);color:#383838;max-width:800px;}
.ts-card{background:#fff;border:1px solid #e5e5e5;box-shadow:0 1px 0 rgba(0,0,0,.04);padding:18px;}
.ts-list{margin:0 0 12px 18px;}
.ts-note{font-size:14px;color:#383838;}
.ts-btn{display:inline-block;padding:12px 18px;border-radius:12px;background:#ecb733;color:#131313;font-weight:700;text-decoration:none;}
.ts-btn:hover{filter:brightness(.95);}
.ts-card a{color:#ecb733;}
/* Style the Fluent Forms submit button */
.fluentform .ff-btn-submit,
.fluentform .ff-btn {
  background-color: #ecb733 !important; /* brand yellow */
  color: #131313 !important;            /* dark text for contrast */
  font-weight: 600;
  border: none;
  border-radius: 12px;
  padding: 12px 24px;
  text-align: center;
  display: inline-block;
}

.fluentform .ff-btn-submit:hover,
.fluentform .ff-btn:hover {
  filter: brightness(0.9);
  cursor: pointer;
}
/* Fix WooCommerce cart notices (black background issue) */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
  background: #f9f9f9 !important;
  color: #111 !important;
  border: 1px solid #e5e5e5 !important;
  padding: 12px 16px !important;
  border-radius: 6px !important;
}
.woocommerce-message a.button {
  background: #ecb733 !important;
  color: #111 !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
}
/* Make WooCommerce notices readable site-wide */
.woocommerce-notices-wrapper,
.woocommerce .woocommerce-NoticeGroup,
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error li {
  background: #f9f9f9 !important;
  color: #111 !important;
  border: 1px solid #e5e5e5 !important;
  padding: 12px 16px !important;
  border-radius: 8px !important;
}

/* Buttons inside notices */
.woocommerce .woocommerce-message a.button,
.woocommerce .woocommerce-info a.button,
.woocommerce .woocommerce-error a.button,
.woocommerce a.button.wc-forward {
  background: #ecb733 !important;
  color: #111 !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  padding: 10px 16px !important;
}

/* Optional: on the CHECKOUT page, hide notices entirely */
.woocommerce-checkout .woocommerce-notices-wrapper,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-error {
  /* uncomment to hide notices on checkout if you prefer */
  /* display: none !important; */
}
/* Section titles consistent with About page */
.ts-section-title {
  font-family: 'Montserrat', 'Roboto', Arial, sans-serif;
  font-size: 32px;
  font-weight: 700;
  color: #131313;             /* dark text */
  text-align: left;
  margin: 50px 0 25px;
  position: relative;
  padding-bottom: 10px;
}

.ts-section-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 80px;
  height: 4px;
  background-color: #ecb733;  /* brand gold */
  border-radius: 2px;
}
/* ===== Pagination Styling (Events & Reviews, Blog, etc.) ===== */
.pagination,
.page-numbers {
  font-family: 'Montserrat', 'Roboto', Arial, sans-serif;
  font-weight: 600;
}

/* Default pagination link */
.pagination a.page-numbers,
.pagination span.page-numbers {
  display:inline-block;
  padding:10px 16px;
  margin:0 4px;
  border-radius:6px;
  border:1px solid #e5e5e5;
  background:#fff;
  color:#131313;
  text-decoration:none;
  transition: all 0.2s ease-in-out;
}

/* ===== Force pagination to TAGAsoft brand ===== */

/* General container */
.navigation.pagination,
.nav-links,
.page-numbers {
  text-align: center;
  margin: 40px 0;
  font-family: 'Montserrat', 'Roboto', Arial, sans-serif;
}

/* Page numbers (default state) */
.page-numbers {
  display:inline-block;
  padding:10px 16px;
  margin:0 4px;
  border-radius:6px;
  border:1px solid #e5e5e5 !important;
  background:#fff !important;
  color:#131313 !important;
  text-decoration:none !important;
  transition:all 0.2s ease-in-out;
}

/* Current page */
.page-numbers.current {
  background:#ecb733 !important;   /* brand gold */
  border-color:#ecb733 !important;
  color:#131313 !important;
  font-weight:700;
}

/* Hover state */
.page-numbers:not(.current):hover {
  background:#fad357 !important;   /* lighter gold */
  border-color:#fad357 !imp
/* ===== Center pagination ===== */
.navigation.pagination,
.nav-links {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 30px;
}
/* Remove Beaver column gutter between the two header CTAs */
.cta-free .fl-col-content { padding-right: 0 !important; }
.cta-login .fl-col-content { padding-left: 6px !important; } /* <-- your tiny gap */

/* Ensure buttons themselves don't add extra margins */
.cta-free .fl-button, .cta-login .fl-button { margin: 0 !important; }

/* If the header row compresses on mobile, keep a touch of spacing */
@media (max-width: 768px){
  .cta-login .fl-col-content { padding-left: 8px !important; }
}
/* Tighten spacing between Free Trial and Login in the top menu */
.header-cta-row .fl-col-group{
  display:flex !important;          /* turn columns into a tight flex row */
  justify-content:flex-end;
  align-items:center;
  gap:6px;                          /* <- set the exact space between buttons (try 4px) */
}
.header-cta-row .fl-col{
  width:auto !important;
  flex:0 0 auto !important;         /* columns shrink to content */
}
.header-cta-row .fl-col-content{
  padding:0 !important;             /* kill Beaver's column gutter */
}
.header-cta-row .fl-module{
  margin:0 !important;              /* remove module margins */
}

/* Optional: a touch more breathing room on mobile */
@media (max-width: 768px){
  .header-cta-row .fl-col-group{ gap:8px; }
}
/* ===== Highlight TSLOPE menu link (no effect on SHOP) ===== */

/* 1. Menu item using custom class 'tslope-highlight' */
.fl-page-nav .menu li.tslope-highlight > a,
header .menu li.tslope-highlight > a {
  color: #ecb733 !important; /* TAGA gold */
  font-weight: 600;
}

/* 2. Hover + active state */
.fl-page-nav .menu li.tslope-highlight > a:hover,
header .menu li.tslope-highlight.current-menu-item > a {
  color: #fad357 !important; /* lighter gold */
}

/* 3. Fallback for TSLOPE link only (not 'shop') */
.fl-page-nav .menu a[href="/tslope/"],
.fl-page-nav .menu a[href="https://tagasoft.com/tslope/"],
header .menu a[href="/tslope/"],
header .menu a[href="https://tagasoft.com/tslope/"] {
  color: #ecb733 !important;
}
.fl-page-nav .menu a[href="/tslope/"]:hover,
.fl-page-nav .menu a[href="https://tagasoft.com/tslope/"]:hover,
header .menu a[href="/tslope/"]:hover,
header .menu a[href="https://tagasoft.com/tslope/"]:hover {
  color: #fad357 !important;
}
/* ===== TSLOPE highlight (Beaver submenu structure) ===== */

/* Normal state */
li#menu-item-1044 .fl-has-submenu-container > a,
li.tslope-highlight .fl-has-submenu-container > a {
  color: #ecb733 !important;   /* TAGA gold */
  font-weight: 600 !important;
}

/* Hover / focus / open states */
li#menu-item-1044 .fl-has-submenu-container > a:hover,
li.tslope-highlight .fl-has-submenu-container > a:hover,
li#menu-item-1044.fl-has-submenu.focus .fl-has-submenu-container > a,
li#menu-item-1044.current-menu-item .fl-has-submenu-container > a,
li.tslope-highlight.fl-has-submenu.focus .fl-has-submenu-container > a {
  color: #fad357 !important;   /* lighter gold on hover/open */
}

/* Mobile/collapsed menu too */
.fl-page-nav-collapse li#menu-item-1044 .fl-has-submenu-container > a,
.fl-page-nav-collapse li.tslope-highlight .fl-has-submenu-container > a {
  color: #ecb733 !important;
}
.fl-page-nav-collapse li#menu-item-1044 .fl-has-submenu-container > a:hover,
.fl-page-nav-collapse li.tslope-highlight .fl-has-submenu-container > a:hover {
  color: #fad357 !important;
}
/* === TAGAsoft Login Theme ====================================== */
:root{
  --taga-gold:#ecb733;
  --taga-gold-hover:#fad357;
  --taga-black:#131313;
  --taga-mid:#383838;
  --taga-mid-2:#4f4f4f;
  --taga-light:#e5e5e5;
}

/* Background + center */
body.login {
  background: var(--taga-black) !important;
}
body.login #login {
  width: 360px;
  padding: 28px 26px 26px !important;
  background: #161616;
  border: 1px solid var(--taga-mid);
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}

/* Logo */
body.login h1 a {
  background-image: url("YOUR_LOGO_URL_HERE") !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  width: 260px !important;
  height: 70px !important;
  margin: 0 auto 12px !important;
}

/* Inputs */
body.login form .input, 
body.login input[type="text"],
body.login input[type="password"] {
  background: #1c1c1c !important;
  border: 1px solid var(--taga-mid) !important;
  color: #fff !important;
  box-shadow: none !important;
  border-radius: 8px !important;
}
body.login .input:focus {
  border-color: var(--taga-gold) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(236,183,51,.2) !important;
}

/* Primary button (Log In) */
body.login .button-primary, 
body.login .wp-core-ui .button-primary {
  background: var(--taga-gold) !important;
  border-color: var(--taga-gold) !important;
  color: #131313 !important;
  font-weight: 700;
  border-radius: 10px !important;
  padding: 8px 16px !important;
  height: auto !important;
}
body.login .button-primary:hover,
body.login .wp-core-ui .button-primary:hover {
  background: var(--taga-gold-hover) !important;
  border-color: var(--taga-gold-hover) !important;
  color: #000 !important;
}

/* Secondary buttons (back, register, etc.) */
body.login .wp-core-ui .button,
body.login .wp-core-ui .button-secondary {
  background: var(--taga-mid-2) !important;
  border-color: var(--taga-mid-2) !important;
  color: #fff !important;
  border-radius: 10px !important;
}
body.login .wp-core-ui .button:hover {
  background: var(--taga-mid) !important;
  border-color: var(--taga-mid) !important;
}

/* Links */
body.login #nav a, 
body.login #backtoblog a {
  color: var(--taga-gold) !important;
  text-decoration: none !important;
  font-weight: 600;
}
body.login #nav a:hover,
body.login #backtoblog a:hover {
  color: var(--taga-gold-hover) !important;
  text-decoration: underline !important;
}

/* Messages & errors */
body.login .message,
body.login .notice,
body.login .success {
  background: #161616 !important;
  border-left: 4px solid var(--taga-gold) !important;
  color: #fff !important;
}
body.login .notice-error, 
body.login #login_error {
  background: #1a1a1a !important;
  border-left: 4px solid #ff5757 !important;
  color: #fff !important;
}

/* Remember me + labels */
body.login label { color:#fff !important; }
body.login .forgetmenot input[type=checkbox] { accent-color: var(--taga-gold); }

/* reCAPTCHA/2FA containers (if present) */
body.login .grecaptcha-badge,
body.login .itsec-passwordless-login__button { filter:none; }

/* Mobile tweaks */
@media (max-width:480px){
  body.login #login { width: 88% !important; }
  body.login h1 a { width: 220px !important; height: 60px !important; }
}
.woocommerce-MyAccount-content .taga-download{
  background:#ecb733; border-color:#ecb733; color:#131313;
  border-radius:10px; padding:8px 16px; font-weight:700;
}
.woocommerce-MyAccount-content .taga-download:hover{
  background:#fad357; border-color:#fad357; color:#000;
}
.woocommerce-MyAccount-content a,
.woocommerce-MyAccount-content a:visited {
  color: #c89d2a !important;  /* darker gold for readability */
  text-decoration: underline;
}

.woocommerce-MyAccount-content a,
.woocommerce-MyAccount-content a:visited {
  color: #131313 !important;  /* dark grey text */
  text-decoration: underline;
}

.woocommerce-MyAccount-content a:hover {
  color: #ecb733 !important;  /* gold hover */
}
/* ===== Smooth shrink-on-scroll header ===== */
.fl-page-header {
  transition: all 0.3s ease-in-out;
  padding: 25px 0; /* initial header padding */
}

.fl-page-header.shrink {
  padding: 10px 0; /* smaller header on scroll */
}

.fl-page-header .fl-photo-content img {
  transition: all 0.3s ease-in-out;
  max-width: 200px; /* normal size */
}

.fl-page-header.shrink .fl-photo-content img {
  max-width: 150px; /* shrinks slightly on scroll */
}
/* ===== TAGAsoft checkout theme ===== */
:root{
  --brand-text: #1d1d1d;            /* dark text */
  --brand-primary: #f0b400;         /* gold */
  --brand-primary-ink: #2a2300;     /* legible text on gold */
  --brand-muted: #6b6b6b;           /* secondary text */
  --brand-border: #e3e3e3;          /* input borders */
  --brand-bg: #ffffff;              /* cards/backgrounds */
  --radius: 10px;
}

/* Headings */
.woocommerce-checkout h3 {
  font-weight: 700;
  color: var(--brand-text);
  letter-spacing: .2px;
  margin-top: 8px;
  margin-bottom: 14px;
}

/* Labels + required asterisk */
.woocommerce form .form-row label {
  font-weight: 600;
  color: var(--brand-text);
}
.woocommerce form .required { color: var(--brand-primary); font-weight: 700; }

/* Inputs (text/select/textarea) */
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
  border: 1px solid var(--brand-border);
  background: var(--brand-bg);
  border-radius: var(--radius);
  padding: 11px 13px;
  font-size: 16px;
  color: var(--brand-text);
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.woocommerce form .form-row .input-text::placeholder { color: #9a9a9a; }

/* Focus state */
.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus {
  outline: none;
  border-color: var(--brand-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand-primary) 20%, transparent);
}

/* Row spacing / layout tidy */
.woocommerce form .form-row { margin-bottom: 12px; }
#billing_company_field { margin-top: 6px; } /* Organisation/Company field */

/* Order review table */
.woocommerce-checkout-review-order-table,
.woocommerce table.shop_table {
  border: 1px solid var(--brand-border);
  border-radius: var(--radius);
  overflow: hidden;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  padding: 12px 14px;
}
.woocommerce table.shop_table thead th {
  background: #fafafa;
  color: var(--brand-text);
  font-weight: 700;
}

/* Payment box */
.woocommerce-checkout #payment {
  background: var(--brand-bg);
  border: 1px solid var(--brand-border);
  border-radius: var(--radius);
  padding: 14px;
}
.woocommerce-checkout #payment div.payment_box {
  background: #fff7da;                  /* subtle gold tint */
  border-radius: calc(var(--radius) - 2px);
}

/* Buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #place_order {
  background: var(--brand-primary);
  color: var(--brand-primary-ink);
  border: none;
  border-radius: var(--radius);
  padding: 12px 18px;
  font-weight: 700;
  box-shadow: 0 2px 0 rgba(0,0,0,.06);
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #place_order:hover {
  filter: brightness(0.95);
  transform: translateY(-1px);
}

/* Notices (errors/info/success) */
.woocommerce-error, .woocommerce-info, .woocommerce-message {
  border-radius: var(--radius);
}
.woocommerce-info {
  border-color: var(--brand-primary);
}

/* Optional: calm the “Have a coupon?” bar */
.woocommerce-form-coupon-toggle .woocommerce-info {
  background: #fff9e5;
  border-color: var(--brand-primary);
}

/* Mobile niceties */
@media (max-width: 768px){
  .woocommerce form .form-row { margin-bottom: 10px; }
  .woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 10px 12px; }
}
/* --- Keep submenu items white even when they're the active page --- */
.fl-page-nav .menu .sub-menu li.current-menu-item > a,
.fl-page-nav .menu .sub-menu li.current-menu-ancestor > a,
.fl-page-nav .menu .sub-menu li.current_page_item > a,
.fl-page-nav .menu .sub-menu li.current_page_ancestor > a {
  color: #fff !important;
}

/* Submenu hover/focus = gold */
.fl-page-nav .menu .sub-menu a:hover,
.fl-page-nav .menu .sub-menu a:focus {
  color: #ecb733 !important;
}
/* --- Reset submenu colours --- */

/* Make ALL submenu items white, including the current page */
.fl-page-nav .sub-menu li[class*="current-"] > a,
.fl-page-nav .sub-menu li[class*="current-"] > a .menu-text {
  color: #fff !important;
}

/* Keep hover/focus gold */
.fl-page-nav .sub-menu a:hover,
.fl-page-nav .sub-menu a:focus,
.fl-page-nav .sub-menu a:hover .menu-text,
.fl-page-nav .sub-menu a:focus .menu-text {
  color: #ecb733 !important;
}

/* --- Highlight only "Download TSLOPE" in gold --- */
/* Match both link and inner span, covers desktop + mobile */
.fl-page-nav a[href*="/download-tslope"],
.fl-page-nav a[href*="/download-tslope"] .menu-text,
.fl-mobile-nav a[href*="/download-tslope"],
.fl-mobile-nav a[href*="/download-tslope"] .menu-text {
  color: #ecb733 !important;
  font-weight: 700 !important;
}

/* Optional: turn it white on hover for contrast */
.fl-page-nav a[href*="/download-tslope"]:hover,
.fl-page-nav a[href*="/download-tslope"]:hover .menu-text,
.fl-mobile-nav a[href*="/download-tslope"]:hover,
.fl-mobile-nav a[href*="/download-tslope"]:hover .menu-text {
  color: #fff !important;
}
/* Keep ALL submenu items white even when they are the current page */
.fl-page-nav .menu .sub-menu li[class*="current-"] > a,
.fl-page-nav .menu .sub-menu li[class*="current-"] > a .menu-text {
  color: #fff !important;
}

/* Submenu hover/focus = gold */
.fl-page-nav .menu .sub-menu a:hover,
.fl-page-nav .menu .sub-menu a:focus,
.fl-page-nav .menu .sub-menu a:hover .menu-text,
.fl-page-nav .menu .sub-menu a:focus .menu-text {
  color: #ecb733 !important;
}

/* FORCE "Download TSLOPE" gold (desktop + mobile, anchor + inner span) */
header .fl-page-nav .menu > li.download-highlight > a,
header .fl-page-nav .menu > li.download-highlight > a .menu-text,
.fl-mobile-nav .menu > li.download-highlight > a,
.fl-mobile-nav .menu > li.download-highlight > a .menu-text {
  color: #ecb733 !important;
  font-weight: 700 !important;
}

/* Optional: white on hover for contrast */
header .fl-page-nav .menu > li.download-highlight > a:hover,
header .fl-page-nav .menu > li.download-highlight > a:focus,
header .fl-page-nav .menu > li.download-highlight > a:hover .menu-text,
header .fl-page-nav .menu > li.download-highlight > a:focus .menu-text,
.fl-mobile-nav .menu > li.download-highlight > a:hover,
.fl-mobile-nav .menu > li.download-highlight > a:focus,
.fl-mobile-nav .menu > li.download-highlight > a:hover .menu-text,
.fl-mobile-nav .menu > li.download-highlight > a:focus .menu-text {
  color: #fff !important;
}
#menu-item-18291 > a,
#menu-item-18291 > a .menu-text { color:#ecb733 !important; font-weight:700 !important; }
#menu-item-18291 > a:hover,
#menu-item-18291 > a:focus,
#menu-item-18291 > a:hover .menu-text,
#menu-item-18291 > a:focus .menu-text { color:#fff !important; }
/* TAGAsoft Font Stack */
body, p, li, input, textarea, select, button {
  font-family: 'Roboto', 'Open Sans', system-ui, -apple-system, Segoe UI, Arial, sans-serif;
  font-weight: 400;
}

h1, h2, h3, h4, h5, h6,
.fl-module-heading h1, .fl-module-heading h2, .fl-module-heading h3,
.fl-heading, .fl-rich-text h1, .fl-rich-text h2, .fl-rich-text h3,
.site-title, .entry-title, .woocommerce .page-title {
  font-family: 'Montserrat', 'Roboto', Arial, sans-serif;
  font-weight: 600;
}

.menu a, .button, .fl-button {
  font-family: 'Montserrat', 'Roboto', Arial, sans-serif;
  font-weight: 600;
}
/* TSLOPE My Account layout */
.woocommerce-account .entry-content {
  max-width: 980px;
  margin: 40px auto;
  padding: 0 20px;
  font-family: "Montserrat", "Roboto", Arial, sans-serif;
}

/* Headings */
.woocommerce-account .entry-content h2,
.woocommerce-account .entry-content h1 {
  font-family: "Montserrat", "Roboto", Arial, sans-serif;
  font-weight: 600;
  color: #131313;
  letter-spacing: 0.02em;
}

/* Body text */
.woocommerce-account .entry-content,
.woocommerce-account .entry-content p,
.woocommerce-account label {
  color: #383838;
  font-size: 15px;
  line-height: 1.5;
}
/* Two column wrappers */
.woocommerce-account .u-columns {
  gap: 32px;
}

/* Login and Register cards */
.woocommerce-account .u-column1,
.woocommerce-account .u-column2 {
  background: #ffffff;
  border: 1px solid #e5e5e5;
  border-radius: 12px;
  padding: 28px 24px 24px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
}

/* Column headings */
.woocommerce-account .u-column1 h2,
.woocommerce-account .u-column2 h2 {
  margin-bottom: 18px;
  font-size: 22px;
}
/* Labels */
.woocommerce-account .entry-content form label {
  font-weight: 500;
  margin-bottom: 6px;
}

/* Inputs */
.woocommerce-account .entry-content input.input-text,
.woocommerce-account .entry-content input[type="text"],
.woocommerce-account .entry-content input[type="email"],
.woocommerce-account .entry-content input[type="password"] {
  border-radius: 10px;
  border: 1px solid #d7d7d7;
  padding: 10px 12px;
  font-size: 15px;
  width: 100%;
  box-shadow: none;
}

.woocommerce-account .entry-content input.input-text:focus,
.woocommerce-account .entry-content input[type="text"]:focus,
.woocommerce-account .entry-content input[type="email"]:focus,
.woocommerce-account .entry-content input[type="password"]:focus {
  border-color: #ecb733;
  outline: none;
  box-shadow: 0 0 0 1px rgba(236, 183, 51, 0.35);
}
/* Primary buttons */
.woocommerce-account .entry-content button.button,
.woocommerce-account .entry-content .button {
  background: #ecb733;
  color: #131313;
  border-radius: 999px;
  padding: 10px 26px;
  border: none;
  font-weight: 700;
  font-size: 15px;
  text-transform: none;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.12);
}

.woocommerce-account .entry-content button.button:hover,
.woocommerce-account .entry-content .button:hover {
  background: #fad357;
  color: #131313;
}

/* Lost password link */
.woocommerce-account .entry-content .lost_password a {
  color: #383838;
  text-decoration: underline;
  font-size: 14px;
}
@media (max-width: 768px) {
  .woocommerce-account .entry-content {
    margin-top: 24px;
  }

  .woocommerce-account .u-columns {
    gap: 20px;
  }

  .woocommerce-account .u-column1,
  .woocommerce-account .u-column2 {
    padding: 22px 18px 20px;
  }
}
/* Make the background feel more like a panel */
.woocommerce-account .entry-content {
  padding-bottom: 60px;
}

.woocommerce-account .site-main {
  background:#f6f6f6;
}

/* Slight drop shadow + tighter max width so the cards pop more */
.woocommerce-account .u-column1,
.woocommerce-account .u-column2 {
  box-shadow:0 10px 20px rgba(0,0,0,.06);
}

.woocommerce-account .entry-content {
  max-width: 880px;
}
/* TSLOPE homepage – remove default bullets inside our block */
#ts-home .ts-feature-list,
#ts-home .ts-feature-list li,
#ts-home .ts-hero-bullets,
#ts-home .ts-hero-bullets li {
  list-style: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* Kill the theme's marker bullets */
#ts-home .ts-feature-list li::marker,
#ts-home .ts-hero-bullets li::marker {
  content: none !important;
}
/* TSLOPE homepage – increase space between yellow bullet and text */
#ts-home .ts-hero-bullets li,
#ts-home .ts-feature-list li {
  position: relative;
  padding-left: 2.8rem !important;  /* pushes the text further right */
}

#ts-home .ts-hero-bullets li::before,
#ts-home .ts-feature-list li::before {
  left: 0.4rem !important;          /* nudges the yellow square away from the edge */
}
/* ----------------------------------------
   Publication hero / intro
----------------------------------------- */

.tslope-publications-intro {
    max-width: 900px;
    margin: 0 auto 50px auto;
    text-align: left;
}

.tslope-pub-heading {
    font-family: "Montserrat", sans-serif;
    font-size: 38px;
    font-weight: 700;
    color: #131313;
    margin-bottom: 8px;
}

.tslope-pub-accent {
    width: 120px;
    height: 6px;
    background: #ecb733;        /* TAGAsoft gold line */
    border-radius: 3px;
    margin-bottom: 20px;
}

.tslope-pub-description {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    color: #383838;
    line-height: 1.6;
    max-width: 700px;
}

/* ----------------------------------------
   Publications: Read full paper block
----------------------------------------- */

.ts-pub-cta-wrap {
    text-align: center;
    margin: 40px auto 0;
}

.ts-pub-cta-inner {
    max-width: 800px;
    margin: 0 auto 32px;
}

/* Button */
.ts-pub-cta-button {
    margin-bottom: 8px;
}

.ts-pub-read-btn {
    display: inline-block;
    padding: 10px 26px;
    border-radius: 8px;
    background: #ecb733;        /* TSLOPE gold */
    color: #131313;
    font-weight: 600;
    font-size: 16px;
    text-decoration: none;
}

.ts-pub-read-btn:hover,
.ts-pub-read-btn:focus {
    background: #fad357;        /* lighter gold */
    color: #131313;
}

/* Author · year · journal line */
.ts-pub-meta-line {
    margin-top: 4px;
    font-size: 1rem;            /* match paragraph size */
    line-height: 1.6;
    color: #333333;
}

/* Back to library link under button */
.ts-pub-back-link {
    margin-top: 4px;
    font-size: 14px;
}

.ts-pub-back-link a {
    text-decoration: none;
}

.ts-pub-back-link a:hover {
    text-decoration: underline;
}

/* ----------------------------------------
   TSLOPE promo box under publications
----------------------------------------- */

.tslope-cta-wrapper {
    margin: 40px auto;
}

.tslope-cta-box {
    background: #131313;
    color: #ffffff;
    border-radius: 16px;
    padding: 36px 32px;
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

.tslope-cta-title {
    margin: 0 0 8px;
    font-size: 24px;
}

.tslope-cta-text {
    margin: 0 0 18px;
    font-size: 16px;
}

.tslope-cta-button-row {
    margin: 0;
}

.tslope-cta-btn,
.tslope-cta-btn:link,
.tslope-cta-btn:visited {
    display: inline-block;
    padding: 10px 26px;
    border-radius: 8px;
    background: #ecb733;
    color: #131313 !important;
    font-weight: 600;
    text-decoration: none !important;
}

.tslope-cta-btn:hover,
.tslope-cta-btn:focus {
    background: #fad357;
    color: #131313 !important;
}

/* ----------------------------------------
   Custom TAGAsoft footer
----------------------------------------- */

/* Hide default theme footer, show only custom TAGAsoft footer */
footer.taga-footer {
  background: red !important;
  color: white !important;
  padding: 50px !important;
}
.site-footer,
.fl-page-footer,
.footer-widgets {
    display: none !important;
}

footer.taga-footer {
    display: block !important;
    background: #131313 !important;
    width: 100% !important;
    padding: 2.5rem 1.5rem 1.75rem !important;
    color: #ffffff !important;
    font-family: 'Montserrat', 'Roboto', sans-serif !important;
    text-align: center !important;
}

footer.taga-footer .taga-footer-inner {
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

footer.taga-footer h2 {
    color: #fad357 !important;
    font-size: 26px;
    margin: 0 0 0.4rem;
}

footer.taga-footer p {
    color: #ffffff !important;
    margin: 0 0 0.75rem;
    font-size: 14px;
}

footer.taga-footer .taga-footer-btn {
    display: inline-block;
    background: #ecb733 !important;
    color: #131313 !important;
    padding: 12px 26px;
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none !important;
    margin-bottom: 20px;
}

footer.taga-footer .taga-footer-btn:hover {
    background: #fad357 !important;
    color: #131313 !important;
}

footer.taga-footer .taga-footer-nav {
    margin: 16px 0 10px;
    font-size: 14px;
}

footer.taga-footer .taga-footer-nav a {
    color: #ffffff !important;
    margin: 0 12px;
    text-decoration: none !important;
}

footer.taga-footer .taga-footer-nav a:hover {
    color: #ecb733 !important;
}

footer.taga-footer .taga-footer-social {
    margin: 10px 0;
}

footer.taga-footer .taga-footer-social a {
    color: #fad357 !important;
    font-size: 28px;
    text-decoration: none !important;
}

footer.taga-footer .taga-footer-social a:hover {
    color: #ecb733 !important;
}

footer.taga-footer .taga-footer-copy {
    color: #ffffff !important;
    font-size: 13px;
    line-height: 1.4;
    opacity: 0.7;
    margin-top: 6px;
}
/* ----------------------------------------
   TSLOPE promo banner on single publication
----------------------------------------- */

.single-publications .ts-publication-tslope-cta {
  margin: 40px auto 0;
  max-width: 1100px;
  padding: 0 1.5rem;
}

.single-publications .ts-publication-tslope-cta__inner {
  background: #131313;        /* black panel */
  color: #ffffff;
  border-radius: 16px;
  padding: 36px 32px;
  text-align: center;
}

.single-publications .ts-publication-tslope-cta__inner h3 {
  margin: 0 0 8px;
  font-size: 24px;
}

.single-publications .ts-publication-tslope-cta__inner p {
  margin: 0 0 18px;
  font-size: 16px;
}

/* Gold Explore TSLOPE button */
.single-publications .ts-publication-tslope-cta__btn,
.single-publications .ts-publication-tslope-cta__btn:link,
.single-publications .ts-publication-tslope-cta__btn:visited {
  display: inline-block;
  padding: 10px 26px;
  border-radius: 8px;
  background: #ecb733;        /* TSLOPE gold */
  color: #131313 !important;  /* dark text – no blue/purple */
  font-weight: 600;
  text-decoration: none !important;
  font-size: 16px;
}

.single-publications .ts-publication-tslope-cta__btn:hover,
.single-publications .ts-publication-tslope-cta__btn:focus {
  background: #fad357;
  color: #131313 !important;
}
/* ============================================================
   XXL Publications Filter Bar – TAGAsoft / TSLOPE styling
   ============================================================ */

.ts-publication-filters {
  background: #131313;
  padding: 3rem 3rem;
  border-radius: 28px;
  margin: 3rem 0 3rem;
  color: #ffffff;
  border: 6px solid #000;                 /* Match hero block border */
  box-shadow: 0 20px 40px rgba(0,0,0,0.45);
}

/* Layout spacing */
.ts-publication-filters .ts-filters-row {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
  align-items: center;
}

/* Label styling – large and readable */
.ts-publication-filters .ts-filter-group {
  display: flex;
  flex-direction: column;
  min-width: 300px;
  flex: 1 1 350px;
}

.ts-publication-filters .ts-filter-group label {
  font-size: 1.3rem;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin-bottom: 0.6rem;
  color: #e5e5e5;
}

/* XXL fields – pill shaped */
.ts-publication-filters .ts-filter-group input[type="text"],
.ts-publication-filters .ts-filter-group select {
  border-radius: 999px;
  border: 2px solid #383838;
  background: #1f1f1f;
  color: #ffffff;
  padding: 1.4rem 1.8rem;
  font-size: 1.4rem;
  width: 100%;
  max-width: 500px;
  outline: none;
  box-shadow: none !important;
}

.ts-publication-filters .ts-filter-group input::placeholder {
  color: #b0b0b0;
  font-size: 1.4rem;
}

/* Focus highlight */
.ts-publication-filters .ts-filter-group input:focus,
.ts-publication-filters .ts-filter-group select:focus {
  border-color: #ecb733;
  box-shadow: 0 0 0 3px #ecb73344 !important;
}

/* Container for the button */
.ts-publication-filters .ts-filter-actions {
  display: flex;
  align-items: flex-end;
}

/* ============================================================
   THE BUTTON — Guaranteed GOLD ROUNDED-RECTANGLE
   No matter what HTML Beaver Builder outputs
   ============================================================ */

.ts-publication-filters button,
.ts-publication-filters input[type="submit"],
.ts-publication-filters .ts-filter-button,
.ts-publication-filters .ts-filter-actions button,
.ts-publication-filters .ts-filter-actions input[type="submit"] {
  -webkit-appearance: none !important;
  appearance: none !important;

  background: #ecb733 !important;         /* Gold */
  color: #131313 !important;              /* Dark text */
  border: none !important;

  padding: 1.4rem 3rem !important;
  font-size: 1.4rem !important;
  font-weight: 800 !important;

  border-radius: 16px !important;         /* << Rounded rectangle */
  box-shadow: none !important;

  cursor: pointer;
  white-space: nowrap;
  display: inline-block;
  line-height: 1 !important;
}

.ts-publication-filters button:hover,
.ts-publication-filters input[type="submit"]:hover,
.ts-publication-filters .ts-filter-button:hover {
  background: #fad357 !important;         /* Lighter gold hover */
  box-shadow: 0 10px 20px rgba(0,0,0,0.45);
  transform: translateY(-2px);
}

.ts-publication-filters button:active,
.ts-publication-filters input[type="submit"]:active,
.ts-publication-filters .ts-filter-button:active {
  transform: translateY(0);
  box-shadow: none !important;
}

/* ============================================================
   Mobile adjustments
   ============================================================ */

@media (max-width: 768px) {
  .ts-publication-filters {
    padding: 2rem;
    border-radius: 22px;
  }

  .ts-publication-filters .ts-filters-row {
    flex-direction: column;
    gap: 1.8rem;
    align-items: stretch;
  }

  .ts-publication-filters .ts-filter-group {
    min-width: unset;
    flex: 1 1 auto;
  }

  .ts-publication-filters .ts-filter-group input[type="text"],
  .ts-publication-filters .ts-filter-group select {
    max-width: 100%;
    font-size: 1.3rem;
    padding: 1.2rem 1.5rem;
  }

  .ts-publication-filters button,
  .ts-publication-filters input[type="submit"],
  .ts-publication-filters .ts-filter-button {
    font-size: 1.3rem !important;
    padding: 1.2rem 2.5rem !important;
  }
}
/* Single Publication content – text + links use TAGAsoft styling */
.ts-pub-summary {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    color: #383838;
    line-height: 1.6;
}

/* Headings inside summary */
.ts-pub-summary h2,
.ts-pub-summary h3,
.ts-pub-summary h4 {
    font-family: "Montserrat", sans-serif;
    color: #131313;
    margin-top: 1.4rem;
    margin-bottom: 0.6rem;
}

/* Links inside summary – no more blue */
.ts-pub-summary a,
.ts-pub-summary a:link,
.ts-pub-summary a:visited {
    color: #131313;              /* dark text on white */
    text-decoration: none;
}

.ts-pub-summary a:hover,
.ts-pub-summary a:focus {
    color: #ecb733;              /* TAGAsoft gold hover */
    text-decoration: underline;
}
/* =====================================
   Single publication CTA button + link
   ===================================== */

/* Gold "Read full paper" button */
.ts-pub-read-btn,
.ts-pub-read-btn:link,
.ts-pub-read-btn:visited {
    display: inline-block;
    padding: 10px 26px;
    border-radius: 8px;
    background: #ecb733 !important;   /* gold */
    color: #131313 !important;        /* dark text, no blue */
    font-weight: 600;
    font-size: 16px;
    text-decoration: none !important;
    border: none !important;
}

.ts-pub-read-btn:hover,
.ts-pub-read-btn:focus,
.ts-pub-read-btn:active {
    background: #fad357 !important;   /* lighter gold */
    color: #131313 !important;
    text-decoration: none !important;
}

/* "Back to Slope Stability Publications Library" link */
.ts-pub-back-link a,
.ts-pub-back-link a:link,
.ts-pub-back-link a:visited {
    color: #131313 !important;
    text-decoration: none;
}

.ts-pub-back-link a:hover,
.ts-pub-back-link a:focus {
    color: #ecb733 !important;
    text-decoration: underline;
}
/* FORCE gold button styling on publications */
.single-publications a.ts-pub-read-btn,
.single-publications a.ts-pub-read-btn:link,
.single-publications a.ts-pub-read-btn:visited {
    background: #ecb733 !important;
    color: #131313 !important;
    border: none !important;
    text-decoration: none !important;
    padding: 12px 26px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    display: inline-block !important;
}

.single-publications a.ts-pub-read-btn:hover,
.single-publications a.ts-pub-read-btn:focus {
    background: #fad357 !important;
    color: #131313 !important;
}

/* Force styling for the back link */
.single-publications .ts-pub-back-link a {
    color: #131313 !important;
    text-decoration: none !important;
}

.single-publications .ts-pub-back-link a:hover {
    color: #ecb733 !important;
    text-decoration: underline !important;
}
/* ===============================
   GLOBAL PUBLICATION LAYOUT
================================= */

.single-publications {
    font-family: 'Montserrat', 'Roboto', sans-serif;
}

/* -------------------------------
   HERO
--------------------------------*/
.ts-pub-hero {
    text-align: center;
    margin: 60px auto 30px auto;
    max-width: 900px;
}

.ts-pub-title {
    font-size: 42px;
    font-weight: 700;
    color: #131313;
    margin-bottom: 12px;
}

.ts-pub-accent {
    width: 120px;
    height: 6px;
    background: #ecb733;
    border-radius: 3px;
    margin: 0 auto;
}

/* -------------------------------
   SUMMARY BLOCK
--------------------------------*/
.ts-pub-summary-block {
    max-width: 900px;
    margin: 40px auto;
}

.ts-pub-summary {
    font-size: 18px;
    line-height: 1.7;
    color: #333;
}

/* -------------------------------
   CTA BUTTON + BACK LINK
--------------------------------*/
.ts-pub-cta {
    text-align: center;
    margin: 40px auto 60px;
}

.ts-btn-primary {
    display: inline-block;
    background: #ecb733 !important;
    color: #131313 !important;
    padding: 12px 30px;
    font-weight: 700;
    border-radius: 8px;
    text-decoration: none !important;
    font-size: 18px;
}

.ts-btn-primary:hover {
    background: #fad357 !important;
    color: #131313 !important;
}

.ts-pub-back {
    margin-top: 12px;
    font-size: 15px;
}

.ts-pub-back a {
    color: #131313 !important;
    text-decoration: none;
}

.ts-pub-back a:hover {
    color: #ecb733 !important;
    text-decoration: underline;
}

/* -------------------------------
   TSLOPE PROMO PANEL
--------------------------------*/
.ts-promo-wrap {
    max-width: 1100px;
    margin: 60px auto 80px;
    padding: 0 20px;
}

.ts-promo-inner {
    background: #131313;
    color: #ffffff;
    padding: 40px 32px;
    border-radius: 16px;
    text-align: center;
}

.ts-promo-inner h3 {
    font-size: 26px;
    margin-bottom: 10px;
}

.ts-promo-inner p {
    font-size: 17px;
    margin-bottom: 22px;
}

.ts-promo-inner .ts-btn-primary {
    font-size: 18px;
}
/* =========================================
   Single Publications – base typography
   ========================================= */

/* Title */
.single-publications .entry-title {
    font-family: "Montserrat", sans-serif;
    font-size: 42px;
    font-weight: 700;
    color: #131313;
    margin-bottom: 12px;
}

/* Body text */
.single-publications .entry-content {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #383838;
}

/* Links inside the main content */
.single-publications .entry-content a {
    color: #131313;
    text-decoration: none;
}

.single-publications .entry-content a:hover,
.single-publications .entry-content a:focus {
    color: #ecb733;
    text-decoration: underline;
}
/* TSLOPE CTA box – make text readable */
.tslope-cta-box,
.tslope-cta-box h3,
.tslope-cta-box p,
.tslope-cta-box a {
    color: #ffffff !important;
}
/* Hide the old TSLOPE CTA on single publication pages */
.single-publication .ts-slope-cta-box,
.single-publication section.ts-slope-cta-box {
    display: none !important;
}
/* Make sure the remaining TSLOPE promo box is readable */
.single-publication .tslope-cta-wrapper,
.single-publication .tslope-cta-wrapper * {
    color: #ffffff !important;   /* white text on black */
}

/* Button inside that promo box */
.single-publication .tslope-cta-wrapper .tslope-cta-btn,
.single-publication .tslope-cta-wrapper .tslope-cta-btn:link,
.single-publication .tslope-cta-wrapper .tslope-cta-btn:visited {
    background: #ecb733 !important;  /* gold */
    color: #131313 !important;       /* dark text */
    border: none !important;
}

/* Hover state */
.single-publication .tslope-cta-wrapper .tslope-cta-btn:hover,
.single-publication .tslope-cta-wrapper .tslope-cta-btn:focus {
    background: #fad357 !important;  /* lighter gold */
    color: #131313 !important;
}
/* Hide the old TSLOPE CTA block on single publications */
body.single-publications section.ts-slope-cta-box,
body.single-publications .ts-slope-cta-box {
    display: none !important;
}
/* Single publications: hide the old inline TSLOPE blurb
   (heading + paragraph + "Explore TSLOPE" link) */
body.single-publications .entry-content h3:has(+ p + p a[href*="tslope-features"]),
body.single-publications .entry-content h3:has(+ p + p a[href*="tslope-features"]) + p,
body.single-publications .entry-content h3:has(+ p + p a[href*="tslope-features"]) + p + p {
    display: none !important;
}
/* Single publications: fix colours inside the black TSLOPE CTA panel */
body.single-publications .tslope-cta-wrapper,
body.single-publications .tslope-cta-wrapper * {
    color: #ffffff !important;
}

body.single-publications .tslope-cta-wrapper .tslope-cta-btn,
body.single-publications .tslope-cta-wrapper .tslope-cta-btn:link,
body.single-publications .tslope-cta-wrapper .tslope-cta-btn:visited {
    background: #ecb733 !important;
    color: #131313 !important;
    border: none !important;
}

body.single-publications .tslope-cta-wrapper .tslope-cta-btn:hover,
body.single-publications .tslope-cta-wrapper .tslope-cta-btn:focus {
    background: #fad357 !important;
    color: #131313 !important;
}
/* Single publications: hide the old TSLOPE CTA block */
body.single-publications .ts-slope-cta-box {
    display: none !important;
}
	/* Kill the old inline TSLOPE CTA */
.ts-slope-cta-box {
    display: none !important;
}
/* Hide the old inline TSLOPE blurb + button on single publications */
.ts-slope-cta-box {
    display: none !important;
}
.ts-slope-cta-box {
    background: red !important;
}
/* -----------------------------------
   STACK FILTER BUTTONS VERTICALLY
----------------------------------- */

.ts-filter-actions {
  text-align: left;
  margin-top: 10px;
}

/* Force each button onto its own line */
.ts-filter-actions .ts-filter-button,
.ts-filter-actions .ts-filter-button--secondary {
  display: block;          /* this is the key: forces stacking */
  width: 220px;            /* adjust as needed */
  padding: 12px 16px;
  border-radius: 6px;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  margin-bottom: 10px;     /* space between Apply + Reset */
}

/* Reset button styling */
.ts-filter-button--secondary {
  background-color: transparent !important;
  border: 2px solid #ecb733;
  color: #ecb733 !important;
  transition: all 0.2s ease;
}

.ts-filter-button--secondary:hover {
  background-color: rgba(236, 183, 51, 0.1) !important;
}

/* Mobile: make them full width */
@media (max-width: 768px) {
  .ts-filter-actions .ts-filter-button,
  .ts-filter-actions .ts-filter-button--secondary {
    width: 100%;
  }
}
.single-product .page-header,
.single-product .fl-page-title {
  display: none;
}
/* ================================
   TSLOPE – Single Product Tidy-Up
   Put ONLY this in Additional CSS
   ================================ */

/* Scope: single product only */
body.single-product .woocommerce div.product div.images {
  width: 260px !important;          /* makes the whole image column smaller */
  max-width: 260px !important;
  float: left !important;           /* keep classic Woo layout */
  margin: 0 40px 20px 0 !important; /* space between image + summary */
}

body.single-product .woocommerce div.product div.images img {
  width: 100% !important;
  height: auto !important;
  max-width: 260px !important;
}

/* Stop the zoom icon sitting in weird places */
body.single-product .woocommerce div.product .woocommerce-product-gallery__trigger {
  display: none !important;
}

/* Summary stays beside the image */
body.single-product .woocommerce div.product .summary {
  float: none !important;           /* theme sometimes forces float */
  overflow: hidden;                 /* keeps it aligned beside the image */
}

/* Add-to-cart row: keep quantity + button on one line */
body.single-product .woocommerce div.product form.cart {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
}

body.single-product .woocommerce div.product form.cart .quantity {
  margin: 0 !important;
}

body.single-product .woocommerce div.product form.cart input.qty {
  width: 90px !important;
}

/* Button styling (your gold) */
body.single-product .woocommerce div.product button.single_add_to_cart_button {
  background: #ecb733 !important;
  color: #131313 !important;
  border-radius: 10px !important;
  font-weight: 800 !important;
  padding: 12px 18px !important;
}

body.single-product .woocommerce div.product button.single_add_to_cart_button:hover {
  background: #fad357 !important;
}

/* Tabs: remove the “weird white tab” look */
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs {
  padding-left: 0 !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: transparent !important;
  border: 0 !important;
}

body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a {
  border: 1px solid #e5e5e5 !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  background: #ffffff !important;
}

/* Related products: make them a stable grid and stop giant images */
body.single-product .related ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
}

body.single-product .related ul.products li.product {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
}

body.single-product .related ul.products li.product img {
  max-width: 120px !important;
  width: 120px !important;
  height: auto !important;
  margin: 0 auto 10px auto !important;
  display: block !important;
}
/* ============================
   TSLOPE Help page styling
   Matches TSLOPE Features vibe
   ============================ */

.tslope-help{
  --black:#131313;
  --dark:#1b1b1b;
  --grey:#383838;
  --light:#e5e5e5;
  --gold:#ecb733;
  --white:#ffffff;

  background: var(--white);
  padding: 56px 18px;
}

.tslope-help__wrap{
  max-width: 1080px;
  margin: 0 auto;
}

.tslope-help__kicker{
  font-size: 14px;
  color: var(--grey);
  margin-bottom: 10px;
}

.tslope-help__h1{
  font-size: 46px;
  line-height: 1.15;
  margin: 0 0 10px 0;
  color: var(--black);
}

.tslope-help__lead{
  margin: 0 0 24px 0;
  max-width: 78ch;
  color: var(--grey);
  line-height: 1.65;
  font-size: 16px;
}

/* CTA buttons similar to your TSLOPE features page */
.tslope-help__cta{
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
  margin: 10px 0 28px;
}

.tslope-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 20px;
  border-radius: 10px;
  font-weight: 800;
  text-decoration:none;
  border: 2px solid transparent;
  transition: transform .05s ease, filter .15s ease, background .15s ease;
}

.tslope-btn:active{ transform: translateY(1px); }

.tslope-btn--gold{
  background: var(--gold);
  color: var(--black);
}

.tslope-btn--black{
  background: var(--black);
  color: var(--gold);
}

.tslope-btn--outline{
  background: transparent;
  color: var(--black);
  border-color: var(--black);
}

.tslope-btn--outline:hover{
  background: var(--black);
  color: var(--white);
}

/* Black bar heading like your feature section header */
.tslope-help__bar{
  background: var(--black);
  border-radius: 12px;
  padding: 18px 20px;
  margin: 0 0 18px;
}

.tslope-help__barTitle{
  margin: 0;
  font-size: 28px;
  color: var(--gold);
  font-weight: 800;
}

/* Card */
.tslope-card{
  border: 1px solid var(--light);
  border-radius: 14px;
  overflow: hidden;
  background: var(--white);
  box-shadow: 0 10px 28px rgba(0,0,0,0.06);
}

.tslope-card__header{
  padding: 18px 20px 10px;
}

.tslope-card__title{
  margin: 0 0 6px;
  font-size: 26px;
  color: var(--black);
}

.tslope-card__meta{
  color: var(--grey);
  font-size: 14px;
}

/* Responsive video */
.tslope-card__video{
  position: relative;
  padding-top: 56.25%;
  background: #000;
}

.tslope-card__video iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

/* Body with two columns */
.tslope-card__body{
  padding: 18px 20px 22px;
}

.tslope-twoCol{
  display:grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 18px;
  align-items: start;
}

.tslope-card__subhead{
  margin: 0 0 10px;
  font-size: 18px;
  color: var(--black);
}

.tslope-list{
  margin: 0;
  padding-left: 18px;
  color: var(--grey);
  line-height: 1.65;
}

.tslope-list li{ margin-bottom: 8px; }

.tslope-side{
  border-left: 4px solid var(--gold);
  padding-left: 14px;
}

.tslope-muted{
  margin: 0 0 10px;
  color: var(--grey);
  line-height: 1.65;
  font-size: 14px;
}

.tslope-link{
  color: var(--gold);
  font-weight: 800;
  text-decoration: none;
}

.tslope-link:hover{ text-decoration: underline; }

/* Mobile */
@media (max-width: 860px){
  .tslope-help__h1{ font-size: 36px; }
  .tslope-help__barTitle{ font-size: 22px; }
  .tslope-twoCol{ grid-template-columns: 1fr; }
  .tslope-side{ border-left: none; border-top: 4px solid var(--gold); padding-left: 0; padding-top: 12px; }
}
/* Kill the white main wrapper */
.site-inner[role="main"] {
  background: #000 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Remove any space above the first Beaver row */
.site-inner[role="main"] > .fl-builder-content,
.site-inner[role="main"] > .fl-builder-content > .fl-row:first-child,
.site-inner[role="main"] .fl-row-content-wrap,
.site-inner[role="main"] .fl-row-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
html,
body,
body.page,
body.single,
body.archive,
.site,
.site-container,
.site-inner,
.content,
.content-area,
.site-content,
.fl-page,
.fl-page-content,
.fl-content,
.fl-builder-content,
.fl-builder-content-wrapper,
.fl-row-content-wrap,
.fl-row-content {
  background: #000 !important;
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
}

.site-inner,
.site-container,
.content,
.content-area,
.site-content {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
}

.site-inner[role="main"] {
  background: #000 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-inner[role="main"] > .fl-builder-content,
.site-inner[role="main"] > .fl-builder-content > .fl-row:first-child,
.site-inner[role="main"] .fl-row-content-wrap,
.site-inner[role="main"] .fl-row-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
html,
body,
body.page,
.site,
.site-container,
.site-inner,
.content,
.content-area,
.site-content,
.fl-page,
.fl-page-content,
.fl-content,
.fl-builder-content,
.fl-builder-content-wrapper {
  background: #000 !important;
}

html,
body {
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
}

.site-inner,
.site-container,
.content,
.content-area,
.site-content {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
}

.site-inner[role="main"] {
  background: #000 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-inner[role="main"] > .fl-builder-content,
.site-inner[role="main"] > .fl-builder-content > .fl-row:first-child,
.site-inner[role="main"] .fl-row-content-wrap,
.site-inner[role="main"] .fl-row-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

</style>
<link rel='stylesheet' id='ppcp-pwc-payment-method-css' href='https://tagasoft.com/wp-content/plugins/woocommerce-paypal-payments/assets/ppcp-local-alternative-payment-methods-css-gateway.css?ver=4.0.4' media='all' />

</head>
<body data-rsssl=1 class="home wp-singular page-template page-template-page-builder page-template-page-builder-php page page-id-1146 wp-theme-genesis wp-child-theme-dynamik-gen theme-genesis fl-builder fl-builder-2-10-2-2 fl-themer-1-5-3 fl-no-js woocommerce-no-js fl-theme-builder-header fl-theme-builder-header-header header-full-width full-width-content genesis-breadcrumbs-hidden unknown-os ie11 feature-top-outside site-fluid has-blocks override dynamik-page-builder">		<!-- Google Tag Manager (noscript) snippet added by Site Kit -->
		<noscript>
			<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-N23LMZS" height="0" width="0" style="display:none;visibility:hidden"></iframe>
		</noscript>
		<!-- End Google Tag Manager (noscript) snippet added by Site Kit -->
		<div class="site-container"><header class="fl-builder-content fl-builder-content-1875 fl-builder-global-templates-locked" data-post-id="1875" data-type="header" data-sticky="1" data-sticky-on="" data-sticky-breakpoint="medium" data-shrink="0" data-overlay="0" data-overlay-bg="transparent" data-shrink-image-height="50px" role="banner" itemscope="itemscope" itemtype="http://schema.org/WPHeader"><div class="fl-row fl-row-full-width fl-row-bg-color fl-node-5919380dd3cd1 fl-row-default-height fl-row-align-center main-header header-cta-row" data-node="5919380dd3cd1">
	<div class="fl-row-content-wrap">
						<div class="fl-row-content fl-row-fixed-width fl-node-content">
		
<div class="fl-col-group fl-node-58054b7ec133a" data-node="58054b7ec133a">
			<div class="fl-col fl-node-ns9f0v2jhkcl fl-col-bg-color" data-node="ns9f0v2jhkcl">
	<div class="fl-col-content fl-node-content"><div class="fl-module fl-module-menu fl-node-58054b7ec1405" data-node="58054b7ec1405">
	<div class="fl-module-content fl-node-content">
		<div class="fl-menu fl-menu-responsive-toggle-mobile">
	<button class="fl-menu-mobile-toggle hamburger-label fl-content-ui-button" aria-haspopup="menu" aria-label="Menu"><span class="fl-menu-icon svg-container"><svg version="1.1" class="hamburger-menu" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 512 512">
<rect class="fl-hamburger-menu-top" width="512" height="102"/>
<rect class="fl-hamburger-menu-middle" y="205" width="512" height="102"/>
<rect class="fl-hamburger-menu-bottom" y="410" width="512" height="102"/>
</svg>
</span><span class="fl-menu-mobile-toggle-label" aria-haspopup="menu" aria-label="Menu">Menu</span></button>	<div class="fl-clear"></div>
	<nav aria-label="Navigation Menu" itemscope="itemscope" itemtype="https://schema.org/SiteNavigationElement"><ul id="menu-header-menu" class="menu fl-menu-horizontal fl-toggle-arrows"><li id="menu-item-1040" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-home"><a  href="https://tagasoft.com/" aria-current="page">Home</a></li><li id="menu-item-1801" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children fl-has-submenu"><div class="fl-has-submenu-container"><a  href="https://tagasoft.com/geotechnical-insights/">Geotechnical Insights</a><span role="button" tabindex="0" aria-label="Geotechnical Insights submenu toggle" aria-haspopup="menu" aria-expanded="false" aria-controls="sub-menu-1801" class="fl-menu-toggle fl-content-ui-button"></span></div><ul id="sub-menu-1801" class="sub-menu">	<li id="menu-item-20430" class="menu-item menu-item-type-custom menu-item-object-custom"><a  href="https://tagasoft.com/publications/">Publications Library</a></li>	<li id="menu-item-20919" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/technical-papers/">Technical Papers</a></li>	<li id="menu-item-20918" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/technical-notes/">Technical Notes</a></li></ul></li><li id="menu-item-1041" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children fl-has-submenu"><div class="fl-has-submenu-container"><a  href="https://tagasoft.com/about-taga/">About</a><span role="button" tabindex="0" aria-label="About submenu toggle" aria-haspopup="menu" aria-expanded="false" aria-controls="sub-menu-1041" class="fl-menu-toggle fl-content-ui-button"></span></div><ul id="sub-menu-1041" class="sub-menu">	<li id="menu-item-1800" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/about-taga/">About TAGAsoft</a></li>	<li id="menu-item-1427" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/contact/">Contact</a></li></ul></li><li id="menu-item-19164" class="tslope-highlight menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children fl-has-submenu"><div class="fl-has-submenu-container"><a  href="#">TSLOPE</a><span role="button" tabindex="0" aria-label="TSLOPE submenu toggle" aria-haspopup="menu" aria-expanded="false" aria-controls="sub-menu-19164" class="fl-menu-toggle fl-content-ui-button"></span></div><ul id="sub-menu-19164" class="sub-menu">	<li id="menu-item-2279" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/tslope-features/">TSLOPE Features</a></li>	<li id="menu-item-19166" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/qgis/">QGIS</a></li>	<li id="menu-item-1305" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/tslope-software-licences/">Pricing</a></li>	<li id="menu-item-18291" class="download-highlight menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/download/">Download TSLOPE</a></li>	<li id="menu-item-20750" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/help/">Help and Getting Started</a></li>	<li id="menu-item-18622" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/3d-slope-stability-case-studies/">Case Studies</a></li>	<li id="menu-item-1048" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/faq/">FAQ</a></li></ul></li><li id="menu-item-2256" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/tslope-software-licences/">Shop</a></li><li id="menu-item-2691" class="menu-item menu-item-type-post_type menu-item-object-page"><a  href="https://tagasoft.com/cart/">Cart</a></li></ul></nav></div>
	</div>
</div>
</div>
</div>
			<div class="fl-col fl-node-58054b7ec137c fl-col-bg-color fl-col-small fl-col-has-cols" data-node="58054b7ec137c">
	<div class="fl-col-content fl-node-content">
<div class="fl-col-group fl-node-5965c29cf118c fl-col-group-nested" data-node="5965c29cf118c">
			<div class="fl-col fl-node-5965c29cf2881 fl-col-bg-color" data-node="5965c29cf2881">
	<div class="fl-col-content fl-node-content"><div class="fl-module fl-module-button fl-node-5965c23c55152" data-node="5965c23c55152">
	<div class="fl-module-content fl-node-content">
		<div class="fl-button-wrap fl-button-width-auto fl-button-center">
			<a href="https://tagasoft.com/tslope-free-trial/"  target="_self"  class="fl-button"  >
							<span class="fl-button-text">Free Trial</span>
					</a>
</div>
	</div>
</div>
</div>
</div>
			<div class="fl-col fl-node-5965c29cf28c5 fl-col-bg-color fl-col-small" data-node="5965c29cf28c5">
	<div class="fl-col-content fl-node-content"><div class="fl-module fl-module-button fl-node-7zaumh95y0ej" data-node="7zaumh95y0ej">
	<div class="fl-module-content fl-node-content">
		<div class="fl-button-wrap fl-button-width-auto fl-button-center">
			<a href="https://tagasoft.com/my-account/"  target="_self"  class="fl-button"  >
							<span class="fl-button-text">Login</span>
					</a>
</div>
	</div>
</div>
</div>
</div>
	</div>
</div>
</div>
	</div>
		</div>
	</div>
</div>
</header><div class="site-inner" role="main" itemprop="mainContentOfPage"><div class="fl-builder-content fl-builder-content-1146 fl-builder-content-primary fl-builder-global-templates-locked" data-post-id="1146"><div class="fl-row fl-row-full-width fl-row-bg-color fl-node-4ugcsmdn6yo9 fl-row-default-height fl-row-align-center" data-node="4ugcsmdn6yo9">
	<div class="fl-row-content-wrap">
						<div class="fl-row-content fl-row-full-width fl-node-content">
		
<div class="fl-col-group fl-node-zqj8cmfx20va" data-node="zqj8cmfx20va">
			<div class="fl-col fl-node-fvp2iacesnq3 fl-col-bg-color" data-node="fvp2iacesnq3">
	<div class="fl-col-content fl-node-content"><div  class="fl-module fl-module-html fl-html fl-node-t6z87rgb31s4" data-node="t6z87rgb31s4">
	<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700;800&family=Roboto:wght@300;400;500&display=swap" rel="stylesheet">

<style>
/* USP STRIP (TONED DOWN) */
#ts-home .ts-hero-usps{
  margin:18px 0 6px 0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

#ts-home .ts-hero-usps span{
  font:600 13px/1 Montserrat, Arial, sans-serif;
  color:#ffffff;
  border:1px solid rgba(255,255,255,0.2);
  padding:6px 10px;
  border-radius:8px;
  background:transparent;
}

/* META LINE TONED DOWN */
#ts-home .ts-hero-meta{
  color:#cccccc !important;
}
</style>

<section id="ts-home">

  <!-- HERO -->
  <section class="ts-hero">
    <div class="ts-wrap">
      <div class="ts-hero-grid">

        <div class="ts-hero-copy">
          <span class="ts-kicker">
            <b>TSLOPE</b>
            <span>2D + 3D SLOPE STABILITY SOFTWARE</span>
          </span>

          <h1>Solve slope stability faster,<br>in 2D and 3D</h1>

          <p>
            Use an existing slope stability model or build a new one from scratch,
            then solve for factor of safety in 2D or 3D within a single workflow.
          </p>

          <p>
            Get to your first result in minutes, compare 2D and 3D outcomes directly,
            and iterate quickly without switching between tools.
          </p>

          <!-- Slightly softened gold -->
          <p style="margin:18px 0 0; font-weight:600; color:#f0c75e;">
            Get to your first result in ~10 minutes.
          </p>

          <!-- USP STRIP -->
          <div class="ts-hero-usps">
            <span>Fast to solve</span>
            <span>2D + 3D in one package</span>
            <span>Flexible licences</span>
            <span>Developed over 20+ years</span>
          </div>

          <div class="ts-hero-ctas">
            <a class="ts-btn ts-btn-gold" href="/checkout/?add-to-cart=1075">Run Your First Analysis</a>
            <a class="ts-btn ts-btn-outline-gold" href="https://tagasoft.com/book-a-demo/">Book a demo</a>
            <a class="ts-pricing-link" href="https://tagasoft.com/tslope-software-licences/">View pricing</a>
          </div>

          <div class="ts-hero-meta">
            Solve quickly. Compare properly. Pay only for the time you need.
          </div>
        </div>

        <div class="ts-hero-visual">
          <div class="ts-hero-panel">
            <div class="ts-stat">
              <span class="label">Stability factor</span>
              <span class="value">FOS 1.42</span>
            </div>

            <img decoding="async" src="https://tagasoft.com/wp-content/uploads/2025/10/2025-10-05-12_35_35-TSLOPE-IRB_QGIS_data_October_2_2025.tsz-1.png" alt="TSLOPE 3D model">

            <div class="ts-corner-badge" aria-hidden="true">
              <span></span><span></span><span></span><span></span>
            </div>
          </div>
        </div>

      </div>

      <nav class="ts-linkbar">
        <ul>
          <li><a href="/tslope-features/">Features</a></li>
          <li><a href="/qgis/">QGIS integration</a></li>
          <li><a href="/tslope-features/">Technical info</a></li>
          <li><a href="/contact/">Talk to us</a></li>
        </ul>
      </nav>
    </div>
  </section>

  <!-- DEMO -->
  <section class="ts-demo">
    <div class="ts-wrap">
      <div class="ts-demo-card">
        <video src="https://tagasoft.com/wp-content/uploads/2025/10/Recording-6.mp4" autoplay muted loop playsinline controls></video>
      </div>
    </div>
  </section>

  <!-- SECONDARY -->
  <section class="ts-secondary">
    <div class="ts-wrap">
      <div class="ts-secondary-row">
        <a class="ts-btn ts-btn-ghost" href="/download/">Download TSLOPE</a>
        <a class="ts-btn ts-btn-outline-gold" href="https://tagasoft.com/book-a-demo/">Book a demo</a>
        <a class="ts-btn ts-btn-ghost" href="https://tagasoft.com/product/tslope-1-day/">Day licence</a>
      </div>
    </div>
  </section>

  <!-- PROOF -->
  <section class="ts-proof">
    <div class="ts-wrap">

      <div class="ts-proof-head">
        <h2>Engineered for Complexity.</h2>
        <p>TSLOPE provides a unified environment where 2D and 3D analyses aren't separate tasks, but part of a single, fluid workflow.</p>
      </div>

      <div class="ts-proof-row">
        <div class="ts-proof-card">
          <div class="ts-proof-icon"></div>
          <h3>2D + 3D in one workflow</h3>
          <p>Build, iterate, and report from the same model set.</p>
        </div>

        <div class="ts-proof-card ts-proof-licence">
          <div class="ts-proof-icon"></div>
          <h3>Flexible licencing</h3>
          <p>Recover costs directly as client disbursements.</p>
          <div class="ts-licence-strip">
            <span>Day</span>
            <span>Week</span>
            <span>Month</span>
            <span>Pay for what you use</span>
          </div>
        </div>

        <div class="ts-proof-card">
          <div class="ts-proof-icon"></div>
          <h3>QGIS integration</h3>
          <p>Spatial data stays aligned and consistent.</p>
        </div>
      </div>
    </div>
  </section>

  <!-- FINAL CTA -->
  <section class="ts-final">
    <div class="ts-wrap">
      <div class="ts-final-box">
        <div>
          <h3>Evaluate TSLOPE on your next slope stability analysis.</h3>
          <p>Start a free trial or select a licence that fits your workflow and project requirements.</p>
        </div>
        <div class="ctas">
          <a class="ts-btn ts-btn-gold" href="/checkout/?add-to-cart=1075">Run Your First Analysis</a>
          <a class="ts-btn ts-btn-outline-gold" href="https://tagasoft.com/book-a-demo/">Book a demo</a>
          <a class="ts-btn ts-btn-ghost" href="https://tagasoft.com/tslope-software-licences/">View pricing</a>
          <a class="ts-btn ts-btn-ghost" href="/contact/">Talk to us</a>
        </div>
      </div>
    </div>
  </section>

</section></div>
</div>
</div>
	</div>
		</div>
	</div>
</div>
</div></div><footer class="site-footer"><div class="wrap"></div></footer></div><script type="speculationrules">
{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/dynamik-gen/*","/wp-content/themes/genesis/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
</script>
  <script>
    (function () {
      const MOBILE_QUERY = '(max-width: 768px)';
      const RIGHT='24px', BOTTOM='24px';

      function isMobile(){ return window.matchMedia(MOBILE_QUERY).matches; }

      function applyDockStyles(el){
        if (!el) return;
        el.style.position = 'fixed';
        el.style.right = RIGHT;
        el.style.bottom = BOTTOM;
        el.style.left = 'auto';
        el.style.top = 'auto';
        el.style.transform = 'none';
        el.style.margin = '0';
        el.style.zIndex = '999999';
      }

      function tidyShadow(host){
        const root = host && host.shadowRoot;
        if (!root) return;

        // Find anything fixed (container), plus common centered patterns
        const nodes = Array.from(root.querySelectorAll('*'));

        nodes.forEach(n => {
          const cs = getComputedStyle(n);

          // Nuke the classic "center me" pattern
          const hasCentering =
            (n.style && (n.style.left === '50%' || n.style.transform.includes('translate'))) ||
            (cs.left === '50%' || cs.transform.includes('matrix'));

          // Focus on elements that are responsible for positioning/layout
          const isLikelyContainer = cs.position === 'fixed' || cs.position === 'absolute';

          if (isLikelyContainer && hasCentering) {
            n.style.left = 'auto';
            n.style.right = RIGHT;
            n.style.transform = 'none';
          }

          // If something is huge, cap it so it docks neatly
          // (we only do this for elements that look like the visible bar/panel)
          if (cs.position === 'fixed' || cs.position === 'absolute') {
            n.style.maxWidth = '420px';
            n.style.width = 'min(420px, calc(100vw - 48px))';
          }
        });
      }

      function run(){
        const host = document.querySelector('expertise-ai');
        if (!host) return;

        if (isMobile()) {
          host.style.display = 'none';
          return;
        }
        host.style.display = 'block';

        // Pin the host (harmless even if UI lives inside)
        applyDockStyles(host);

        // Tidy up internals
        tidyShadow(host);
      }

      run();
      const obs = new MutationObserver(run);
      obs.observe(document.documentElement, { childList: true, subtree: true });

      [400, 1200, 2500, 5000].forEach(ms => setTimeout(run, ms));
      window.addEventListener('resize', () => setTimeout(run, 50));
    })();
  </script>
  <script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)   })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-85366170-1', 'auto');
  ga('send', 'pageview');

</script>	<script type='text/javascript'>
		(function () {
			var c = document.body.className;
			c = c.replace(/woocommerce-no-js/, 'woocommerce-js');
			document.body.className = c;
		})();
	</script>
	<script id="jquery-easing-js" src="https://tagasoft.com/wp-content/plugins/bb-plugin/js/libs/jquery.easing.min.js?ver=1.4"></script>
<script id="jquery-fitvids-js" src="https://tagasoft.com/wp-content/plugins/bb-plugin/js/libs/jquery.fitvids.min.js?ver=1.2"></script>
<script id="jquery-bxslider-js" src="https://tagasoft.com/wp-content/plugins/bb-plugin/js/libs/jquery.bxslider.min.js?ver=2.10.2.2"></script>
<script id="fl-builder-layout-1146-js" src="https://tagasoft.com/wp-content/uploads/bb-plugin/cache/1146-layout.js?ver=782c0ea8e25c48c48d4e13cf767cefd2"></script>
<script id="stickThis-js-extra">
var sticky_anything_engage = {"element":".site-header","topspace":"0","minscreenwidth":"0","maxscreenwidth":"999999","zindex":"1","legacymode":"","dynamicmode":"","debugmode":"","pushup":"","adminbar":"1"};
//# sourceURL=stickThis-js-extra
</script>
<script id="stickThis-js" src="https://tagasoft.com/wp-content/plugins/sticky-menu-or-anything-on-scroll/assets/js/stickThis.js?ver=2.1.1"></script>
<script id="imagesloaded-js" src="https://tagasoft.com/wp-content/plugins/bb-plugin/js/libs/jquery.imagesloaded.min.js?ver=2.10.2.2"></script>
<script id="jquery-throttle-js" src="https://tagasoft.com/wp-content/plugins/bb-plugin/js/libs/jquery.ba-throttle-debounce.min.js?ver=2.10.2.2"></script>
<script id="fl-builder-layout-bundle-14250f91eccb8f0a632a86c022b9c61b-js" src="https://tagasoft.com/wp-content/uploads/bb-plugin/cache/14250f91eccb8f0a632a86c022b9c61b-layout-bundle.js?ver=2.10.2.2-1.5.3"></script>
<script id="hoverIntent-js" src="https://tagasoft.com/wp-includes/js/hoverIntent.min.js?ver=1.10.2"></script>
<script id="superfish-js" src="https://tagasoft.com/wp-content/themes/genesis/lib/js/menu/superfish.min.js?ver=1.7.10"></script>
<script id="superfish-args-js" src="https://tagasoft.com/wp-content/themes/genesis/lib/js/menu/superfish.args.min.js?ver=3.6.2"></script>
<script id="responsive-js" src="https://tagasoft.com/wp-content/themes/dynamik-gen/lib/js/responsive.js?ver=2.6.9.95"></script>
<script id="googlesitekit-consent-mode-js" src="https://tagasoft.com/wp-content/plugins/google-site-kit/dist/assets/js/googlesitekit-consent-mode-86cb52dcb9f2b27ed244.js"></script>
<script id="sourcebuster-js-js" src="https://tagasoft.com/wp-content/plugins/woocommerce/assets/js/sourcebuster/sourcebuster.min.js?ver=10.8.1"></script>
<script id="wc-order-attribution-js-extra">
var wc_order_attribution = {"params":{"lifetime":1.0000000000000000818030539140313095458623138256371021270751953125e-5,"session":30,"base64":false,"ajaxurl":"https://tagasoft.com/wp-admin/admin-ajax.php","prefix":"wc_order_attribution_","allowTracking":true},"fields":{"source_type":"current.typ","referrer":"current_add.rf","utm_campaign":"current.cmp","utm_source":"current.src","utm_medium":"current.mdm","utm_content":"current.cnt","utm_id":"current.id","utm_term":"current.trm","utm_source_platform":"current.plt","utm_creative_format":"current.fmt","utm_marketing_tactic":"current.tct","session_entry":"current_add.ep","session_start_time":"current_add.fd","session_pages":"session.pgs","session_count":"udata.vst","user_agent":"udata.uag"}};
//# sourceURL=wc-order-attribution-js-extra
</script>
<script id="wc-order-attribution-js" src="https://tagasoft.com/wp-content/plugins/woocommerce/assets/js/frontend/order-attribution.min.js?ver=10.8.1"></script>
<script id="wp-consent-api-js-extra">
var consent_api = {"consent_type":"","waitfor_consent_hook":"","cookie_expiration":"30","cookie_prefix":"wp_consent","services":[]};
//# sourceURL=wp-consent-api-js-extra
</script>
<script id="wp-consent-api-js" src="https://tagasoft.com/wp-content/plugins/wp-consent-api/assets/js/wp-consent-api.min.js?ver=2.0.1"></script>
<script id="wp-consent-api-integration-js-before">
window.wc_order_attribution.params.consentCategory = "marketing";
//# sourceURL=wp-consent-api-integration-js-before
</script>
<script id="wp-consent-api-integration-js" src="https://tagasoft.com/wp-content/plugins/woocommerce/assets/js/frontend/wp-consent-api-integration.min.js?ver=10.8.1"></script>
<script id="wp-emoji-settings" type="application/json">
{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://tagasoft.com/wp-includes/js/wp-emoji-release.min.js?ver=b04ad6bd54b1cad6bc1ccd8994e0c3f6"}}
</script>
<script type="module">
/*! This file is auto-generated */
const a=JSON.parse(document.getElementById("wp-emoji-settings").textContent),o=(window._wpemojiSettings=a,"wpEmojiSettingsSupports"),s=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const a=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===a[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,a){let r;const o=(r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),s=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(e=>{s[e]=t(o,e,n,a)}),s}function r(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}a.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),c.toString(),p.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"});const r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=e=>{i(n=e.data),r.terminate(),t(n)})}catch(e){}i(n=f(s,u,c,p))}t(n)}).then(e=>{for(const n in e)a.supports[n]=e[n],a.supports.everything=a.supports.everything&&a.supports[n],"flag"!==n&&(a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&a.supports[n]);var t;a.supports.everythingExceptFlag=a.supports.everythingExceptFlag&&!a.supports.flag,a.supports.everything||((t=a.source||{}).concatemoji?r(t.concatemoji):t.wpemoji&&t.twemoji&&(r(t.twemoji),r(t.wpemoji)))});
//# sourceURL=https://tagasoft.com/wp-includes/js/wp-emoji-loader.min.js
</script>
    <style>
        footer.taga-footer {
            display: block !important;
            background: #131313 !important;
            width: 100% !important;
            padding: 2.5rem 1.5rem 1.75rem !important;
            color: #ffffff !important;
            font-family: 'Montserrat', 'Roboto', sans-serif !important;
            text-align: center !important;
            box-sizing: border-box !important;
        }

        footer.taga-footer .taga-footer-inner {
            max-width: 1100px !important;
            margin: 0 auto !important;
            text-align: center !important;
        }

        footer.taga-footer h2 {
            color: #fad357 !important;
            font-size: 26px !important;
            margin: 0 0 0.4rem !important;
            font-weight: 700 !important;
        }

        footer.taga-footer p {
            color: #ffffff !important;
            margin: 0 0 0.75rem !important;
            font-size: 14px !important;
        }

        footer.taga-footer .taga-footer-btn {
            display: inline-block !important;
            background: #ecb733 !important;
            color: #131313 !important;
            padding: 12px 26px !important;
            border-radius: 6px !important;
            font-weight: 600 !important;
            text-decoration: none !important;
            margin-bottom: 20px !important;
        }

        footer.taga-footer .taga-footer-btn:hover {
            background: #fad357 !important;
            color: #131313 !important;
        }

        footer.taga-footer .taga-footer-nav {
            margin: 16px 0 10px !important;
            font-size: 14px !important;
        }

        footer.taga-footer .taga-footer-nav a {
            color: #ffffff !important;
            margin: 0 12px !important;
            text-decoration: none !important;
        }

        footer.taga-footer .taga-footer-nav a:hover {
            color: #ecb733 !important;
        }

        footer.taga-footer .taga-footer-social {
            margin: 10px 0 !important;
        }

        footer.taga-footer .taga-footer-social a {
            color: #fad357 !important;
            font-size: 28px !important;
            text-decoration: none !important;
            font-weight: 700 !important;
        }

        footer.taga-footer .taga-footer-copy {
            color: #ffffff !important;
            font-size: 13px !important;
            line-height: 1.4 !important;
            opacity: 0.7 !important;
            margin-top: 6px !important;
        }
    </style>

    <footer class="taga-footer">
        <div class="taga-footer-inner">
            <h2>Want to know more?</h2>
            <p>Contact Ian Brown and the TAGAsoft team.</p>

            <a class="taga-footer-btn" href="/contact">
                Contact us
            </a>

            <nav class="taga-footer-nav">
                <a href="/">Home</a>
                <a href="/geotechnical-insights">Geotechnical Insights</a>
                <a href="/about">About</a>
                <a href="/software-licenses/">Software Licenses</a>
                <a href="/cart">Cart</a>
            </nav>

            <div class="taga-footer-social">
                <a href="https://www.linkedin.com/company/tagasoft" target="_blank" rel="noopener">in</a>
            </div>

            <p class="taga-footer-copy">
                Copyright © 2026 · TAGAsoft Engineering Software Ltd
            </p>
        </div>
    </footer>
    <script>
      document.addEventListener('DOMContentLoaded', function () {
        const links = document.querySelectorAll('a');

        links.forEach(function(link) {
          const text = link.textContent.trim().toLowerCase();
          const href = link.getAttribute('href') || '';

          if (
            text === 'download tslope' ||
            href === 'https://tagasoft.com/download/' ||
            href === 'https://tagasoft.com/download' ||
            href === '/download/' ||
            href === '/download'
          ) {
            link.style.setProperty('color', '#ecb733', 'important');
            link.style.setProperty('font-weight', '700', 'important');
          }
        });
      });
    </script>
    </body></html>
