/* Colors */

:root {
	--web-primary-color: #074c67;
	--web-primary-hover-color: #074c67;
	--web-links-color: #074c67;
	--web-links-hover-color: #074c67;
	--web-mobile-nav-bg: #074c67;
	--web-side-nav-title-bg: #074c67;
	--web-side-nav-title-text: #fff;

	--navy:   #074c67;
	--blue:   #2688bf;
	--green:   #007C4D;
	--lime:   #a6c632;
	--orange: #ff8b22;
  --orangeAA: #ae5f17;
	--salmon: #f9c1b9;
	--dark:   #403e3d;
	--cream:  #f6f3e6;
	--warm-white: #fffbf4;
	--text:   #000;
	--white:  #fff;
	--orbit-radius: 50vh; /* רדיוס המסלול הגדול */
	--planet-size: 120px;  /* גודל העיגולים הקטנים */
	--tilt: 60deg;         /* זווית ההטיה התלת-מימדית */
	--speed: 1000s;          /* מהירות סיבוב שלמה */
	--border-color: #D3C9B3; /* צבע קו המסלול והגבולות */

	/* Shared tokens */
	--navy-deep: #074c67;
	--line: rgba(0,0,0,.10);
	--muted: rgba(0,0,0,.55);
	--mono: 'JetBrains Mono', monospace;
}

/* Bootstrap Override */

.text-warning {
    color: var(--orange) !important;
}

.text-success {
    color: var(--green) !important;
}

.btn {
    border-radius: 3rem;
}

.btn-warning {
    background: var(--orange);
    border: 1px solid var(--orange);
}

.btn-warning:hover, .btn-warning:focus {
    background: var(--orange);
    border: 1px solid var(--orange);
    transform: scale(1.05);
}

@media (min-width: 1420px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1400px;
    }
}

a {
	color: var(--web-links-color);

	-o-transition: .5s;
	-ms-transition: .5s;
	-moz-transition: .5s;
	-webkit-transition: .5s;
	transition: .5s;
}

a:hover, a:focus {
	color: var(--web-links-hover-color);
}

.btn-primary {
  background: var(--dark);
  border: 1px solid var(--dark);
}
.btn-primary:hover, .btn-primary:focus {
  background: var(--white);
  color: var(--dark);
  border: 1px solid var(--dark);
}

.btn-lg {
    padding: 0.5rem 2rem;
    font-size: 1.25rem;
}

.btn-outline-primary {
    color: var(--web-primary-color);
    border-color: var(--web-primary-color);
}
.btn-outline-primary:hover, .btn-outline-primary:focus {
    background: var(--web-primary-hover-color);
	border-color: var(--web-primary-hover-color);
}

figure {
	margin: 0;
}

@media (min-width: 992px) {
	.table-responsive {
		display: table;
	}
}

.table {
	border: 1px solid var(--web-primary-color);
}

.table td, .table th {
	border-top: 1px solid var(--web-primary-color);
}

.table thead th {
    border-bottom: 2px solid var(--web-primary-color);
    background: #e6f6ff;
}

.table-bordered td, .table-bordered th {
    border: 1px solid var(--web-primary-color);
}

legend {
	font-size: 1rem;
}

.text-right {
	text-align: right!important;
}
.text-left {
	text-align: left!important;
}

.float-right {
	float: right!important;
}
.float-left {
	float: left!important;
}

/* Breadcrumbs */

.breadcrumbs ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.breadcrumbs ul > li {
	display: inline-block;
}

.breadcrumbs ul > li:after {
	font-family: 'FontAwesome';
	content: '\f104';
	padding: 0 5px;
	display: inline-block;
}

.breadcrumbs ul > li:last-child:after {
	content: '';
	padding: 0;
}

/* Skip Ads */

.skip-ad {
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	backdrop-filter: blur(4px);
}

.skip-ad .skip-ad-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 15px;
}

.skip-ad .skip-ad-content {
	position: relative;
}

.skip-ad .skip-ad-content .msg {
	background: #fff;
	padding: 30px;
}

.skip-ad img {
	max-width: 100%;
	display: block;
	margin: 0 auto;
	border-radius: 3rem;
}

.skip-ad .skip-ad-close {
	position: absolute;
	top: -25px;
    left: -30px;
	width: 100%;
	text-align: left;
	color: #000;
}

.skip-ad #close-skip-ad {
	display: inline-block;
	padding: 10px 20px;
	border-radius: 3rem;
	background: #fff;
	color: #000;
	border: 2px solid #000;
}

.skip-ad #close-skip-ad:focus, .skip-ad #close-skip-ad:hover {
	background: #000;
	color: #fff;
	border: 2px solid #fff;
}


/* Mobile Navigation */

.mobile-navigation  {
	position: fixed;
	top: 0;
	left: -300px;
	width: 300px;
	height: 100%;
	z-index: 9999999;
	
	transition: .5s;
	-o-transition: .5s;
	-ms-transition: .5s;
	-moz-transition: .5s;
	-webkit-transition: .5s;
	
	visibility: hidden;
	
	box-shadow: 0 0 0 rgba(0,0,0,0);

	background: var(--web-mobile-nav-bg);
	border-right: 2px solid #fff;
	box-shadow: 0 0 50px rgb(0 0 0 / 50%);
    backdrop-filter: blur(6px);
}

.mobile-navigation.open {
	left: 0;
	visibility: visible;
	box-shadow: 0 0 50px rgba(0,0,0,0.5);
}

.mobile-navigation .content {
	width: 100%;
	height: 100%;
	overflow: auto;
	position: relative;
}

.mobile-navigation .content .head {
	width: 100%;
	text-align: left;
	margin-bottom: -1rem;
}

.mobile-navigation .content .head .button {
    padding: 10px 15px;
    background: #333;
    color: #fff;
    border: 0;
    font-size: 20px;
    margin: 1rem;
}

.mobile-navigation nav {
	margin: 1rem;
	background: #fff;
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
}

.mobile-navigation nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.mobile-navigation nav a {
	color: inherit;
}

.mobile-navigation nav a.on,
.mobile-navigation nav li.on > span > a {
	font-weight: bold;
}

.mobile-navigation nav button {
	display: none;
}

.mobile-navigation nav ul ul {
	display: none;
}

.mobile-navigation nav li {
	border-bottom: 1px solid #ddd;
}
.mobile-navigation nav li > span {
	display: block;
	position: relative;
}
.mobile-navigation nav ul ul {
	background: rgba(0,0,0,0.02);
}
.mobile-navigation nav button {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
}
.mobile-navigation nav a {
	display: block;
	padding: 15px;
	margin-right: 48px;
}
.mobile-navigation nav .toggle-sub-menu {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 48px;
	overflow: hidden;
	
	padding: 0 15px;
	background: none;
	border: 0;
	background: rgba(0,0,0,0.02);
	color: inherit;
	
	font-family: 'FontAwesome';
	font-style: normal;
}
.mobile-navigation nav .toggle-sub-menu:after {
	content: '\f053';
}
.mobile-navigation nav .toggle-sub-menu:after {
	content: '\f053';
}
.mobile-navigation nav .toggle-sub-menu.opened:after {
	content: '\f078';
}
.mobile-navigation nav .toggle-sub-menu.no-sub-menu:after {
	content: '\f111';
	font-size: 80%;
}
.mobile-navigation nav .toggle-sub-menu.external-link:after {
	content: '\f08e';
}

.mobile-navigation-search {
	position: relative;
	margin: 1rem;
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
}

.mobile-navigation-search input {
	display: block;
	width: 100%;
	padding: 1rem;
	background: #fff;
	border: 0;
}

.mobile-navigation-search button {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	background: none;
	border: 0;
	padding: 0 1rem;
}

.mobile-navigation .content .head .button {
	background: #fff;
	color: rgb(43 43 43 / 100%);
}

.mobile-navigation .mobile-social {
	display: flex;
	padding: 0 1rem;
	gap: 15px;
}

.mobile-navigation .mobile-social > a {
	flex-shrink: 0;
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    color: #fff;
    font-size: 24px;
}

/* Social Sharing Buttons */

.social-share {
	font-size: 16px;
	text-align: center;
}

.social-share .h6 {
	font-size: 1.3rem;
}

.social-share a {
	min-width: 40px;
	text-align: center;
	display: inline-block;
}

/* InPage Navigation */

.sub-pages-nav.outside {
	margin-top: 1rem;
	margin-bottom: 2rem;
}

.sub-pages-nav ul {
	list-style: none;
	padding: 0;
	margin: 0 -1rem;
}

.sub-pages-nav ul ul {
	display: none;
}

.sub-pages-nav ul > li {
	width: 50%;
	float: right;
	position: relative;
	padding: 1rem;
}

@media (max-width: 768px) {
	.sub-pages-nav ul > li {
		width: 100%;
	}
}

.sub-pages-nav.with-icons ul>li {
	width: 25%;
}

@media (max-width: 768px) {
	.sub-pages-nav.with-icons ul>li {
		width: 50%;
	}
}

.sub-pages-nav a {
	display: block;
	color: inherit;
	border-right: 3px solid #0372ac;
	background: #f1f1f1;
	padding: 1rem;
	font-size: 1.3rem;
}

.sub-pages-nav.with-icons a {
	display: block;
	color: inherit;
	background: #fff;
	border: 1px solid #0372ac;
	color: #0056b3;
	padding: 1rem;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.1rem;
	height: 160px;
	position: relative;
	box-shadow: 0 0 26px rgb(0 0 0 / 13%);
}

.sub-pages-nav.with-icons a:hover {
	transform: scale(1.1);
}

.sub-pages-nav.outside a {
	background: #fff;
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
}

.sub-pages-nav .arrow {
	font-family: 'FontAwesome';
	font-style: normal;
	color: #657177;
}

.sub-pages-nav .arrow:before {
	content: '\f104';
}

.sub-pages-nav.with-icons a .icon {
	height: 90px;
	margin-bottom: .5rem;
	display: block;
	position: relative;
}

.sub-pages-nav.with-icons a .icon img {
	max-width: 100%;
	max-height: 90px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-right: -50%;
	transform: translate(-50%, -50%);
}

/* Mode Table Of Contents */

.toc-container {
	border: 1px solid #ddd;
	background: #f1f1f1;
	display: inline-block;
	padding: .5rem;
}

.toc-toggle a span {
	display: none;
}

.toc-toggle a:before {
	content: 'הצג';
}

.toc-container.active .toc-toggle a:before {
	content: 'הסתר';
}

.toc-expendable {
	display: none;
}

.toc-expendable ol {
	margin: 0;
	margin-top: 1rem;
}

/* InPage Style - Rich Content */

.rich-content h2,
.rich-content h3,
.rich-content h4,
.rich-content h5,
.rich-content h6 {
	margin-bottom: 1rem;
	font-weight: bold;
}

.rich-content h2 {
	color: #333;
}

.rich-content h3 {
	color: #333;
}

.rich-content h4 {
	color: #333;
}

.rich-content h5 {
	color: #333;
}

.rich-content h6 {
	color: #333;
}


.rich-content .contact-man {
	display: block;
    color: inherit;
    border-bottom: 3px solid #d8d8d8;
    background: #f1f1f1;
    padding: 1rem;
}

.rich-content .contact-man .contact-name {
	font-size: 1.5rem;
	font-weight: bold;
}


/* Media Prints * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

/* Media Print */

@media print {
	.page-content {
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}
	.header,
	.blocks-skip,
	#bNagish,
	.mobile-navigation-container,
	.page-header,
	.social-share,
	.footer,
	.skip
	{
		display: none;
	}
}

/* Card */

.card {
  background: #fff;
  border-radius: 25px;
  text-align: right;
  
}
.card-header {
}
.card-header h2 {
	color: inherit;
	margin: 0;
	font-size: 1.3rem;
}
.card-body {
	padding: 1.5rem;
}

/* InPage form category group */

.form-category-group {
	background: #f1f1f1;
	border-right: 3px solid #2d55aa;
	padding: .75rem;
	margin-bottom: 1.5rem;
}

.form-category-group .form-category-group {
	background: #fff;
}

.form-category-group a {
	color: inherit;
}

.form-category-group .tofes-link {
	display: inline-block;
	padding: .1rem .6rem;
	border-radius: 2rem;
	border: 1px solid #ddd;
	background: #fff;
	margin-left: .5rem;
	margin-bottom: .8rem;
}


/* page event */

.page-event-promo {
	display: block;
    padding: 1rem;
    color: #000;
    margin: 15px 0;
    background: #f1f1f1;
    border-bottom: 3px solid #d8d8d8;
    box-shadow: 0 0 30px rgb(0 0 0 / 5%);
}

.page-event-promo:hover, .page-event-promo:focus {
    text-decoration: none;
    color: #fff;
    transform: scale(1.1);
    background: #0c97ff;
    border-bottom: 3px solid #2d55aa;
}

.page-event-promo h3 {
	height: 4.5rem;
    font-size: 1.2rem;
    color: #2d55aa;
    overflow: hidden;
}

.page-event-promo:hover h3, .page-event-promo:focus h3 {
    color: #fff;
}

.page-event-promo .date {
	background: #199cff;
    color: #fff;
    padding: 0 5px;
    border-radius: 2rem;
}

.page-event-promo:hover .date, .page-event-promo:focus .date {
    color: #199cff;
	background: #fff;
}

.page-events .more {
	text-align: left;
}

/* InPage phonebook */

.page-phonebook-category {
	margin: 15px 0;
	
	-o-transition:.5s;
	-ms-transition:.5s;
	-moz-transition:.5s;
	-webkit-transition:.5s;
	transition:.5s;

	border: 1px solid #E2E6EF;
	border-radius: 20px;
}

.page-phonebook-category-title h3 {
	color: #0372ac;
    background: #fff;
    margin: 0;
    padding: 0.5rem 1rem;
    font-size: 1.2rem;
    -o-transition: .5s;
    -ms-transition: .5s;
    -moz-transition: .5s;
    -webkit-transition: .5s;
    transition: .5s;
    cursor: pointer;
}

.page-phonebook-category-title h3:before {
	content: '\f196';
	font-family: 'FontAwesome';
	padding-left: .5rem;
}

.page-phonebook-category.opened .page-phonebook-category-title h3:before {
	content: '\f147';
	font-family: 'FontAwesome';
	padding-left: .5rem;
}

.page-phonebook-category-title h3:hover,
.page-phonebook-category.opened .page-phonebook-category-title h3 {
	background-color: #0372ac;
	color: #fff;
}
.page-phonebook-category-body {
	display: none;
	background-color: #fff;
	border: 1px solid #0372ac;
}

.page-phonebook-category.opened .page-phonebook-category-body {
	display: block;
	padding: 1rem;
}

.page-phonebook .phonebook h2 {
	border-bottom: 1px solid #ddd;
	color: #0372ac;
	padding: 10px 0;
	font-size: 1.2em;
	margin: 0;
}

.page-phonebook .phonebook.active > h2 {
	padding: 10px;
}

.page-phonebook .phonebook h2 a {
	color: inherit;
}

.page-phonebook .phonebook.active {
	margin-bottom: 15px;
	border: 1px solid #0372ac;
	box-shadow: 3px 3px 10px rgba(0,0,0,0.1);
}

.page-phonebook .phonebook.active > h2 {
	background: #0372ac;
	color: #fff;
}

.page-phonebook .phonebook > h2 > a > em:before {
	content: '\f137';
}

.page-phonebook .phonebook.active > h2 > a > em:before {
	content: '\f13a';
}

.page-phonebook .phonebook .info {
	background: #f1f1f1;
	padding: 15px;
}


.page-phonebook .phonebook .info:focus {
	outline: 0;
}

.page-phonebook .phonebook .info p {
	margin: 0 0 20px 0;
}

.page-phonebook .member {
	border-bottom: 1px solid #ddd;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.page-phonebook .pic {
	float: right;
	margin-left: 10px;
}

.page-phonebook .pic img {
	display: block;
	max-width: 100px;
}


.page-phonebook .fa-stack {
	font-size: 100%;
}

.page-phonebook .phone .fa-stack {
	color: #72b916;
}

.page-phonebook .mobile .fa-stack {
	color: #4479b0;
}

.page-phonebook .email .fa-stack {
	color: #d82727;
}

.page-phonebook .fax .fa-stack {
	color: #804ab2;
}

.page-phonebook .fa-mobile {
	font-size: 130%;
}

.page-phonebook .fa-envelope {
	font-size: 90%;
}

.page-phonebook .fa-fax {
	font-size: 90%;
}

.page-phonebook .contact-info {
	float: right;
}

@media (min-width: 768px) {
	.page-phonebook .contact-info {
		width: 50%;
	}
}
@media (max-width: 767px) {
	.page-phonebook .contact-info {
		margin-left: 5px;
	}
}

.page-phonebook .contact-info a {
	color: inherit;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Clash Grotesk', sans-serif;
  color: var(--text);
  overflow-x: hidden;
  /*background-color: var(--warm-white);*/
}

[dir="rtl"] body,
[dir="rtl"] .btn,
[dir="rtl"] .footer-cta__link {
  font-family: 'Heebo', sans-serif;
}

/* ── NAV ── */
.nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  display: flex;
  justify-content: center;
  padding: 20px 0;
  pointer-events: none;
}

.nav-pill {
  pointer-events: all;
  display: flex;
  align-items: center;
  gap: 40px;
  background: rgba(237, 237, 237, 0.72);
  backdrop-filter: blur(16px);
  border-radius: 999px;
  padding: 11px 40px;
  height: 46px;
  position: relative;
}

.nav-item {
  font-size: 16px;
  letter-spacing: 0.01em;
  color: #000;
  text-decoration: none;
  opacity: 0.7;
  transition: opacity 0.2s;
  position: relative;
  padding: 8px 0;
}

.nav-item:hover {
  opacity: 1;
}

button.nav-item {
  background: none;
  border: none;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  color: inherit;
  cursor: default;
}

.nav-logo {
  height: 22px;
  display: block;
}

/* ── MEGA DROPDOWN ── */
.nav-dropdown {
  padding-bottom: 24px;
  margin-bottom: -24px;
}

.nav-dropdown>.nav-item {
  cursor: default;
}

.nav-dropdown>.nav-item[aria-expanded="true"] {
  opacity: 1;
}

.mega-menu {
  position: absolute;
  top: calc(100% + 20px);
  left: 50%;
  transform: translateX(-50%);
  background: rgba(255, 255, 255, 0.97);
  backdrop-filter: blur(20px);
  border-radius: 16px;
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.06);
  padding: 32px 40px;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-50%) translateY(8px);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
  pointer-events: none;
  z-index: 200;
  min-width: 200px;
}

.mega-menu--wide {
  min-width: 580px;
}

.nav-dropdown:hover .mega-menu,
.nav-dropdown.is-open .mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
  pointer-events: all;
}

/* invisible bridge between pill and dropdown */
.mega-menu::before {
  content: '';
  position: absolute;
  top: -24px;
  left: -20px;
  right: -20px;
  height: 28px;
}

/* Focus styles for accessibility */
.nav-item:focus-visible,
.mega-link:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 2px;
  border-radius: 4px;
}

.mega-columns {
  display: flex;
  gap: 48px;
}

.mega-column {
  min-width: 180px;
}

.mega-column-title {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--navy);
  margin-bottom: 16px;
  opacity: 0.5;
}

.mega-link {
  display: block;
  font-size: 14px;
  color: var(--dark);
  text-decoration: none;
  padding: 6px 0;
  transition: color 0.15s;
  white-space: nowrap;
}

.mega-link:hover {
  color: var(--blue);
}

.mega-simple-list {
  display: flex;
  flex-direction: column;
}

/* ── SHAPES ── */
.shapes {
  position: relative;
  height: 1808px;
  background: var(--white);
  width: 100%;
  overflow: clip;
}

.shape {
  position: absolute;
  background-position: bottom;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 3;
}

.shape-1 {
  background-image: url('images/vector_1.svg');
  width: 75px;
  height: 75px;
  top: 50px;
  left: 10%;
}

.shape-2 {
  background-image: url('images/vector_2.svg');
  width: 75px;
  height: 245px;
  top: -130px;
  left: 35%;
}

.shape-3 {
  background-image: url('images/vector_3.svg');
  width: 75px;
  height: 245px;
  top: -180px;
  right: 10%;
}

.shape-4 {
  background-image: url('images/vector_4.svg');
  width: 160px;
  height: 235px;
  top: 180px;
  right: 10%;
}

.shape-5 {
  background-image: url('images/vector_5.svg');
  width: 75px;
  height: 160px;
  top: 300px;
  left: 20%;
}

.shape-6 {
  background-image: url('images/vector_6.svg');
  width: 75px;
  height: 160px;
  top: 550px;
  left: 35%;
}

.shape-7 {
  background-image: url('images/vector_7.svg');
  width: 88px;
  height: 160px;
  top: 730px;
  right: calc(50% - 130px);
}

.shape-8 {
  background-image: url('images/vector_8.svg');
  width: 170px;
  height: 245px;
  top: 830px;
  right: calc(50% - 100px);
}

.shape-9 {
  background-image: url('images/vector_9.svg');
  width: 67px;
  height: 145px;
  top: 1020px;
  left: calc(50% - 72px);
}

.shape-10 {
  background-image: url('images/vector_10.svg');
  width: 67px;
  height: 145px;
  top: 1020px;
  right: calc(50% - 72px);
}

.shape-11 {
  background-image: url('images/vector_11.svg');
  width: 144px;
  height: 211px;
  top: 1175px;
  left: calc(50% - 72px);
}

.shape-12 {
  background-image: url('images/vector_12.svg');
  width: 72px;
  height: 99px;
  top: 1345px;
  right: calc(50% - 72px);
}

.shape-13 {
  background-image: url('images/vector_13.svg');
  width: 72px;
  height: 50px;
  top: 1395px;
  left: calc(50% - 72px);
}

.wave-overlay {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 380px;
  background-color: var(--white);
  z-index: 2;
}

/* scroll-reveal */
.reveal {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1), transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.wave {
  position: absolute;
  background-position: bottom;
  background-size: contain;
  background-repeat: no-repeat;
  top: 1432px;
  z-index: 1;
  clip-path: inset(0 0 100% 0);
}

.wave-1 {
  background-image: url('images/wave-1.svg');
  width: 683px;
  height: 376px;
  right: calc(50% - 718px);
}

.wave-2 {
  background-image: url('images/wave-2.svg');
  width: 683px;
  height: 376px;
  right: calc(50% - 522px);
}

.wave-3 {
  background-image: url('images/wave-3.svg');
  width: 683px;
  height: 376px;
  left: calc(50% - 521px);
}

.wave-4 {
  background-image: url('images/wave-4.svg');
  width: 683px;
  height: 376px;
  left: calc(50% - 718px);
}

.wave::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 20%, var(--navy));
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: bottom;
  mask-position: bottom;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.wave-1::after {
  -webkit-mask-image: url('images/wave-1.svg');
  mask-image: url('images/wave-1.svg');
}

.wave-2::after {
  -webkit-mask-image: url('images/wave-2.svg');
  mask-image: url('images/wave-2.svg');
}

.wave-3::after {
  -webkit-mask-image: url('images/wave-3.svg');
  mask-image: url('images/wave-3.svg');
}

.wave-4::after {
  -webkit-mask-image: url('images/wave-4.svg');
  mask-image: url('images/wave-4.svg');
}

/* ── HERO ── */
.hero-content {
  position: absolute;
  top: 260px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  text-align: center;
  width: 960px;
  max-width: 90vw;
}

.hero-heading {
  font-size: clamp(52px, 6.7vw, 96px);
  line-height: 1;
  letter-spacing: -0.02em;
  color: var(--text);
  max-width: 900px;
}

.hero-desc {
  font-size: 20px;
  line-height: 1.4;
  color: var(--text);
  max-width: 640px;
  opacity: 0.75;
}

.btn-dark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 48px;
  padding: 0 36px;
  border-radius: 999px;
  background: var(--dark);
  color: var(--white);
  font-size: 17px;
  font-weight: 500;
  letter-spacing: -0.01em;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: opacity 0.2s, transform 0.2s;
}

.btn-dark:hover {
  opacity: 0.85;
  transform: translateY(-1px);
}

.btn-ghost {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 48px;
  padding: 0 28px;
  border-radius: 999px;
  border: 1.5px solid rgba(0,0,0,.18);
  background: transparent;
  font-size: 16px;
  font-weight: 500;
  color: var(--text);
  text-decoration: none;
  cursor: pointer;
  transition: border-color 0.2s, background 0.2s;
}

.btn-ghost:hover {
  border-color: var(--navy);
  background: rgba(7,76,103,.04);
}

/* Shared eyebrow / label */
.eyebrow {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--orange);
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.eyebrow::before {
  content: '';
  width: 24px;
  height: 1px;
  background: var(--orange);
}

.eyebrow--green { color: var(--lime); }
.eyebrow--green::before { background: var(--lime); }

/* Shared gradient bar */
.gradient-bar {
  height: 4px;
  border-radius: 2px;
  background: linear-gradient(to right, var(--green) 0%, var(--lime) 21%, var(--orange) 53%, var(--salmon) 70%, var(--blue) 100%);
}

/* Shared dot pattern */
.dot-bg {
  background-image: radial-gradient(circle, rgba(7,40,52,0.06) 1px, transparent 1.2px);
  background-size: 22px 22px;
}

.dot-bg-light {
  background-image: radial-gradient(circle, rgba(255,255,255,0.18) 1px, transparent 1.5px);
  background-size: 28px 28px;
}

.btn-dark--mt {
  margin-top: 8px;
}

/* ── FX BUTTON — animated conic border on hover ── */

@property --trace-angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

.fx-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: inherit;
  font-size: 20px;
  line-height: 1;
  letter-spacing: -0.02em;
  border-radius: 999px;
  padding: 14px 44px;
  cursor: pointer;
  border: 1px solid transparent;
  color: var(--white);
  text-decoration: none;
  overflow: hidden;
  isolation: isolate;
  direction: ltr;
  will-change: transform, padding, letter-spacing;
  box-shadow: 0 1px 2px rgba(7, 40, 52, 0.04);
  transition:
    padding .45s cubic-bezier(.2, .7, .2, 1),
    letter-spacing .45s ease,
    transform .45s cubic-bezier(.2, .7, .2, 1),
    box-shadow .45s ease,
    background .25s ease,
    color .25s ease,
    border-color .25s ease;
}

.fx-btn > span {
  position: relative;
  z-index: 2;
  display: inline-block;
}

.fx-btn::before {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: 999px;
  background: conic-gradient(from var(--trace-angle),
    #007C4D 0%, #A6C632 20%, #FF8B22 40%,
    #F9C1B9 60%, #2688BF 80%, #007C4D 100%);
  z-index: -2;
  opacity: 0;
  transition: opacity .35s ease;
  animation: trace-spin 4s linear infinite;
  will-change: --trace-angle;
}

.fx-btn::after {
  content: "";
  position: absolute;
  inset: 1px;
  background: var(--dark);
  border-radius: 999px;
  z-index: -1;
  transition: background .25s ease;
}

.fx-btn:hover::before {
  opacity: 1;
}

.fx-btn:hover::after {
  background: var(--white);
}

.fx-btn:hover {
  padding-left: 64px;
  padding-right: 64px;
  letter-spacing: 0.04em;
  color: var(--dark);
  text-decoration: none;
  box-shadow:
    0 22px 36px -12px rgba(7, 40, 52, 0.28),
    0 8px 16px -4px rgba(7, 40, 52, 0.10);
}

@keyframes trace-spin {
  to { --trace-angle: 360deg; }
}


/* transition words */
.transition-words {
  position: absolute;
  top: 1180px;
  left: 0;
  right: 0;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  padding: 0 200px;
  overflow: hidden;
}

.transition-word {
  font-size: clamp(40px, 4.4vw, 64px);
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--text);
  will-change: transform, opacity;
  transition: transform 0.1s linear, opacity 0.1s linear;
}

.transition-word--left {
  display: inline-flex;
  align-items: baseline;
  gap: 0;
}

.transition-word__rotating-wrapper {
  display: inline-block;
  position: relative;
  overflow: hidden;
  vertical-align: baseline;
  margin: 0 0.25em;
}

.transition-word__rotating {
  display: inline-block;
  position: relative;
  padding-bottom: 4px;
  border-bottom: 3px solid var(--blue);
  transition: none;
}

.transition-word__rotating.flip-out {
  animation: flipOut 0.35s ease-in forwards;
}

.transition-word__rotating.flip-in {
  animation: flipIn 0.35s ease-out forwards;
}

@keyframes flipOut {
  0% {
    transform: rotateX(0deg);
    opacity: 1;
  }

  100% {
    transform: rotateX(-90deg);
    opacity: 0;
  }
}

@keyframes flipIn {
  0% {
    transform: rotateX(90deg);
    opacity: 0;
  }

  100% {
    transform: rotateX(0deg);
    opacity: 1;
  }
}

.transition-word__rotating-wrapper {
  perspective: 400px;
}

.transition-word:first-child {
  transform: translateX(-120%);
  opacity: 0;
}

.transition-word:last-child {
  transform: translateX(120%);
  opacity: 0;
}

/* ── DARK SECTIONS ── */
.section-dark {
  background: var(--navy);
  color: var(--white);
  padding: 96px 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.section-dark-inner {
  max-width: 768px;
}

.section-title-lg {
  font-size: clamp(40px, 4.4vw, 64px);
  line-height: 1.1;
  letter-spacing: -0.02em;
}

.section-title-xl {
  font-size: clamp(60px, 6.7vw, 96px);
  line-height: 1;
  letter-spacing: -0.02em;
}

.tagline {
  font-size: 20px;
  color: var(--lime);
  letter-spacing: 0.02em;
  margin-bottom: 16px;
}

.section-desc {
  font-size: 20px;
  line-height: 1.4;
  opacity: 0.8;
  max-width: 560px;
  margin: 0 auto;
}

/* ── BINA 360 SCROLL ANIMATION ── */
.b360-scroll {
  height: 450vh;
  position: relative;
}

.b360-sticky {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
  background: var(--navy);
}

.b360-lense-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 5;
  pointer-events: none;
  max-width: 700px;
  width: 90vw;
}

.b360-lense-heading {
  font-size: clamp(40px, 4.4vw, 64px);
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: #fff;
}

.b360-conic {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  width: 200vmax;
  height: 200vmax;
  border-radius: 50%;
  overflow: hidden;
  will-change: transform;
}

.b360-conic-inner {
  width: 100%;
  height: 150%;
  margin: -25% 0 0 -25%;
  border-radius: 50%;
  background: conic-gradient(rgb(254, 140, 34) 5%, rgb(230, 208, 60) 16%, rgb(225, 222, 66) 20%,
      rgb(162, 196, 50) 31%, rgb(10, 128, 76) 48%, rgb(0, 124, 78) 51%,
      rgb(37, 135, 188) 69%, rgb(220, 185, 185) 81%, rgb(246, 192, 185) 85%,
      rgb(247, 186, 168) 88%, rgb(254, 140, 34) 100%);
}

.b360-white {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  width: 200vmax;
  height: 200vmax;
  border-radius: 50%;
  background: rgb(255, 251, 244);
  will-change: transform;
}

.b360-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  opacity: 1;
  will-change: clip-path, mask, transform;
  z-index: 10;
  white-space: nowrap;
  -webkit-mask: radial-gradient(circle 0px at 50% 50%, black 99%, transparent 100%);
  mask: radial-gradient(circle 0px at 50% 50%, black 99%, transparent 100%);
  transition: transform 0.6s ease;
}

.b360-intro {
  font-size: 20px;
  color: var(--lime);
  letter-spacing: 0.02em;
  margin-bottom: 16px;
}

.b360-heading {
  font-size: clamp(60px, 6.7vw, 96px);
  line-height: 1;
  letter-spacing: -0.02em;
  color: #000;
  margin-bottom: 24px;
}

.b360-desc {
  font-size: 20px;
  line-height: 1.4;
  color: #000;
  opacity: 0.7;
  max-width: 560px;
  white-space: normal;
  margin: 0 auto;
}

.b360-cards {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) translateY(100%);
  width: min(1028px, 90vw);
  will-change: transform;
  z-index: 20;
}

.b360-cards-grid {
  border-radius: 20px 20px 0 0;
  overflow: hidden;
  box-shadow: 0 -16px 64px rgba(0, 0, 0, 0.3);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3px;
  background: #ddd;
}

/* ── GRADIENT CIRCLE SECTION ── */
.circle-section {
  position: relative;
  background: var(--navy);
  overflow: hidden;
  min-height: 900px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.grad-circle-wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) translateY(-100px);
  width: 820px;
  height: 820px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
}

.grad-circle-inner {
  width: 150%;
  height: 150%;
  margin: -25% 0 0 -25%;
  border-radius: 50%;
  background: conic-gradient(rgb(254, 140, 34) 5%, rgb(230, 208, 60) 16%, rgb(225, 222, 66) 20%,
      rgb(162, 196, 50) 31%, rgb(10, 128, 76) 48%, rgb(0, 124, 78) 51%,
      rgb(37, 135, 188) 69%, rgb(220, 185, 185) 81%, rgb(246, 192, 185) 85%,
      rgb(247, 186, 168) 88%, rgb(254, 140, 34) 100%);
}

.grad-circle-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 55%;
  height: 55%;
  border-radius: 50%;
  background: var(--warm-white);
}

.circle-content {
  position: relative;
  z-index: 10;
  text-align: center;
  padding: 80px 80px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin-bottom: 60px;
}

/* ── PRODUCT CARDS ── */
.product-grid {
  position: relative;
  z-index: 10;
  width: 100%;
  max-width: 1028px;
  margin: 0 auto;
}

.product-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
}

.product-card {
  background: #fff;
  aspect-ratio: 4/3;
  display: flex;
  flex-direction: column;
  padding: 20px;
  gap: 12px;
}

.product-card--resident {
  background: #f7f9fc;
}

.product-card--engagement {
  background: #f5f9f5;
}

.product-card--agenda {
  background: #fff8f5;
}

.product-card--reports {
  background: #fdf9ff;
}

.product-card--analytics {
  background: #f9fdf9;
}

.product-card-num {
  font-size: 12px;
  color: var(--blue);
  font-weight: 500;
  opacity: 0.7;
}

.product-card-bar {
  height: 6px;
  border-radius: 3px;
  background: linear-gradient(to right, var(--lime), var(--blue));
  margin-bottom: 4px;
}

.product-card-bar--blue {
  height: 8px;
  border-radius: 4px;
  background: var(--blue);
  opacity: 0.4;
}

.product-card-bar--lime {
  height: 8px;
  border-radius: 4px;
  background: var(--lime);
  opacity: 0.5;
}

.product-card-bar--orange {
  height: 8px;
  border-radius: 4px;
  background: var(--orange);
  opacity: 0.5;
}

.product-card-bar--purple {
  height: 8px;
  border-radius: 4px;
  background: #9b6ed0;
  opacity: 0.4;
}

.product-card-bar--green {
  height: 8px;
  border-radius: 4px;
  background: #00a650;
  opacity: 0.4;
}

.product-card-rows {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

.product-card-row {
  height: 12px;
  border-radius: 4px;
  background: #ebebeb;
}

.product-card-row:nth-child(2) {
  width: 80%;
}

.product-card-row:nth-child(3) {
  width: 60%;
}

.product-card-placeholder {
  height: 60px;
  border-radius: 8px;
  background: #f0f0f0;
  margin-top: auto;
}

.product-card-placeholder--blue {
  background: #e8f0f8;
}

.product-card-placeholder--green {
  background: #eaf4e8;
}

.product-card-placeholder--orange {
  background: #fdeee5;
}

.product-card-placeholder--purple {
  background: #f3eafc;
}

.product-card-placeholder--analytics {
  background: #e5f5e8;
}

/* ── BINA 360 LIGHT ── */
.bina360-light {
  position: relative;
  overflow: hidden;
  background: var(--white);
  min-height: 1200px;
  padding-bottom: 80px;
}

.bina360-light .grad-circle-wrap {
  top: -20%;
  transform: translateX(-50%);
}

.bina360-light .grad-circle-center {
  background: var(--warm-white);
}

.bina360-light .section-title-xl {
  color: var(--text);
}

.bina360-light .section-desc {
  color: var(--text);
}

/* ── FEATURE CARDS ── */
.features-section {
  padding: 96px 80px 200px;
  background: var(--white);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  position: relative;
}

.feature-card {
  width: 100%;
  max-width: 1400px;
  border-radius: 40px;
  gap: 64px;
  align-items: start;
  position: sticky;
  transition: box-shadow 0.3s ease;
}

.feature-card:nth-child(1) {
  background-color: var(--navy);
  color: var(--white);
  z-index: 1;
}

.feature-card:nth-child(2) {
  background-color: var(--blue);
  color: var(--white);
  z-index: 2;
}

.feature-card:nth-child(3) {
  background-color: var(--green);
  color: var(--white);
  z-index: 3;
}

.feature-card:nth-child(4) {
  background-color: var(--lime);
  color: var(--white);
  z-index: 4;
}

.feature-card:nth-child(5) {
  background-color: var(--orange);
  color: var(--white);
  z-index: 5;
}

.feature-card:nth-child(6) {
  background-color: var(--salmon);
  color: var(--dark);
  z-index: 6;
}

.feature-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  grid-column: 1 / -1;
  padding: 40px;
  background: rgba(0, 0, 0, 0.1);
  border-radius: 40px;
}

.feature-card:nth-child(6) .feature-card-header {
  background: rgba(255, 255, 255, 0.1);
}

.feature-card-title {
  font-size: clamp(36px, 4vw, 56px);
  line-height: 1;
  margin: 0;
}

.feature-card-num {
  font-size: 56px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.35);
  font-variant-numeric: tabular-nums;
}

.feature-card-body {
  padding: 40px;
  display: grid;
  grid-template-columns: 2fr 3fr;
  gap: 40px;
}

.feature-card-desc {
  font-size: 16px;
  line-height: 1.6;
}


.feature-card-image {
perspective: 1200px;
    perspective-origin: 50% 50%;
    transform: translateX(-100px);
    transition: transform .3s ease-out;
}
.feature-card-image img {
    border-radius: 16px;
    width: 100%;
    border: 5px solid #fff;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);

       transform: rotateY(12deg) rotateX(4deg);
    transform-style: preserve-3d;
    transition: transform .3s ease-out;
    box-shadow: 0 25px 60px rgba(0, 0, 0, .18), 0 8px 20px rgba(0, 0, 0, .12), 20px 20px 40px rgba(0, 0, 0, .08);
        
}

/* ── PATTERN DIVIDER ── */
.pattern-divider {
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.blocks-row {
  display: flex;
  gap: 6px;
  width: max-content;
}

.block {
  width: 72px;
  height: 72px;
  border-radius: 12px;
  flex-shrink: 0;
}

/* ── HOW IT WORKS ── */
.how-section {
  padding: 200px 80px;
  background: var(--white);
  position: relative;
  overflow: hidden;
}

.how-inner {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 64px;
}

.how-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  text-align: center;
}

.how-heading {
  font-size: clamp(60px, 6.7vw, 96px);
  line-height: 1;
  letter-spacing: -0.02em;
}

.step-tabs {
  display: flex;
  gap: 40px;
  justify-content: center;
}

.step-tab {
  font-size: 18px;
  cursor: pointer;
  padding-bottom: 8px;
  border-bottom: 2px solid transparent;
  transition: border-color 0.2s, color 0.2s;
  color: rgba(0, 0, 0, 0.4);
}

.step-tab.active {
  border-bottom-color: var(--navy);
  color: var(--navy);
}

.how-carousel {
  border: 1.5px solid #ddd;
  border-radius: 24px;
  overflow: hidden;
  display: flex;
  background: var(--white);
}

.how-sidebar {
  width: 280px;
  flex-shrink: 0;
  background: #f7f7f7;
  border-right: 1.5px solid #ddd;
  display: flex;
  flex-direction: column;
}

.how-sidebar-item {
  padding: 28px 32px;
  font-size: 16px;
  color: rgba(0, 0, 0, 0.5);
  border-bottom: 1px solid #e5e5e5;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}

.how-sidebar-item.active {
  background: var(--white);
  color: var(--navy);
  font-weight: 500;
}

.how-content {
  flex: 1;
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.how-content-top {
  display: flex;
  gap: 16px;
}

.how-content-block {
  background: #f0f0f0;
  border-radius: 12px;
  flex: 1;
  aspect-ratio: 5/3;
}

.how-content-block--blue {
  background: linear-gradient(135deg, #e8f4fb, #d0e9f5);
}

.how-content-block--green {
  background: linear-gradient(135deg, #eef6ea, #d8edce);
}

.how-content-block-small {
  width: 200px;
  flex-shrink: 0;
}

.how-content-bottom {
  display: flex;
  gap: 16px;
}

.how-content-bar {
  flex: 1;
  height: 80px;
  border-radius: 12px;
  background: #f5f5f5;
}

.how-content-bar--lime {
  width: 80px;
  flex: none;
  height: 80px;
  border-radius: 12px;
  background: var(--lime);
  opacity: 0.3;
}

.how-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-top: 8px;
}

.circle-btn {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1.5px solid #ccc;
  background: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s;
}

.circle-btn:hover {
  border-color: var(--navy);
}

.nav-dots {
  display: flex;
  gap: 12px;
  align-items: center;
}

.dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ccc;
  transition: background 0.2s;
}

.dot.active {
  background: var(--navy);
}

/* ── USE CASES ── */
.use-cases {
  padding: 120px 80px;
  background: var(--white);
}

.use-cases-inner {
  max-width: 1280px;
  margin: 0 auto;
}

.use-cases-header {
  font-size: clamp(60px, 6.7vw, 96px);
  line-height: 1;
  letter-spacing: -0.02em;
  text-align: center;
  margin-bottom: 64px;
}

.use-cases-grid-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  height: 80vh;
  max-height: 720px;
}

.left-col {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.right-col {
  display: grid;
  grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  min-height: 0;
}

.use-card {
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  background: #ddd;
}

.use-card--full {
  height: 100%;
}

.use-card--wide {
  grid-column: span 2;
}

.use-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.use-card-img--tall {
  height: 100%;
}

.use-card-img--short {
  height: 100%;
}

.use-card-footer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.use-card-title {
  padding: 24px;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.1;
  color: var(--white);
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
  max-width: 260px;
}

.use-card-title--sm {
  font-size: 22px;
}

.arrow-btn {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(8px);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin: 24px;
}

/* ── Use-card expand animation ── */
.use-cases-grid-layout {
  position: relative;
}

.use-card {
  cursor: pointer;
}

/* Hover hint — subtle zoom + overlay tease */
.use-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  border-radius: inherit;
  transition: background 0.3s ease;
  z-index: 3;
  pointer-events: none;
}

.use-card:hover::after {
  background: rgba(0,0,0,0.15);
}

.use-card:hover img {
  transform: scale(1.05);
}

.use-card img {
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.use-card-info {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.5) 45%, rgba(0,0,0,0.15) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 48px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
  z-index: 5;
}

/* Close button */
.use-card-close {
  position: absolute;
  top: 24px;
  right: 24px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(255,255,255,0.15);
  backdrop-filter: blur(8px);
  border: 1.5px solid rgba(255,255,255,0.3);
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  opacity: 0;
  transform: scale(0.7) rotate(-90deg);
  transition: opacity 0.3s ease 0.3s, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1) 0.3s,
              background 0.2s ease;
  pointer-events: none;
}

.use-card-close:hover {
  background: rgba(255,255,255,0.3);
}

.use-card-info-title {
  font-size: 36px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 12px;
  transform: translateY(20px);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.15s,
              opacity 0.45s ease 0.15s;
  opacity: 0;
}

.use-card-info-text {
  font-size: 17px;
  line-height: 1.6;
  color: rgba(255,255,255,0.85);
  max-width: 480px;
  transform: translateY(24px);
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.22s,
              opacity 0.45s ease 0.22s;
  opacity: 0;
}

/* Expanded = active card */
.use-card.is-active {
  position: absolute !important;
  z-index: 50;
  border-radius: 20px;
  transition: top 0.5s cubic-bezier(0.22, 1, 0.36, 1),
              left 0.5s cubic-bezier(0.22, 1, 0.36, 1),
              width 0.5s cubic-bezier(0.22, 1, 0.36, 1),
              height 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.use-card.is-active::after {
  display: none;
}

.use-card.is-active .use-card-footer {
  opacity: 0;
  transition: opacity 0.15s ease;
}

.use-card.is-active .use-card-info {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.4s ease 0.2s;
}

.use-card.is-active .use-card-info-title,
.use-card.is-active .use-card-info-text {
  transform: translateY(0);
  opacity: 1;
}

.use-card.is-active .use-card-close {
  opacity: 1;
  transform: scale(1) rotate(0deg);
  pointer-events: auto;
}

/* Collapsing state — keeps position absolute while animating back */
.use-card.is-closing {
  position: absolute !important;
  z-index: 50;
  border-radius: 20px;
  transition: top 0.45s cubic-bezier(0.22, 1, 0.36, 1),
              left 0.45s cubic-bezier(0.22, 1, 0.36, 1),
              width 0.45s cubic-bezier(0.22, 1, 0.36, 1),
              height 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.use-card.is-closing .use-card-info {
  opacity: 0;
  transition: opacity 0.15s ease;
}

.use-card.is-closing .use-card-close {
  opacity: 0;
  transform: scale(0.7) rotate(90deg);
  transition: opacity 0.15s ease, transform 0.2s ease;
  pointer-events: none;
}

.use-card.is-closing .use-card-footer {
  opacity: 1;
  transition: opacity 0.3s ease 0.2s;
}

.use-card.is-closing .use-card-info-title,
.use-card.is-closing .use-card-info-text {
  transform: translateY(16px);
  opacity: 0;
  transition: transform 0.15s ease, opacity 0.1s ease;
}

/* Ghost placeholder to prevent layout shift */
.use-card-ghost {
  visibility: hidden;
  pointer-events: none;
  border-radius: 20px;
}

/* ── TESTIMONIALS ── */
.testimonials-header-section {
  padding: 120px 80px 0;
  text-align: center;
}

.testimonials-heading {
  font-size: clamp(52px, 6.7vw, 96px);
  line-height: 1;
  letter-spacing: -0.02em;
}

.testimonials-section {
  padding: 80px 0 80px;
  background: var(--cream);
  border-radius: 40px 40px 0 0;
  margin: 0 0;
  overflow: hidden;
}

.testimonial-card {
  border-radius: 32px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  padding: 40px 48px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: transparent;
}

/* Swiper overrides */
.testimonials-section .swiper {
  overflow: hidden;
}

.testimonials-section .swiper-slide {
  width: 520px;
  height: auto;
}

.testimonials-section .swiper-slide .testimonial-card {
  width: 100%;
  height: 100%;
}

.testimonial-card p {
    height: 160px;
}

.testimonials-pagination {
  position: static !important;
  width: auto !important;
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 0;
  flex: 0 0 auto;
}

.testimonials-pagination .dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #777;
  transition: background 0.2s;
  opacity: 1;
  cursor: pointer;
}

.testimonials-pagination .dot.active {
  background: var(--orange);
}

.testimonial-quote-icon {
  width: 40px;
  height: 30px;
  color: rgba(0, 0, 0, 0.12);
}

.testimonial-text {
  font-size: 15px;
  line-height: 1.55;
  color: var(--text);
  flex: 1;
}

.testimonial-author {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.testimonial-name {
  font-size: 14px;
  font-weight: 500;
  color: var(--orange);
}

.testimonial-role {
  font-size: 12px;
  color: #777;
  line-height: 1.4;
}

.testimonials-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin-top: 40px;
}

.testimonials-nav .circle-btn {
  background: var(--white);
  border: none;
  color: var(--text);
}

[dir="rtl"] .testimonials-next {
  transform: rotate(180deg);
}

[dir="rtl"] .testimonials-prev {
  transform: rotate(180deg);
}

/* ── FOOTER CTA ── */
.footer-cta-section {
  padding: 0 80px;
  background: var(--white);
  position: relative;
}

@media (max-width: 768px) {
  .footer-cta-section {
  padding: 0 30px;
  }
}

.footer-cta-section .bg-shapes {
  position: absolute;
  overflow: hidden;
  z-index: 0;
  top: 0;
  left: 0;
  width: 20%;
  height: 100%;
}


.footer-cta-section .bg-shapes .shape-6 {
      position: absolute;
    top: -50px;
    left: 50px;
    width: 75px;
    height: 160px;
}

.footer-cta-section .bg-shapes .shape-7 {
  position: absolute;
    top: 30px;
    right: 40px;
    width: 88px;
    height: 160px;
}

.footer-cta-section .bg-shapes .shape-8 {
  position: absolute;
    top: 160px;
    left: 110px;
    right: auto;
    width: 161px;
    height: 245px;
}

.footer-cta-section .bg-shapes .shape-9 {
  position: absolute;
    top: 380px;
    right: 230px;
    width: 67px;
    height: 145px;
}

.footer-cta-section .bg-shapes .shape-10 {
      position: absolute;
    top: 440px;
    left: 190px;
    right: auto;
    height: 68px;
    width: 67px;
}

.footer-cta-section .bg-shapes .shape-11 {
  position: absolute;
    top: 560px;
    right: 154px;
    width: 144px;
    height: 211px;
}

.footer-cta-inner {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 80px;
  padding: 120px 0;
  border-bottom: 1px solid #e5e5e5;
}

.footer-cta-text {
  flex: 1;
}

.footer-cta-title {
  font-size: clamp(48px, 5vw, 72px);
  line-height: 1;
  letter-spacing: -0.02em;
  margin-bottom: 24px;
}

.footer-cta-desc {
  font-size: 22px;
  line-height: 1.5;
  opacity: 0.6;
  max-width: 440px;
  margin-bottom: 36px;
}

.footer-cta-visual {
  width: 400px;
  flex-shrink: 0;
  height: 400px;
  border-radius: 24px;
  position: relative;
  overflow: hidden;
  background: var(--white);
}

.footer-cta-blocks {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: repeat(5, 1fr);
  gap: 8px;
  padding: 16px;
  transform: rotate(-8deg) scale(1.2);
}

.footer-cta-block {
  border-radius: 8px;
}

.footer-cta-actions {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  align-items: center;
}

.footer-cta-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding: 32px;
  height: 100%;
  align-content: center;
}

.footer-cta-feature {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 17px;
  font-weight: 500;
  color: var(--navy, #1a1a2e);
}

.footer-cta-feature-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* ── FOOTER ── */
/* ── FOOTER ── */
.footer {
  background: var(--navy);
  color: var(--white);
  border-radius: 40px 40px 0 0;
  padding: 64px 80px 32px;
}

/* Main grid: brand | nav | contact | CTA */
.footer-main {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 2fr 2fr;
  gap: 48px;
  margin-bottom: 48px;
}

/* Brand column */
.footer-brand {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.footer-logo-link { display: inline-block; }

.footer-logo-link img {
  filter: brightness(0) invert(1);
}

.footer-logo {
  height: 36px;
  width: auto;
}

.footer-tagline {
  font-size: clamp(18px, 1.6vw, 22px);
  line-height: 1.4;
  letter-spacing: -0.01em;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.footer-social {
  display: flex;
  gap: 12px;
  margin-top: 8px;
}

.footer-social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, 0.25);
  color: var(--white);
  transition: background 0.2s, border-color 0.2s;
}

.footer-social a:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.5);
}

/* Columns */
.footer-col {
  display: flex;
  flex-direction: column;
}

.footer-col-title {
  font-size: 15px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.5);
  margin: 0 0 20px;
}

.footer-col-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.footer-col-list a {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  font-size: 15px;
  transition: color 0.2s;
}

.footer-col-list a:hover {
  color: var(--white);
}

/* Contact list with icons */
.footer-contact-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 15px;
}

.footer-contact-list svg {
  flex-shrink: 0;
  opacity: 0.6;
}

.footer-contact-list a,
.footer-contact-list span {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  transition: color 0.2s;
}

.footer-contact-list a:hover {
  color: var(--white);
}

/* CTA column */
.footer-col-cta {
  gap: 16px;
}

.footer-cta-text {
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
}

/* Shared btn-light */
.btn-light {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 28px;
  border-radius: 999px;
  border: 1.5px solid rgba(255, 255, 255, 0.5);
  color: var(--white);
  font-size: 15px;
  letter-spacing: 0.03em;
  text-decoration: none;
  cursor: pointer;
  background: none;
  transition: background 0.2s, border-color 0.2s;
  width: fit-content;
}

.btn-light:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.7);
  color: var(--white);
}

/* Divider */
.footer-divider {
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  margin: 0 0 24px;
}

/* Bottom bar */
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.footer-copy {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  margin: 0;
}

.footer-legal {
  display: flex;
  gap: 24px;
}

.footer-legal a {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  transition: color 0.2s;
}

.footer-legal a:hover {
  color: var(--white);
}

/* Back to top */
.back-to-top {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--white);
  text-decoration: none;
}

.back-to-top-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.2s;
}

.back-to-top:hover .back-to-top-icon {
  transform: translateY(-3px);
}

/* ── Footer responsive ── */
@media (max-width: 1024px) {
  .footer { padding: 48px 40px 28px; }
  .footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

@media (max-width: 640px) {
  .footer { padding: 40px 20px 24px; border-radius: 24px 24px 0 0; }
  .footer-main {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 16px;
    align-items: center;
    text-align: center;
  }
  .footer-legal {
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
  }
}

/* ── PRODUCTS SHOWCASE ── */
/* ─── ORBITAL / SOLAR SYSTEM SECTION ─── */
.orbital-section {
  background: #041828;
  padding: 0 40px 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  min-height: 100vh;
}

.orbital-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100px;
  background: linear-gradient(to bottom, #fff 0%, #041828 100%);
  pointer-events: none;
  z-index: 0;
}

.orb-header {
  text-align: center;
  padding-top: 80px;
  margin-bottom: 12px;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}

.orb-tagline {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.28);
}

.orb-title {
  font-size: clamp(34px, 3.8vw, 52px);
  font-weight: 600;
  color: #fff;
  letter-spacing: -0.025em;
  line-height: 1.1;
}

/* ── Stage: 3D perspective container ── */
.orb-stage {
  position: relative;
  width: 680px;
  height: 680px;
  perspective: 900px;
  perspective-origin: 50% 42%;
  transform-style: preserve-3d;
  flex-shrink: 0;
  z-index: 1;
  opacity: 0;
  transition: opacity 1.1s cubic-bezier(0.22, 1, 0.36, 1);
}

.orbital-section.is-visible .orb-stage {
  opacity: 1;
}

/* ── Sun: Bina 360 center ── */
.orb-sun {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
}

.orb-sun-halo {
  position: absolute;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(38, 136, 191, 0.18) 0%, transparent 68%);
  animation: orb-sun-pulse 3.5s ease-in-out infinite;
}

@keyframes orb-sun-pulse {

  0%,
  100% {
    transform: scale(1);
    opacity: 0.5;
  }

  50% {
    transform: scale(1.35);
    opacity: 1;
  }
}

.orb-sun-core {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: radial-gradient(circle at 38% 34%, rgba(255, 255, 255, 0.95) 0%, #c5e2f2 42%, var(--blue) 100%);
  box-shadow:
    0 0 0 3px rgba(255, 255, 255, 0.12),
    0 0 26px rgba(38, 136, 191, 0.75),
    0 0 64px rgba(38, 136, 191, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex-direction: column;
}

.orb-sun-label {
  font-size: 14px;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.15;
  letter-spacing: -0.01em;
}

/* ── Orbit rings ── */
.orb-ring {
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  transform-style: preserve-3d;
  overflow: visible;
}

.orb-ring--1 {
  width: 300px;
  height: 300px;
  margin-top: -150px;
  margin-left: -150px;
  border: 1px dashed rgba(38, 136, 191, 0.28);
  animation: orb-ring1 20s linear infinite;
}

@keyframes orb-ring1 {
  from {
    transform: rotateX(72deg) rotateZ(0deg);
  }

  to {
    transform: rotateX(72deg) rotateZ(360deg);
  }
}

.orb-ring--2 {
  width: 440px;
  height: 440px;
  margin-top: -220px;
  margin-left: -220px;
  border: 1px dashed rgba(166, 198, 50, 0.22);
  animation: orb-ring2 28s linear infinite;
}

@keyframes orb-ring2 {
  from {
    transform: rotateX(67deg) rotateZ(120deg);
  }

  to {
    transform: rotateX(67deg) rotateZ(480deg);
  }
}

.orb-ring--3 {
  width: 582px;
  height: 582px;
  margin-top: -291px;
  margin-left: -291px;
  border: 1px dashed rgba(0, 124, 77, 0.22);
  animation: orb-ring3 38s linear infinite;
}

@keyframes orb-ring3 {
  from {
    transform: rotateX(62deg) rotateZ(240deg);
  }

  to {
    transform: rotateX(62deg) rotateZ(600deg);
  }
}

/* ── Planet wrapper: sits at top edge of ring ── */
.orb-planet-wrap {
  position: absolute;
  top: 0;
  left: 50%;
  width: 64px;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
}

/* ── Planet: counter-rotates to always face camera ── */
.orb-planet {
  width: 64px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
}

.orb-planet--crm {
  animation: orb-planet1 20s linear infinite;
}

.orb-planet--sites {
  animation: orb-planet2 28s linear infinite;
}

.orb-planet--biz {
  animation: orb-planet3 38s linear infinite;
}

@keyframes orb-planet1 {
  from {
    transform: rotateZ(0deg) rotateX(-72deg);
  }

  to {
    transform: rotateZ(-360deg) rotateX(-72deg);
  }
}

@keyframes orb-planet2 {
  from {
    transform: rotateZ(-120deg) rotateX(-67deg);
  }

  to {
    transform: rotateZ(-480deg) rotateX(-67deg);
  }
}

@keyframes orb-planet3 {
  from {
    transform: rotateZ(-240deg) rotateX(-62deg);
  }

  to {
    transform: rotateZ(-600deg) rotateX(-62deg);
  }
}

.orb-planet-dot {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  flex-shrink: 0;
}

.orb-planet--crm .orb-planet-dot {
  background: radial-gradient(circle at 37% 32%, rgba(255, 255, 255, 0.92) 0%, #85c0e0 55%, var(--blue) 100%);
  box-shadow: 0 0 14px rgba(38, 136, 191, 0.95), 0 0 40px rgba(38, 136, 191, 0.45);
}

.orb-planet--sites .orb-planet-dot {
  background: radial-gradient(circle at 37% 32%, rgba(255, 255, 255, 0.92) 0%, #cad85e 55%, var(--lime) 100%);
  box-shadow: 0 0 14px rgba(166, 198, 50, 0.95), 0 0 40px rgba(166, 198, 50, 0.45);
}

.orb-planet--biz .orb-planet-dot {
  background: radial-gradient(circle at 37% 32%, rgba(255, 255, 255, 0.92) 0%, #52b886 55%, var(--green) 100%);
  box-shadow: 0 0 14px rgba(0, 124, 77, 0.95), 0 0 40px rgba(0, 124, 77, 0.45);
}

.orb-planet-label {
  font-size: 10.5px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.72);
  text-align: center;
  line-height: 1.3;
  white-space: nowrap;
  letter-spacing: 0.03em;
}

/* ── Product description cards ── */
.orb-products {
  display: flex;
  gap: 20px;
  margin-top: 40px;
  max-width: 780px;
  width: 100%;
  position: relative;
  z-index: 1;
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.45s,
    transform 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.45s;
}

.orbital-section.is-visible .orb-products {
  opacity: 1;
  transform: translateY(0);
}

.orb-product {
  flex: 1;
  padding: 22px 20px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  display: flex;
  flex-direction: column;
  gap: 8px;
  cursor: default;
  transition: background 0.25s ease, border-color 0.25s ease;
}

.orb-product:hover {
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(255, 255, 255, 0.12);
}

.orb-product-bar {
  width: 28px;
  height: 3px;
  border-radius: 2px;
  margin-bottom: 2px;
}

.orb-product--crm .orb-product-bar {
  background: var(--blue);
}

.orb-product--sites .orb-product-bar {
  background: var(--lime);
}

.orb-product--biz .orb-product-bar {
  background: var(--green);
}

.orb-product-name {
  font-size: 17px;
  font-weight: 600;
  color: #fff;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.orb-product-desc {
  font-size: 13px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.38);
}

/* responsive tweaks */

/* ── SHAPES / HERO — PHONE ONLY ── */
@media (max-width: 768px) {

  .hero-content {
    top: 160px;
    width: 100%;
    max-width: 92vw;
    gap: 28px;
  }

  .hero-heading {
    font-size: clamp(36px, 10vw, 52px);
  }

  .hero-desc {
    font-size: 16px;
    max-width: 90%;
  }

  /* Shapes 1–3: keep desktop positions (top of page with color) */
  /* Shapes 4–10: before the transition words */
  .shape-4 { top: 500px; right: 5%;  width: 110px; height: 160px; }
  .shape-5 { top: 620px; left: 10%;  width: 50px; height: 110px; }
  .shape-6 { top: 750px; left: 25%;  width: 55px; height: 120px; }
  .shape-7 { top: 880px; right: calc(50% - 85px); width: 60px; height: 110px; }
  .shape-8 { top: 960px; right: calc(50% - 70px); width: 120px; height: 170px; }
  .shape-9 { top: 1100px; left: calc(50% - 50px);  width: 48px; height: 100px; }
  .shape-10 { top: 1100px; right: calc(50% - 50px); width: 48px; height: 100px; }

  /* Transition words: between shape-10 and shape-11 */
  .transition-words {
    top: 1260px;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 0 24px;
    justify-content: center;
  }

  .transition-word {
    font-size: clamp(28px, 7vw, 40px);
  }

  .transition-word:first-child,
  .transition-word:last-child {
    text-align: center;
  }

  /* Shapes 11–13: after the transition words, original sizes to connect with waves */
  .shape-11 { top: 1400px; left: calc(50% - 72px);  width: 144px; height: 211px; }
  .shape-12 { top: 1570px; right: calc(50% - 72px); width: 72px; height: 99px; }
  .shape-13 { top: 1620px; left: calc(50% - 72px);  width: 72px; height: 50px; }

  /* Waves: overlap with shapes 12-13 to create seamless flow */
  .wave {
    top: 1655px;
  }

  .shapes {
    height: 2030px;
  }
}


/* ── MOBILE NAV ── */
.nav-logo--mobile,
.mobile-hamburger,
.mobile-menu-panel {
  display: none;
}

@media (max-width: 768px) {

  /* Nav bar layout */
  .nav {
    padding: 12px 16px;
    justify-content: stretch;
  }

  .nav-pill {
    width: 100%;
    justify-content: space-between;
    padding: 10px 20px;
    gap: 0;
  }

  /* Show mobile logo and hamburger */
  .nav-logo--mobile {
    display: block;
    height: 22px;
  }

  .nav-logo--mobile img {
    height: 100%;
    width: auto;
  }

  .mobile-hamburger {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    background: none;
    border: none;
    cursor: pointer;
    width: 32px;
    height: 32px;
    padding: 0;
    z-index: 110;
    position: relative;
  }

  /* Hamburger lines */
  .hamburger-line {
    display: block;
    width: 22px;
    height: 2px;
    background: #000;
    border-radius: 2px;
    transition: transform 0.4s cubic-bezier(0.23, 1, 0.32, 1),
      opacity 0.3s ease;
    transform-origin: center;
  }

  /* X animation when open */
  .mobile-hamburger.is-active .hamburger-line--1 {
    transform: translateY(4px) rotate(45deg);
  }

  .mobile-hamburger.is-active .hamburger-line--2 {
    transform: translateY(-4px) rotate(-45deg);
  }

  /* Hide desktop nav items */
  .nav-pill>.nav-item,
  .nav-pill>.nav-dropdown,
  .nav-pill>.nav-logo:not(.nav-logo--mobile) {
    display: none;
  }

  /* Mobile menu overlay */
  .nav-pill.mobile-open>.nav-item,
  .nav-pill.mobile-open>.nav-dropdown {
    display: block;
  }

  /* Mobile menu panel */
  .mobile-menu-panel {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
    background: rgba(237, 237, 237, 0.72);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    padding: 80px 32px 40px;
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-20px);
    transition: opacity 0.4s cubic-bezier(0.23, 1, 0.32, 1),
      transform 0.4s cubic-bezier(0.23, 1, 0.32, 1),
      visibility 0.4s;
  }

  .mobile-menu-panel.is-open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  /* Stagger animation for items */
  .mobile-menu-panel .mobile-menu-item,
  .mobile-menu-panel .mobile-menu-item-wrapper {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.35s ease, transform 0.35s ease;
  }

  .mobile-menu-panel.is-open .mobile-menu-item,
  .mobile-menu-panel.is-open .mobile-menu-item-wrapper {
    opacity: 1;
    transform: translateY(0);
  }

  .mobile-menu-panel.is-open > nav > :nth-child(1) {
    transition-delay: 0.08s;
  }

  .mobile-menu-panel.is-open > nav > :nth-child(2) {
    transition-delay: 0.14s;
  }

  .mobile-menu-panel.is-open > nav > :nth-child(3) {
    transition-delay: 0.20s;
  }

  .mobile-menu-panel.is-open > nav > :nth-child(4) {
    transition-delay: 0.26s;
  }

  .mobile-menu-panel.is-open > nav > :nth-child(5) {
    transition-delay: 0.32s;
  }

  .mobile-menu-item {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -0.01em;
    color: #000;
    text-decoration: none;
    padding: 12px 0;
    text-align: center;
    cursor: pointer;
    background: none;
    border: none;
    font-family: inherit;
    display: block;
    width: 100%;
    position: relative;
  }

  .mobile-menu-chevron {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
  }

  .mobile-menu-item[aria-expanded="true"] .mobile-menu-chevron {
    transform: translateY(-50%) rotate(180deg);
  }

  .mobile-menu-item:hover {
    color: var(--blue);
  }

  .mobile-menu-item-wrapper {
    width: 100%;
    text-align: center;
  }

  .mobile-menu-item-wrapper:focus {
    outline: none;
  }

  /* Mobile sub-menu */
  .mobile-submenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.23, 1, 0.32, 1);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
  }

  .mobile-submenu.is-expanded {
    max-height: 600px;
  }

  .mobile-submenu-group {
    width: 100%;
    padding: 8px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
  }


  .mobile-submenu-title {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--orange);
    padding: 6px 0 2px;
  }

  .mobile-submenu-link {
    font-size: 16px;
    color: var(--dark);
    text-decoration: none;
    padding: 8px 0;
    opacity: 0.7;
    transition: opacity 0.2s, color 0.2s;
    display: block;
  }

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

/* סצנת התלת-מימד הכללית */
.scene {
  perspective: 800px;
  perspective-origin: 50% 40%;
  width: 100%;
  height: 80%;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.8s ease;
  pointer-events: none;
}

.scene.visible {
  opacity: 1;
}

/* המערכת שמכילה את המסלול והשמש, מוטה אחורה כדי ליצור עומק */
.system {
  position: relative;
  width: calc(var(--orbit-radius) * 2);
  height: calc(var(--orbit-radius) * 2);
  transform-style: preserve-3d;
  transform: rotateX(var(--tilt));
}

/* קו המסלול של העיגולים הקטנים */
.orbit-path {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 2px solid rgba(211, 201, 179, 0.5);
  border-radius: 50%;
  box-sizing: border-box;
  transform: scale(0.9);
  box-shadow: 0 0 30px rgba(211, 201, 179, 0.15), inset 0 0 30px rgba(211, 201, 179, 0.08);
}

/* מעטפת הסיבוב - JS שולט בסיבוב */
.orbit-spin {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transform: rotateZ(0deg);
}

/* הגדרת מיקומי העיגולים על גבי המסלול */
.pos {
  position: absolute;
  top: 50%;
  left: 50%;
  transform-style: preserve-3d;
}

.pos-1 {
  transform: rotateZ(0deg) translateX(var(--orbit-radius));
}

.pos-2 {
  transform: rotateZ(36deg) translateX(var(--orbit-radius));
}

.pos-3 {
  transform: rotateZ(72deg) translateX(var(--orbit-radius));
}

.pos-4 {
  transform: rotateZ(108deg) translateX(var(--orbit-radius));
}

.pos-5 {
  transform: rotateZ(144deg) translateX(var(--orbit-radius));
}

.pos-6 {
  transform: rotateZ(180deg) translateX(var(--orbit-radius));
}

.pos-7 {
  transform: rotateZ(216deg) translateX(var(--orbit-radius));
}

.pos-8 {
  transform: rotateZ(252deg) translateX(var(--orbit-radius));
}

.pos-9 {
  transform: rotateZ(288deg) translateX(var(--orbit-radius));
}

.pos-10 {
  transform: rotateZ(324deg) translateX(var(--orbit-radius));
}

/* העיגולים הקטנים (ה"כוכבים") - עם אפקט כדור תלת-מימדי */
.planet {
  position: absolute;
  width: var(--planet-size);
  height: var(--planet-size);
  margin-top: calc(var(--planet-size) / -2);
  margin-left: calc(var(--planet-size) / -2);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  line-height: 1.2rem;
  text-align: center;
  padding: 10px;
  font-weight: 800;
  transition: box-shadow 0.35s ease, scale 0.35s ease, filter 0.35s ease, border-color 0.35s ease;
  border: 1px solid var(--planet-accent, #8a857d);
  overflow: hidden;
  background: #fff;
}

/* Sphere highlight overlay */
.planet::before {
  content: '';
  position: absolute;
  top: 8%;
  left: 15%;
  width: 35%;
  height: 30%;
  background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.45) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}

/* Bottom shadow for depth */
.planet::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 10%;
  width: 80%;
  height: 40%;
  background: radial-gradient(ellipse at center bottom, rgba(0, 0, 0, 0.25) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
}

/* On planet hover: stop scroll rotation via JS class */
.system.orbit-paused .orbit-spin {
  transition: none;
}

@media (max-width: 768px) {

  /* ── BINA 360 SCROLL ANIMATION — MOBILE ── */
  .b360-scroll {
    height: 350vh;
  }

  .b360-lense-heading {
    font-size: clamp(28px, 7vw, 40px);
    padding: 0 16px;
  }

  .b360-intro {
    font-size: 16px;
  }

  .b360-heading {
    font-size: clamp(40px, 12vw, 60px);
    margin-bottom: 12px;
  }

  .b360-desc {
    font-size: 16px;
    max-width: 90vw;
    padding: 0 16px;
  }

  /* ── ORBIT / SCENE — MOBILE ── */
  :root {
    --orbit-radius: 52vw;
    --planet-size: 68px;
    --tilt: 65deg;
  }

  .b360-sticky {
    overflow: hidden;
  }

  /* Text starts centered (revealed by mask), JS moves it up slightly */
  .b360-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    white-space: normal;
    width: 90vw;
    transition: none;
  }

  .scene {
    perspective: 600px;
    perspective-origin: 50% 30%;
    position: absolute;
    top: 32%;
    bottom: -5%;
    left: 50%;
    transform: translateX(-50%);
    height: 55%;
    overflow: visible;
  }

  .system {
    width: calc(var(--orbit-radius) * 2);
    height: calc(var(--orbit-radius) * 2);
  }

  .orbit-path {
    border-color: rgba(211, 201, 179, 0.3);
  }

  .planet {
    font-size: 0.7rem;
    line-height: 0.9rem;
    padding: 5px;
    font-weight: 700;
    box-shadow:
      0 8px 24px rgba(0, 0, 0, 0.15),
      inset -4px -4px 12px rgba(0, 0, 0, 0.1),
      inset 3px 3px 8px rgba(255, 255, 255, 0.3);
  }

  /* Hide the sun text inside orbit since we moved b360-text to top */
  .sun {
    display: none;
  }

  .b360-cards-grid {
    grid-template-columns: 1fr;
    gap: 2px;
  }
}

@media (max-width: 900px) {

  .features-section {
    padding: 64px 20px 120px;
  }

  .feature-card {
    grid-template-columns: 1fr;
    padding: 32px 24px;
    gap: 24px;
    border-radius: 24px;
    position: relative;
    top: auto !important;
  }

  .feature-card-green {
    margin-top: 20px;
  }

  .feature-card-header {
    flex-direction: row;
    align-items: center;
    border-radius: 24px;
    padding: 24px;
  }

  .feature-card-title {
    font-size: 28px;
  }

  .feature-card-num {
    font-size: 32px;
  }

  .feature-card-desc {
    font-size: 15px;
  }

  .feature-card-body {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 24px;
  }

  .feature-card-desc {
    order: 1;
  }

  .feature-card-image {
    aspect-ratio: 16/10;
    transform: none;
    perspective: none;
    order: 2;
  }

  .feature-card-image img {
    transform: none;
    border-width: 3px;
  }

  .orbital-section {
    padding: 0 20px 80px;
    min-height: auto;
  }

  .orb-stage {
    width: 360px;
    height: 360px;
    perspective: 500px;
  }

  .orb-ring--1 {
    width: 160px;
    height: 160px;
    margin-top: -80px;
    margin-left: -80px;
  }

  .orb-ring--2 {
    width: 236px;
    height: 236px;
    margin-top: -118px;
    margin-left: -118px;
  }

  .orb-ring--3 {
    width: 312px;
    height: 312px;
    margin-top: -156px;
    margin-left: -156px;
  }

  .orb-sun-core {
    width: 68px;
    height: 68px;
  }

  .orb-sun-halo {
    width: 120px;
    height: 120px;
  }

  .orb-sun-label {
    font-size: 10px;
  }

  .orb-planet-dot {
    width: 38px;
    height: 38px;
  }

  .orb-planet-wrap {
    width: 38px;
    height: 38px;
    margin-left: -19px;
    margin-top: -19px;
  }

  .orb-planet {
    width: 38px;
  }

  .orb-products {
    flex-direction: column;
    margin-top: 28px;
  }

  .use-cases-grid-layout {
    grid-template-columns: 1fr;
    height: auto;
    max-height: none;
  }

  .use-cases {
    padding: 60px 16px;
  }

  .use-cases-header {
    font-size: clamp(36px, 9vw, 52px);
    margin-bottom: 32px;
  }

  .left-col,
  .right-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .use-card,
  .use-card--full,
  .use-card--wide {
    height: 220px;
    grid-column: auto;
  }

  .use-card-title {
    font-size: 20px;
    padding: 16px;
  }

  .use-card-title--sm {
    font-size: 18px;
  }

  .arrow-btn {
    width: 40px;
    height: 40px;
    margin: 16px;
  }

  /* ── TESTIMONIALS — MOBILE ── */
  .testimonials-header-section {
    padding: 60px 16px 0;
  }

  .testimonials-heading {
    font-size: clamp(36px, 9vw, 52px);
  }

  .testimonials-section {
    padding: 32px 0 48px;
    margin: 24px 16px;
    border-radius: 24px;
  }

  .testimonials-section .swiper-slide {
    width: 85vw;
  }

  .testimonial-card {
    padding: 24px 20px;
    border-radius: 20px;
    gap: 16px;
  }

  .testimonial-card p {
    height: auto;
    font-size: 14px;
    line-height: 1.6;
  }

  .testimonials-nav {
    margin-top: 24px;
    gap: 12px;
  }

  .testimonials-nav .circle-btn {
    width: 40px;
    height: 40px;
  }

  .footer-cta-inner {
    flex-direction: column;
  }

  .footer-cta-visual {
    width: 100%;
    height: 240px;
  }

  .footer-top {
    flex-direction: column;
    gap: 32px;
  }

  .right-col {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
}

/* Neutral spheres with colored accent ring + subtle glow */
.p1 {
  --planet-accent: var(--blue);
  --planet-glow: rgba(38, 136, 191, 0.3);
  transform: rotateZ(0deg) rotateX(calc(var(--tilt) * -1));
}

.p2 {
  --planet-accent: var(--green);
  --planet-glow: rgba(0, 124, 77, 0.3);
  transform: rotateZ(-36deg) rotateX(calc(var(--tilt) * -1));
}

.p3 {
  --planet-accent: var(--orange);
  --planet-glow: rgba(254, 140, 34, 0.3);
  transform: rotateZ(-72deg) rotateX(calc(var(--tilt) * -1));
}

.p4 {
  --planet-accent: var(--lime);
  --planet-glow: rgba(166, 198, 50, 0.3);
  transform: rotateZ(-108deg) rotateX(calc(var(--tilt) * -1));
}

.p5 {
  --planet-accent: var(--salmon);
  --planet-glow: rgba(233, 150, 127, 0.3);
  transform: rotateZ(-144deg) rotateX(calc(var(--tilt) * -1));
}

.p6 {
  --planet-accent: var(--navy);
  --planet-glow: rgba(4, 51, 71, 0.3);
  transform: rotateZ(-180deg) rotateX(calc(var(--tilt) * -1));
}

.p7 {
  --planet-accent: var(--dark);
  --planet-glow: rgba(42, 41, 40, 0.3);
  transform: rotateZ(-216deg) rotateX(calc(var(--tilt) * -1));
}

.p8 {
  --planet-accent: var(--blue);
  --planet-glow: rgba(38, 136, 191, 0.3);
  transform: rotateZ(-252deg) rotateX(calc(var(--tilt) * -1));
}

.p9 {
  --planet-accent: var(--green);
  --planet-glow: rgba(0, 124, 77, 0.3);
  transform: rotateZ(-288deg) rotateX(calc(var(--tilt) * -1));
}

.p10 {
  --planet-accent: var(--orange);
  --planet-glow: rgba(254, 140, 34, 0.3);
  transform: rotateZ(-324deg) rotateX(calc(var(--tilt) * -1));
}

/* טקסט מרכזי ("השמש") */
.sun {
  position: absolute;
  top: 50%;
  left: 50%;
  /* המיקום מורם קצת (translateZ) כדי שהטקסט יבלוט מעל מסלולי הכוכבים */
  transform: translate(-50%, -50%) translateZ(40px) rotateX(calc(var(--tilt) * -1));
  text-align: center;
  width: 500px;
}

.sun-intro {
  color: #9FC421;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: -15px;
}

.sun-main {
  font-size: 5.5rem;
  font-weight: 900;
  color: #000;
  letter-spacing: -2px;
  margin: 0;
  line-height: 1.2;
}

.sun-sub {
  font-size: 1.1rem;
  color: #666;
  line-height: 1.5;
  margin-top: 5px;
}

/**/

.page-header {
  padding-top: 140px;
  margin-bottom: 50px;
}

@media (max-width: 768px) {
  .page-header {
    padding-top: 80px;
  }
}

.page-header-title {
  font-family: 'Heebo', sans-serif;
  font-weight: 700;
  font-size: clamp(48px, 6vw, 88px);
  line-height: 1;
  letter-spacing: -.02em;
  color: var(--text);
  max-width: 900px;
}



/* ============= FOOTER CTA ============= */
.fc {
    padding: 120px 64px;
    background: var(--warm-white)
}

.fc-card {
    max-width: 1280px;
    margin: 0 auto;
    background: var(--cream);
    border-radius: 40px;
    padding: 80px 72px;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 64px;
    align-items: center;
    position: relative;
    overflow: hidden
}

.fc-card::before {
    content: "";
    position: absolute;
    top: -120px;
    right: -120px;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: radial-gradient(circle,rgba(166,198,50,.35),transparent 70%)
}

.fc-text {
    position: relative
}

.fc-title {
    font-size: clamp(40px,4.4vw,60px);
    line-height: 1.05;
    letter-spacing: -.025em;
    font-weight: 700;
    margin-bottom: 20px
}

.fc-desc {
    font-size: 18px;
    color: var(--muted);
    line-height: 1.5;
    margin-bottom: 36px;
    max-width: 440px
}

.fc-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap
}

.fc-blocks {
    position: relative;
    display: grid;
    grid-template-columns: repeat(5,1fr);
    grid-template-rows: repeat(5,1fr);
    gap: 8px;
    width: 100%;
    aspect-ratio: 1;
    transform: rotate(-8deg);
    max-width: 380px;
    justify-self: end
}

.fc-b {
    border-radius: 8px;
    transition: transform .3s
}

.fc-b:hover {
    transform: scale(1.08)
}

.fc-b[data-c="lime"] {
    background: var(--lime)
}

.fc-b[data-c="blue"] {
    background: var(--blue)
}

.fc-b[data-c="orange"] {
    background: var(--orange)
}

.fc-b[data-c="salmon"] {
    background: var(--salmon)
}

.fc-b[data-c="navy"] {
    background: var(--navy)
}

.fc-b[data-c="green"] {
    background: var(--green)
}

.fc-b[data-c="cream"] {
    background: var(--warm-white)
}




/* CTA */
.lead-section { background: var(--warm-white); padding: 128px 80px; text-align: center; position: relative; }
.lead-section .cta-inner { max-width: 900px; margin: 0 auto; position: relative; }

.lead-section h2 {
    font-size: 64px;
    line-height: 1.05;
    letter-spacing: -0.03em;
    
    font-weight: 400;
    margin-bottom: 12px;
}

.lead-section h2 b { font-weight: 500; color: var(--navy); }
.lead-section p { font-size: 18px; color: var(--dark); margin-bottom: 32px; }
.lead-section .stamp { margin-top: 56px; font-size: 13px; letter-spacing: 0.06em; text-transform: uppercase; color: #9B9B9B; }

.lead-section .cta-grad {
    height: 4px;
    margin-top: 64px;
    background: linear-gradient(to right, var(--green) 0%, var(--lime) 21%, var(--orange) 53%, var(--salmon) 70%, var(--blue) 100%);
}

.lead-section .ps-label {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--orange);
    display: inline-flex;
    align-items: center;
    gap: 12px;
}


.lead-section .ps-btn-dark {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--dark);
    color: var(--white);
    border: none;
    border-radius: 999px;
    padding: 16px 36px;
    font-size: 18px;
    font-family: inherit;
    font-weight: 500;
    cursor: pointer;
    transition: background .2s, color .2s, transform .2s;
    text-decoration: none;
}

.lead-section .ps-btn-dark:hover {
    background: transparent;
    color: var(--dark);
    box-shadow: inset 0 0 0 1px var(--dark);
}

.lead-section .ps-btn-dark .arrow {
    width: 24px;
    height: 24px;
    background: var(--white);
    color: var(--dark);
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
}

@media (max-width: 1024px) {
    .lead-section { padding: 96px 48px; }
    .lead-section h2 { font-size: 48px; }
}
@media (max-width: 768px) {
    .lead-section { padding: 72px 24px; }
    .lead-section h2 { font-size: clamp(28px, 7vw, 40px); }
    .lead-section p { font-size: 16px; margin-bottom: 24px; }
    .lead-section .ps-btn-dark { padding: 14px 28px; font-size: 16px; }
    .contact-form-wrap { padding: 28px 20px; border-radius: 18px; }
}
@media (max-width: 480px) {
    .lead-section { padding: 56px 16px; }
    .lead-section h2 { font-size: 26px; }
    .lead-section p { font-size: 15px; }
    .contact-form-wrap { padding: 24px 16px; border-radius: 16px; }
}

.brand-bar {
    height: 4px;
    border-radius: 2px;
    background: linear-gradient(to right, var(--green) 0%, var(--lime) 21%, var(--orange) 53%, var(--salmon) 70%, var(--blue) 100%);
}

.form-control {
    padding: 13px 16px;
    border: 1px solid #dfdfdf;
    border-radius: 8px;
    background: rgb(255, 255, 255);
    font-size: 16px;
    outline: none;
    transition: border-color 0.2s;
        height: auto;
}



.contact-form-wrap {
      background: rgb(255, 255, 255);
    border-radius: 24px;
    padding: 44px;
    max-width: 620px;
    margin: 0px auto;
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-shadow: rgba(64, 62, 61, 0.4) 0px 18px 50px -30px;
    text-align: right;
    position: relative;
}

.breadcrumbs {
  display: none;
}



.client-area-link {
  position: absolute;
  top: 16px;
  left: 16px;
  font-size: 14px;
  color: var(--blue);
  z-index: 10;
  background: rgba(237, 237, 237, 0.72);
  backdrop-filter: blur(16px);
  border-radius: 999px;
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  overflow: hidden;
  text-decoration: none;
  white-space: nowrap;
  transition: width 0.4s cubic-bezier(0.22, 1, 0.36, 1),
              background 0.3s ease,
              color 0.3s ease,
              box-shadow 0.3s ease;
}

.client-area-link .sr-only {
  position: absolute;
  width: 0;
  overflow: hidden;
  opacity: 0;
  font-size: 13px;
  font-weight: 500;
  transition: opacity 0.3s ease 0.1s, width 0.3s ease;
}

.client-area-link:hover {
  width: 190px;
  background: var(--dark);
  color: #fff;
  box-shadow: 0 4px 20px rgba(38, 136, 191, 0.35);
}

.client-area-link:hover .sr-only {
  position: static;
  width: auto;
  opacity: 1;
  clip: unset;
  clip-path: none;
  height: auto;
  overflow: visible;
}

.client-area-link svg {
  height: 16px;
  width: 16px;
  flex-shrink: 0;
  transition: transform 0.3s ease;
}

.client-area-link:hover svg {
  transform: scale(1.1);
}

@media (max-width: 768px) {
  .client-area-link {
    display: none;
  }
}

.client-area-link-mobile {
  width: 32px;
  height: 32px;
  color: var(--dark);

  display: none;
}

.mobile-nav-actions {
  display: none;
}

@media (max-width: 768px) {
  .client-area-link-mobile {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .mobile-nav-actions {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .client-area-link-mobile svg {
        transform: scale(.7);
  }
}