/* ===== SoHG Sponsors ===== */
.sohg-sponsors{
	--ink:#1a1a1a;
	--line:#e5e5e5;
	--grey-bg:#f2f1ee;
	max-width:1140px;
	margin:0 auto;
	padding:60px 0;
	color:var(--ink);
}

/* Divider acorn/branch */
.sohg-divider{display:flex;justify-content:center;margin:0 0 28px}
.sohg-divider svg{width:64px;height:auto;opacity:.9}

/* Page + section titles */
.sohg-page-title{
	text-align:center;
	font-size:2.4rem;
	font-weight:400;
	margin:0 0 50px;
	letter-spacing:.01em;
}
.sohg-org-title{
	text-align:center;
	font-size:1.9rem;
	font-weight:400;
	margin:0 0 18px;
}
.sohg-org-intro{
	text-align:center;
	max-width:620px;
	margin:0 auto 40px;
	font-size:.95rem;
	line-height:1.6;
	color:#555;
}
/* Headings inherit theme h3/h4 styles. Override only what we need. */
.sohg-cat-title{
	text-align:center;
	color:#1a1a1a;
	margin:46px 0 26px;
}
.sohg-main-name,
.sohg-feat-name,
.sohg-ibox-title{
	margin-top:0;
}

/* ---- MAIN SPONSOR (full width, image top, centered) ---- */
.sohg-main{
	width:100%;
	margin:0 0 70px;
	padding:50px 40px 56px;
	border:1px solid var(--line);
	background:#FAF6F4;
	text-align:center;
	box-shadow:0 1px 4px rgba(0,0,0,.04);
	transition:box-shadow .25s ease,transform .25s ease;
}
.sohg-main:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.sohg-main-logo{margin-bottom:24px}
.sohg-main-logo img{max-width:220px;height:auto}
.sohg-main-name{margin:0 0 16px}
.sohg-main-desc{font-size:.9rem;line-height:1.65;color:#555;margin:0 0 24px}

/* ---- FEATURED SLIDER (centered stacked cards) ---- */
.sohg-featured-slider{
	position:relative;
	padding:10px 50px 56px;
	margin-bottom:30px;
}
.sohg-featured-slider .swiper-slide{height:auto}
.sohg-feat-card{
	height:100%;
	display:flex;
	flex-direction:column;
	align-items:center;
	text-align:center;
	padding:30px 24px;
	border:1px solid var(--line);
	background:#FAF6F4;
	transition:box-shadow .25s ease;
}
.sohg-feat-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.sohg-feat-logo{position:relative;margin-bottom:20px;min-height:90px;display:flex;align-items:center;justify-content:center;width:100%}
.sohg-feat-logo .logo-default,
.sohg-feat-logo .logo-hover{display:flex;align-items:center;justify-content:center}
.sohg-feat-logo img{max-width:80%;height:auto;display:block}
.sohg-feat-card.has-hover .logo-default{transition:opacity .5s ease}
.sohg-feat-card.has-hover .logo-hover{position:absolute;inset:0;opacity:0;transition:opacity .5s ease}
.sohg-feat-card.has-hover .logo-hover img{max-width:80%;height:auto}
.sohg-feat-card.has-hover:hover .logo-default{opacity:0}
.sohg-feat-card.has-hover:hover .logo-hover{opacity:1}
.sohg-feat-name{margin:0 0 14px;line-height:1.25}
.sohg-feat-desc{font-size:.85rem;line-height:1.6;color:#555;margin:0 0 20px;flex:1}

/* Swiper nav/pagination */
.sohg-featured-slider .swiper-button-next,
.sohg-featured-slider .swiper-button-prev{color:var(--ink);transform:scale(.6)}
.sohg-featured-slider .swiper-pagination-bullet-active{background:var(--ink)}

/* ---- ORGANIZATIONAL SECTION (grey band) ---- */
.sohg-org{
	background:var(--grey-bg);
	margin:0 -20px;
	padding:60px 40px 70px;
}

/* Category grid */
.sohg-cat-grid{
	display:flex;
	flex-direction:column;
	gap:22px;
	width:100%;
	margin:0;
}

/* image-box card: logo left | body | button right */
.sohg-ibox{
	display:flex;
	align-items:center;
	gap:28px;
	background:#fff;
	border:1px solid var(--line);
	padding:20px 28px;
	transition:box-shadow .25s ease;
}
.sohg-ibox:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.sohg-ibox-media{flex:0 0 130px}
.sohg-ibox-media img{width:130px;height:130px;object-fit:contain;display:block}
.sohg-ibox-ph{display:block;width:130px;height:130px;background:#dcdcdc}
.sohg-ibox-body{flex:1;min-width:0}
.sohg-ibox-title{margin:0 0 6px}
.sohg-ibox-title a{color:var(--ink);text-decoration:none}
.sohg-ibox-desc{font-size:.85rem;line-height:1.5;color:#666;margin:0}
.sohg-ibox-action{flex:0 0 auto}

/* ---- BUTTON ---- */
.sohg-btn{
	display:inline-block;
	padding:12px 24px;
	background:transparent;
	color:var(--e-global-color-astglobalcolor0);
	fill:var(--e-global-color-astglobalcolor0);
	border:1px solid var(--e-global-color-astglobalcolor0);
	text-decoration:none;
	font-family:'Helvetica-LT-Pro',helvetica-lt-pro,sans-serif;
	font-weight:400;
	font-size:.875rem;
	line-height:1em;
	letter-spacing:1px;
	text-transform:uppercase;
	transition:background .2s ease,color .2s ease,transform .2s ease;
	white-space:nowrap;
}
.sohg-btn:hover{
	background:var(--e-global-color-astglobalcolor0);
	color:#fff;
	fill:#fff;
	transform:translateY(-2px);
}

/* ---- RESPONSIVE ---- */
@media(max-width:782px){
	.sohg-page-title{font-size:1.8rem}
	.sohg-ibox{flex-direction:column;text-align:center;gap:14px}
	.sohg-ibox-media{flex:none}
	.sohg-ibox-action{flex:none}
}
@media(max-width:480px){
	.sohg-main{padding:36px 22px 40px}
	.sohg-org{padding:46px 18px 54px}
}

/* ===== FOOTER SPONSORS ===== */
.sohg-footer-sponsors{text-align:center;padding:30px 0}
.sohg-footer-main{
	display:flex;justify-content:center;align-items:center;
	margin:0 0 36px;
}
.sohg-footer-main .sohg-footer-logo-img{max-width:720px;height:auto;width:auto}

.sohg-footer-grid{
	display:flex;justify-content:center;align-items:center;
	gap:50px;flex-wrap:wrap;
}
.sohg-footer-logo{display:inline-flex;align-items:center;justify-content:center;transition:opacity .2s ease}
.sohg-footer-logo:hover{opacity:.7}
.sohg-footer-logo-img{max-width:180px;max-height:90px;height:auto;width:auto;object-fit:contain}

.sohg-footer-slider{padding:0 50px;position:relative}
.sohg-footer-slider .swiper-slide{display:flex;align-items:center;justify-content:center}
.sohg-footer-slider .swiper-button-prev,
.sohg-footer-slider .swiper-button-next{color:var(--ink,#1a1a1a);transform:scale(.55)}

/* ===== SUPPORTING ORGS CAROUSEL ===== */
.sohg-orgs{padding:40px 0;width:100%;overflow:hidden}
.sohg-orgs-carousel{width:100%}
.sohg-orgs-carousel .swiper-slide{height:auto;display:flex}
.sohg-org-card{
	background:#fff;border:1px solid var(--line,#e5e5e5);
	width:100%;padding:24px 18px;text-align:center;
	display:flex;flex-direction:column;align-items:center;
	transition:box-shadow .25s ease;
}
.sohg-org-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.08)}
.sohg-org-link{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:inherit;width:100%}
.sohg-org-media{
	display:flex;align-items:center;justify-content:center;
	height:110px;width:100%;margin-bottom:12px;
}
.sohg-org-img{max-height:100px;max-width:80%;height:auto;width:auto;object-fit:contain}
.sohg-org-name{
	font-family:inherit;font-size:.85rem;line-height:1.3;
	color:var(--ink,#1a1a1a);
}

@media(max-width:600px){
	.sohg-footer-grid{gap:28px}
	.sohg-footer-logo-img{max-width:140px;max-height:70px}
}
