body
{
	overflow-x:hidden;
	font-family: 'Lato', sans-serif
}

.text-muted
{
	color:#222
}

.text-primary
{
	color:#fed136
}

p
{
	font-size:14px;
	line-height:1.75
}

mybold
{
  font-weight: 700;
}

p.large
{
	font-size:16px
}

ul.large
{
	font-size:16px;
	line-height:1.75;
}

a,a:hover,a:focus,a:active,a.active
{
	outline:0
}

a
{
	/* color:#fed136 */
}

a:hover,a:focus,a:active,a.active
{
	/* color:#fec503 */
}

h1,h2,h3,h4,h5,h6
{
	font-family: 'Lato', sans-serif;
	/* text-transform:uppercase; */
	font-weight:700
}

.img-centered
{
	margin:0 auto
}

.bg-light-gray
{
	background-color:#f7f7f7
}

.bg-mid-gray
{
	background-color:#EEE
}

.bg-darkest-gray
{
	background-color:#222
}

.btn-primary
{
	color:#fff;
	/*background-color:#fed136;*/
	/*border-color:#fed136;*/
	background-color:#73bdc2;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	font-weight:700
}

.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary
{
	color:#fff;
	/*background-color:#fec503;*/
	background-color:#73bdc2;
	border-color:#f6bf01
}

.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary
{
	background-image:none
}

.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active
{
	background-color:#fed136;
	border-color:#fed136
}

.btn-primary .badge
{
	color:#fed136;
	background-color:#fff
}

.btn-xl
{
	color:#fff;
	background-color:#fed136;
	border-color:#fed136;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	font-weight:700;
	border-radius:3px;
	font-size:18px;
	padding:20px 40px
}

.btn-xl:hover,.btn-xl:focus,.btn-xl:active,.btn-xl.active,.open .dropdown-toggle.btn-xl
{
	color:#fff;
	background-color:#fec503;
	border-color:#f6bf01
}

.btn-xl:active,.btn-xl.active,.open .dropdown-toggle.btn-xl
{
	background-image:none
}

.btn-xl.disabled,.btn-xl[disabled],fieldset[disabled] .btn-xl,.btn-xl.disabled:hover,.btn-xl[disabled]:hover,fieldset[disabled] .btn-xl:hover,.btn-xl.disabled:focus,.btn-xl[disabled]:focus,fieldset[disabled] .btn-xl:focus,.btn-xl.disabled:active,.btn-xl[disabled]:active,fieldset[disabled] .btn-xl:active,.btn-xl.disabled.active,.btn-xl[disabled].active,fieldset[disabled] .btn-xl.active
{
	background-color:#fed136;
	border-color:#fed136
}

.btn-xl .badge
{
	color:#fed136;
	background-color:#fff
}

.navbar-default
{
	background-color:transparent;
	border-color:transparent
}

.navbar-default .navbar-brand
{
	color:#fed136;
	font-family: 'Lato', sans-serif
}

.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:active,.navbar-default .navbar-brand.active
{
	color:#fec503
}

.navbar-default .navbar-collapse
{
	border-color:rgba(255,255,255,.02);
	width: 150%;
}

.navbar-default .navbar-toggle
{
	/*background-color:#fed136;*/
	/*border-color:#fed136*/
	background-color:#73bdc2;
}

.navbar-default .navbar-toggle .icon-bar
{
	background-color:#fff
}

.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus
{
	/*background-color:#fed136*/
	background-color:#73bdc2
}

.navbar-default .nav li a
{
	font-family: 'Lato', sans-serif;
	/* text-transform:uppercase; */
	font-weight:200;
	font-size: 16px;
	letter-spacing:0px;
	color:#fff
}

.navbar-default .nav li a:hover,.navbar-default .nav li a:focus
{
	color:#fed136;
	outline:0;
	font-weight:400;
}

.navbar-default .navbar-nav>.active>a
{
	border-radius:0;
	color:#fff;
	/*background-color:#fed136*/
	background-color:#73bdc2
}

.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus
{
	color:#fff;
	/*background-color:#fec503*/
	background-color:#73bdc2;
}

@media (min-width:768px) {
	.navbar-default
	{

		padding: 10px 0;
		/* background-color:transparent;
		padding:25px 0;
		-webkit-transition:padding .3s;
		-moz-transition:padding .3s;
		transition:padding .3s;
		border:0 */
	}

	.navbar-default .navbar-brand
	{
		font-size:2em;
		-webkit-transition:all .3s;
		-moz-transition:all .3s;
		transition:all .3s
	}

	.navbar-default .navbar-nav>.active>a
	{
		border-radius:3px
	}

	.navbar-default.navbar-shrink
	{
		background-color:#222;
		padding:10px 0
	}

	.navbar-default.navbar-shrink .navbar-brand
	{
		font-size:1.5em
	}
}

header
{
	background-repeat:none;
	background-attachment:scroll;
	background-position:center center;
	-webkit-background-size:cover;
	-moz-background-size:cover;
	background-size:cover;
	-o-background-size:cover;
	text-align:center;
	height: 540px;
}

header .intro-text
{
	padding-top:250px;
	padding-bottom:50px
}

header .intro-text .intro-heading
{
	font-family: 'Lato', sans-serif;
	/* text-transform:uppercase; */
	font-weight:700;
	font-size:20px;
	line-height:20px;
	margin-bottom:20px
}

@media (min-width:500px) {
	header .intro-text
	{
		padding-top:130px;
		padding-bottom:50px
	}

	header .intro-text .intro-lead-in
	{
		font-family: 'Lato', sans-serif;
		/*font-style:italic;*/
		font-size:20px;
		line-height:25px;
		margin-bottom:20px
	}

	header .intro-text .intro-heading
	{
		font-family: 'Lato', sans-serif;
		/* text-transform:uppercase; */
		font-weight:700;
		font-size:45px;
		line-height:70px;
		margin-bottom:20px
	}
}

section
{
	padding:100px 0
}

section h2.section-heading
{
	font-size:40px;
	margin-top:0;
	margin-bottom:15px
}

section h3.section-subheading
{
	font-size:16px;
	font-family: 'Lato', sans-serif;
	text-transform:none;
	font-style:italic;
	font-weight:400;
	margin-bottom:75px
}

@media (min-width:768px) {
	section
	{
		padding:65px 0
	}
}

.service-heading
{
	margin:15px 0;
	text-transform:none
}

#portfolio .portfolio-item
{
	margin:0 0 15px;
	right:0
}

#portfolio .portfolio-item .portfolio-link
{
	display:block;
	position:relative;
	max-width:400px;
	margin:0 auto
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover
{
	background:rgba(254,209,54,.9);
	position:absolute;
	width:100%;
	height:100%;
	opacity:0;
	transition:all ease .5s;
	-webkit-transition:all ease .5s;
	-moz-transition:all ease .5s
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover:hover
{
	opacity:1
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content
{
	position:absolute;
	width:100%;
	height:20px;
	font-size:20px;
	text-align:center;
	top:50%;
	margin-top:-12px;
	color:#fff
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content i
{
	margin-top:-12px
}

#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content h3,#portfolio .portfolio-item .portfolio-link .portfolio-hover .portfolio-hover-content h4
{
	margin:0
}

#portfolio .portfolio-item .portfolio-caption
{
	max-width:400px;
	margin:0 auto;
	background-color:#fff;
	text-align:center;
	padding:25px
}

#portfolio .portfolio-item .portfolio-caption h4
{
	text-transform:none;
	margin:0
}

#portfolio .portfolio-item .portfolio-caption p
{
	font-family: 'Lato', sans-serif;
	font-style:italic;
	font-size:16px;
	margin:0
}

#portfolio *
{
	z-index:2
}

@media (min-width:767px) {
	#portfolio .portfolio-item
	{
		margin:0 0 30px
	}
}

.timeline
{
	list-style:none;
	padding:0;
	position:relative
}

.timeline:before
{
	top:0;
	bottom:0;
	position:absolute;
	content:"";
	width:2px;
	background-color:#f1f1f1;
	left:40px;
	margin-left:-1.5px
}

.timeline>li
{
	margin-bottom:50px;
	position:relative;
	min-height:50px
}

.timeline>li:before,.timeline>li:after
{
	content:" ";
	display:table
}

.timeline>li:after
{
	clear:both
}

.timeline>li .timeline-panel
{
	width:100%;
	float:right;
	padding:0 20px 0 100px;
	position:relative;
	text-align:left
}

.timeline>li .timeline-panel:before
{
	border-left-width:0;
	border-right-width:15px;
	left:-15px;
	right:auto
}

.timeline>li .timeline-panel:after
{
	border-left-width:0;
	border-right-width:14px;
	left:-14px;
	right:auto
}

.timeline>li .timeline-image
{
	left:0;
	margin-left:0;
	width:80px;
	height:80px;
	position:absolute;
	z-index:100;
	background-color:#fed136;
	color:#fff;
	border-radius:100%;
	border:7px solid #f1f1f1;
	text-align:center
}

.timeline>li .timeline-image h4
{
	font-size:10px;
	margin-top:12px;
	line-height:14px
}

.timeline>li.timeline-inverted>.timeline-panel
{
	float:right;
	text-align:left;
	padding:0 20px 0 100px
}

.timeline>li.timeline-inverted>.timeline-panel:before
{
	border-left-width:0;
	border-right-width:15px;
	left:-15px;
	right:auto
}

.timeline>li.timeline-inverted>.timeline-panel:after
{
	border-left-width:0;
	border-right-width:14px;
	left:-14px;
	right:auto
}

.timeline>li:last-child
{
	margin-bottom:0
}

.timeline .timeline-heading h4
{
	margin-top:0;
	color:inherit
}

.timeline .timeline-heading h4.subheading
{
	text-transform:none
}

.timeline .timeline-body>p,.timeline .timeline-body>ul
{
	margin-bottom:0
}

@media (min-width:768px) {
	.timeline:before
	{
		left:50%
	}

	.timeline>li
	{
		margin-bottom:100px;
		min-height:100px
	}

	.timeline>li .timeline-panel
	{
		width:41%;
		float:left;
		padding:0 20px 20px 30px;
		text-align:right
	}

	.timeline>li .timeline-image
	{
		width:100px;
		height:100px;
		left:50%;
		margin-left:-50px
	}

	.timeline>li .timeline-image h4
	{
		font-size:13px;
		margin-top:16px;
		line-height:18px
	}

	.timeline>li.timeline-inverted>.timeline-panel
	{
		float:right;
		text-align:left;
		padding:0 30px 20px 20px
	}
}

@media (min-width:992px) {
	.timeline>li
	{
		min-height:150px
	}

	.timeline>li .timeline-panel
	{
		padding:0 20px 20px
	}

	.timeline>li .timeline-image
	{
		width:150px;
		height:150px;
		margin-left:-75px
	}

	.timeline>li .timeline-image h4
	{
		font-size:18px;
		margin-top:30px;
		line-height:26px
	}

	.timeline>li.timeline-inverted>.timeline-panel
	{
		padding:0 20px 20px
	}
}

@media (min-width:1200px) {
	.timeline>li
	{
		min-height:170px
	}

	.timeline>li .timeline-panel
	{
		padding:0 20px 20px 100px
	}

	.timeline>li .timeline-image
	{
		width:170px;
		height:170px;
		margin-left:-85px
	}

	.timeline>li .timeline-image h4
	{
		margin-top:40px
	}

	.timeline>li.timeline-inverted>.timeline-panel
	{
		padding:0 100px 20px 20px
	}
}

.team-member
{
	text-align:center;
	margin-bottom:50px
}

.team-member img
{
	margin:0 auto;
	border:5px solid #ccc;
}

.team-member h4
{
	margin-top:25px;
	margin-bottom:0;
	text-transform:none
}

.team-member p
{
	margin-top:0
}

aside.clients img
{
	margin:50px auto
}

section#contact
{
	background-color:#F5F5F5;
	background-image:url(../img/map-image.png);
	background-position:center;
	background-repeat:no-repeat
}

section#contact .section-heading
{
	color:#222
}

section#contact .form-group
{
	margin-bottom:25px
}

section#contact .form-group input,section#contact .form-group textarea
{
	padding:20px
}

section#contact .form-group input.form-control
{
	height:auto
}

section#contact .form-group textarea.form-control
{
	height:236px
}

section#contact .form-control:focus
{
	border-color:#fed136;
	box-shadow:none
}

section#contact ::-webkit-input-placeholder
{
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	font-weight:700;
	color:#bbb
}

section#contact :-moz-placeholder
{
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	font-weight:700;
	color:#bbb
}

section#contact ::-moz-placeholder
{
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	font-weight:700;
	color:#bbb
}

section#contact :-ms-input-placeholder
{
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	font-weight:700;
	color:#bbb
}

section#contact .text-danger
{
	color:#e74c3c
}

footer
{
	padding:25px 0;
	text-align:center
}

footer span.copyright
{
	line-height:40px;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	text-transform:none
}

footer ul.quicklinks
{
	margin-bottom:0;
	line-height:40px;
	font-family: 'Lato', sans-serif;
	text-transform:uppercase;
	text-transform:none
}

ul.social-buttons-team
{
	margin-bottom:0
}

ul.social-buttons-team li a
{
	display:block;
	background-color:#222;
	height:29px;
	width:29px;
	border-radius:100%;
	font-size:15px;
	line-height:29px;
	color:#fff;
	outline:0;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	transition:all .3s
}

ul.social-buttons-team li a:hover,ul.social-buttons-team li a:focus,ul.social-buttons-team li a:active
{
	background-color:#fed136
}

ul.social-buttons-team li a.inactive
{
	display:block;
	background-color:#666;
	height:29px;
	width:29px;
	border-radius:100%;
	font-size:15px;
	line-height:29px;
	color:#fff;
	outline:0;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	transition:all .3s
}

ul.social-buttons-team li a.inactive:hover,ul.social-buttons-team li a.inactive:focus,ul.social-buttons-team li a.inactive:active
{
	background-color:#666
}



ul.social-buttons
{
	margin-bottom:0
}

ul.social-buttons li a
{
	display:block;
	background-color:#222;
	height:40px;
	width:40px;
	border-radius:100%;
	font-size:20px;
	line-height:40px;
	color:#fff;
	outline:0;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	transition:all .3s
}

ul.social-buttons li a:hover,ul.social-buttons li a:focus,ul.social-buttons li a:active
{
	background-color:#fed136
}

ul.social-buttons li a.inactive
{
	display:block;
	background-color:#666;
	height:40px;
	width:40px;
	border-radius:100%;
	font-size:20px;
	line-height:40px;
	color:#fff;
	outline:0;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	transition:all .3s
}

ul.social-buttons li a.inactive:hover,ul.social-buttons li a.inactive:focus,ul.social-buttons li a.inactive:active
{
	background-color:#666
}


.btn:focus,.btn:active,.btn.active,.btn:active:focus
{
	outline:0
}

.portfolio-modal .modal-content
{
	border-radius:0;
	background-clip:border-box;
	-webkit-box-shadow:none;
	box-shadow:none;
	border:0;
	min-height:100%;
	padding:100px 0;
	text-align:center
}

.portfolio-modal .modal-content h2
{
	margin-bottom:15px;
	font-size:3em
}

.portfolio-modal .modal-content p
{
	margin-bottom:30px
}

.portfolio-modal .modal-content p.item-intro
{
	margin:20px 0 30px;
	font-family: 'Lato', sans-serif;
	font-style:italic;
	font-size:16px
}

.portfolio-modal .modal-content ul.list-inline
{
	margin-bottom:30px;
	margin-top:0
}

.portfolio-modal .modal-content img
{
	margin-bottom:30px
}

.portfolio-modal .close-modal
{
	position:absolute;
	width:75px;
	height:75px;
	background-color:transparent;
	top:25px;
	right:25px;
	cursor:pointer
}

.portfolio-modal .close-modal:hover
{
	opacity:.3
}

.portfolio-modal .close-modal .lr
{
	height:75px;
	width:1px;
	margin-left:35px;
	background-color:#222;
	transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	z-index:1051
}

.portfolio-modal .close-modal .lr .rl
{
	height:75px;
	width:1px;
	background-color:#222;
	transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	z-index:1052
}

.portfolio-modal .modal-backdrop
{
	opacity:0;
	display:none
}

::-moz-selection
{
	text-shadow:none;
	background:#fed136
}

::selection
{
	text-shadow:none;
	background:#fed136
}

img::selection
{
	background:0 0
}

img::-moz-selection
{
	background:0 0
}

body
{
	webkit-tap-highlight-color:#fed136
}


/* Dropdown Button */
.dropbtn {
  background-color: transparent;
  color: white;
  padding: 16px;
  border: none;
  font-family: 'Lato', sans-serif;
  text-transform:uppercase;
  font-weight:400;
  letter-spacing:1px;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
  position: relative;
  display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #222;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}

/* Links inside the dropdown */
.dropdown-content a {
  color: white;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  font-family: 'Lato', sans-serif;
  text-transform:uppercase;
  font-weight:400;
  letter-spacing:1px;
}

/* Change color of dropdown links on hover */
.dropdown-content a:hover {background-color: #777;}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {display: block;}

/* Change the background color of the dropdown button when the dropdown content is shown */
.dropdown:hover .dropbtn {background-color: #fec503;}

/* SaTQuML academic-modern theme overrides */
:root
{
	--ink-900: #0f172a;
	--ink-800: #1e293b;
	--ink-700: #334155;
	--slate-500: #64748b;
	--slate-300: #cbd5f5;
	--mist-100: #f8fafc;
	--accent-500: #0ea5a5;
	--accent-300: #5eead4;
	--gold-400: #c08d3c;
	--glass: rgba(255, 255, 255, 0.7);
	--shadow-soft: 0 20px 50px rgba(15, 23, 42, 0.12);
	--shadow-tight: 0 8px 20px rgba(15, 23, 42, 0.12);
}

body.satquml-modern
{
	font-family: Arial, Helvetica, sans-serif;
	color: var(--ink-800);
	background-color: #f4f7fb;
	background-image:
		radial-gradient(circle at 12% 12%, rgba(14, 165, 165, 0.12), transparent 40%),
		radial-gradient(circle at 88% 20%, rgba(192, 141, 60, 0.12), transparent 45%),
		linear-gradient(180deg, rgba(248, 250, 252, 0.9), rgba(244, 247, 251, 0.9));
	background-attachment: fixed;
}

body.satquml-modern h1,
body.satquml-modern h2,
body.satquml-modern h3,
body.satquml-modern h4,
body.satquml-modern h5,
body.satquml-modern h6
{
	font-family: 'Spectral', serif;
	letter-spacing: 0.2px;
}

body.satquml-modern a
{
	color: var(--accent-500);
	transition: color 0.2s ease;
}

body.satquml-modern a:hover,
body.satquml-modern a:focus
{
	color: var(--gold-400);
	text-decoration: none;
}

body.satquml-modern a:focus-visible,
body.satquml-modern .hero-btn:focus-visible
{
	outline: 2px solid var(--accent-300);
	outline-offset: 3px;
	text-decoration: underline;
}

body.satquml-modern a:focus,
body.satquml-modern .hero-btn:focus
{
	outline: 2px solid var(--accent-300);
	outline-offset: 3px;
	text-decoration: underline;
}

body.satquml-modern .navbar-default
{
	background-color: rgba(15, 23, 42, 0.05);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

body.satquml-modern .navbar-default.navbar-shrink
{
	background-color: rgba(15, 23, 42, 0.5);
}

body.satquml-modern .navbar-default .nav li a
{
	color: #f8fafc;
	font-weight: 500;
	letter-spacing: 0.3px;
}

body.satquml-modern .navbar-default .nav li a:hover,
body.satquml-modern .navbar-default .nav li a:focus
{
	color: var(--accent-300);
}

body.satquml-modern header.hero
{
	position: relative;
	min-height: 620px;
	padding: 140px 0 100px;
	color: #f8fafc;
	background-image:
		linear-gradient(120deg, rgba(15, 23, 42, 0.28), rgba(15, 23, 42, 0.18)),
		url("../img/satquml-background.png");
	background-size: cover;
	background-position: center;
	text-align: center;
}

body.satquml-modern header.hero::after
{
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.08);
	pointer-events: none;
}

body.satquml-modern .hero-grid
{
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	align-items: center;
	justify-items: center;
}

body.satquml-modern .hero-content
{
	max-width: 1100px;
}

body.satquml-modern .hero-badge
{
	display: inline-block;
	padding: 14px 32px;
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.55);
	border: 1px solid rgba(255, 255, 255, 0.25);
	font-size: 2.3rem;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: none;
	text-shadow: 0 2px 10px rgba(15, 23, 42, 0.5);
}

body.satquml-modern .hero-title
{
	margin-top: 18px;
	font-size: clamp(3.1rem, 6vw, 5.1rem);
	line-height: 1.05;
	color: #f8fafc;
	text-shadow: 0 10px 30px rgba(15, 23, 42, 0.45);
}

body.satquml-modern .hero-lead
{
	margin-top: 18px;
	font-size: 1.15rem;
	color: rgba(248, 250, 252, 0.9);
	max-width: 680px;
	margin-left: auto;
	margin-right: auto;
}

body.satquml-modern .hero-contact
{
	margin-top: 16px;
	font-size: 1rem;
}

body.satquml-modern .hero-contact a
{
	color: #f8fafc;
	border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}

body.satquml-modern .hero-actions
{
	margin-top: 28px;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
}

body.satquml-modern .hero-btn
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 22px;
	border-radius: 999px;
	font-weight: 600;
	letter-spacing: 0.3px;
	border: 1px solid transparent;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

body.satquml-modern .hero-btn.primary
{
	background: var(--accent-500);
	color: #0f172a;
	box-shadow: 0 12px 30px rgba(14, 165, 165, 0.35);
}

body.satquml-modern .hero-btn.primary:hover
{
	transform: translateY(-2px);
	box-shadow: 0 16px 34px rgba(14, 165, 165, 0.45);
}

body.satquml-modern .hero-btn.ghost
{
	background: rgba(248, 250, 252, 0.12);
	color: #f8fafc;
	border-color: rgba(248, 250, 252, 0.3);
}

body.satquml-modern .hero-btn.ghost:hover
{
	transform: translateY(-2px);
	background: rgba(248, 250, 252, 0.22);
}

body.satquml-modern .hero-card
{
	background: var(--glass);
	border-radius: 20px;
	padding: 24px;
	color: var(--ink-800);
	box-shadow: var(--shadow-soft);
	border: 1px solid rgba(255, 255, 255, 0.6);
}

body.satquml-modern .hero-card h3
{
	margin-top: 0;
	font-size: 1.4rem;
	color: var(--ink-900);
}

body.satquml-modern .hero-card .hero-list
{
	margin: 16px 0 20px;
	display: grid;
	grid-template-columns: 110px 1fr;
	column-gap: 12px;
	row-gap: 8px;
	font-size: 0.95rem;
}

body.satquml-modern .hero-card .hero-list dt
{
	color: var(--slate-500);
	font-weight: 600;
	text-transform: uppercase;
	font-size: 0.78rem;
	letter-spacing: 0.8px;
	margin: 0;
}

body.satquml-modern .hero-card .hero-list dd
{
	margin: 0;
}

body.satquml-modern .hero-link
{
	display: inline-block;
	font-weight: 600;
	color: var(--accent-500);
}

body.satquml-modern section
{
	padding: 70px 0;
}

body.satquml-modern section::after
{
	content: "";
	display: block;
	height: 1px;
	background: rgba(15, 23, 42, 0.08);
	margin-top: 60px;
}

body.satquml-modern section:last-of-type::after
{
	display: none;
}

body.satquml-modern .section-heading
{
	font-size: clamp(2rem, 3vw, 2.8rem);
	color: var(--ink-900);
	margin-bottom: 22px;
	text-align: left;
}

body.satquml-modern .section-subheading
{
	color: var(--slate-500);
	font-style: normal;
}

body.satquml-modern .modern-list li
{
	list-style: none;
	background: #ffffff;
	border-radius: 14px;
	padding: 16px 20px;
	margin-bottom: 14px;
	border: 1px solid rgba(15, 23, 42, 0.08);
	box-shadow: var(--shadow-tight);
}

body.satquml-modern .modern-list
{
	padding-left: 0;
	margin: 0;
}

body.satquml-modern .modern-list.compact li
{
	background: rgba(255, 255, 255, 0.92);
	box-shadow: none;
	border: 1px solid rgba(15, 23, 42, 0.1);
	padding: 12px 16px;
}

body.satquml-modern .scope-box
{
	background: #ffffff;
	border-radius: 16px;
	padding: 22px 26px;
	border: 1px solid rgba(15, 23, 42, 0.1);
	box-shadow: var(--shadow-tight);

}

body.satquml-modern .scope-list
{
	margin: 0;
	padding-left: 20px;
	color: var(--ink-800);
}

body.satquml-modern .scope-list li
{
	margin-bottom: 12px;
}

body.satquml-modern .scope-list li:last-child
{
	margin-bottom: 0;
}

body.satquml-modern .key-dates-box
{
	background: #ffffff;
	border-radius: 16px;
	padding: 20px 26px;
	border: 1px solid rgba(15, 23, 42, 0.1);
	box-shadow: var(--shadow-tight);
	margin-bottom: 10px;
}

body.satquml-modern .key-dates-list
{
	margin: 0;
	padding-left: 18px;
}

body.satquml-modern .key-dates-list li
{
	margin-bottom: 10px;
}

body.satquml-modern .key-dates-list li:last-child
{
	margin-bottom: 0;
}

body.satquml-modern #program .text-muted
{
	text-align: left;
	color: var(--slate-500);
}

body.satquml-modern #program .table
{
	border-collapse: separate;
	border-spacing: 0 12px;
}

body.satquml-modern #program .table td
{
	border: none;
	background: #ffffff;
	box-shadow: var(--shadow-tight);
}

body.satquml-modern #program .table td:first-child
{
	border-radius: 14px 0 0 14px;
	font-weight: 600;
	color: var(--ink-900);
}

body.satquml-modern #program .table td:last-child
{
	border-radius: 0 14px 14px 0;
}

body.satquml-modern .team-member
{
	background: #ffffff;
	border-radius: 16px;
	padding: 18px 16px 20px;
	border: 1px solid rgba(15, 23, 42, 0.08);
	box-shadow: var(--shadow-tight);
}

body.satquml-modern .team-member img
{
	border: 4px solid rgba(14, 165, 165, 0.2);
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.15);
}

body.satquml-modern .speakers-grid,
body.satquml-modern .organizers-grid
{
	gap: 24px;
}

@media (max-width: 992px)
{
	body.satquml-modern header.hero
	{
		padding: 120px 0 80px;
	}
}

@media (max-width: 768px)
{
	body.satquml-modern
	{
		background-attachment: scroll;
	}

	body.satquml-modern .hero-actions
	{
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	body.satquml-modern .modern-list li
	{
		padding: 14px 16px;
	}
}