/* SA Event Management — luxury black, gold and white theme */
:root{
	--sa-black:#050505;
	--sa-black-2:#0d0d0d;
	--sa-black-3:#151515;
	--sa-gold:#c9a24b;
	--sa-gold-light:#ead399;
	--sa-ivory:#f7f3ea;
	--sa-white:#ffffff;
	--sa-muted:#b7b2a8;
	--sa-line:rgba(201,162,75,.25);
	--sa-shadow:0 28px 80px rgba(0,0,0,.28);
	--sa-radius:22px;
}
*{
	box-sizing:border-box
}
html{
	scroll-behavior:smooth
}
body{
	margin:0;
	background:var(--sa-black);
	color:var(--sa-white);
	font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	line-height:1.65;
	overflow-x:hidden
}
img{
	max-width:100%;
	display:block
}
a{
	color:inherit;
	text-decoration:none
}
button,input,textarea,select{
	font:inherit
}
::selection{
	background:var(--sa-gold);
	color:var(--sa-black)
}
.sa-container{
	width:min(1180px,calc(100% - 40px));
	margin-inline:auto
}
.sa-kicker{
	display:inline-flex;
	align-items:center;
	gap:10px;
	color:var(--sa-gold-light);
	font-size:.76rem;
	font-weight:800;
	letter-spacing:.18em;
	text-transform:uppercase
}
.sa-kicker:before{
	content:"";
	width:34px;
	height:1px;
	background:var(--sa-gold)
}
.sa-display{
	font-family:Georgia,"Times New Roman",serif;
	font-weight:400;
	letter-spacing:-.035em;
	line-height:.98;
	margin:0;
	color:var(--sa-white)
}
.sa-display em{
	font-style:italic;
	color:var(--sa-gold-light)
}
.sa-title{
	font-family:Georgia,"Times New Roman",serif;
	font-size:clamp(2.25rem,5vw,4.5rem);
	line-height:1.03;
	letter-spacing:-.035em;
	margin:12px 0 20px;
	font-weight:400
}
.sa-subtitle{
	font-size:clamp(1rem,1.8vw,1.18rem);
	color:var(--sa-muted);
	max-width:700px;
	margin:0
}
.sa-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	min-height:52px;
	padding:0 24px;
	border:1px solid var(--sa-gold);
	border-radius:999px;
	background:var(--sa-gold);
	color:var(--sa-black);
	font-size:.78rem;
	font-weight:900;
	letter-spacing:.12em;
	text-transform:uppercase;
	transition:.3s ease;
	cursor:pointer
}
.sa-btn:hover{
	background:var(--sa-gold-light);
	border-color:var(--sa-gold-light);
	transform:translateY(-2px);
	color:var(--sa-black)
}
.sa-btn-outline{
	background:transparent;
	color:var(--sa-white);
	border-color:rgba(255,255,255,.28)
}
.sa-btn-outline:hover{
	background:var(--sa-white);
	border-color:var(--sa-white);
	color:var(--sa-black)
}
.sa-btn-dark{
	background:var(--sa-black);
	border-color:var(--sa-black);
	color:var(--sa-white)
}
.sa-btn-dark:hover{
	background:#222;
	border-color:#222;
	color:#fff
}
.sa-section{
	padding:110px 0;
	position:relative
}
.sa-section-light{
	background:var(--sa-ivory);
	color:var(--sa-black)
}
.sa-section-light .sa-title,.sa-section-light .sa-display{
	color:var(--sa-black)
}
.sa-section-light .sa-subtitle{
	color:#5f5b53
}
.sa-section-alt{
	background:var(--sa-black-2)
}
.sa-section-head{
	display:flex;
	align-items:end;
	justify-content:space-between;
	gap:40px;
	margin-bottom:52px
}
.sa-section-head .sa-subtitle{
	max-width:530px
}
.sa-divider{
	height:1px;
	background:linear-gradient(90deg,transparent,var(--sa-line),transparent)
}
.sa-topbar{
	height:34px;
	background:var(--sa-gold);
	color:var(--sa-black);
	font-size:.72rem;
	font-weight:800;
	letter-spacing:.11em;
	text-transform:uppercase;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:28px;
	white-space:nowrap;
	overflow:hidden
}
.sa-topbar span{
	opacity:.9
}
.sa-header{
	position:fixed;
	top:34px;
	left:0;
	width:100%;
	height:86px;
	z-index:1000;
	border-bottom:1px solid rgba(255,255,255,.11);
	background:linear-gradient(180deg,rgba(0,0,0,.82),rgba(0,0,0,.18));
	backdrop-filter:blur(10px);
	transition:.3s ease
}
.sa-header.scrolled{
	top:0;
	height:76px;
	background:rgba(5,5,5,.96);
	border-color:rgba(201,162,75,.28)
}
.sa-nav{
	height:100%;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:30px
}
.sa-brand{
	display:flex;
	align-items:center;
	gap:13px;
	min-width:max-content
}
.sa-brand-logo{
	display:block;
	width:clamp(150px, 25vw, 238px);
	max-width:100%;
	height:auto;
	object-fit:contain
}
.sa-monogram{
	width:42px;
	height:42px;
	border:1px solid var(--sa-gold);
	border-radius:50%;
	display:grid;
	place-items:center;
	color:var(--sa-gold-light);
	font-family:Georgia,serif;
	font-size:1.05rem;
	letter-spacing:-.04em;
	box-shadow:inset 0 0 0 4px rgba(201,162,75,.06)
}
.sa-brand-copy strong{
	display:block;
	font-family:Georgia,serif;
	font-weight:500;
	letter-spacing:.07em;
	font-size:.96rem;
	line-height:1.05
}
.sa-brand-copy small{
	display:block;
	color:var(--sa-gold-light);
	font-size:.55rem;
	letter-spacing:.19em;
	text-transform:uppercase;
	margin-top:5px
}
.sa-menu{
	display:flex;
	align-items:center;
	gap:28px;
	list-style:none;
	padding:0;
	margin:0
}
.sa-menu a{
	font-size:.72rem;
	font-weight:800;
	letter-spacing:.12em;
	text-transform:uppercase;
	color:#eee;
	position:relative;
	padding:31px 0
}
.sa-menu a:after{
	content:"";
	height:1px;
	background:var(--sa-gold);
	position:absolute;
	left:0;
	right:100%;
	bottom:22px;
	transition:.3s
}
.sa-menu a:hover,.sa-menu a.active{
	color:var(--sa-gold-light)
}
.sa-menu a:hover:after,.sa-menu a.active:after{
	right:0
}
.sa-nav-actions{
	display:flex;
	align-items:center;
	gap:10px
}
.sa-nav-call{
	width:44px;
	height:44px;
	border:1px solid rgba(255,255,255,.2);
	border-radius:50%;
	display:grid;
	place-items:center;
	transition:.3s
}
.sa-nav-call:hover{
	border-color:var(--sa-gold);
	color:var(--sa-gold)
}
.sa-menu-toggle{
	display:none;
	width:46px;
	height:46px;
	border:1px solid rgba(255,255,255,.2);
	border-radius:50%;
	background:transparent;
	color:#fff;
	font-size:1.1rem
}
.sa-hero{
	min-height:100svh;
	position:relative;
	display:flex;
	align-items:flex-end;
	isolation:isolate;
	overflow:hidden;
	padding:190px 0 80px
}
.sa-hero-video{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	z-index:-3;
	background:#050505
}
.sa-hero:before{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.65) 47%,rgba(0,0,0,.32) 75%,rgba(0,0,0,.72) 100%);
	z-index:-2
}
.sa-hero:after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 48%,rgba(0,0,0,.85));
	z-index:-1
}
.sa-hero-grid{
	display:grid;
	grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
	gap:70px;
	align-items:end;
	width:100%
}
.sa-hero h1{
	font-size:clamp(4rem,9.4vw,8.3rem);
	max-width:980px
}
.sa-hero h1 .line{
	display:block
}
.sa-hero-copy{
	font-size:1.08rem;
	color:#ddd;
	max-width:660px;
	margin:26px 0 34px
}
.sa-hero-actions{
	display:flex;
	gap:12px;
	flex-wrap:wrap
}
.sa-hero-meta{
	border-left:1px solid var(--sa-gold);
	padding-left:25px;
	margin-bottom:8px
}
.sa-hero-meta-item{
	padding:17px 0;
	border-bottom:1px solid rgba(255,255,255,.12)
}
.sa-hero-meta-item:last-child{
	border:0
}
.sa-hero-meta small{
	display:block;
	color:#aaa;
	font-size:.62rem;
	text-transform:uppercase;
	letter-spacing:.16em;
	margin-bottom:5px
}
.sa-hero-meta strong{
	font-family:Georgia,serif;
	font-size:1.25rem;
	font-weight:400;
	color:#fff
}
.sa-scroll-cue{
	position:absolute;
	right:30px;
	bottom:32px;
	font-size:.61rem;
	letter-spacing:.2em;
	text-transform:uppercase;
	color:#bbb;
	writing-mode:vertical-rl;
	display:flex;
	align-items:center;
	gap:12px
}
.sa-scroll-cue:after{
	content:"";
	height:58px;
	width:1px;
	background:linear-gradient(var(--sa-gold),transparent)
}
.sa-marquee{
	background:var(--sa-gold);
	color:var(--sa-black);
	overflow:hidden;
	border-top:1px solid rgba(0,0,0,.18);
	border-bottom:1px solid rgba(0,0,0,.18)
}
.sa-marquee-track{
	display:flex;
	width:max-content;
	animation:marquee 25s linear infinite;
	padding:13px 0
}
.sa-marquee span{
	font-family:Georgia,serif;
	font-style:italic;
	font-size:1.03rem;
	padding:0 28px;
	white-space:nowrap
}
.sa-marquee b{
	font-family:system-ui,sans-serif;
	font-style:normal;
	font-size:.72rem;
	letter-spacing:.16em;
	text-transform:uppercase
}
@keyframes marquee{
	to{
		transform:translateX(-50%)
}
}
.sa-about-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:80px;
	align-items:center
}
.sa-visual{
	min-height:590px;
	border-radius:var(--sa-radius);
	position:relative;
	overflow:hidden;
	background:radial-gradient(circle at 65% 30%,rgba(201,162,75,.28),transparent 26%),linear-gradient(145deg,#16120b,#050505 65%);
	border:1px solid rgba(201,162,75,.22);
	box-shadow:var(--sa-shadow)
}
.sa-visual:before{
	content:"";
	position:absolute;
	width:60%;
	height:67%;
	left:20%;
	top:14%;
	border:1px solid rgba(201,162,75,.65);
	border-radius:180px 180px 8px 8px
}
.sa-visual:after{
	content:"";
	position:absolute;
	width:47%;
	height:55%;
	left:26.5%;
	top:20%;
	border:1px solid rgba(234,211,153,.24);
	border-radius:160px 160px 8px 8px
}
.sa-about-image{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	filter:brightness(.78) contrast(1.08);
}
.sa-visual-flower{
	position:absolute;
	width:220px;
	height:220px;
	border:1px dashed rgba(201,162,75,.4);
	border-radius:50%;
	right:-35px;
	top:65px;
	filter:drop-shadow(0 15px 45px rgba(201,162,75,.15))
}
.sa-visual-flower:before,.sa-visual-flower:after{
	content:"";
	position:absolute;
	inset:25px;
	border:1px solid rgba(201,162,75,.35);
	border-radius:50% 10% 50% 10%;
	transform:rotate(35deg)
}
.sa-visual-flower:after{
	transform:rotate(80deg);
	inset:45px
}
.sa-visual-caption{
	position:absolute;
	left:30px;
	right:30px;
	bottom:30px;
	display:flex;
	align-items:end;
	justify-content:space-between;
	gap:20px;
	padding:24px;
	background:rgba(5,5,5,.72);
	border:1px solid rgba(255,255,255,.1);
	backdrop-filter:blur(9px);
	border-radius:16px
}
.sa-visual-caption strong{
	font-family:Georgia,serif;
	font-size:1.45rem;
	font-weight:400
}
.sa-visual-caption small{
	display:block;
	color:var(--sa-gold-light);
	text-transform:uppercase;
	letter-spacing:.15em;
	font-size:.58rem
}
.sa-rating-badge{
	width:76px;
	height:76px;
	border-radius:50%;
	border:1px solid var(--sa-gold);
	display:grid;
	place-items:center;
	text-align:center;
	flex:0 0 auto;
	color:var(--sa-gold-light)
}
.sa-rating-badge b{
	font-size:1.2rem;
	line-height:1
}
.sa-rating-badge small{
	font-size:.52rem;
	color:#ddd;
	margin-top:3px
}
.sa-copy p{
	color:var(--sa-muted);
	font-size:1.04rem
}
.sa-copy .sa-subtitle{
	margin-bottom:26px
}
.sa-facts{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:1px;
	background:var(--sa-line);
	border:1px solid var(--sa-line);
	margin:35px 0;
	border-radius:16px;
	overflow:hidden
}
.sa-fact{
	background:var(--sa-black);
	padding:22px
}
.sa-fact strong{
	display:block;
	font-family:Georgia,serif;
	font-size:1.7rem;
	color:var(--sa-gold-light);
	font-weight:400;
	line-height:1
}
.sa-fact span{
	font-size:.64rem;
	text-transform:uppercase;
	letter-spacing:.12em;
	color:#aaa;
	display:block;
	margin-top:7px
}
.sa-services{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:1px;
	background:rgba(201,162,75,.18);
	border:1px solid rgba(201,162,75,.18)
}
.sa-service{
	background:var(--sa-black-2);
	padding:38px;
	min-height:320px;
	position:relative;
	overflow:hidden;
	transition:.35s ease
}
.sa-service:hover{
	background:#15120d;
	transform:translateY(-5px);
	z-index:2;
	box-shadow:0 18px 50px rgba(0,0,0,.22)
}
.sa-service .num{
	font-family:Georgia,serif;
	color:rgba(201,162,75,.5);
	font-size:.85rem
}
.sa-service .icon{
	font-size:1.65rem;
	color:var(--sa-gold);
	margin:38px 0 24px
}
.sa-service h3{
	font-family:Georgia,serif;
	font-size:1.72rem;
	font-weight:400;
	margin:0 0 13px
}
.sa-service p{
	color:#aaa;
	margin:0;
	font-size:.93rem
}
.sa-service a{
	position:absolute;
	bottom:28px;
	right:28px;
	width:39px;
	height:39px;
	border-radius:50%;
	display:grid;
	place-items:center;
	border:1px solid rgba(201,162,75,.35);
	color:var(--sa-gold);
	transition:.3s
}
.sa-service:hover a{
	background:var(--sa-gold);
	color:var(--sa-black)
}
.sa-portfolio-grid{
	display:grid;
	grid-template-columns:1.25fr .75fr;
	grid-template-rows:360px 360px;
	gap:18px
}
.sa-project{
	position:relative;
	overflow:hidden;
	border-radius:18px;
	isolation:isolate;
	background:#111;
	border:1px solid rgba(255,255,255,.08)
}
.sa-project.large{
	grid-row:span 2
}
.sa-project-art{
	position:absolute;
	inset:0;
	z-index:-2;
	transition:transform .7s ease;
	object-fit:cover;
	width:100%;
	height:100%;
	display:block
}
.sa-project:hover .sa-project-art{
	transform:scale(1.045)
}
.sa-project:after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,transparent 24%,rgba(0,0,0,.88));
	z-index:-1
}
.sa-project-content{
	position:absolute;
	left:30px;
	right:30px;
	bottom:26px
}
.sa-project-tag{
	font-size:.62rem;
	color:var(--sa-gold-light);
	text-transform:uppercase;
	letter-spacing:.16em
}
.sa-project h3{
	font-family:Georgia,serif;
	font-size:clamp(1.5rem,3vw,2.4rem);
	font-weight:400;
	margin:5px 0 0
}
.art-mandap{
	background:radial-gradient(circle at 50% 26%,rgba(201,162,75,.2),transparent 30%),repeating-radial-gradient(ellipse at 50% 88%,transparent 0 80px,rgba(201,162,75,.18) 82px 83px),linear-gradient(145deg,#1d1509,#060606 62%)
}
.art-floral{
	background:radial-gradient(circle at 24% 35%,rgba(201,162,75,.32),transparent 18%),radial-gradient(circle at 70% 60%,rgba(255,255,255,.1),transparent 20%),linear-gradient(135deg,#080808,#2a1d0d)
}
.art-destination{
	background:linear-gradient(0deg,rgba(0,0,0,.55),transparent),radial-gradient(circle at 72% 18%,#d3af5b 0 2%,transparent 2.5%),repeating-linear-gradient(115deg,transparent 0 40px,rgba(201,162,75,.12) 41px 42px),linear-gradient(145deg,#160e07,#060606)
}
.art-corporate{
	background:linear-gradient(90deg,transparent 0 60%,rgba(201,162,75,.18) 60% 61%,transparent 61%),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 28px),linear-gradient(145deg,#171717,#050505)
}
.art-photo{
	background:radial-gradient(circle at 42% 44%,rgba(255,255,255,.15),transparent 8%),radial-gradient(circle at 70% 32%,rgba(201,162,75,.28),transparent 12%),linear-gradient(145deg,#1b1308,#050505)
}
.art-birthday{
	background:radial-gradient(circle at 22% 25%,rgba(201,162,75,.42),transparent 6%),radial-gradient(circle at 60% 45%,rgba(255,255,255,.12),transparent 7%),radial-gradient(circle at 80% 20%,rgba(201,162,75,.24),transparent 9%),linear-gradient(145deg,#18100a,#050505)
}
.sa-process{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:24px;
	counter-reset:step
}
.sa-step{
	border-top:1px solid rgba(201,162,75,.45);
	padding:26px 18px 0 0;
	counter-increment:step;
	position:relative
}
.sa-step:before{
	content:"0" counter(step);
	font-family:Georgia,serif;
	color:var(--sa-gold);
	font-size:1rem
}
.sa-step h3{
	font-family:Georgia,serif;
	font-weight:400;
	font-size:1.5rem;
	margin:52px 0 12px
}
.sa-step p{
	color:#aaa;
	font-size:.91rem;
	margin:0
}
.sa-location-grid{
	display:grid;
	grid-template-columns:1.4fr .8fr .8fr;
	gap:14px
}
.sa-location{
	min-height:390px;
	border-radius:18px;
	padding:30px;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	position:relative;
	overflow:hidden;
	border:1px solid rgba(201,162,75,.18);
	background:linear-gradient(145deg,#17110a,#050505)
}
.sa-location-image{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	
	z-index:0
}
.sa-location > *{
	position:relative;
	z-index:1
}
.sa-location:before{
	content:"";
	position:absolute;
	width:260px;
	height:260px;
	border:1px solid rgba(201,162,75,.2);
	border-radius:50%;
	right:-100px;
	top:-90px
}
.sa-location:after{
	content:"";
	position:absolute;
	width:170px;
	height:170px;
	border:1px solid rgba(201,162,75,.13);
	border-radius:50%;
	right:-50px;
	top:-40px
}
.sa-location .city{
	font-family:Georgia,serif;
	font-size:2.6rem;
	font-weight:400;
	margin:0 0 5px
}
.sa-location p{
	color:#aaa;
	margin:0;
	max-width:370px;
	font-size:.9rem
}
.sa-rating-section{
	display:grid;
	grid-template-columns:.75fr 1.25fr;
	gap:60px;
	align-items:center
}
.sa-big-rating{
	font-family:Georgia,serif;
	font-size:clamp(7rem,15vw,12rem);
	line-height:.8;
	color:var(--sa-gold-light);
	letter-spacing:-.08em
}
.sa-stars{
	color:var(--sa-gold);
	letter-spacing:.25em;
	font-size:1.1rem;
	margin:25px 0 8px
}
.sa-review-note{
	color:#aaa;
	font-size:.9rem
}
.sa-value-list{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:14px
}
.sa-value{
	padding:23px;
	border:1px solid rgba(255,255,255,.1);
	border-radius:14px;
	background:#0d0d0d
}
.sa-value i{
	color:var(--sa-gold);
	margin-right:10px
}
.sa-value strong{
	font-family:Georgia,serif;
	font-size:1.12rem;
	font-weight:400
}
.sa-cta{
	background:var(--sa-gold);
	color:var(--sa-black);
	position:relative;
	overflow:hidden
}
.sa-cta:before{
	content:"SA";
	position:absolute;
	right:-25px;
	top:-100px;
	font-family:Georgia,serif;
	font-size:26rem;
	line-height:1;
	color:rgba(0,0,0,.055);
	letter-spacing:-.1em
}
.sa-cta-grid{
	display:grid;
	grid-template-columns:1.3fr .7fr;
	gap:50px;
	align-items:center;
	position:relative
}
.sa-cta .sa-title{
	color:var(--sa-black);
	margin-bottom:10px
}
.sa-cta p{
	max-width:670px;
	margin:0;
	color:#3d321c
}
.sa-cta-actions{
	display:flex;
	gap:12px;
	justify-content:flex-end;
	flex-wrap:wrap
}
.sa-footer{
	padding:70px 0 25px;
	background:#030303;
	border-top:1px solid rgba(201,162,75,.2)
}
.sa-footer-grid{
	display:grid;
	grid-template-columns:1.15fr .7fr .7fr 1fr;
	gap:45px;
	padding-bottom:55px
}
.sa-footer h4{
	font-family:Georgia,serif;
	font-weight:400;
	font-size:1.2rem;
	margin:0 0 18px
}
.sa-footer p,.sa-footer a{
	color:#96918a;
	font-size:.88rem
}
.sa-footer a:hover{
	color:var(--sa-gold-light)
}
.sa-footer-links{
	list-style:none;
	padding:0;
	margin:0;
	display:grid;
	gap:9px
}
.sa-social{
	display:flex;
	gap:9px;
	margin-top:22px
}
.sa-social a{
	width:38px;
	height:38px;
	border:1px solid rgba(255,255,255,.12);
	border-radius:50%;
	display:grid;
	place-items:center;
	color:#fff
}
.sa-social a:hover{
	border-color:var(--sa-gold);
	color:var(--sa-gold)
}
.sa-footer-bottom{
	border-top:1px solid rgba(255,255,255,.08);
	padding-top:22px;
	display:flex;
	justify-content:space-between;
	gap:30px;
	color:#777;
	font-size:.74rem
}
.sa-inner-hero{
	padding:210px 0 95px;
	background:radial-gradient(circle at 72% 18%,rgba(201,162,75,.14),transparent 18%),repeating-linear-gradient(90deg,transparent 0 90px,rgba(201,162,75,.035) 91px),var(--sa-black);
	position:relative;
	border-bottom:1px solid rgba(201,162,75,.16)
}
.sa-inner-hero h1{
	font-size:clamp(3.6rem,8vw,7rem);
	max-width:950px
}
.sa-breadcrumb{
	display:flex;
	gap:10px;
	align-items:center;
	margin-top:23px;
	color:#aaa;
	font-size:.73rem;
	letter-spacing:.12em;
	text-transform:uppercase
}
.sa-breadcrumb a{
	color:var(--sa-gold-light)
}
.sa-content-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:80px;
	align-items:start
}
.sa-card-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:18px
}
.sa-card{
	border:1px solid rgba(201,162,75,.18);
	background:var(--sa-black-2);
	border-radius:16px;
	padding:30px
}
.sa-card h3{
	font-family:Georgia,serif;
	font-weight:400;
	font-size:1.5rem;
	margin:13px 0 12px
}
.sa-card p{
	color:#aaa;
	margin:0;
	font-size:.91rem
}
.sa-card i{
	color:var(--sa-gold);
	font-size:1.35rem
}
.sa-card-light{
	background:#fff;
	color:#111;
	border-color:#e6dfd0
}
.sa-card-light p{
	color:#666
}
.sa-list{
	list-style:none;
	padding:0;
	margin:25px 0;
	display:grid;
	gap:13px
}
.sa-list li{
	display:flex;
	gap:12px;
	align-items:flex-start;
	color:var(--sa-muted)
}
.sa-list i{
	color:var(--sa-gold);
	margin-top:5px
}
.sa-section-light .sa-list li{
	color:#5f5b53
}
.sa-quote{
	border-left:1px solid var(--sa-gold);
	padding:8px 0 8px 28px;
	font-family:Georgia,serif;
	font-size:1.75rem;
	line-height:1.35;
	color:var(--sa-gold-light);
	margin:32px 0
}
.sa-contact-grid{
	display:grid;
	grid-template-columns:.8fr 1.2fr;
	gap:50px
}
.sa-contact-panel{
	padding:36px;
	border:1px solid rgba(201,162,75,.2);
	border-radius:18px;
	background:#0d0d0d
}
.sa-contact-item{
	display:flex;
	gap:18px;
	padding:22px 0;
	border-bottom:1px solid rgba(255,255,255,.08)
}
.sa-contact-item:last-child{
	border:0
}
.sa-contact-item i{
	width:42px;
	height:42px;
	border-radius:50%;
	border:1px solid rgba(201,162,75,.34);
	display:grid;
	place-items:center;
	color:var(--sa-gold);
	flex:0 0 auto
}
.sa-contact-item small{
	display:block;
	text-transform:uppercase;
	letter-spacing:.14em;
	color:#777;
	font-size:.58rem;
	margin-bottom:3px
}
.sa-contact-item a,.sa-contact-item p{
	margin:0;
	color:#eee;
	font-size:.95rem
}
.sa-form{
	padding:38px;
	background:var(--sa-ivory);
	border-radius:18px;
	color:#111
}
.sa-form-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:16px
}
.sa-field{
	display:grid;
	gap:7px
}
.sa-field.full{
	grid-column:1/-1
}
.sa-field label{
	font-size:.64rem;
	font-weight:800;
	letter-spacing:.12em;
	text-transform:uppercase
}
.sa-field input,.sa-field textarea,.sa-field select{
	width:100%;
	border:1px solid #d7cdbb;
	background:#fff;
	border-radius:10px;
	padding:14px 15px;
	outline:none;
	color:#111
}
.sa-field input:focus,.sa-field textarea:focus,.sa-field select:focus{
	border-color:var(--sa-gold);
	box-shadow:0 0 0 3px rgba(201,162,75,.12)
}
.sa-field textarea{
	min-height:130px;
	resize:vertical
}
.sa-form-note{
	font-size:.76rem;
	color:#6f6759;
	margin:13px 0 0
}
.sa-form-status{
	display:none;
	margin-top:13px;
	font-size:.82rem;
	color:#51472f
}
.sa-faq{
	display:grid;
	gap:10px
}
.sa-faq details{
	border:1px solid rgba(201,162,75,.18);
	border-radius:14px;
	background:#0b0b0b;
	padding:0 22px
}
.sa-faq summary{
	cursor:pointer;
	list-style:none;
	padding:20px 34px 20px 0;
	font-family:Georgia,serif;
	font-size:1.18rem;
	position:relative
}
.sa-faq summary::-webkit-details-marker{
	display:none
}
.sa-faq summary:after{
	content:"+";
	position:absolute;
	right:0;
	color:var(--sa-gold);
	font-family:system-ui,sans-serif
}
.sa-faq details[open] summary:after{
	content:"−"
}
.sa-faq details p{
	color:#aaa;
	margin:-3px 0 22px;
	max-width:850px
}
.sa-package-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:18px
}
.sa-package{
	padding:34px;
	border:1px solid rgba(201,162,75,.2);
	border-radius:18px;
	background:#0c0c0c
}
.sa-package.featured{
	background:var(--sa-gold);
	color:#111
}
.sa-package .label{
	font-size:.62rem;
	font-weight:800;
	letter-spacing:.15em;
	text-transform:uppercase;
	color:var(--sa-gold-light)
}
.sa-package.featured .label{
	color:#473717
}
.sa-package h3{
	font-family:Georgia,serif;
	font-size:2rem;
	font-weight:400;
	margin:8px 0
}
.sa-package p{
	color:#aaa
}
.sa-package.featured p,.sa-package.featured .sa-list li{
	color:#45391f
}
.sa-package .sa-list{
	min-height:200px
}
.sa-journal-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:18px
}
.sa-journal-card{
	border:1px solid rgba(201,162,75,.17);
	border-radius:17px;
	overflow:hidden;
	background:#0b0b0b
}
.sa-journal-art{
	height:230px
}
.sa-journal-body{
	padding:26px
}
.sa-journal-body small{
	color:var(--sa-gold);
	text-transform:uppercase;
	letter-spacing:.14em;
	font-size:.58rem
}
.sa-journal-body h3{
	font-family:Georgia,serif;
	font-weight:400;
	font-size:1.55rem;
	margin:8px 0 10px
}
.sa-journal-body p{
	color:#999;
	font-size:.9rem;
	margin:0
}
.sa-prose{
	max-width:820px;
	margin:0 auto
}
.sa-prose h2{
	font-family:Georgia,serif;
	font-size:2.4rem;
	font-weight:400;
	margin:48px 0 17px
}
.sa-prose p,.sa-prose li{
	color:#aaa
}
.sa-prose strong{
	color:#eee
}
.sa-reveal{
	opacity:0;
	transform:translateY(18px);
	transition:opacity .7s ease,transform .7s ease
}
.sa-reveal.visible{
	opacity:1;
	transform:none
}
.sa-whatsapp{
	position:fixed;
	right:18px;
	bottom:18px;
	width:56px;
	height:56px;
	border-radius:50%;
	background:var(--sa-gold);
	color:#111;
	z-index:999;
	display:grid;
	place-items:center;
	box-shadow:0 14px 35px rgba(0,0,0,.3);
	font-size:1.35rem;
	transition:.3s
}
.sa-whatsapp:hover{
	transform:translateY(-3px) scale(1.03);
	color:#111
}
.sa-skip{
	position:fixed;
	left:12px;
	top:-60px;
	z-index:2000;
	background:#fff;
	color:#111;
	padding:10px 14px;
	border-radius:6px
}
.sa-skip:focus{
	top:12px
}
@media (max-width:1024px){
	.sa-menu{
		gap:18px
}
	.sa-menu a{
		font-size:.65rem
}
	.sa-nav-actions .sa-btn{
		display:none
}
	.sa-hero-grid{
		grid-template-columns:1fr .45fr;
		gap:40px
}
	.sa-services,.sa-card-grid,.sa-journal-grid{
		grid-template-columns:repeat(2,1fr)
}
	.sa-process{
		grid-template-columns:repeat(2,1fr);
		row-gap:42px
}
	.sa-footer-grid{
		grid-template-columns:1.2fr 1fr 1fr
}
	.sa-footer-grid>div:last-child{
		grid-column:1/-1
}
	.sa-package-grid{
		grid-template-columns:1fr 1fr
}
	.sa-package.featured{
		grid-row:1
}
}
@media (max-width:820px){
	.sa-topbar{
		justify-content:flex-start;
		padding-left:16px
}
	.sa-header{
		height:74px
}
	.sa-header.scrolled{
		height:70px
}
	.sa-menu-toggle{
		display:grid;
		place-items:center
}
	.sa-menu{
		position:fixed;
		inset:108px 16px auto 16px;
		background:#0c0c0c;
		border:1px solid rgba(201,162,75,.25);
		border-radius:16px;
		padding:12px;
		display:none;
		box-shadow:var(--sa-shadow)
}
	.sa-header.scrolled .sa-menu{
		top:82px
}
	.sa-menu.open{
		display:grid;
		gap:0
}
	.sa-menu li{
		border-bottom:1px solid rgba(255,255,255,.07)
}
	.sa-menu li:last-child{
		border:0
}
	.sa-menu a{
		display:block;
		padding:15px 12px
}
	.sa-menu a:after{
		display:none
}
	.sa-nav-actions .sa-nav-call{
		display:none
}
	.sa-hero{
		padding-top:170px
}
	.sa-hero-grid{
		grid-template-columns:1fr
}
	.sa-hero-meta{
		display:grid;
		grid-template-columns:repeat(3,1fr);
		border-left:0;
		border-top:1px solid rgba(201,162,75,.5);
		padding:16px 0 0;
		gap:16px
}
	.sa-hero-meta-item{
		padding:10px 0;
		border-bottom:0
}
	.sa-scroll-cue{
		display:none
}
	.sa-section{
		padding:82px 0
}
	.sa-section-head{
		display:block
}
	.sa-section-head .sa-subtitle{
		margin-top:12px
}
	.sa-about-grid,.sa-content-grid,.sa-rating-section,.sa-contact-grid,.sa-cta-grid{
		grid-template-columns:1fr;
		gap:45px
}
	.sa-visual{
		min-height:480px
}
	.sa-location-grid{
		grid-template-columns:1fr 1fr
}
	.sa-location:first-child{
		grid-column:1/-1
}
	.sa-location{
		min-height:300px
}
	.sa-cta-actions{
		justify-content:flex-start
}
	.sa-portfolio-grid{
		grid-template-columns:1fr;
		grid-template-rows:none
}
	.sa-project,.sa-project.large{
		min-height:400px;
		grid-row:auto
}
	.sa-footer-grid{
		grid-template-columns:1fr 1fr
}
	.sa-footer-grid>div:last-child{
		grid-column:auto
}
	.sa-inner-hero{
		padding-top:180px
}
}
@media (max-width:560px){
	.sa-container{
		width:min(100% - 28px,1180px)
}
	.sa-topbar{
		font-size:.61rem;
		gap:18px
}
	.sa-topbar span:nth-child(2){
		display:none
}
	.sa-brand-copy strong{
		font-size:.82rem
}
	.sa-brand-copy small{
		font-size:.47rem
}
	.sa-monogram{
		width:38px;
		height:38px
}
	.sa-hero h1{
		font-size:clamp(3.4rem,18vw,5.7rem)
}
	.sa-hero-copy{
		font-size:.96rem
}
	.sa-hero-meta{
		grid-template-columns:1fr 1fr
}
	.sa-hero-meta-item:last-child{
		grid-column:1/-1
}
	.sa-services,.sa-card-grid,.sa-journal-grid,.sa-package-grid,.sa-location-grid,.sa-value-list{
		grid-template-columns:1fr
}
	.sa-location:first-child{
		grid-column:auto
}
	.sa-service{
		min-height:280px;
		padding:30px
}
	.sa-process{
		grid-template-columns:1fr
}
	.sa-about-grid{
		gap:38px
}
	.sa-visual{
		min-height:390px
}
	.sa-visual-caption{
		left:18px;
		right:18px;
		bottom:18px;
		padding:18px
}
	.sa-facts{
		grid-template-columns:1fr
}
	.sa-fact{
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:12px
}
	.sa-fact span{
		margin:0;
		text-align:right
}
	.sa-form{
		padding:24px
}
	.sa-form-grid{
		grid-template-columns:1fr
}
	.sa-field.full{
		grid-column:auto
}
	.sa-footer-grid{
		grid-template-columns:1fr
}
	.sa-footer-bottom{
		display:block
}
	.sa-footer-bottom span{
		display:block;
		margin-top:8px
}
	.sa-inner-hero{
		padding-top:165px;
		padding-bottom:75px
}
	.sa-inner-hero h1{
		font-size:clamp(3rem,15vw,5rem)
}
	.sa-big-rating{
		font-size:9rem
}
	.sa-cta:before{
		font-size:17rem
}
	.sa-btn{
		width:100%
}
	.sa-hero-actions .sa-btn{
		width:auto
}
	.sa-cta-actions .sa-btn{
		width:auto
}
}
@media (prefers-reduced-motion:reduce){
	html{
		scroll-behavior:auto
}
	.sa-reveal{
		opacity:1;
		transform:none;
		transition:none
}
	.sa-marquee-track{
		animation:none
}
	.sa-project-art,.sa-btn,.sa-whatsapp{
		transition:none
}
}

/* =========================================================
   SA EVENT MANAGEMENT — MOBILE HERO OVERFLOW FIX
   PASTE AT THE VERY END OF sa-theme.css
   ========================================================= */

@media (max-width: 560px){

  .sa-hero,
  .sa-hero .sa-container,
  .sa-hero-grid,
  .sa-hero-grid > div{
    width:100%;
    max-width:100%;
    min-width:0;
  }

  .sa-hero .sa-container{
    padding-left:16px;
    padding-right:16px;
  }

  .sa-hero h1{
    width:100%;
    max-width:100%;
    margin-left:0;
    margin-right:0;

    font-size:clamp(2.65rem, 11.5vw, 3.6rem);
    line-height:.95;
    letter-spacing:-.035em;

    overflow:visible;
    overflow-wrap:normal;
    word-break:normal;
  }

  .sa-hero h1 .line{
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
  }

  .sa-hero h1 .line:last-child em{
    display:block;
    width:100%;
    max-width:100%;

    font-size:.94em;
    line-height:.98;

    white-space:normal;
    overflow-wrap:break-word;
    word-break:normal;
  }


  /* HERO DESCRIPTION */

  .sa-hero-copy{
    width:100%;
    max-width:100%;
    min-width:0;

    padding-right:0;

    font-size:.94rem;
    line-height:1.65;

    overflow-wrap:break-word;
  }


  /* HERO BUTTONS */

  .sa-hero-actions{
    width:100%;
    max-width:100%;

    display:grid;
    grid-template-columns:1fr;

    gap:10px;
  }

  .sa-hero-actions .sa-btn{
    width:100%;
    max-width:100%;
    min-width:0;

    white-space:normal;
    text-align:center;
  }


  /* HERO RATING / LOCATION */

  .sa-hero-meta{
    width:100%;
    max-width:100%;
    min-width:0;

    grid-template-columns:
      minmax(0,1fr)
      minmax(0,1fr);

    gap:0 12px;
  }

  .sa-hero-meta-item{
    min-width:0;
  }

  .sa-hero-meta strong{
    display:block;

    max-width:100%;

    font-size:.95rem;
    line-height:1.25;

    overflow-wrap:break-word;
  }
}


/* EXTRA SMALL MOBILE */

@media (max-width: 380px){

  .sa-hero h1{
    font-size:clamp(2.35rem, 11.5vw, 3rem);
  }

  .sa-brand-copy strong{
    font-size:.68rem;
  }

  .sa-brand-copy small{
    display:none;
  }

  .sa-hero-meta{
    grid-template-columns:1fr;
  }

  .sa-hero-meta-item:last-child{
    grid-column:auto;
  }
}

.sa-counter{
    display:inline-block;
    font-variant-numeric:tabular-nums;
}
.sa-fact strong{
    overflow:hidden;
}

.sa-counter{
    display:inline-block;
    font-variant-numeric:tabular-nums;
    transition:transform .3s ease;
}

.sa-fact span {
    font-size: .64rem;
}

/* =====================================================
   SA FACT COUNTER SIZE FIX
   ===================================================== */

.sa-fact > strong {
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 2.4rem;
    line-height: 1;
    font-weight: 400;
    color: var(--sa-gold-light);
}


/* Counter number should inherit the BIG size */
.sa-fact > strong .sa-counter {
    display: inline;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: normal;
    text-transform: none;
    color: inherit;
    margin: 0;
}


/* Only target the description below the number */
.sa-fact > span {
    display: block;
    margin-top: 10px;

    font-size: .62rem;
    font-weight: 600;
    line-height: 1.4;

    letter-spacing: .14em;
    text-transform: uppercase;

    color: #aaa;
}


/* Desktop - slightly larger premium numbers */
@media (min-width: 821px) {

    .sa-fact > strong {
        font-size: 2.65rem;
    }

}


/* Mobile */
@media (max-width: 560px) {

    .sa-fact > strong {
        font-size: 2.15rem;
    }

    .sa-fact > span {
        font-size: .58rem;
    }

}

.sa-big-rating .sa-counter{
    display:inline-block;
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    line-height:inherit;
    letter-spacing:inherit;
    color:inherit;
    font-variant-numeric:tabular-nums;
}

/* =========================================================
   SA CONNECT SECTION - NEW FROM SCRATCH
   ========================================================= */

.sa-connect-section{
  padding:110px 0 90px;
  background:
    radial-gradient(circle at 12% 15%, rgba(201,162,75,.12), transparent 20%),
    radial-gradient(circle at 85% 80%, rgba(201,162,75,.08), transparent 22%),
    linear-gradient(180deg, #050505 0%, #090909 100%);
  position:relative;
  overflow:hidden;
}

.sa-connect-shell{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:34px;
  align-items:stretch;
}

.sa-connect-copy,
.sa-connect-map-panel{
  border:1px solid rgba(201,162,75,.18);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(15,15,15,.98), rgba(8,8,8,.98));
  box-shadow:0 24px 60px rgba(0,0,0,.28);
}

.sa-connect-copy{
  padding:42px;
}

.sa-connect-map-panel{
  padding:24px;
}

.sa-connect-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--sa-gold-light);
}

.sa-connect-kicker::before{
  content:"";
  width:34px;
  height:1px;
  background:var(--sa-gold);
}

.sa-connect-title{
  margin:16px 0 16px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.6rem,4vw,4.5rem);
  line-height:1.02;
  letter-spacing:-.04em;
  font-weight:400;
  color:#fff;
}

.sa-connect-title em{
  display:block;
  font-style:italic;
  color:var(--sa-gold-light);
}

.sa-connect-text{
  max-width:620px;
  color:#aaa;
  font-size:1rem;
  line-height:1.8;
  margin:0 0 28px;
}

.sa-connect-cards{
  display:grid;
  gap:16px;
  margin-bottom:28px;
}

.sa-mini-card{
  display:flex;
  align-items:flex-start;
  gap:16px;
  padding:18px 18px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.02);
}

.sa-mini-icon{
  width:48px;
  height:48px;
  border-radius:50%;
  border:1px solid rgba(201,162,75,.35);
  color:var(--sa-gold);
  display:grid;
  place-items:center;
  flex:0 0 auto;
}

.sa-mini-card small{
  display:block;
  font-size:.62rem;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:#7f7a72;
  margin-bottom:6px;
}

.sa-mini-card a,
.sa-mini-card p{
  margin:0;
  color:#fff;
  font-size:1rem;
  line-height:1.6;
}

.sa-mini-card p{
  color:#d6d1c8;
}

.sa-connect-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.sa-connect-btn{
  min-height:54px;
  padding:0 24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  transition:.3s ease;
  border:1px solid transparent;
}

.sa-connect-btn.primary{
  background:var(--sa-gold);
  color:#111;
  border-color:var(--sa-gold);
}

.sa-connect-btn.primary:hover{
  background:var(--sa-gold-light);
  border-color:var(--sa-gold-light);
  color:#111;
  transform:translateY(-2px);
}

.sa-connect-btn.secondary{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.22);
}

.sa-connect-btn.secondary:hover{
  border-color:var(--sa-gold);
  color:var(--sa-gold-light);
  transform:translateY(-2px);
}

.sa-connect-btn.dark{
  background:#111;
  color:#fff;
  border-color:#111;
}

.sa-connect-btn.dark:hover{
  background:#1a1a1a;
  border-color:#1a1a1a;
  color:#fff;
}

.sa-connect-btn.ghost{
  background:transparent;
  color:#111;
  border-color:rgba(17,17,17,.25);
}

.sa-connect-btn.ghost:hover{
  background:rgba(17,17,17,.06);
}

.sa-map-top{
  padding:10px 10px 18px;
}

.sa-map-top h3{
  margin:14px 0 10px;
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  font-size:2rem;
  color:#fff;
}

.sa-map-top p{
  margin:0;
  color:#aaa;
  line-height:1.7;
}

.sa-connect-map-wrap{
  position:relative;
  width:100%;
  height:420px;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(201,162,75,.16);
}

.sa-connect-map-wrap iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  display:block;
}

.sa-map-link{
  margin-top:16px;
  min-height:54px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:rgba(201,162,75,.08);
  border:1px solid rgba(201,162,75,.2);
  color:var(--sa-gold-light);
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.72rem;
}

.sa-map-link:hover{
  background:rgba(201,162,75,.14);
  color:#fff;
}

.sa-bottom-cta{
  margin-top:34px;
  border-radius:28px;
  background:linear-gradient(135deg, #c9a24b 0%, #d8b45d 100%);
  color:#111;
  padding:34px 38px;
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:24px;
  align-items:center;
  overflow:hidden;
  position:relative;
}

.sa-bottom-cta::before{
  content:"SA";
  position:absolute;
  right:-18px;
  top:-58px;
  font-family:Georgia,serif;
  font-size:16rem;
  line-height:1;
  color:rgba(0,0,0,.06);
  letter-spacing:-.1em;
}

.sa-bottom-cta-copy,
.sa-bottom-cta-actions{
  position:relative;
  z-index:1;
}

.sa-bottom-cta h3{
  margin:14px 0 0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,3vw,3.3rem);
  line-height:1.06;
  font-weight:400;
  letter-spacing:-.04em;
  color:#111;
}

.sa-bottom-cta-actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  flex-wrap:wrap;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 1024px){
  .sa-connect-shell{
    grid-template-columns:1fr;
  }

  .sa-bottom-cta{
    grid-template-columns:1fr;
  }

  .sa-bottom-cta-actions{
    justify-content:flex-start;
  }
}

@media (max-width: 820px){
  .sa-connect-section{
    padding:85px 0 70px;
  }

  .sa-connect-copy{
    padding:32px;
  }

  .sa-connect-map-panel{
    padding:18px;
  }

  .sa-connect-map-wrap{
    height:360px;
  }
}

@media (max-width: 560px){
  .sa-connect-section{
    padding:64px 0 56px;
  }

  .sa-connect-title{
    font-size:clamp(2.2rem, 10vw, 3rem);
  }

  .sa-connect-copy{
    padding:24px 20px;
    border-radius:20px;
  }

  .sa-connect-map-panel{
    padding:14px;
    border-radius:20px;
  }

  .sa-mini-card{
    padding:15px;
  }

  .sa-mini-icon{
    width:42px;
    height:42px;
  }

  .sa-connect-actions,
  .sa-bottom-cta-actions{
    display:grid;
    grid-template-columns:1fr;
  }

  .sa-connect-btn{
    width:100%;
  }

  .sa-connect-map-wrap{
    height:300px;
    border-radius:16px;
  }

  .sa-map-top h3{
    font-size:1.7rem;
  }

  .sa-bottom-cta{
    margin-top:22px;
    padding:24px 20px;
    border-radius:22px;
  }

  .sa-bottom-cta h3{
    font-size:clamp(1.8rem, 8vw, 2.5rem);
  }

  .sa-bottom-cta::before{
    font-size:10rem;
    top:-24px;
    right:-16px;
  }
}




/* =========================================================
   FINAL CONTACT + ENQUIRY RESPONSIVE FIX
   PASTE AT ABSOLUTE END OF sa-theme.css
   ========================================================= */


/* ---------------------------------------------------------
   GLOBAL WIDTH SAFETY
   --------------------------------------------------------- */

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

main {
    width: 100%;
    max-width: 100%;
}


/* ---------------------------------------------------------
   CONTACT SECTION
   --------------------------------------------------------- */

.sa-contact-grid {
    width: 100%;
    max-width: 100%;

    display: grid;

    grid-template-columns:
        minmax(0, 0.8fr)
        minmax(0, 1.2fr);

    gap: 50px;

    align-items: start;
}


/* Both columns are allowed to shrink */

.sa-contact-panel,
.sa-form {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}


/* ---------------------------------------------------------
   CONTACT PANEL
   --------------------------------------------------------- */

.sa-contact-panel {
    padding: 36px;

    border: 1px solid rgba(201, 162, 75, 0.2);

    border-radius: 18px;

    background: #0d0d0d;

    overflow: hidden;
}


/* Contact heading */

.sa-contact-panel .sa-title {
    max-width: 100%;

    font-size: clamp(2.4rem, 4vw, 3.2rem) !important;

    line-height: 1.05;

    overflow-wrap: break-word;
}


/* ---------------------------------------------------------
   CONTACT ITEM
   --------------------------------------------------------- */

.sa-contact-item {
    width: 100%;

    display: grid;

    grid-template-columns:
        42px
        minmax(0, 1fr);

    align-items: start;

    gap: 18px;

    padding: 22px 0;

    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}


.sa-contact-item:last-child {
    border-bottom: 0;
}


/* Icon */

.sa-contact-item > i {
    width: 42px;
    height: 42px;

    display: grid;
    place-items: center;

    border-radius: 50%;

    border: 1px solid rgba(201, 162, 75, 0.34);

    color: var(--sa-gold);

    flex: none;
}


/* THIS IS IMPORTANT */

.sa-contact-item > div {
    min-width: 0;
    width: 100%;
}


/* Label */

.sa-contact-item small {
    display: block;

    margin-bottom: 5px;

    font-size: 0.58rem;

    line-height: 1.3;

    letter-spacing: 0.14em;

    text-transform: uppercase;

    color: #777;
}


/* Text */

.sa-contact-item a,
.sa-contact-item p {
    display: block;

    width: 100%;
    max-width: 100%;

    margin: 0;

    color: #eee;

    font-size: 0.95rem;
    line-height: 1.6;

    white-space: normal;

    overflow-wrap: anywhere;
    word-break: normal;
}


/* ---------------------------------------------------------
   FORM
   --------------------------------------------------------- */

.sa-form {
    padding: 38px;

    background: var(--sa-ivory);

    color: #111;

    border-radius: 18px;

    overflow: hidden;
}


.sa-form .sa-title {
    width: 100%;
    max-width: 100%;

    font-size: clamp(2.2rem, 4vw, 2.7rem) !important;

    line-height: 1.05;

    overflow-wrap: break-word;
}


.sa-form-grid {
    width: 100%;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr);

    gap: 16px;
}


.sa-field {
    width: 100%;
    min-width: 0;
}


.sa-field input,
.sa-field textarea,
.sa-field select {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 820px) {

    .sa-contact-grid {
        grid-template-columns: minmax(0, 1fr);

        gap: 30px;
    }


    .sa-contact-panel,
    .sa-form {
        width: 100%;
        max-width: 100%;
    }


    .sa-contact-panel {
        padding: 30px;
    }


    .sa-form {
        padding: 30px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 560px) {

    /*
       Your global container should always be calculated
       this way on mobile.
    */

    .sa-container {
        width: calc(100% - 28px) !important;

        max-width: 1180px;

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

        padding-left: 0;
        padding-right: 0;
    }


    /* Section */

    .sa-contact-grid {
        width: 100%;

        grid-template-columns: minmax(0, 1fr);

        gap: 22px;
    }


    /* --------------------------------
       CONTACT CARD
       -------------------------------- */

    .sa-contact-panel {
        width: 100%;

        padding: 22px 18px;

        border-radius: 16px;
    }


    .sa-contact-panel .sa-title {
        font-size: clamp(
            2rem,
            10vw,
            2.75rem
        ) !important;

        line-height: 1;
    }


    .sa-contact-item {
        grid-template-columns:
            38px
            minmax(0, 1fr);

        gap: 13px;

        padding: 18px 0;
    }


    .sa-contact-item > i {
        width: 38px;
        height: 38px;

        font-size: 0.82rem;
    }


    .sa-contact-item small {
        font-size: 0.52rem;

        letter-spacing: 0.12em;
    }


    .sa-contact-item a,
    .sa-contact-item p {
        font-size: 0.86rem;

        line-height: 1.55;

        overflow-wrap: anywhere;
    }


    /* --------------------------------
       FORM
       -------------------------------- */

    .sa-form {
        width: 100%;

        padding: 24px 18px;

        border-radius: 16px;
    }


    .sa-form .sa-title {
        font-size: clamp(
            2rem,
            9vw,
            2.55rem
        ) !important;

        line-height: 1.05;

        margin-bottom: 24px;
    }


    .sa-form-grid {
        grid-template-columns: minmax(0, 1fr);

        gap: 14px;
    }


    .sa-field.full {
        grid-column: auto;
    }


    .sa-field input,
    .sa-field select,
    .sa-field textarea {
        width: 100%;

        min-width: 0;

        padding: 13px 14px;
    }


    .sa-field textarea {
        min-height: 115px;
    }


    .sa-form .sa-btn {
        width: 100%;
    }

}


/* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

    .sa-container {
        width: calc(100% - 20px) !important;
    }


    .sa-contact-panel {
        padding: 20px 15px;
    }


    .sa-form {
        padding: 21px 15px;
    }


    .sa-contact-item {
        grid-template-columns:
            36px
            minmax(0, 1fr);

        gap: 11px;
    }


    .sa-contact-item > i {
        width: 36px;
        height: 36px;
    }


    .sa-contact-item a,
    .sa-contact-item p {
        font-size: 0.82rem;
    }

}

.sa-portfolio-grid-secondary{
    grid-template-columns:.75fr 1.25fr;
}

@media (max-width:820px){
	.sa-portfolio-grid-secondary{
    grid-template-columns:1fr;
}
.sa-menu-parent {
    width: 100%;
    justify-content: space-between;
}

.sa-menu-parent > a {
    flex: 1;
}

.sa-submenu-toggle {
    width: 46px;
    height: 46px;

    display: grid;
    place-items: center;

    padding: 0;

    color: var(--sa-gold-light);
}

.sa-submenu {
    position: static;

    width: 100%;
    min-width: 0;

    padding: 0 0 0 14px;
    margin: 0;

    border: 0;
    border-radius: 0;

    background: rgba(255, 255, 255, .025);

    box-shadow: none;

    opacity: 1;
    visibility: visible;
    transform: none;

    display: none;
}

.sa-has-dropdown.submenu-open > .sa-submenu {
    display: block;
}

.sa-has-dropdown.submenu-open .sa-submenu-toggle i {
    transform: rotate(180deg);
}

.sa-menu .sa-submenu li {
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.sa-menu .sa-submenu li:last-child {
    border-bottom: 0;
}

.sa-menu .sa-submenu a {
    padding: 13px 15px;

    font-size: .63rem;

    color: #bbb;
}
}

@media (max-width:820px){

    .sa-portfolio-grid,
    .sa-portfolio-grid-secondary{
        grid-template-columns:1fr;
        grid-template-rows:none;
    }

    .sa-project,
    .sa-project.large{
        min-height:400px;
        grid-row:auto;
    }

}

@media (max-width:560px){

    .sa-portfolio-grid{
        gap:16px;
    }

    .sa-project,
    .sa-project.large{
        width:100%;
        min-width:0;
        min-height:360px;
    }

    .sa-project-content{
        left:20px;
        right:20px;
        bottom:22px;
    }

    .sa-project h3{
        font-size:1.65rem;
        line-height:1.08;
    }

}

/* =====================================================
   SERVICES DROPDOWN
===================================================== */

.sa-has-dropdown {
    position: relative;
}

.sa-menu-parent {
    display: flex;
    align-items: center;
}

.sa-submenu-toggle {
    border: 0;
    background: transparent;
    color: #eee;
    padding: 8px 0 8px 7px;
    font-size: .68rem;
    cursor: pointer;
    transition: .3s ease;
}

.sa-has-dropdown:hover .sa-submenu-toggle,
.sa-has-dropdown:focus-within .sa-submenu-toggle {
    color: var(--sa-gold-light);
}

.sa-submenu-toggle i {
    transition: transform .3s ease;
}

/* Desktop dropdown */

.sa-submenu {
    position: absolute;
    top: 100%;
    left: -20px;

    min-width: 245px;

    padding: 10px;
    margin: 0;

    list-style: none;

    background: #0c0c0c;

    border: 1px solid rgba(201, 162, 75, .25);
    border-radius: 12px;

    box-shadow: 0 20px 50px rgba(0, 0, 0, .4);

    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);

    transition:
        opacity .25s ease,
        transform .25s ease,
        visibility .25s ease;

    z-index: 999;
}

.sa-submenu li {
    margin: 0;
    padding: 0;
}

.sa-menu .sa-submenu a {
    display: block;

    padding: 13px 14px;

    font-size: .68rem;
    letter-spacing: .08em;
    text-transform: uppercase;

    color: #ddd;

    border-radius: 7px;

    white-space: nowrap;
}

.sa-menu .sa-submenu a::after {
    display: none;
}

.sa-menu .sa-submenu a:hover {
    background: rgba(201, 162, 75, .1);
    color: var(--sa-gold-light);
}

@media (min-width: 821px) {

    .sa-has-dropdown:hover > .sa-submenu,
    .sa-has-dropdown:focus-within > .sa-submenu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .sa-has-dropdown:hover .sa-submenu-toggle i {
        transform: rotate(180deg);
    }
}


/* =====================================================
   FINAL MOBILE SERVICES DROPDOWN FIX
===================================================== */

@media (max-width: 820px) {

    /* Allow main mobile menu to grow */
    .sa-menu.open {
        height: auto !important;
        max-height: calc(100vh - 120px) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    /* Dropdown parent */
    .sa-menu .sa-has-dropdown {
        display: block !important;
        width: 100% !important;
    }

    .sa-menu .sa-menu-parent {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;

        width: 100% !important;
    }

    .sa-menu .sa-menu-parent > a {
        flex: 1 !important;
    }

    /* Arrow button */
    .sa-menu .sa-submenu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        width: 48px !important;
        height: 48px !important;

        border: 0 !important;
        background: transparent !important;

        color: var(--sa-gold-light) !important;

        cursor: pointer;
    }

    /* CLOSED submenu */
    .sa-menu .sa-has-dropdown > .sa-submenu {
        display: none !important;

        position: static !important;

        width: 100% !important;
        min-width: 0 !important;

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

        margin: 0 !important;
        padding: 5px 0 8px 15px !important;

        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;

        background: rgba(255,255,255,0.025) !important;

        border: 0 !important;
        border-radius: 0 !important;

        box-shadow: none !important;

        list-style: none !important;

        pointer-events: auto !important;
    }

    /* OPEN submenu */
    .sa-menu .sa-has-dropdown.submenu-open > .sa-submenu {
        display: block !important;
    }

    /* Submenu items */
    .sa-menu .sa-submenu > li {
        display: block !important;

        width: 100% !important;

        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    }

    .sa-menu .sa-submenu > li:last-child {
        border-bottom: 0 !important;
    }

    .sa-menu .sa-submenu > li > a {
        display: block !important;

        width: 100% !important;

        padding: 12px 14px !important;

        color: #bbb !important;

        font-size: .63rem !important;
        letter-spacing: .08em !important;
    }

    .sa-menu .sa-submenu > li > a:hover {
        color: var(--sa-gold-light) !important;
        background: rgba(201,162,75,.07) !important;
    }

    /* Arrow animation */
    .sa-menu .sa-submenu-toggle i {
        transition: transform .3s ease !important;
    }

    .sa-menu .sa-has-dropdown.submenu-open
    .sa-submenu-toggle i {
        transform: rotate(180deg) !important;
    }
}


/* =========================================================
   2026 HYDERABAD PREMIUM REBRAND
   Smoke white + black + restrained gold
   ========================================================= */
:root{
  --sa-black:#080808;
  --sa-black-2:#10100f;
  --sa-black-3:#181816;
  --sa-gold:#c6a15b;
  --sa-gold-light:#ead7aa;
  --sa-ivory:#f3f3ef;
  --sa-smoke:#e8e8e3;
  --sa-smoke-2:#f8f8f5;
  --sa-ink:#11110f;
  --sa-white:#ffffff;
  --sa-muted:#bdb9b0;
  --sa-line:rgba(198,161,91,.28);
  --sa-shadow:0 30px 90px rgba(0,0,0,.22);
  --sa-radius:24px;
}

body{
  background:#080808;
  color:#f8f8f5;
  font-synthesis:none;
}

.sa-container{
  width:min(1220px,calc(100% - 48px));
}

.sa-topbar{
  height:36px;
  background:linear-gradient(90deg,#e9e9e4 0%,#f7f7f3 50%,#e9e9e4 100%);
  color:#11110f;
  border-bottom:1px solid rgba(198,161,91,.55);
  gap:34px;
  letter-spacing:.1em;
}
.sa-topbar span:nth-child(2){
  color:#7d5d20;
}

.sa-header{
  top:36px;
  height:88px;
  background:linear-gradient(180deg,rgba(8,8,8,.94),rgba(8,8,8,.70));
  border-bottom:1px solid rgba(234,215,170,.14);
  backdrop-filter:blur(18px) saturate(120%);
}
.sa-header.scrolled{
  background:rgba(8,8,8,.97);
  box-shadow:0 18px 55px rgba(0,0,0,.24);
}
.sa-menu a{
  letter-spacing:.09em;
}
.sa-menu a.active,
.sa-menu a:hover{
  color:var(--sa-gold-light);
}
.sa-submenu{
  background:rgba(12,12,11,.98);
  border:1px solid rgba(198,161,91,.22);
  box-shadow:0 26px 70px rgba(0,0,0,.35);
}

.sa-btn{
  min-height:54px;
  padding-inline:26px;
  background:linear-gradient(135deg,#d0ad68,#b98e42);
  border-color:#d0ad68;
  box-shadow:0 10px 30px rgba(198,161,91,.14);
}
.sa-btn:hover{
  background:#ead7aa;
  border-color:#ead7aa;
  box-shadow:0 14px 38px rgba(198,161,91,.23);
}
.sa-btn-outline{
  background:rgba(8,8,8,.12);
  border-color:rgba(255,255,255,.32);
  backdrop-filter:blur(10px);
}

.sa-hero{
  padding-top:205px;
  min-height:100svh;
}
.sa-hero:before{
  background:
    radial-gradient(circle at 76% 30%,rgba(198,161,91,.15),transparent 25%),
    linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.72) 47%,rgba(0,0,0,.34) 75%,rgba(0,0,0,.74) 100%);
}
.sa-hero:after{
  background:linear-gradient(180deg,rgba(0,0,0,.18),transparent 42%,rgba(0,0,0,.92));
}
.sa-hero h1{
  text-wrap:balance;
  text-shadow:0 18px 50px rgba(0,0,0,.32);
}
.sa-hero-copy{
  color:#e4e2dc;
  font-size:1.09rem;
  line-height:1.8;
}
.sa-hero-meta{
  border-left-color:rgba(234,215,170,.72);
  background:linear-gradient(180deg,rgba(10,10,10,.34),rgba(10,10,10,.08));
  padding:10px 0 10px 28px;
  backdrop-filter:blur(4px);
}
.sa-hero-meta strong{
  color:#f8f8f5;
}

.sa-marquee{
  background:#0c0c0b;
  color:var(--sa-gold-light);
  border-color:rgba(198,161,91,.38);
}
.sa-marquee-track{
  padding:15px 0;
}
.sa-marquee span{
  color:#d7d4cc;
}
.sa-marquee span:nth-child(2n){
  color:var(--sa-gold);
}

.sa-section{
  padding:118px 0;
}
.sa-section-light{
  background:
    radial-gradient(circle at 85% 15%,rgba(198,161,91,.09),transparent 22%),
    linear-gradient(180deg,#f6f6f2 0%,#ecece7 100%);
  color:var(--sa-ink);
}
.sa-section-alt{
  background:
    radial-gradient(circle at 12% 15%,rgba(198,161,91,.08),transparent 20%),
    linear-gradient(180deg,#f1f1ed 0%,#e7e7e2 100%);
  color:var(--sa-ink);
  border-top:1px solid rgba(17,17,15,.05);
  border-bottom:1px solid rgba(17,17,15,.05);
}
.sa-section-alt .sa-title,
.sa-section-alt .sa-display,
.sa-section-alt .sa-copy,
.sa-section-alt .sa-copy p,
.sa-section-alt .sa-section-head{
  color:var(--sa-ink);
}
.sa-section-alt .sa-subtitle,
.sa-section-alt .sa-copy p{
  color:#5e5d58;
}
.sa-section-alt .sa-kicker,
.sa-section-light .sa-kicker{
  color:#806224;
}
.sa-section-alt .sa-kicker:before,
.sa-section-light .sa-kicker:before{
  background:#a47a2f;
}

.sa-section-head{
  margin-bottom:58px;
}
.sa-title{
  text-wrap:balance;
}

.sa-visual{
  border-color:rgba(198,161,91,.32);
  box-shadow:0 32px 80px rgba(20,18,14,.19);
}
.sa-about-image{
  filter:brightness(.82) contrast(1.06) saturate(.9);
}
.sa-visual-caption{
  background:rgba(8,8,8,.76);
  border-color:rgba(234,215,170,.16);
  backdrop-filter:blur(16px);
}
.sa-section-alt .sa-facts{
  border-color:rgba(198,161,91,.27);
  background:rgba(198,161,91,.27);
}
.sa-section-alt .sa-fact{
  background:#0d0d0c;
}

.sa-services{
  gap:14px;
  background:transparent;
  border:0;
}
.sa-service{
  min-height:340px;
  border:1px solid rgba(198,161,91,.18);
  border-radius:20px;
  background:linear-gradient(155deg,#151513 0%,#0a0a09 72%);
  box-shadow:0 18px 50px rgba(0,0,0,.12);
}
.sa-service:before{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  border:1px solid rgba(198,161,91,.12);
  border-radius:50%;
  right:-70px;
  top:-70px;
}
.sa-service:hover{
  background:linear-gradient(155deg,#201a10 0%,#0b0b0a 72%);
  border-color:rgba(198,161,91,.5);
  transform:translateY(-7px);
}
.sa-service p{
  color:#bdb9b0;
  line-height:1.75;
}

.sa-project{
  border-color:rgba(198,161,91,.22);
  box-shadow:0 18px 54px rgba(0,0,0,.15);
}
.sa-project:after{
  background:linear-gradient(180deg,rgba(0,0,0,.04) 18%,rgba(0,0,0,.9));
}
.sa-project:hover{
  border-color:rgba(234,215,170,.55);
}

.sa-step{
  border-top-color:rgba(198,161,91,.55);
}
.sa-step p{
  color:#b9b6ae;
  line-height:1.75;
}

.sa-location{
  min-height:430px;
  border-color:rgba(198,161,91,.28);
  box-shadow:inset 0 -210px 150px -55px rgba(0,0,0,.92),0 18px 55px rgba(20,18,14,.12);
}
.sa-location-image{
  filter:saturate(.78) contrast(1.04);
  transform:scale(1.01);
}
.sa-location .sa-kicker{
  color:var(--sa-gold-light);
}
.sa-location .sa-kicker:before{
  background:var(--sa-gold);
}
.sa-location .city{
  color:#fff;
}
.sa-location p{
  color:#e1ddd4;
  line-height:1.7;
}

.sa-value{
  background:linear-gradient(150deg,#121211,#0b0b0a);
  border-color:rgba(198,161,91,.18);
}

.sa-cta{
  background:
    radial-gradient(circle at 88% 22%,rgba(255,255,255,.24),transparent 18%),
    linear-gradient(135deg,#d4b46f 0%,#c19a52 48%,#e2c985 100%);
}
.sa-cta p{
  color:#3c321f;
  line-height:1.75;
}
.sa-cta .sa-btn-outline{
  background:transparent;
}

.sa-footer{
  background:
    radial-gradient(circle at 16% 0%,rgba(198,161,91,.08),transparent 24%),
    #070706;
  border-top-color:rgba(198,161,91,.35);
  padding-top:78px;
}
.sa-footer h4{
  color:#f2efe7;
}
.sa-footer p,.sa-footer a{
  color:#aaa69d;
  line-height:1.75;
}
.sa-footer-bottom{
  border-color:rgba(198,161,91,.16);
}

.sa-inner-hero{
  background:
    radial-gradient(circle at 78% 26%,rgba(198,161,91,.19),transparent 20%),
    linear-gradient(115deg,#070706 0%,#0d0d0c 62%,#15120d 100%);
  border-bottom-color:rgba(198,161,91,.28);
}
.sa-inner-hero:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(234,215,170,.5),transparent);
}

.sa-card{
  border-color:rgba(198,161,91,.18);
  background:linear-gradient(155deg,#151513,#0c0c0b);
  box-shadow:0 16px 45px rgba(0,0,0,.12);
}
.sa-card p{
  color:#bbb7af;
  line-height:1.75;
}
.sa-section-alt .sa-card,
.sa-section-light .sa-card:not(.sa-card-light){
  background:rgba(255,255,255,.7);
  border-color:rgba(17,17,15,.09);
  color:#151512;
  box-shadow:0 15px 45px rgba(25,22,16,.07);
}
.sa-section-alt .sa-card p,
.sa-section-light .sa-card:not(.sa-card-light) p{
  color:#66645e;
}

.sa-contact-panel{
  background:linear-gradient(160deg,#141412,#0a0a09);
  border-color:rgba(198,161,91,.25);
}
.sa-form{
  background:linear-gradient(180deg,#f6f6f2,#eaeae5);
  border:1px solid rgba(17,17,15,.08);
  box-shadow:0 22px 65px rgba(0,0,0,.12);
}
.sa-field input,.sa-field textarea,.sa-field select{
  background:#fff;
  border-color:#d7d5cd;
}

.sa-connect-section{
  background:
    radial-gradient(circle at 10% 15%,rgba(198,161,91,.12),transparent 22%),
    radial-gradient(circle at 88% 84%,rgba(234,215,170,.08),transparent 24%),
    linear-gradient(180deg,#0b0b0a 0%,#060606 100%);
}
.sa-connect-copy,.sa-connect-map-panel{
  border-color:rgba(198,161,91,.24);
  background:linear-gradient(180deg,rgba(19,19,17,.98),rgba(8,8,8,.99));
  box-shadow:0 28px 75px rgba(0,0,0,.32);
}
.sa-mini-card{
  border-color:rgba(234,215,170,.10);
  background:rgba(255,255,255,.025);
}
.sa-connect-map-wrap{
  border-color:rgba(198,161,91,.28);
}
.sa-map-link{
  background:rgba(198,161,91,.09);
}

.sa-whatsapp{
  box-shadow:0 16px 38px rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.18);
}

@media (max-width: 820px){
  .sa-container{width:min(100% - 30px,1220px)}
  .sa-topbar{height:34px;gap:15px;font-size:.61rem}
  .sa-header{top:34px}
  .sa-section{padding:88px 0}
  .sa-services{gap:12px}
  .sa-location{min-height:360px}
}

@media (max-width: 560px){
  .sa-container{width:calc(100% - 28px)}
  .sa-topbar span:nth-child(1),
  .sa-topbar span:nth-child(3){display:none}
  .sa-topbar span:nth-child(2){display:block;font-size:.62rem}
  .sa-section{padding:70px 0}
  .sa-service{min-height:300px;border-radius:18px}
  .sa-hero{padding-top:165px}
  .sa-location{min-height:330px}
}


/* ===========================================================
   SA Event Management | Privacy Policy page (2026-11-01)
   Match the site's charcoal / champagne-gold / ivory identity.
   =========================================================== */
.sa-policy-hero{padding-top:180px;padding-bottom:88px;overflow:hidden}
.sa-policy-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:45px}
.sa-policy-hero .sa-display{font-size:clamp(3.4rem,7.5vw,6.6rem);line-height:1.03;max-width:800px}
.sa-policy-hero .sa-subtitle{margin-top:24px;max-width:610px;color:#bcb6aa;line-height:1.8}
.sa-policy-hero-seal{width:210px;height:210px;border:1px solid rgba(216,183,108,.4);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex-shrink:0;color:#d6b670;background:radial-gradient(circle,rgba(201,162,75,.13),transparent 68%);box-shadow:0 0 0 14px rgba(201,162,75,.035)}
.sa-policy-hero-seal i{font-size:3.3rem}
.sa-policy-hero-seal span{font-size:.7rem;letter-spacing:.26em;line-height:1.6;text-align:center;font-weight:800}
.sa-policy-section{padding-top:86px}
.sa-policy-intro{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:48px}
.sa-policy-intro .sa-kicker{color:#91702a}
.sa-policy-intro h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.6rem,4vw,4rem);line-height:1.11;font-weight:400;letter-spacing:-.04em;margin:12px 0 20px;color:#191814}
.sa-policy-intro h2 em{font-weight:400;color:#9b7735}
.sa-policy-intro p{max-width:680px;color:#69645b;font-size:1.02rem;line-height:1.9;margin:0}
.sa-policy-updated{border:1px solid #e2d9ca;border-radius:16px;background:#fffaf1;padding:20px 22px;min-width:248px;display:flex;gap:14px;align-items:start;color:#29251e}
.sa-policy-updated i{font-size:1.35rem;color:#a5803c;margin-top:5px}
.sa-policy-updated span,.sa-policy-updated small{display:block;color:#7b7264;font-size:.76rem}
.sa-policy-updated strong{display:block;font-size:.99rem;margin:4px 0}
.sa-policy-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:64px}
.sa-policy-highlight{border:1px solid #e2dacd;border-radius:16px;background:#fffdfa;padding:24px 24px 21px;min-width:0;box-shadow:0 12px 26px rgba(34,25,11,.04)}
.sa-policy-highlight i{color:#a5803c;font-size:1.5rem;display:block;margin-bottom:16px}
.sa-policy-highlight strong{color:#25221c;font-size:1.03rem;display:block;margin-bottom:7px}
.sa-policy-highlight p{color:#706960;font-size:.89rem;line-height:1.72;margin:0}
.sa-policy-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:66px;align-items:start}
.sa-policy-aside-inner{position:sticky;top:120px;padding:26px 22px;border:1px solid #e5dccc;border-radius:18px;background:#fffdf9}
.sa-policy-aside-inner>span{font-size:.7rem;letter-spacing:.19em;color:#97763a;font-weight:900}
.sa-policy-aside nav{display:grid;gap:2px;margin:20px 0}
.sa-policy-aside nav a{padding:10px 9px;font-size:.74rem;color:#a5803c;display:flex;gap:14px;border-radius:8px;transition:background .2s ease}
.sa-policy-aside nav a span{color:#4f4a42;font-size:.81rem;letter-spacing:normal}
.sa-policy-aside nav a:hover{background:#f3ead8}
.sa-policy-aside-help{border-top:1px solid #eadfce;padding-top:19px;display:flex;gap:11px;align-items:center;font-size:.84rem;font-weight:700;color:#8c6827}
.sa-policy-article{min-width:0}
.sa-policy-item{padding:0 0 38px;margin:0 0 38px;border-bottom:1px solid #ded5c6;scroll-margin-top:125px}
.sa-policy-number{color:#a17d3c;font-size:.72rem;font-weight:850;letter-spacing:.16em}
.sa-policy-item h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(1.8rem,2.5vw,2.55rem);color:#211e1a;margin:9px 0 18px;line-height:1.22;letter-spacing:-.025em}
.sa-policy-item p,.sa-policy-item li{color:#575249;font-size:.99rem;line-height:1.94}
.sa-policy-item p{margin:0 0 16px}
.sa-policy-item p:last-child{margin-bottom:0}
.sa-policy-item strong{color:#25221c}
.sa-policy-item ul{margin:16px 0 22px;padding-left:24px}
.sa-policy-item li{padding-left:5px;margin-bottom:7px}
.sa-policy-item li::marker{color:#a5803c}
.sa-policy-item a:not(.sa-btn){color:#8a641f;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.sa-policy-item a:hover{color:#483511}
.sa-policy-last{margin-bottom:0;padding-bottom:0;border-bottom:none}
.sa-policy-contact-card{background:#14120e;color:#f6efe1;border:1px solid #473a25;border-radius:20px;padding:32px;margin-top:22px}
.sa-policy-contact-card>div:first-child span{font-size:.74rem;color:#ceb06f;letter-spacing:.18em;font-weight:800}
.sa-policy-contact-card>div:first-child strong{font-family:Georgia,'Times New Roman',serif;font-size:2rem;font-weight:400;line-height:1.3;display:block;color:#fff6df;margin:7px 0 18px}
.sa-policy-contact-card p{color:#ded5c7;font-size:.92rem;display:flex;gap:12px;align-items:start;margin:12px 0}
.sa-policy-contact-card p i{color:#cba85c;margin-top:6px}
.sa-policy-contact-card a:not(.sa-btn){color:#f1d89d}
.sa-policy-contact-card .sa-policy-actions{margin-top:25px}
.sa-policy-contact-card .sa-btn{font-size:.7rem;padding:0 20px;min-height:47px}
@media(max-width:980px){.sa-policy-layout{grid-template-columns:215px minmax(0,1fr);gap:28px}.sa-policy-hero-seal{width:165px;height:165px}}
@media(max-width:760px){.sa-policy-hero{padding-top:145px;padding-bottom:66px}.sa-policy-hero-seal{display:none}.sa-policy-intro{flex-direction:column;align-items:start}.sa-policy-updated{width:100%}.sa-policy-highlights{grid-template-columns:1fr;margin-bottom:40px}.sa-policy-layout{display:block}.sa-policy-aside{display:none}.sa-policy-item{scroll-margin-top:100px}.sa-policy-contact-card{padding:25px}}
@media(max-width:480px){.sa-policy-hero .sa-display{font-size:3.4rem}.sa-policy-section{padding-top:55px}.sa-policy-intro h2{font-size:2.65rem}.sa-policy-item{margin-bottom:30px;padding-bottom:30px}.sa-policy-item p,.sa-policy-item li{font-size:.94rem}.sa-policy-highlights{gap:10px}}
