﻿/* Google Fonts */
@import url('https://fonts.googleapis.com/css?family=Archivo|Archivo+Black&display=swap');

body, html { height: 100%; margin: 0px; padding: 0px; scroll-behavior: smooth; }

/* Navigation */
.navbar { background-color: rgba(1, 13, 79, 0.95); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid rgba(255, 255, 255, 0.08); padding: 0.5rem 0; transition: background-color 0.3s ease; }
.navbar-brand { padding-top: 0; padding-bottom: 0; }
.navbar-dark .navbar-toggler { border: none; color: #fff; opacity: 0.85; padding: 0.5rem; }
.navbar-dark .navbar-toggler:focus { box-shadow: none; }
.navbar-dark .navbar-toggler:hover { opacity: 1; }
.navbar-logo { display: block; height: 56px; width: auto; opacity: 0.9; transition: opacity 0.2s ease; }
.navbar-logo:hover { opacity: 1; }

/* Offcanvas */
.offcanvas, .offcanvas li { text-align: right !important; }
.offcanvas-header { background-color: #010d4f; padding: 0.85rem 1.25rem; }
.offcanvas-header .offcanvas-title { color: #fff !important; font-family: 'Archivo', Verdana; font-size: 1.3rem; margin-top: 0; text-transform: unset; }
.offcanvas-header .btn-close { filter: invert(1) grayscale(1) brightness(2); margin-top: 0; opacity: 0.8; }
.offcanvas-header .btn-close:hover { opacity: 1; }
.offcanvas-body { padding: 0; }
.offcanvas h3, .offcanvas a, .offcanvas button { color: #010d4f; font-size: 1.15rem; font-weight: bold; margin: 0; padding: 0 0.3rem 0 0.3rem; }
.offcanvas .nav-item { border-top: 1px solid rgba(1, 13, 79, 0.08); }
.offcanvas a.nav-link { display: block; margin: 0; padding: 0.55rem 3.8rem 0.55rem 1.25rem !important; position: relative; transition: background-color 0.2s ease; }
.offcanvas a.nav-link:hover { background-color: rgba(1, 13, 79, 0.05); }
.offcanvas a.dropdown-item { font-weight: normal; margin: 0; padding: 0.4rem 1.25rem !important; transition: background-color 0.2s ease, color 0.2s ease; }
.offcanvas a.dropdown-item:hover { background-color: rgba(33, 64, 154, 0.07); color: #21409a; }
.offcanvas .accordion-item { background: transparent; border: none; }
.offcanvas .accordion-button { background: none !important; box-shadow: none !important; justify-content: flex-end; margin: 0; padding: 0.65rem 1.25rem !important; transition: background-color 0.2s ease; }
.offcanvas .accordion-button:not(.collapsed) { background: rgba(1, 13, 79, 0.04) !important; box-shadow: none !important; }
.offcanvas .accordion-button:focus { background: none !important; box-shadow: none !important; }
.offcanvas .accordion-body { background-color: rgba(33, 64, 154, 0.05); padding: 0 !important; }
.offcanvas .accordion-body ul { margin: 0; }

/* Hover indicator bar */
.offcanvas a.nav-link::before,
.offcanvas .accordion-button::before { content: ''; position: absolute; right: 0; top: 0; bottom: 0; width: 0; background-color: #21409a; transition: width 0.15s ease; }
.offcanvas a.nav-link:hover::before,
.offcanvas .accordion-button:hover::before { width: 3px; }

/* Active / current page */
.offcanvas a.nav-link.nav-active::before { width: 3px; }
.offcanvas a.nav-link.nav-active { background-color: rgba(33, 64, 154, 0.08); color: #21409a; }
.offcanvas a.dropdown-item.nav-active { color: #21409a; font-weight: 600; }

#spOffcanvasOpenHolder { height: 41.6px; }

/* Caret */
#siteOffcanvas .accordion-button::after { margin: 0 0.5rem 0 0; transform: rotate(180deg); transition: transform 0.2s ease-in-out; }

/* Rotate Caret */
#siteOffcanvas .accordion-button:not(.collapsed)::after { font-weight: 700; transform: rotate(0deg); }

@media (max-width: 768px) {
	#spOffcanvasOpenHolder { height: 34.4px; }
}

/* Footer Navigation */
.navbar-centered { margin: 0 auto; }
.navbar-centered .nav-item { margin: 0px 10px }
footer .navbar { padding-bottom: 40px; }

/* Header */
/* Calculate Padding Top As Img Height / Img Width * Container Width % ) Take Off .2% For Border Fix */
header { background-color: #010d4f; margin: 0px; }
.off-set-nav { padding-top: 72px; }
.small-header { padding-bottom: 60px; text-align: center; }
.small-header > a { display: inline-block; margin: 140px 50px 40px 50px; }
.small-header img { max-width: 450px; }

/* Colours & Weights */
.black { color: #111; }
.bold { font-weight: bold; }
.blue-text { color: #21409a; }
.dark-blue { background-color: #010d4f; }
.dark-blue-text { color: #21409a !important; }
.green { background-color: #006d3e; }
.green-text { color: #006d3e; }
.light-blue { background-color: #21409a; }
.light-green { color: #8cdc75; }
.white { background-color: #fff; }
.yellow { color: #e6b119; }
.font-style-normal { font-style: normal; }
.text-large { font-size: 24px; }

a:hover { text-decoration: none; }
.green a { color: #fff; text-decoration: none; }
.green a:hover { border-bottom: 1px dashed #8cdc75; color: #fff; text-decoration: none; }

/* Background Images */
.bg-img { background-repeat: no-repeat; background-size: contain; height: 0; padding-top: 50%; margin-bottom: -2px; position: relative; width: 100%; }

@media (max-width: 2400px) { .bg-img { background-image: url('/img/Small-Business-Britain-Header-2400.jpg'); } }
@media (max-width: 1600px) { .bg-img { background-image: url('/img/Small-Business-Britain-Header-1600.jpg'); } }
@media (max-width: 800px) { .bg-img { background-image: url('/img/Small-Business-Britain-Header-800.jpg'); } }

@media (max-width: 2400px) { .bg-img-recover { background-image: url('/img/Small-Business-Britain-Header-Recover-2400.jpg'); } }
@media (max-width: 1600px) { .bg-img-recover { background-image: url('/img/Small-Business-Britain-Header-Recover-1600.jpg'); } }
@media (max-width: 800px) { .bg-img-recover { background-image: url('/img/Small-Business-Britain-Header-Recover-800.jpg'); } }

@media (max-width: 2400px) { .bg-img-recover-feb-2022 { background-image: url('/img/Small-Business-Britain-Header-Recover-Feb-2022-2400.jpg'); } }
@media (max-width: 1600px) { .bg-img-recover-feb-2022 { background-image: url('/img/Small-Business-Britain-Header-Recover-Feb-2022-1600.jpg'); } }
@media (max-width: 800px) { .bg-img-recover-feb-2022 { background-image: url('/img/Small-Business-Britain-Header-Recover-Feb-2022-800.jpg'); } }

@media (max-width: 2400px) { .bg-img-resilient { background-image: url('/img/Small-Business-Britain-Header-Resilient-2400.jpg'); } }
@media (max-width: 1600px) { .bg-img-resilient { background-image: url('/img/Small-Business-Britain-Header-Resilient-1600.jpg'); } }
@media (max-width: 800px) { .bg-img-resilient { background-image: url('/img/Small-Business-Britain-Header-Resilient-800.jpg'); } }

@media (max-width: 2400px) { .bg-img-instagram { background-image: url('/img/instagram/Small-Business-Britain-Header-Instagram-2400.jpg'); } }
@media (max-width: 1600px) { .bg-img-instagram { background-image: url('/img/instagram/Small-Business-Britain-Header-Instagram-1600.jpg'); } }
@media (max-width: 800px) { .bg-img-instagram { background-image: url('/img/instagram/Small-Business-Britain-Header-Instagram-800-Narrow.jpg'); } }

.header-programme { background-color: #224757; padding-top: 54px; }
.header-image { padding-top: 56px; }
@media (max-width: 2400px) { 	.header-instagram { margin-top: 58px; } }
@media (max-width: 768px) {
	.header-image { margin-top: 40px; padding-top: 0px; }
	.header-instagram { margin-top: 52px; }
	.header-programme { margin-top: 52px; padding-top: 0px; }
}

h1 { color: #fff; font-family: 'Archivo Black', Verdana; font-size: 4.5rem; font-weight: normal; margin: 0px; padding: 30px 0 30px 0; text-align: center; text-transform: uppercase; }
h2 { font-family: 'Archivo Black', Verdana; font-size: 3rem; font-weight: normal; margin-top: 1rem; padding: 0; text-align: center; text-transform: uppercase; }
h2 a, h2 a:hover { color: inherit; }
h3 { font-family: 'Archivo', Verdana; font-size: 2rem; margin: 32px 0 12px 0; }
h4 { font-family: 'Archivo', Verdana; font-weight: bold; margin: 0px; }
h4 .btn { font-size: 1.75rem; line-height: 40px; text-align: left; }
h5, .card-header { color: #010d4f; font-size: 1.5rem; font-weight: bold; margin-bottom: .85rem; }
p, li, .text-normal, p.lead { font-family: 'Archivo', Verdana; font-size: 1.5rem; text-align: left; }
p.lead { font-weight: 600; }
footer.blockquote-footer { background-color: unset; text-align: left; }

/* Adjusted Headers */
.green h1, .light-blue h1 { text-shadow: none; }
.green h1, .green h2, .light-blue h1, .light-blue h2 { color: #fff }
.header-overlay { margin-top: -180px; }
.header-overlay h1 { background-color: rgb(128, 128, 128, 0.2); color: #010d4f; display: inline-block; padding: 20px 0 20px 0; width: 100%; }

@media (max-width: 1450px) { .header-overlay { margin-top: -150px; } }
@media (max-width: 1200px) { .header-overlay { margin-top: -140px; } }
@media (max-width: 992px) { .header-overlay { margin-top: -120px; } }
@media (max-width: 768px) { .header-overlay { margin-top: -100px; } }

/* Countdown */
#countdown span { color: #8cdc75; padding: 0 3px 0 3px; }

@media (max-width: 1450px) { h1 { font-size: 3.75rem; } }
@media (max-width: 1200px) { h1 { font-size: 3rem; } }
@media (max-width: 992px) { 
	h1, h2 { font-size: 2.25rem; }
	.small-header h1, .small-header h2 { font-size: 2rem; }
}
@media (max-width: 768px) { 
	h1, h2, h3 { font-size: 24px; font-weight: 100; }
	.small-header h1 , .small-header h2 { font-size: 32px; }
	h4 .btn { font-size: 22px; line-height: 30px; }
	p, ol.text li, ul.text li, .text-normal, p.lead { font-size: 1.35rem; }
	.navbar { padding: 0.2rem 0 0.2rem 0; }
	.navbar-dark .navbar-toggler { padding: 0.5rem; font-size: 1rem; }
}

@media (max-width: 500px) {
	h1, h2 { font-size: 24px; font-weight: 100; }
	#h1Countdown span { font-size: 16px; }
	.small-header h1 { font-size: 26px; }
	.small-header h2 { font-size: 24px; }
}

/* Buttons */
a.btn, button.btn { display: inline-block; font-family: 'Archivo Black'; font-size: 22px; margin: 60px 0 60px 0; text-transform: uppercase; }
.d-flex a.btn, .d-flex button.btn { margin: 0; }
.modal-footer a.btn, .modal-footer button.btn { font-size: 1rem; margin-top: unset; margin-bottom: unset; text-transform: none; }
.modal-body .btn-sm { font-size: 0.875rem; text-transform: none; margin: 0; }
a.btn .fad, a.btn .fas, button.btn .fad, button.btn .fas { margin-right: 15px; }
a.btn-primary, button.btn-primary { background-color: #010d4f; border-color: #111; border-radius: 0px; }
a.lilac { background-color: #675b8d; border-color: #675b8d; }
section p a, section li a, section .alert a, section .table a, a.text { border-bottom: 1px dashed #007bff; color: #007bff; text-decoration: none; }
section .table a { border-bottom: none; }
section.light-blue a.btn-primary, section.green a.btn-primary { background-color: #fff; color: #010d4f; }
section.light-blue a.btn-primary:hover, section.green a.btn-primary:hover { color: #21409a; }
section.light-blue p a { border-bottom: 1px dashed #fff; color: #fff; }
hr { display: block; height: 1px; border: 0; border-top: 2px solid #fff; margin: 40px auto 40px auto; opacity:unset; width: 80px; }

/* Alerts */
.alert .fad, .alert .fas { margin-right: 10px; }

@media (max-width: 768px) { 
	
	hr { margin: 30px auto 30px auto; width: 80px; }
	a.btn, button.btn { margin: 20px 0 20px 0; }

}

/* Section */
section { color: #fff; margin: 0px; padding: 60px 0 60px 0; }
section .card { margin-bottom: 30px; }
section.white { color: #21409a; padding: 60px 0 60px 0; }
section.white h4 { color: #21409a; }
section.white hr, hr.dark-blue { border-top: 2px solid #21409a; }
section.white hr.lilac { border-top-color: #675b8d; }
section.white p, section.white li { color: #111; }

/* Keep Calm */
.keep-calm { margin: 0px auto; max-width: 400px; padding: 100px 10px; text-align: center; }
.keep-calm img.crown { width: 130px; }
.keep-calm img.footer { width: 360px; }
.keep-calm p { color: #fff; font-family: "Gill Sans", "Gill Sans MT", Arial; font-size: 60px; letter-spacing: 2px; line-height: 72px; margin: 30px 0 45px 0; text-align: center; text-transform: uppercase; }
.keep-calm p span { display: block; }
.keep-calm p span.and { font-size: 50%; }
.card .card { margin-top: 20px; }
.card .fab, .card .fad, .card .far, .card .fas { margin-right: 10px; }
.card-body h4 { margin: 40px 0 24px 0; }
.card-link { float: right; margin-left: 1rem; }
.card-link .fab, .card-link .fad, .card-link .fas { margin-left: 0.8rem; }
.card-header button { display: flex; }
.card-header .btn-link { text-decoration: none; }
.card-header button i { font-size: 48px; padding-top: 8px; width: 54px; }
.card-header button span { flex: 1; }

@media (max-width: 768px) { 
	.card-header button i { font-size: 40px; padding-top: 8px; width: 48px; }
}

/* Footer */
footer { background-color: #010d4f; padding-top: 60px; }
footer.white { background-color: #fff; }
footer img { margin: 60px 0px 60px 0px; }
footer a.btn-primary, button.btn-primary { background-color: #fff; color: #010d4f; }
footer a.text, footer a.text:hover { border-bottom: 1px dashed #fff; color: #fff; text-decoration: none; }
footer form label { font-size: 24px; margin-top: 20px; margin-bottom: 0.5rem; }
footer p, footer form label, small { color: #fff; display: inline-block; }
footer p { font-size: 28px; margin-top: 30px; }

/* Fix For IE11 Vertical Alignment */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	footer .my-auto { height: 122px; }
}

footer .footer-social-media a { background-color: #fff; color: #010d4f; display: block; float: left; font-size: 44px; height: 66px; margin: 15px 22px 15px 0; text-align: center; width: 66px; -o-transition: .5s; -ms-transition: .5s; -moz-transition: .5s; -webkit-transition: .5s; transition: .5s; }
footer .footer-social-media a:hover { background-color: #21409a; color: #fff; }
footer .footer-social-media a i.fab, .footer-social-media a i.fas { color: inherit; margin: 0px; }

.thanks { max-width: 260px; }
.col-centered { text-align: center; }
.margin-bottom { margin-bottom: 3rem; }
.margin-bottom-small { margin-bottom: 1.4rem; }
.margin-left { margin-left: 1.4rem !important; }
.margin-left-thin { margin-left: 0.5rem !important; }
.margin-right { margin-right: 1.4rem !important; }
.margin-right-thin { margin-right: 0.5rem !important; }
.margin-right-only { margin: 0 1.4rem 0 0 !important; }
.margin-top-small { margin-top: 1.4rem; }

/* Generic Home Page */
.gbg { background-image: url("/img/Generica-Holding-Page-Background.jpg"); background-position: center; background-repeat: no-repeat; background-size: cover; height: 100%; }

/* Constant Contact */
.ctct-inline-form .g-recaptcha, .ctct-form-footer {
	display: none !important;
}

label.ctct-form-label { font-size: 22px; font-weight: normal !important; padding-left: 16px; }
.ctct-form-button { border-radius: 0px !important; color: #010d4f; font-family: 'Archivo Black'; font-size: 20px !important; font-weight: bold; text-transform: uppercase !important; }
.ctct-form-custom { margin-top: 24px !important; }
.ctct-form-defaults { padding: 0px !important; }
.ctct-form-required:before { left: 0px !important; }
.ctct-form-success { margin-top: 30px !important; text-align: center; }

.hidden { display: none !important; }

/* Badges */
.badge-info { background-color: #17a2b8; margin-left: 0.5rem; }

/* Pills */
.nav-pills { --bs-nav-pills-link-active-bg: #21409a; --bs-nav-link-color: #21409a; }
.nav-pills .nav-item { padding: 4px; }
.nav-pills .nav-link { border: 1px solid var(--bs-border-color-translucent); font-size: 22px; }

.card-columns { column-count: 4; }

@media (max-width: 1350px) {
	.card-columns { column-count: 3; }
}

@media (max-width: 992px) {
	.card-columns { column-count: 2; }
}

@media (max-width: 768px) {
	.card-columns { column-count: 1; }
}

/* Images */
.img-inline { border-radius: 4px; margin: 10px 0 30px 0; width: 100%; }
section div img.img-fluid { border-radius: .25rem; margin: 2rem 0 3rem 0; }

/* Lists */
ul.fa-ul { padding-left: 0.6em; }
ol.text, ul.text { margin-top: 0; margin-bottom: 2.125rem; }
ol.text li, ul.text li { margin-top: 1.125rem; }

@media (max-width: 768px) {
	ol.text, ul.text { margin-top: 0; margin-bottom: 1.875rem; }
	ol.text li, ul.text li {
		margin-top: 0.875rem;
	}
}

ol li {
	padding-left: 20px;
}

/* Special Overrides */
.margin-top { margin-top: 30px; }
.margin-top-lg { margin-top: 60px; }
.small-margin-top { margin-top: 10px!important; }
.no-margin { margin: 0px !important; }
.no-margin-top { margin-top: 0px !important; }
.no-padding-bottom { padding-bottom: 0px !important; }
.no-padding-top { padding-top: 0px !important; }

/* i:Entrepreneur */
.bg-img-i-ent { background-image: url('/img/i-entrepreneur/i-entrepreneur-header-2400.jpg'); background-size: cover; margin-bottom: -1px; }
.bg-img-i-ent p, .bg-img li, .bg-img a { color: #fff; }
.bg-img-i-ent p a { border-bottom: 1px dashed #fff; color: #fff; text-decoration: none; }
.bg-img-i-ent p a:hover { border-bottom: 1px dashed #cda62d; text-decoration: none; }
.bg-img-i-ent .btn-primary { background-color: #312820; border: 1px solid #3e3228; }
.bg-img-i-ent .btn-primary:hover { background-color: #cda62d; border: 1px solid #312820; }
.bg-img-i-ent .btn-primary:not(:disabled):not(.disabled):active { background-color: #312820; border: 1px solid #312820; }
.bg-img-i-ent .btn-primary:not(:disabled):not(.disabled):active:focus, .bg-img-i-ent .btn-primary:focus { box-shadow: 0 0 0 0.2rem #cda62d; }

@media (max-width: 1600px) { .bg-img-i-ent { background-image: url('/img/i-entrepreneur/i-entrepreneur-header-1600.jpg'); } }
@media (max-width: 800px) { .bg-img-i-ent { background-image: url('/img/i-entrepreneur/i-entrepreneur-header-800.jpg'); } }

/* Media Queries */
@media (max-width: 768px) {
	a.btn { display: block; }
	footer .footer-social-media a { font-size: 22px; height: 31px; margin: 0px 6px 0px 0px; width: 31px; }
	footer a.text, footer p { font-size: 18px; max-height: 100px; text-align: center; }
	footer img { margin: 40px 0px 40px 0px; }
}

/* Case Studies */
.case-studies { margin: 30px 0 30px 0; }
.case-studies .card { margin-bottom: 30px; }
.case-studies .card-header { font-size: 26px; }
.case-studies .card-header .fad, .case-studies .card-body .fa-grip-lines-vertical { margin: 0px 5px 0px 5px; }
.case-studies .card-header span { display: block; font-size: 18px; font-style: italic; }
.case-studies .float-end { margin-left: 20px; }
.case-studies .float-start { margin-right: 20px; }
.case-studies .fa-quote-right { margin-left: 10px; }
.case-studies img { max-width: 400px; }
.case-studies p { font-style: italic; }

@media (max-width: 500px) {
	.case-studies .card-header { font-size: 20px; }
  .case-studies img { max-width: 100%; margin-bottom: 30px; }
	.case-studies .card-body h4 { font-size: 1.3rem; }
}

/* About Us */
.about-us .card .btn { font-family: Archivo, Verdana; font-weight: normal; margin: 0px 0px 10px 0px; text-transform: unset; white-space: nowrap; }
.about-us .card-footer { border-top: none; background-color: unset; }

/* Small Business Planet */
section.green a.btn-primary { background-color: #8cdc75; border-color: #006d3e; color: #fff; border-radius: 0px; }
section.green a.btn-primary:hover { background-color: #006d3e; border-color: #8cdc75; border-style: solid; color: #fff; text-decoration: none; }

h3 .badge-secondary, h3 .badge-secondary:hover { background-color: #006d3e; display: table; font-size: 18px; margin: 10px 0 20px 0; white-space: nowrap; width:10px; }

/* Quotes */
blockquote { display: block; font-size: 3rem; font-style: italic; }
blockquote p.mb-0 {	font-size: 1.5rem; line-height: 2.4rem; }

/* Checkbox UL */
ul.checkbox { list-style: none; padding: 0; }
ul.checkbox li { padding-left: 1.3em; }
ul.checkbox li:before { content: "\f0c8"; font-family: 'Font Awesome 5 Pro'; display: inline-block; margin-left: -1.3em; width: 1.3em; }
ul.no-margin { margin: 0px; }

/* Forms */
form button.btn { margin-left: 5px; margin-right: 5px; }
form input { font-size: 1.2rem; }
form label, .form-group p { color: #111; font-family: 'Archivo', Verdana; font-size: 1.2rem; margin-top: 14px; }
form label.form-check-label { margin: 0 0.5rem 0 0.5rem; }
form .fab, form .fad, form .fa-duotone, form .fas { margin-right: 14px; }
.word-count { color: #333; display: inline-block; font-size: 80%; float: right; margin-top: 3px; }

/* Modals */
#modalSubmit .modal-header { border: 0px; }
.modal-success, .modal-failure { padding: 20px; text-align: center; }
.modal-success i.fad, .modal-failure i.fad { font-size: 14rem; margin-bottom: 24px; }
.modal-success h1, .modal-failure h1 {	font-size: 3rem; margin-bottom: 24px; }
.modal-success h3.application { border:2px dashed #111; color: #111; font-size: 1.8rem; margin-bottom: 30px; margin-top: 30px; padding: 10px 20px; }
.modal-success h3.application span {	color: #21409a; }
.modal .close { border: none; background-color: #fff; }
.modal li { font-size: 20px; margin: 0 0 0.5rem 0; }
.modal ol { margin-top: 0.5rem; }
.modal-success i.fad { color: #37d51f; }
.modal-failure i.fad { color: #f13f3f; }

/* Admin */
.admin-button-holder .btn { display: block; margin: 30px auto 30px auto; width: 100%; }

/* Green Skills For Small Business Programme */
.sb-programme .card-link { font-size: 1.1rem; }

@media (max-width: 768px) {
	.sb-programme .card-link { width: 100%; }
}

#tableEventsAdmin td i, #tableNetwalksAdmin td i, #tableSBAdmin td i, #tableWorkshops td i, #tableMembers td i, #tableCohorts td i { cursor: pointer; }
.admin-result-body { white-space: pre-line; }
#tableWorkshops .workshop-drag-handle, #tableWorkshops .workshop-drag-handle i { cursor: grab; }
.workshop-dragging { opacity: 0.35; }
.workshop-drag-placeholder td { border-top: 2px dashed #010d4f !important; padding: 0 !important; }

/* Programme Header Image cards */
.header-image-card { border: 1px solid #dee2e6; border-radius: 6px; padding: 10px; height: 100%; display: flex; flex-direction: column; }
.header-image-card .header-image-label { font-size: 13px; font-weight: 600; margin-bottom: 6px; color: #010d4f; }
.header-image-thumb { width: 100%; aspect-ratio: 2 / 1; background: #f1f3f5; border-radius: 4px; display: flex; align-items: center; justify-content: center; overflow: hidden; margin-bottom: 8px; cursor: pointer; }
.header-image-thumb.square { aspect-ratio: 1 / 1; }
.header-image-thumb img { max-width: 100%; max-height: 100%; object-fit: cover; }
.header-image-thumb.is-empty { border: 2px dashed #adb5bd; color: #6c757d; font-size: 12px; text-align: center; padding: 8px; }
.header-image-thumb.is-dragover { background: #e7f1ff; border-color: #010d4f; color: #010d4f; }
.header-image-thumb.is-busy { opacity: 0.5; pointer-events: none; }
.header-image-actions { display: flex; gap: 6px; }
.header-image-actions .btn { flex: 1; }
.header-image-error { font-size: 12px; color: #c0392b; margin-top: 6px; min-height: 16px; }

/* Cards */
.card-header { margin-bottom: 0px; }

/* How To Guides */
.how-to-guides .card { margin-bottom: 0px; }
.how-to-guides .card-header { font-size: 24px; line-height: 28px; min-height: 76px; }
.how-to-guides .badge { background-color: #010d4f !important; font-size: 14px; margin: 10px 4px; padding: 10px; }

@media (max-width: 768px) {
	.how-to-guides .card-header { min-height: unset; }
}

/* AI Hub Guides */
.ai-hub-guides .card { margin-bottom: 0px; }
.ai-hub-guides .card-header { font-size: 1rem; line-height: 1.1rem; min-height: 52px; }
.ai-hub-guides .badge { background-color: #010d4f !important; font-size: 0.875rem; margin: 10px 4px; padding: 10px; }

@media (max-width: 768px) {
	.ai-hub-guides .card-header { min-height: unset; }
}

/* Netwalks */
#map-netwalks { border-radius: 4px; height: 650px; margin-top: 30px; }
#frmNetwalk input.form-control { color: #111; }

/* Events */
.event-speaker { color: #36454f; font-size: 23px; margin-top: 12px; }

@media (max-width: 768px) {
	.event-speaker { font-size: 18px; }
	#divUpcomingEvents .btn-outline-secondary { font-size: 18px; margin-top: 4px; }
}

/* Political Parties */
.party-conservative { background-color: #0087dc; color: #fff; }
.party-conservative:hover, .party-conservative:visited, .party-conservative.active { background-color: #005ea5 !important; color: #fff !important; }
.party-labour { background-color: #e4003b; color: #fff; }
.party-labour:hover, .party-labour:visited, .party-labour.active { background-color: #b3002a !important; color: #fff !important; }

.ratio-9x16-mob-only { padding-bottom: 56.25%; position: relative; width: 100%; }
.ratio-9x16-mob-only iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

@media (max-width: 768px) {
  .ratio-9x16-mob-only {
    padding-bottom: 177.78%; /* 9:16 */
  }
}

/* AI Tools */
.ai-tools .card-header { font-size: 1.4rem; }
.no-border-radius { border-radius: unset !important; }

.ratio-9x16 {
  --bs-aspect-ratio: calc(16 / 9 * 100%); /* 177.78% */
}

.light-cream { background-color: #f8f4ef; }

hr.full-width { width: auto; }
hr.medium-grey { border-top: 1px solid #a5a29f !important; border-bottom: 1px solid #7c7a77 !important; }

/* Flip Cards */
.flip-card { background-color: transparent; cursor: pointer; height: 100%; perspective: 1000px; width: 100%; }
.flip-card-inner { display: grid; width: 100%; height: 100%; transition: transform 0.6s; transform-style: preserve-3d; }
.flip-card.is-flipped .flip-card-inner { transform: rotateY(180deg); }
.flip-card-front, .flip-card-back { grid-area: 1 / 1; width: 100%; height: 100%; -webkit-backface-visibility: hidden; backface-visibility: hidden; border-radius: var(--bs-card-border-radius); overflow: hidden; }
.flip-card-back { transform: rotateY(180deg); }

.ratio-460x725 {
  aspect-ratio: 460 / 725;
}

.ratio-5x2 {
  --bs-aspect-ratio: 40%;
}

.custom-blue { background-color: #6481ff; }
.custom-cream { background-color: #f8f5f0; }
.custom-dark-blue { background-color: #1d3a8a; }
.custom-lilac { background-color: #d8a5f0; }
.custom-maroon { background-color: #321e37; }

/* Green Growth 100 */
.green-growth-100 h5 { color: #010d4f; margin: 0; padding: 0; }
.green-growth-100 .card-header { align-items: center; display: flex; justify-content: center; padding: 0.5rem 1rem; text-align: center; }
.green-growth-100 .full-bio-content { display: none; }
.green-growth-100 button { cursor: pointer; }

/* Align the Card Headers */
.green-growth-100 .card-header { min-height: 4.5rem; }

/* Clamp Title Text */
.green-growth-100 .card-title { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

/* Small Button */
.green-growth-100 .btn-sm { font-size: 0.875rem; padding: 0.25rem 0.5rem; }

/* Willow Review Case Studies */
#divCaseStudies .card-header {
    background-color: #f0f9f4;
    border-bottom: 3px solid #006d3e;
}

#divCaseStudies .callout-plan {
    background-color: #f0f9f4;
    border-left: 4px solid #006d3e;
    border-radius: 0.375rem;
    padding: 1.25rem 1.5rem;
    margin-top: 1.125rem;
    margin-bottom: 2.125rem;
}

#divCaseStudies .callout-plan > p {
    color: #006d3e;
    font-weight: 700;
    margin-bottom: 0;
}

#divCaseStudies .callout-plan ol.text,
#divCaseStudies .callout-plan ul.text {
    margin-top: 0.75rem;
    margin-bottom: 0;
}

@media (max-width: 768px) {
    #divCaseStudies .callout-plan {
        padding: 1rem;
        margin-top: 0.875rem;
        margin-bottom: 1.875rem;
    }
}

/* Careers */
.careers .badge { font-size: 1rem; }

/* Scroll Reveal */
.scroll-reveal { opacity: 0; transform: translateY(20px); transition: opacity 0.5s ease, transform 0.5s ease; }

/* Attachment management */
.attachment-drag-handle { cursor: grab; }
.btn-icon { background: none; border: none; cursor: pointer; line-height: 1; padding: 0.25rem 0.375rem; }
#divAttachmentDropZone, #divAttachmentDropZone p { text-align: center; }
#ulWorkshopAttachments { margin-bottom: 0; }
#ulWorkshopAttachments .list-group-item { border-radius: 0; border-top-width: 0; margin: 0; padding: 0.4rem 0.75rem; }
#ulWorkshopAttachments .list-group-item:first-child { border-top-width: 1px; border-top-left-radius: 0.375rem; border-top-right-radius: 0.375rem; }
#ulWorkshopAttachments .list-group-item:last-child { border-bottom-left-radius: 0.375rem; border-bottom-right-radius: 0.375rem; }
#ulWorkshopAttachments .attachment-actions { min-width: 5rem; justify-content: flex-end; }
#ulWorkshopAttachments .attachment-badge { min-width: 4.5rem; text-align: center; }
.scroll-reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .scroll-reveal { opacity: 1; transform: none; transition: none; } }

/* Willow Review - Partnership Strip */
.partnership-strip { background-color: #eaf4ee; border-top: 3px solid #006a4e; border-bottom: 1px solid #c3ddd0; padding: 14px 0; }
.partnership-strip .partnership-label { color: #004d38; font-size: 0.9rem; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; white-space: nowrap; }
.partnership-strip .partnership-logo { height: 36px; width: auto; }

/* ==========================================================================
   Home Page (rebuilt 2026-05-28)
   ========================================================================== */

:root {
  --sbb-cream: #f8f4ef;
  --sbb-blue: #21409a;
  --sbb-blue-deep: #010d4f;
  --sbb-blue-bright: #4c6fff;
}

/* Section: cream (warmer alternative to white) */
section.cream { background-color: var(--sbb-cream); color: #111; padding: 60px 0; }
section.cream h2, section.cream h3 { color: var(--sbb-blue-deep); }
section.cream p, section.cream li { color: #2a2a2a; }
section.cream p a.text, section.cream p a { border-bottom: 1px dashed var(--sbb-blue); color: var(--sbb-blue); }

/* Eyebrow labels (small uppercase intro above each H2) */
.section-eyebrow { margin-bottom: 0.5rem; }
.section-eyebrow span { display: inline-block; font-family: 'Archivo', Verdana; font-size: 0.95rem; font-weight: 700; letter-spacing: 0.18em; padding: 0.35rem 0.85rem; text-transform: uppercase; }
.eyebrow-blue { background-color: var(--sbb-blue); color: #fff; }
.eyebrow-light { background-color: rgba(255, 255, 255, 0.18); color: #fff; }

/* Coloured accent HRs (short coloured underline under H2s) */
hr.hr-blue { border-top: 3px solid var(--sbb-blue); width: 80px; opacity: 1; }
hr.hr-light { border-top: 3px solid #fff; width: 80px; opacity: 1; }
hr.hr-blue.ms-0, hr.hr-light.ms-0 { margin-left: 0; }

/* Hero - logo-led, deep blue background (matches SBI hero pattern) */
.home-hero { background: linear-gradient(135deg, var(--sbb-blue-deep) 0%, var(--sbb-blue) 100%); color: #fff; margin: 0; padding: 120px 0 80px 0; position: relative; text-align: center; }

/* Reusable page header gradient (apply alongside .small-header on inner pages) */
header.header-gradient { background: linear-gradient(135deg, var(--sbb-blue-deep) 0%, var(--sbb-blue) 100%); }

/* Small-header mobile tightening (used on every gradient-header page) */
@media (max-width: 768px) {
  .small-header { padding-bottom: 40px; }
  .small-header > a { margin: 95px 24px 20px 24px; }
  .small-header img { max-width: 320px; }
}
@media (max-width: 576px) {
  .small-header > a { margin: 80px 16px 16px 16px; }
  .small-header img { max-width: 240px; }
}

/* Campaigns - per-brand section themes (each section borrows its source brand's palette) */
section.campaign-sbs { background-color: #005da3; color: #fff; }
section.campaign-sbs h2, section.campaign-sbs h3, section.campaign-sbs h4 { color: #fff !important; }
section.campaign-sbs p, section.campaign-sbs li, section.campaign-sbs strong { color: rgba(255, 255, 255, 0.96); }
section.campaign-sbs .feature-wordmark { color: #fff !important; }
section.campaign-sbs hr.hr-blue { border-top-color: #d9f0fa; }
section.campaign-sbs .eyebrow-blue { background-color: rgba(255, 255, 255, 0.18); color: #fff; }
section.campaign-sbs a.btn-primary { background-color: #fff !important; border-color: #fff !important; color: #005da3 !important; }
section.campaign-sbs a.btn-primary:hover { background-color: #d9f0fa !important; color: #003c6a !important; }
section.campaign-sbs p a { border-bottom: 1px dashed #d9f0fa; color: #d9f0fa; }

section.campaign-gbp { background-color: #1e2168; color: #fff; }
section.campaign-gbp h2, section.campaign-gbp h3, section.campaign-gbp h4 { color: #fff !important; }
section.campaign-gbp p, section.campaign-gbp li, section.campaign-gbp strong { color: rgba(255, 255, 255, 0.96); }
section.campaign-gbp .feature-wordmark { color: #fff !important; }
section.campaign-gbp hr.hr-blue { border-top-color: #6e1f96; }
section.campaign-gbp .eyebrow-blue { background-color: #6e1f96; color: #fff; }
section.campaign-gbp a.btn-primary { background-color: #6e1f96 !important; border-color: #6e1f96 !important; color: #fff !important; }
section.campaign-gbp a.btn-primary:hover { background-color: #8c2bbc !important; border-color: #8c2bbc !important; color: #fff !important; }
section.campaign-gbp p a { border-bottom: 1px dashed #c5d5e4; color: #c5d5e4; }
section.campaign-gbp .feature-event-list li i { color: #c5d5e4; }
section.campaign-gbp .feature-event-list .feature-event-date { color: #fff; }

section.campaign-tsa { background-color: #1dbfd6; color: #fff; }
section.campaign-tsa h2, section.campaign-tsa h3, section.campaign-tsa h4 { color: #fff !important; }
section.campaign-tsa p, section.campaign-tsa li, section.campaign-tsa strong { color: rgba(255, 255, 255, 0.98); }
section.campaign-tsa .feature-wordmark { color: #fff !important; }
section.campaign-tsa hr.hr-blue { border-top-color: #e2bb3a; }
section.campaign-tsa .eyebrow-blue { background-color: #e2bb3a; color: #1a4a52; }
section.campaign-tsa a.btn-primary { background-color: #e2bb3a !important; border-color: #e2bb3a !important; color: #1a4a52 !important; }
section.campaign-tsa a.btn-primary:hover { background-color: #c9a52e !important; border-color: #c9a52e !important; color: #1a4a52 !important; }
section.campaign-tsa p a { border-bottom: 1px dashed #fff; color: #fff; }

/* Feature pages (Business For Good, Campaigns - reusable alternating image/content rows) */
.feature-intro-illustration { display: block; margin: 0 auto !important; max-width: 380px; width: 100%; }
.feature-area { padding: 70px 0; }
.feature-area .feature-wordmark { color: var(--sbb-blue-deep); font-size: 2.4rem; }
section.cream .feature-wordmark { color: var(--sbb-blue-deep); }
.feature-image-frame { background-color: #fff; border-radius: 8px; box-shadow: 0 12px 32px rgba(1, 13, 79, 0.12); overflow: hidden; padding: 1rem; }
section.cream .feature-image-frame { background-color: #fff; }
.feature-area-illustration { display: block; margin: 0 auto !important; max-width: 320px; width: 100%; }
.feature-area-photo { border-radius: 4px; display: block; margin: 0 !important; width: 100%; }
.feature-event-list { list-style: none; margin: 0 0 1.5rem 0; padding: 0; }
.feature-event-list li { align-items: center; display: flex; gap: 0.85rem; font-size: 1.2rem; margin-top: 0.6rem; }
.feature-event-list li i { color: var(--sbb-blue); font-size: 1.25rem; }
.feature-event-list .feature-event-date { color: var(--sbb-blue-deep); font-family: 'Archivo Black', Verdana; font-size: 1rem; letter-spacing: 0.04em; min-width: 9rem; text-transform: uppercase; }

@media (max-width: 992px) {
  .feature-intro-illustration { max-width: 280px; }
  .feature-area { padding: 50px 0; }
  .feature-area .feature-wordmark { font-size: 1.8rem; }
  .feature-area-illustration { max-width: 240px; }
  .feature-image-frame { padding: 0.75rem; }
  .feature-event-list li { font-size: 1rem; }
  .feature-event-list .feature-event-date { min-width: 7rem; }
}

@media (max-width: 768px) {
  .feature-area { padding: 40px 0; }
}

/* About Us page polish */
.about-us-intro { margin-bottom: 3rem; }
.about-us-illustration { display: block; margin: 0 auto !important; max-width: 380px; width: 100%; }
section.about-us .card { border-top: 4px solid transparent; transition: border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease; }
section.about-us .card:hover { border-top-color: var(--sbb-blue); transform: translateY(-4px); box-shadow: 0 14px 30px rgba(33, 64, 154, 0.18) !important; }
section.about-us .card h3.dark-blue-text { margin-bottom: 0.35rem; }
section.about-us .card .card-subtitle { color: var(--sbb-blue) !important; font-family: 'Archivo', Verdana; font-size: 0.95rem; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; }
section.about-us .card .card-img-top { aspect-ratio: 4 / 3; object-fit: cover; object-position: center top; }

@media (max-width: 992px) {
  .about-us-intro { margin-bottom: 1.5rem; }
  .about-us-illustration { max-width: 280px; }
}
.home-hero-logo { display: block; height: auto; margin: 0 auto 2rem auto; max-width: 520px; width: 80%; }
.home-hero-tagline { color: #fff; font-family: 'Archivo', Verdana; font-size: 1.5rem; font-weight: 500; line-height: 1.4; margin: 0 auto 2rem auto; max-width: 760px; text-align: center; }
.home-hero-ctas { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
.home-hero-ctas a.btn { margin: 0; }
.btn-hero-light { background-color: #fff !important; border-color: #fff !important; color: var(--sbb-blue-deep) !important; }
.btn-hero-light:hover { background-color: var(--sbb-cream) !important; color: var(--sbb-blue) !important; }
.btn-hero-accent { background-color: var(--sbb-blue-bright) !important; border-color: var(--sbb-blue-bright) !important; color: #fff !important; }
.btn-hero-accent:hover { background-color: #2e52e0 !important; border-color: #2e52e0 !important; color: #fff !important; }

@media (max-width: 992px) {
  .home-hero { padding: 100px 0 60px 0; }
  .home-hero-logo { max-width: 380px; }
  .home-hero-tagline { font-size: 1.2rem; margin-bottom: 1.4rem; }
}
@media (max-width: 768px) {
  .home-hero { padding: 90px 0 50px 0; }
  .home-hero-logo { max-width: 280px; margin-bottom: 1.5rem; }
  .home-hero-tagline { font-size: 1.05rem; }
}

/* Home: Why We're Here CTAs */
.home-purpose-ctas { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 0.5rem; }
.home-purpose-ctas a.btn { margin: 0; }

@media (max-width: 576px) {
  .home-purpose-ctas { gap: 0.75rem; }
  .home-purpose-ctas a.btn { flex: 1 1 100%; }
}

/* Video frame accent */
.video-frame-accent { border: 6px solid var(--sbb-blue); border-radius: 8px; box-shadow: 0 18px 50px rgba(33, 64, 154, 0.18); overflow: hidden; }
.video-frame-accent .ratio iframe { border: 0; }

/* Welcome: team photo */
.home-team-picture { display: block; }
.home-team-img { border-radius: 8px; box-shadow: 0 12px 32px rgba(1, 13, 79, 0.18); margin: 0 !important; }
.home-team-caption { color: #6b6b6b !important; font-family: 'Archivo', Verdana; font-size: 0.95rem !important; font-style: italic; margin: 0.75rem 0 0 0; text-align: center !important; }

/* Generic homepage illustration */
.home-illustration { display: block; margin: 0 auto !important; max-width: 460px; width: 100%; }

/* Mission section */
.home-mission-statement { color: #fff !important; font-family: 'Archivo', Verdana; font-size: 2.2rem !important; font-weight: 600; line-height: 1.3; margin: 1rem auto 1.5rem auto; max-width: 920px; text-align: center !important; }
.home-values-heading { color: #fff; font-family: 'Archivo', Verdana; font-size: 1.5rem; margin: 1rem 0 1.5rem 0; text-align: center; text-transform: uppercase; letter-spacing: 0.1em; }
.home-values { display: flex; flex-wrap: wrap; gap: 0.85rem; justify-content: center; list-style: none; margin: 0; padding: 0; }
.home-value { align-items: center; background-color: rgba(255, 255, 255, 0.12); border: 1px solid rgba(255, 255, 255, 0.28); border-radius: 999px; color: #fff; display: inline-flex; font-family: 'Archivo', Verdana; font-size: 1.15rem !important; font-weight: 600; gap: 0.6rem; margin: 0 !important; padding: 0.65rem 1.4rem; transition: background-color 0.2s ease, transform 0.2s ease; }
.home-value:hover { background-color: rgba(255, 255, 255, 0.22); transform: translateY(-2px); }
.home-value i { color: #b8c8ff; font-size: 1.25rem; }

@media (max-width: 992px) {
  .home-mission-statement { font-size: 1.6rem !important; }
  .home-values { gap: 0.5rem; }
  .home-value { font-size: 1rem !important; padding: 0.5rem 1rem; }
}

/* Partners marquee */
#secPartners { padding-bottom: 80px; }
.partners-marquee { -webkit-mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%); mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%); overflow: hidden; padding: 1.5rem 0 0.5rem 0; position: relative; }
.partners-marquee-track { animation: partnersMarquee 48s linear infinite; display: flex; gap: 3.5rem; width: max-content; will-change: transform; }
.partners-marquee:hover .partners-marquee-track { animation-play-state: paused; }
.partner-logo { align-items: center; display: flex; flex: 0 0 auto; height: 80px; justify-content: center; width: 180px; }
.partner-logo img { margin: 0 !important; max-height: 70px; max-width: 160px; object-fit: contain; }

@keyframes partnersMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .partners-marquee-track { animation: none; flex-wrap: wrap; justify-content: center; width: 100%; }
}

/* SBI split section */
.sbi-split { background: linear-gradient(90deg, var(--sbb-cream) 0%, var(--sbb-cream) 42%, var(--sbb-blue) 42%, var(--sbb-blue) 100%); color: #fff; padding: 0; }
.sbi-split .container { padding: 60px 1rem; }
.sbi-split-image { padding: 0 2rem 0 0; text-align: center; }
.sbi-split-image .home-illustration { max-width: 360px; }
.sbi-logo-badge { display: block; margin: 0 auto 1.5rem auto !important; max-width: 240px; width: 100%; }
.sbi-illustration { display: block; margin: 0 auto !important; max-width: 280px; width: 100%; }
.sbi-split-content { color: #fff; padding: 0 0 0 2rem; }
.sbi-split-content h2 { color: #fff !important; }
.sbi-split-content p { color: rgba(255, 255, 255, 0.92); }
.sbi-split-content a.btn-primary { background-color: var(--sbb-blue-bright) !important; border-color: var(--sbb-blue-bright) !important; color: #fff !important; }
.sbi-split-content a.btn-primary:hover { background-color: #2e52e0 !important; color: #fff !important; }
.sbi-pillars { display: grid; gap: 1.5rem; grid-template-columns: 1fr; margin: 2rem 0; }
.sbi-pillar { background-color: rgba(255, 255, 255, 0.08); border-left: 4px solid var(--sbb-blue-bright); border-radius: 0 4px 4px 0; padding: 1.25rem 1.5rem; }
.sbi-pillar i { color: #b8c8ff; font-size: 1.75rem; margin-bottom: 0.5rem; }
.sbi-pillar h4 { color: #fff; font-family: 'Archivo Black', Verdana; font-size: 1.25rem; margin: 0 0 0.5rem 0; }
.sbi-pillar p { color: rgba(255, 255, 255, 0.88); font-size: 1.05rem; line-height: 1.5; margin: 0; }

@media (min-width: 992px) {
  .sbi-pillars { grid-template-columns: repeat(3, 1fr); }
  .sbi-pillar p { font-size: 0.98rem; }
}
@media (max-width: 991px) {
  .sbi-split { background: var(--sbb-blue); }
  .sbi-split-image { background-color: var(--sbb-cream); padding: 2.5rem 1.5rem; }
  .sbi-split-content { padding: 1rem 0 0 0; }
}

/* Accessibility footer band */
.home-accessibility { align-items: flex-start; background-color: #fff; border-left: 4px solid var(--sbb-blue); border-radius: 4px; display: flex; gap: 1.25rem; padding: 1.5rem 1.75rem; }
.home-accessibility i { color: var(--sbb-blue); font-size: 2.5rem; flex-shrink: 0; }
.home-accessibility p { font-size: 1.15rem !important; margin: 0; }

@media (max-width: 576px) {
  .home-accessibility { flex-direction: column; gap: 0.75rem; padding: 1.25rem; }
  .home-accessibility i { font-size: 2rem; }
}

/* Instagram strip (site-wide, sits above the footer) */
#secInstagramStrip { background-color: var(--sbb-cream); padding: 50px 0 40px 0; }
#secInstagramStrip .insta-strip-heading { color: var(--sbb-blue-deep); font-family: 'Archivo Black', Verdana; font-size: 2rem; margin: 0 0 0.5rem 0; text-align: center; text-transform: uppercase; }
#secInstagramStrip .insta-strip-handle { color: var(--sbb-blue); font-family: 'Archivo', Verdana; font-size: 1.1rem; font-weight: 600; margin: 0 0 1.5rem 0; text-align: center; }
#secInstagramStrip .insta-strip-handle a { border-bottom: 1px dashed var(--sbb-blue); color: var(--sbb-blue); text-decoration: none; }
#secInstagramStrip .insta-strip-feed { padding: 0; width: 100%; }

@media (max-width: 768px) {
  #secInstagramStrip { padding: 30px 0; }
  #secInstagramStrip .insta-strip-heading { font-size: 1.5rem; }
}

/* ==========================================================================
   Home Page - Mobile Pass
   ========================================================================== */

/* Anchor offset: fixed navbar sits ~72px high, so anchored sections need scroll-margin */
#secWelcome, #secBestOfVideo, #secWhyWereHere, #secMission, #secPartners, #secSBI, #secAccessibilityFooter, #secInstagramStrip { scroll-margin-top: 72px; }

@media (max-width: 768px) {

  /* Tighter section padding everywhere */
  section.white, section.cream { padding: 40px 0; }
  #secBestOfVideo.pt-5 { padding-top: 40px !important; }
  #secAccessibilityFooter.pt-4 { padding-top: 30px !important; }
  #secAccessibilityFooter.pb-4 { padding-bottom: 30px !important; }

  /* Video frame thinner border + tighter shadow on phones */
  .video-frame-accent { border-width: 3px; box-shadow: 0 8px 20px rgba(33, 64, 154, 0.15); }

  /* Welcome: team caption spacing */
  .home-team-img { margin-top: 1rem !important; }
  .home-team-caption { font-size: 0.85rem !important; }

  /* Mission: tighter mission statement */
  .home-mission-statement { font-size: 1.35rem !important; line-height: 1.35; margin-bottom: 1rem; }
  .home-values-heading { font-size: 1.15rem; margin: 0.75rem 0 1rem 0; }

  /* Generic illustration size */
  .home-illustration { max-width: 280px; }

  /* SBI: logo + illustration stacked tighter */
  .sbi-logo-badge { max-width: 200px; margin-bottom: 1rem !important; }
  .sbi-illustration { max-width: 220px; }
  .sbi-split-image { padding: 1.5rem 1rem 0.5rem 1rem; }
  .sbi-split-content { padding: 1rem 0.5rem 0 0.5rem; }
  .sbi-pillar { padding: 1rem 1.25rem; }
  .sbi-pillar h4 { font-size: 1.1rem; }

  /* Partners marquee: smaller cells, snappier loop */
  .partner-logo { height: 60px; width: 130px; }
  .partner-logo img { max-height: 50px; max-width: 115px; }
  .partners-marquee-track { gap: 2rem; animation-duration: 38s; }
}

@media (max-width: 576px) {

  /* Hero: stack CTAs full width for big tap targets */
  .home-hero { padding: 80px 0 40px 0; }
  .home-hero-logo { max-width: 240px; margin-bottom: 1.25rem; }
  .home-hero-tagline { font-size: 1rem; margin-bottom: 1.25rem; padding: 0 0.5rem; }
  .home-hero-ctas { flex-direction: column; gap: 0.75rem; padding: 0 1rem; }
  .home-hero-ctas a.btn { width: 100%; }

  /* Best Of: heading + eyebrow tighter */
  #secBestOfVideo h2 { margin-bottom: 0.5rem; }

  /* Welcome: tighter h2 spacing on mobile */
  #secWelcome .col-lg-6:first-child { padding-bottom: 0; }

  /* Mission: chips tighter */
  .home-values { gap: 0.4rem; }
  .home-value { font-size: 0.9rem !important; padding: 0.45rem 0.85rem; }
  .home-value i { font-size: 1rem; }

  /* Accessibility band: smaller text */
  .home-accessibility p { font-size: 1rem !important; line-height: 1.5; }

  /* Instagram strip: tighter heading */
  #secInstagramStrip { padding: 25px 0 20px 0; }
  #secInstagramStrip .insta-strip-heading { font-size: 1.25rem; }
  #secInstagramStrip .insta-strip-handle { font-size: 0.95rem; margin-bottom: 1rem; }
}