/*
Theme Name:Arlington Child
Theme URI:https://silkyoceanstudios.com/
Description:A custom child theme for Kadence with a bespoke hero block.
Author:Silky Ocean Studios
Author URI:https://silkyoceanstudios.com/
Template:kadence
Version:2.0.1
Text Domain:arlington-child
*/
:root {
	--heading-1-size: 1.6rem;
	--heading-1-size-value: 1.6;
	--heading-2-size: 1.5rem;
	--heading-2-size-value: 1.5;
	--heading-3-size: 0.8rem;
	--heading-3-size-value: 0.8;
	--heading-4-size: 1.125rem;
	--heading-4-size-value: 1.125;
	--colour-dark-blue:#1e1636;
	--colour-dark-blue-alt:#1a094d;
	--colour-beige:#f8f4eb;
}
@font-face { font-family: futura-pt; src: url(https://use.typekit.net/af/3593c9/000000000000000077586b59/30/l?subset_id=2&fvd=n4&v=3) format("woff2"), url(https://use.typekit.net/af/3593c9/000000000000000077586b59/30/d?subset_id=2&fvd=n4&v=3) format("woff"), url(https://use.typekit.net/af/3593c9/000000000000000077586b59/30/a?subset_id=2&fvd=n4&v=3) format("opentype"); font-weight: 400; font-style: normal; font-stretch: normal; font-display: auto; }
@font-face { font-family: futura-pt; src: url(https://use.typekit.net/af/965528/000000000000000077586b56/30/l?subset_id=2&fvd=n6&v=3) format("woff2"), url(https://use.typekit.net/af/965528/000000000000000077586b56/30/d?subset_id=2&fvd=n6&v=3) format("woff"), url(https://use.typekit.net/af/965528/000000000000000077586b56/30/a?subset_id=2&fvd=n6&v=3) format("opentype"); font-weight: 600; font-style: normal; font-stretch: normal; font-display: auto; }
@font-face { font-family: futura-pt; src: url(https://use.typekit.net/af/afd07f/000000000000000077586b60/30/l?subset_id=2&fvd=n7&v=3) format("woff2"), url(https://use.typekit.net/af/afd07f/000000000000000077586b60/30/d?subset_id=2&fvd=n7&v=3) format("woff"), url(https://use.typekit.net/af/afd07f/000000000000000077586b60/30/a?subset_id=2&fvd=n7&v=3) format("opentype"); font-weight: 700; font-style: normal; font-stretch: normal; font-display: auto; }
@font-face { font-family: futura-pt; src: url(https://use.typekit.net/af/4fe63b/000000000000000077586b55/30/l?subset_id=2&fvd=i4&v=3) format("woff2"), url(https://use.typekit.net/af/4fe63b/000000000000000077586b55/30/d?subset_id=2&fvd=i4&v=3) format("woff"), url(https://use.typekit.net/af/4fe63b/000000000000000077586b55/30/a?subset_id=2&fvd=i4&v=3) format("opentype"); font-weight: 400; font-style: italic; font-stretch: normal; font-display: auto; }
@font-face { font-family: futura-pt; src: url(https://use.typekit.net/af/6145c7/000000000000000077586b57/30/l?subset_id=2&fvd=i6&v=3) format("woff2"), url(https://use.typekit.net/af/6145c7/000000000000000077586b57/30/d?subset_id=2&fvd=i6&v=3) format("woff"), url(https://use.typekit.net/af/6145c7/000000000000000077586b57/30/a?subset_id=2&fvd=i6&v=3) format("opentype"); font-weight: 600; font-style: italic; font-stretch: normal; font-display: auto; }
@font-face { font-family: futura-pt; src: url(https://use.typekit.net/af/0efeae/000000000000000077586b5a/30/l?subset_id=2&fvd=i7&v=3) format("woff2"), url(https://use.typekit.net/af/0efeae/000000000000000077586b5a/30/d?subset_id=2&fvd=i7&v=3) format("woff"), url(https://use.typekit.net/af/0efeae/000000000000000077586b5a/30/a?subset_id=2&fvd=i7&v=3) format("opentype"); font-weight: 700; font-style: italic; font-stretch: normal; font-display: auto; }
body { font-family: futura-pt, sans-serif; }

.bg-light { background:var(--colour-beige)!important; color:var(--colour-dark-blue-alt)!important; }
.bg-dark { background:var(--colour-dark-blue)!important; color:var(--colour-beige)!important; }

.main-content { min-height: 100vh; font-size: 1rem; }
body:not(.home) .main-content { padding-top: 8rem; }

@media(min-width:992px) {
	.main-content { min-height: 100dvh; font-size: 1.1875rem; }
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { font-family:'Jost', sans-serif; font-optical-sizing: auto; font-style: normal; font-weight:500; text-transform: uppercase; color: inherit; margin-bottom: 2.5rem; }
.h1 a, .h2 a, .h3 a, .h4 a, .h5 a, .h6 a, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: inherit; font-family: inherit; font-weight: 400; text-decoration: none !important }

.h1, h1 { font-size:calc((var(--heading-1-size-value) - 1) * calc(.012 * min(100vh, 900px)) + 1rem); letter-spacing: .6vw; }
.h2, h2 { font-size:calc((var(--heading-2-size-value) - 1) * calc(.012 * min(100vh, 900px)) + 1rem); letter-spacing: .6vw; }
.h3, h3 { font-size:calc((var(--heading-3-size-value) - 1) * calc(.012 * min(100vh, 900px)) + 1rem); letter-spacing:.2em; font-weight:bold; }
.h4, h4 { font-size:calc((var(--heading-4-size-value) - 1) * calc(.012 * min(100vh, 900px)) + 1rem); letter-spacing: .5vw; }

@media(min-width:767px) {
	.h1, h1 { font-size:1.75rem; letter-spacing: .6vw; }
	.h2, h2 { font-size:1.3125rem; letter-spacing: .6vw; }
	.h3, h3 { font-size:1.125rem; letter-spacing:.2em; font-weight:700; }
	.h4, h4 { font-size:1rem; letter-spacing: .5vw; }
}

.main-content a:not(.btn) { text-decoration: underline; color: inherit; }
.main-content p { margin-bottom: 3rem; }
.main-content div p:last-child { margin-bottom: 0; }

a.fancy-underline, .fancy-circle { text-decoration:none!important; display:inline-block; position:relative; }
a.fancy-underline:after { content: ""; display:block;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 5px;
	background-image: url(/wp-content/uploads/2025/02/fancy-underline.png);
	background-repeat: no-repeat;
	background-size: 100% 100%; pointer-events: none; }
.bg-dark a.fancy-underline:after { background-image: url(/wp-content/uploads/2025/04/fancy-underline-light.png); }

a.fancy-circle:after { content: "";
	display: block;
	position: absolute;
	top: 57%;
	left: 52%;
	width: 120%;
	height: 48px;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzFhMDk0ZCIgc3Ryb2tlLXdpZHRoPSJtYXgoMXB4LDAuMDVlbSkiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJiZXZlbCIgdmlld0JveD0iLTEwIC0xMCAxODUgNTAiPjxwYXRoIGQ9Ik01My42OTk5OTk5OTk5OTk5OTYsMjYuMzQ5OTk5OTk5OTk5OTk4IEMgOTAuODI4LDI3LjgwMiAxNzIsMjYuMDIgMTcyLDEyLjE2IEMgMTcyLDAuNDQ1MDAwMDAwMDAwMDAwMyAxMTguNDkxOTk5OTk5OTk5OTksMCA4MC4yNzIsMCBTIC04LjE4LDAuNDQ1MDAwMDAwMDAwMDAwMyAtOC4xOCwxMS43NjQgUyAzMy44NjIsMjkuMjg3IDEyNC42OCwyNy44MDIiPjwvcGF0aD48L3N2Zz4=);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	pointer-events: none;
	transform: translateX(-50%) translateY(-50%); }



.header { background:var(--colour-beige); border-bottom: 1px solid var(--colour-dark-blue); transition: transform 0.3s ease-in-out; }
.header.scrolled { transform: translateY(-100%); }
.bg-dark .header { background: #1e1636; border-bottom: 1px solid #f8f4eb }
.home .header { background: transparent !important; border-bottom: 1px solid transparent !important; min-height: 80px; }

.navbar-brand { display: block; padding: 1.5rem 1rem; width:160px; height: auto; }
.navbar-brand svg { width: 100%; height: auto; }
.navbar-brand svg path { fill: #1e1636; stroke-width: 0; }
.bg-dark .navbar-brand svg path { fill: #f8f4eb; stroke-width: 0; }
.nav-item { padding-left: 1.75rem; padding-right: 1.75rem; margin-bottom: 1rem; }
.nav-link { display: inline-block; color: inherit; font-size: 1.25rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.125rem; padding-left: 0 !important; padding-right: 0 !important; }
.nav-link.active { color: inherit; background-image: linear-gradient(#1e1636, #1e1636); background-repeat: repeat-x; background-size: 1px 1px; background-position: 0 100%; background-position: 0 calc(100% - 0.5rem); }
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show { color: inherit; }
.offcanvas.offcanvas-end { border: 0; }

.navbar-toggler { border: 0; z-index: 999999; transition: background-color 0.3s ease-in-out; width: 40px; height: 40px; position: relative; display: flex; align-items: center; justify-content: center; padding: 0.5rem; }
.navbar-toggler:focus { border: 0; box-shadow: none; }

@media(min-width:992px) {
	.navbar-brand { width:180px; }
}

/* Icon container */
.custom-icon { display: block; width: 40px; height: 40px; position: relative; }
.custom-icon::before,
.custom-icon::after { content: ""; position: absolute; width: 100%; height: 2px; background-color: #1e1636; transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out; transform-origin: center; }
.custom-icon::before { top: 50%; left: 0; transform: translateY(-50%) rotate(0deg); }
.custom-icon::after { top: 50%; left: 0; transform: translateY(-50%) rotate(90deg); }
.bg-dark .custom-icon::before,
.bg-dark .custom-icon::after { background-color: #f8f4eb; }
.navbar-toggler.active .custom-icon::before,
.navbar-toggler.active .custom-icon::after { background-color: #1e1636; }
.navbar-toggler.active .custom-icon::before { transform: translateY(-50%) rotate(135deg); }
.navbar-toggler.active .custom-icon::after { transform: translateY(-50%) rotate(225deg); }

@media(min-width:992px) {
	.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { margin-bottom: 3rem; }
	.nav-item { margin-bottom: 0; }
	.nav-link { font-size: 0.75rem; }
	.navbar-dark .nav-link { color: #f8f4eb; }
	.bg-dark .nav-link { color: #f8f4eb; }
	.bg-dark .nav-link.active { color: #f8f4eb; background-image: linear-gradient(#f8f4eb, #f8f4eb); }
}

img { max-width: 100%; height: auto; display: inline-block; }
.mb-lg { margin-bottom: 5rem !important; }
.btn { font-family: futura-pt, sans-serif; font-size: 0.75rem; font-weight: bold; text-transform: uppercase; letter-spacing: 0.1875rem; border-radius: 0; padding: 1rem 2.5rem; }
.btn-link { color: #1e1636; text-decoration: none; }
.bg-dark .btn-link { color: #f8f4eb; text-decoration: none; }
.btn-light { background: #f8f4eb; color: #1e1636; }
.btn-dark { background: #1e1636; color: #f8f4eb; }
.btn-header { background:#1e1636; color:#f8f4eb; padding:1rem 1rem; }
.bg-dark .btn-header { background:#f8f4eb; color:#1e1636; padding:1rem 1rem; }


/* ==============================
CUSTOM SECTION STYLES
================================= */
.hero-section { position: relative; text-align: center; color: white; width: 100%; height: 100vh; display: flex; align-items: center; justify-content: center; background-size: cover; background-position: 50% 10%; overflow: hidden; }
.hero-section::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(30, 22, 54, 0.4); z-index: 1; }
.hero-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1; }
.hero-content { position: relative; z-index: 2; text-align: center; width: 100%; max-width: 860px; padding: 20px; color: #ffffff; }
.hero-content h1 { font-size: 3rem; font-weight: bold; margin-bottom: 10px; }
.hero-content a:not(.btn) { text-decoration: none; color: #ffffff; font-size: 1.1875rem }
.content-block { text-align: center; max-width: 576px; margin: 0 auto 3rem auto; padding: 0 1.5rem; }
.wide .content-block { text-align: start; max-width: 1240px; margin: 0 auto 3rem auto; }
.text-content { font-family: "Jost", futura-pt, sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size:calc((var(--heading-2-size-value) - 1) * 1.2vw + 1rem);  margin-bottom: 4rem; }
.divider-line { width: 2px; margin: 0 auto 6rem auto; }
.header-vertical-line:after { background:#f8f4eb; height:80px; content:""; display:block; width: 2px; margin: 2.5rem auto 0 auto; }

@media(min-width:992px) {
	.content-block { padding:0; }
	.divider-line { width: 1px; margin: 0 auto 6rem auto; }
	.header-vertical-line:after { width: 1px; }
}

/* FOOTER */
.footer { background: #f8f4eb !important; color: #1e1636 !important; border-top: 2px solid #1e1636 !important; }
.footer a, .footer .btn-link { color: #1e1636 !important; text-decoration: none; }
.footer a:hover { text-decoration: underline; }
.footer .navbar-brand { display: block; width: 80px; }
.form-control { border: none; border-bottom: 1px solid #1e1636; border-radius: 0; background: transparent; padding-left: 0; box-shadow: none; }
.footer .navbar-brand svg path { fill: #1e1636 !important; }

/*FAQ*/
.accordion { border: none; max-width: 800px; }
.accordion-item { width: 100%; border: none; border-bottom: 1px solid #f8f4eb; background-color: transparent; }
.accordion-header { font-size: 18px; font-weight: bold; }
.accordion-body { color: #f8f4eb; background-color: transparent; padding: 0 0 1.75rem 0 }
.accordion-button { position: relative; padding: 1.75rem 2rem 1.75rem 0; background: none; color: #f8f4eb; font-size: inherit; font-weight: 400; padding-left: 0; box-shadow: none; border-radius: 0; text-align: left; transition: all 0.3s ease-in-out; }
.accordion-button:focus { box-shadow: none; outline: none; }
.accordion-button:hover,
.accordion-button:not(.collapsed) { color: #f8f4eb; background-color: transparent; box-shadow: none; }
.accordion-item:last-child { border-bottom: none; }
.accordion-button::after { content: ""; background-image: none !important; /* Remove default Bootstrap icon */ display: none; /* Hide Bootstrap default behavior */ }
.accordion-button::before,
.accordion-button::after { content: ""; display: block; position: absolute; right: 10px; top: 50%; width: 14px; height: 1px; background-color: #f8f4eb; transition: transform 0.3s ease-in-out; }
.accordion-button::after { transform: rotate(90deg); /* Vertical line to form plus */ }
.accordion-button:not(.collapsed)::after { transform: rotate(0deg); /* Hide vertical line */ opacity: 0; }

@media(min-width:992px) {
	.accordion { width: 800px; }
}